黃東晉, 張 倩, 吳 冏, 丁友東
(上海大學(xué)計算機工程與科學(xué)學(xué)院,上海200072)
由于廢棄的飲料瓶不能隨時隨地分類回收,大多數(shù)飲料瓶處于用后即棄的狀態(tài).在鐵路沿線、江河航線、旅游景點等地方大量的廢棄飲料瓶讓人觸目驚心,并且對環(huán)境造成的污染和對能源造成的浪費日趨嚴重.因此,積極研究飲料瓶自動回收系統(tǒng)不僅是探索一種更加文明、規(guī)范的管理模式,而且對保護環(huán)境、資源再生具有重要意義.
目前,已出現(xiàn)的飲料瓶回收機大多是基于紅外線掃描條形碼來識別的,其嚴格要求瓶罐的條形碼保持完整,且瓶身上端必須先投入機器回收口內(nèi).如果投入瓶罐上的條形碼破損,或者瓶子里面有殘液,機器將拒絕回收.這些問題限制了對飲料瓶的回收效率,降低了人們對飲料瓶回收機器的使用意愿.再者,條形碼容易被仿造,基于條形碼的識別方式會給一些居心不良的人帶來可趁之機,這也是基于條形碼的飲料瓶回收機不能廣泛推廣的潛在原因之一.
如果能夠通過識別飲料瓶的幾何外形來實現(xiàn)對飲料瓶的分類回收,就可以實現(xiàn)飲料瓶的精確識別,而且還可以避免一些惡意行為,從而有利于大力推廣.基于此,本研究提出了一個基于機器視覺的飲料瓶自動回收系統(tǒng).該系統(tǒng)通過對瓶子幾何外形的檢測、識別,實現(xiàn)對塑料瓶的分類回收.同時,該系統(tǒng)具有自我學(xué)習(xí)功能,可以根據(jù)市場動態(tài),及時學(xué)習(xí)、調(diào)整自身模板庫,提高匹配準確度.該系統(tǒng)的推出將對飲料瓶回收行業(yè)以及環(huán)保業(yè)的發(fā)展起到一定的促進作用.
物體幾何外形的識別是計算機視覺和模式識別領(lǐng)域中的一個研究熱點.目標(biāo)物的幾何形狀信息表現(xiàn)為邊界輪廓,而圖像的邊界輪廓一般表現(xiàn)為二維曲線.如何快速確定曲線特征以及有效匹配是識別算法研究的焦點.目前,國內(nèi)外學(xué)者提出了許多算法.Freeman[1]利用位置坐標(biāo)和鏈碼方法來描述物體的邊界,王濤等[2]提出了基于傅里葉描述子來識別物體的形狀,郭克華等[3]提出利用微分幾何的思想描述目標(biāo)邊界.除此之外,還有學(xué)者將幾何相關(guān)函數(shù)方法[4-5]、自回歸模型方法[6]、神經(jīng)網(wǎng)絡(luò)方法[7]等應(yīng)用到物體形狀的識別中.
飲料瓶具有對稱性、半透明性(PET材質(zhì))、特征集中在瓶身等特點,因此,針對飲料瓶的特性,本研究基于局部特征以及幾何不變性,定義了以角點為中心的左右曲線夾角及其符號作為瓶子的特征值,并提出了塊匹配的快速識別算法,很好地實現(xiàn)了基于幾何外形的飲料瓶識別.
由于飲料瓶都是對稱的,且關(guān)鍵特征都集中在瓶身,因此,只要關(guān)注瓶身一側(cè)的曲線特征即可進行識別,這在很大程度上提高了識別速度.首先,定義瓶身曲線的起始點和結(jié)束點.
定義1 如圖1所示,給定平面閉合曲線C:r=r(s)={x(s),y(s)},其中 s為弧長參數(shù).令x0=min{x|(x,y)∈C},y0=min{y|x=x0,(x,y)∈C},則定義P0(x0,y0)為該瓶身曲線的起始點.起始點也是基準點,是特征點平移匹配的參照.?
圖1 飲料瓶的邊緣檢測結(jié)果Fig.1 Edge detection result of bottle
定義2 如圖1所示,給定平面閉合曲線C:r= r(s)={x(s),y(s)},其中s為弧長參數(shù).令x1= max{x|(x,y)∈C},y1=min{y|x=x1,(x,y)∈C},則定義P1(x1,y1)為該瓶身曲線的結(jié)束點.
從起始點開始,沿著曲線順時針運動到結(jié)束點為止,即為瓶身局部特征曲線鏈,如圖2所示.
圖2 瓶身局部特征曲線鏈Fig.2 Curve chain of bottle body
角點具有幾何不變性,本研究定義以角點為中心的左右曲線夾角及其符號作為瓶子的特征值.該夾角表明角點左右兩端附近的曲線變化趨勢.夾角越大,說明曲線變化越緩和;夾角越小,說明曲線變化越劇烈.
定義3 如圖3(a)所示,給定平面閉合曲線C:r=r(s)={x(s),y(s)}.令Pi(xi,yi)為曲線上的一個角點,與該點左右各相差u個曲線點的點,分別為Pi-u(xi-u,yi-u)和Pi+u(xi+u,yi+u).當(dāng) u較小時,曲線可以看作直線,則線段Pi-uPi與PiPi+u之間的夾角θ定義為“以Pi為中心的左右曲線夾角”.
當(dāng)采用高精確對曲線C提取角點時,角點Pi可能不在曲線C上,如圖3(b)所示.令曲線C上的Pj為距離Pi最近的點,與Pj左右各相差u個曲線點的點,分別為Pj-u(xj-u,yj-u)和 Pj+u(xj+u,yj+u),則線段Pj-uPi與PiPj+u之間的夾角θ定義為“以Pi為中心的左右曲線夾角”.
定義4 如圖4所示,給定平面閉合曲線C:r= r(s)={x(s),y(s)}.令Pi(xi,yi)為曲線上的一個角點,與該點左右各相差u個曲線點的點,分別為Pi-u(xi-u,yi-u)和 Pi+u(xi+u,yi+u),則角點 Pi兩側(cè)彎曲變化方向由以下準則確定:
圖3 以角點為中心的左右曲線夾角Fig.3 Curve angle around the central corner
圖4 左右曲線夾角符號的確定Fig.4 Define the sign of the curve angle around the central corner
已有的角點檢測算法很多,其中常見的有Harris角點檢測算法[8]、KLT角點檢測算法[9]及SUSAN角點檢測算法[10]等.這些算法只能檢測到像素級精度的角點特征.為了提高提取精度,本研究采用了一種亞像素級精度的角點提取方法.
首先,利用Harris算子提取角點.Harris算子定義為
利用式(1)提取角點時,若像素點的R值大于某閾值,則判定該點為角點;否則,該點為普通點.然后,對以角點為中心的一個小的領(lǐng)域進行插值,將精度提高到亞像素級.
如圖5所示,在角點O附近點的灰度梯度均垂直于該點與角點的連線,即
圖5 亞像素級精度的角點檢測Fig.5 Corner detection in sub-pixel accuracy
對以角點為中心的某一領(lǐng)域內(nèi)的所有點按式(4)進行計算,誤差和
這樣,求角點準確位置的問題轉(zhuǎn)化為求誤差和S最小點的問題,可以通過迭代的方法來求取更精確的坐標(biāo).
根據(jù)定義3,當(dāng)?shù)玫浇屈cPi(xi,yi),以及與該點左右各相差 u個曲線點的點 Pi-u(xi-u,yi-u)和Pi+u(xi+u,yi+u)(u=5)時,求“以角點為中心的左右曲線夾角”就轉(zhuǎn)換為“已知三角形三點坐標(biāo),求某一夾角”的問題.
令A(yù)=Pi-u,B=Pi,C=Pi+u,AB為線段Pi-uPi的長度,BC為線段 PiPi+u的長度,AC為線段Pi-uPi+u的長度,根據(jù)余弦定理
式中,∠B就是以角點Pi為中心的左右曲線夾角值.然后,根據(jù)定義4,確定該夾角的符號“±∠B”,即為該瓶子的特征值.
為了進行快速匹配識別,本研究提出基于“塊”的匹配方法來求取目標(biāo)飲料瓶與模板飲料瓶對應(yīng)特征點的相似度.首先定義子塊號.
定義5 如圖1所示,給定平面閉合曲線C:r= r(s)={x(s),y(s)},其中s為弧長參數(shù).令xi={x| x0≤xi≤x1,(x,y)∈C},yi={y|x=xi,(x,y)∈C},則S=(yi/n×m+xi%n)定義為Pi(xi,yi)所在的子塊號,其中把整幅圖像(640×480)劃分為n×n子塊,m=640/n.n的取值不能過大,也不能過小.n值過大,子塊中包含多個角點,不易進行塊匹配;n值過小,計算量大,不能體現(xiàn)子塊作用.此處,n取值為5.
基于“塊”的匹配算法就是以特征模板為匹配對象,統(tǒng)計相同子塊號內(nèi)特征值相似的個數(shù).具體的流程如下:
(1)計算目標(biāo)瓶身曲線的起始點和結(jié)束點,判斷其歸屬組別(分為大瓶、中瓶和小瓶).
(2)按照特征提取算法提取該曲線的角點,并確定其符號.
(3)依次對比目標(biāo)飲料瓶的起始點與該組特征模版的標(biāo)準點坐標(biāo)位置,對該目標(biāo)瓶子的所有特征點坐標(biāo)進行平移變換,并計算其對應(yīng)的子塊號;然后與特征模板中相同子塊號內(nèi)的特征值進行匹配,求出對應(yīng)的相似度.
(4)目標(biāo)飲料瓶與該組所有模板進行匹配,并求出最大相似度Max.
(5)設(shè)置閾值lim.若Max≥lim,則判斷目標(biāo)飲料瓶與最大相似度的模板飲料瓶相似;否則,不相似.
飲料瓶自動回收系統(tǒng)通過自我學(xué)習(xí)功能模塊,提取樣本瓶子的特征并保存到數(shù)據(jù)庫中;然后,通過與模板庫的匹配,求取最大相似度,并確定是否回收.模板飲料瓶角點位置如圖6所示.
圖6 模板飲料瓶特征點示意圖Fig.6 Feature points of template bottle
目標(biāo)飲料瓶投進投瓶口,從拍照到特征提取的整個過程如圖7所示.
圖7 目標(biāo)飲料瓶特征點示意圖Fig.7 Feature points of target bottle
目標(biāo)飲料瓶特征值與模板的實驗比較結(jié)果如表1所示.
本研究共建立了30個飲料瓶的正反例樣本數(shù)據(jù)庫.通過100次的實驗驗證,結(jié)果表明,基于角點及局部特征的飲料瓶識別算法的識別率高達92%,而且計算速度快,具有較好的穩(wěn)定性.
表1 目標(biāo)飲料瓶特征值與模板的比較結(jié)果Table 1 Comparing result on eigenvalues between target and template bottle
將基于角點及局部特征的飲料瓶識別方法應(yīng)用于飲料瓶自動回收系統(tǒng)具有廣闊的實用前景.采用一種亞像素級精度的角點提取方法,可提高計算精度;以角點為中心的左右曲線夾角及左右變化趨勢作為特征值來描述瓶子,可區(qū)分性好;基于“塊”匹配的識別算法簡單且識別速度快.實驗證明,該方法能很好地滿足飲料瓶自動識別回收的準確性和實時性要求.
[1] FREEMAN H.Computerprocessingofline-drawing images[J].Computing Surveys,1974,6(1):57-97.
[2] 王濤,劉文印,孫家廣,等.傅立葉描述子識別物體的形狀[J].計算機研究與發(fā)展,2002,39(12):1714-1719.
[3] 郭克華,劉廣海,劉傳才,等.微分幾何編碼識別物體的形狀[J].計算機科學(xué),2007,34(7):219-221.
[4] 王波濤,孫景鰲,蔡安妮.相對矩及在幾何形狀識別中的應(yīng)用[J].中國圖象圖形學(xué)報,2001,6(3):296-300.
[5] 呂玉增,彭啟民,黎湘.基于極值特征的不變性形狀識[J].電子學(xué)報,2008,36(4):679-684.
[6] DUBOISS R,GLANZF H.An autoregressive model approach to two-dimensional shape classification[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1986,8(1):55-56.
[7] GUPTAL,SAYEHM R,TAMMANAR.A neural network approach to robust shape classification[J].Pattern Recognition,1990,23(6):563-568.
[8] HARRISC,SATEPHENSM J.A combined corner and edge detector[C]∥Proceedings of the 4th Alvey Vision Conference.1988:147-152.
[9] SHIJ,TOMASIC.Good feature to track[C]∥Proceedings of IEEE Conference on Computer Vision and Pattern Recognition.1994:593-600.
[10] SMITHS M,BRADYJ M.SUSAN:a new approach to low level image processing[J].International Journal of Computer Vision,1997,23(1):45-48.