施 瀅, 劉永華
(1.南京理工大學(xué)紫金學(xué)院,江蘇南京 210023; 2.江蘇農(nóng)林職業(yè)技術(shù)學(xué)院,江蘇鎮(zhèn)江 212400)
在信息技術(shù)和農(nóng)業(yè)知識有機(jī)結(jié)合的背景下,以植物形態(tài)結(jié)構(gòu)的數(shù)字化設(shè)計和生理功能的可視化表達(dá)為研究內(nèi)容的“數(shù)字植物”已經(jīng)成為現(xiàn)代農(nóng)業(yè)的重要組成部分[1]。該技術(shù)通過數(shù)字化方法,對植物生命系統(tǒng)和農(nóng)業(yè)生產(chǎn)過程,進(jìn)行數(shù)字化表達(dá)、生長建模、過程模擬、可視化計算分析,對植物進(jìn)行研究與分析,并通過信息服務(wù)和技術(shù)支撐平臺,實現(xiàn)協(xié)同科研試驗、成果共享及集成應(yīng)用。植物表型參數(shù)可以用來反映植物生長狀況,評估碳儲量以及碳匯能力等。提高植物表型的獲取效率是研究植物生理機(jī)制過程亟待解決的問題。葉片是植物進(jìn)行光合作用和蒸騰作用的重要功能器官,在植物生長過程中起著無可替代的作用,其生長狀況直接影響著植物發(fā)育。葉面積直接反映了植物的生產(chǎn)力,因此建立植物葉片的三維可視化模型對于研究植物的生長規(guī)律,對植物實施精準(zhǔn)灌溉、精準(zhǔn)施肥、精準(zhǔn)噴藥等精準(zhǔn)農(nóng)業(yè)方式具有重要的理論意義[2-4]。
目前,獲取三維點云主要有基于激光掃描原理,利用結(jié)構(gòu)光、TOF等獲取深度信息原理以及基于雙目相機(jī)的立體視覺原理。Trooien等探索了利用圖像處理方法獲取馬鈴薯葉面積的方法,從3個角度采集植物圖像經(jīng)圖像處理后算出各幅圖中的面積,將3幅圖中計算的面積在三維空間中合成真正的植物面積,結(jié)果表明,利用圖像處理方法測量的馬鈴薯葉片面積具有較高的準(zhǔn)確性[5]。Hack等在溫室條件下利用圖像處理技術(shù)測量生菜初期生長階段的葉面積,用一波段的近紅外光采集植物圖像得到了較滿意的測量葉面積與植物鮮質(zhì)量的回歸曲線[6]。付豪等通過檢測裝置由框架、光源裝置、頂升旋轉(zhuǎn)系統(tǒng)、圖像采集及分析系統(tǒng)、檢測裝置控制系統(tǒng)等部分組成,通過各部分協(xié)作完成玉米幼苗頂視圖像與側(cè)視圖像的實時采集及分析處理,計算玉米幼苗的葉面積[7]。張雪等以高架栽培模式生長環(huán)境下的草莓植株為研究對象,提出了一種基于多源圖像輪廓分割的草莓植株結(jié)構(gòu)形態(tài)三維重建算法[8]。熊龍燁等利用Kinect v2 獲取柑橘樹的彩色圖像和深度圖像,采用泊松曲面重建算法對柑橘樹進(jìn)行三維重建,通過顏色特征信息分割識別果實[9]。陳柱等通過運動恢復(fù)結(jié)構(gòu)算法、聚類多視角立體算法和基于面片的多視角立體算法處理圖像并生成三維點云,再對點云進(jìn)行去噪、分割、填補、三角網(wǎng)格化處理,最后對葉片面積進(jìn)行估測[10]。徐煥良等采用粒子群優(yōu)化算法計算幾何模型離散點云和局部點云間的空間距離,進(jìn)行空間匹配,利用遺傳算法求解最優(yōu)匹配模型的內(nèi)部模型參數(shù),輸出最優(yōu)匹配模型的葉長、葉寬與葉面積作為估測結(jié)果[11]。Miao等提出了一種玉米莖稈葉片自動分割方法,包括骨架提取、基于骨架的粗分割和基于莖葉分類的細(xì)分割[12]。Li等創(chuàng)新了一種雙功能深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò),包括用于預(yù)處理輸入點的3D邊緣保持采樣策略,基于動態(tài)圖卷積的局部特征提取操作模塊,以及語義實例特征融合模塊,實現(xiàn)了不同物種點云的莖和葉語義分割和葉實例分割[13]。Mohammed等基于立體視覺的自動葉片分割和重疊葉片分離提出了一種利用立體視覺傳感器的深度提取植物葉片的算法,通過協(xié)調(diào)顏色、形狀和深度等特征來處理多葉分割和重疊葉分離[14]。Li等以玉米為代表作物,研究開發(fā)了DeepSeg3DMaize,這是一種集成高通量數(shù)據(jù)采集和深度學(xué)習(xí)的植物點云分割技術(shù)[15]。
本研究采用低成本基于TOF原理的Kinect v2相機(jī)獲取植株原始點云,去除背景和離群點噪聲,分割出植株葉片,對葉片進(jìn)行三維重建并計算其面積。該方法成本低精確度高,對葉片面積適應(yīng)范圍大,可以推廣應(yīng)用于其他植物葉片參數(shù)的活體無損測量。
點云數(shù)據(jù)采集設(shè)備包括計算機(jī),Kinect v2相機(jī),直徑30 cm的轉(zhuǎn)盤,轉(zhuǎn)盤上放有刻度盤,將植株(含3張葉)放置于轉(zhuǎn)盤中心,為了獲得視角清晰且質(zhì)量較高的點云,Kinect 相機(jī)使其正對轉(zhuǎn)盤中心,距轉(zhuǎn)盤中心水平距離1.5 m,每個22.5°獲取植株點云圖像,共獲取16個角度,每個角度獲取50張(圖1)。
基于深度信息的植株葉面積估算流程見圖2,主要包括植株點云獲取與預(yù)處理、多幀融合、點云配準(zhǔn)、點云分割、葉片點云重建和葉面積估算。
1.2.1 點云獲取與預(yù)處理 每隔22.5°逆時針轉(zhuǎn)動采集50幅點云圖像,當(dāng)轉(zhuǎn)盤轉(zhuǎn)過360°時得到16幅穩(wěn)定的不同視角下的點云圖像。背景點云數(shù)據(jù)的濾除可以采用直通濾波去除指定范圍內(nèi)點云,也可以通過背景差法即有通過待測目標(biāo)點云和背景數(shù)據(jù)相減,從而將大量背景數(shù)據(jù)去除。直通濾波方法由于無法準(zhǔn)確估計植株XYZ坐標(biāo)范圍,因此,不能很好地對背景數(shù)據(jù)進(jìn)行精確地濾除,且對其他植株缺乏兼容性;背景差法實質(zhì)為利用k-d tree樹將A數(shù)據(jù)中的點在B數(shù)據(jù)中進(jìn)行近鄰搜索,當(dāng)近鄰點對應(yīng)的平方距離小于一定閾值之后,即判定為重合點并將其記錄,通過puch_back函數(shù)將A數(shù)據(jù)中異于B數(shù)據(jù)的點云存儲后保存為PCD文件。
經(jīng)過背景點云數(shù)據(jù)濾除后的點云數(shù)據(jù)存在著部分噪聲點,其一是距離待測主體距離較遠(yuǎn)的離群點,它往往是由于光線反射、點云數(shù)據(jù)獲取設(shè)備的精度等問題產(chǎn)生的,另一種是存在于植株的葉片之間以及邊緣的噪聲點,它主要是受待測物體的表面特性影響,并在對點云數(shù)據(jù)進(jìn)行融合過程中表現(xiàn)出來的噪聲點。本研究采用基于搜索半徑和鄰域內(nèi)所包點云數(shù)相結(jié)合的方法去除噪聲。
1.2.2 點云配準(zhǔn) 在進(jìn)行深度信息獲取時,對于紅外光線無法照射到的陰影部分,往往存在著大量深度數(shù)據(jù)的缺失,因此,需要對待測物體采取多角度拍攝的深度信息獲取方式,以確??梢酝暾孬@取待測物體的深度信息,為后續(xù)對于該物體三維模型的構(gòu)建提供必要的基礎(chǔ)。對于不同角度獲取的點云數(shù)據(jù),存在著旋轉(zhuǎn)角度上的位置錯亂以及水平方位上的平移錯亂,需要對點云進(jìn)行配準(zhǔn)操作,分初始配準(zhǔn)和精準(zhǔn)配準(zhǔn)。
點云配準(zhǔn)實現(xiàn)步驟如下:(1)對噪聲點去除后的點云進(jìn)行初始配準(zhǔn),選擇FPFH局部特征;(2)利用k-d tree的加速對源點云和目標(biāo)點云進(jìn)行迭代搜索其歐氏距離平方和最小的對應(yīng)點;(3)計算出待配準(zhǔn)點云數(shù)據(jù)之間的變換矩陣,得到配準(zhǔn)后點云。
1.2.3 點云分割 為對植株進(jìn)行葉片分析等研究,需要將葉片從整體的植株點云中分割。歐氏聚類方法是一種利用三維立體空間內(nèi)各點的歐氏距離作為參考進(jìn)行聚類的方法。對于歐氏聚類分割算法的實現(xiàn),首先選取1個原始點,利用k-d tree對該點進(jìn)行鄰域搜索,搜索半徑r可自行設(shè)定,如果搜索的鄰域內(nèi)存在點云,則將其與原始點歸為同一聚類,對聚類內(nèi)點云重復(fù)選取原始點并進(jìn)行領(lǐng)域搜索,直至聚類內(nèi)的點數(shù)不再增加且點數(shù)滿足設(shè)定的閾值時,對聚類結(jié)果進(jìn)行保存,在剩余的點云重復(fù)上述步驟。
歐氏聚類分割法對于分散的點云進(jìn)行分割具有很好的效果,而對于帶有干擾點云的待分割物體,則可以通過采取直通濾波等方法對干擾點云進(jìn)行濾除,并調(diào)整搜索半徑和聚類點數(shù)閾值對物體進(jìn)行分割。
通過滾球算法[16]重建了葉片的表面網(wǎng)格模型。葉片曲面由大量的立體小網(wǎng)格構(gòu)成,使用海倫公式計算三角形面積,通過統(tǒng)計網(wǎng)格面積,得到葉片擬合曲面的總面積。
對整個點云三維模型,統(tǒng)計網(wǎng)格面積
(1)
式中:n為葉片三維模型網(wǎng)格三角形數(shù)量;Si為第i個三角形點云面積;S為葉片面積。通過植物的三維模型比例尺的比例變換得出植物葉片面積的計算值[17]。
試驗數(shù)據(jù)的硬件處理平臺:CPU為Intel Core i7-11800H,主頻2.3 GHz;T600 4G獨立顯卡;512 GB 固態(tài)硬盤。軟件包括KinectV2 SDK、Opencv3.4、PCL1.8,在 Visual Studio 2017軟件平臺下編程實現(xiàn)。
對于植株點云數(shù)據(jù)缺失的問題,采用多幀融合的方法對點云數(shù)據(jù)進(jìn)行補充,雖然可以取得很好的效果,但與此同時,噪聲點也會隨之累積,融合后再進(jìn)行噪聲點的濾除會產(chǎn)生嚴(yán)重的影響,導(dǎo)致將噪聲點錯誤地判定為非噪聲點而難以去除,且對于各種濾波算法中閾值的調(diào)整會產(chǎn)生較大的影響,從而增大試驗的復(fù)雜度,當(dāng)加強(qiáng)去噪強(qiáng)度時,甚至?xí)⒅仓甑木植刻卣餍畔⒁徊V除。分別采取先濾除噪聲點再多幀融合和先多幀融合再去除噪聲點2種方法進(jìn)行試驗(圖3),從圖3可以清晰地觀察到,先對噪聲點進(jìn)行濾除的方法比先多幀融合再進(jìn)行噪聲點濾除所獲得的點云數(shù)據(jù)呈現(xiàn)出更好的效果,有利于后續(xù)對于不同角度的點云數(shù)據(jù)的配準(zhǔn)。
原始點云總數(shù)217 788(圖4-a)。采用待測目標(biāo)點云和背景點云相減,得到只含有目標(biāo)植株點云,點云數(shù)為16 621(圖4-b)。采用基于搜索半徑(r=0.008 m)和鄰域內(nèi)所包點云數(shù)(s=50)相結(jié)合的方法去除離群點,點云數(shù)為15 772(圖4-c)。結(jié)果表明,通過本研究方法經(jīng)過去噪處理后,植株點云更加平滑,噪聲明顯減少。
對16個角度點云進(jìn)行上述去噪后,需要進(jìn)行配準(zhǔn)。選擇FPFH局部特征,對噪聲點去除后的點云進(jìn)行初始配準(zhǔn),利用k-d tree的加速對源點云和目標(biāo)點云ICP精確配準(zhǔn),計算出待配準(zhǔn)點云數(shù)據(jù)之間的變換矩陣,得到配準(zhǔn)后點云,經(jīng)過點云精簡后點云數(shù)為14 544,圖5-a、圖5-b為2個不同角度的配準(zhǔn)結(jié)果。采用歐氏聚類對植株點云進(jìn)行分割,圖5-c為選擇半徑r=0.012 m,只將葉片和花盆分開;圖5-d選擇半徑r=0.008 m,可以較好地分割出植株葉片。
結(jié)合圖6各葉片分割結(jié)果和表1各點云數(shù)量統(tǒng)計分析,分割前點云14 544,分割后點云累計 14 514,相差30個,這30個點云在歐氏聚類選擇半徑r=0.008 m時沒有合適的聚類,但只占總數(shù)的0.2%,說明該方法可以較好地分割植株葉片。
表1 植株葉片分割結(jié)果的點云數(shù)量統(tǒng)計
采用滾球算法對分割出來的葉片進(jìn)行三維重建,重建結(jié)果見圖7。
為了評估試驗結(jié)果的準(zhǔn)確性,以相對精確的坐標(biāo)紙法作為標(biāo)準(zhǔn)測量方法,與本研究方法進(jìn)行比較,測量的葉片面積見表2。本研究方法測量的葉片面積比實際面積要大,主要在于葉片鋸齒狀邊緣在三維重建時, 形成光滑邊緣。測量葉片1面積誤差3.45%,葉片2誤差0.46%,葉片3誤差3.72%,誤差平均百分比為2.54%,試驗結(jié)果表明,本研究無損測量葉片面積的方法是可靠的。
表2 葉片面積測量結(jié)果比較
采用低成本Kinect v2深度相機(jī)獲取植株三維點云數(shù)據(jù);通過背景去除、離群點去除,實現(xiàn)點云預(yù)處理; 對16個角度點云實現(xiàn)點云配準(zhǔn), 通過歐氏聚類分割出植株葉片;最后重建植株葉片表面網(wǎng)格模型。
計算網(wǎng)格面積求得葉片面積,相比坐標(biāo)紙法,本研究方法測量面積誤差平均為2.54%,本研究方法成本低精確度高,對葉片面積適應(yīng)范圍大,可以推廣應(yīng)用于其他植物葉片參數(shù)的活體無損測量。