鄒 偉
(湖南財(cái)經(jīng)工業(yè)職業(yè)技術(shù)學(xué)院,湖南 衡陽(yáng) 421002)
隨著人們消費(fèi)水平的提高,越來(lái)越多的人傾向于購(gòu)買高品質(zhì)的水果[1]。目前,我國(guó)的水果種植及生產(chǎn)面積位居世界前列,但銷售價(jià)格遠(yuǎn)遠(yuǎn)低于同類進(jìn)口水果,造成這一現(xiàn)象的原因是銷售的水果品質(zhì)良莠不齊,沒(méi)有對(duì)水果品質(zhì)進(jìn)行區(qū)分,從而影響了水果的產(chǎn)后附加值。而對(duì)水果品質(zhì)進(jìn)行無(wú)損檢測(cè)分級(jí)是實(shí)現(xiàn)水果走向高端市場(chǎng)的重要一環(huán),對(duì)水果品質(zhì)分選方法的技術(shù)研究意義重大。本文利用機(jī)器視覺(jué)技術(shù)對(duì)柑橘成熟度進(jìn)行了品質(zhì)區(qū)分,而與柑橘成熟度相關(guān)的重要指標(biāo)則是柑橘表面顏色,表面顏色越是橙黃色則表示越成熟,顏色呈青綠色則表示未成熟。利用機(jī)器視覺(jué)技術(shù)對(duì)柑橘表面顏色進(jìn)行分選的方法,可以規(guī)避柑橘表皮人為破損的風(fēng)險(xiǎn),也可以提高工作效率,為水果后處理加工企業(yè)實(shí)現(xiàn)水果品質(zhì)自動(dòng)化分選提供技術(shù)支撐。
近年來(lái),國(guó)內(nèi)外眾多科研人員開始注重利用機(jī)器視覺(jué)技術(shù)對(duì)水果品質(zhì)分級(jí)的研究,機(jī)器視覺(jué)水果品質(zhì)無(wú)損檢測(cè)已成為農(nóng)林產(chǎn)品智能檢測(cè)研究的熱點(diǎn)課題,尤其是對(duì)水果品質(zhì)顏色的區(qū)分研究。Tao Y等[2]研制了一套針對(duì)蘋果顏色分選的機(jī)器視覺(jué)系統(tǒng),該系統(tǒng)可對(duì)蘋果的黃、綠色進(jìn)行準(zhǔn)確區(qū)分。Mendoza等[3]研究了基于RGB、HSV、L*a*b*3種顏色模型對(duì)水果顏色品質(zhì)的檢測(cè),結(jié)果表明,RGB模型在水果顏色檢測(cè)中效率高準(zhǔn)確率偏低,L*a*b*模型最適合水果顏色品質(zhì)的檢測(cè)區(qū)分。國(guó)內(nèi)也有相關(guān)學(xué)者進(jìn)行了此類的研究,饒秀勤等[4]研究了HIS顏色模型對(duì)柑橘顏色等級(jí)的區(qū)分檢測(cè),分級(jí)準(zhǔn)確度誤差僅為1.75%。馮斌等[5]引入了神經(jīng)網(wǎng)絡(luò)算法評(píng)價(jià)水果的顏色,選取與果實(shí)顏色相關(guān)的分形維數(shù)特征值作為神經(jīng)網(wǎng)絡(luò)的輸入層參數(shù),輸出結(jié)果為顏色等級(jí),結(jié)果準(zhǔn)確率可達(dá)95%。何東健等[6]利用視覺(jué)技術(shù)通過(guò)采集水果的彩色圖像,將RGB值轉(zhuǎn)換成HIS值,選用合適色相值下的直方圖累計(jì)面積百分比對(duì)水果的顏色等級(jí)進(jìn)行了很好的區(qū)分,區(qū)分準(zhǔn)確度達(dá)到了88%以上。王麗娟等[1]開發(fā)了一套利用機(jī)器視覺(jué)技術(shù)針對(duì)蘋果成熟度分選的分揀機(jī),大大提高了蘋果成熟度分選準(zhǔn)確率與分選效率。
本課題利用機(jī)器視覺(jué)技術(shù)對(duì)柑橘的果皮顏色成熟度進(jìn)行了分選研究。利用視覺(jué)設(shè)備采集柑橘圖像,并對(duì)柑橘圖像進(jìn)行顏色模型轉(zhuǎn)換,HSV顏色模型更符合人類視覺(jué)特征;對(duì)柑橘HSV模型進(jìn)行顏色通道分離,分離出H(色調(diào))、S(飽和度)、V(色調(diào))3個(gè)通道,發(fā)現(xiàn)H通道更能反映柑橘的顏色特征;對(duì)H通道直方圖提取最大峰值對(duì)應(yīng)的bins色調(diào)值,判斷柑橘的顏色品質(zhì)區(qū)間;根據(jù)柑橘的bins色調(diào)值區(qū)間來(lái)對(duì)柑橘的成熟度品質(zhì)進(jìn)行分選,并對(duì)分選結(jié)果進(jìn)行了驗(yàn)證,該方法對(duì)柑橘成熟度的分選準(zhǔn)確度達(dá)到90%以上。
采用CCD工業(yè)相機(jī)獲取柑橘的RGB圖像,而RGB圖像是基于設(shè)備的,不是面向用戶的,需要對(duì)采集的柑橘RGB圖像轉(zhuǎn)換成HSV圖像,HSV顏色模型由3通道構(gòu)成,H通道代表色調(diào),S通道飽和度,V通道代表亮度。從RGB顏色空間轉(zhuǎn)換成HSV顏色空間的計(jì)算公式:
V=max(R,G,B)
計(jì)算結(jié)果中,如果存在H<0時(shí),則令H=H+360。
柑橘在RGB顏色空間下的圖像見(jiàn)圖1,柑橘在HSV顏色空間下的圖像見(jiàn)圖2。
圖1 柑橘RGB圖
圖2 柑橘HSV圖
RGB圖像轉(zhuǎn)HSV圖像核心代碼語(yǔ)句:
img2=cv.cvtColor(img,cv.COLOR_BGR2HSV)
本課題研究的是柑橘HSV顏色空間下的直方圖,故先要得到H、S、V 3個(gè)通道的顏色直方圖,實(shí)現(xiàn)方法為調(diào)用opencv算法庫(kù)中的calcHist()函數(shù);括號(hào)中第1個(gè)參數(shù)表示柑橘的HSV圖像,第2個(gè)參數(shù)表示通道,0代表H通道,1代表S通道,2代表V通道,第3個(gè)參數(shù)為掩膜,本文未作掩膜處理,第4個(gè)參數(shù)表示每個(gè)圖像維度參與直方圖計(jì)算的直方圖組數(shù),第5個(gè)參數(shù)表示參與直方圖計(jì)算的每個(gè)維度的數(shù)值范圍,即橫坐標(biāo)的最小值和最大值,具體實(shí)現(xiàn)方法及程序語(yǔ)句:
img_h=img_hsv[:,:,0]
img_s=img_hsv[:,:,1]
img_v=img_hsv[:,:,2]
h_hist=cv.calcHist([img_hsv],[0],None,[256],[0,255])
s_hist=cv.calcHist([img_hsv],[1],None,[256],[0,255])
v_hist=cv.calcHist([img_hsv],[2],None,[256],[0,255])
# m,dev=cv.meanStdDev(img_hsv) #計(jì)算H、V、S3通道的均值和方差。
H、S、V 3通道直方圖的繪制代碼程序:
plt.plot(h_hist,label=‘H’,color=‘blue’)
plt.plot(s_hist,label=‘S’,color=‘green’)
plt.plot(v_hist,label=‘V’,color=‘red’)
plt.legend(loc=‘best’)
plt.xlim([0,256])
plt.show()
得到的HSV直方圖如圖3所示,顏色直方圖中縱坐標(biāo)代表像素?cái)?shù)目,橫坐標(biāo)代表色調(diào)值,從圖3可以看出,H通道能很好地表示柑橘顏色的特征,故只提取柑橘的H通道直方圖,H通道直方圖如圖4所示。
圖3 柑橘HSV顏色直方圖
圖4 柑橘H通道顏色直方圖
如圖4所示,橫坐標(biāo)代表色調(diào)值,縱坐標(biāo)表示像素在每個(gè)色調(diào)值出現(xiàn)的頻次;含1個(gè)最大峰值,此時(shí)的色調(diào)值對(duì)應(yīng)的像素出現(xiàn)的頻次最高,也表示了柑橘的整體顏色,參考前人的研究文獻(xiàn)[7,8],本項(xiàng)目把H通道顏色直方圖峰值對(duì)應(yīng)的色調(diào)閾值在[10°~25°]區(qū)間劃分為一等果,[25°~40°]區(qū)間劃分為二等果,[40°~55°]區(qū)間劃分為三等果,色調(diào)閾值超過(guò)55°的劃分為四等果。提取最大峰值對(duì)應(yīng)的色調(diào)值的方法:
maxLoc=np.where(h_hist==np.max(h_hist))
firstPeak=maxLoc[0][0]
plt.plot(h_hist,label=‘H’,color=‘blue’)
plt.legend(loc=‘best’)
plt.xlim([0,256])
plt.show()
print(‘峰值對(duì)應(yīng)的bins色調(diào)值:’,firstPeak)
本項(xiàng)目采用Python編程語(yǔ)言進(jìn)行開發(fā),用相機(jī)采集柑橘的RGB圖像,對(duì)RGB圖像進(jìn)行處理,通過(guò)調(diào)用OpenCV算法庫(kù)中的cvtColor函數(shù),使柑橘RGB顏色空間轉(zhuǎn)化為HSV顏色空間,對(duì)HSV顏色空間圖像進(jìn)行通道分離,調(diào)用OpenCV算法庫(kù)中的calcHist函數(shù)分別計(jì)算H、S、V 3個(gè)通道顏色直方圖,發(fā)現(xiàn)H通道反映了柑橘的顏色特征,對(duì)H通道峰值(縱坐標(biāo)-像素?cái)?shù)目最多)對(duì)應(yīng)的色調(diào)值(橫坐標(biāo)-bins色調(diào)值)進(jìn)行求解,提取峰值對(duì)應(yīng)的色調(diào)值方法已在上文進(jìn)行了詳細(xì)闡述,得到了峰值對(duì)應(yīng)的bins色調(diào)值為19,結(jié)果如圖5所示,也就是說(shuō)當(dāng)色調(diào)值為19的時(shí)候,此時(shí)像素?cái)?shù)目最多,即該色調(diào)值代表了該柑橘表面的顏色。
圖5 峰值對(duì)應(yīng)的bins色調(diào)閾值
采用Python語(yǔ)言中的if、elif條件語(yǔ)句對(duì)柑橘最高峰值對(duì)應(yīng)的色調(diào)值區(qū)間進(jìn)行條件判斷,根據(jù)相應(yīng)的條件區(qū)間對(duì)柑橘的顏色等級(jí)進(jìn)行判斷,最后輸出柑橘的顏色等級(jí),最終可將柑橘的品質(zhì)分為一等果、二等果、三等果,方便后續(xù)的執(zhí)行機(jī)構(gòu)機(jī)械手對(duì)柑橘進(jìn)行分揀。對(duì)柑橘色調(diào)區(qū)間判斷及等級(jí)分級(jí)核心代碼語(yǔ)句:
if firstPeak≥10 and firstPeak≤25:
# 結(jié)果:
print(‘此果是一等果’)
# 條件:
elif 25 # 結(jié)果: print(‘此果是二等果’) # 條件: elif 40 # 結(jié)果: print(‘此果是三等果’) # 條件: elif firstPeak>55: # 結(jié)果: print(‘此果是四等果’) 因?yàn)楸粰z測(cè)的柑橘bins色調(diào)值為19,在[10°~25°]這個(gè)區(qū)間,經(jīng)過(guò)上述程序的條件判斷之后,最后輸出的結(jié)果是此果是一等果,如圖6所示,得到的柑橘品質(zhì)分級(jí)結(jié)果為一等果。 圖6 柑橘品質(zhì)分級(jí)結(jié)果 根據(jù)試驗(yàn)需要,選取了表皮看上去完全成熟的柑橘和表皮看上去未完全成熟的柑橘進(jìn)行了試驗(yàn)驗(yàn)證,見(jiàn)圖7,得到一等果和二等果的試驗(yàn)結(jié)果,見(jiàn)圖8,該試驗(yàn)結(jié)果為預(yù)期結(jié)果,驗(yàn)證了該方法分選柑橘成熟度的準(zhǔn)確性,為該方法在柑橘后處理產(chǎn)線分選應(yīng)用奠定了基礎(chǔ)。 圖7 試驗(yàn)果 圖8 檢測(cè)結(jié)果 由于機(jī)器視覺(jué)技術(shù)在水果品質(zhì)分級(jí)市場(chǎng)上的巨大應(yīng)用前景,研究了機(jī)器視覺(jué)技術(shù)對(duì)柑橘成熟度的分選研究,通過(guò)CCD相機(jī)獲取柑橘的RGB圖像,將RGB顏色空間轉(zhuǎn)換為HSV顏色空間,分別獲取HSV 3個(gè)通道的ndarray數(shù)據(jù),按H、S、V 3個(gè)通道分別計(jì)算顏色直方圖,發(fā)現(xiàn)H通道能很好地反映柑橘的成熟度,以H顏色直方圖中像素出現(xiàn)的頻次最高時(shí)的bins色調(diào)閾值所處區(qū)間來(lái)判斷柑橘成熟度,該方法判斷柑橘的成熟度取得了較好的試驗(yàn)結(jié)果,在柑橘的分選檢測(cè)試驗(yàn)中得到了驗(yàn)證,準(zhǔn)確度基本接近,該研究成果可為從事柑橘等水果分選的科研人員提供技術(shù)參考。3 柑橘品質(zhì)分選驗(yàn)證
4 結(jié)語(yǔ)