袁良祺,田暢,徐充,馬耀
(北京信息科技大學儀器科學與光電工程系,北京100192)
隨著數(shù)字化技術(shù)在當今生活中占得比重越來越高,數(shù)字圖像處理的必要性日益增加?!稊?shù)字圖像處理》是隨著計算機和信息技術(shù)發(fā)展應(yīng)運而生的一門新興課程,已經(jīng)成為信息類專業(yè)本科生的重要專業(yè)課[1]。課程中介紹各種模板、算子的基本概念及運作規(guī)律,大多數(shù)學生只能明白對于數(shù)字圖像處理的基本思路以及采用的各種方法但是未能實際動手操作,由此2019 年北京信息科技大學開展《視覺檢測系統(tǒng)》課程設(shè)計,此課程設(shè)計是為了配合課程的展開與實踐所搭配的一門實踐課程,以鍛煉學生的動手實踐、自主思考以及獲取信息的能力為主要目的展開。
MATLAB 有強大的數(shù)字圖像處理工具箱,用它進行實驗,省去了復雜的編程過程,能大大地簡化程序,從而把精力集中在算法的研究上,這些特點特別適合圖像處理實驗教學[1]。利用MATLAB GUI 進行視覺檢測系統(tǒng)的課程設(shè)計好處在于其實時性高、互動性強、自由度高、模塊性高,采用GUI 交叉設(shè)計的方法可實現(xiàn)多個模塊進行互通互聯(lián),可以實現(xiàn)主GUI 及其附屬功能GUI 的統(tǒng)一調(diào)配管理,展現(xiàn)了其強大的用戶互動能力。
根據(jù)使用者對精度的需要越來越高,計算機對于處理圖像聚焦狀態(tài)的要求也水漲船高。圖像的聚焦狀態(tài)也可以稱作是圖像模糊化的狀態(tài),這種模糊化的狀態(tài)具體可以體現(xiàn)在圖像的邊緣點、線、尖的過渡是否明顯,如果過度明顯則清晰,如果過度不明顯則模糊。一般情況下清晰圖像的邊緣特征點過渡一般利用2-3 個像素點完成,不清晰圖像的邊緣特征點利用5-6 個像素點完成,計算相鄰像素點數(shù)值的差異大小,即可判斷圖像清晰與否,由此可以設(shè)計調(diào)焦函數(shù)評價原理。
七種清晰度評價函數(shù)原理及判據(jù)公式如下[2]:
(1)灰度差函數(shù)(difference_absolute):
(2)邊緣強度函數(shù)(edge_intensity):
(3)平均梯度函數(shù)(avg_gradient):
(4)梯度向量平方函數(shù)(gradient_square):
(5)絕對方差函數(shù)(absolute_variance):
(6)Roberts 梯度和函數(shù)(roberts_gradient):
(7)Brenner 函數(shù)(brenner):
根據(jù)這七種清晰度評價函數(shù)對同一幅圖像的不同模糊狀態(tài)進行評價,可以得到七種清晰度評價曲線,根據(jù)這七種清晰度評價函數(shù)曲線可以計算數(shù)個圖像的清晰度并且檢驗7 種方法之間的優(yōu)劣。本文采用不同大小的均值模板對對同一張圖像進行濾波可以得到同一張圖像的不同濾波狀態(tài),利用fspecial 函數(shù)創(chuàng)建18 個均值模板,分別是[1,1][2,2][3,3][4,4][50,50][6,6][7,7][8,8][9,9][10,10][11,11][12,12][13,13][100,100][15,15][16,16][17,17][18,18],再使用imfilter 對圖像進行均值濾波,函數(shù)這樣就可以得到模糊度不同的圖像,如圖1 所示,可以觀察出1×1 均值濾波后的圖像最清晰,100×100 均值濾波后的圖像最模糊。
圖1 使用不同濾波模板對同一圖像進行濾波
為了利用七種清晰度評價函數(shù)進行評價,驗證評價的重復性及再現(xiàn)性,利用評價函數(shù)對每張圖片評價兩次。在清晰度評價時可以選擇對部分圖像進行評價也可以對整體圖像進行評價,對于部分圖像進行評價時計算速度較快,對于整體圖像進行評價時靈敏度較高,這在實際運用中具有較大的影響,本系統(tǒng)選擇整體圖像進行清晰度評價。
如圖2 所示為7 種清晰度評價不同模糊狀態(tài)函數(shù)曲線,在第5 張圖像設(shè)置50×50 均值濾波后的圖像以及第15 張圖像設(shè)置100×100 均值濾波這兩張最模糊的圖像清晰度評價曲線中體現(xiàn)為兩個向下的尖刺,最不清晰的圖片其評價數(shù)值低。其他圖片從1×1、2×2 到18×18 的均值濾波模板慢慢的遞增,從圖中可以看出圖片的清晰度也慢慢的下降。但是這種下降不呈線性的關(guān)系,對于清晰度評價值的變化,這是一種曲線的關(guān)系,設(shè)置的均值濾波模板的大小越大所呈現(xiàn)的圖片清晰度的對比就越來越小;設(shè)置的均值濾波模板的大小越小所呈現(xiàn)的圖片清晰度的對比就越來越大。所以可以得出一個結(jié)論,清晰度評價函數(shù)對于邊緣細節(jié)部分清晰與模糊的對比響應(yīng)較大,而對于一般模糊和很模糊的對比響應(yīng)較小。從設(shè)置50×50 的均值濾波模板和設(shè)置100×100 的均值濾波模板的清晰度評價相差不大可以得出此推論,評價函數(shù)認為這兩張圖片的模糊程度差不多。
圖2 7種清晰度評價函數(shù)評價不同模糊狀態(tài)的整體圖像
另外,觀察各個函數(shù)可以發(fā)現(xiàn),對于圖像模糊化的清晰度評價函數(shù)響應(yīng)最慢的是邊緣強度函數(shù),而對清晰度變化響應(yīng)最快的清晰度評價函數(shù)是梯度向量平方。而且,通過觀察各個點的坐標可以發(fā)現(xiàn),梯度向量平方評價的第二張圖的清晰度對應(yīng)的幾乎是邊緣強度函數(shù)的第18、19 張圖像,但是這樣的線性明顯不符合實際情況,所以簡單的通過兩種清晰度評價函數(shù)橫向比較一幅圖片的清晰度的時候顯然是不對的,所以在評價一幅圖片清晰度的時候應(yīng)該結(jié)合多種清晰度評價縱向比較。如果只評價一幅圖像是否清晰的時候得到的數(shù)據(jù)是不具備理論依據(jù)的。
綜上,在進行圖像清晰度評價的時候?qū)τ诓煌男枨髴?yīng)該選擇不同的圖像。例如:需要對比少量幾張清晰照片的清晰度的時候或者在相機進行調(diào)焦時,需要有高強度的清晰度的反應(yīng),此時就可以選擇梯度向量平方函數(shù)進行清晰度評價;在對比大量圖片的清晰度的變化趨勢的時候可以使用邊緣強度清晰評價函數(shù),這樣利于對比清晰以及模糊不同程度時的趨勢。另外,通常情況下還可以針對不同場合使用其他多種的清晰度評價函數(shù)。
圖像的濾波方法主要分為空域濾波和頻域濾波兩種??沼驗V波和頻域濾波所側(cè)重點不同,空域濾波側(cè)重像素點與像素點之間的數(shù)值差異,頻域濾波側(cè)重噪聲之間的頻率關(guān)系,在選擇濾波方法是需要根據(jù)實際使用情況選擇濾波方法。
空域濾波是使用各種大小不同、數(shù)值不同濾波模板對圖像區(qū)域內(nèi)每個像素點的值相乘再相加,并將值賦給中心像素點。常見的空域濾波的方法有均值濾波法、中值濾波法、多圖像平均法等方法,空域濾波針對的噪聲主要為隨機噪聲、椒鹽噪聲、高斯噪聲等。
鄰域平均法計算公式:
中值濾波法計算公式:
多圖像平均法計算公式:
頻域濾波是使用各種截止頻率不同、平滑程度不同、形狀不同的濾波圓或其他任意圖像遮擋頻譜圖進行濾波。常見的頻域濾波的方法有理想低通濾波、巴特沃斯低通濾波、高斯低通濾波,針對的噪聲主要為有特定頻率的噪聲,例如圖像中的正弦波噪聲。如圖3為實際運用較多的二階巴特沃斯低通濾波器二維以及三維圖像,選擇巴特沃斯低通濾波器的原因是它的通帶與阻帶之間變化幅度較為平滑,在高低頻率的變化不是特別明顯,相對于理想低通濾波器有一個相對較長的過渡帶。通過實驗對比可發(fā)現(xiàn)二階巴特沃斯低通濾波器的處理結(jié)果比理想濾波器的要好,但巴特沃斯低通濾波器階數(shù)增高時的振鈴現(xiàn)象也會對圖像質(zhì)量產(chǎn)生影響。
理想低通濾波計算公式:
巴特沃斯低通濾波計算公式:
高斯低通濾波計算公式:
圖3 截止頻率為10的二階巴特沃斯低通濾波器示意圖
圖像的灰度圖在某種程度上反映了圖像中亮度的變化,直觀的展現(xiàn)了圖像明暗對比度,通過處理圖像灰度圖可以相應(yīng)地提升圖像的亮度、對比度、清晰度以及提高獲取圖像信息的簡便性,由此對于圖像灰度圖的處理在數(shù)字圖像處理中占據(jù)很重要的位置,所以在處理圖像時經(jīng)常使用到直方圖均衡化、灰度切割、二值化等方法,這些方法較為簡單在此不過多贅述而只介紹利用線性函數(shù)變換增強圖像對比度的方法。
一般情況下圖像的灰度圖中高低灰度值占比越大,圖像的對比度越強,所以常常需要對數(shù)字圖像擴展高低灰度值并壓縮中間灰度值。擴展方法可以根據(jù)線性變換函數(shù),線性變換函數(shù)的好處在于比較直觀,且可以人為地規(guī)定灰度變換的區(qū)域以及變換值的大小。根據(jù)本系統(tǒng)要求增加圖像對比度,可以使高低灰度值線性變化直線斜率大于1,使中灰度值線性變化直線斜率小于1,如圖4 所示線性變換曲線示意圖。
視覺檢測系統(tǒng)的圖像尺寸單位以像素為單位,圖像系統(tǒng)的測量主要在于對圖像像素點的處理及計算,而實際生產(chǎn)生活中所運用的國際標準尺寸單位是mm。圖像系統(tǒng)的標定是數(shù)字圖像空間與實際空間聯(lián)系的橋梁,它將視覺檢測中的像素與實際生活中的毫米極高準確性的對應(yīng)起來,這就可以采用標尺的參數(shù)利用攝像機拍攝物體用于計算三維空間中物象的位置、大小、形狀參數(shù)等信息。
圖4 擴展高低灰度值并壓縮中間灰度值線性變換曲線
標定的核心在于獲得圖像最外層坐標點,如圖5所示,先對采集到的圖像進行灰度變化二值化等預處理,在通過邊緣檢測獲得圖像的邊緣后跟蹤圖像的外部邊緣輪廓,可以得到圖像外部邊緣輪廓點,在對點進行計算則可以得到零件圖像素點長寬,并與實際已知標尺對應(yīng)即可實現(xiàn)圖像系統(tǒng)的標定。
常用的邊緣檢測方法有:Roberts 算子、Sobel 算子、Prewitt 算子、Kirsch 算子、LOG(高斯拉普拉斯)算子、Canny 算子[3]和腐蝕算法等。在對比多種檢測算子后,本設(shè)計中采用Canny 算子提取圖像邊緣,Canny 算子邊緣檢測受噪聲干擾小,并且檢測圖像中弱邊緣能力強。這種算法優(yōu)點在于其使用雙閾值方法針對強邊緣和弱邊緣分別進行檢測處理。Canny 算子也是目前邊緣檢測種最常用也是效果最理想的邊緣檢測算法。
圖5 系統(tǒng)標定程序流程圖
本文介紹了一種數(shù)字圖像處理系統(tǒng)可以對數(shù)字圖像進行調(diào)焦評價、空頻域濾波、增強對比度并完成系統(tǒng)的標定。論述各個調(diào)教函數(shù)的實現(xiàn)方法,進行空頻域濾波應(yīng)用領(lǐng)域的分析判斷,并采用線性變換曲線增強圖像的對比度,完成了系統(tǒng)的標定。分析并研究多個問題不同方法的優(yōu)缺點,表明使用者應(yīng)根據(jù)場合不同采取不同的方法對數(shù)字圖像進行處理。另外在大多數(shù)情況下一種方法并不能很好地完成既定的目標,應(yīng)根據(jù)實際情況采取多種方法疊加運用。