国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于空間聚類和邊緣梯度的圖像分割算法

2021-02-27 01:29雍玉潔
計算機與現(xiàn)代化 2021年2期
關鍵詞:紋理梯度邊緣

雍玉潔,顧 華

(河海大學理學院,江蘇 南京 211100)

0 引 言

圖像分割的實質(zhì)是將圖像按某種特質(zhì)對像素進行聚類的過程,是圖像處理[1-2]的重要組成部分,其目的是從圖像中提取出人們感興趣的部分以便于進行下一步處理。圖像分割技術[3]也是當前圖像工程中需要研究的熱門項目。目前比較經(jīng)典的圖像分割技術大多分為2種:

1)根據(jù)顏色、紋理等區(qū)域因素進行聚類,即在整個圖像中將具有相似顏色或紋理的區(qū)域分為一類,完成分割。傳統(tǒng)的區(qū)域分割方法主要有區(qū)域生長法[4]、區(qū)域分裂與合并方法[5]和閾值分割[6]方法等。區(qū)域分割方法的優(yōu)點在于可以得到連續(xù)的區(qū)域,區(qū)域間的邊緣也比較完整,但是也可能由于圖像的顏色紋理的變化較多,造成過度分割。

2)基于邊界因素的分割方法,即通過提取各種邊緣特征信息來搜索不同區(qū)域之間的邊界,從而完成圖像分割[7-8]。傳統(tǒng)的方法是利用邊緣檢測算子來搜索邊界,這類方法由于檢測速度比較快而被廣泛利用。經(jīng)典的邊緣檢測算子主要有Sobel算子[9]、Prewitt算子[10]、Robert算子[11]、LoG算法[12]、Canny算子[13-14]等。近年來邊界模型[15-16]的方法也比較流行,這種方法一般通過將梯度作為邊緣停止函數(shù)引入能量函數(shù)來分割圖像。其優(yōu)點是對高對比度的目標計算成本低,結(jié)果精度高,缺點是對噪聲過于敏感。邊界方法的主要優(yōu)點在于它可以更好地刻畫圖像邊界,將圖像的不同區(qū)域清晰地分割出來,但是這類方法無法得到較好的區(qū)域結(jié)構(gòu),致使分割后無法得到連續(xù)的區(qū)域。

近年來一些基于深度學習的方法比較流行,例如DeepLab、Mask R-CNN等。深度學習的方法要輸入許多圖像,先有一個學習的過程,然后再進行圖像分割。這一類方法與上述方法有著本質(zhì)的不同,上述方法不需要進行學習,直接基于圖像的區(qū)域和邊界特征,并且可以對任意圖像進行分割,不拘泥于圖像的類型?;谶@2種方法的不同,無法進行比較,因此本文不討論這一類方法。

針對圖像區(qū)域相似性和邊緣不連續(xù)性的特點,本文提出一種將區(qū)域和邊緣因素結(jié)合的分割方法。先將圖像劃分為超像素,使用分段梯度計算方法來表示邊緣信息,然后使用超像素之間的測地距離對超像素進行空間聚類。本文算法不僅利用顏色和紋理這些區(qū)域特征信息對圖像進行相似度分析,還加入了邊緣檢測的思想方法,利用超像素之間的邊緣梯度對圖像進行分割,并且在計算邊緣梯度的過程中,本文利用分段函數(shù)對邊緣進行擬合,使得邊緣梯度的計算結(jié)果更加精確,從而使得分割結(jié)果貼合真實邊界,更加準確。與傳統(tǒng)的方法相比,這種方法結(jié)合了區(qū)域內(nèi)部相似性和邊緣不連續(xù)性,其分割結(jié)果既可以擁有連續(xù)的區(qū)域,也不至于過度分割,對邊界的刻畫也更加精確。

1 算法思路

在本文方法中首先對圖像進行超像素的預處理,將具有相似顏色、紋理等特征的相鄰像素聚類成同一個超像素塊。將超像素作為基本單元可以加快圖像識別的速度、降低計算復雜度。將圖像劃分為超像素后,在邊緣因素中引入梯度,計算超像素之間的測地距離,最后選取劃分中心對圖像進行分割。本文的具體算法步驟如下:1)超像素預處理;2)求出相鄰超像素之間基于區(qū)域因素的距離;3)在邊緣因素中引入梯度,求出相鄰超像素邊緣上梯度;4)將區(qū)域因素和邊緣因素相結(jié)合,構(gòu)造超像素距離的近鄰圖,求出任意2個超像素之間的測地距離;5)確定劃分中心點,將其余點進行聚類,完成圖像分割。

2 圖像分割算法

本文算法首先計算任意2個超像素之間的測地距離,然后計算所有超像素點的局部密度和偏移量選出劃分中心,完成分割。

2.1 相鄰超像素的相似性

本文利用SLIC算法[17]將圖像分割為超像素圖像,再在超像素上進行圖像處理。本文算法將相鄰超像素的顏色距離和紋理距離相結(jié)合,作為超像素之間基于區(qū)域因素的距離定義如下:

d1=dc+λdt

(1)

其中,dc表示超像素之間的顏色距離,dt表示超像素之間的紋理距離。紋理距離采用Hausdorff[18]距離,λ是紋理距離的權重,用于調(diào)整區(qū)域因素中顏色和紋理的比重。這種計算方式更多考慮了圖像的多樣性。

2.2 邊界梯度的計算

Ren等人[19]提出通過計算超像素邊界上像素的方向能量來計算輪廓線的方法,相鄰超像素之間若存在分割邊界,那么邊緣上像素將會有明顯變化,這一特征可以用于判斷相鄰的2個超像素之間是否存在邊界。處在邊界上的像素一般顏色會發(fā)生突變,梯度值相對較大。本文算法計算相鄰超像素邊緣的梯度并將其作為邊緣因素加入超像素之間的距離計算。超像素之間邊緣上梯度越大,則這2個超像素之間存在邊界的可能性越大,反之亦然。

為了更加準確地計算超像素邊緣梯度,本文采用分段的方法去刻畫邊緣。將邊緣等分為n段并連接每一段的端點,以該連線的法向量作為這一段邊緣中點的法向量。法向量上像素梯度變化最大值作為該段邊緣的梯度,并將這n段邊緣的梯度取平均值作為整個邊緣的梯度。如圖1所示,其中超像素Ci和Cj中間的實現(xiàn)曲線是2個超像素邊緣,虛線是分成n段后每段端點連線,帶箭頭連線為該段邊界的法向量,圓點是這段邊界的中點。

(a) n=1 (b) n=3圖1 超像素邊緣梯度的計算

相鄰超像素之間的梯度信息定義如下:

(2)

Mk=‖rk-rk+1‖+‖gk-gk+1‖+‖bk-bk+1‖

其中,rk、gk、bk表示相鄰的超像素Ci和Cj之間邊緣的第s(s≤n)段中點法向量上第k個像素在RGB顏色空間中的3個顏色值,ls表示該法向量上所取像素的數(shù)目。針對不同的圖像,超像素邊緣上像素數(shù)目不同,所以計算時要先根據(jù)像素數(shù)目確定n的大小。當n=1時,直接以邊緣2個端點之間連線的法向量上梯度作為邊緣梯度。但是由于相鄰超像素的邊緣并不總是一條直線,若取n=1,如圖1(a)所示,并不能很好地貼合邊緣,未體現(xiàn)出超像素邊緣的變化。若此時同一區(qū)域的邊緣法向量上恰好有變化較大的噪點,分割結(jié)果也會不準確。因此一般選取n≥2(見圖1(a)),將每一條邊緣分成2段以上。在這里選取的n越大,對于邊緣的刻畫就越準確,算法所得的梯度值也越接近邊緣的真實梯度值。圖2展示了n=1和n=3時,相鄰超像素C1、C2屬于同一區(qū)域和不同區(qū)域2種情況下的邊緣梯度對比,顯然n=3時的結(jié)果更加準確。圖2中,g1表示n=1時相鄰超像素的邊緣梯度,g2表示n=3時相鄰超像素的邊緣梯度。

(a) 原始圖像 (b) C1、C2非同一區(qū)域 (c) C1、C2同一區(qū)域

2.3 任意超像素之間距離的計算

本文算法將區(qū)域因素和邊緣因素相結(jié)合,綜合考慮顏色、紋理和梯度特征對于超像素之間相似性的影響,將相鄰的超像素Ci和Cj之間的距離dij定義如下:

dij=d1×gijα

(3)

其中,gij=grad(Ci,Cj),是超像素Ci和Cj之間的梯度;α是梯度的權重,用于衡量區(qū)域因素和邊緣因素在相鄰超像素距離上的比重。由于梯度值是RGB顏色空間中的顏色值之差,必然小于1,因此α≠0時,α的值越小,gijα越大。若圖像各個區(qū)域的顏色相近,可將α的值減小,使得梯度比重增大;若各個區(qū)域之間顏色差異較大,可以將梯度權重α增大,從而增加顏色紋理距離的比重。本文將區(qū)域距離與邊緣距離相乘是考慮到即使d1和gijα中某一項的值很小,也可以在結(jié)果dij的值中得到體現(xiàn),避免由于區(qū)域和邊緣中某一種因素的值遠遠大于另一種而導致的誤差。

由于預處理時所得到的任意2個超像素都有連通性,相鄰的超像素間有邊相鄰,所有超像素點就可以構(gòu)成近鄰圖。本文算法使用測地距離[20]計算不相鄰的超像素之間的距離。首先用Dijkstra算法[21]找到不相鄰超像素之間的最短路徑,將相鄰超像素的距離作為邊的權重,計算最短路徑的長度,即為不相鄰超像素的測地距離。

2.4 確定劃分中心并完成圖像分割

本文算法采用局部密度和偏移量[22]來進一步確定分割中心并完成分割。分割中心具有“與同一個區(qū)域中的大部分點距離較近”即局部密度大和“距離其他劃分中心較遠”[17]即偏移量大的特點。局部密度ρ和偏移量δ的定義如下:

其中,Dij是任意2個超像素Ci和Cj之間的測地距離,Dc是截斷距離。DP算法中將γ=ρ×δ的值較大的點確定為劃分中心,然而有些超像素點會出現(xiàn)偏移量很大、局部密度很小或者偏移量很小、局部密度很大的情況。若只看γ值的大小并不能完全準確判斷劃分中心,容易出現(xiàn)噪點,因此,本文算法不采用γ來選取劃分中心。首先將局部密度ρ的值從大到小排序并選取ρmin,去除小于ρmin的點,再將剩下的點按照偏移量δ的值從大到小排序,選取偏移量大的點作為劃分中心。采用這種方法,可以直接將局部密度小的點去除,即去除了一些分割區(qū)域小的中心點避免出現(xiàn)偏移量很大、局部密度很小的噪點。在剩下的超像素點中選取偏移量最大的幾個點,即優(yōu)先選擇距離其他劃分中心遠的超像素點,避免出現(xiàn)選擇同一區(qū)域密度很大的幾個點成為劃分中心的情況。采用這種選取方法有效避免了原本采用DP算法選擇劃分中心時所出現(xiàn)的誤差。

選取好劃分中心后,將其他的超像素點按照局部密度依次歸類到各個劃分中心所屬的類別中,即可完成圖像分割。

3 實驗結(jié)果及分析

3.1 實驗參數(shù)及評估方法

算法中的參數(shù)包括:梯度的權重α,區(qū)域因素中紋理距離的權重λ和超像素的數(shù)目K。為了評估參數(shù)α的變化對于結(jié)果的改變,選取伯克利數(shù)據(jù)集中的圖像,對分割結(jié)果進行定量估計,本文將采用SC(Segmentation Covering Metric)[23]評價方法來對比分割結(jié)果。該方法將計算人工分割結(jié)果被算法分割覆蓋的重疊率,定義如下:

其中,N表示圖像像素的總數(shù)目,S是算法分割的結(jié)果,G是人工分割的結(jié)果,R和R′分別是S和G分割的區(qū)域,O(R,R′)=|R∩R′|/|R∪R′|代表區(qū)域R和R′的重疊率。

3.2 算法以及結(jié)果分析

在本文算法的實驗過程中,對伯克利數(shù)據(jù)集中的圖像進行了大量實驗,結(jié)果表明,根據(jù)圖像類型的不同,選取合適的α值引入梯度可以使得圖像的分割結(jié)果更加準確。圖3~圖6為實驗圖像和不同的α值下采用本文算法得到的分割結(jié)果。當α=0時,未引入梯度,從圖4中可以看出,由于只采用區(qū)域因素,過于重視顏色紋理,導致2個區(qū)域顏色相近時邊界不易被識別出。圖像中沒有分割邊界卻有顏色變化的狹長區(qū)域容易被分割成2個區(qū)域。另外,相比于只采用邊緣因素的分割結(jié)果,其分割邊界沒有那么貼合真實邊界。加入梯度后,當α≠0時,α越小邊緣因素的值越大。圖5中α=1,其分割結(jié)果開始受到邊緣梯度的影響,顏色紋理變化的影響減小,分割邊界也更加精確,但此時還未將該算法的優(yōu)越性完全體現(xiàn)。當α=0.5時(見圖6),邊緣因素與區(qū)域因素正確結(jié)合,根據(jù)顏色紋理以及邊緣梯度,對圖像進行分割,得到精確的分割結(jié)果。從表1中也可以看出,引入梯度因素并根據(jù)圖像特點選擇合適的梯度權重,可以使圖像分割結(jié)果更加準確,也更加體現(xiàn)出本文算法的優(yōu)點。

(a) (b) (c)圖3 原始圖像

(a) (b) (c)圖4 α=0時的分割結(jié)果

(a) (b) (c)圖5 α=1時的分割結(jié)果

(a) (b) (c)圖6 α=0.5時的分割結(jié)果

表1 分割結(jié)果的SC值

3.3 實驗結(jié)果及分析

為了驗證本文提出的圖像分割算法性能的優(yōu)越性,調(diào)整各個參數(shù),對圖像進行了實驗。圖7~圖9選取了具有代表性的自然圖像與紋理圖像對實驗結(jié)果進行分析與說明。圖7(a)是原始圖像,實驗中先將超像素個數(shù)設為K=2000,如圖7(b)所示。再將紋理距離的權重設為λ=0.1,梯度的權重α=0.05。由于圖像中前景與背景顏色相近,但區(qū)域間有明顯邊界,所以將α的值設置得很小,增加梯度在距離中的比重,圖7(c)是其分割結(jié)果。在分割圖8的圖像時,將超像素的個數(shù)設為K=1000,由于圖像中區(qū)域間顏色差距較大,需要將α的值增大,紋理距離的權重λ的值減小,加大顏色對距離大小的影響。因此設置紋理距離權重λ=0.01,梯度權重α=1,圖8(c)顯示了該權重下的圖像分割結(jié)果。圖9是較為簡單的紋理圖像,各個區(qū)域顏色差異較小,紋理差異較大且邊界比較清晰,又由于圖像的各區(qū)域之間的邊界較為平直,因此不需要在預處理階段利用超像素先將邊界清晰地刻畫出來。在圖9(b)中,設置超像素個數(shù)K=100,將超像素數(shù)量設置得較小。紋理距離的權重λ=0.1,梯度權重α=0.4,同時增加紋理距離權重和梯度權重,使得紋理和邊緣梯度共同影響圖像分割結(jié)果,圖9(c)顯示了該圖像的分割結(jié)果。從圖7~圖9的各個分割結(jié)果來看,本文算法分割效果較好,且適用于多種類型圖像。

(a) 原始圖像

(a) 原始圖像

(a) 原始圖像

4 結(jié)束語

本文提出了一種將區(qū)域內(nèi)部相似性和邊緣不連續(xù)性相結(jié)合的圖像分割算法,在特征信息中加入超像素邊緣梯度信息對圖像進行分割,為了得到更加精確的分割邊界,在邊緣因素中引入了分段梯度計算方法。實驗結(jié)果表明,本文提出的算法能比較準確地將圖像進行分割,使得分割區(qū)域不僅連續(xù)性好,區(qū)域之間有連通性,邊界的刻畫也較為精確。但是該算法也存在計算時間增加等缺點。接下來筆者將進一步改進算法,使算法更加快速和準確。

猜你喜歡
紋理梯度邊緣
一個改進的WYL型三項共軛梯度法
一種自適應Dai-Liao共軛梯度法
基于BM3D的復雜紋理區(qū)域圖像去噪
使用紋理疊加添加藝術畫特效
一類扭積形式的梯度近Ricci孤立子
TEXTURE ON TEXTURE質(zhì)地上的紋理
一張圖看懂邊緣計算
消除凹凸紋理有妙招!
地溫梯度判定地熱異常的探討
在邊緣尋找自我
山东| 凉城县| 涡阳县| 上蔡县| 嫩江县| 英吉沙县| 靖江市| 伊宁市| 肇东市| 博白县| 米泉市| 临漳县| 福州市| 兴国县| 马山县| 项城市| 望城县| 韶山市| 始兴县| 泰兴市| 新竹县| 柞水县| 宜良县| 永兴县| 界首市| 澎湖县| 微山县| 南投县| 台州市| 盐池县| 芜湖市| 伊宁县| 铁岭市| 寿光市| 海南省| 油尖旺区| 涞水县| 广平县| 云林县| 行唐县| 陆良县|