劉 洋,王耀南,周雨蓉
湖南大學 電氣與信息工程學院,長沙 410082
基于簡化SIFT的口服液雜質檢測防抖方法
劉 洋,王耀南,周雨蓉
湖南大學 電氣與信息工程學院,長沙 410082
近年來,為了提高口服液雜質檢測效率,并進一步用機械自動化代替傳統意義上的燈檢女工操作,燈檢機[1-3]應運而生。燈檢機主要采用工業高速照相機對高速旋轉后急停的口服液瓶體進行多幀圖像跟拍,獲得圖像后經千兆網網線傳入PC機,使用差分能量累積算法得出結果,口服液燈檢機如圖1。本文主要研究的是差分能量累積之前的圖像預處理,預處理的目的主要是消除由于旋轉后急停帶來的機械抖動,機械抖動帶來的是前后兩幅圖像口服液瓶體的位置不一致。對于精度要求不高的燈檢機系統,可以采取經驗值進行補償,然而,對高精度的口服液燈檢機系統,尤其是口服液這樣的藥用液體,更要注重其品質,此法不可行。因此,本文采取了位置配準的方式對瓶體位置進行校正。配準的應用場合[4]很多,粗略的可以分成四種類型,分別是:不同觀測點采集圖像進行配準;不同時間或不同條件下采集圖像進行配準,又稱作時間序列配準;不同傳感器采集圖像進行配準;場景到模型的配準。口服液雜質檢測中高速拍攝的圖像符合第二種配準類型,配準過程需要容忍圖像中部分內容的差異。圖像配準的方式分為兩大類,有基于灰度的,有基于特征的,由于燈檢機系統要求實時性和魯棒性比較高,基于灰度的配準魯棒性較低并且會帶來大量的計算時間,不能滿足燈檢機實時性要求,所以使用基于特征配對的方式。基于特征的特征點配對的方式很多,如Harris[5]角點提取方式,PCNN重心點提取的方式[6-7],SURF[8]提取方式,本文對SIFT[9]算法作一些簡化改進,作為特征提取和配對的方式。在特征配對后,采用最小二乘法擬合出最后的配準參數。系統的抖動主要是小參數仿射變換,在特征提取過程中這一因素可以剔除很多假配對點。

圖1 口服液燈檢機外觀
2.1 燈檢機圖像時間序列
在口服液燈檢機系統中,口服液瓶體隨著旋轉履帶繞中心軸公轉,并且隨著搓瓶履帶自轉,當口服液瓶體到達攝像機的一個工位,搓瓶履帶迅速停止,這時攝像機與旋轉履帶同步運行,拍攝瓶體。搓瓶會使瓶體輕微搖晃,帶來小參數旋轉仿射變換,肉眼無法分辨;而旋轉履帶同步運行帶來的是小參數平移仿射變換。瓶體序列圖片如圖2所示,在這組圖片中,為了實驗效果,加入了較大的玻璃屑雜質,在實際中,雜質的顆粒都在微米級別[10-12]。

圖2 序列瓶體圖片
2.2 仿射變換模型參數


3.1 尺度空間最值檢測
圖像的尺度空間是通過輸入圖像I(x,y)與一個多尺度高斯函數G(x,y,σ)的卷積獲得的,公式如下:

其中高斯函數G(x,y,σ)的表達式是:

為了更穩定地確定最值點,SIFT采用了差分高斯函數(Difference of Guassian,DOG)與輸入圖像卷積的方式,也就是用尺度接近的兩個高斯函數分別與輸入圖像進行卷積后再做差分,公式如下:

通過不斷的卷積差分,最后生成DOG金字塔。對于金字塔的每一層,輸入圖像不斷地與不同尺度的高斯函數進行卷積得出尺度空間組圖。相鄰高斯卷積尺度空間圖做差分得出DOG組圖,當一層DOG完成后,對輸入圖片模糊化并降采樣后重復以上描述,即可產生DOG金字塔圖(PYR圖)。在這里降采樣之后再做卷積可以大大減少計算量,這與口服液雜質檢測燈檢機系統實時性要求是契合的。工業采集的圖片像素數比較大,不做降采樣與做降采樣相比,時間效率大約差兩個數量級,圖3是圖2的序列瓶體圖片中第一個瓶體(參考圖片)的PYR圖。
在產生PYR圖之后,為了確定該像素是否為最值點,將該像素的PYR值與其周圍8個像素的PYR值以及前后相鄰尺度DOG圖中的各9個像素的PYR值相比較,一共需與26個像素的PYR值相比較,若該像素的PYR值最大或者最小,那么確定其為最值點,也可以稱作粗略關鍵點(Coarse Key Point,CKP),相對于CKP,下面一節介紹精確關鍵點(Accurate Key Point,AKP)的確定,由于前面做了降采樣,因此每一層的比較計算量都會不斷減少。

圖3 參考圖片PYR圖
3.2 關鍵點二次篩選與方向分配
在CKP點選取后,需要確定AKP點,下面介紹精確定位關鍵的方法。SIFT采用了Brown[13]等人提出的方法,首先計算出DOG(下面用D代替)的泰勒展開式(保留到二次項):

其中x=x(x,y,σ)是相對于CKP點的偏移量。根據Brown的理論,令式(6)等于零得出偏移量ε(x),將此偏移量加上CKP點坐標,就可以得出AKP點的坐標,ε(x)的計算公式如下:

式(8)可以用于去除對比度較小的一些CKP點,其數值如果小于設定的值,這些CKP點將不會進入AKP點中,在SIFT原文中,作者給出的參考值為0.03,這里為了提高運算速度,滿足實時性,取出盡量少的特征點,本文采用的值為0.05。在獲取AKP點之后,需要使用AKP點的主曲率來排除邊緣的不穩定點,邊緣的不穩定點的主曲率通常會比較大,而角點的主曲率相對比較小。最后可以得到真正意義上的AKP點,SIFT原文中是使用了4×4×8的特征向量(AKPD)來描述特征點,同樣是為了提高效率,本文采用了2×2×8的AKPD,實驗證明這樣的AKPD完全滿足系統的要求,利用AKPD可以確定AKP點的主方向,圖4是參考圖片與后續一幅圖中AKP點與其主方向的標示圖。
4.1 特征點配對方法

圖4 AKP點與主方向標示圖
SIFT進行特征點配對的方式比較簡單,燈檢機系統需要配準的兩幅圖前后相鄰,以圖2中第二個瓶體為參考圖,與其配準的就是第三個瓶體。假設參考圖中的AKP點集合為A1i(i=1,2,…,m),第三個瓶體的AKP點集合為 A2j(j=1,2,…,n),在 A2j中找出兩個與 A1i中待配準的點AKPD最接近的兩個點,計算方法是計算兩對AKPD之間的歐式距離,分別為D1,D2。由于歐式距離涉及到乘法,計算量較大,本文改用街區距離以滿足實時性的要求。實驗證明D<D,當<0.45時,配
12對點錯誤率最低,能達到95%以上的正確率。
4.2 特征點搜索方式
由于一幅圖中的特征點比較多,少則上百,多則上千,與每一幅圖的復雜程度有關系,SIFT使用了BBF算法查找,實驗證明對于AKP點為100 000的圖來說,查找效率比單純的暴力搜索要高兩個數量級。但是,口服液瓶體圖片結構比較簡單,每一幅圖的AKP點大約只有幾十個,使用暴力搜索的方式計算速度加快,因此本文將采用簡單快捷暴力搜索。
4.3 配對區域改進
SIFT中找配對點的方式是全局搜索,全局搜索的方式適合于大的仿射變換參數,相對于微小參數仿射變換就顯得很多余了。而且全局搜索有一個很大的缺點,就是在非相似區域找出兩個配對點,如圖4中用黑色箭頭標出的兩個點,這兩個點AKPD極為相似。本文采取的方式是局部搜索,僅在AKP點一個小的領域內尋找,這樣做的依據是,瓶體驟停帶來的旋轉度數一般在2°以內,瓶體隨履帶同步運行帶來的平移仿射變換一般在20像素以內,所以可以采用20×20的一個掩模做局部搜索。也就是說,假設 A1i待配準點的位置為(x1,y1),那么 A2j中位置坐標(x2,y2)滿足下面表達式的點作為候選點。

其他點不予考慮,全部舍去,這同時可以節約大量比較計算時間。
基于上述方法可以進一步減少偽特征配對點的個數,在本系統中,可以找出大約10到20對特征配對點,圖5和圖6是序列圖片中兩組瓶體的特征配對圖,下面一章將介紹基于這些配對點的坐標,并結合最小二乘法,計算精確的仿射變換位置配準參數。

圖5 特征配對圖1

圖6 特征配對圖2
圖6中黑色向下箭頭所指向的配對連線是一個偽特征配對點,不過這不會對后續最小二乘法貢獻太多影響。
5.1 最小二乘法介紹
對于給定數據(Xi,yi)(i=1,2,…,m),Xi為多維向量,在本文提出的問題中為兩維,對于給定的函數F(X),使誤差?i=F(Xi)-yi的平方和最小,即目標函數(TF)最小:

假設F(X)為線性函數(與本文相符),函數參數為P=(p1,p2,…,ps),令TF對P求導并使之分別等于零,求解得到方程組就可以得到給定函數的參數:

5.2 應用最小二乘法計算配準參數
在大部分的論文中都忽略了這個環節,本文簡要介紹求解配準參數,參數計算可以歸結到求解超定方程組,而求解超定方程組常規的方法就是最小二乘法。
首先以實例介紹最小二乘法求解超定方程組,比如說有一個超定方程組如下:

利用式(12)可以解出下列適定方程組:

求解可得x=2.977 4,y=1.225 9。
圖6中的配對坐標點如表1所示,將這些點的坐標帶入式(1),即可得到一個15×2個方程組成的方程組,這個方程組參數為6個。由于式(2)的關系存在,實際參數為3個。

表1 配對坐標
本文以口服液雜質檢測燈檢機系統為背景,利用改進型SIFT的精確穩定定位與快速計算的特性,解決了由于機械抖動帶來的序列圖像配準問題。實驗采用工控機對接千兆網相機采集圖像數據,由PLC控制雜質瓶體的剔除信號。軟件方面,主要使用了基于OPENCV和MFC的GUI軟件架構,經過對接近1 000瓶注入各種雜質的口服液進行雜質檢測,由于機械抖動帶來的誤檢率由原來的2%降到了0.5%以下。
[1]葛繼,王耀南,張輝,等.基于改進型PCNN的智能燈檢機研究[J].儀器儀表學報,2009(9):1866-1873.
[2]Carmona E J,Martinez-Cantos J,Mira J.A new video segmentation method of moving objects based on blob-level knowledge[J].Pattern Recognition Letters,2008,29(3):272-285.
[3]張耀,王耀南,周博文.異型瓶藥液中可見異物的智能視覺檢測機器人[J].儀器儀表學報,2010(5):1058-1063.
[4]Brown L G.A survey of image registration techniques[J]. ACM Computing Surveys,1992,24(4):325-376.
[5]Harris C G,Stephens M J.A combined corner and edge detector[C]//Proceedings of the 4th Alvey Vision Conference.Manchester,England:IEEE Computer Society,1988:147-151.
[6]Johnson J L.Pulse-coupled neural nets:translation,rotation,scale,distortion,and intensity signal invariance for images[J].Applied Optics,1994,26(23):4972-4978.
[7]Johnson J L,Padgett M L.PCNN models and applications[J].IEEE Transactions on Neural Networks,1999,10(3):480-498.
[8]Bay H,Ess A,Tuytelaars T.Speeded-Up Robust Features(SURF)[J].Computer Vision and Image Understanding,2008,110(3):346-359.
[9]Lowe D.Distinctive image features from scale-invariant key points[J].International Journal of Computer Vision,2004,60(2):91-110.
[10]Lampropoulos G A,Boulter J F.Filtering of moving targets using SBIR sequential frames[J].IEEE Transactions on Aerospace and Electronic Systems,1995,31(4):1255-1267.
[11]Blostein S D,Huang T S.Detecting small moving objects in image sequences using sequential hypothesis testing[J]. IEEE Transactions on Signal Processing,1991,39(7):1611-1629.
[12]Blostein S D,Richardson H S.A sequential detection approach to target tracking[J].IEEE Transactions on Aerospace and Electronic Systems,1994,30(1):197-212.
[13]Brown M,Lowe D G.Invariant features from interest point groups[C]//Proceedings of 13th British Machine Vision Conference.Cardiff,Wales:University of British Columbia,2002:656-665.
LIU Yang,WANG Yaonan,ZHOU Yurong
College of Electrical and Information Engineering,Hunan University,Changsha 410082,China
In the light inspection machine system for oral liquid impurity detection,due to slight vibration of oral liquid bottle caused by sudden halt of crawler belt used for bottle spinning,in the sequential two pictures of oral liquid bottle captured from high-speed industry camera,pixels sharing the same partial positions cannot be overlapped,which may lead to incorrect result after differential operation of the two pictures.For impurity in oral liquid is very small about micrometer level,mechanical dithering or dirt on the bottle of oral liquid shall pose influence on inspection accuracy because of aforementioned reason.This paper will harness SIFT algorithm to register the sequential two pictures.SIFT algorithm is suitable for high accuracy oral liquid impurity detection system on account of its stability.It improves SITF a little in the aim of adapting to slight vibration range which will generate satisfactory result.In the real process of detection,the algorithm is of high stability and high accuracy.
light inspection machine for oral liquid;high-accuracy impurity detection;Scale Invariant Feature Transform(SIFT);position registration
在口服液燈檢機雜質檢測系統中,口服液瓶體由于履帶搓瓶的急停會有輕微的抖動,造成高速工業攝像機拍攝的前后兩幀口服液瓶體圖像中位于相同空間位置的像素無法重合在一起,導致前后兩幀圖像做差分結果出現錯誤。由于口服液中的雜質很小,一般會達到微米級別,因此機械的擾動以及口服液瓶體上的污點都有可能因位置偏差對檢測結果造成影響。采用尺度不變特征檢測(SIFT)對系統采集的前后兩幀圖像進行位置配準。SIFT算法穩定性精度很高,適用于高精度口服液雜質檢測系統。基于抖動幅度微弱,對該算法進行了一定的改進與簡化,以獲得最佳配準結果。在實際檢測過程中算法穩定,檢測結果準確率很高。
口服液燈檢機;高精度雜質檢測;尺度不變特征檢測(SIFT);位置配準
A
TP391
10.3778/j.issn.1002-8331.1302-0204
LIU Yang,WANG Yaonan,ZHOU Yurong.Anti-shaking method for impurity detection in oral liquid using simplified SIFT.Computer Engineering and Applications,2014,50(24):255-258.
國家自然科學基金(No.60835004)。
劉洋(1989—),男,碩士研究生,主要研究方向為機器視覺與圖像識別應用。E-mail:ly267888608@sina.com
2013-02-28
2013-05-20
1002-8331(2014)24-0255-04
CNKI網絡優先出版:2013-05-29,http∶//www.cnki.net/kcms/detail/11.2127.TP.20130529.1519.005.html