尤程,潘潔,劉運書
(南京林業(yè)大學(xué) 林學(xué)院,江蘇 南京 210037)
傳統(tǒng)的林業(yè)調(diào)查和監(jiān)測方法費時費力,對可達(dá)性較差的區(qū)域無法做到全面、及時的監(jiān)測,且受從業(yè)人員經(jīng)驗、知識水平和觀測維度的制約較大,信息化建設(shè)滯后,作業(yè)效率低下。建立智能化和信息化監(jiān)測預(yù)報機制勢在必行。近年來,伴隨著無人機的市場化、高光譜和多光譜監(jiān)測設(shè)備的小型化、輕型化,林業(yè)遙感研究涌現(xiàn)了新的思路,利用無人機搭載專用設(shè)備和系統(tǒng)在大尺度范圍內(nèi)對森林病蟲害進(jìn)行實時監(jiān)測和預(yù)報、自動提取感病植株、災(zāi)情自動評估上報已經(jīng)成為可能[1-5]。建設(shè)數(shù)字化網(wǎng)絡(luò)信息平臺,構(gòu)建快速響應(yīng)技術(shù)體系,能夠有效提升測報信息的傳輸速度和覆蓋面,是森林病蟲害防治乃至林業(yè)信息化的必然要求[6]。韓光輝[7]利用田間布置的無線傳感器監(jiān)測環(huán)境因子,具備數(shù)據(jù)實時顯示和趨勢分析等功能,實現(xiàn)了黃瓜Cucumis sativua病害的自動化監(jiān)測;張谷豐[8]基于數(shù)據(jù)挖掘?qū)崿F(xiàn)了農(nóng)作物病蟲害短期和中長期預(yù)警,并利用 MapServer等開源軟件搭建了基于WebGIS的開放式網(wǎng)絡(luò)信息平臺,實現(xiàn)了田間災(zāi)情動態(tài)的自動化展示;廖振峰等[9]利用高光譜數(shù)據(jù)、基于ArcGIS和ENVI進(jìn)行二次開發(fā)構(gòu)建了森林病蟲害監(jiān)測系統(tǒng),實現(xiàn)了對松材線蟲病Bursaphelenchus xylophilus實時監(jiān)測預(yù)測和決策處理;Joe-Air等[10]分析了果蠅Drosophila melanogaster種群動態(tài)和環(huán)境變化的關(guān)系,設(shè)計了基于無線通信技術(shù)的遠(yuǎn)程病蟲害監(jiān)測系統(tǒng),有效地控制了病蟲害,減少了農(nóng)業(yè)損失。陳海中等[11]采用SOA架構(gòu)和移動終端構(gòu)建了農(nóng)作物病蟲害監(jiān)測預(yù)警平臺,具備數(shù)據(jù)上報和查詢、病蟲害預(yù)測預(yù)報、在線會診等功能,實現(xiàn)計算機智能化預(yù)測病蟲害;冷偉峰[12]探索了小麥條銹病的評估、監(jiān)測和勘界定位等整個流程,開發(fā)了基于Web的監(jiān)測預(yù)警平臺,具備監(jiān)測、預(yù)測預(yù)報和治理評估等功能,開發(fā)基于移動端的監(jiān)測信息平臺,實現(xiàn)了病情的查詢、咨詢和遠(yuǎn)程診斷。Bange等[13]開發(fā)了手持式?jīng)Q策支持系統(tǒng),簡化了與棉花Gossypiumspp.病蟲害管理系統(tǒng)數(shù)據(jù)傳輸?shù)牧鞒?;張衛(wèi)丹等[14]設(shè)計了棗Zizyphus j ujuba病蟲害短信診斷平臺,促進(jìn)了農(nóng)業(yè)專家系統(tǒng)的普及和應(yīng)用;黃沖等[15]借助微信公眾號實現(xiàn)了病蟲信息的發(fā)布,并應(yīng)用于生產(chǎn)實踐,具備使用門檻低、傳播性強等特點。當(dāng)今,松材線蟲病是世界上最具危險性和毀滅性的森林病害,在適宜的氣候條件下,可迅速殺滅感病松樹Pinussp.,對森林資源和生態(tài)環(huán)境造成嚴(yán)重破壞,因此,高時效性的松材線蟲病信息數(shù)據(jù)獲取和共享網(wǎng)絡(luò)信息系統(tǒng)具有廣泛的應(yīng)用前景[15-22]。
本研究在現(xiàn)有基于高光譜遙感松材線蟲病識別監(jiān)測研究的基礎(chǔ)上,利用大疆無人機平臺搭載定制的松材線蟲病監(jiān)測多光譜相機,其波段是松材線蟲病識別監(jiān)測的特征波段,并結(jié)合計算機圖形圖像識別技術(shù),開發(fā)了具有松材線蟲病識別定位和視頻會商功能的系統(tǒng),進(jìn)而實現(xiàn)松材線蟲病的即時識別定位,并建立專家視頻會商平臺,實現(xiàn)對無人機松材線蟲病監(jiān)測的及時性、科學(xué)性和準(zhǔn)確性,更好地發(fā)揮病蟲害監(jiān)測網(wǎng)絡(luò)信息系統(tǒng)的實用價值。
本系統(tǒng)基于Java、Html和C/C++ 編程語言,結(jié)合OpenCV計算機視覺庫、Cloudroom SDK、MySQL數(shù)據(jù)庫和GeoTools工具開發(fā)的松材線蟲病定位識別和視頻會商系統(tǒng),具有病蟲害識別定位功能和視頻會商兩個功能模塊。
病蟲害識別定位模塊:該模塊利用OpenCV的算法進(jìn)行感病松樹的識別,利用GeoTools工具和定位算法實現(xiàn)對感病松樹進(jìn)行定位。
視頻會商模塊:該模塊利用視頻編解碼原理和Cloudroom SDK實現(xiàn)無人機視頻的網(wǎng)絡(luò)傳輸以及指揮員、操作人員和護林員之間的多方視頻會商功能。
該功能主要包括感病松樹識別、標(biāo)繪和定位功能,目的是利用無人機遙感影像數(shù)據(jù)對感病松樹進(jìn)行識別和標(biāo)繪,并結(jié)合無人機的位置姿態(tài)信息和當(dāng)?shù)氐牡匦螖?shù)據(jù)對感病松樹進(jìn)行定位。
2.1.1 松材線蟲病識別和標(biāo)繪功能 本系統(tǒng)設(shè)計以固定的時間間隔從無人機遙感回傳的實時視頻流中抽取研究區(qū)域的影像進(jìn)行分析,將無人機遙感回傳的H.264視頻流轉(zhuǎn)換為YUV編碼的數(shù)據(jù),以固定的時間間隔抽取數(shù)據(jù)并保存為影像文件,同時將該時刻無人機的位置和姿態(tài)信息存儲在本地的SQLite數(shù)據(jù)庫中。為滿足安卓系統(tǒng)的要求,在抽取圖像前應(yīng)先在回調(diào)函數(shù)中將視頻流從NV12格式轉(zhuǎn)化為NV21格式,再從中截取影像并保存在APP的影像文件目錄下。用戶也可以將已采集的影像文件從外部批量導(dǎo)入至APP影像文件目錄下,作為數(shù)據(jù)源,進(jìn)行處理和分析。在松材線蟲病識別和定位模塊激活后,將自動從影像文件目錄下逐個讀取影像文件、從SQLite中讀取該影像文件對應(yīng)的位置和姿態(tài)信息,并交付至病蟲害識別和定位算法中進(jìn)行處理和分析。
本系統(tǒng)利用專用多光譜相機采集感病松樹的光譜影像數(shù)據(jù),樹冠特征能夠直觀地反映樹木的健康狀況。松樹感染松材線蟲病后,樹冠顏色和形態(tài)將發(fā)生變化:在感病的前二周,冠層通常未出現(xiàn)肉眼可見的變化,為感病初期;從感病第四周開始,從枝梢到樹干的針葉逐漸枯黃,屬于感病中期;到了感病末期,針葉已經(jīng)全部變黃褐色,感病松樹逐漸干枯死亡。因此,感染松材線蟲病的松樹在多光譜影像上的樹冠顏色和健康松樹樹冠顏色相比存在明顯的差異,故選取了OpenCV中的Simple Blob Detector特征點檢測方法檢測感病松樹的樹冠。算法由閾值(包括最大閾值、最小閾值和步長)、斑點的限制條件(如顏色、面積和形狀等)、斑點的最小距離和斑點的位置尺寸等參數(shù)控制。首先,依據(jù)顏色范圍從光譜影像中剔除了非植被區(qū)域,從樹冠的灰度值、樹冠的面積和形狀等參數(shù)對感病松樹進(jìn)行Simple B lob D etector檢測,將二值圖像斑點的邊界作為感病松樹的邊界,灰度圖像斑點的坐標(biāo)作為感病松樹的像素坐標(biāo),求取感病松樹樹冠的中心坐標(biāo)和半徑。然后,依據(jù)求得的坐標(biāo)和半徑等參數(shù),調(diào)用邊緣檢測算法對檢測出的感病松樹進(jìn)行勾勒,并將標(biāo)注與原圖像疊加顯示,求得感病松樹在圖像上的位置,從而實現(xiàn)對感病松樹的標(biāo)繪。圖1為無人機遙感影像下健康和感病松樹的多光譜遙感影像。
圖1 無人機遙感影像下健康和感病松樹的多光譜遙感影像Figure 1 Multispectral remote sensing images of healthy and inflected trees from UAV remote sensing image
2.1.2 松材線蟲病定位功能 系統(tǒng)利用無人機在三維空間中的坐標(biāo)和方向信息,結(jié)合谷歌地圖獲取全球高程數(shù)據(jù)或利用無人機平臺獲取的目標(biāo)區(qū)域的 DEM 數(shù)據(jù),通過算法進(jìn)行解算,求得感病松樹的真實坐標(biāo),并在地圖上對感病松樹位置進(jìn)行標(biāo)繪和標(biāo)注,并利用MQTT將感病松樹的坐標(biāo)推送至信息管理后臺,實現(xiàn)對感病松樹的定位功能。
松材線蟲病定位算法中設(shè)定無人機A在影像上投影的像素坐標(biāo)即影像的中心點為(0,0),像素大小a×b,感病松樹B的像素坐標(biāo)為(a1,b1),無人機在空間中的位置A(x,y,z)(其中,x表示經(jīng)度,y表示緯度,z表示無人機與起飛點的相對高度),松材線蟲病定位算法計算步驟如下:
(1)計算無人機的航向與AB連線的夾角和AB連線與北方向的夾角,如計算公式(1)和公式(2)所示:
式中,β為計算無人機的航向與AB連線的夾角度數(shù),α為無人機朝向與北方向的夾角度數(shù)。
(2)計算無人機與感病松樹的距離和在經(jīng)緯線上投影的長度,其計算公式為:
式中,l為無人機A與感病松樹B之間距離,θ1為無人機水平方向的視場角,θ2為無人機垂直方向的視場角,l1為l在經(jīng)線上投影的長度,l2為l在緯線上投影的長度。
(3)計算離無人機A點距離為l,方向角為α+β的B′(X,Y)點的經(jīng)緯度,B′(X,Y)的經(jīng)緯度是AB延長線與水平面的夾角,其計算公式為:
式中,X為 B′的經(jīng)度,Y為 B′的緯度,x為無人機A的經(jīng)度,y為無人機A的緯度,R為地球的半徑,ω為無人機A的緯度。
(4)估算B點的真實坐標(biāo),將AB的長度l等分成若干份,沿用上述的通過A點經(jīng)緯度坐標(biāo)和方位角求解經(jīng)緯度的方法,求得點的坐標(biāo),其計算公式為:
按順序?qū)⒏鼽c海拔和通過HTTP接口獲取的上述坐標(biāo)的高程e1、e2……en做差,當(dāng)差值等于0或者符號發(fā)生改變時,則AB'的連線穿過了地表,此時該區(qū)間內(nèi)投影在水平面上的B′的坐標(biāo)即視為感病松樹B的真實坐標(biāo)。
視頻會商功能是基于CloudRoom S DK開發(fā)的,目的是將無人機偵查圖像傳輸至指揮中心,實現(xiàn)偵查圖像在操作人員、指揮員和護林員之間的實時共享。
圖2 感病松樹坐標(biāo)Figure 2 Positioning of infected trees
2.2.1 無人機偵察影像入會的實現(xiàn) 視頻會商功能的關(guān)鍵在于無人機視頻流的注入。因為無人機影像數(shù)據(jù)支持NV12格式的YUV顏色編碼輸出,而CloudRoom S DK僅支持YUV420P(I420格式)和ARGB32的視頻圖像格式。因此,本系統(tǒng)將NV12與I420轉(zhuǎn)換的問題分解為U分量和V分量的排列問題。創(chuàng)建虛擬攝像頭后,將轉(zhuǎn)換后的I420格式視頻流注入虛擬攝像頭,即可實現(xiàn)無人機遙感影像的實時共享。本系統(tǒng)中視頻流每3幀影像僅抽取了1幀影像用于編解碼和輸出。
2.2.2 多人會商功能 多人會商功能流程包括:初始化SDK、連接視頻服務(wù)器、進(jìn)入會話、配置會話、會話變動、退出會話和反始化SDK。
2.2.3 一鍵會商功能 本系統(tǒng)中設(shè)計一鍵入會功能的目的是應(yīng)對緊急情況下操作人員主動呼叫指揮員的問題,每名操作人員都對應(yīng)有上級指揮員,發(fā)現(xiàn)病蟲害后,操作人員可通過一鍵入會功能自動進(jìn)入指揮中心的視頻會議室,并默認(rèn)將無人機偵查視頻接入會議,無需輸入會議號和密碼。
本系統(tǒng)目前僅提供南京地區(qū)馬尾松Pinusmassoniana、黑松P.thunbergii多光譜數(shù)據(jù)進(jìn)行松材線蟲病的識別、標(biāo)會和識別,但本系統(tǒng)對松材線蟲病的監(jiān)測不局限于南京地區(qū)的應(yīng)用,可在全國范圍內(nèi)推廣應(yīng)用。系統(tǒng)設(shè)計的用戶是面向林業(yè)防護人員,將在松材線蟲病監(jiān)測上有廣闊的應(yīng)用前景。
南京林業(yè)大學(xué)溧水白馬基地位于南京市東南部的溧水區(qū)白馬鎮(zhèn)附近,地理坐標(biāo)為119°9′38″ E,31°36′47″ N,地形平坦,地表植被以人工林為主,種植有馬尾松、黑松等不同樹種,包含了幼齡林、中齡林、近熟林、成熟林等不同齡級,因此,在該地進(jìn)行了松材線蟲接種試驗,并對松材線蟲病識別和定位模塊、視頻會商模塊進(jìn)行了測試。南京市的梅雨季節(jié)通常在6月底至7月初,多陰雨天氣,因此,系統(tǒng)測試時間選定為雨期之后的7月初和9月底,與松萎蔫病自然爆發(fā)期重合。
(1)大疆M600 P RO六旋翼無人機,標(biāo)配三冗余度飛控,定位精度達(dá)到厘米級,P-GPS模式懸停精度為±50 cm,有效載荷6 kg,滿載連續(xù)工作時間18 min;配備Ronin-MX云臺,搭載松材線蟲病監(jiān)測定制多光譜相機(質(zhì)量1 kg,水平視場角41.4°,影像分辨率2 048×1 536)。
(2)科力達(dá)K9差分GPS,擁有28~54個接收通道,帶有S739手簿,RTK水平精度±1×10-6cm,高程精度±2×10-6cm。
(3)松材線蟲病識別定位與專家視頻會商APP,基于Java、Html和C/C++編程語言,結(jié)合OpenCV計算機視覺庫、CloudRoom SDK、MySQL數(shù)據(jù)庫和GeoTools工具開發(fā)的系統(tǒng)。
圖3 白馬實驗基地研究區(qū)示意圖Figure 3 Test area of Baima Experimental Base
在無人機載飛行過程中,系統(tǒng)會對光譜相機的視頻流進(jìn)行病蟲害分析識別。當(dāng)識別出病蟲害或疑似病蟲害后,系統(tǒng)將標(biāo)記當(dāng)前位置,發(fā)出報警提示,對感病松樹進(jìn)行標(biāo)繪和定位,并以圖片的形式存儲下來。出于監(jiān)測效率考慮,檢測到病蟲害或疑似病蟲害后,系統(tǒng)將不會立即控制懸停在當(dāng)前位置。操作人員可以通過地圖上的標(biāo)記命令無人機暫停任務(wù)并懸停在標(biāo)記位置。為了評估感病松樹定位精度,攜帶差分 GPS在林區(qū)中實測了 34棵感病松樹的經(jīng)緯度坐標(biāo),并與系統(tǒng)感病松樹定位功能獲取的坐標(biāo)作對比,用水平誤差評價定位精度。感病松樹識別結(jié)果如圖4。
圖4 感病松樹識別結(jié)果Figure 4 Result of positioning of infected trees
通過差分GPS驗證表明,34株感病松樹的水平偏移最小值為0.09 m,最大值1.77 m,平均誤差為0.64 m,均方根誤差為0.492 8 m,與其他方法相比能顯著提高定位精度。研究區(qū)內(nèi)黑松和馬尾松中齡林的株行距約為2 m×2 m,成熟林冠幅為4 m以上,感病松樹定位水平誤差基本能夠滿足人工現(xiàn)場采伐的精度要求。表1列舉了其中12株感病松樹的定位水平誤差。
表1 感病松樹的定位水平誤差Table 1 Horizontal error of infected trees positioning
操作人員可通過一鍵入會功能與指揮員和護林員進(jìn)行視頻會商。指揮員確認(rèn)無誤后,可以指揮護林員到記錄的位置,由護林員對感病松樹進(jìn)行相應(yīng)處理。指揮員也可以通過視頻會商系統(tǒng)獲取無人機的實時視頻,對監(jiān)測動態(tài)進(jìn)行全面掌控。本研究在實驗室條件下對視頻會商模塊進(jìn)行了測試,視頻延遲約0.5 s,一鍵入會功能正常,可按需求進(jìn)入指揮中心視頻會議室,影像清晰、無卡頓,語音清晰,多方通話正常,滿足多方實時視頻會商需求。
為了模擬實際應(yīng)用場景,本研究在白馬實驗基地進(jìn)行了視頻會商模塊的實地測試,測試時將無人機懸停在約500 m外,150 m高的位置,與城區(qū)的指揮中心以及林區(qū)的護林員進(jìn)行了視頻會商,如圖5。操作人員可按實際需求選擇聯(lián)系人進(jìn)行多人會商。
圖5 視頻會商模塊測試Figure 5 Test for video meeting and multi-person meeting
本研究開發(fā)了一款可適用于松材線蟲病識別定位的無人機遙感監(jiān)測系統(tǒng),該系統(tǒng)具有松材線蟲病定位識別模塊和視頻會商模塊兩個模塊,實現(xiàn)了松萎蔫病監(jiān)測和會商處理的整個流程。該系統(tǒng)主要具有識別標(biāo)繪感病松樹、定位感病松樹和多方視頻連線等功能。該系統(tǒng)具有以下特點:
本系統(tǒng)結(jié)合無人機多光譜影像數(shù)據(jù)嘗試進(jìn)行感病松樹單株定位,改變了以往漫無目的地查找感病松樹的現(xiàn)狀,使得對松材線蟲病的調(diào)查更快速方便。運用本系統(tǒng)識別定位面積1 km2的馬尾松和黑松林地時,當(dāng)無人機飛行高度為150 m時,僅需要耗時12 h,和以往的人工實地巡查相比,效率提高了數(shù)十倍以上,能有效降低人力、物力和時間。
系統(tǒng)基于Android操作系統(tǒng)開發(fā),能兼容市場上82.3%的移動設(shè)備,硬件設(shè)備又有著價格低廉的優(yōu)勢,有利于日后的廣泛推廣應(yīng)用,且得益于開源的特性,安卓開發(fā)有著豐富的學(xué)習(xí)資源和開發(fā)社區(qū),開發(fā)難度相對較低。硬件上,多光譜相機的價格雖然比RGB相機高,但遠(yuǎn)低于高光譜相機。通過進(jìn)一步優(yōu)化多光譜波段的算法,甚至可以在松材線蟲病感病早期其針葉顏色尚未發(fā)生肉眼可見的改變時,定位到感病植株,這是RGB相機無法具備的能力。
系統(tǒng)提出利用谷歌地圖的高程數(shù)據(jù)和無人機影像數(shù)據(jù)生成高精度的 DEM 數(shù)據(jù)相結(jié)合,減小因局部地形精度不足導(dǎo)致的定位誤差,提高地形精度。調(diào)試優(yōu)化了識別松材線蟲病的算法,提高感病松樹定位的精度。
視頻會商系統(tǒng)實現(xiàn)了將無人機實時偵查影像傳入視頻會議,手機、電腦之間都可以互相視頻通話,使得指揮員能夠?qū)ΜF(xiàn)場監(jiān)測情況準(zhǔn)確把握。實現(xiàn)了指揮員、操作人員和護林員的三方視頻會商,減少了溝通障礙。