吳 錚, 吳曉柯, 徐愛俊, 陶忠良
(1.浙江農(nóng)林大學(xué)信息工程學(xué)院,浙江 杭州 311300;2.浙江省農(nóng)業(yè)農(nóng)村大數(shù)據(jù)發(fā)展中心,浙江 杭州 310020)
在森林資源調(diào)查中,立木胸徑是掌握森林生長(zhǎng)趨勢(shì)、評(píng)價(jià)立地條件的重要參數(shù)[1-2].立木胸徑的調(diào)查研究對(duì)林業(yè)科學(xué)經(jīng)營(yíng)、林業(yè)可持續(xù)發(fā)展有重要意義[3].立木胸徑測(cè)量工具多樣,傳統(tǒng)測(cè)量工具有卡尺、直徑卷尺等.這些工具效率低,并且耗費(fèi)人力物力.基于各類傳感器設(shè)計(jì)的立木胸徑測(cè)量工具[4-6]雖然具有數(shù)據(jù)自動(dòng)存儲(chǔ)、處理、上傳的優(yōu)點(diǎn),但是仍需接觸測(cè)量,且測(cè)量精度受操作方式的影響.
攝影測(cè)量技術(shù)在各領(lǐng)域的應(yīng)用不斷深入[7].當(dāng)前基于攝影測(cè)量技術(shù)的測(cè)量設(shè)備可以分為雙目、RGB-D相機(jī)、單目三類.文獻(xiàn)[8-10]利用雙目相機(jī)結(jié)合數(shù)字圖像處理分析立木胸徑、高度與冠幅.蔡健榮等[11]基于雙目視覺對(duì)果樹三維重建,通過各個(gè)模塊相組合形成果樹模型,從而獲取三維信息.文獻(xiàn)[12-13]利用雙目攝影系統(tǒng)結(jié)合圖像分割技術(shù)實(shí)現(xiàn)了果蔬的識(shí)別與定位.以上雙目攝影測(cè)量方法測(cè)量精度高,但運(yùn)算量大,需內(nèi)業(yè)處理數(shù)據(jù),無法實(shí)時(shí)測(cè)量.基于RGB-D相機(jī)的攝影測(cè)量方法與雙目測(cè)量相比無需深度解算,因而運(yùn)算速度快.文獻(xiàn)[14-15]使用RGB-D相機(jī)與圖像處理實(shí)現(xiàn)了幾種植物株高、莖粗的測(cè)量.徐勝勇等[16]使用RGB-D相機(jī)構(gòu)建油菜三維點(diǎn)云,利用歐氏聚類實(shí)現(xiàn)單個(gè)油菜角果定位.Digumarti et al[17]利用隨機(jī)森林算法實(shí)現(xiàn)了闊葉樹的結(jié)構(gòu)分割.范永祥等[18]基于RGBD-SLAM手持式設(shè)備,開發(fā)了森林樣地調(diào)查系統(tǒng).以上基于RGB-D相機(jī)的測(cè)量方法雖然運(yùn)算量小,但受光照影響大,成本高,不易攜帶.
基于單目相機(jī)的測(cè)量方法具有構(gòu)造簡(jiǎn)單、成本低的特點(diǎn),因此應(yīng)用廣泛[19].文獻(xiàn)[20-22]基于單目視覺通過數(shù)字圖像處理實(shí)現(xiàn)了果實(shí)的分割、定位與計(jì)數(shù).Chen et al[23]基于單目視覺與支持向量機(jī)算法實(shí)現(xiàn)在不同光照下柑橘樹的分割,這兩類方法的定位和分割精度較高,但圖像處理過程運(yùn)算量大,移動(dòng)端難以實(shí)現(xiàn).徐偉恒等[24]使用單目相機(jī)、激光尺、傾角傳感器等硬件結(jié)合圖像處理技術(shù)設(shè)計(jì)了近景攝影測(cè)樹儀,可實(shí)現(xiàn)立木胸徑的自動(dòng)化計(jì)算.周克瑜等[25]根據(jù)三角原理借助參照物比算,實(shí)現(xiàn)了立木樹高的測(cè)量.李亞東等[26]以智能手機(jī)為平臺(tái)開發(fā)了單株立木測(cè)高程序,相比于布魯萊斯測(cè)高器,其精度顯著提高.管昉立等[27]通過視覺顯著性圖分割立木圖像,利用最小外接矩形計(jì)算立木胸徑.高莉平等[28]采用閾值突變?nèi)c(diǎn)法獲取立木圖像感興趣區(qū)域,利用三角原理獲取立木高度.邱梓軒等[29]利用智能手機(jī)結(jié)合望遠(yuǎn)設(shè)備設(shè)計(jì)了望遠(yuǎn)測(cè)樹儀,實(shí)現(xiàn)了立木因子的測(cè)量.以上研究雖然能實(shí)現(xiàn)非接觸測(cè)量,但在測(cè)量立木時(shí)需要參照物或外部設(shè)備輔助測(cè)量,存在局限性.
本文基于色彩空間轉(zhuǎn)換優(yōu)化了濾波算法,縮短了圖像處理時(shí)間;基于攝影測(cè)量原理構(gòu)建立木胸徑測(cè)量模型,設(shè)計(jì)了立木胸徑測(cè)量系統(tǒng),旨在有效提高林業(yè)資源調(diào)查的效率.
系統(tǒng)主要包括基礎(chǔ)資源、圖像識(shí)別、測(cè)量模型、應(yīng)用交互4個(gè)模塊,具體架構(gòu)如圖1所示.基礎(chǔ)資源為其他模塊提供基本工具、算法以及數(shù)據(jù)庫(kù)存儲(chǔ);圖像識(shí)別模塊對(duì)立木圖像進(jìn)行處理,將前景提取結(jié)果輸入測(cè)量模型,進(jìn)而計(jì)算立木胸徑;應(yīng)用交互模塊控制用戶數(shù)據(jù)輸入并對(duì)測(cè)量結(jié)果進(jìn)行反饋及存儲(chǔ),在保證應(yīng)用交互的便捷性與數(shù)據(jù)處理的完整性的同時(shí),實(shí)現(xiàn)立木胸徑測(cè)量.該系統(tǒng)架構(gòu)保持各模塊高內(nèi)聚、低耦合,從而提高了系統(tǒng)靈活性與可擴(kuò)展性.
圖1 立木胸徑測(cè)量系統(tǒng)架構(gòu)Fig.1 Basic structure of DBH measurement system
立木圖像前景提取包括圖像畸變矯正、圖像濾波降噪與圖像分割.由于立木圖像背景復(fù)雜,并需保留邊緣信息,采用MeanShift算法[30]進(jìn)行濾波;濾波后采用GrabCut算法[31-32]進(jìn)行分割,進(jìn)而得到立木前景,為構(gòu)建測(cè)量模型提供數(shù)據(jù).由于MeanShift濾波算法存在耗時(shí)長(zhǎng)等問題,本文通過融合YCbCr色彩空間[33]對(duì)MeanShift算法進(jìn)行了改進(jìn),改進(jìn)的算法流程表示如下.
(1)將立木圖像的色彩空間轉(zhuǎn)換到Y(jié)CbCr色彩空間,轉(zhuǎn)換公式表示如下:
(1)
(2)分離立木圖像Y通道.
(3)以Y通道為濾波通道初始化卷積核窗口,計(jì)算并更新窗口內(nèi)小于指定閾值像素點(diǎn)的顏色與位置均值,以位置均值為中心繼續(xù)計(jì)算更新,直到收斂.
(4)合并Y通道與Cb、Cr通道為YCbCr色彩空間.
(5)將立木圖像轉(zhuǎn)換到RGB色彩空間,轉(zhuǎn)換公式表示如下:
(2)
1.3.1 深度提取模型 本文利用方向傳感器、三角原理構(gòu)建的深度提取模型如圖2所示.測(cè)量深度時(shí)調(diào)整相機(jī)觀測(cè)位置,確保與待測(cè)立木之間無異物遮擋,將相機(jī)對(duì)準(zhǔn)樹木根莖處,通過方向傳感器可獲得相機(jī)俯角,計(jì)算深度表示為:
(3)
[α2=90°、α1∈(0,90°)]
式中,Z為深度值(m);H為相機(jī)高度(m);α1為相機(jī)對(duì)準(zhǔn)樹底時(shí)的俯角(°);α2為直角.
圖2 深度提取模型Fig.2 Depth extraction model
用該模型測(cè)量深度時(shí)無需參照物,只需調(diào)整相機(jī)位置就能得到深度值,從而實(shí)現(xiàn)了深度的快速解算.
1為像素平面;2為物理成像平面;3為相機(jī);4為目標(biāo)立木;P、Q、R為立木特征點(diǎn);P′、Q′、R′為P、Q、R在像素平面上的投影; f為相機(jī)焦距.圖3 立木胸徑測(cè)量模型Fig.3 Measurement model of DBH of standing tree
1.3.2 立木胸徑測(cè)量模型 根據(jù)深度提取模型得到的深度值,結(jié)合小孔成像原理、三角原理構(gòu)建立木胸徑測(cè)量模型(圖3).
令R的坐標(biāo)為[X,Y,Z]T,R在相機(jī)物理成像平面上成的像為R′,其坐標(biāo)為[X′,Y′,Z]T.根據(jù)三角形的相似原理可知:
(4)
R′在像素平面上的坐標(biāo)為[u,v]T.R′在物理成像平面與像素平面之間可以通過平移與縮放進(jìn)行轉(zhuǎn)換,其映射關(guān)系為:
(5)
式中,α、β為縮放系數(shù),cx、cy為立木圖像中心點(diǎn)橫縱坐標(biāo).
將式(4)代入式(5),將αf合并為fx, 將βf合并為fy,得點(diǎn)R′的像素坐標(biāo)[u,v]T與相機(jī)坐標(biāo)系坐標(biāo)點(diǎn)[X,Y]T的映射關(guān)系為:
(6)
式中,fx、fy、cx、cy為相機(jī)標(biāo)定得到的相機(jī)內(nèi)參,fx、fy為焦距,cx、cy為圖像中心橫縱坐標(biāo);X、Y為u、v映射到相機(jī)坐標(biāo)系的橫縱坐標(biāo);Z為深度.
通過查詢立木圖像中的各個(gè)像素,確定R′的縱坐標(biāo)為v1,通過式(6)將v1映射到相機(jī)坐標(biāo)系,可得R的縱坐標(biāo)Y1為:
(7)
用Y1減去1.3 m,得到P、Q在相機(jī)坐標(biāo)系的縱坐標(biāo)Y2:
Y2=Y1-1.3
(8)
利用式(6)將計(jì)算得到的Y2重新映射到像素坐標(biāo)系,即可得到P′、Q′的縱坐標(biāo)(v2).
(9)
通過P′、Q′計(jì)算立木胸徑的像素寬度為|ulert-uright|.基于三角相似性原理可得立木胸徑(DBH)的計(jì)算公式:
(10)
式中,Z為深度,f為焦距.
本文利用圖像處理耗時(shí),對(duì)改進(jìn)的MeanShift算法進(jìn)行性能評(píng)價(jià).隨機(jī)抽取30張立木圖像,分為3組進(jìn)行試驗(yàn).相比于MeanShift原算法,本文改進(jìn)的MeanShift算法只需在YCbCr色彩空間上對(duì)單通道濾波,處理耗時(shí)較原算法降低了一個(gè)數(shù)量級(jí).原算法與改進(jìn)算法的每組平均濾波時(shí)間如表1所示.從表1可以看出,本文算法平均濾波時(shí)間為449.999 ms,低于原算法(4 859.156 ms),前景提取耗時(shí)減少不低于80%.因此本文改進(jìn)的算法更適用于移動(dòng)端立木圖像處理.
表1 立木圖像濾波時(shí)間Table 1 Filtering time of standing tree images
改進(jìn)后的MeanShift算法利用了YCbCr色彩空間亮度信號(hào)與色度信號(hào)的分離特性,在保留圖像邊緣信息、降低背景噪聲的同時(shí)大幅降低圖像處理耗時(shí),并減少了光照分布不均勻?qū)D像分割的影響,克服了GrabCut算法存在的問題,結(jié)果如圖4所示.
a.濾波處理結(jié)果;b.前景提取結(jié)果.圖4 立木圖像分割Fig.4 Tree image segmentation
在校園內(nèi)隨機(jī)選取10株立木進(jìn)行測(cè)量,并與文獻(xiàn)[29]中的測(cè)量數(shù)據(jù)進(jìn)行對(duì)比,結(jié)果如表2所示.從表2可以看出本文測(cè)量結(jié)果的相對(duì)誤差為0.61%~5.14%,平均相對(duì)誤差為2.35%.文獻(xiàn)[29]相對(duì)誤差為0.61%~14.78%,平均相對(duì)誤差為4.54%,表明本系統(tǒng)具有更好的穩(wěn)定性.
表2 立木胸徑測(cè)量結(jié)果Table 2 Measurement results of DBH of standing trees
系統(tǒng)開發(fā)硬件配置:AMD Ryzen 5 3500U CPU,2.10 GHz,Radeon Vega Mobile Gfx,20GBRAM.軟件環(huán)境:Android Studio 3.2+JDK8(Java development kit)+OpenCV 3.6+NDK(Native development kit).Android適配版本為6.0及以上,系統(tǒng)實(shí)現(xiàn)如圖5所示.
a.深度提??;b.立木胸徑測(cè)量.圖5 系統(tǒng)功能實(shí)現(xiàn)Fig.5 System function realization
本文采用張正友標(biāo)定法實(shí)現(xiàn)了智能手機(jī)相機(jī)自動(dòng)標(biāo)定功能,并利用標(biāo)定結(jié)果完成了立木圖像畸變的矯正,通過色彩空間轉(zhuǎn)換對(duì)圖像濾波算法進(jìn)行了改進(jìn),依據(jù)立木圖像前景提取結(jié)果與攝影測(cè)量原理構(gòu)建了立木胸徑測(cè)量模型和深度提取模型,設(shè)計(jì)并實(shí)現(xiàn)了基于Android平臺(tái)的立木胸徑測(cè)量系統(tǒng).
本研究結(jié)果表明:(1)本文改進(jìn)的MeanShift濾波算法較原算法耗時(shí)降低了一個(gè)數(shù)量級(jí),實(shí)現(xiàn)了移動(dòng)端對(duì)立木圖像的快速濾波處理.
(2)基于小孔成像與三角原理構(gòu)建了深度提取模型與立木胸徑測(cè)量模型.在無參照物與外部設(shè)備輔助下實(shí)現(xiàn)了立木胸徑非接觸測(cè)量,降低了試驗(yàn)難度,且操作更加便捷.
(3)系統(tǒng)對(duì)胸徑的測(cè)量誤差不超過6%,平均誤差為2.35%,可在一定程度上實(shí)現(xiàn)外業(yè)測(cè)量.