黃蓉美 宋永生
摘? 要:在植物標本采集實訓時,學生需要鑒別植物的種類并記錄其生長環(huán)境,很多學生由于經(jīng)驗不足無法準確判斷植物的種類,位置信息采集不便,且采集實物標本容易破壞生態(tài)環(huán)境。利用Python開發(fā)了植物標本采集實訓平臺,采集者只需上傳植物的圖像,借助百度AI自動識別出植物的種類,利用HTML5實現(xiàn)位置信息的獲取,通過圖像及短視頻記錄植物及其生長環(huán)境,通過地圖展示標本的分布情況,為野外植物標本采集實訓提供了便利。
關鍵詞:標本采集;種類;百度AI;HTML5;短視頻
中圖分類號:TP311;TP181 ? 文獻標識碼:A 文章編號:2096-4706(2021)17-0035-03
Abstract: During the training of plant specimen collection, students need to identify the species of plants and record their growth environment. Many students cannot accurately judge the species of plants due to lack of experience, the collection of location information is inconvenient, and the collection of physical specimens is easy to damage the ecological environment. A plant specimen collection training platform is developed using Python. Collectors only need to upload plant images, plant species is identified automatically with the help of? Baidu AI, obtain location information with HTML5, record plants and their growth environment through images and short videos, and display the distribution of specimens through maps, which provides convenience for field plant specimen collection training.
Keywords: specimen collection; species; Baidu AI; HTML5; short video
0? 引? 言
標本采集實訓是植物學教學的重要內(nèi)容,學生可以將所學的植物學知識應用于實踐。教師帶領學生到野外采集標本,讓學生感受形形色色的植物世界,可以培養(yǎng)學生對大自然及植物學的熱愛[1]。學生人數(shù)往往較多,為了減少對植物及其生長環(huán)境的破壞,學生在實訓過程中可采集植物的數(shù)字標本,即采集植物及其生長環(huán)境的圖像、視頻及位置等信息。采集標本時,首先需要鑒別植物的種類,很多學生由于經(jīng)驗不足,無法準確判斷植物的種類。野外實訓過程中,學生可能無法及時得到教師的幫助,相關鑒別資料也查詢困難[2]。學生無法及時得知自己對植物種類的判斷是否準確,這將影響其學習的積極性及實習的進度。標本位置信息的獲取往往需要借助于專門的設備,這些設備攜帶相對麻煩,且數(shù)量一般有限,不利于野外實訓的開展。近年來,隨著4G及5G通信技術的發(fā)展,智能手機大量普及,這些手機幾乎都具有拍照、錄制視頻及定位功能。
Python因簡潔易用,開發(fā)效率高,深受人們的喜愛。近年來深度學習等人工智能技術的興起,更是讓Python的應用遍地開花,目前主流深度學習框架Pytorch、TensorFlow、PaddlePaddle、MindSpore等均提供了Python開發(fā)接口??衫么罅坎煌N類的植物圖像數(shù)據(jù)訓練深度學習網(wǎng)絡,當訓練結(jié)果滿足要求后,就可以利用訓練好的深度學習網(wǎng)絡進行植物識別。一些企業(yè)將訓練好的深度學習網(wǎng)絡以RestAPI開放,用戶可通過調(diào)用這些接口實現(xiàn)植物的自動識別,免去了昂貴的硬件成本及復雜的訓練過程。HTML5是HTML的最新修訂版,它由不同的技術構(gòu)成,符合網(wǎng)絡發(fā)展的新要求,可以更加便捷地獲取設備的位置信息及處理視頻等內(nèi)容。
本文嘗試用Python開發(fā)植物標本采集實訓平臺,調(diào)用百度AI開放平臺的植物識別接口實現(xiàn)植物種類的自動識別,通過HTML5獲取手機定位信息作為標本采集點的位置,利用圖像及短視頻記錄植物及其生長環(huán)境,利用地圖展示標本的空間分布情況。
1? 平臺總體架構(gòu)
植物標本采集實訓平臺分為植物識別、標本采集、標本查詢與展示、實訓計劃、安全教育、用戶管理六個模塊。植物識別模塊可幫助學生鑒別植物的種類,學生根據(jù)需要決定是否采集該植物的數(shù)字標本。標本采集模塊包含植物及生長環(huán)境的照片及短視頻上傳、采集位置及采集時間等信息的獲取。標本查詢與展示模塊可根據(jù)采集日期、群組、采集人、植物名稱等條件進行查詢,查詢結(jié)果可用地圖或列表展示,列表中可查看標本的圖像、視頻、位置等詳細信息。教師可以通過實訓平臺發(fā)布實訓計劃,對學生進行安全教育。平臺的用戶包括學生和教師,教師可將學生劃入相應的實訓群組。平臺采用Python開發(fā),通過百度AI開放平臺的植物識別接口實現(xiàn)植物識別,利用HTML5獲取標本采集點的位置信息,標本空間分布信息采用百度地圖進行展示,Web開發(fā)框架選用Flask,客戶端開發(fā)框架選用Bootstrap,數(shù)據(jù)庫選用MySQL,數(shù)據(jù)操作選用SQLAlchemy,實訓計劃及安全教育內(nèi)容利用CKEditor發(fā)布,集成開發(fā)環(huán)境選用PyCharm 2018。系統(tǒng)架構(gòu)如圖1所示。
2? 相關技術
2.1? Web開發(fā)框架
利用成熟的Web開發(fā)框架可以實現(xiàn)實訓平臺的快速開發(fā)。Flask是一個利用Python語言開發(fā)的微型Web 框架,它基于Werkzeug WSGI工具箱及Jinja2模板引擎構(gòu)建。Jinja2是Python中一個廣泛使用的模板引擎,可以快速渲染HTML、XML等文件。Flask的內(nèi)核非常簡單,但Flask具有非常強大的擴展庫,開發(fā)者可以根據(jù)需要選擇合適的擴展來實現(xiàn)相應的功能,開發(fā)出功能強大的Web應用系統(tǒng)。
Bootstrap是一個用于快速開發(fā)Web應用程序的前端開源框架,它基于HTML、CSS和JavaScript。Bootstrap支持Chrome、IE、Firefox等主流Web瀏覽器,其響應式CSS可以自動適配不同的終端設備。Bootstrap具有功能強大的內(nèi)置組件,開發(fā)者可以根據(jù)需要對組件進行定制。在Flask中使用Bootstrap框架最便捷的方案就是使用Flask-Bootstrap擴展。
2.2? 植物種類鑒別
自然界中植物的種類繁多,很多學生由于經(jīng)驗不足,時常無法準確鑒別植物的種類。野外實訓中,學生由于所處的位置相對分散,無法及時得到教師的指導,植物種類鑒別參考書籍資料的獲取也較為困難。學生無法及時得知自己對植物種類的判斷是否準確,從而影響其學習興趣及實訓進度。本文利用百度AI開放平臺上的植物識別接口,學生只需拍攝并上傳一張可正常解碼且長寬比合適的植物圖片,就可以識別出植物的名稱,可識別超過兩萬種常見植物和近八千種花卉[3]。實訓平臺可以幫助學生及時得知自己對植物種類的判斷是否準確,有助于增強學生的學習興趣。
2.3? 位置信息的獲取
經(jīng)度、緯度等影響植物的分布。植物標本采集過程中,通常需要獲取采集點的經(jīng)度、緯度等位置信息。以往需要借助專門的設備采集位置信息,這些設備往往攜帶不便且數(shù)量有限。目前絕大部分智能手機均支持定位功能,只要開啟了手機的北斗或GPS等定位功能,且賦予了瀏覽器獲取位置信息的權限,HTML5頁面就可以獲取位置信息。
Geolocation是HTML5中一個綜合應用當前各種定位手段獲取瀏覽器所在設備地理位置信息的接口。由于位置信息涉及用戶隱私,除非用戶同意,否則位置信息不可用。當HTML5頁面利用Geolocation嘗試獲取地理位置信息時,會請求用戶允許地理位置訪問權限。當用戶開啟手機定位功能,并授權瀏覽器獲取位置信息后,就可以利用Geolocation的getCurrentPosition方法[4]獲取設備當前所處的經(jīng)度、緯度等位置信息。Chrome、Firefox、IE等瀏覽器均支持位置信息的獲取。
2.4? 地圖展示
植物標本采集點空間分布情況通過地圖展示較為直觀,教師按照采集日期、群組、采集人、植物名稱等查詢植物標本的位置信息,查詢結(jié)果可以列表或者地圖的方式展示,地圖展示較為直觀。本文通過調(diào)用百度地圖的JavaScript應用程序接口實現(xiàn)植物標本空間分布情況的可視化[5],該接口支持地圖展示、地圖控件及覆蓋物等,支持HTTP和HTTPS。教師可以非常方便地在PC或移動端瀏覽器中查看植物標本空間分布地圖。
2.5? 短視頻發(fā)布
學生通過手機拍攝照片及短視頻記錄植物及其生長環(huán)境,手機拍攝的照片一般為jpg格式,視頻一般為mp4格式。學生將拍攝好的照片及短視頻上傳實訓平臺。實訓平臺通過HTML5中的標簽展示照片,通過
2.6? 富文本編輯器
教師在實訓前需要制定詳盡的實訓計劃,包括實訓內(nèi)容、實訓目標及實訓路線等,以便學生提前做好準備。外出實訓的安全教育至關重要,教師需要充分考慮可能存在的風險,對學生進行必要的安全教育。教師可以借助富文本編輯器將實訓計劃、安全教育等內(nèi)容在實訓平臺上以網(wǎng)頁發(fā)布。Web系統(tǒng)中常采用富文本編輯器發(fā)布信息。富文本編輯器又叫所見即所得編輯器,提供了類似Word的編輯功能,常用的富文本編輯器有CKEditor、TinyMCE、UEditor及dhtmlxEditor等。本文選用CKEditor,為了便于在網(wǎng)頁中嵌入視頻,需要借助于CKEditor的視頻插件HTML5-Video。教師可以非常方便地在網(wǎng)頁中嵌入文字、圖片及視頻等內(nèi)容,將實訓計劃、安全教育等內(nèi)容在實訓平臺上以網(wǎng)頁發(fā)布,以便學生隨時觀看和學習。
3? 實驗分析
本文測試服務器的配置為8核CPU,32 GB內(nèi)存,1 TB SSD磁盤,500 Mbps帶寬,操作系統(tǒng)選用CentOS7.5(64位),安裝MySQL5.6、Python3.5、Pip9.0、Flask1.0、Flask-Bootstrap3.3、Flask-SQLAlchemy2.0、CKEditor4.16、HTML5-Video1.2、數(shù)據(jù)庫驅(qū)動等,采用Gunicorn 19.8作為wsgi容器來部署Flask程序,Web服務器選用Nginx1.12。由于位置信息牽涉隱私,生產(chǎn)環(huán)境中需要為實訓平臺配置域名和SSL證書,發(fā)布為HTTPS。
采集標本時測試手機選用Redmi 10X 5G,瀏覽器選用小米瀏覽器V15.4,在應用權限管理中授予該瀏覽器讀取位置信息的權限。采集植物標本時將手機定位功能打開,瀏覽器就可以獲取位置信息。學生可以通過實訓平臺進行植物名稱的鑒定,如圖2所示。采集植物的數(shù)字標本時,平臺自動獲取經(jīng)緯度、采集時間、采集人等信息,學生只需將該植物相關的圖像及短視頻上傳,如圖3所示。采集好的植物數(shù)字標本可立即在實訓平臺上展示,教師可以對這些數(shù)字標本進行點評,數(shù)字標本還可作為對學生實訓情況的考核依據(jù)。
教師需要提前制定好實訓計劃,包括安排實訓內(nèi)容、實訓目標及實訓路線,以便學生早做準備。安全教育至關重要,教師需要在提前對學生進行安全教育,充分估計實訓過程中可能存在的危險,做好應對措施。教師可以將實訓計劃、安全教育內(nèi)容等通過實訓平臺上的富文本編輯器排版發(fā)布,可以非常方便地插入文字、圖片及視頻等,以便學生隨時觀看和學習。為了便于教師及時掌握學生的實訓情況,教師在實訓平臺上可以按照采集日期、群組、采集人、植物名稱等條件查詢數(shù)字標本,查詢結(jié)果分為列表及地圖兩種展示方式,通過地圖展示植物數(shù)字標本的空間分布信息更為直觀,如圖4所示。
4? 結(jié)? 論
本文利用Python開發(fā)了植物標本采集實訓平臺,學生可以及時得知自己對植物種類的鑒定是否準確,有助于提高學生學習的積極性。學生利用實訓平臺以圖像及短視頻等記錄植物及其生長環(huán)境,自動獲取標本的采集位置、采集時間等信息,不僅可以快速便捷的采集植物的數(shù)字標本,鍛煉了學生標本采集的能力,同時也保護了植物及生態(tài)環(huán)境。外出實訓前,教師通過實訓平臺以網(wǎng)頁的形式發(fā)布實訓計劃和安全教育內(nèi)容,以便學生提前做好準備,并可以在實訓過程中隨時查看。利用百度地圖展示了標本采集點的空間分布情況,教師可以及時全面的掌握學生的實訓動態(tài)。學生在實訓過程中采集的植物數(shù)字標本不僅可以豐富植物學的課堂教學,還有助于在植物學的研究。在今后的研究中,可以著眼于數(shù)字標本館的建設與研究。
參考文獻:
[1] 肖方,林峻,李迪強.野生動植物標本制作:第2版 [M].北京:科學出版社,2014.
[2] 潘建斌,駱爽,張立勛,等.智能手機在生物學野外實習中的應用 [J].高等理科教育,2016(5):93-97+92.
[3] 百度AI開放平臺.植物識別 [EB/OL].[2021-02-06].https://ai.baidu.com/tech/imagerecognition/plant.
[4] 陳桂霞.解析使用Geolocation API獲取地理位置信息 [J].信息技術與信息化,2019(11):220-223.
[5] 百度AI開放平. Javascript API [EB/OL].[2021-02-06].https://lbsyun.baidu.com/index.php?title=jspopular3.0.
作者簡介:黃蓉美(1986—),女,漢族,江蘇南通人,碩士,研究方向:智慧博物館及生物科普教育。