緱新科 常 英
(蘭州理工大學(xué)電氣工程與信息工程學(xué)院 蘭州 730050)
傳統(tǒng)的櫻桃番茄檢測方法主要是利用人工分級或者分級機(jī)械來完成。人工分級時,人的檢測和判斷會因疲勞、個人之間的判別差異等產(chǎn)生誤差和錯誤,不僅費時、效率低下,而且會影響分級質(zhì)量,具有很強(qiáng)的主觀性,從而難以保證出口番茄的質(zhì)量。采用分級機(jī)械的方法基本上都是通過設(shè)計專用機(jī)械結(jié)構(gòu)來檢測水果的大小和質(zhì)量,如通過孔洞的大小來評判水果大小屬于哪一等級,然而這些方法對水果的顏色、果面紋理和缺陷面積等均無法作出評價[1]。目前國內(nèi)外對于水果顏色、紋理等檢測在研究上已經(jīng)取得了很大進(jìn)展,有些技術(shù)在實際生產(chǎn)中得到了較好的應(yīng)用[2~3]。
利用機(jī)器視覺技術(shù)來進(jìn)行水果的在線分級檢測是實現(xiàn)水果自動化分級進(jìn)而商品化的重要環(huán)節(jié)[4]。但是,由于傳統(tǒng)的水果分級檢測大多數(shù)是在室內(nèi)環(huán)境中進(jìn)行的,這樣光線噪聲等因素就會嚴(yán)重影響著視覺檢測效果。所以,針對光線噪聲的影響問題在檢測過程當(dāng)中需要重點克服。目前,大多數(shù)對櫻桃番茄的分級檢測研究都是由于圖像檢測速度較慢,所以很難實現(xiàn)在線檢測[5~6]。為了滿足櫻桃番茄檢測分級系統(tǒng)中的實際應(yīng)用需求,對準(zhǔn)確率和檢測速度也提出了更高的要求。朱堅民等[7]提出一種新的水果特征提取方法,利用該方法提高了水果檢測和識別的準(zhǔn)確率。近些年來,因為機(jī)器學(xué)習(xí)方法的引入,使得水果分級檢測的自動化水平得到了很大程度的提高。例如,支持向量機(jī)因其良好的分類效果經(jīng)常會被應(yīng)用到櫻桃番茄的自動分揀和分級系統(tǒng)當(dāng)中[8]。目前,櫻桃番茄的形態(tài)和果面等特征成為劃分櫻桃番茄等級的關(guān)鍵性參考因素[9~12],本文則主要是從外觀檢測方面來進(jìn)行研究。在能保證實現(xiàn)批量化檢測的基礎(chǔ)上,達(dá)到更高的準(zhǔn)確率和更小的誤檢率?;跈C(jī)器視覺技術(shù)對櫻桃番茄進(jìn)行在線分級檢測時主要包括對圖像進(jìn)行預(yù)處理和大小形狀、顏色、紋理等分級算法。楊立等[13]提出了一套基于機(jī)器視覺的在線分級檢測裝置,但是該系統(tǒng)中的檢測成熟度的算法只是應(yīng)用一部分的區(qū)域顏色代替整個櫻桃番茄的顏色,而且其特征提取部分僅提取了大小和成熟度兩個特征參數(shù),特征參數(shù)選取過少從而會影響到之后分類效果。趙娟等[14]設(shè)計的外觀缺陷在線檢測系統(tǒng),雖然采用基于Microsoft Visual Studio 2010 平臺開發(fā)了在線控制軟件,但僅僅通過缺陷面積特征算子提取得出外觀檢測結(jié)果,特征算子選取過少從而會影響到缺陷結(jié)果判定。借助采集到的圖像來提取櫻桃番茄的多個重要特征,建立起快速高效的分級檢測模型是提高櫻桃番茄分級精度和速度的有效途徑。
試驗裝置如圖1 所示。試驗裝置由水平棍子輸送部分、機(jī)器視覺部分、電氣控制PLC 部分和氣動分選部分組成。試驗過程為:首先,當(dāng)櫻桃番茄從水平棍子輸送部分抵達(dá)工業(yè)相機(jī)拍照所覆蓋的范圍時,相機(jī)會被光電傳感器觸發(fā)開始進(jìn)行拍照,達(dá)到對成像區(qū)域內(nèi)部的目標(biāo)進(jìn)行圖像采集。之后圖像預(yù)處理單元會對圖像進(jìn)行采集,最后檢測單元進(jìn)行檢測,輸出檢測結(jié)果和耗時。試驗開始前應(yīng)當(dāng)調(diào)整好相機(jī)位置以使其成像范圍能夠覆蓋整個水平棍子輸送部分物料區(qū)。機(jī)器視覺部分相機(jī)選擇PointGrey 相機(jī),型號為BFLY-PGE-50S5C-C。采集圖像格式設(shè)置為bmp。櫻桃番茄在線分級檢測設(shè)備圖如圖1所示。
系統(tǒng)采取水平輥子輸送、氣泵分選的工作方式,同時水平棍子輸送線路的設(shè)計使得櫻桃番茄在輸送的過程中實現(xiàn)自動翻轉(zhuǎn),從而達(dá)到可以全面獲取櫻桃番茄外觀信息的目的。輸送部分由一條輸送鏈帶動,輥輪通過輥軸安裝在輸送鏈上,可繞軸自由轉(zhuǎn)動。輥輪呈雙錐凹形,當(dāng)輸送鏈帶動輥輪到圖像采集區(qū)時,輥輪一側(cè)的齒輪與齒條嚙合,輥輪前行的同時勻速旋轉(zhuǎn)。櫻桃番茄放置在兩個相鄰的輥輪上,在輥輪的帶動下做翻轉(zhuǎn)運(yùn)動,以使相機(jī)獲取櫻桃番茄不同表面的圖像。櫻桃番茄經(jīng)過圖像采集區(qū)域時,軟件對其進(jìn)行數(shù)據(jù)采集及識別,并觸發(fā)相應(yīng)的分級裝置實現(xiàn)水果分級。
圖1 櫻桃番茄在線分級檢測裝置圖
樣本的檢測等級劃分為三級:一等品、二等品和三等品。預(yù)先選出滿足等級要求的櫻桃番茄樣本共600 個,每級樣本為200 個,其中訓(xùn)練樣本150個、測試樣本50個。
為了提高在線分級環(huán)境的適應(yīng)性,整個圖像采集設(shè)備均安裝在一個密閉的暗箱中。系統(tǒng)中圖像采集部分采用的是一個灰點相機(jī),系統(tǒng)光源部分采用2 個100 W 的鹵鎢燈,光源部分安裝在垂直于水平棍子傳送帶方向的兩側(cè)。選擇合適的打光方式可以提高圖像采集的質(zhì)量從而降低圖像處理的難度[15]。
整個圖像采集的過程通過外觸發(fā)信號的方式來進(jìn)行控制,當(dāng)水果在水平輥子上旋轉(zhuǎn)向前輸送并通過安裝有對射式傳感器的位置時,圖像采集卡就會接收到一個外部觸發(fā)信號,這個觸發(fā)信號進(jìn)一步會控制相機(jī)開始進(jìn)行圖像的采集。整個圖像的采集、保存及預(yù)處理和最終分選的過程都會依次連續(xù)完成。水果在線檢測分選的全過程都是由基于VS2010 平臺配置OpenCV 環(huán)境開發(fā)的檢測分選軟件控制,該軟件可根據(jù)外部觸發(fā)信號來控制相機(jī)進(jìn)行自動采集和保存,能實時調(diào)用圖像預(yù)處理程序模塊在線同步進(jìn)行處理,并結(jié)合水平棍子傳送帶的輸送速度和圖像處理速度,當(dāng)樣品遠(yuǎn)離采集光照箱快要到達(dá)分選位置時,將判斷等級結(jié)果依次有序地傳送給分選裝置進(jìn)行在線分選。進(jìn)行處理的計算機(jī)配置選擇內(nèi)存4G、處理器2.50GHz。
從采集得到的原圖(圖2(a))當(dāng)中可以看出,原圖像中背景需要去除并且存在噪聲需要降噪,因為噪聲的存在容易干擾到后續(xù)圖像處理過程中對圖像的分割和特征參數(shù)提取。為解決這一問題需要對采集到的圖像首先進(jìn)行圖像去背景,然后通過采用二級小波分解和中值濾波相結(jié)合的方法對圖像進(jìn)行壓縮和降噪處理以達(dá)到實時處理效率和質(zhì)量得到提高的目的。為避免不同工位光照不同,本文均對2號工位進(jìn)行處理。
1)小波變換[16]壓縮原圖像是通過將含有噪聲的二維圖像信號進(jìn)行多尺度分解,時域信號轉(zhuǎn)換到小波域中,充分提取信號的小波系數(shù)來完成的。本文將采用選擇分解級數(shù)為2,低頻信號為壓縮圖像的方法,圖像壓縮后表明平均節(jié)省時間可達(dá)到0.03s左右。
2)自適應(yīng)中值濾波[17]是通過對圖像每個區(qū)域進(jìn)行噪聲檢測,按照區(qū)域中受到噪聲的污染程度不同來選擇濾波方形窗口尺寸的大小。根據(jù)所檢測出的噪聲點進(jìn)行中值濾波。圖2(b)為去背景圖片,圖2(c)為預(yù)處理結(jié)果。
圖2 圖像預(yù)處理過程圖
1)果形:特征提取通過最小外接矩形法進(jìn)行選擇,得出輪廓高度和輪廓寬度兩個參數(shù)值。
2)果面紋理
紋理特征可用來檢測果面是否光滑,該特征具有旋轉(zhuǎn)不變性和局部抗噪能力。基于灰度共生矩陣(GLCM)的紋理特征分析方法[16]是通過計算灰度來得到共生矩陣,表征紋理特征通過采用反差、能量、熵和逆差距四個參數(shù)。設(shè)I(x,y)為櫻桃番茄圖像,橫坐標(biāo)和縱坐標(biāo)分別用x和y表示,圖像的灰度共生矩陣用p(i,j)表示,灰度值分別用i 和j 表示,則有:
反差:
能量:
熵:
逆差距:
3)成熟度
RGB分量值可表示數(shù)字圖像顏色,櫻桃番茄顏色分布特征主要由R 分量均值與方差、G 分量均值與方差、平均灰度等五個參數(shù)值表示。
最后,為了避免特征參數(shù)之間產(chǎn)生干擾,對其進(jìn)行歸一化處理。
針對復(fù)雜高維的特征,本文將建立有監(jiān)督的分類模型,首先依據(jù)人工經(jīng)驗對訓(xùn)練樣本進(jìn)行分級。
3.3.1 特征降維
為了提高在線分級的實時性對高維復(fù)雜特征進(jìn)行降維。由于該特征集具有非線性特點,采用核主元分析法。具體步驟如下。
1)針對訓(xùn)練集S,給定一個核函數(shù)K。
2)計算出核矩陣K 之后再計算~K(中心化的K)。
3)求~K 的特征值和單位特征向量,首先將特征值從大到小進(jìn)行排列,之后提取前D 個特征向量,并令ai表達(dá)為式(5):
降維矩陣Q 表達(dá)為式(6):
4)對任一樣本向量x,經(jīng)過KPCA 降維后的數(shù)據(jù)表達(dá)為式(7):
核矩陣K 計算表達(dá)為式(8)、式(9),其中i,j=1,2,…N 。
~K計算方法表達(dá)為式(10)
3.3.2 SVM分類方法
SVM 分類方法[18~19]可以解決小樣本訓(xùn)練集的機(jī)器學(xué)習(xí)問題從而提高泛化性能。
訓(xùn)練時,由于SVM 模型的兩個預(yù)設(shè)參數(shù),參數(shù)和核參數(shù)g 對分類結(jié)果影響較大。為了避免參數(shù)的盲目選擇,決定引入具有較好全局遍歷能力的粒子群優(yōu)化算法(Particle Swarm Optimization,PSO)[20~21]對參數(shù)進(jìn)行優(yōu)化選擇。常用的核函數(shù)有以下四種:
1)線性核函數(shù)的表達(dá)為式(11):
2)多項式核函數(shù)的表達(dá)為式(12):
3)徑向(RBF)核函數(shù)(高斯核函數(shù))的表達(dá)為式(13):
4)二層神經(jīng)網(wǎng)絡(luò)(Sigmoid)核函數(shù)的表達(dá)為式(14):
徑向基核函數(shù)能夠?qū)⒃伎臻g映射到無窮維空間。通過調(diào)控參數(shù)σ,高斯核函數(shù)實際上具有相當(dāng)高的靈活性。本文核函數(shù)即選擇徑向基核函數(shù)。
試驗前,首先人工分級600 個櫻桃番茄樣本,其中包括每一等級200 個櫻桃番茄。然后,從中隨機(jī)抽取每一等級150 個櫻桃番茄按分級順序放入水平棍子進(jìn)行采集圖像離線訓(xùn)練,使用KPCA 降維特征進(jìn)行訓(xùn)練,得到特征維數(shù)是4,進(jìn)而建立起粒子群優(yōu)化的SVM分類參數(shù)模型。
最后,用每級樣本總剩余的150 個櫻桃番茄按分級順序放入水平棍子進(jìn)行在線批量測試和連續(xù)驗證。表1 所示為在線分級檢測結(jié)果,圖4 所示為單幅圖像的實時檢測結(jié)果,其中,圖片分別為處理結(jié)果中一、二、三等品中隨意挑選圖,第一行數(shù)字代表檢測結(jié)果等級數(shù),right、wrong 代表分級結(jié)果是否正確,第二行數(shù)字代表正確的級別數(shù),即應(yīng)該屬于哪一等級。以人工分級結(jié)果為準(zhǔn)則,采用SVM 分類方法對上述櫻桃番茄樣本進(jìn)行分級的準(zhǔn)確率為90%,而采用KPCA-SVM分類方法對上述櫻桃番茄樣本進(jìn)行分級的準(zhǔn)確率為95%,表明該方法的正確性和有效性。最終結(jié)果得出:150 個櫻桃番茄的批量測試樣本,在線分級檢測總用時37s 左右,平均速度約為4 個/秒,能夠滿足在線檢測的實時性要求。
圖5 櫻桃番茄實時測試結(jié)果圖
表1 批量櫻桃番茄分級檢測結(jié)果
采用本文在線檢測方法對櫻桃番茄樣本進(jìn)行分級時,雖然能夠?qū)崿F(xiàn)對大多數(shù)樣本進(jìn)行準(zhǔn)確分級,但還是會存在對少量樣本進(jìn)行誤分。除了人工分級的誤差外,分析其主要原因還是因為受到了外界光照因素的干擾,導(dǎo)致采集到的櫻桃番茄圖像存在噪聲,從而容易影響到紋理特征的計算,最終致使高等級櫻桃番茄錯判為低等級櫻桃番茄。
1)用機(jī)器視覺技術(shù)在線采集水平棍子上的櫻桃番茄圖像時,針對存在光線噪聲干擾的這一情況,本文提出了采用二級小波分解進(jìn)一步中值濾波的方法。該方法能夠達(dá)到圖像壓縮與降噪的功能,從而能夠達(dá)到實時處理效率和質(zhì)量提高的目的。
2)針對在線分級對實時性要求較高這一要求,本文從以下三個方面進(jìn)行了改進(jìn):一,在圖像預(yù)處理階段對圖像利用二級小波分解進(jìn)行了壓縮,結(jié)果表明圖像處理平均節(jié)省時間約為0.03s;二,為了滿足實時性要求引入核函數(shù)方法對SVM 分類模型中的高維非線性特征進(jìn)行降維;三,通過利用經(jīng)過訓(xùn)練而構(gòu)建的基于粒子群優(yōu)化的SVM 分類模型對果形、紋理和顏色分布等復(fù)雜高維特征進(jìn)行分級,準(zhǔn)確率可高達(dá)95%,結(jié)果表明其具有相當(dāng)高的可行性。