發布時間:2020-06-04所屬分類:農業論文瀏覽:1次
摘 要: 摘要: 準確獲取西蘭花花球面積和新鮮度是確定其長勢的關鍵步驟,本研究通過對深度殘差網絡ResNet進行改進得到一種新型的西蘭花花球分割模型,并通過花球部位黃綠顏色占比判斷其新鮮度,實現低成本高效準確地西蘭花表型信息提
摘要: 準確獲取西蘭花花球面積和新鮮度是確定其長勢的關鍵步驟,本研究通過對深度殘差網絡ResNet進行改進得到一種新型的西蘭花花球分割模型,并通過花球部位黃綠顏色占比判斷其新鮮度,實現低成本高效準確地西蘭花表型信息提取。主要技術流程包括:(1)基于地面自動影像獲取平臺拍攝西蘭花花球正射影像并建立原始數據集;(2)對訓練圖像進行預處理并輸入模型進行分割;(3)基于顏色信息用粒子群結構PSO和大津法Otsu對分割結果進一步進行閾值分割,獲取其新鮮度指標。試驗結果表明:本研究建立的分割模型精度優于傳統深度學習模型和基于顏色空間變換和閾值分割模型,4個評價指標結構相似性指數(SSIM)、平均精度(Precision)、平均召回率(Recall)、F-度量(F-measure)結果分別為0.911、0.897、0.908和0.907,相比于傳統方法提升了10%-15%,且對土壤反射率波動、冠層陰影、輻射強度變化等干擾具有一定的魯棒性。同時,在分割結果的基礎上采用PSO-Otsu法可以實現花球新鮮度快速分析,其精度超過了0.8。本研究結果實現了西蘭花田間多表型參數的高通量獲取,可以為作物田間長勢監測研究提供重要參考。
關鍵詞: 深度學習;西蘭花表型;機器視覺;自動分級;田間平臺
1 引言
西蘭花是十字科一、二年生草本植物,其蛋白質含量高并富含多種維生素和多酚類物質,具有較高的種植效益和經濟價值[1]。中國是西蘭花生產與消費大國,據“國家西蘭花良種重大科研聯合攻關”項目調研結果,中國目前種植面積和產量均居世界首位。因西蘭花是選擇性收獲作物,同一地塊上不同個體花球大小及新鮮水平呈現較大差異,如何精確地對每個花球大小及新鮮度進行評估,是提高采收效率、保證采收質量的關鍵。過去對西蘭花花球檢測主要依靠人工,即通過農藝人員定期在田間對不同個體進行花球大小、圓度等參數測量。但傳統人工田間調查存在效率低下、主觀性強、不能提供實時數據和成本高等問題,影響了西蘭花產業智能化發展。
當前,計算機視覺技術被廣泛應用于田間復雜環境下的果實提取和分析研究,以實現作物生長的動態監控;而圖像分割作為計算機視覺技術的前提和關鍵,其精度的高低直接影響到后續工作的精度和效率。在自然環境下對目標果實進行準確分割主要包括以下3類方法:(1)基于顏色空間變換和閾值分割方法。這類方法的核心思想是在RGB、Lab、HSV等顏色空間中尋找差異較大的通道并對其進行閾值分割運算。夏永泉等[2]基于HIS顏色空間對葉片病斑進行了提取;高理文和林小樺[3]利用顏色空間變換和最大類間方差法進行全圖分割;董曉輝[4]提出了一種基于顏色空間變換的綠色植被快速分割方法,其精度可達到80%以上。但是,該類算法存在動態光照和土壤反射率條件下魯棒性不足等問題,難以對自然環境下景物實現有效分離。(2)基于淺層模型的機器學習方法。通過人工篩選并提取果實和背景部分的顏色、紋理、性狀等特征,生成可準確區分二者的高階特征矩陣并對分類器進行訓練從而獲得分割模型。魏麗冉等[5]提出了一種基于核函數支持向量機的植物葉片病害多分類檢測模型;周俊等[6]根據K均值聚類算法和直推式支持向量機進行訓練,準確獲取了農田自然地塊中的各種綠色植物;李先鋒等[7]提出了一種基于特征優化和最小二乘支持向量(Least Square Support Vector Regression Machine,LS-SVM)實現棉田雜草識別的方法,通過粒子群算法(Particle Swarm Optimization Algorithm,PSOA)對提取到的特征進行優化后輸入LS-SVM進行訓練以實現雜草識別,其試驗精度可達95%以上。然而,淺層模型在實際應用中往往出現對目標特征表達不完整、提取過程和檢測過程分離等情況,從而造成分割和識別性能下降。(3)基于深度學習模型的機器學習方法。深度學習由大數據集驅動,不需要設定具體的目標特征即可進行高維數據判別,具有強大的信息處理優勢
[8]。Lee等[9]通過對AlexNet進行微調,自動提取葉片特征以解決傳統方法依賴人工監督導致模型偏差等問題,使用該網絡準確率可達99.6%;Dyrmann等[10]利用含殘塊支路模塊的卷積神經網絡模型(Convolutional Neural Networks,CNN)在一個包含有20多種作物及雜草的圖片數據集上進行分類測試,精度達到了86.2%;Too等[11]對多種經典網絡進行參數微調后對PlantVillage數據集中的植物和病蟲害進行識別,發現DenseNets-121在迭代次數增加時精度提升最為明顯,且所需參數數量最少;Fuentes等[12]將3種分類網絡Faster R-CNN,SSD和R-FCN與不同特征提取網絡(VGG和ResNet)相結合,提出了一種可以實時定位和識別番茄病蟲害種類的系統;李淼等[13]、陳桂芬等[14]開展了基于CNN和遷移學習的農作物病害識別方法研究。上述研究將深度學習模型應用于田間表型信息獲取,但因光照、角度和相機規格難以統一等問題均缺乏移動平臺試驗;且前述研究大多面向大田作物,鮮有對西蘭花等作物進行深度學習框架下表型信息提取的研究。
本研究結合機器視覺和深度學習技術,提出了一種西蘭花長勢信息的高通量獲取方法。首先,利用自主研發的地面平臺,獲取了西蘭花多個生育期的冠層正射影像;利用本研究提出的基于改進的深度殘差網絡(ResNet)對標注數據進行訓練學習建立快速、高通量的西蘭花球分割模型;并在該模型分割基礎上,利用PSOA技術和大津法(Otsu)對花球部位進行二次分割,以實現花球新鮮度分析。試驗結果表明,與經典ResNet和GoogleNet以及傳統基于顏色空間變換和閾值分割方法相比,本研究提出的方法精度較高且具有較強魯棒性,對未來田間西蘭花的表型分析具有一定的參考價值。
2 材料與方法
2.1 研究區域及試驗設計
研究區域與數據采集平臺設計如圖1所示。試驗所用西蘭花品種為“浙青452”“臺綠1號”和“臺綠2號”,花冠層圖像拍攝于浙江省嘉興市浙江省農業科學院楊渡科研創新基地(北緯30°27′,東經120°25′)。試驗小區為3個長寬分別為30m和20m的溫室大棚種植區,西蘭花株距約為30cm,所有田間管理均按照正常水平進行,不設置養分及水分試驗對照組。用架設在田間移動平臺(FieldScan Pro)上的兩臺高速工業相機分別從左右兩個方向對西蘭花花球進行拍攝,拍攝焦距為5mm,鏡頭保持垂直向下距地面約0.8m。拍攝時間為2018年9月15日上午9點至下午4點之間。將兩部相機同步獲取的影像利用尺度不變特征變換(Scale-invariant Feature Transform,SIFT)算法進行拼接,得到廣角照片以保證花球結構信息的完整性。
2.2 試驗平臺研發
對西蘭花表型信息進行提取除了需要對花球部位進行準確定位和分割,還應該根據其頭部“黃—綠”顏色占比對新鮮度進行估計。本研究采用由浙江省農業科學院農業裝備研究所研發的FieldScan Pro試驗平臺采集模型訓練所需彩色數碼圖片,試驗平臺由田間移動平臺和圖像采集系統兩部分組成。
2.2.1 田間移動平臺
FieldScan Pro包括輪式底座、3自由度支架和自動控制裝置。輪式底座采用中控設計,由后部搭載的鋰電池提供電能,在前后輪處分別裝有4個24V直流伺服電機,通過改變信號電壓控制其行駛和轉向;后輪處安裝有電渦流緩速器可以在行駛狀態下進行輔助制動。3自由度支架為鋁合金材料的剛性裝置,可以在X、Y、Z向進行任意位置調節固定,配合具有減震功能的相機支架可實現田間圖片的連續穩定拍攝。自動控制裝置以可編程邏輯控制器(Programmable Logic Controller,PLC)為核心,共有Y0-Y4五路信號輸出:其中Y4端口與繼電器共同作用可以觸發工業相機快門實現自動、同步拍攝;Y0-Y3端口分別輸出兩路脈沖信號,控制拍攝支架進行升降。
2.2.2 圖像采集系統
圖像采集系統由2臺高速工業相機及1臺高性能移動工作站組成。工業相機由德國BASLER公司研發,型號為MV-SUF1200M-T,采用1″CMOS傳感器,像素1200萬,幀率30.5 FPS,所有拍攝圖片格式存儲為JPEG。采集的圖像信號通過USB 3.0 Micro-B接口傳輸至工作站。工作站預裝有pylon 5相機軟件套件(由BASLER Inc.提供),可對獲取的影像進行實時查看以保證質量。
2.3 試驗方法
本試驗中共獲取西蘭花花球圖像442張,其中“浙青452”花球圖像132張,“臺綠1號”花球圖像141張,“臺綠2號”花球圖像169張。首先,基于田間拍攝的西蘭花花球正射影像,通過人工篩選去除存在失焦、模糊等問題的照片,將剩余每個品種100張照片作為輸入數據建立原始影像集,訓練集和測試集比例設為4:1,即訓練集中包含240張圖片,測試集中包含60張圖片。經過數據增廣和人工標記等預處理手段,將原始數據轉化為適合模型訓練的大小并提高訓練結果的泛化能力
[15]。然后利用改進的ResNet對模型進行訓練實現西蘭花花球分割,并進一步對分割結果采用PSOA和Otsu算法進行二次分割建立西蘭花新鮮度評估模型。技術路線如圖2所示。
2.3.1 圖像預處理
(1)數據增廣
基于CNN的圖像分割算法性能主要取決于訓練數據集的規模、質量和多樣性,即訓練數據集可以覆蓋足夠多的實際場景或類似環境[13]。然而,要獲取足夠多不同條件下的西蘭花花球圖片需要消耗大量的人工成本和時間。為解決樣本稀缺造成的過擬合,提高訓練網絡對對象差異的魯棒性,使用平移、縮放、旋轉、添加噪聲等數據增廣技術進一步擴充數據集[16]。為提高模型訓練效率、降低GPU內存使用率[17],通過Photoshop CS6 軟件將240張原始影像裁剪為500×500像素的子圖樣本(patch),并對這些樣本進行上下翻轉、旋轉、縮放、加入椒鹽噪聲等增廣操作,最終得到2131幅樣本。
(2)人工標記
對上述增廣結果通過人工篩選出顯示效果較好的2000幅樣本借助labellmg工具進行樣本標記,本研究中的數據集格式為POSCAL VOC2007。
2.3.2 基于改進的ResNet的西蘭花花球分割模型
傳統卷積網絡在信息傳遞過程中會存在信息丟失和損耗,同時出現梯度消失或梯度爆炸,導致訓練網絡的深度受到限制。為解決這一問題,微軟亞洲研究院的何凱明博士等[18]2015年提出ResNet,該模型可以在加快網絡訓練速度的同時提升模型準確率并保持較好的推廣性,其主要思想是通過在網絡中增加直連通道從而保留之前網絡層一定比例的輸出,使得原始輸入信息可以直接傳輸到后面的層中。然而,經典ResNet卷積層的濾波器作用于局部,獲取特征圖相互獨立且權重相等[19]。實際上這些特征圖的重要程度并不相同,采用這一操作會影響訓練結果的精度。通過添加Squeeze-and-Excitation(SE)模塊可以對特征按照其重要性進行重新調整[20],并用全局信息作為衡量單個特征重要性的標準。圖3為將SE模塊嵌入ResNet的示例,方框右下角維度信息代表本層輸出。使用全局池化(Global Average Pooling)進行遍歷(Squeeze)操作[21],然后用兩個全連接層Fully Connected(FC)[22]組成Bottleneck結構[23]對通道間的相關性進行建模的同時輸出與輸入特征相同數量的權重。先將特征維度降低到原來的1/16,再通過模型的ReLU激活函數[24]進行激活輸入一個全連接層中返回原來的維度。最后通過Sigmoid函數進行歸一化運算獲得0-1之間的權重數值,用Scale操作將該權重加權到每個特征圖上。由于像素二分類任務(分割)較為簡單,本研究設計了一個20層的ResNet,實心曲線為shortcut連接,虛線模塊C20、C21通過含有大小1×1、步幅為2的卷積核實現降維。模塊C1-C20的卷積核大小為3×3,C9和C16中卷積核步幅為2,其他模塊步幅為1。輸入圖像通過C1-C19,然后經過一個全局平均層最后進入softmax分類層得到其對應標簽。
遍歷待分割圖像的每一個像素點,提取以每一個像素點為中心的尺寸為18×18的方形圖像塊,將這些圖像塊輸入改進的ResNet模型中,得到每一個像素的分類標簽,再將其進行重建即可得到最終的分割結果。
2.3.3 基于PSO-Otsu算法的花球新鮮度分析及分級標準
西蘭花頭部新鮮度的區分和篩選對評估收獲品質、提升貿易價值有重要意義。通過機器視覺技術,可以從圖像中獲取西蘭花“黃—綠”顏色區域占比,并以此為依據對花球新鮮度進行評價和分級。像素二分法中較為經典的Otsu算法[25]的主要思想是計算背景和目標區域的方差值
最大的灰度值被判定為最佳分割閾值。然而,Otsu算法在處理較為復雜和數量較多的圖像時需要遍歷所有灰度級來確定閾值,其計算量極大,難以滿足實時處理的要求。針對Otsu算法運算復雜、時間復雜度高等缺點,在傳統Otsu算法基礎上基于PSOA技術進行最佳閾值搜索[26]:
(1)在一維平面上均勻投下N個粒子;
(2)計算每個粒子灰度值對應的方差,獲取最大方差
(3)根據PSOA算法更新粒子的速度和位置,反復迭代實現閾值尋優;
(4)達到最大迭代次數后,將迭代中出現的最大方差
通過上述PSO-Otsu算法可以對分割出的西蘭花頭部實現二次分割,從而得到其中“黃—綠”像素占比情況作為新鮮度評價依據。李長纓等[27]根據西蘭花花球的視覺黃度對其新鮮度進行了分級,具體分級標準如下:
等級0——肉眼無法檢測出黃色區域;
等級1——僅僅有1-3個花苞呈現黃色;
等級3——檢測出黃色區域面積小于5%;
等級5——黃色區域面積≤50%;
等級7——檢測出的黃色區域占比不超過75%;
等級9——花球所有部位均顯示黃色;
黃度計算如公式(1)所示。
(1)
上式中,Y表示花球黃度等級,Ym表示單個花球的黃度,Nm為該等級內包含的花球總數,Yh為最高黃度等級,Na為參與分級的西蘭花花球總個數。然而在實際生產中不需要進行如此精細的分級,因為當黃色區域面積超過10%時西蘭花對消費者來說已經不具有購買價值(視為不新鮮)。基于這種考慮,并參考[2]的劃分標準,本研究將西蘭花花球新鮮度分為5個等級,如表1所示。
推薦閱讀:cscd農業類期刊有哪些
4 總結和展望
本研究以西蘭花花球作為研究對象,提出了一種基于改進ResNet的西蘭花長勢監測方法。通過自主設計的影像獲取平臺得到的西蘭花冠層正射影像進行分析,可以準確提取西蘭花花球并對其新鮮度進行判定。本研究主要貢獻如下。
(1)基于傳統ResNet架構,設計了適合進行西蘭花田間實時分析的改進ResNet,通過加入SE模塊減少了網絡參數個數,達到平衡各特征圖之間的權重并加快了訓練速度的目的。
(2)在現有西蘭花分級標準的基礎上,結合實際蔬菜貿易需求,提出了一種新的西蘭花新鮮度分級標準。以該標準為依據,利用基于粒子群模型改進的Otsu算法實現了西蘭花球不同顏色區域面積比估算,將該比值與新的分級標準一一對應,從而實現收獲前西蘭花品質的判定并為自動采收提供技術支撐。
(3)與傳統ResNet、GoogleNet以及CIVE、ExG等基于顏色空間變換和閾值分割的方法相比,本研究提出的方法在各評價指標上有了較大幅度的提升,可以有效克服傳統方法存在的訓練效率低、魯棒性差等問題。
雖然本研究提出的方法在以上方面取得了一些進展,但仍然存在模型復雜、硬件門檻高和訓練數據量偏少等問題。在今后的研究中需要進一步簡化網絡,并進行大數據下的精度驗證;實現以相關結果為基礎開發便攜式終端產品,方便廣大農戶使用。——論文作者:周成全 , 葉宏寶 , 俞國紅 , 胡俊 , 徐志福
SCISSCIAHCI