尤程,潘潔,劉運書
(南京林業大學 林學院,江蘇 南京 210037)
傳統的林業調查和監測方法費時費力,對可達性較差的區域無法做到全面、及時的監測,且受從業人員經驗、知識水平和觀測維度的制約較大,信息化建設滯后,作業效率低下。建立智能化和信息化監測預報機制勢在必行。近年來,伴隨著無人機的市場化、高光譜和多光譜監測設備的小型化、輕型化,林業遙感研究涌現了新的思路,利用無人機搭載專用設備和系統在大尺度范圍內對森林病蟲害進行實時監測和預報、自動提取感病植株、災情自動評估上報已經成為可能[1-5]。建設數字化網絡信息平臺,構建快速響應技術體系,能夠有效提升測報信息的傳輸速度和覆蓋面,是森林病蟲害防治乃至林業信息化的必然要求[6]。韓光輝[7]利用田間布置的無線傳感器監測環境因子,具備數據實時顯示和趨勢分析等功能,實現了黃瓜Cucumis sativua病害的自動化監測;張谷豐[8]基于數據挖掘實現了農作物病蟲害短期和中長期預警,并利用 MapServer等開源軟件搭建了基于WebGIS的開放式網絡信息平臺,實現了田間災情動態的自動化展示;廖振峰等[9]利用高光譜數據、基于ArcGIS和ENVI進行二次開發構建了森林病蟲害監測系統,實現了對松材線蟲病Bursaphelenchus xylophilus實時監測預測和決策處理;Joe-Air等[10]分析了果蠅Drosophila melanogaster種群動態和環境變化的關系,設計了基于無線通信技術的遠程病蟲害監測系統,有效地控制了病蟲害,減少了農業損失。陳海中等[11]采用SOA架構和移動終端構建了農作物病蟲害監測預警平臺,具備數據上報和查詢、病蟲害預測預報、在線會診等功能,實現計算機智能化預測病蟲害;冷偉峰[12]探索了小麥條銹病的評估、監測和勘界定位等整個流程,開發了基于Web的監測預警平臺,具備監測、預測預報和治理評估等功能,開發基于移動端的監測信息平臺,實現了病情的查詢、咨詢和遠程診斷。Bange等[13]開發了手持式決策支持系統,簡化了與棉花Gossypiumspp.病蟲害管理系統數據傳輸的流程;張衛丹等[14]設計了棗Zizyphus j ujuba病蟲害短信診斷平臺,促進了農業專家系統的普及和應用;黃沖等[15]借助微信公眾號實現了病蟲信息的發布,并應用于生產實踐,具備使用門檻低、傳播性強等特點。當今,松材線蟲病是世界上最具危險性和毀滅性的森林病害,在適宜的氣候條件下,可迅速殺滅感病松樹Pinussp.,對森林資源和生態環境造成嚴重破壞,因此,高時效性的松材線蟲病信息數據獲取和共享網絡信息系統具有廣泛的應用前景[15-22]。
本研究在現有基于高光譜遙感松材線蟲病識別監測研究的基礎上,利用大疆無人機平臺搭載定制的松材線蟲病監測多光譜相機,其波段是松材線蟲病識別監測的特征波段,并結合計算機圖形圖像識別技術,開發了具有松材線蟲病識別定位和視頻會商功能的系統,進而實現松材線蟲病的即時識別定位,并建立專家視頻會商平臺,實現對無人機松材線蟲病監測的及時性、科學性和準確性,更好地發揮病蟲害監測網絡信息系統的實用價值。
本系統基于Java、Html和C/C++ 編程語言,結合OpenCV計算機視覺庫、Cloudroom SDK、MySQL數據庫和GeoTools工具開發的松材線蟲病定位識別和視頻會商系統,具有病蟲害識別定位功能和視頻會商兩個功能模塊。
病蟲害識別定位模塊:該模塊利用OpenCV的算法進行感病松樹的識別,利用GeoTools工具和定位算法實現對感病松樹進行定位。
視頻會商模塊:該模塊利用視頻編解碼原理和Cloudroom SDK實現無人機視頻的網絡傳輸以及指揮員、操作人員和護林員之間的多方視頻會商功能。
該功能主要包括感病松樹識別、標繪和定位功能,目的是利用無人機遙感影像數據對感病松樹進行識別和標繪,并結合無人機的位置姿態信息和當地的地形數據對感病松樹進行定位。
2.1.1 松材線蟲病識別和標繪功能 本系統設計以固定的時間間隔從無人機遙感回傳的實時視頻流中抽取研究區域的影像進行分析,將無人機遙感回傳的H.264視頻流轉換為YUV編碼的數據,以固定的時間間隔抽取數據并保存為影像文件,同時將該時刻無人機的位置和姿態信息存儲在本地的SQLite數據庫中。為滿足安卓系統的要求,在抽取圖像前應先在回調函數中將視頻流從NV12格式轉化為NV21格式,再從中截取影像并保存在APP的影像文件目錄下。用戶也可以將已采集的影像文件從外部批量導入至APP影像文件目錄下,作為數據源,進行處理和分析。在松材線蟲病識別和定位模塊激活后,將自動從影像文件目錄下逐個讀取影像文件、從SQLite中讀取該影像文件對應的位置和姿態信息,并交付至病蟲害識別和定位算法中進行處理和分析。
本系統利用專用多光譜相機采集感病松樹的光譜影像數據,樹冠特征能夠直觀地反映樹木的健康狀況。松樹感染松材線蟲病后,樹冠顏色和形態將發生變化:在感病的前二周,冠層通常未出現肉眼可見的變化,為感病初期;從感病第四周開始,從枝梢到樹干的針葉逐漸枯黃,屬于感病中期;到了感病末期,針葉已經全部變黃褐色,感病松樹逐漸干枯死亡。因此,感染松材線蟲病的松樹在多光譜影像上的樹冠顏色和健康松樹樹冠顏色相比存在明顯的差異,故選取了OpenCV中的Simple Blob Detector特征點檢測方法檢測感病松樹的樹冠。算法由閾值(包括最大閾值、最小閾值和步長)、斑點的限制條件(如顏色、面積和形狀等)、斑點的最小距離和斑點的位置尺寸等參數控制。首先,依據顏色范圍從光譜影像中剔除了非植被區域,從樹冠的灰度值、樹冠的面積和形狀等參數對感病松樹進行Simple B lob D etector檢測,將二值圖像斑點的邊界作為感病松樹的邊界,灰度圖像斑點的坐標作為感病松樹的像素坐標,求取感病松樹樹冠的中心坐標和半徑。然后,依據求得的坐標和半徑等參數,調用邊緣檢測算法對檢測出的感病松樹進行勾勒,并將標注與原圖像疊加顯示,求得感病松樹在圖像上的位置,從而實現對感病松樹的標繪。圖1為無人機遙感影像下健康和感病松樹的多光譜遙感影像。

圖1 無人機遙感影像下健康和感病松樹的多光譜遙感影像Figure 1 Multispectral remote sensing images of healthy and inflected trees from UAV remote sensing image
2.1.2 松材線蟲病定位功能 系統利用無人機在三維空間中的坐標和方向信息,結合谷歌地圖獲取全球高程數據或利用無人機平臺獲取的目標區域的 DEM 數據,通過算法進行解算,求得感病松樹的真實坐標,并在地圖上對感病松樹位置進行標繪和標注,并利用MQTT將感病松樹的坐標推送至信息管理后臺,實現對感病松樹的定位功能。
松材線蟲病定位算法中設定無人機A在影像上投影的像素坐標即影像的中心點為(0,0),像素大小a×b,感病松樹B的像素坐標為(a1,b1),無人機在空間中的位置A(x,y,z)(其中,x表示經度,y表示緯度,z表示無人機與起飛點的相對高度),松材線蟲病定位算法計算步驟如下:
(1)計算無人機的航向與AB連線的夾角和AB連線與北方向的夾角,如計算公式(1)和公式(2)所示:


式中,β為計算無人機的航向與AB連線的夾角度數,α為無人機朝向與北方向的夾角度數。
(2)計算無人機與感病松樹的距離和在經緯線上投影的長度,其計算公式為:

式中,l為無人機A與感病松樹B之間距離,θ1為無人機水平方向的視場角,θ2為無人機垂直方向的視場角,l1為l在經線上投影的長度,l2為l在緯線上投影的長度。
(3)計算離無人機A點距離為l,方向角為α+β的B′(X,Y)點的經緯度,B′(X,Y)的經緯度是AB延長線與水平面的夾角,其計算公式為:
式中,X為 B′的經度,Y為 B′的緯度,x為無人機A的經度,y為無人機A的緯度,R為地球的半徑,ω為無人機A的緯度。
(4)估算B點的真實坐標,將AB的長度l等分成若干份,沿用上述的通過A點經緯度坐標和方位角求解經緯度的方法,求得點的坐標,其計算公式為:

按順序將各點海拔和通過HTTP接口獲取的上述坐標的高程e1、e2……en做差,當差值等于0或者符號發生改變時,則AB'的連線穿過了地表,此時該區間內投影在水平面上的B′的坐標即視為感病松樹B的真實坐標。
視頻會商功能是基于CloudRoom S DK開發的,目的是將無人機偵查圖像傳輸至指揮中心,實現偵查圖像在操作人員、指揮員和護林員之間的實時共享。

圖2 感病松樹坐標Figure 2 Positioning of infected trees
2.2.1 無人機偵察影像入會的實現 視頻會商功能的關鍵在于無人機視頻流的注入。因為無人機影像數據支持NV12格式的YUV顏色編碼輸出,而CloudRoom S DK僅支持YUV420P(I420格式)和ARGB32的視頻圖像格式。因此,本系統將NV12與I420轉換的問題分解為U分量和V分量的排列問題。創建虛擬攝像頭后,將轉換后的I420格式視頻流注入虛擬攝像頭,即可實現無人機遙感影像的實時共享。本系統中視頻流每3幀影像僅抽取了1幀影像用于編解碼和輸出。
2.2.2 多人會商功能 多人會商功能流程包括:初始化SDK、連接視頻服務器、進入會話、配置會話、會話變動、退出會話和反始化SDK。
2.2.3 一鍵會商功能 本系統中設計一鍵入會功能的目的是應對緊急情況下操作人員主動呼叫指揮員的問題,每名操作人員都對應有上級指揮員,發現病蟲害后,操作人員可通過一鍵入會功能自動進入指揮中心的視頻會議室,并默認將無人機偵查視頻接入會議,無需輸入會議號和密碼。
本系統目前僅提供南京地區馬尾松Pinusmassoniana、黑松P.thunbergii多光譜數據進行松材線蟲病的識別、標會和識別,但本系統對松材線蟲病的監測不局限于南京地區的應用,可在全國范圍內推廣應用。系統設計的用戶是面向林業防護人員,將在松材線蟲病監測上有廣闊的應用前景。
南京林業大學溧水白馬基地位于南京市東南部的溧水區白馬鎮附近,地理坐標為119°9′38″ E,31°36′47″ N,地形平坦,地表植被以人工林為主,種植有馬尾松、黑松等不同樹種,包含了幼齡林、中齡林、近熟林、成熟林等不同齡級,因此,在該地進行了松材線蟲接種試驗,并對松材線蟲病識別和定位模塊、視頻會商模塊進行了測試。南京市的梅雨季節通常在6月底至7月初,多陰雨天氣,因此,系統測試時間選定為雨期之后的7月初和9月底,與松萎蔫病自然爆發期重合。
(1)大疆M600 P RO六旋翼無人機,標配三冗余度飛控,定位精度達到厘米級,P-GPS模式懸停精度為±50 cm,有效載荷6 kg,滿載連續工作時間18 min;配備Ronin-MX云臺,搭載松材線蟲病監測定制多光譜相機(質量1 kg,水平視場角41.4°,影像分辨率2 048×1 536)。
(2)科力達K9差分GPS,擁有28~54個接收通道,帶有S739手簿,RTK水平精度±1×10-6cm,高程精度±2×10-6cm。
(3)松材線蟲病識別定位與專家視頻會商APP,基于Java、Html和C/C++編程語言,結合OpenCV計算機視覺庫、CloudRoom SDK、MySQL數據庫和GeoTools工具開發的系統。

圖3 白馬實驗基地研究區示意圖Figure 3 Test area of Baima Experimental Base
在無人機載飛行過程中,系統會對光譜相機的視頻流進行病蟲害分析識別。當識別出病蟲害或疑似病蟲害后,系統將標記當前位置,發出報警提示,對感病松樹進行標繪和定位,并以圖片的形式存儲下來。出于監測效率考慮,檢測到病蟲害或疑似病蟲害后,系統將不會立即控制懸停在當前位置。操作人員可以通過地圖上的標記命令無人機暫停任務并懸停在標記位置。為了評估感病松樹定位精度,攜帶差分 GPS在林區中實測了 34棵感病松樹的經緯度坐標,并與系統感病松樹定位功能獲取的坐標作對比,用水平誤差評價定位精度。感病松樹識別結果如圖4。

圖4 感病松樹識別結果Figure 4 Result of positioning of infected trees
通過差分GPS驗證表明,34株感病松樹的水平偏移最小值為0.09 m,最大值1.77 m,平均誤差為0.64 m,均方根誤差為0.492 8 m,與其他方法相比能顯著提高定位精度。研究區內黑松和馬尾松中齡林的株行距約為2 m×2 m,成熟林冠幅為4 m以上,感病松樹定位水平誤差基本能夠滿足人工現場采伐的精度要求。表1列舉了其中12株感病松樹的定位水平誤差。

表1 感病松樹的定位水平誤差Table 1 Horizontal error of infected trees positioning
操作人員可通過一鍵入會功能與指揮員和護林員進行視頻會商。指揮員確認無誤后,可以指揮護林員到記錄的位置,由護林員對感病松樹進行相應處理。指揮員也可以通過視頻會商系統獲取無人機的實時視頻,對監測動態進行全面掌控。本研究在實驗室條件下對視頻會商模塊進行了測試,視頻延遲約0.5 s,一鍵入會功能正常,可按需求進入指揮中心視頻會議室,影像清晰、無卡頓,語音清晰,多方通話正常,滿足多方實時視頻會商需求。
為了模擬實際應用場景,本研究在白馬實驗基地進行了視頻會商模塊的實地測試,測試時將無人機懸停在約500 m外,150 m高的位置,與城區的指揮中心以及林區的護林員進行了視頻會商,如圖5。操作人員可按實際需求選擇聯系人進行多人會商。

圖5 視頻會商模塊測試Figure 5 Test for video meeting and multi-person meeting
本研究開發了一款可適用于松材線蟲病識別定位的無人機遙感監測系統,該系統具有松材線蟲病定位識別模塊和視頻會商模塊兩個模塊,實現了松萎蔫病監測和會商處理的整個流程。該系統主要具有識別標繪感病松樹、定位感病松樹和多方視頻連線等功能。該系統具有以下特點:
本系統結合無人機多光譜影像數據嘗試進行感病松樹單株定位,改變了以往漫無目的地查找感病松樹的現狀,使得對松材線蟲病的調查更快速方便。運用本系統識別定位面積1 km2的馬尾松和黑松林地時,當無人機飛行高度為150 m時,僅需要耗時12 h,和以往的人工實地巡查相比,效率提高了數十倍以上,能有效降低人力、物力和時間。
系統基于Android操作系統開發,能兼容市場上82.3%的移動設備,硬件設備又有著價格低廉的優勢,有利于日后的廣泛推廣應用,且得益于開源的特性,安卓開發有著豐富的學習資源和開發社區,開發難度相對較低。硬件上,多光譜相機的價格雖然比RGB相機高,但遠低于高光譜相機。通過進一步優化多光譜波段的算法,甚至可以在松材線蟲病感病早期其針葉顏色尚未發生肉眼可見的改變時,定位到感病植株,這是RGB相機無法具備的能力。
系統提出利用谷歌地圖的高程數據和無人機影像數據生成高精度的 DEM 數據相結合,減小因局部地形精度不足導致的定位誤差,提高地形精度。調試優化了識別松材線蟲病的算法,提高感病松樹定位的精度。
視頻會商系統實現了將無人機實時偵查影像傳入視頻會議,手機、電腦之間都可以互相視頻通話,使得指揮員能夠對現場監測情況準確把握。實現了指揮員、操作人員和護林員的三方視頻會商,減少了溝通障礙。