黃成龍 李曜辰 駱樹康 楊萬能 朱龍付
(1.華中農(nóng)業(yè)大學(xué)工學(xué)院, 武漢 430070; 2.華中農(nóng)業(yè)大學(xué)作物遺傳改良國家重點實驗室, 武漢 430070)
棉花是我國重要的經(jīng)濟(jì)作物,我國棉花的生產(chǎn)量、消費量和進(jìn)口額均位居世界前列[1-2]。棉花葉片是控制光合作用及蒸騰作用的重要器官,棉花苗期是生長發(fā)育的基礎(chǔ),棉花幼苗葉片性狀對棉花育種、抗病、脅迫研究具有重要的意義[3]。棉花幼苗葉片面積是光合作用能力的重要指標(biāo),與棉花產(chǎn)量直接相關(guān)[4];棉花幼苗葉片生長角度決定葉片的著生姿態(tài),直接影響光能利用率[5];棉花幼苗葉片卷曲度是棉花抗病、抗旱能力的重要指標(biāo)[6-8];棉花幼苗葉片黃葉占比是識別病害、病害評級的重要依據(jù),對我國棉花黃萎病防治具有重要價值[9-10]。棉花抗病、育種研究中經(jīng)常需要對大量棉花幼苗樣本進(jìn)行葉片性狀調(diào)查,為品種選育提供依據(jù)[11]。傳統(tǒng)的測量方式主要依靠人工進(jìn)行,存在效率低、主觀性強(qiáng)、可靠性差等缺點,無法滿足現(xiàn)代棉花抗病、育種研究的需求,因此,亟需研究一種快速、準(zhǔn)確、無損的棉花幼苗葉片性狀測量方法[12]。
隨著計算機(jī)技術(shù)的快速發(fā)展,機(jī)器視覺在農(nóng)業(yè)中的應(yīng)用日益廣泛,在植物性狀檢測中三維立體視覺可以提供更為精細(xì)的信息[13]。XIONG等[14]采用雙目視覺對油菜苗期冠層進(jìn)行三維重建,并提取葉面積等植物性狀。方慧等[15]利用結(jié)構(gòu)光技術(shù)實現(xiàn)油菜三維點云信息的準(zhǔn)確獲取。張浩等[16]提出一種基于光柵投影輪廓技術(shù)的茶葉嫩梢定位方法。JAY等[17]采用運動恢復(fù)結(jié)構(gòu)(SFM)獲取三維信息,對整行作物提取其高度與葉面積參數(shù)。相對于二維圖像,三維立體視覺可以提供更詳細(xì)、更全面的植物信息,為棉花幼苗高精度測量提供了可行途徑。
在棉花幼苗葉片測量中,需要獲取植株高精度、完整三維點云信息。雙目視覺、光柵投影成像方法只能獲取某一方向的深度圖像;運動恢復(fù)結(jié)構(gòu)、空間雕刻三維重建方法獲取的點云比較稀疏,且顏色容易失真;結(jié)構(gòu)光成像采用主動三維立體視覺技術(shù),可以獲取高精度三維點云,已廣泛應(yīng)用于工業(yè)檢測、反求工程和文物保護(hù)等領(lǐng)域[18],為棉花幼苗葉片性狀高精度解析提供了一種有效方法。
本文提出一種基于結(jié)構(gòu)光的棉花幼苗葉片性狀解析方法。采用結(jié)構(gòu)光掃描儀獲取棉花幼苗高精度點云,設(shè)計棉花葉片三維點云自動分割和葉片性狀解析算法,以實現(xiàn)葉片面積、周長、生長角度、卷曲度、黃葉占比等性狀參數(shù)的快速、準(zhǔn)確、無損提取。
試驗共種植100株新陸早36號棉花(由石河子棉花研究所培育的棉花品種),于棉花幼苗子葉期接種落葉型黃萎病V991標(biāo)準(zhǔn)菌株,在溫度25℃、相對濕度80%以上的溫室培養(yǎng)10 d。從中挑選葉片間無明顯交疊,且尺寸在掃描儀視野內(nèi)的棉花幼苗共40株,進(jìn)行后續(xù)三維結(jié)構(gòu)光掃描及點云分析。
試驗所使用的三維結(jié)構(gòu)光掃描儀光源為白光;物距為290~480 mm;最大掃描尺寸為200 mm×200 mm×200 mm;空間點距為0.17~0.20 mm。
結(jié)構(gòu)光三維掃描儀工作過程及棉花幼苗掃描效果如圖1所示。該掃描儀基于結(jié)構(gòu)光光柵投影法,通過對3種不同頻率的光柵進(jìn)行五步相移法求解相位,利用旋轉(zhuǎn)臺獲取植株完整三維點云信息,結(jié)合RGB三色光投影獲取植株顏色信息。利用Visual Studio 2013開發(fā)平臺和PCL 1.80、OpenCV 3.0點云庫進(jìn)行三維點云處理。
圖1 結(jié)構(gòu)光掃描儀工作過程及效果展示Fig.1 Working procedure of structured light scanner and results exhibition
棉花幼苗葉片三維點云的分割流程如圖2所示。點云處理過程如圖3所示。
圖2 棉花葉片三維點云分割流程圖Fig.2 Leaf point cloud segmentation pipeline
具體點云處理步驟如下:
(1)原始棉花幼苗點云如圖3a所示。通過直通濾波分割土壤點云與植株點云,效果如圖3b所示。由于棉花幼苗生長方向與土壤法向量基本一致,故將土壤點云擬合平面的法向量作為植株豎直方向,以便后續(xù)葉片生長角度計算。
圖3 棉花三維點云葉片分割效果Fig.3 Leaf segmentation results from cotton 3D point cloud data
(2)由于原始植株點云非常密集,不利于后續(xù)處理。于是對圖3b點云進(jìn)行體素濾波實現(xiàn)降采樣[19]。濾波后采用滑動最小二乘法(MLS)對點云進(jìn)行平滑處理[20],結(jié)果如圖3c所示。
(3)將濾波平滑后的棉花幼苗點云進(jìn)行超體聚類,以八叉樹對點云進(jìn)行劃分,基于顏色、距離、法向量的差異將類似的粒子歸至同一超體素,從而降低點云后處理的復(fù)雜度[21],如圖3d所示。
(4)超體素中點云的幾何特征信息可以由超體素中心點有效代替[22]。提取超體素中心點的位置與法向量信息,通過條件歐氏距離聚類算法對所有超體素中心點聚類分割,將同一類的超體素中包含的點云用同一偽彩顯示,如圖3e所示。
(5)在條件歐氏距離聚類的過程中,包含超體素個數(shù)過少將被歸為極小類舍去,會造成葉片點云的部分缺失,如圖3e中紅色部分。基于Kd樹對丟失的超體素中心點作最近鄰搜索,找到距離最近的類并將丟失點添加進(jìn)此類,效果如圖3f所示。
(6)分別對分割后的不同類點云進(jìn)行隨機(jī)采樣一致性(RANSAC)線性擬合,統(tǒng)計擬合后局內(nèi)點與局外點的數(shù)量[23]。若局內(nèi)點數(shù)量遠(yuǎn)小于局外點數(shù)量,則將此類歸為葉片部分點云,并單獨輸出。分別用偽彩與原始顏色顯示,如圖3g所示。
基于上述分割得到的棉花葉片點云,提取葉片面積、周長、生長角度、卷曲度、黃葉占比性狀,具體參數(shù)計算過程為:
(1)葉片面積和周長
將分割的葉片點云再次降采樣處理,然后采用貪婪投影三角算法進(jìn)行三角面片化[24]。面片化后的葉片模型由若干個三角面片組成,每個三角面片中包含對原始點云的索引,通過三角面片索引到原始點坐標(biāo)信息,進(jìn)而計算每個小三角形的面積與周長。
計算面積時,遍歷葉片中所有三角面片,通過三角面片中包含的點云索引信息,獲取每個三角面片頂點的三維信息,通過海倫公式,計算每個三角面片的面積Sti,將葉片中所有三角面片累加求和,即得到葉片面積S。
(1)
(2)
式中pi——面片化三角形周長的一半
ai、bi、ci——三角形各邊長
n——總面片數(shù)i——面片索引序號
計算周長時,創(chuàng)建一個行列數(shù)均為葉片點云數(shù)量的零矩陣,基于葉片點云三角面片中頂點對應(yīng)的點云索引序號,令矩陣中行列數(shù)為該點云索引序號的元素值加1。遍歷所有三角面片,對該矩陣賦值,處于點云邊界的三角面片的三角邊僅會被記錄一次,故搜索矩陣中值為1的元素,其行列信息即為葉片邊界點的索引,對所有邊界點按其索引連線,包含點最多的邊界即為葉片的邊界,計算每個處于邊界三角邊的長度并求和即可得到葉片周長。點云下采樣與面片化效果如圖4所示。
圖4 葉片面積和周長提取Fig.4 Extraction of leaf area and perimeter
(2)葉片生長角度和卷曲度
基于隨機(jī)采樣一致性(RANSAC)算法[25]對葉片進(jìn)行平面擬合,將葉片點云投影到最大擬合平面,如圖5中綠色標(biāo)記的點云,對投影平面點云進(jìn)行降采樣并網(wǎng)格化計算投影面積。葉片卷曲度C定義為
(3)
式中Pa——葉片投影在擬合平面的面積
葉片生長角度定義為葉片最大投影平面法向量與土壤擬合平面法向量的夾角,如圖5所示(圖中1~6為葉片編號)。
圖5 葉片角度和卷曲度提取Fig.5 Extraction of leaf angle and rolling degree
(3)葉片黃葉占比
發(fā)病的葉片表面會有明顯的黃褐色病斑,故可基于顏色空間對葉片進(jìn)行閾值分割。滿足條件的點云記為健康部分,否則記為黃色病斑部分,根據(jù)病斑部分點云數(shù)量與整片葉片的點云數(shù)量比,可得到黃葉占比。
選取合適的顏色空間對病葉閾值分割至關(guān)重要,常用的顏色空間有RGB、HSV、Lab等[26]。通過試驗對比RGB空間中的超G分量,HSV空間中的H分量,Lab空間中的a分量下分割效果,發(fā)現(xiàn)Lab顏色空間進(jìn)行閾值分割效果較好。通過對葉片點云進(jìn)行采樣調(diào)查結(jié)合點云數(shù)據(jù)在L、a、b通道的波谷值發(fā)現(xiàn),基于a分量與b/a分量能取得較好的分割效果,分割效果如圖6所示。
圖6 葉片黃綠分割Fig.6 Segmentation of leaf yellow and green areas
共對40株棉花幼苗進(jìn)行三維結(jié)構(gòu)光成像,分割得到175片葉子點云。從中隨機(jī)選取葉片面積及卷曲度差異較大的75片葉子進(jìn)行面積和周長測量精度驗證。人工測量,通過將該75片葉子剪下、壓平后,放置在有10 mm為半徑的黑色單位圓作標(biāo)定的白板上,相機(jī)在垂直方向獲取葉片二維圖像,利用Matlab計算二維圖像中葉片面積與周長。將本研究三維測量得到葉片面積與周長分別與人工測量得到的面積與周長對比,測量結(jié)果所得的平均絕對百分比誤差(MAPE)和均方根誤差(RMSE)的計算方法為
(4)
(5)
式中M——平均絕對百分比誤差
R——均方根誤差
n1——樣本數(shù)
xai——三維測量結(jié)果
xmi——人工測量結(jié)果
葉片面積和周長測量精度結(jié)果如圖7所示。葉片面積的決定系數(shù)為0.997 3,M、R分別為2.59%、74.05 mm2;葉片周長的決定系數(shù)為0.982 2,M、R分別為2.85%、10.09 mm。結(jié)果顯示三維測量結(jié)果與有損試驗測量值具有較好的一致性,相比傳統(tǒng)人工測量,本文研究方法可以在三維空間高精度獲取棉花的面積、周長。結(jié)果也表明該棉花結(jié)構(gòu)光三維點云測量方法,可以在三維空間上準(zhǔn)確解析葉片形態(tài),并為卷曲度、黃葉占比等復(fù)雜性狀的量化提供了重要的基礎(chǔ)。
基于上述點云處理過程,對剩下100片棉花幼苗葉片進(jìn)行處理,提取棉花幼苗的葉片面積、周長、生長角度、卷曲度與黃葉占比,測量結(jié)果如圖8所示。從葉片卷曲度、黃葉占比計算結(jié)果和圖像的對應(yīng)關(guān)系,證明本研究方法相比傳統(tǒng)人工測量方法,可以實現(xiàn)葉片的卷曲度和黃葉占比等復(fù)雜性狀的量化。結(jié)果同時顯示三維空間中葉片面積和周長有明顯的正相關(guān)趨勢。
圖7 驗證葉片面積與周長測量Fig.7 Validation of leaf area and perimeter measurement
圖8 棉花幼苗葉片性狀測量結(jié)果Fig.8 Measurement results of cotton leaf traits
將上述100片棉花幼苗葉片通過人工分類為正常葉片與病葉,通過SPSS軟件對葉片的面積、周長、生長角度、周長面積比、卷曲度與黃葉占比等6種性狀做單因素方差分析,前5個性狀顯著性差異P值分別為0.099、0.242、0.346、0.531、0.002,黃葉比性狀顯著性差異P<0.001。葉片黃葉占比、葉片卷曲度和周長面積比區(qū)分正常、病葉顯著性統(tǒng)計結(jié)果如圖9所示。P值小于0.01為極顯著,0.01~0.05為顯著,大于0.05為不顯著,故黃葉占比與葉片卷曲度可顯著區(qū)分正常葉片與病葉。三維空間中葉片周長面積比并不能區(qū)分正常葉片和病葉。
圖9 棉花幼苗葉片顯著性差異分析Fig.9 Analysis of significant differences in cotton seedling leaves
針對棉花幼苗結(jié)構(gòu)光三維點云,設(shè)計了一種棉花幼苗葉片點云自動分割和性狀提取的方法。該方法可以準(zhǔn)確獲取葉片面積、周長、生長角度、卷曲度、黃葉占比等性狀參數(shù)。以40株棉花幼苗為研究對象進(jìn)行三維結(jié)構(gòu)光成像試驗,結(jié)果表明,葉片面積、周長測量的平均絕對誤差分別為2.59%、2.85%,均方根誤差分別為74.05 mm2、10.09 mm。同時,還證明葉片卷曲度、黃葉占比可以顯著區(qū)分正常葉片和發(fā)病葉片。