趙子潤 高保祿 郭云云 田力
(太原理工大學軟件學院 山西省太原市 030024)
圖像邊緣中包含大量圖像基本特征信息,為圖像分析及識別提供數(shù)據(jù)基礎?,F(xiàn)階段圖像邊緣檢測技術在工業(yè)生產(chǎn)領域得到廣泛應用,隨著工業(yè)生產(chǎn)對精度要求的增加,以往基于Canny 算法、Sobel 算法的圖像邊緣檢測技術,在特征信息提取準確性及抗外部干擾能力等方面受到更大挑戰(zhàn)。因此有必要在延續(xù)以往邊緣檢測技術優(yōu)勢的同時,對其進行優(yōu)化升級,更好滿足工業(yè)生產(chǎn)活動對圖像檢測的需求。
判斷圖像邊緣檢測技術檢測效果的標準包括邊緣檢測錯誤率、邊緣檢測定位與實際邊緣中心的重合度以及邊緣檢測受噪聲的影響程度?;贑anny 算法的圖像邊緣檢測在從目標圖像中提取對相關實驗或分析有用的特征信息,可最大限度縮減目標數(shù)據(jù)體量,相較于其他算法,該檢測技術在信噪比及檢測精度方面均存在顯著優(yōu)勢,因此在實際圖像檢測中的應用非常廣泛。Canny 算法在進行圖像邊緣檢測時,依次經(jīng)歷以下五個步驟:
(1)利用Gauss 濾波器,對目標圖像做平滑化處理,降低因噪聲影響而引發(fā)的檢測誤差,有公式:。
(2)確定目標圖像像素點的方向及梯度強度,Canny 算法檢測中圖像邊緣方向并不確定,設x、y 軸上信息分別為Gx和Gy,則圖像邊緣像素點的方向及梯度強度可表示為。
(3)通過非極大值抑制,去除圖像邊緣檢測中的雜散響應,其中,非極大值抑制為一種邊緣稀疏方式,一般作用于圖像的瘦邊緣,即當圖像邊緣僅存在單個響應時,利用該稀疏方式可將除最大值以外的梯度值處理為0[1]。
(4)使用雙閾值法,區(qū)分圖像真實及虛假邊緣。
(5)抑制圖像單獨存在的弱邊緣,完成對圖像邊緣特征信息的檢測。
弱邊緣與強邊緣為相對概念,強邊緣來自于真實的圖像邊緣信息,其可被視為真正的圖像邊緣。而弱邊緣中的像素可能來自真實邊緣,也可能來自造成及顏色的影響。因此需要盡可能抑制弱邊緣,提高圖像邊緣檢測精度。
分析傳統(tǒng)Canny 算法的圖像邊緣檢測流程能夠發(fā)現(xiàn),圖像平滑降噪處理成為影響圖像邊緣檢測精度的重要因素。傳統(tǒng)Canny 算法利用高斯濾波器完成平滑降噪處理,因此濾波效果又受到高斯濾波器方差的影響。例如當目標圖像范圍內存在強噪聲時,方差較高,易引發(fā)圖像細節(jié)信息丟失問題。由于傳統(tǒng)Canny 算法中高斯濾波器的方差固定,因此無法依照噪聲情況做適當調整,影響降噪效果的發(fā)揮。另外,傳統(tǒng)Canny 算法圖像像素點的方向及梯度強度計算在2×2 鄰域內開展,因該范圍非常小,也會引發(fā)計算精度降低的問題,再加上該算法需要借助雙閾值確定圖像真實邊緣,而該閾值為人工設定,在統(tǒng)一性和標準性上很難被保證,導致各目標圖像邊緣強度不均,圖像邊緣檢測自適應性不強。
針對以上不足,本文結合前人研究文獻,重點對傳統(tǒng)Canny 算法圖像邊緣檢測技術的濾波處理及雙閾值處理步驟進行優(yōu)化設計。
2.1.1 引入雙邊濾波降噪技術
傳統(tǒng)Canny 算法在對圖像進行濾波降噪處理時,易因噪聲干擾出現(xiàn)弱邊緣,因此決定在原有算法的基礎上,引入局部自適應閾值化方法,進行濾波降噪改進。
(1)獲取目標圖像的梯度矩陣以及梯度均值和方差,若方差大于H,則繼續(xù)下一步,若方差小于H,則在高斯濾波的基礎上進行后續(xù)處理。其中,梯度均值的計算公式為:;梯度方差的計算公式為:。
(2)將目標圖像梯度矩陣Gra(i,j)平均分為四部分,逆時針計算各部分的梯度均值及方差,若滿足方差小于H 的要求,則可進行下一步處理;若方差大于H,繼續(xù)對子塊進行分解,重復以上步驟。
(3)得到圖像的局部閾值,對于全部滿足方差小于H 的梯度子塊,利用Otsu 獲取其最佳分割閾值,以得到與子梯度矩陣尺寸相同的閾值矩陣。檢查是否有子矩陣未經(jīng)過前一步的分解處理,若有,則重新執(zhí)行第二步。最終,由雙邊濾波器輸出的像素可表示為:式中w(i,j,u,v)、f(u,v)分別表示權重系數(shù)和對應像素,而權重系數(shù)與定義域核及值域核有關。以上各項參數(shù)的具體值共同決定了雙邊濾波的濾波降噪效果。
2.1.2 引入自適應閾值處理技術
結合前人文獻分析成果,采用最大熵自適應閾值進行圖像邊緣檢測,可得到更優(yōu)的檢測成果。例如,設目標圖像由m×n 個像素點構成,并以灰度級{0,1,…,m,…,L-1}表示,設ni為灰度級i 的像素個數(shù),pi為灰度級i 的概率。任選閾值k,以此為基礎將目標圖像分割處理為A1和A2,分別由灰度值在[0,k]和[m+1,L-1]內的像素點構成,因此像素被分配至A1的概率為相應的像素被分配至A2的概率P2(m)=1-P1(m)[2]。可得到A1 與A2 的熵為,最大熵為每個m均對應一個最大值,最大值則為目標圖像的分割閾值,此時的信息增益最低。因此在圖像邊緣檢測中,可實現(xiàn)以高閾值為最大值,以通過二次分類的m 為低閾值,得到目標圖像的自適應閾值。
為驗證經(jīng)優(yōu)化后的Canny 算法圖像邊緣檢測效果,設定Inter 3.0Ghz 四核CPU、8GB 內存、Matlab2015b 的檢測環(huán)境,對面向信息細節(jié)化的圖像邊緣檢測技術做仿真分析,以找出該技術較傳統(tǒng)Canny 算法的優(yōu)勢。邊緣檢測效果的判斷指標包括信噪比、定位精度及單邊緣響應。在傳統(tǒng)Canny 算法圖像邊緣檢測中,信噪比、定位精度及單邊緣響應分別為14.7023、0.0047、0.1265;在面向信息細節(jié)化的圖像邊緣檢測中,以上三項指標分別為14.8189、0.0055和0.1393。其中,優(yōu)化后的信噪比要高于傳統(tǒng)Canny 算法,且信噪比越高,圖像邊緣檢測中圖像的失真度越低,因此說明優(yōu)化后的檢測技術可更準確提取圖像邊緣信息。另外,優(yōu)化后的定位精度更高,說明優(yōu)化后的檢測技術在圖像定位精度及圖像邊緣連續(xù)性上更優(yōu)。而單邊緣響應也更高,說明優(yōu)化后響應效果降低,主要受噪音的影響??傮w看來,面向信息細節(jié)化的圖像邊緣檢測技術在圖像檢測精度上優(yōu)勢明顯。
以工業(yè)零件的分類識別為例,介紹面向信息細節(jié)化的圖像邊緣檢測技術的具體應用。
設計基于優(yōu)化Canny 算法圖像邊緣識別技術的工件輪廓分類識別系統(tǒng)。該系統(tǒng)由圖像信息采集、信息通信、圖像處理等模塊構成。其中,圖像信息采集模塊使用型號為VD040SM 的工業(yè)相機,配合型號為M0824-MPW2 的低畸變鏡頭,獲取工件圖像特征信息。圖像處理模塊的核心為Labview,用以對目標圖像的特征信息進行識別處理。數(shù)據(jù)通信模塊則將提取到的目標信息傳輸至生產(chǎn)流程中的機械手,精確完成工件分揀工作。
3.2.1 灰度化處理
圖像信息采集模塊獲取的工件圖像為真彩色形式,即常見的RGB 圖像,此類圖像中信息點構成非常復雜,但其細節(jié)信息并不完全有效。因此在工件邊緣識別中,首先通過灰度化處理,清除圖像中的冗余信息,以提高圖像識別效率?;叶然饕宄齊GB 圖像中的色彩信息,其亮度級別在0 ~225 之間,對應黑色到白色之間的不同灰度??紤]到工件邊緣識別的實際需求,決定以加權平均的方式確定圖像灰度比,有公式Y=0.299R+0.587G+0.114B。Labview 中含有顏色轉換功能,利用既定的灰度處理函數(shù)及算法,即可完成原始圖像的灰度化處理。
3.2.2 二值化處理
經(jīng)灰度化的圖像中各像素點的灰度范圍均在0 ~255 內,通過閾值選取即可得到二值化圖像。將像素點中灰度值大于等于閾值的像素劃分為同一類,其他像素則為另一類,量類像素分別取值。經(jīng)過以上處理,圖像中每個像素點均對應兩個灰度值,即二值化處理。二值化處理的主要目的是,依照灰度級進行圖像分割,使目標圖像與背景間完全剝離,可最大限度減少數(shù)據(jù)處理量,同時又可確保工件輪廓信息的完整性,不改變其基本特征。
3.2.3 膨脹腐蝕處理
工件圖像邊緣檢測中會出現(xiàn)圖像邊緣斷裂的現(xiàn)象,并受到噪聲的干擾而影響檢測精度。通過圖像的膨脹和腐蝕處理,可重新連接圖像邊緣斷裂點,同時幫助排除背景噪聲的影響。膨脹處理與腐蝕處理依次進行,其原理對應前文介紹的圖像平滑處理,可優(yōu)化圖像邊緣檢測效果。
3.2.4 濾波處理工件圖像采集過程中受噪聲的干擾程度較大,且噪聲帶有明顯的隨機性,常見噪聲包括椒鹽噪聲、脈沖高斯噪聲等,因此在傳統(tǒng)Canny 算法圖像邊緣檢測技術中,常使用椒鹽濾波器或高斯濾波器進行濾波處理。在工件邊緣識別中選用粒子濾波的方式,該方式使用粒子集表示概率,其適用的空間模型較多,通過計算樣本均值,可減少積分計算的麻煩,以得到當系統(tǒng)達到最狀態(tài)時的最小方差[3]。若粒子數(shù)量足夠多,可表示任意的概率分布密度。粒子濾波法可有效應對噪聲隨機性的特點,其不受高斯分布的限制,因此分布形式較高斯模型更多,可提高檢測精度。
3.2.5 邊緣特征提取
工件輪廓可看成全部邊緣的整合,將各類邊緣疊加后得到工件的實際輪廓。利用Canny 算法進行目標圖像處理,可將圖像邊緣檢測轉化為單位函數(shù)極大值的計算,在獲取調工件邊緣圖像后,從中提取其輪廓特征信息,與模型中的標準信息做對比,可判斷該工件是否符合當前的分揀要求,進而準確完成工件的識別與分類。
工件輪廓特征主要有以下四項:一是面積特征。梳理圖像全部像素點信息,位于輪廓內的像素計1,可得到工件的輪廓面積。二是周長特征。計算輪廓上相鄰點間距離并疊加,可得到輪廓的周長。三是Hu 矩相似度特征。Hu 矩相似度特征需通過輪廓二階及三階歸一化中心矩的線性組合獲得,比較輪廓Hu 不變矩及模型中信息,可得到Hu 矩的相似度。第四,最小包圍矩形特征。計算工件輪廓最小包圍矩形,對比輪廓相鄰邊的邊長、矩形面積以及矩形面積與輪廓面積的比值,可準確判斷工件是否為目標工件。工件輪廓特征識別過程中,需要將實際特征值與模型特征值相對比,進而對工件進行判斷,因此需要搭建典型特征模型庫,結合具體工況,對典型特征數(shù)據(jù)做完善和更新,不斷擴充數(shù)據(jù)庫中的標準化信息,以提高工件識別精度及可有效識別的工件范圍。完成單一工件輪廓特征識別后,若有需求將其保存為標準模型,則將所提取的輪廓特征值錄入到模型數(shù)據(jù)庫當中。若無需求,則依照既定流程輸出識別結果,完成之后的機械手命令及分揀動作。
對基于改進后Canny 算法的工件分類識別系統(tǒng)做實驗驗證,分析工件識別精度是否能達到實際生產(chǎn)的要求。測試過程中,劃定被檢測區(qū)域,并使用矩形框框選,對該區(qū)域內的工件進行輪廓識別和數(shù)量統(tǒng)計,可實現(xiàn)多個零件的同時識別。若識別對象為單一工件,則使用紅點標注該工件的重心,在矩形框內呈現(xiàn)該工件輪廓重心的坐標。對處于不同位置的工件進行反復多次檢測,輸出相應的檢測結果。通過對比發(fā)現(xiàn),該分類識別系統(tǒng)的工件輪廓檢測可靠度較高,基本達到設計預期。經(jīng)計算,單個工件的平均識別實時間在0.32s左右,可滿足實際生產(chǎn)條件下,工件識別分類對效率的要求[4]。另外,在系統(tǒng)連續(xù)運行試驗中,當系統(tǒng)不間斷運行8h 后,其工件輪廓檢測精度依然較高,且與實驗初期未產(chǎn)生明顯差異,因此可判斷該系統(tǒng)的運行穩(wěn)定性較強,且檢測結果可靠,具備較高的實用價值。
現(xiàn)象信息細節(jié)化的圖像邊緣檢測技術,在延續(xù)傳統(tǒng)Canny 算法邊緣檢測技術優(yōu)勢的同時,可提供更高的圖像邊緣檢測精度和抗干擾能力,其研究和應用對于進一步促進圖像識別技術的發(fā)展意義重大。將信息細節(jié)化圖像邊緣檢測技術融入到實際工業(yè)生產(chǎn)當中,幫助提高生產(chǎn)效率。