一種基于機(jī)器視覺的快速亞像素邊緣檢測與定位方法
【專利摘要】本發(fā)明公開了一種基于機(jī)器視覺的快速亞像素邊緣檢測與定位方法,包括以下步驟:步驟1:獲取檢測圖像;步驟2:圖像去噪預(yù)處理:步驟3:計算每個像素點水平方向上的梯度Gx和垂直方向上的梯度Gy;步驟4:計算每個像素點極坐標(biāo)下的梯度幅值G0和梯度方向Gθ;步驟5:確定每個像素點的鄰域像素點;步驟6:確定像素級邊緣點;步驟7:計算每個像素級邊緣點在8分梯度方向上的亞像素邊緣點到該像素級邊緣點的距離;步驟8:計算實際梯度方向Gθ上的亞像素邊緣點到像素級邊緣點的距離d;步驟9:采用余弦查找表法計算其實際梯度方向Gθ上的亞像素邊緣點的直角坐標(biāo),進(jìn)而實現(xiàn)圖像邊緣點的檢測和亞像素級定位。整個方法計算精度高、速度快。
【專利說明】一種基于機(jī)器視覺的快速亞像素邊緣檢測與定位方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于機(jī)器視覺圖像處理【技術(shù)領(lǐng)域】,涉及一種基于機(jī)器視覺的快速亞像素邊 緣檢測與定位方法。
【背景技術(shù)】
[0002] 在電子制造生產(chǎn)線PCB板的機(jī)器視覺質(zhì)量檢測和分揀系統(tǒng)中,圖像處理是一個非 常重要的環(huán)節(jié)。在視覺引導(dǎo)上料的過程中,需要獲取上料臺的實時圖像,采用快速準(zhǔn)確的圖 像處理算法,進(jìn)行目標(biāo)識別,獲得PCB板的數(shù)量、位置、姿態(tài)等信息;在質(zhì)量檢測過程中,采 用圖像拼接技術(shù),快速獲取PCB板的尺寸、偏移等信息并對粘貼在PCB板上的條形碼進(jìn)行缺 陷檢測,再根據(jù)檢測數(shù)據(jù)標(biāo)記結(jié)果;在視覺引導(dǎo)下料分揀的過程中,又需要對傳送裝置上的 PCB板進(jìn)行目標(biāo)識別。所用的圖像處理算法的快速精確與否,將直接影響整個系統(tǒng)的工作效 率和可靠性。
[0003] 邊緣存在于圖像的不規(guī)則結(jié)構(gòu)和不平穩(wěn)現(xiàn)象中,也即存在于信號的突變點處,往 往攜帶著圖像的大部分信息。這些邊緣點能夠給出目標(biāo)輪廓的位置,而這些輪廓常常包含 著我們在圖像處理時所感興趣目標(biāo)的重要特征,是形狀目標(biāo)檢測的基礎(chǔ),同時也是圖像分 割所依賴的重要特征,為人們描述或識別目標(biāo)提供了重要的特征信息。邊緣檢測是圖像處 理領(lǐng)域中最基本的問題,也是經(jīng)典的技術(shù)難題之一,它的解決對于進(jìn)行高層次的特征提取、 特征描述、目標(biāo)識別和圖像理解等有著重大的影響。因此,邊緣檢測在圖像分割、模式識別、 計算機(jī)視覺等眾多方面都有著非常重要的地位。
[0004] 在電子制造生產(chǎn)線PCB板的機(jī)器視覺質(zhì)量檢測和分揀系統(tǒng)中,要實現(xiàn)實時視覺引 導(dǎo)上料、分揀,快速精確的邊緣檢測與定位算法,對提高采用模板匹配的目標(biāo)識別速度和準(zhǔn) 確度有著至關(guān)重要的作用。在質(zhì)量檢測過程中,基于圖像拼接的尺寸測量的檢測速度和精 度,也在很大程度上依賴于邊緣檢測與定位的速度和精度。
[0005] 邊緣檢測的實質(zhì)是通過一些算法來提取圖像中灰度不連續(xù)的邊緣像素,而傳統(tǒng)邊 緣檢測算法是觀察圖像的每個像素在某個區(qū)域內(nèi)灰度的變化,如Sobel算子、Laplacian算 子和Robert算子等,形式簡單,易于實現(xiàn),但定位精度差,只有一個像素級的精度,實際上, 邊緣的位置存在于像素的任何位置,隨著工業(yè)檢測等對精度要求的不斷提高,傳統(tǒng)的邊緣 檢測算法已經(jīng)不能滿足實際需要。
[0006] 要提高圖像測量系統(tǒng)的測量精度,可以從兩個方面入手。一方面可以從硬件方面 入手,如選用高分辨率的攝像機(jī),采用頻率較高的圖像卡,提高傳感器的分辨率等,然而,用 提高的硬件性能來提高測量精度的方法代價較高,難度較大;另一方面可以利用目標(biāo)的成 像特性,采用亞像素定位技術(shù)提高測量定位的精度,如果用軟件方法將圖像上的特征目標(biāo) 定位在亞像素級別,就相當(dāng)于提高了測量系統(tǒng)精度。這種方法簡單、有效且成本低廉。因此, 亞像素技術(shù)具有十分重要的理論意義和實踐意義。
[0007] 目前國內(nèi)外研究的亞像素邊緣檢測理論與技術(shù),在數(shù)學(xué)上可以歸納為插值法、擬 合法、矩方法等三種類型。與像素級邊緣檢測方法不同,由于其定位精度和計算速度的矛 盾,實現(xiàn)亞像素邊緣檢測,面臨著以下主要技術(shù)難題:
[0008] (1)計算速度的要求。三種實現(xiàn)亞像素邊緣檢測的方法中,基于矩的方法包括基于 灰度矩的方法、基于空間矩的方法、質(zhì)心法等,其中基于灰度矩和空間矩的方法能獲得較高 的定位精度,但是由于其模板尺寸大,計算復(fù)雜等原因,計算速度相對較慢。
[0009] (2)定位精度的要求。基于插值的方法由于計算簡單,在亞像素邊緣檢測中獲得了 廣泛的應(yīng)用,這些插值方法包括線性插值法、二次拋物線插值法、三次樣條插值法、高斯插 值法等。其中線性插值法、二次拋物線插值法、三次樣條插值法計算速度較快,但定位精度 較低。由于高斯插值法中高斯函數(shù)最接近真實的邊緣模型,因而其不僅計算速度快,且能獲 得較高精度。
【發(fā)明內(nèi)容】
[0010] 本發(fā)明針對上述問題提出了一種基于機(jī)器視覺的快速亞像素邊緣檢測與定位方 法,解決現(xiàn)有的PCB板的圖像處理過程中檢測定位精度低及處理速度慢的問題。
[0011] 本發(fā)明的技術(shù)解決方案如下:
[0012] 一種基于機(jī)器視覺的快速亞像素邊緣檢測與定位方法,包括以下步驟:
[0013] 步驟1 :獲取待檢測的PCB板圖像:
[0014] 當(dāng)電子制造生產(chǎn)線上的PCB板機(jī)器視覺質(zhì)量檢測與分揀系統(tǒng)運行時,獲取待檢測 PCB板圖像;
[0015] 步驟2 :對待檢測的PCB板圖像進(jìn)行灰度化處理與去噪操作,獲得去噪圖像:
[0016] 采用基于模板操作的自適應(yīng)中值濾波方法去除噪聲的干擾;
[0017] 步驟3 :計算去噪圖像上每個像素點在水平方向上的直角水平梯度Gx和在垂直方 向上的直角垂直梯度Gy ;
[0018] 步驟4 :采用分象限的C0RDIC算法將每個像素點在直角坐標(biāo)下的直角水平梯度Gx 和直角垂直梯度Gy分別轉(zhuǎn)換為極坐標(biāo)下的極角梯度幅值&和極角梯度方向Ge ;
[0019] 步驟5 :根據(jù)步驟4獲得的每個像素點的極角梯度方向Ge,確定像素點在八分梯度 方向上的八分梯度鄰域像素點P+和P-;
[0020] 所述八分梯度方向是指將每個像素點的鄰域梯度方向劃分成均勻的八個梯度方 向,每個梯度方向?qū)?yīng)一個角度范圍,當(dāng)像素點的極角梯度方向角度落入某一八分梯度方 向的角度范圍中,則當(dāng)前八分梯度方向為該像素點的八分梯度方向;
[0021]
【權(quán)利要求】
1. 一種基于機(jī)器視覺的快速亞像素邊緣檢測與定位方法,其特征在于,包括以下步 驟: 步驟1 :獲取待檢測的PCB板圖像: 步驟2 :對待檢測的PCB板圖像進(jìn)行灰度化處理與去噪操作,獲得去噪圖像: 步驟3 :計算去噪圖像上每個像素點在水平方向上的直角水平梯度Gx和在垂直方向上 的直角垂直梯度Gy ; 步驟4:采用分象限的CORDIC算法將每個像素點在直角坐標(biāo)下的直角水平梯度Gx和直 角垂直梯度Gy分別轉(zhuǎn)換為極坐標(biāo)下的極角梯度幅值Gtl和極角梯度方向Ge ; 步驟5:根據(jù)步驟4獲得的每個像素點的極角梯度方向Ge,確定像素點在八分梯度方向 上的八分梯度鄰域像素點P+和P-; 所述八分梯度方向是指將每個像素點的鄰域梯度方向劃分成均勻的八個梯度方向,每 個梯度方向?qū)?yīng)一個角度范圍,當(dāng)像素點的極角梯度方向角度落入某一八分梯度方向的角 度范圍中,則當(dāng)前八分梯度方向為該像素點的八分梯度方向;
步驟6 :對每個像素點以及其八分梯度鄰域像素點,進(jìn)行梯度鄰域峰值檢測和左右鄰 域連接性判斷,確定去噪圖像中的像素級邊緣點; 步驟7 :利用對數(shù)高斯函數(shù)插值法計算每個像素級邊緣點在八分梯度方向上的理論亞 像素邊緣點,并計算該理論亞像素邊緣點到對應(yīng)像素級邊緣點的距離:T;
其中,G+和G_分別為像素級邊緣點對應(yīng)的八分梯度鄰域像素點P+和P_的極角梯度幅 值; 步驟8 :計算每個理論亞像素邊緣點在對應(yīng)像素級邊緣點極角梯度方向Ge上的實際亞 像素邊緣點位置與到對應(yīng)像素級邊緣點的距離d,包括以下步驟: 首先,通過理論亞像素邊緣點作到對應(yīng)像素級邊緣點極角梯度方向Ge所在直線的最 短距離點,作為實際亞像素邊緣點; 然后,利用8分梯度方向上的理論亞像素邊緣點到該像素級邊緣點的距離r與極角梯 度方向Ge計算實際亞像素邊緣點到像素級邊緣點的距離d; 步驟9 :對每一個實際亞像素邊緣點,利用實際亞像素邊緣點的極角梯度方向Ge和到 對應(yīng)像素級邊緣點的距離d,計算實際亞像素邊緣點的直角坐標(biāo)位置,實現(xiàn)邊緣檢測與定 位。
2. 根據(jù)權(quán)利要求1所述的基于機(jī)器視覺的快速亞像素邊緣檢測與定位方法,其特征在 于,所述步驟3中每個像素點直角水平梯度Gx和直角垂直梯度Gy,是使用Sobel算子與去 噪圖像中每個像素點進(jìn)行卷積操作得到,采用以下公式表示: Gx =_g(x-1,y_l)+g(x-1,y+1) _2g(X,y_l) +2g(X,y+1)_g(x+1,y_l)+g(x+1,y+1) Gy =g(x-1,y_l)_g(x+1,y_l) +2g(x-1,y) _2g(x+1,y)+g(x-1,y+1)_g(x+1,y+1) 其中,g(x,y)為去噪圖像的灰度函數(shù),(x,y)表示像素點坐標(biāo);Gj^PGy均為16位二進(jìn) 制數(shù)。
3. 根據(jù)權(quán)利要求2所述的基于機(jī)器視覺的快速亞像素邊緣檢測與定位方法,其特征在 于,所述步驟4中,采用分象限的CORDIC算法對每個像素點(x,y)在直角坐標(biāo)下的水平梯 度Gx和垂直梯度Gy轉(zhuǎn)換為極坐標(biāo)下的梯度幅值Gtl和梯度方向Ge的具體過程如下: ① 確定梯度方向Ge所在的象限,包括以下步驟; 步驟a:記錄Gy的最1?位即符號位A1和Gx的最1?位即符號位A2,A1 = 0表不Gy > 0,A1 = 1 表示Gy < 0,A2 = 0 表示Gx 彡 0,A2 = 1 表示Gx < 0 ; 步驟b:對Gy和Gx取絕對值,取Rtl =IGxI,Stl =IGyI,Rtl和Stl均為16位二進(jìn)制數(shù),將Rtl和Stl作為CORDIC算法的輸入; 步驟c:根據(jù)A1A2確定像素點(x,y)所在的象限; ② 執(zhí)行CORDIC算法,細(xì)化梯度方向,包括以下步驟: 步驟a:令i= 0, (Ii = 1,N= 6 ; 其中,i為迭代次數(shù),(Ii為迭代方向控制位,N為迭代終止條件; 步驟b:Ri+1 =RJc^SiAi,Si+1 =Si-C^RiAi; 其中,為乘號;"》"表示邏輯右移運算,Si?i是指將Si右移i位,Ri和Si分別表 示第i次循環(huán)后得到的值; 步驟c:將Si+1的最高位記為符號位Bi+1,若Si+1彡0則Bi+1 = 1且令di+2 = 1,若Si+1〈0 貝IjBi+1 = 0 且令di+2 = -1 ; 步驟d:令i=i+1,若i〈N,返回步驟b,否則結(jié)束; ③ 將B1B2B3B4B5進(jìn)行二進(jìn)制編碼,將二進(jìn)制編碼轉(zhuǎn)化為0° -90°中對應(yīng)的角度,即得到 |Gy| 和 |GX| 的夾角Z0 =arctan(|Gy|/|Gx|); ④ 根據(jù)A1A2對應(yīng)的象限和Ze計算得到Ge ; ⑤ 計算梯度幅值Gtl :梯度幅值Gtl =K#R4,K為CORDIC算法中的校正因子,取K= 1。
4. 根據(jù)權(quán)利要求3所述的基于機(jī)器視覺的快速亞像素邊緣檢測與定位方法,其特征在 于,所述步驟6中像素級邊緣點的確定過程如下: 步驟a:判斷像素點(x,y)的梯度幅值Gtl是否大于下限閾值T1,若Gtl >T1,則轉(zhuǎn)步驟b, 否則將像素點(x,y)標(biāo)記為非邊緣點,并結(jié)束本次判斷并返回; 步驟b:判斷像素點(x,y)的梯度幅值Gtl是否為局部極大值:即若Gtl >G_且Gtl彡G+, 則像素點(x,y)的梯度幅值Gtl是局部極大值,轉(zhuǎn)步驟c,否則轉(zhuǎn)步驟d; 其中,G+和G_分別為像素級邊緣點對應(yīng)的八分梯度鄰域像素點P+和P_的極角梯度幅 值; 步驟c:判斷像素點(x,y)的梯度幅值Gtl是否大于上限閾值T1 :若Gtl >Th,則將像素點 (x,y)標(biāo)記為像素級邊緣點P,否則轉(zhuǎn)步驟d; 步驟d:判斷像素點(x,y)的八分梯度左鄰域像素點P_和八分梯度右鄰域像素點P+是 否是已確定的像素級邊緣點,若是,則確定像素點(X,y)為像素級邊緣點,記為P,否則像素 點(x,y)為非像素級邊緣點。
5. 根據(jù)權(quán)利要求1所述的基于機(jī)器視覺的快速亞像素邊緣檢測與定位方法,其特征在 于,所述步驟5中確定像素點在八分梯度方向上的八分梯度鄰域像素點P+和P_的具體過程 如下: ① 獲得像素點(X,y)梯度方向Ge的高四位G4h ; ② 將G4h的二進(jìn)制編碼,按照下表查找左右鄰域像素位置的地址索引step,得到八分梯 度領(lǐng)域像素點的坐標(biāo);
其中,col為輸入圖像矩陣的列數(shù)。
6. 根據(jù)權(quán)利要求1所述的基于機(jī)器視覺的快速亞像素邊緣檢測與定位方法,其特征 在于,所述步驟8中實際亞像素邊緣點位置與到對應(yīng)像素級邊緣點的距離d的計算方法如 下:
其中,0即為Ge對應(yīng)的角度。
7. 根據(jù)權(quán)利要求6所述的基于機(jī)器視覺的快速亞像素邊緣檢測與定位方法,其特征在 于,所述亞像素級邊緣點的直角坐標(biāo)(xs,ys)的計算方法如下:
【文檔編號】G06T7/00GK104268857SQ201410469840
【公開日】2015年1月7日 申請日期:2014年9月16日 優(yōu)先權(quán)日:2014年9月16日
【發(fā)明者】王耀南, 李康軍, 陳鐵建, 吳成中, 馮明濤 申請人:湖南大學(xué)