張潤(rùn)芝 張 曉 吳 剛
(塔里木大學(xué)信息工程學(xué)院,新疆 阿拉爾 843300)
隨著新疆庫(kù)爾勒香梨知名度的提高,產(chǎn)業(yè)不斷擴(kuò)大,對(duì)香梨采后包裝、深加工的技術(shù)與設(shè)備提出了新要求[1-2]。香梨包裝銷(xiāo)售與深加工中的一個(gè)重要環(huán)節(jié)是香梨分級(jí),該環(huán)節(jié)可使香梨分級(jí)定價(jià)銷(xiāo)售,提高香梨的經(jīng)濟(jì)價(jià)值[3]。重量是庫(kù)爾勒香梨采后分級(jí)的重要標(biāo)準(zhǔn)之一,眾多學(xué)者[4-8]研究了不同結(jié)構(gòu)與方法的機(jī)械稱(chēng)重式分級(jí)機(jī),降低了人工成本、提高了分級(jí)效率。阿克蘇紅旗坡的農(nóng)場(chǎng)也引進(jìn)了果品自動(dòng)稱(chēng)重分級(jí)流水線(xiàn),但因稱(chēng)重時(shí)頻繁碰撞果損率過(guò)高[9]。
因果蔬的體尺參數(shù)與其重量有一定的關(guān)系,國(guó)外有研究[10-14]通過(guò)蘋(píng)果、獼猴桃、杏子、櫻桃等果實(shí)的體尺參數(shù)建模來(lái)估計(jì)其重量。國(guó)內(nèi)有研究[9,15]通過(guò)機(jī)器視覺(jué)獲取香梨、蘋(píng)果的幾何外形特征預(yù)測(cè)果實(shí)的重量。通過(guò)機(jī)器視覺(jué)非接觸式測(cè)量果實(shí)的體尺參數(shù)預(yù)測(cè)果實(shí)重量并分級(jí)可有效降低機(jī)械分級(jí)果損率過(guò)高的問(wèn)題,但二維圖片只能提供果實(shí)的二維信息,構(gòu)建果實(shí)重量預(yù)測(cè)模型的精度不高。
陳炳舟等[16-17]運(yùn)用超聲波傳感器陣列及雙目攝像頭獲取被測(cè)物點(diǎn)云數(shù)據(jù)并擬合表面模型計(jì)算體尺參數(shù)。RGB-D相機(jī)也可獲取被測(cè)物點(diǎn)云數(shù)據(jù),常用的RGB-D相機(jī)有微軟推出的Kinect系列;通過(guò)采集被測(cè)物的彩色和深度圖像生成點(diǎn)云數(shù)據(jù),其深度圖像通過(guò)ToF(渡越時(shí)間)法獲取,不易受外界環(huán)境光變化影響,被廣泛應(yīng)用于三維重建領(lǐng)域[18]。研究擬選取Kinect DK相機(jī)搭建香梨圖像采集裝置;通過(guò)RGB圖像和深度圖提取香梨的點(diǎn)云,對(duì)香梨點(diǎn)云進(jìn)行預(yù)處理,去除噪聲、空間坐標(biāo)校正、分離香梨點(diǎn)云與背景點(diǎn)云;最后通過(guò)插值法計(jì)算香梨表面模型,計(jì)算其長(zhǎng)、寬、高與體積并通過(guò)體積預(yù)測(cè)香梨重量,以期為香梨分級(jí)裝置的開(kāi)發(fā)提供依據(jù)。
Kinect相機(jī)拍攝香梨經(jīng)RGB圖像與深度圖像對(duì)齊后生成原始三維點(diǎn)云,包含冗余背景點(diǎn)和噪聲點(diǎn),且點(diǎn)云可視化后呈倒立傾斜的像,故需對(duì)原始點(diǎn)云進(jìn)行濾波、坐標(biāo)變換、背景去除等預(yù)處理工作,得到正立豎直香梨點(diǎn)云。
由圖1可知,預(yù)處理不但可去除大量冗余和錯(cuò)誤點(diǎn)云,而且方便后續(xù)計(jì)算體尺參數(shù)。
圖1 點(diǎn)云預(yù)處理流程圖
li=
(1)
(2)
(3)
1.1.2 點(diǎn)云的坐標(biāo)變換與校正 初始點(diǎn)云數(shù)據(jù)以Kinect相機(jī)鏡頭為坐標(biāo)原點(diǎn)計(jì)算坐標(biāo),試驗(yàn)時(shí)Kinect相機(jī)不是絕對(duì)平行于地面,故被測(cè)物在原始坐標(biāo)系下的點(diǎn)云是倒立傾斜的。為方便后續(xù)計(jì)算被測(cè)物體尺參數(shù),需將被測(cè)物點(diǎn)云豎直,故提出一種坐標(biāo)變換的方法。
(4)
(ux,uy,uz),
(5)
(6)
(7)
(8)
運(yùn)用Ransac算法再次擬合平面,找出x=0、y=0時(shí)z的坐標(biāo)值z(mì)0,將每一個(gè)點(diǎn)云的z坐標(biāo)值減去z0,使點(diǎn)云背景平面與z=0的平面重合,完成坐標(biāo)校正。
1.1.3 背景濾除 Ransac算法擬合平面時(shí),擬合平面點(diǎn)云作為內(nèi)點(diǎn),除擬合平面外的點(diǎn)作為外點(diǎn)。處理后,點(diǎn)云中只包含背景平面和香梨表面,故提取外點(diǎn)即可得到僅包含香梨的點(diǎn)云。
經(jīng)點(diǎn)云預(yù)處理后,輸出香梨點(diǎn)云如圖2所示,需將其插值構(gòu)成香梨表面模型后計(jì)算其體尺參數(shù)。一部分香梨(宿萼果)尾端會(huì)有突起,針對(duì)突變點(diǎn)云,在插值時(shí)選用基于網(wǎng)格的自然鄰點(diǎn)插值法,可更好地?cái)M合真實(shí)香梨表面,使后續(xù)計(jì)算更精準(zhǔn)。具體過(guò)程:首先檢測(cè)全部香梨點(diǎn)云,找出X軸、Y軸的最大值與最小值,分別將X軸、Y軸最大值與最小值間的距離等分為n份,構(gòu)成一個(gè)n×n的網(wǎng)格;然后用z=f(x,y)形式的曲面與香梨點(diǎn)云數(shù)據(jù)擬合,擬合曲面始終經(jīng)過(guò)香梨點(diǎn)云,在網(wǎng)格點(diǎn)(xi,yj)進(jìn)行曲面插值計(jì)算出zk;最后通過(guò)網(wǎng)格點(diǎn)構(gòu)建網(wǎng)格圖,網(wǎng)格圖為三維曲面,網(wǎng)格曲面無(wú)顏色,網(wǎng)格邊有顏色其顏色因zi值而定。
圖2 香梨表面模型構(gòu)建圖
(9)
(10)
zk=f(xi,yj),k=0,1,…,n2。
(11)
將香梨模型最大橫截面矩形的長(zhǎng)記為香梨的長(zhǎng),最大橫截面矩形的寬記為香梨的寬,香梨模型的最高值記為高。
通過(guò)自然鄰點(diǎn)插值后,香梨由n2個(gè)六面體構(gòu)成,所有六面體體積之和即為香梨體積V。隨著網(wǎng)格數(shù)目逐漸增多,六面體個(gè)數(shù)增加,體積計(jì)算越精確,但網(wǎng)格數(shù)越多,插值算法的計(jì)算速度越慢。兼顧精度與速度,n取1 000。體積計(jì)算示意圖如圖3所示,為方便示意圖展示體積計(jì)算原理,示意圖中n取30。六面體為香梨網(wǎng)格模型中任取的最小網(wǎng)格單位,將其近似看作長(zhǎng)方體,故香梨體積為所有長(zhǎng)方體的體積之和。為方便編寫(xiě)體積計(jì)算算法,將每個(gè)網(wǎng)格點(diǎn)的Z坐標(biāo)值視為長(zhǎng)方體的高,長(zhǎng)方體的底面積S與香梨點(diǎn)云X軸、Y軸的最大值和最小值與n有關(guān),若n確定,則底面積確定且唯一,體積的計(jì)算式可表示為:
圖3 體積計(jì)算示意圖
(12)
(13)
同品種的成熟香梨含水量大致相同,可以通過(guò)測(cè)量香梨的體積V與重量M計(jì)算出香梨密度ρ。隨機(jī)選取10個(gè)香梨作為樣本,通過(guò)高精度電子秤測(cè)量其重量,通過(guò)排水法測(cè)量其體積,計(jì)算得平均密度為0.997 g/cm3,標(biāo)準(zhǔn)差為0.012 7,說(shuō)明樣本香梨密度偏差不大,可以用香梨樣本平均密度0.997 g/cm3表示香梨密度。按式(14)預(yù)測(cè)香梨重量。
M=ρ×V。
(14)
于2022年10月1日購(gòu)買(mǎi)70個(gè)庫(kù)爾勒香梨,采用排水法測(cè)量香梨的體積,使用游標(biāo)卡尺測(cè)量香梨的長(zhǎng)、寬、高,并使用電子秤測(cè)量香梨重量。
利用Kinect相機(jī)設(shè)計(jì)試驗(yàn)平臺(tái),其深度相機(jī)工作在NFOV(窄視場(chǎng))非裝箱模式下,分辨率為640×576,工作區(qū)間為0.50~3.86 m;彩色相機(jī)分辨率為4 096×3 072。采用銳能牌數(shù)顯游標(biāo)卡尺(精度0.1 mm,誤差±0.2 mm);量程為1 000 mL的量筒(精度為10 mL);記號(hào)筆;精度為1 g的電子秤。
使用Matlab驅(qū)動(dòng)Kinect相機(jī)采集圖像,相機(jī)由支架固定豎直朝下,相機(jī)鏡頭距地面500 mm。為減少干擾,在鏡頭下方放置一半徑為150 mm的白色圓形底板,采集圖像時(shí),將香梨樣本臥倒放置于底板內(nèi),然后激活上位機(jī)采集圖像,將生成的點(diǎn)云保存為pcd格式。采用自主編寫(xiě)的上位機(jī)程序處理點(diǎn)云數(shù)據(jù),生成香梨表面模型,最終計(jì)算出香梨的體尺參數(shù)及重量。
采用排水法測(cè)量香梨體積,使用游標(biāo)卡尺測(cè)量香梨的長(zhǎng)、寬與高,每個(gè)樣本重復(fù)測(cè)量3次取平均值,將排水法及游標(biāo)卡尺測(cè)得的值看作真實(shí)值。采用Kinect分別對(duì)25個(gè)香梨樣本拍照,經(jīng)預(yù)處理及插值建模后計(jì)算其體尺參數(shù)(見(jiàn)表1)。由表1可知,長(zhǎng)、寬、高、體積測(cè)量值與真實(shí)值的誤差較大,無(wú)法用于分級(jí)。長(zhǎng)、寬測(cè)量誤差分析是因?yàn)閠of(渡越時(shí)間)獲取深度圖技術(shù)本身邊緣精度低,如圖4所示,Kinect獲取的香梨邊緣點(diǎn)云坐標(biāo)不準(zhǔn)確,與真實(shí)香梨相差較大,故點(diǎn)云預(yù)處理時(shí)將邊緣點(diǎn)云濾除,因此長(zhǎng)、寬的測(cè)量值偏小;高度誤差產(chǎn)生的原因是Kinect不是絕對(duì)垂直于地面,高的測(cè)量值是果實(shí)表面最高點(diǎn)在地面的投影到Kinect的距離Z2減去果實(shí)表面最高點(diǎn)到Kinect的距離Z1,而果實(shí)高的真實(shí)值是果實(shí)表面最高點(diǎn)到地面的投影距離,故高的測(cè)量值總是小于真實(shí)值;香梨體積是由香梨點(diǎn)云插值建模得到的,香梨點(diǎn)云的長(zhǎng)、寬、高均偏小,因此體積也偏小。其中,長(zhǎng)、寬、高的平均誤差分別為11.62,12.41,13.54 mm,體積的平均誤差為60.51 cm3。
表1 香梨體尺參數(shù)測(cè)量值與真實(shí)值對(duì)比
圖4 香梨邊緣點(diǎn)云濾除圖
香梨長(zhǎng)、寬、高、體積檢測(cè)結(jié)果的精度為長(zhǎng)>寬>高>體積,是因?yàn)橄憷婀麑?shí)的長(zhǎng)比寬大,所選25個(gè)香梨果實(shí)長(zhǎng)的平均值為76.6 mm,寬的平均值為61.4 mm。香梨寬度在梯度變化上比長(zhǎng)度變化明顯,因此在獲取香梨果實(shí)RGB圖像時(shí),寬度方向上信息缺失比長(zhǎng)度方向上多。雖然長(zhǎng)、寬檢測(cè)原理相同,但是寬度的檢測(cè)結(jié)果相對(duì)較差。體積估算值誤差包含了長(zhǎng)、寬、高的誤差,故體積檢測(cè)的誤差最大。長(zhǎng)、寬、高、體積的測(cè)量誤差都具有單向性,系統(tǒng)誤差起主導(dǎo)作用,因此通過(guò)誤差修正,減少系統(tǒng)誤差,使測(cè)量值更精確。
表2 誤差補(bǔ)償后香梨體尺參數(shù)對(duì)比分析
由表2可知,經(jīng)補(bǔ)償后,25個(gè)香梨樣本體尺參數(shù)測(cè)量值誤差減小,長(zhǎng)、寬、高、體積的平均相對(duì)誤差分別為2.8%,1.9%,3.9%,2.8%。經(jīng)誤差修正后,各參數(shù)的測(cè)量誤差顯著降低,滿(mǎn)足實(shí)際生產(chǎn)需要。
選取10個(gè)新的香梨樣本,采用經(jīng)過(guò)誤差修正后的體尺參數(shù)測(cè)量方法在相同條件下測(cè)量其體積,再將體積代入式(14)計(jì)算出重量作為預(yù)測(cè)值;最后用電子秤測(cè)量其重量作為真實(shí)值,試驗(yàn)數(shù)據(jù)見(jiàn)表3。
表3 香梨重量預(yù)測(cè)值與真實(shí)值對(duì)比
由表3可知,樣本重量絕對(duì)誤差最大為4.3 g,最小為0.1 g,最大相對(duì)誤差為3.5%,平均相對(duì)誤差為1.96%。
搭建了簡(jiǎn)易試驗(yàn)平臺(tái),在距地面50 cm處對(duì)25個(gè)香梨樣本拍照,進(jìn)行體尺參數(shù)測(cè)量試驗(yàn),通過(guò)點(diǎn)云預(yù)處理獲得香梨表面的豎直點(diǎn)云;通過(guò)插值算法從離散點(diǎn)云中找到香梨曲面構(gòu)建出香梨模型;使用微元法的思想通過(guò)香梨模型計(jì)算出香梨體積,計(jì)算香梨各體尺參數(shù)的測(cè)量誤差;通過(guò)分析測(cè)量誤差找出誤差補(bǔ)償值后重新選取25個(gè)香梨樣本,重復(fù)上述步驟,計(jì)算經(jīng)過(guò)誤差補(bǔ)償后的各香梨體尺參數(shù)并計(jì)算測(cè)量誤差,經(jīng)分析得出,在距地面50 cm處采集圖像的前提下,香梨各體尺參數(shù)測(cè)量值的平均相對(duì)誤差均不超過(guò)5%,驗(yàn)證了Kinect相機(jī)測(cè)量體尺參數(shù)方法的可行性。選取10個(gè)新的香梨樣本進(jìn)行香梨重量預(yù)測(cè)試驗(yàn),結(jié)果顯示香梨重量的平均相對(duì)誤差為1.96%。后續(xù)可進(jìn)行大量實(shí)際測(cè)量構(gòu)建從體尺參數(shù)到重量的深度神經(jīng)網(wǎng)絡(luò)模型,與該方法進(jìn)行數(shù)據(jù)融合,進(jìn)一步降低誤差。