曹 欣,王浩全,石 卓
(中北大學(xué)動(dòng)態(tài)測(cè)試重點(diǎn)實(shí)驗(yàn)室,信息與通信工程學(xué)院,山西太原030051)
機(jī)器視覺(jué)系統(tǒng)是指通過(guò)機(jī)器視覺(jué)產(chǎn)品,也就是我們所說(shuō)的圖像攝取裝置,來(lái)進(jìn)行工業(yè)圖像的采集[1]。早先一些傳統(tǒng)的生產(chǎn)線都采用人工視覺(jué)對(duì)產(chǎn)品進(jìn)行檢測(cè),精確度達(dá)不到要求,且效率比較低,對(duì)于一些人工操作比較危險(xiǎn)的工作環(huán)境,用機(jī)器視覺(jué)來(lái)替代人工視覺(jué)是非常必要的,機(jī)器視覺(jué)檢測(cè)方法的使用大大地提高了自動(dòng)化的程度[2],也提高了生產(chǎn)效率。
圖像采集一般由光源、鏡頭、CCD相機(jī)、圖像采集卡、圖像處理軟件以及視覺(jué)主機(jī)構(gòu)成。在采集的過(guò)程中,由光源提供照明,CCD相機(jī)進(jìn)行拍攝并將采集到的光信號(hào)轉(zhuǎn)化為模擬的電信號(hào),輸入到圖像采集卡中進(jìn)行A/D轉(zhuǎn)換,動(dòng)態(tài)地采集到視覺(jué)主機(jī)內(nèi)存中,最終通過(guò)圖像處理技術(shù)及相關(guān)運(yùn)算完成對(duì)所要檢測(cè)對(duì)象的檢測(cè),把被測(cè)物體的圖像顯示在系統(tǒng)顯示屏中。其工作原理如圖1所示。
圖1 工作原理圖
視覺(jué)檢測(cè)是一個(gè)多步驟、復(fù)雜的處理過(guò)程,總體來(lái)說(shuō),主要分為圖像采集、圖像預(yù)處理、與標(biāo)準(zhǔn)模板對(duì)比、圖像匹配、輸出檢測(cè)結(jié)果等幾個(gè)部分。所采用的處理算法不同,不同的匹配算法之間的步驟也會(huì)存在很大的差異,處理出來(lái)的效果也會(huì)不一樣,但從本質(zhì)上說(shuō),其大致過(guò)程是一樣的。下圖2為視覺(jué)檢測(cè)流程圖。
圖2 視覺(jué)檢測(cè)流程圖
從邊緣檢測(cè)流程圖可以看出,我們首先要采用CCD相機(jī)對(duì)標(biāo)準(zhǔn)工件和待檢測(cè)工件進(jìn)行邊緣提取處理,再進(jìn)行圖像匹配。邊緣檢測(cè)算子是通過(guò)檢查每個(gè)像素點(diǎn)的鄰域并對(duì)其灰度變化進(jìn)行量化來(lái)達(dá)到邊界提取的目的,而且大多數(shù)的檢測(cè)算子還可以確定邊界變化的方向。它的實(shí)質(zhì)是利用某種算子提取圖像背景與目標(biāo)圖像之間的交界線。因此實(shí)現(xiàn)邊緣提取最直觀的方法就是微分,對(duì)于數(shù)字圖像來(lái)說(shuō)用到的方法是差分。常用的邊緣檢測(cè)算子為 roberts、sobel、prewitte、log、canny算子。
本文通過(guò)實(shí)驗(yàn)方法對(duì)五種經(jīng)典的邊緣檢測(cè)算子進(jìn)行了研究,通過(guò)實(shí)驗(yàn)結(jié)果比較得出Canny算子邊緣檢測(cè)結(jié)果相對(duì)于其他算法效果好。最終采用canny邊緣檢測(cè)算子進(jìn)行邊緣檢測(cè),下面對(duì)canny算子進(jìn)行介紹。
Canny算子是相對(duì)來(lái)說(shuō)比較新的一種邊緣檢測(cè)算子,它有自己的特點(diǎn)與優(yōu)勢(shì),與其它算子相比教而言,邊緣檢測(cè)性能要更好一點(diǎn),在圖像邊緣處理方面得到了廣泛的應(yīng)用。它具有三個(gè)判定準(zhǔn)則:信噪比準(zhǔn)則、定位精度準(zhǔn)則和單邊緣響應(yīng)準(zhǔn)則[3]。Canny算子主要是通過(guò)尋找圖像梯度局部的最大值來(lái)進(jìn)行邊緣檢測(cè)的,這種方法是采用高斯濾波器的導(dǎo)數(shù)來(lái)計(jì)算梯度的,使用兩個(gè)閾值分別對(duì)強(qiáng)邊緣和弱邊緣進(jìn)行檢測(cè),而且僅當(dāng)檢測(cè)結(jié)果中強(qiáng)邊緣和弱邊緣相連時(shí),才會(huì)輸出弱邊緣[4]。平滑圖像中數(shù)據(jù)陣列可以表示為:
式中,H(x,y;δ)為標(biāo)準(zhǔn)差δ的高斯平滑濾波器,δ決定了平滑程度,這里使用了2×2階有限差分,其方向角和梯度幅值分別為:
式中,I(x,y)為邊緣強(qiáng)度;θ(x,y)為正交于邊緣方向的法向矢量。
圖3 邊緣檢測(cè)結(jié)果
3.2.1 基于絕對(duì)誤差的相似度評(píng)價(jià)原則
基于絕對(duì)誤差的相似度評(píng)價(jià)原則,采用兩次匹配策略,即先進(jìn)行一次粗匹配,再進(jìn)行精準(zhǔn)匹配。這種算法有效的避免了平方運(yùn)算,主要是衡量T(m,n)和Dxy(m,n)的誤差,其計(jì)算公式如下:
式中當(dāng)E(x,y)取到最小值的地方即為匹配目標(biāo),要想提高計(jì)算速度,我們可以通過(guò)選取一個(gè)合適的誤差閾值E0,當(dāng)E(x,y)>E0時(shí)就停止對(duì)該點(diǎn)的計(jì)算,繼續(xù)其他點(diǎn)的計(jì)算。對(duì)于這種方法中的粗匹配,我們采用的匹配方法是最多近鄰點(diǎn)距離方法,該方法是通過(guò)取模板隔行隔列數(shù)據(jù),在被檢測(cè)圖形上隔行隔列地完成掃描配準(zhǔn),相當(dāng)于在原圖1/4數(shù)據(jù)范圍內(nèi)進(jìn)行配準(zhǔn),這種算法能夠大幅度減少計(jì)算量,在匹配速度方面也有了很大的提高。粗匹配過(guò)程中,在整個(gè)算法中還有一個(gè)非常重要的問(wèn)題,那就是閾值的選取問(wèn)題,主要通過(guò)F(m,n)與θ的大小關(guān)系來(lái)判斷ρ(m,n)的取值。本文采用自適應(yīng)閾值選取,通過(guò)求模板的平均灰度和被測(cè)圖像的平均灰度絕對(duì)差F=|ˉD-ˉT|的不同自適應(yīng)選取閾值。精準(zhǔn)匹配是在粗匹配的基礎(chǔ)上進(jìn)行精確配準(zhǔn)位置的搜索,采用公式6的原則,在第一次誤差率最小的點(diǎn)(xmin,ymin)的鄰域內(nèi)進(jìn)行搜索匹配,即從點(diǎn)(xmin-1,ymin-1)到點(diǎn)(xmin+1,ymin+1)的矩形內(nèi)進(jìn)行二次精準(zhǔn)匹配,得到最終的配準(zhǔn)結(jié)果。
3.2.2 基于特征和灰度結(jié)合的匹配算法
這種算法的基本思想,首先需要對(duì)被檢測(cè)圖像和模板圖像分別進(jìn)行邊緣提取。前面我們通過(guò)對(duì)幾種經(jīng)典邊緣檢測(cè)算子進(jìn)行了比較,分析圖像處理結(jié)果得到采用Canny算子提取邊緣得到的效果最好,因此,本文采用Canny算子對(duì)圖像進(jìn)行處理;其次就是要對(duì)圖像進(jìn)行二值化處理,圖像二值化處理變換函數(shù)為:
式中T為二值化閾值,對(duì)于傳統(tǒng)的直方圖求閾值法,當(dāng)圖像的直方圖具有雙峰特性的時(shí)候,圖像中的目標(biāo)和背景分別形成兩個(gè)波峰。此時(shí),我們通常采用雙峰之間的谷底處灰度值作為閾值T,進(jìn)行圖像二值化處理。我們所要處理的圖像雙峰特性明顯,故采用直方圖法,經(jīng)過(guò)實(shí)驗(yàn)驗(yàn)證與比較,選取閾值T=70。
最后需要對(duì)圖像進(jìn)行匹配,令f(m,n)為M×N的待檢測(cè)圖像,g(u,v)為U×V的模板圖像,則有:
式中,d(i,j)代表的是相似性,為大小相同的兩窗口之間的距離函數(shù)。
式中,R[f(m,n),f'(m,n)]為我們定義的二值圖像匹配距離函數(shù)。
式中,d(i',j')為最佳匹配位置,P代表匹配范圍。
這種算法是通過(guò)加入圖像邊界信息,計(jì)算被檢測(cè)圖像和模板圖像的相似點(diǎn)個(gè)數(shù),避免了相關(guān)法處理計(jì)算量大的問(wèn)題,和基于絕對(duì)誤差的相似度評(píng)價(jià)原則算法中閾值選取問(wèn)題,省去了人為的根據(jù)經(jīng)驗(yàn)設(shè)定閾值的情況,極大的提高了圖像匹配的精確度和匹配率,節(jié)省了時(shí)間。
圖4 匹配結(jié)果
本文進(jìn)行了多次實(shí)驗(yàn),驗(yàn)證了基于絕對(duì)誤差的相似度評(píng)價(jià)原則算法、基于特征和灰度的復(fù)合算法這兩種算法的匹配正確率。通過(guò)對(duì)比,由表1可以看出,本文所研究的復(fù)合算法,不論是匹配正確率還是匹配速度上都有所提高,能夠滿足系統(tǒng)的節(jié)拍要求,且其匹配準(zhǔn)確率較高、精度高,提高了整條生產(chǎn)線的良品率要求。
表1 實(shí)驗(yàn)結(jié)果對(duì)比表
[1]戴君,趙海洋.機(jī)器視覺(jué)[J].機(jī)械設(shè)計(jì)與制造工程,1998,27(4):52 -53.
[2]張德豐.MATLAB數(shù)字圖像處理[M].北京:機(jī)械工業(yè)出版社,2012(2):268.
[3]李雅梅,吳中福.川南石刻圖像模板匹配方法研究[J].計(jì)算機(jī)科學(xué),2008(7):247 - 249.
[4]朱紅高.圖像邊緣檢測(cè)技術(shù)研究現(xiàn)狀[J].制造業(yè)自動(dòng)化,2010(1):45-47.
[5]Otsu N.A Threshold Selectoion Method from Gray Level Histogram[J].IEEE Trans Action on SMC,1979(9):652-655.
[6]Pal NR,Pal SK.A review on Image Segmentation Techniques[J].Pattern Recognition,1993,26(9):1277 -1294.