張寶才,高瑞翔
(北京簡巨科技有限公司,北京市 100081)
中國是一個人口眾多的國家,而糧食問題已經成為影響我國國民生活的一個重大問題。而玉米一直屬于我國主要的糧食作物,在我國的糧食產量中有著重要的位在我們的糧食產量當中有著很重要的地位置。如何準確的監測、預測玉米的產量是很多人關心的問題。而在玉米的生長過程當中玉米的出苗情況很大的決定了玉米的產量。基于此,如何準確的識別監測玉米的出苗率一直是人們研究的重點。由于無人機技術以及計算機技術的高速發展,計算機視覺等技術已經在生活中廣泛的使用,如人臉識別[1]、車輛檢測[2]等諸多技術。對此,將計算機視覺技術引入玉米苗識別也是很好的應用前景。隨著無人機的日益成熟,使得無人機平臺的新型近地遙感技術備受農業生產者青睞[3]。而目前主要的玉米苗識別方法是基于色彩空間轉換,使用閾值發來區別前景與背景進行玉米苗的提取[4]。但此方法受限于閾值選取,對于較為模糊的玉米苗難以提取。2010年馬彥平提出了基于雙目立體視覺的大田玉米生長參數的夏玉米長勢監測方法,但是此方法由于受復雜地理環境的影響較大。而本文是結合無人機遙感技術于計算機視覺技術進玉米苗檢測。
隨著計算機技術的高速發展,計算機視覺已經于諸多產業相結合,在人臉識別,汽車識別等多個領域都有重大的突破性發展。但是在玉米苗的識別檢測上卻還處于一個未知的領域。因此玉米苗的智能識別研究,不僅可以對玉米產業的決策做出貢獻,還能促進計算機視覺在農業領域的應用。同時本文結合無人機遙感技術,使用無人機遙感數據結合計算機視覺進行識別,不僅減少人工識別的問題,同時解決了玉米苗數據獲取的問題。
本文主要以甘肅省臨澤縣作物主要的實驗區域,臨澤縣地處河西走廊中部,縣域內地勢平坦,土質肥沃,灌溉便利,光熱資源豐富,晝夜溫差大,在優越的自然條件下生產的玉米種子籽粒飽滿、發芽率高、水分含量低、商品性好,是國內乃至世界最佳的種子繁育地帶,被譽為“天然玉米種子生產王國”。玉米制種產業的發展,有效帶動了該縣農民增收和農業農村經濟的持續繁榮。
因此本文選取該縣作為主要研究區域,并采用無人機航飛影像數據,分辨率為0.01 m。我們所選擇的玉米苗區域包含了多種玉米苗形態,能夠提供足夠的玉米苗數據。

圖1 實驗區無人機數據概況
如圖1所示,為實驗取主要的玉米苗圖像情況,從圖1.a、圖1.b、圖1.c、圖1.d這四張圖中可以看出,相同實驗取的玉米苗,形態、顏色、背景地物都有所不同,主要是由于玉米苗的生長狀況有所不同,因此對玉米苗的識別造成了困難。
由于目前沒有相關的玉米苗數據集,因此需要自己制作玉米苗目標檢測的數據集。實驗區航飛影像大小為75 966像素×20 881像素,從中選取依靠實驗取,裁剪得到200×200大小的樣本區域1 500張作為訓練集。之所以選擇實驗區樣本大小為200×200是因為考慮到玉米苗非常密集,在選取樣本是若樣本區域過大會造成樣本制作是的困難。
本節使用LableImg軟件對圖像進行標注,如圖2所示。

圖2 軟件標注示意圖
共計標注候選框26 591個,并根據VOC 2007數據格式進行制作,分別將xml文件、png文件和訓練文件放在Annotations、JPEGImages、ImageSets三個文件夾中。
Annotations文件主要是標注文件,其中分別記錄了對應圖像的類別、以及目標框的位置信息。目標框位置信息記錄了中4個值,分別為當前目標的最大最小x坐標,以及y坐標的最大最小值.JPEGImages文件夾主要存放了所有所需訓練預測的圖像,圖像類型可以是png、jpg、bmp等。會根據ImageSets中的訓練文件讀取并使用。如下圖3所示。
ImageSets文件夾主要存放了4個txt文件,分別為test.txt、train.txt、trainval.txt、val.txt。以上4個txt主要用于網絡的測試,訓練,訓練測試以及驗證。將生成的png圖像的文件名綴寫入txt中進行訓練。

圖3 JPEGImages文件圖像素材
本文主要使用基于Faster-Rcnn的目標檢測方法對本文制作的數據集進行訓練與預處。Faster-Rcnn的目標檢測方法是一種將卷積神經網絡與目標檢測相結合的目標檢測方法[5]。通過卷積層對圖像特征進行提取,在通過最近的目標框回歸和分類回歸進行類別和目標框的確定。
對于卷積神經絡來說,隨著卷積層的增多,網絡就能夠根據圖像獲取得到更多的特征信息,從而提高網絡的識別能力。對于玉米苗的航飛影像來說,由于目標較小,切紋理顏色等信息較為模糊,需要使用特征提取能力更強的卷積層。但是由于卷積層的增對,會出現梯度消失或者梯度爆炸的問題,一般使用標準化的方法來解決,從而使得卷積神經網絡能夠有很好的收斂。
對于殘差網絡[6]來說,利用殘差單元解決了梯度消失和梯度爆炸的問題。殘差結構如下圖4所示,殘差網絡結構鏈接了以恒等映射層,將低維度的特征與高緯度的特征進行連接。殘差網絡中單個結構的輸出和輸入其實是多個卷積層的輸入和輸出的疊加,之后再經過激活函數激活。將這種結構集成起來,就是殘差網絡模型。因此本文將Faster-Rcnn的特征提取更換為殘差網絡結構[7]。
由于Faster-Rcnn中使用了RPN網絡結構,而RPN網絡當中錨框大小的選擇對網絡有著至關重要的影像,而錨窗的大小時在圖像輸入[8],網絡訓練之前就已經認為設定好了,原始的RPN網絡時在VOC數據集上使用的,對于每個滑動的窗口都會擁有3種尺度以及三種長寬比,通過不同的尺度以及不同的長寬比共生成9種不同的錨框。其中對于網絡128、256、512為默認的尺度參數,1:2、1:1、2:1是默認的長寬比。因此本文通過對玉米苗結構形態的分析[9],對錨框參數進行了一定的修改和選擇,將尺度參數修改為8、16、32,新增錨框參數3:1、1:3。最后得到如下圖所示的識別結果。

圖4 JPEGImages文件圖像素材
本文使用TensorFlow-gpu 1.1.13 CUDA9.0,硬件使用2080ti顯卡的服務器。分別使用VGG16和res101為網絡特征的提取層,之后再使用對RPN網絡錨框進行修改后的網絡進行訓練,通過實驗對比,得到表1。

表1 不同網絡模型的精度比較
從表1可見隨著特征網絡特征提取層的修改,當網絡的特征提取層由VGG16更換為Resnet101時網絡的處理速度變慢了,但是從mAP值可以明顯的看到,使用Resnet101網絡的精度從79.1%上升至82.1%。之后再在Resnet101的RPN網絡上進行修改,可以發現mAP至提高了3.3%。
分別調整不同的錨框尺寸,并且使用不同的長寬比進行比較,目的是選出最合適的長寬比以及錨框尺寸。我們確定相同的長寬比之后對尺寸大小進行改變,之后再確定尺寸大小對長寬比進行比對,如下表2所示。
從表2可知,通過更改錨窗的尺寸和床寬鼻,可以提高網絡的檢測精度,相比于其他的長寬比和尺寸來說,本文所用的長寬比是效果最好的。

表2 不同尺寸長寬比性能檢測
以航飛的玉米苗影像為數據,使用LabelImg進行樣本的標注,再使用數據增強的相關方法,對數據進行增強,用來增加數據量,之后使用Faster-RCNN進行訓練,再訓練前調整訓練參數,更改錨窗參數從而提高網絡預測的精度。最后對實驗進行結果比對。
根據本文針對玉米苗航飛影像的特征,通過分析得知特征提取層的網絡結構會對網絡檢測結構產生影像,因此分別使用VGG16和Resnet101這兩種不同結構的特征提取網絡進行比對分析,以及通過對RPN網絡的錨窗參數來對網絡結果進行優化。最后發現,本文的優化方法是確實可行的。
對于本文的玉米苗目標識別,雖然對大部分玉米苗能夠很好的識別,但是由于玉米苗在航飛影像中目標較小,并且有一部分目標的紋理等特征十分不明顯對目標檢測造成的阻礙,同時由于航飛影像的復雜性,再出現陰影以及影像模糊時會導致目標檢測出現嚴重的漏檢。
從速度上,由于本文使用的網絡結構為兩階段的方法,所有在識別速度上有所欠缺,而如何提高Fasterrcnn的識別速度,將會成為研究熱點。