[易輝 何友全 李源]
?
基于android平臺(tái)圖像處理的輪廓提取研究
[易輝 何友全 李源]
摘要
采用Roberts算子檢測(cè)邊緣,并分割圖像后,使用數(shù)學(xué)形態(tài)學(xué)處理改進(jìn)圖像,取得并提取邊界點(diǎn),利用八鏈碼存儲(chǔ)圖像輪廓。實(shí)驗(yàn)結(jié)果表明此方法在一定程度上提高單像素點(diǎn)的輪廓提取性能。
關(guān)鍵詞:Roberts邊緣檢測(cè) 預(yù)處理 圖像增強(qiáng) 八鏈碼 輪廓提取
易輝
男,重慶交通大學(xué)信息科學(xué)與工程學(xué)院,研究生,研究方向:android平臺(tái)下的圖像處理。
何友全
重慶市重慶交通大學(xué)信息科學(xué)與工程學(xué)院,教授、研究生導(dǎo)師,研究方向:圖像處理、數(shù)據(jù)庫等 。
李源
男,重慶交通大學(xué)信息科學(xué)與工程學(xué)院,研究生,研究方向:GIS。
輪廓提取作為圖像處理學(xué)的基礎(chǔ)技術(shù),一直研究的重點(diǎn)和熱點(diǎn)。圖像的邊緣代表圖像信息,包含了圖像特征,而輪廓包含更多的信息,從圖像的輪廓,人們即可辨識(shí)不同的物體【1】。現(xiàn)有的輪廓提取方法主要是利用邊緣檢測(cè)算子進(jìn)行邊緣的提取,然后再進(jìn)行圖像增強(qiáng)和修補(bǔ)。
隨著研究的深入,出現(xiàn)了各種各樣的新方法。本文利用圖像預(yù)處理得到二值圖像,然后通過邊緣檢測(cè)運(yùn)算、輪廓提取等一系列程序?qū)Χ祱D像進(jìn)行處理,最后以鏈碼的形式存儲(chǔ)圖像的輪廓特征,輪廓跟蹤原理圖如圖1。
圖1 輪廓跟蹤提取原理圖
原始圖像經(jīng)過預(yù)處理(灰度變換、去噪等)得到二值化圖像,處理去掉圖像中無意義的像素。
圖2 原始圖像
圖3 灰度化圖像
得到灰度化圖像后,提取圖像輪廓,包括邊緣檢測(cè)、改進(jìn)二值化、數(shù)學(xué)形態(tài)學(xué)處理等。
2.1Roberts邊緣檢測(cè)【2】
Roberts算子由Roberts 提出的一種利用局部差分算子尋找邊緣的算子,它的原理是計(jì)算2×2 鄰域的對(duì)角線導(dǎo)數(shù),如下:
G[ i ,j ]又稱為 Roberts 交叉算子。在實(shí)際應(yīng)用中,可以近似為如下:
用卷積模板,上式變成:
其中
Gx和Gy由下面的模板計(jì)算:
圖4 Robert邊緣檢測(cè)算子
選取適當(dāng)?shù)拈T限TH后,可作如下判斷:G[ i ,j ]>TH[i ,j]為階躍狀邊緣點(diǎn),其中{G [ i ,j]}為一個(gè)二值圖像,即圖像預(yù)處理后的圖像邊緣。
2.2圖像修正【3】
為了增強(qiáng)實(shí)驗(yàn)效果,對(duì)邊緣檢測(cè)后得到的圖像使用迭代法進(jìn)行分割。迭代是基于逼近的思想,是一種不斷用變量的舊值遞推新值的過程【4】。具體體現(xiàn)在如下方法就是不斷分割圖像,取得最新的閾值。閾值的改進(jìn)策略是迭代算法的關(guān)鍵。具體的步驟如下。
(1)選擇一個(gè)近似閾值作為估計(jì)值的初始值
式中,Zmin和Zmax分別表示圖像中的最小和最大灰度值。
(2)利用閾值把圖像分割成兩組,R1和R2,其中
(3)計(jì)算區(qū)域R1和R2的灰度均值Z1和Z2,其中
式中,f(i,j)是圖像上(i,j)點(diǎn)的灰度值,N(i,j)是(i,j)點(diǎn)的權(quán)重系數(shù),一般N(i,j)=1.0。
芪雪浸膏劑中大黃素、大黃酸和毛蕊異黃酮在大鼠體內(nèi)的藥動(dòng)學(xué)研究 …………………………………… 吳 磊等(21):2935
如此重復(fù)多次后,可以得到最佳閾值,分割錯(cuò)誤也將極大的降低。這種分割算法的效果圖好于用初始閾值直接分割圖像的效果圖。
2.3噪聲處理
然而修正得到的二值圖像依然可能會(huì)存在問題,如斷線、凹洞、毛刺等,進(jìn)而造成圖像重要信息缺失。尤其存在噪聲的情況下,若直接進(jìn)行輪廓提取,會(huì)擴(kuò)大噪聲,扭曲圖像原本的邊緣信息,得到包含斷點(diǎn)、毛刺等模糊的輪廓,本文采取數(shù)學(xué)形態(tài)學(xué)消除這種缺陷。該方法運(yùn)用形態(tài)學(xué)代數(shù)運(yùn)算子(腐蝕運(yùn)算子、膨脹運(yùn)算子、開算子和閉運(yùn)算子等)修補(bǔ)圖像,而本文中采用的是閉運(yùn)算子,在一定程度上可消減缺陷。
3.1方向鏈碼
像素間的連通性是圖像領(lǐng)域的一個(gè)基本概念,它簡(jiǎn)化了許多光柵圖像概念的定義,如區(qū)域和邊界燈。本文采用Freeman提出的的8鏈碼,對(duì)于一個(gè)八連通的圖像區(qū)域來說,區(qū)域中的每個(gè)像素,它的周圍總存在8個(gè)像素與它連接,可以為這八個(gè)像素設(shè)定從0到7的方向編號(hào),如圖4。這樣一旦確定了像素P的位置,以及某個(gè)鄰接像素的編碼,就可以知道鄰接像素的位置。實(shí)質(zhì)上鏈碼是一串指向符的數(shù)字序列。鏈碼表示就是從某點(diǎn)開始觀察某一曲線的走向并用相應(yīng)的指向符來表示,結(jié)果形成一個(gè)數(shù)字序列,能夠方便快捷的記錄任意曲線或閉合圖像的邊界。
圖5 鏈碼的8鄰域方向
3.2輪廓鏈碼跟蹤提取的實(shí)現(xiàn)方法
輪廓鏈碼跟蹤提取從上到下,從左到右的順序搜索,最后可得到輪廓鏈碼【5】,策略如下:
(l)首先選擇任意某個(gè)角點(diǎn),記為第一個(gè)邊緣點(diǎn)P1。
(2)搜索第2個(gè)邊緣點(diǎn)P2,由Pl的坐標(biāo)值推倒出P2的坐標(biāo)值。
第1個(gè)邊緣點(diǎn)Pl為當(dāng)前邊緣點(diǎn),坐標(biāo)為(i,j),第2個(gè)邊緣點(diǎn)P2為下一個(gè)邊緣點(diǎn),坐標(biāo)為(i1,j2)。由于P1的8個(gè)鄰點(diǎn)是產(chǎn)生P2的侯選點(diǎn),采用如下由Pl到P2的搜索方法:
①按照下、左、上、右的順判別Pl鄰域中0-像素的位置ds,以鄰域編號(hào)n表示。規(guī)則如下:當(dāng)其下鄰點(diǎn)為0,則ds=6;當(dāng)其下鄰點(diǎn)不為0,而左鄰點(diǎn)為0,則ds=4;當(dāng)下、左鄰點(diǎn)都不為0,而上鄰點(diǎn)為0,則ds=2;當(dāng)下、左、上鄰點(diǎn)都不為0,而右鄰點(diǎn)為0,則ds=0。
②由0-像素位置出發(fā),逆時(shí)針方向在8個(gè)侯選點(diǎn)中搜索1-像素,第一次搜索得到的1-像素即為P2。
(3)搜索第i,…邊緣點(diǎn)Pi。
以P-1為起始點(diǎn),開始搜索Pi,以此類推。
(4)若Pi等于P1則結(jié)束搜索,否則重復(fù)步驟(3)。
在android平臺(tái)下,選用海星圖像進(jìn)行提取實(shí)驗(yàn),效果圖如圖5。試驗(yàn)表明,本文這種輪廓提取法有一定實(shí)用性,能得到較為準(zhǔn)確的邊緣圖像。
圖6 輪廓提取過程
邊緣跟蹤提取輪廓,然后以鏈碼的形式儲(chǔ)存,這種方法思路清晰、快捷,且在提取輪廓的時(shí)候,不斷迭代進(jìn)行,前后依賴,并且持續(xù)修正,這樣對(duì)于邊緣點(diǎn)的判斷更合理,更清晰,跟蹤后產(chǎn)生的輪廓邊緣寬度只有一個(gè)像素。試驗(yàn)結(jié)果表明該方法提取的輪廓鏈碼具有高清晰、高精度、單像素等優(yōu)點(diǎn)。
參考文獻(xiàn)
1周亞羅,潘曉娣,曹秀爽等.基于圖像處理的輪廓提取方法應(yīng)用[J].唐山學(xué)院學(xué)報(bào):自然科學(xué)版,2009,22(6):72-75
2甘金來.圖像邊緣檢測(cè)算法的比較研究 [M].成都:電子科技大學(xué),2005,5:7-10
3魏志成,周激流.一種新的圖像分割自適應(yīng)算法的研究[J].中國圖像圖形學(xué)報(bào),2003,5(3):216-220
4http://baike.baidu.com/link?url=iw38ppPe033B STZPUng UZu Xc XDIhhh I7-1t5 Fc Ae3 Byxbuyx_ aos4TwIR2fnWqG4bErKQhABK6lodqDTC-woR
5史晶晶.計(jì)算機(jī)拼圖中形狀識(shí)別算法研究 [M].北京:首都師范大學(xué),2009,4:12-15
收稿日期:(2016-02-02)
DOI:10.3969/j.issn.1006-6403.2016.03.003