趙良軍,董林鷺,楊平先,林國(guó)軍,石小仕,陳明舉
(1.企業(yè)信息化與物聯(lián)網(wǎng)測(cè)控技術(shù)四川省高校重點(diǎn)實(shí)驗(yàn)室,四川 自貢 643000;2.四川輕化工大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,四川 自貢 643000)
隨著人工智能的興起,數(shù)字圖像處理的應(yīng)用越來(lái)越廣泛.其中,圖像邊緣提取直接影響圖像處理結(jié)果的好壞,如人臉定位[1]、車(chē)牌定位[2]、文字識(shí)別[3]等.邊緣提取目的,是將圖像中目標(biāo)信息與背景信息進(jìn)行分離處理,降低實(shí)際工程的復(fù)雜度,提高信息處理效率.因此,邊緣提取的研究意義巨大.
目前,對(duì)于邊緣提取算法,許多學(xué)者提出了不同的方法[4-5],在圖像處理過(guò)程中常用到的邊緣提取算法有利用一階偏導(dǎo)的Sobel 算子、Prewitt 算子和利用二階偏導(dǎo)的Log 算子[6-8];但這些算法簡(jiǎn)單且無(wú)法克服邊緣不完整、不連續(xù)、抖動(dòng)問(wèn)題.Canny算子[9-10]較前幾種算子提取邊緣較完整,但在強(qiáng)高斯噪聲干擾下,同樣不能完整地提取出邊緣信息[11-13].因此,張寧波等[14]提出基于圖論的邊緣提取方法,將圖像看著無(wú)向圖,將所有權(quán)值的均值確定為閾值;該方法能改善圖像的抖動(dòng)問(wèn)題,但對(duì)于強(qiáng)噪聲的圖同樣無(wú)法提取出理想的邊緣信息.任克強(qiáng)等[15]提出融合模糊增強(qiáng)的改進(jìn)Canny 算子,通過(guò)構(gòu)造分段模糊隸屬度函數(shù)對(duì)高低灰度進(jìn)行區(qū)別處理的方法來(lái)提取圖像邊緣,雖能有效地實(shí)現(xiàn)邊緣細(xì)化的目的,但對(duì)于被高噪聲污染的圖像同樣沒(méi)有好的提取效果.
本文受到生物對(duì)事物具有學(xué)習(xí)性的啟發(fā),邊緣處理的圖像常常具有許多相似圖像,如車(chē)牌號(hào)、文字等,先對(duì)質(zhì)量較高的同類(lèi)圖像進(jìn)行學(xué)習(xí),使算法記錄下紋理特征;再利用局部均勻稀疏度方法,強(qiáng)化目標(biāo)特征,弱化背景特征,克服了邊緣提取算法對(duì)閾值的依賴(lài)性.在提取圖像的邊緣時(shí),由先驗(yàn)知識(shí)與圖像內(nèi)部紋理的共同作用下完成圖像邊緣提取.
實(shí)際工程中,對(duì)某圖像做邊緣提取處理時(shí),往往有很多相似于該圖像的其他圖像,如車(chē)牌號(hào)、文字、二維碼等圖像提取邊緣,往往因?yàn)樘鞖狻?shù)據(jù)采集設(shè)備的限制,造成目標(biāo)圖像質(zhì)量下降.以往的做法是利用圖像內(nèi)部像素結(jié)構(gòu)變化來(lái)改善圖像質(zhì)量,減少噪聲對(duì)圖像的污染,但該方法在強(qiáng)高斯噪聲污染下,因圖像內(nèi)部結(jié)構(gòu)遭到嚴(yán)重破壞,改善質(zhì)量的效果并不理想.借助高質(zhì)量相似圖像紋理信息的幫助,來(lái)處理圖像的邊緣提取問(wèn)題,成為本文算法的核心思想.
1.1 算法學(xué)習(xí)過(guò)程將相似圖像R 分成若干碎片,用P1,P2,…,Pk∈R 表示,設(shè)噪聲建模表達(dá)式為q =p+n,p 表示細(xì)節(jié)部分,n 表示被污染的細(xì)節(jié)部分.本文的學(xué)習(xí)過(guò)程可以定義為^p =Aq,其中A表示學(xué)習(xí)獲得的先驗(yàn)知識(shí).為保證特征分解的有效性,令A(yù)為對(duì)稱(chēng)矩陣,滿(mǎn)足
其中
表示各個(gè)碎片的特征向量,
表示各碎片特征值.因此,本算法學(xué)習(xí)過(guò)程相當(dāng)于找相似圖像各碎片的特征向量U和特征值Λ.由此可知,U由碎片特征向量構(gòu)成,滿(mǎn)足正交條件
為了保證找到與待處理圖像高度相似的碎片,則需要利用U的正交性,篩選相似度高的圖像碎片
在篩選過(guò)程中,同時(shí)考慮到圖像稀疏性方向會(huì)影響像素,加入對(duì)角權(quán)重矩陣[16],其中空間形狀自適應(yīng)性由權(quán)重W1∈R 決定,碎片相似性強(qiáng)度由權(quán)重W2∈R決定,并滿(mǎn)足表達(dá)式
其中,1、2 表示群稀疏度的度量,目的是篩選出與待處理圖像相似的碎片.為了計(jì)算簡(jiǎn)便,令W1=I,并且定義
其中,η表示歸一化常數(shù),h表示稀疏度衰變參數(shù).
最終篩選碎片的特征分解結(jié)果滿(mǎn)足
其中,U表示特征向量矩陣,S表示特征值矩陣.
估計(jì)特征值Λ由各相似碎片的特征向量值λi組成,其表達(dá)式滿(mǎn)足
其中p表示圖像細(xì)節(jié)初始估計(jì)值.由于初始估計(jì)值的不確定性,本文利用最小化貝葉斯均值平方誤差(BMSE)判斷不同細(xì)節(jié)碎片p,表達(dá)式滿(mǎn)足
其中,條件分布f(q|p)滿(mǎn)足高斯獨(dú)立同分布,可得
先驗(yàn)分布f(p)是根據(jù)k 個(gè)匹配碎片p1,p2,…,pk的唯一性來(lái)定義的,進(jìn)而獲得f(p)的均值μ、協(xié)方差Σ,其表示式滿(mǎn)足:
其中權(quán)重ωi由(2)式定義,即
代入(6)和(7)式得到特征值Λ 的最小貝葉斯,表達(dá)式滿(mǎn)足
Λ最終表達(dá)式為
1.2 強(qiáng)化圖像細(xì)節(jié)特征設(shè)圖像是個(gè)整體變量F(x),x表示圖像內(nèi)的灰度值.設(shè)局部均勻稀疏處理后的圖像是個(gè)整體變量F(y),y 表示局部均勻稀疏處理后圖像內(nèi)的灰度值.增強(qiáng)過(guò)程滿(mǎn)足y =T(x).T(x)求解過(guò)程如下:
其中T-1(y)是T(x)的反函數(shù).對(duì)上式兩邊y 同時(shí)求導(dǎo),得到
將f(x)、f(y)的結(jié)果代入(11)式中,得到
同時(shí)對(duì)兩邊x積分,得到增強(qiáng)紋理的關(guān)系式為
圖像細(xì)節(jié)特征強(qiáng)化表達(dá)式滿(mǎn)足
其中pz表示細(xì)節(jié)特征強(qiáng)化后的圖像.
1.3 邊緣提取1)本文算法同樣需要計(jì)算出圖像的像素梯度幅值和其方向值,分別用M(x,y)、θ(x,y)表示,表達(dá)式滿(mǎn)足:
其中Gx、Gy數(shù)學(xué)表達(dá)式為:
pz(x,y)表示邊緣提取圖像中某一點(diǎn)像素值.
2)對(duì)計(jì)算出的M(x,y)值做非極大值抑制處理,目的是細(xì)化邊緣上的像素點(diǎn).邊緣提取的原理是對(duì)圖像中相鄰2個(gè)像素點(diǎn)的值變化較大的點(diǎn),將較大值的像素點(diǎn)作為輪廓的邊緣點(diǎn),完成邊緣提取過(guò)程.
本文算法分為3 步(如圖1 所示):
圖1 本文算法流程圖Fig.1 The flowchart of the algorith in this paper
第1 步:對(duì)圖像進(jìn)行濾波處理;
第2 步:對(duì)圖像進(jìn)行細(xì)節(jié)強(qiáng)化,背景弱化處理;
第3 步:計(jì)算梯度值,做非極大值抑制處理,提取邊緣信息.
本文算法主要解決實(shí)際工程中現(xiàn)有邊緣提取算法不能有效提取強(qiáng)高斯噪聲環(huán)境下圖像的邊緣信息.因此,選取工程中常處理且目標(biāo)與背景明確的二維碼、車(chē)牌號(hào)、文字等圖像作為實(shí)驗(yàn)對(duì)象,并用Sobel算子、Robers 算子、Prewitt 算子、Log 算子和Canny算子與本文算法在無(wú)噪聲和有噪聲(高斯噪聲)情況下,提取圖像邊緣信息進(jìn)行對(duì)比實(shí)驗(yàn).
3.1 無(wú)噪聲圖像邊緣提取如圖2 的(b)~(f)所示,分別對(duì)應(yīng)Sobel算子、Robers算子、Prewitt算子、Log算子和Canny算子.從整體觀察,這5 種算子無(wú)法提取出圖2 的原圖(a)的中心處圖標(biāo),而本文算法能夠完整地提取出該圖標(biāo)的邊緣輪廓.
圖2 無(wú)噪聲圖像的邊緣提取Fig.2 Edge extraction of noise-free images
本文將圖2 中各算子與本文算法提取的邊緣結(jié)果的部分細(xì)節(jié)做放大處理,如2(b)~(f)所示,放大區(qū)域用實(shí)線白框和虛線白框標(biāo)出,對(duì)應(yīng)的放大結(jié)果如圖3、圖4 所示.
圖3 圖2 中各邊緣提取結(jié)果的白色虛線處細(xì)節(jié)區(qū)域放大圖Fig.3 Parts marked by white dotted lines for each edge extraction result in Figure 2
圖4 圖2 中各邊緣提取結(jié)果的白色實(shí)線處細(xì)節(jié)區(qū)域放大圖Fig.4 Parts marked by solidline frames for each edge extraction result in Figure 2
如圖3、圖4 所示,Sobel算子、Robers算子、Prewitt算子、Log 算子提取邊緣時(shí),提取不完整,其中Robers算子提取效果最差.Canny 算子與本文算法提取邊緣較完整,但是在轉(zhuǎn)角處本文算法與Canny算法都出現(xiàn)了抖動(dòng)現(xiàn)象.從抖動(dòng)程度和邊緣區(qū)分度分析,本文算法優(yōu)于Canny 算子.結(jié)合整體觀察和細(xì)節(jié)分析,在無(wú)噪聲情況下本文算法優(yōu)于傳統(tǒng)邊緣提取算法.
3.2 噪聲圖像邊緣提取選取二維碼、車(chē)牌號(hào)、文字等圖像加入不同強(qiáng)度的高斯噪聲,驗(yàn)證本文算法抗噪聲性能.
在實(shí)驗(yàn)中,本文算法引入相似圖像,如圖5(c)、圖6(c)、圖7(c)和(d)所示,先使算法學(xué)習(xí)高質(zhì)量圖像內(nèi)部紋理信息,在邊緣提取時(shí)起到先驗(yàn)知識(shí)作用,而其他算子直接對(duì)噪聲圖像進(jìn)行邊緣提取.
圖5 二維碼圖像加入標(biāo)準(zhǔn)差為0.3 的高斯噪聲邊緣提取效果圖Fig.5 Effect graphs of Gaussian noise edge extraction with standard deviation of 0.3 for QR code images
圖6 車(chē)牌圖像加入標(biāo)準(zhǔn)差為0.5 的高斯噪聲邊緣提取效果圖Fig.6 Effect graphs of Gaussian noise edge extraction with standard deviation of 0.5 for license plates
圖7 文字圖像加入標(biāo)準(zhǔn)差為0.7 的高斯噪聲邊緣提取效果圖Fig.7 Gaussian noise edge extraction effect diagram with standard deviation of 0.7 in character image
圖5(b)為二維碼圖像加入標(biāo)準(zhǔn)偏差為0.3的高斯噪聲圖.觀察圖5(d)~(g),各算子提取效果與本文算法對(duì)比,從整體觀察,對(duì)噪聲圖像中心處圖標(biāo),本文算法提取最完整,Canny算子提取到部分邊緣信息,其他算子無(wú)法提取圖標(biāo)輪廓.觀察二維碼紋理,Sobel算子、Robers算子和Prewitt算子無(wú)法提取出紋理輪廓,Log算子能提取大部分紋理輪廓,但抖動(dòng)、殘缺非常嚴(yán)重,Canny算子和本文算法能提取出完整紋理信息.同時(shí),本文算法較Canny 算子,在克服抖動(dòng)問(wèn)題上性能明顯更優(yōu).
在實(shí)際中,車(chē)牌號(hào)圖像和文字很容易獲得高質(zhì)量的相似圖像.因此,本文對(duì)該類(lèi)圖像加大了噪聲污染程度,進(jìn)一步凸顯本文算法的抗噪性能.圖6是一幅加入標(biāo)準(zhǔn)偏差為0.5 的高斯噪聲污染的車(chē)牌號(hào)圖像,觀察對(duì)比圖6 中(d)~(h),傳統(tǒng)的邊緣檢測(cè)算子已無(wú)能為力,而本文算法能夠清晰地檢測(cè)出車(chē)牌號(hào)的目標(biāo)邊緣.圖7 是一幅加入了標(biāo)準(zhǔn)偏差為0.7 的高斯噪聲的文字圖像,Sobel 算子、Robers算子和Prewitt算子無(wú)法提取到文字邊緣信息,Log算子和Canny算子在提取文字邊緣信息的同時(shí),將噪聲邊緣一同提取出來(lái),嚴(yán)重干擾了圖像邊緣信息的識(shí)別.本文算法在完整提取出文字邊緣的同時(shí),并沒(méi)有受到噪聲的干擾,但缺陷是部分邊緣紋理出現(xiàn)抖動(dòng).
綜上,本文算法在無(wú)噪聲且無(wú)先驗(yàn)知識(shí)情況下,能克服傳統(tǒng)算子邊緣提取不完整、不連續(xù)和缺口等問(wèn)題,但在克服邊緣抖動(dòng)性能上還不夠理想.在強(qiáng)高斯噪聲污染情況下,本文算法明顯優(yōu)于其他算子,能完整提取出圖像邊緣信息.因此,本文算法主要適用于有可學(xué)習(xí)的同類(lèi)型且相似度高的圖像邊緣提取工程中.
本文提出了一種基于先驗(yàn)知識(shí)的邊緣提取算法,主要分為3 步:
第1 步,學(xué)習(xí)相似圖像的紋理信息,使算法具有先驗(yàn)知識(shí);
第2 步,對(duì)圖像進(jìn)行局部稀疏處理,強(qiáng)化目標(biāo)信息,弱化背景信息;
第3 步,計(jì)算像素梯度幅值和其方向值,標(biāo)出變化值較大像素點(diǎn),完成邊緣提取過(guò)程.
實(shí)驗(yàn)結(jié)果表示,本文算法能克服傳統(tǒng)算子邊緣提取時(shí)不連續(xù)、不完整和缺口等問(wèn)題,對(duì)邊緣抖動(dòng)問(wèn)題有所改善,但性能還有待提高.本文算法主要針對(duì)目標(biāo)信息與背景信息明確的圖像邊緣提取,同時(shí)需要有相似圖像供其學(xué)習(xí)的外部條件.
致謝四川輕化工大學(xué)科研項(xiàng)目(2018RCL21)對(duì)本文給予了資助,謹(jǐn)致謝意.