董美娜,劉笑楠
(沈陽(yáng)工業(yè)大學(xué),遼寧 沈陽(yáng) 110870)
MATLAB不僅簡(jiǎn)化了代碼還實(shí)現(xiàn)了圖像的整體掃描和編號(hào)問(wèn)題。目前MATLAB已經(jīng)實(shí)現(xiàn)對(duì)色塊的編號(hào)、顯示和保存圖片。經(jīng)查詢(xún)了解到,java還可以對(duì)MATLAB進(jìn)行調(diào)用,選MATLAB進(jìn)行圖像處理,僅利用java開(kāi)發(fā)app,后期只需兩項(xiàng)對(duì)接相對(duì)接即可。MATLAB將原圖首先轉(zhuǎn)化成灰度圖,通過(guò)對(duì)灰度圖進(jìn)行分級(jí),生成偽彩色圖,最后形成油畫(huà)畫(huà)布,在油畫(huà)畫(huà)布對(duì)色塊進(jìn)行編號(hào)與顯示,發(fā)現(xiàn)在處理對(duì)比度高的圖片時(shí),數(shù)字油畫(huà)的色塊邊界劃分較明顯、細(xì)致,但對(duì)于對(duì)比度低的圖像處理效果非常差,色塊分區(qū)不明顯。利用線性回歸能夠處理圖像邊緣的參差不齊的毛刺點(diǎn),讓對(duì)比度低的色塊邊緣分區(qū)細(xì)致、明顯。
圖像平滑旨在消除灰圖中的噪聲,提升圖像的畫(huà)質(zhì)讓圖像由模糊變得清晰,凸顯圖像的邊緣特征,便于后續(xù)的圖像的分析。濾波處理噪聲要依據(jù)噪聲的特性而采取不同的消除噪聲的方式。不同的噪聲應(yīng)采取的平滑措施也不同。
單元像素值和相鄰近單元的像素值很相似,但是鄰近像素與噪聲的灰度卻又很大的差別,可采取鄰域平均法中的3×3均值濾波、選擇式掩膜平滑的方法來(lái)消除噪點(diǎn)。
1.1.1 3×3均值濾波法
假設(shè)g(x,y)為所給的帶有噪聲的原圖,則設(shè)經(jīng)過(guò)灰度處理的圖像為h(x,y)。在g(x,y)上的每一個(gè)像素選取一定尺寸大小的鄰域,且通過(guò)鄰域中像素的平均灰度來(lái)替換鄰域的像素值,置換后的鄰域坐標(biāo)為h(x,y)。選擇鄰域可以依據(jù)以下三個(gè)模板:
圖1 鄰域面積選取模板Fig.1 Template selection for neighborhood area
均值濾波方法是通過(guò)降低圖像像素使圖像模糊來(lái)削減噪聲的,鄰域選取的面積越大,削弱噪聲的效果越明顯,但是圖像也會(huì)因?yàn)橄袼氐慕档投:脜柡?。如,選取1/5的鄰域面積的圖像要比1/16鄰域面積的圖像模糊得強(qiáng)烈。
圖2 均值濾波平均后Fig.2 Average filtering after mean filtering
1.1.2 選擇式掩膜平滑法
圖像的背景與目標(biāo)具有不同均值的方差和平均值,因此均值濾波會(huì)使擁有不同統(tǒng)計(jì)特性的背景和目標(biāo)平均化,為了使圖像中的邊緣凸顯,需要進(jìn)行局部的平滑濾波。
圖3 窗口模板Fig.3 Window template
圖4 原圖Fig.4 Original
首先,選取5 ×5的模板窗口,在窗口內(nèi)找到中心像素點(diǎn)并以此為基點(diǎn),設(shè)基點(diǎn)坐標(biāo)為f(i,j),設(shè)計(jì)出如圖(3)九中屏蔽窗口,并計(jì)算出它們的平均值及方差,選取方差值最小的屏蔽窗口平均化,能夠保留豐富的邊緣信息。
圖5 均值與方差計(jì)算公式Fig.5 Calculation formula of mean and variance
平滑后:
圖6 選擇式掩膜平滑后Fig.6 After selected mask smoothing
圖像的邊緣是圖像成形特征的核心體現(xiàn)部分,它體現(xiàn)出灰度的階梯值的變化和圖像色彩漸變的紋理特征,也體現(xiàn)出色彩在圖像邊緣的突變情況,能夠包含諸多圖像的色彩信息與紋理信息。將原圖轉(zhuǎn)化成灰度圖處理圖像之前,先對(duì)圖像對(duì)比度進(jìn)行增強(qiáng)。目前可以增強(qiáng)圖像對(duì)比度的算法有灰度變換法和直方圖調(diào)整法等,灰度變化法中又分為線性變換,對(duì)數(shù)變換和指數(shù)變換,直方圖調(diào)整法又分為直方圖均衡化和直方圖匹配,目前采用線性變換調(diào)試邊緣。檢驗(yàn)圖像邊緣的清晰度實(shí)際上就是使用圖像的語(yǔ)句與算法提取灰度圖中目標(biāo)與背景中的分界線。常用的邊緣檢測(cè)法有很多種。但并不是每一種經(jīng)典的檢測(cè)方法都能夠適用于各種圖像環(huán)境,只能具體情況具體分析,依據(jù)面臨的圖像情況,尋找到比較簡(jiǎn)便符合實(shí)際情況的檢測(cè)方法,針對(duì)多邊形工件的尺度度量,每一條邊都呈線性分布,邊緣也是線性的,但是圖像受感光度和曝光度的影響,不均勻的光線映射在圖像上時(shí),會(huì)讓圖片產(chǎn)生噪點(diǎn)。
由于圖像處理結(jié)果受圖像本身特性影響非常大,因此不同的圖像,即使量化價(jià)格一樣,由于對(duì)比度亮度等一些性質(zhì)的差異,結(jié)果就會(huì)不同,從而使得圖像的某些光感度低或者色彩對(duì)比度不高的區(qū)域在灰化時(shí)出現(xiàn)毛刺點(diǎn),邊緣也顯得十分粗糙不勻稱(chēng),使用Laplacian 階微算子法僅能檢測(cè)到圖像邊緣的毛刺點(diǎn),而對(duì)于由于對(duì)比度或者清晰度導(dǎo)致的偽邊緣卻不能準(zhǔn)確檢測(cè)到,仍舊帶有毛刺點(diǎn)的偽邊緣會(huì)對(duì)圖像后期的畫(huà)布尺寸精確測(cè)量產(chǎn)生誤差。在將原圖處理為灰度圖之前,預(yù)先采用選擇式掩模平滑法平滑偽邊緣和圖像邊緣參差不齊的毛刺點(diǎn),消除圖像中的噪聲,讓線性的邊緣變得平滑。然而,該方法需要注意到圖像背景與目標(biāo)的各自特性,欲達(dá)到消除噪聲又存留清晰的圖像細(xì)節(jié),之后應(yīng)該采用自適應(yīng)閾值法(OTSU)。
圖7 單通道圖Fig.7 Single channel diagram
首先將圖(7)為單通道,通過(guò)最自適應(yīng)閾值法搜索到mask,從而確定border和edges。
輸入:
RGB轉(zhuǎn)化為單通道灰階圖像
>自適應(yīng)閥值作為mask,確定border
輸出:
圖8 分階后的灰度Fig.8 Grayscale after gradation
圖像目標(biāo)為只想獲得的花瓣與樹(shù)枝的圖像,其它的可視為噪聲。依據(jù)繪圖特性將圖像的背景與目標(biāo)進(jìn)行分割,并計(jì)算出灰度圖中目標(biāo)錯(cuò)分與背景錯(cuò)分的方差值,只需計(jì)算得出類(lèi)間方差最大的值,讓目標(biāo)與背景的錯(cuò)分概率最小。
使用某個(gè)閾值選擇函數(shù)δ2( Z) 來(lái)運(yùn)算完成,在(0,225)此區(qū)間灰度Z的值,當(dāng)閾值選擇函數(shù)δ2( Z)取極大值時(shí),Z便是大津閾值,基于此,無(wú)論灰度直方圖的雙峰有沒(méi)有明顯的線性特征,也能將背景與目標(biāo)很好地分割出來(lái)。通過(guò)閾值分割以后,后續(xù)使用線性回歸處理局部的錯(cuò)分部分,修復(fù)分割邊緣的毛刺點(diǎn)和原圖中參差不齊的邊緣,從而得到與原圖清晰度差不多的清晰效果。自適應(yīng)閥值的圖像如圖(9)所示,可看出圖像的目標(biāo)物體與背景分明,邊緣也十分清晰,對(duì)比度強(qiáng)烈,細(xì)節(jié)更完善。
圖9 自適應(yīng)閾值分割后Fig.9 After adaptive threshold segmentation
圖像平滑與分割圖像灰度差異都主要是針對(duì)有色彩填充的部分邊緣,而對(duì)于無(wú)填充的單線條,處理圖像時(shí)會(huì)被忽略,這是由于處理時(shí)等級(jí)劃分不夠細(xì)致導(dǎo)致的,但是如果劃分過(guò)于細(xì)致,在色塊邊界處就會(huì)引起更多的噪聲,導(dǎo)致邊界線條雜亂無(wú)章。由于線性回歸法處理的邊緣比較細(xì)膩,因此采用線性回歸方法單獨(dú)處理,試圖達(dá)到單線條圖像處理的效果。運(yùn)用最小二乘法算出法設(shè)方程為y = bx +a,再根據(jù)擬合方程和相關(guān)數(shù)值求出a、b待定系數(shù)的值。
方程中r為相關(guān)系數(shù),當(dāng)r大于0時(shí),表示變量x與y呈正相關(guān),當(dāng)r小于0時(shí),表示變量x與y呈負(fù)相關(guān),| r |在(0,1]之間,| r |的值越大,表示x與y的相關(guān)性越強(qiáng),誤差也是越小的,擬合的曲線回歸效果好,有應(yīng)用的意義。對(duì)于無(wú)填充的單線條,處理圖像時(shí)會(huì)被忽略
為把已經(jīng)通過(guò)自適應(yīng)閾值分割后的圖像目標(biāo)最上端邊緣的點(diǎn)坐標(biāo)數(shù)值記錄到數(shù)組UpDot[T]中, UpDot[T]是一個(gè)二維的數(shù)組,一個(gè)T行有兩排數(shù)組,橫坐標(biāo)為數(shù)組每行第一個(gè)元素,縱坐標(biāo)為每行的第二個(gè)元素。T有圖像尺寸決定。這樣就可以得出一系列散點(diǎn)坐標(biāo)∶ (UpDot [j][0], UpDot[j][1]) , j = 0,1,2,3,4,…,T-1圖像目標(biāo)最下短邊緣的點(diǎn)也同理處理,系列的散點(diǎn)∶(DownDot[j][0], DownDot[j][1]),T-1 把 上 端與下端邊緣散點(diǎn)分別作為(m,n) 的參照帶入線性回歸公式(3)-(7),通過(guò)運(yùn)算得出圖像上下邊緣的線性回歸方程的a、b值及r值。結(jié)果如表(1)。
表1 圖像上下邊緣的線性回歸方程的a、b值及r值Tab.1 Values of a, b and r of the linear regression equation of the upper and lower edges of the image
將圖像①②③的上下邊緣散點(diǎn)擬合后的線用方程y=bx+a 表現(xiàn)出來(lái),把c=1,2,3,4,…,T-1代入y=bx+a中,可得對(duì)應(yīng)的d值,于是得到了新的邊緣散點(diǎn)(c,d)。為了清楚觀察擬合的效果,實(shí)驗(yàn)者把點(diǎn)用黑色填充描繪出來(lái),無(wú)散點(diǎn)的部分為灰色。得到圖像如圖(10)所示。
圖10 線性回歸處理后Fig.10 After linear regression processing
Laplacian 算子檢測(cè)法也常用來(lái)邊緣檢測(cè),選擇式掩膜平滑和閥值分割后,Laplacian 算子檢測(cè)到的圖像如圖(11)
圖11 Laplacian 算子檢測(cè)后Fig.11 Laplacian operator after detection
將圖(10)與圖(11)做以比較可知線性回歸處理后檢測(cè)的邊緣比較平滑,而Laplacian 算子檢測(cè)的邊緣有些粗糙,盡管都存在毛刺點(diǎn),但是線性回歸后的邊緣較光滑細(xì)膩。因?yàn)榫€性回歸處理的邊緣受散點(diǎn)組成的線條,因此所獲取到的邊緣是真實(shí)存在的。
本文基于圖像邊緣粗糙的問(wèn)題,采取3×3均值濾波法與選擇式掩膜平滑法及自適應(yīng)閥值法來(lái)消除噪聲、分割圖像,再運(yùn)用線性回歸處理邊緣的散點(diǎn),將散點(diǎn)擬合平滑,得到真實(shí)的邊緣。此方法得到的邊緣比經(jīng)典邊緣算子檢測(cè)法得到的更加精確與細(xì)膩。但是線性回歸處理辦法使用的范圍局限在線性邊緣,對(duì)于曲線邊緣今后還需探究其他解決辦法。