楊眉,魏鴻磊,華順剛
(1.大連海洋大學(xué) 漁業(yè)工程技術(shù)研究所,遼寧 大連116023;2.大連理工大學(xué) 機(jī)械工程學(xué)院,遼寧 大連116024)
扇貝是一種養(yǎng)殖規(guī)模較大的重要經(jīng)濟(jì)貝類,在生產(chǎn)和銷售過程中需要按品質(zhì)進(jìn)行分選。目前,分選工作主要由人工完成,工作環(huán)境惡劣、勞動(dòng)強(qiáng)度高、分選效率低[1],也有部分企業(yè)采用滾筒篩結(jié)構(gòu)的分選設(shè)備,但在分選過程中易造成扇貝因殼體互插而死亡,損耗量很大。采用計(jì)算機(jī)視覺輔助下的機(jī)器人自動(dòng)分揀,具有損耗小、效率高的優(yōu)點(diǎn),是實(shí)現(xiàn)扇貝自動(dòng)分揀的可行方向[2]?;跈C(jī)器視覺技術(shù)可排除雜物干擾,實(shí)現(xiàn)對(duì)扇貝的準(zhǔn)確分級(jí)和定位,是采用計(jì)算機(jī)視覺機(jī)器人對(duì)扇貝進(jìn)行分選的基礎(chǔ)。
機(jī)器視覺技術(shù)已廣泛應(yīng)用于水產(chǎn)養(yǎng)殖領(lǐng)域。目前主要集中在對(duì)魚類的監(jiān)控領(lǐng)域:張志強(qiáng)等[3]根據(jù)圖像顏色特征值、魚體的各部分比例值和魚體長(zhǎng)度等信息可識(shí)別4種魚類;湯一平等[4]根據(jù)魚類游動(dòng)區(qū)域的大小來監(jiān)測(cè)水質(zhì);王文靜等[5]利用圖像處理技術(shù)測(cè)量圖像中魚的面積,估計(jì)魚質(zhì)量;徐建瑜等[6-7]在不同濃度氨應(yīng)激條件下研究了羅非魚的行為并建立了不同環(huán)境下魚體色明暗程度量化視覺系統(tǒng);王穎等[8]通過模板匹配實(shí)現(xiàn)了對(duì)魚類的識(shí)別。在其他海洋生物的研究中機(jī)器視覺也有較多應(yīng)用:郭顯久等[9]根據(jù)形態(tài)學(xué)的開運(yùn)算實(shí)現(xiàn)了海洋微藻數(shù)量的自動(dòng)統(tǒng)計(jì);馬先英等[10]利用圖像識(shí)別技術(shù)設(shè)計(jì)了一套海參自動(dòng)分級(jí)與計(jì)數(shù)系統(tǒng)。機(jī)器視覺在貝類的分析和識(shí)別中也有報(bào)道,郭常有等[2]應(yīng)用圖像處理技術(shù)根據(jù)扇貝所占面積的大小實(shí)現(xiàn)扇貝尺寸的估計(jì)和定位,但該方法較簡(jiǎn)單,不適用于存在雜物干擾等復(fù)雜情況下扇貝的識(shí)別、分級(jí)和定位。
在目標(biāo)識(shí)別方面,應(yīng)用較廣泛的是圖像的HU不變矩[11]分類特征,可以排除物體移動(dòng)、旋轉(zhuǎn)和縮放的干擾,但圖像不變矩特征的計(jì)算量較大,圖像處理速度慢,影響機(jī)器視覺應(yīng)用的實(shí)時(shí)性要求。本研究中,通過對(duì)包含復(fù)雜背景視頻的扇貝圖像提取扇貝平均半徑和絕對(duì)平均誤差為分類特征,并利用神經(jīng)網(wǎng)絡(luò)的優(yōu)良性能對(duì)扇貝進(jìn)行識(shí)別和分級(jí)。實(shí)驗(yàn)證明,本方法具有計(jì)算量小、精度高的優(yōu)點(diǎn)。
如何提取待識(shí)別對(duì)象的特征是目標(biāo)識(shí)別問題的關(guān)鍵。實(shí)驗(yàn)發(fā)現(xiàn),扇貝圖像的RGB 特征與石塊等干擾物差別不大,其灰度圖的像素值與干擾物無明顯差別,但形狀有明顯差別,因此,本研究中提取目標(biāo)物的輪廓邊界,從輪廓邊界中提取分類特征。
由于RGB圖像包含顏色因子,實(shí)際提取特征過程較為復(fù)雜。為減小計(jì)算量和存儲(chǔ)量,將RGB圖像轉(zhuǎn)換為灰度圖像,并采用canny 算子提取圖像中目標(biāo)物的邊緣。應(yīng)用canny 算子提取灰度圖像邊緣的原理是通過計(jì)算圖像的梯度直方圖,并將像素點(diǎn)個(gè)數(shù)沿梯度遞增方向累計(jì),將累積和為總個(gè)數(shù)80%處的梯度值設(shè)為高閾值th,高閾值的40%梯度值設(shè)為低閾值tl,將梯度直方圖中梯度大于高閾值th的點(diǎn)標(biāo)記為邊緣點(diǎn),梯度值小于低閾值tl的點(diǎn)視為背景點(diǎn),梯度值介于tl和th的點(diǎn),若其8-連通鄰域中存在已經(jīng)標(biāo)記的邊緣點(diǎn),記為邊緣點(diǎn),否則視為背景點(diǎn)。結(jié)果發(fā)現(xiàn),利用自動(dòng)選取的閾值使得噪聲邊界過多,為在保留有效邊界的同時(shí)減少噪聲,將高閾值設(shè)定為0.4,低閾值設(shè)定為0.1,提取效果較理想,提取結(jié)果如圖1所示。
圖1 自動(dòng)提取及調(diào)整閾值后提取邊界線的對(duì)比圖Fig.1 Comparative images of boundary line extracted by automatically and the adjusted threshold
用8-連通鄰域追蹤算法搜索邊界線中的連續(xù)點(diǎn),并檢查邊界線的像素?cái)?shù)量,將像素?cái)?shù)量小于200 的曲線視為噪聲加以刪除,從而提取出可能的扇貝邊緣線進(jìn)行識(shí)別,以減少計(jì)算量。對(duì)檢測(cè)到的每一條輪廓線分別按如下步驟提取特征。
(1)找出曲線上所有邊界點(diǎn)的中心坐標(biāo):
(2)求出曲線上所有點(diǎn)到中心點(diǎn)的平均距離D:
(3)對(duì)每個(gè)待測(cè)目標(biāo)計(jì)算平均距離D 的絕對(duì)平均誤差k:
部分扇貝和邊界圖像如圖2所示,對(duì)應(yīng)的平均邊界距離及其絕對(duì)平均誤差和提取數(shù)據(jù)耗時(shí)如表1所示。
圖2 扇貝及其輪廓圖Fig.2 Images and contours of a scallop
神經(jīng)網(wǎng)絡(luò)(Back propagation network,BP)簡(jiǎn)稱BP 網(wǎng)絡(luò),廣泛應(yīng)用于非線性建模、函數(shù)逼近、模式分類、數(shù)據(jù)壓縮等方面,能學(xué)習(xí)和存貯大量的輸入輸出模式映射關(guān)系。BP 網(wǎng)絡(luò)的基本思想是梯度下降法,采用梯度搜索技術(shù),使網(wǎng)絡(luò)的實(shí)際輸出值與期望輸出值的誤差均方值為最小。
BP是一種多層網(wǎng)絡(luò),它包括輸入層(input)、隱層(hide layer)和輸出層(output layer)。BP 網(wǎng)絡(luò)的學(xué)習(xí)算法由信息的正向傳播和誤差的反向傳播兩部分組成,輸入層各神經(jīng)元從外界接收輸入信息,并傳遞給隱層各神經(jīng)元,經(jīng)隱層信息處理和變換后,傳遞給輸出層輸出結(jié)果,即為一次完整的信息正向傳播,如圖3所示。每層神經(jīng)元(節(jié)點(diǎn))的狀態(tài)只影響下一層神經(jīng)元的狀態(tài),為滿足信息變換能力的需求,隱層可設(shè)計(jì)為單層或者多層的結(jié)構(gòu)。如果在輸出層不能得到期望的輸出,則轉(zhuǎn)至反向傳播。將誤差信號(hào)(理想輸出與實(shí)際輸出之差)按連接通路反向計(jì)算,按照特定的誤差梯度下降法調(diào)整各層神經(jīng)元權(quán)值,使誤差信號(hào)減小,直至達(dá)到預(yù)先設(shè)定的程度或次數(shù)。
表1 樣本的特征值Tab.1 Feature values of scallop samples
圖3 BP 人工神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.3 The diagram of BP artificial neural network
采用三層結(jié)構(gòu),輸入層為2 個(gè)神經(jīng)元,中間層為10 個(gè)神經(jīng)元,輸出層為1 個(gè)神經(jīng)元。輸入層到隱含層的傳遞函數(shù)為雙曲正切函數(shù):
隱含層到輸出層的傳遞函數(shù)設(shè)為線性函數(shù):
雙曲正切激活函數(shù)將范圍為(-∞,+∞)的輸入映射為范圍為(-1,+1)的隱含層輸出。線性激活函數(shù)把輸出層的輸入直接輸出。利用Levenberg-Marquardt 算法對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。
BP 網(wǎng)絡(luò)學(xué)習(xí)算法與計(jì)算步驟如下:
(1)初始化。置所有的加權(quán)系數(shù)為最小的隨機(jī)數(shù)。
(2)提供訓(xùn)練集。給出順序賦值的輸入向量x1,x2,…,xN和期望的輸出向量t1,t2,…,tN。
(3)計(jì)算實(shí)際輸出。計(jì)算隱含層、輸出層各神經(jīng)元的輸出。
(4)按下式計(jì)算期望輸出與實(shí)際輸出的誤差,即
(5)調(diào)整輸出層的加權(quán)系數(shù)wki,即
(6)調(diào)整隱含層的加權(quán)系數(shù)wij,即
(7)返回計(jì)算(3)步,直到誤差滿足要求為止。
用圖2所示的8 個(gè)扇貝圖像和8 個(gè)石塊組成訓(xùn)練集,共16 個(gè)訓(xùn)練樣本。用平均距離D 值和絕對(duì)平均誤差k 值作為神經(jīng)網(wǎng)絡(luò)輸入,對(duì)于石塊的期望輸出設(shè)定為0,較小扇貝期望輸出設(shè)定為1,中等大小扇貝期望輸出設(shè)定為2,較大扇貝期望輸出設(shè)定為3。
將訓(xùn)練樣本送入設(shè)置好的BP 網(wǎng)絡(luò)中進(jìn)行訓(xùn)練學(xué)習(xí),經(jīng)過10次訓(xùn)練就達(dá)到了0.0001 的誤差要求。訓(xùn)練過程如圖4所示。
為測(cè)試網(wǎng)絡(luò)的性能,分別進(jìn)行了兩組實(shí)驗(yàn)。實(shí)驗(yàn)1:用大量實(shí)際捕撈出的扇貝和石塊圖像依本研究提出的特征提取方法對(duì)網(wǎng)絡(luò)進(jìn)行測(cè)試,并依據(jù)對(duì)輸出結(jié)果進(jìn)行四舍五入得到的整數(shù)進(jìn)行判別。部分測(cè)試圖像如圖5所示,提取數(shù)據(jù)和耗時(shí)如表2所示。為證明本研究中提取特征的有效性,將其與HU 不變矩特征方法做對(duì)比。提取圖像以HU不變矩作為神經(jīng)網(wǎng)絡(luò)的輸入值,用同樣的方法訓(xùn)練網(wǎng)絡(luò),再次對(duì)上述樣本進(jìn)行識(shí)別,提取的特征值和計(jì)算耗時(shí)如表3所示。將依據(jù)兩種特征提取方法訓(xùn)練網(wǎng)絡(luò)的識(shí)別結(jié)果及實(shí)際判斷結(jié)果進(jìn)行對(duì)比,結(jié)果如表4所示。
圖4 神經(jīng)網(wǎng)絡(luò)訓(xùn)練誤差曲線Fig.4 The error curve of BP artificial neural network training
圖5 實(shí)驗(yàn)1 部分測(cè)試圖像Fig.5 Some of the test images in experiment 1
對(duì)比實(shí)驗(yàn)結(jié)果表明,兩種特征提取方法在實(shí)驗(yàn)結(jié)果上差異不大,對(duì)以上測(cè)試圖的識(shí)別準(zhǔn)確率均達(dá)到了100%。但從表2和表3可見,應(yīng)用本研究中的方法提取特征顯著減少了計(jì)算時(shí)間,僅為用HU不變矩法提取特征耗時(shí)的20%,滿足實(shí)際應(yīng)用的要求。
表2 用本研究方法提取特征值Tab.2 The extracted characteristic values of this text
表3 用HU 不變矩法提取特征值Tab.3 The characteristic values of HU invariant moments
實(shí)驗(yàn)2:將包含多個(gè)目標(biāo)物的復(fù)雜圖像,采用canny 算子提取目標(biāo)物的邊緣,并用8-連通鄰域追蹤算法搜索邊界線,并將每一條閉合曲線分別標(biāo)號(hào),其中包括了物體實(shí)際輪廓和噪聲產(chǎn)生的輪廓線。計(jì)算得出這些目標(biāo)物的D和k,并輸入網(wǎng)絡(luò)進(jìn)行識(shí)別分類,將識(shí)別出的扇貝在其灰度圖上標(biāo)出。經(jīng)過大量實(shí)驗(yàn)證明,神經(jīng)網(wǎng)絡(luò)分類器可實(shí)現(xiàn)各種復(fù)雜情況下扇貝的正確分類,部分結(jié)果如圖6所示。
以上實(shí)驗(yàn)結(jié)果表明,本研究中提出的特征提取方法及神經(jīng)網(wǎng)絡(luò)分類器可以準(zhǔn)確實(shí)現(xiàn)對(duì)扇貝的識(shí)別與分級(jí),且實(shí)時(shí)性效果良好,滿足實(shí)際應(yīng)用要求。
為實(shí)現(xiàn)機(jī)器視覺技術(shù)在扇貝分選實(shí)際生產(chǎn)中的應(yīng)用,本研究中以提取目標(biāo)物邊界到中心點(diǎn)的平均距離和距離的絕對(duì)平均誤差作為特征信息,訓(xùn)練BP 網(wǎng)絡(luò),從而實(shí)現(xiàn)對(duì)扇貝圖像自動(dòng)識(shí)別和分級(jí)。實(shí)驗(yàn)結(jié)果表明,該方法具有計(jì)算量小、精度高的優(yōu)點(diǎn)。下一步將研究更魯棒的分類特征,以適應(yīng)實(shí)際生產(chǎn)環(huán)境下經(jīng)常發(fā)生的較大畸變或相互遮擋等情況下的正確識(shí)別和分類。
表4 神經(jīng)網(wǎng)絡(luò)識(shí)別結(jié)果比較Tab.4 Comparison of neural network recognition
圖6 實(shí)驗(yàn)2 中的部分測(cè)試圖像Fig.6 Some of the test images in experiment 2
[1]徐皓,張建化.我國(guó)水產(chǎn)養(yǎng)殖工程學(xué)科發(fā)展報(bào)告[J].漁業(yè)現(xiàn)代化,2009,36(3):1-6.
[2]郭常有,曹廣斌,韓世成,等.基于圖像處理技術(shù)的扇貝尺寸及位置自動(dòng)識(shí)別[J].大連海洋大學(xué)學(xué)報(bào),2012,27(6):578-582.
[3]張志強(qiáng),牛智有,趙思明.基于機(jī)器視覺技術(shù)的淡水魚品種識(shí)別[J].農(nóng)業(yè)工程學(xué)報(bào),2011,27(11):388-392.
[4]湯一平,尤思思,葉永杰,等.基于機(jī)器視覺的生物式水質(zhì)監(jiān)測(cè)儀的開發(fā)[J].工業(yè)控制計(jì)算機(jī),2006,19(6):64-66.
[5]王文靜,徐建瑜,呂志敏,等.基于機(jī)器視覺的水下鲆鰈魚類質(zhì)量估計(jì)[J].農(nóng)業(yè)工程學(xué)報(bào),2012,28(16):153-157.
[6]徐建瑜,姜雄暉,劉鷹.基于計(jì)算機(jī)視覺的魚體色明暗程度量化方法[J].農(nóng)機(jī)化研究,2006(6):140-142.
[7]徐建瑜,劉鷹,崔紹榮,等.計(jì)算機(jī)視覺技術(shù)在魚類應(yīng)激狀態(tài)監(jiān)測(cè)中的應(yīng)用研究[J].漁業(yè)現(xiàn)代化,2008,35(3):15-18.
[8]王穎,張旗,趙國(guó)庫,等.基于形變校正的形狀識(shí)別方法[J].計(jì)算機(jī)工程與設(shè)計(jì),2011,32(11):3789-3792.
[9]郭顯久,張國(guó)勝,耿春云.基于圖像處理技術(shù)的海洋微藻數(shù)量統(tǒng)計(jì)方法[J].大連海洋大學(xué)學(xué)報(bào),2012,27(4):368-372.
[10]馬先英,李明,熊文超,等.基于圖像識(shí)別技術(shù)的海參分級(jí)與計(jì)數(shù)設(shè)備的設(shè)計(jì)[J].大連水產(chǎn)學(xué)院學(xué)報(bào),2009,24(6):549-552.
[11]許紅平.基于不變矩理論的字符串圖像識(shí)別方法研究[J].浙江工業(yè)大學(xué)學(xué)報(bào),2007,35(2):210-213.