趙靜 孫寶華
【摘要】針對復(fù)雜產(chǎn)品表面正確性的快速自動無損檢測問題,提出了一種基于PCA-SIFT算法的自動識別。該算法是對基于尺度旋轉(zhuǎn)不變性(SIFT)算法的改進(jìn),在保證識別精確度的前提下,利用主元分析法(PCA)進(jìn)行降維處理,改變了描述子的生成方式,以減少計(jì)算的時(shí)間,提高算法的實(shí)時(shí)性,最后通過相關(guān)度計(jì)算判別各區(qū)域有無缺陷。實(shí)驗(yàn)表明在保證準(zhǔn)確率的前提下本論文所提出的算法比單獨(dú)使用SIFT算法平均可以節(jié)省0.5s。
【關(guān)鍵詞】缺陷檢測;旋轉(zhuǎn)步長采樣;投影法;PCA-SIFT算法
引言
隨著電子技術(shù)、計(jì)算機(jī)技術(shù)和圖像處理等技術(shù)的快速發(fā)展,人們對產(chǎn)品質(zhì)量要求的提高,傳統(tǒng)的人工檢測由于很多原因已不能得到令人滿意的檢測結(jié)果,視覺檢測技術(shù)越來越多地應(yīng)用于各領(lǐng)域,以便代替人工進(jìn)行全自動產(chǎn)品檢測等[1]。自動視覺檢測相比于人眼檢測,具有非常明顯的優(yōu)勢:檢測速度快、生產(chǎn)效率高;不依賴于人的主觀因素從而保證高穩(wěn)定性與高可靠性;容易滿足各種特殊高危生產(chǎn)檢測場合;便于實(shí)現(xiàn)缺陷信息的自動記錄與數(shù)據(jù)庫管理及查詢功能,保障產(chǎn)品生產(chǎn)的全面質(zhì)量管理與過程控制等[2]。
基于上述諸多優(yōu)勢,圖像視覺自動檢測技術(shù)正逐漸觸及到人類生產(chǎn)和生活各個(gè)領(lǐng)域,從工業(yè)檢測到文件處理,從交通自動化到民宅安全監(jiān)控,從毫微米技術(shù)到多媒體數(shù)據(jù)庫等等。表面缺陷自動檢測的方法有很多,主要包括統(tǒng)計(jì)方法、結(jié)構(gòu)方法、全局方法和基于模型的方法[3]。
自動視覺檢測是建立在機(jī)器視覺基礎(chǔ)上的一門新興檢測技術(shù),是綜合應(yīng)用圖像處理與分析、模式識別、人工智能、精密儀器等技術(shù)的非接觸式檢測方法。近年來,紅外技術(shù)、CCD技術(shù)和計(jì)算機(jī)技術(shù)都有了飛速地發(fā)展,基于激光掃描、光譜圖像、紅外成像和超聲波掃描的機(jī)器視覺技術(shù)因其成本低、無損傷、準(zhǔn)確、快速、永不疲勞等優(yōu)點(diǎn)在缺陷檢測領(lǐng)域也得到了越來越廣泛的應(yīng)用[4]。
1.檢測的總體流程
工件旋轉(zhuǎn)檢臺如下圖1所示[5]是為了使系統(tǒng)能夠自動對被檢產(chǎn)品進(jìn)行多方位信息提取。
圖1 視覺檢測原理框圖
圖2 表面有不同分辨率條紋的圓柱產(chǎn)品
產(chǎn)品的缺陷檢測可以分為內(nèi)部裝配缺陷與外部表面缺陷,但最終具體的缺陷檢測機(jī)制是相同的,由于外部缺陷檢測可以通過相機(jī)即可獲取數(shù)據(jù),因此,本文所研究的是針對產(chǎn)品表面的缺陷檢測。為使所選對象具有代表性且更好的驗(yàn)證算法效果,用測試分辨率的具有代表性的黑白線對數(shù)/毫米來驗(yàn)證。
2.算法介紹
2.1 旋轉(zhuǎn)步長的確定
本文所用的是比較規(guī)則的黑白線對數(shù),可以用垂直投影來確定相應(yīng)的旋轉(zhuǎn)步長[6]。垂直投影就是將一列所有像素點(diǎn)的灰度值累加求和,如式(1)所示:
(1)
其中表示像素所處的位置,表示該像素點(diǎn)的灰度值,通過分析投影圖中相鄰沖擊波谷的位置來確定相應(yīng)的旋轉(zhuǎn)角度。如下圖3是用垂直投影法和多次具體實(shí)際操作過程中共同確定的旋轉(zhuǎn)步長為。
圖3 垂直投影
確定了旋轉(zhuǎn)步長以后,具體采集圖像的過程如下:首先選取一標(biāo)準(zhǔn)的合格產(chǎn)品放在旋轉(zhuǎn)臺上旋轉(zhuǎn),在全周方向區(qū)間內(nèi)依次獲取合格品在各方位下的圖像序列共計(jì)120幅標(biāo)準(zhǔn)樣本圖,提取圖像特征建立標(biāo)準(zhǔn)樣本圖庫。
2.2 PCA-SIFT圖像匹配算法
PCA-SIFT算法采用了PCA算法對圖像數(shù)據(jù)進(jìn)行降維,通過計(jì)算主成分將高維數(shù)據(jù)投影到低維空間,并改變描述子的生成方式。主成分分析的目標(biāo)是在誤差平方和意義下用低維子空間表示高維數(shù)據(jù),PCA-SIFT用主成分分析法( PCA) 將傳統(tǒng)SIFT的 128維特征向量進(jìn)行降維,以達(dá)到更精確的表示方式。進(jìn)行降維的具體方法如下:
1)將兩幅待匹配圖像中的所有個(gè)特征點(diǎn)的SIFT描述子作為樣本矩陣,計(jì)算出128維均值向量以及所有樣本點(diǎn)的特征向量與均值向量的差。
2)構(gòu)建協(xié)方差矩陣,求協(xié)方差矩陣的128個(gè)特征值和128 個(gè)特征向,并將特征值從大到小的順序排列和對應(yīng)的特征向量。
3)選出對應(yīng)最大個(gè)特征值的特征向量作為主成分方向, 本文選取=36,最構(gòu)造一個(gè)的矩陣A,它的列由個(gè)特征向量組成。將原始128維 SIFT描述子按照式(2)投影到這個(gè)維子空間,得到PCA-SIFT描述子的主成分表示,即。本實(shí)驗(yàn)中選也就是把原來的128維傳統(tǒng)SIFT特征描述符降成了20維的 PCA-SIFT 特征描述符。
利用PCA-SIFT 特征檢測算法檢測出兩幅幅圖片的所有關(guān)鍵點(diǎn)及對應(yīng)的特征向量,就可以計(jì)算特征向量間的歐式距離,兩個(gè)特征向量之間的歐式距離值越小,就說明這兩個(gè)點(diǎn)越相似,它們的匹配程度就越高。
歐式距離公式如(2)所示
(2)
其中分別為兩幅待匹配圖上的特征點(diǎn)所生成的特征向量。
首先取第一幅圖像中的某個(gè)關(guān)鍵點(diǎn),然后找出其與第二幅圖像中歐式距離最近的前兩個(gè)關(guān)鍵點(diǎn),在這兩個(gè)關(guān)鍵點(diǎn)中,如果最近的距離比上次近的距離小于某個(gè)比例閾值,則認(rèn)為這是一對匹配點(diǎn)。在本實(shí)驗(yàn)中選取閾值為0.6,如式(3)所示:
(3)
式中為最近歐氏距離,為次近歐式距離。
2.3 缺陷檢測
利用PCA-SIFT可以迅速找出待檢測產(chǎn)品和和標(biāo)準(zhǔn)庫中最為匹配的圖像,然通過式(4)計(jì)算相關(guān)度與根據(jù)實(shí)驗(yàn)經(jīng)驗(yàn)設(shè)定的閾值比較,當(dāng)某一區(qū)域所有角度圖像的相似度都時(shí),則判斷該區(qū)域無缺陷;若在某一角度下相似度小于設(shè)定閾值,則停止計(jì)算判斷該區(qū)域?yàn)槿毕輩^(qū)域。
(4)
3.實(shí)驗(yàn)結(jié)果與分析
實(shí)驗(yàn)環(huán)境為CPU Intel(R) Core(TM) 2.50GHz,操作系統(tǒng)為Windows 7,仿真平臺為Matlab R2010b,所用相機(jī)為奧林巴斯FE4010,有效像素為1200萬,采用圖像大小為2026×1669像素。為了驗(yàn)證提出的算法在特征點(diǎn)匹配方面的有效性以及所采用的技術(shù)帶來的效率和匹配數(shù)量的優(yōu)勢,分別使用SIFT和PCA-SIFT進(jìn)行匹配來驗(yàn)證匹配的速度,如下圖所示,用SIFT進(jìn)行匹配速度很快,但經(jīng)過PCA-SIFT處理后的匹配速度提高了4-5倍,如下圖4和表1分別為待檢測圖像和標(biāo)準(zhǔn)圖像用兩種方法匹配的結(jié)果和比較。
圖4 兩種方法的匹配結(jié)果
表1 SIFT和PCA-SIFT兩種匹配方法的對比
算法 準(zhǔn)圖像a,待測圖像b 匹配對數(shù) 圖像配準(zhǔn)時(shí)間/s
SIFT a(128個(gè)), b(136個(gè)) 20 0.54
PCA-SIFT a(128個(gè)), b(136個(gè)) 14 0.15
尋找出最優(yōu)匹配圖后就要檢查此待測圖像是否有缺陷,這里采用相似度來衡量。首先設(shè)定一閾值為0.90,如果兩幅圖像的相似度大于這個(gè)設(shè)定的閾值則認(rèn)為被檢測的圖像沒有缺陷,否則,被認(rèn)為有缺陷。如下表2為不同度數(shù)下待檢測圖像和標(biāo)準(zhǔn)圖像相似度的計(jì)算結(jié)果。
表2 不同度數(shù)下待檢測圖像和標(biāo)準(zhǔn)圖像相似度的計(jì)算結(jié)果
待檢測圖像/o 72 84 96 108
標(biāo)準(zhǔn)圖庫/幅 25 29 33 37
相關(guān)度 0.9405 0.9331 0.9548 ? 0.9641
由表2可知被檢測圖像與標(biāo)準(zhǔn)庫庫中對應(yīng)位置圖像的相似度均大于設(shè)定閾值,可判斷該區(qū)域無缺陷。
為了更好的應(yīng)用此算法,可以制造一定的缺陷,比如在黑白線對處制造缺陷,通過計(jì)算它們的相關(guān)度為0.6204,小于所設(shè)定的閾值,可判斷該被檢測圖像有缺陷。如圖4所示是標(biāo)準(zhǔn)圖和被檢測圖像在87o時(shí)的檢測結(jié)果。
在整個(gè)檢測過程中,為保證旋轉(zhuǎn)步長角度的準(zhǔn)確性,需要對黑白線對區(qū)域經(jīng)過10次實(shí)測,每次垂直投影需時(shí)為0.34s確定,隨機(jī)擺放待檢產(chǎn)品在標(biāo)準(zhǔn)庫中最為匹配的位置時(shí),平均每次匹配需時(shí)約為0.16s,此算法比單獨(dú)使用SIFT算法大概節(jié)省0.5s的時(shí)間。
圖5 有缺陷時(shí)的圖像檢測
4.結(jié)論
針對產(chǎn)品表面缺陷檢測在現(xiàn)實(shí)生活中越來越普遍的實(shí)時(shí)性問題,本文在旋轉(zhuǎn)步長以及尋找最優(yōu)匹配方面作了一些研究。對復(fù)雜產(chǎn)品表面有若干黑白線對構(gòu)成的待檢區(qū)域,為了獲取產(chǎn)品表面的所有信息,用最小的旋轉(zhuǎn)步長得到了關(guān)于產(chǎn)品表面的信息的序列圖像,然后對待測圖像實(shí)施快速檢測。結(jié)果表明該方法提高了尋找最優(yōu)匹配圖像的速度。本文程序均在Matlab平臺驗(yàn)證,所有數(shù)據(jù)及圖片均來自實(shí)驗(yàn)結(jié)果。
參考文獻(xiàn)
[1]王耀南,李樹濤,毛建旭.計(jì)算機(jī)圖像處理與識別技術(shù)[M].北京:高等教育出版社,2001:56-89.
[2]張學(xué)武,丁燕瓊,閆萍.一種基于紅外成像的強(qiáng)反射金屬表面缺陷視覺檢測方法[J].光學(xué)學(xué)報(bào),2011,31(3):0312004.
[3]Xie,X.A review of recent advances in surface defect detection using texture analysistechniques[J].ELCVIA,2008,7(3).
[4]沈峘,李舜酩,柏方超等.路面車輛實(shí)時(shí)檢測與跟蹤的視覺方法[J].光學(xué)學(xué)報(bào),2010,30(4):1076-1083.
[5]韓躍平,韓焱,王黎明,潘晉孝.復(fù)雜產(chǎn)品內(nèi)部結(jié)構(gòu)裝配正確性X射線自動檢測系統(tǒng)的研究[J].兵工學(xué)報(bào),2012,33(7):881-885.
[6]Wang Wencheng,ChangFaliang.Aprecise eye localization method based on region projection[J].J Optoelectronics Laser,2011,22(4):618-622.