• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    一種結(jié)合多種圖像分割算法的實(shí)例分割方案

    2020-04-10 05:15:08詹琦梁陳勝勇胡海根李小薪周乾偉
    關(guān)鍵詞:掩膜像素點(diǎn)高斯

    詹琦梁,陳勝勇,胡海根,李小薪,周乾偉

    (浙江工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,杭州 310000)

    1 引 言

    圖像分割是計(jì)算機(jī)視覺、數(shù)字圖像處理和自動(dòng)駕駛等技術(shù)領(lǐng)域所研究的基本課題之一.圖像分割是指根據(jù)圖像的一致性特征在待分割的圖像中劃分具有相對(duì)均勻特征的區(qū)域,以此將圖像劃分為彼此不重疊的若干子區(qū)域,使得其中同一子區(qū)域內(nèi)的特征具有某些相似性,不同子區(qū)域之間的特征具有顯著差異[1],并且待分割的目標(biāo)可以與背景分離,從而提取出目標(biāo).

    目前,在圖像分割領(lǐng)域眾多國(guó)內(nèi)外的專家學(xué)者進(jìn)行了多年深入的研究,涌現(xiàn)出大量圖像分割的算法,然而在圖像分割效果方面,缺少能夠?qū)崿F(xiàn)通用效果的分割理論.如圖像分類,圖像分析等許多圖像方面的工作能否達(dá)到預(yù)期的實(shí)驗(yàn)效果,在很大程度上受到圖像分割質(zhì)量的影響.因而獲取具有精確邊緣的分割圖像具有重要的科研價(jià)值.

    Mask RCNN(簡(jiǎn)稱MRCNN)[2]是基于RCNN系列、FPN、FCIS等工作之上的圖像分割算法.Mask RCNN算法是在Faster RCNN[3]算法的基礎(chǔ)之上發(fā)展而來.Faster RCNN算法主要用來進(jìn)行目標(biāo)檢測(cè),其主要思想是針對(duì)每個(gè)檢測(cè)候選區(qū)域有類別標(biāo)簽和bounding box偏移量?jī)蓚€(gè)輸出,因此Mask RCNN就在Faster RCNN的基礎(chǔ)上通過增加一個(gè)分支進(jìn)而再增加一個(gè)輸出,即輸出物體掩膜(object mask).Mask RCNN是一個(gè)目標(biāo)實(shí)例分割的框架(object instance segmentation),能夠?qū)D像中的各個(gè)目標(biāo)進(jìn)行類別的檢測(cè),同時(shí)還能為圖像中的每個(gè)識(shí)別的物體生成一個(gè)高質(zhì)量的分割掩膜(segmentation mask).

    本文提出一種圖像的自動(dòng)精細(xì)分割方法.該方法在Mask RCNN輸出的分割掩膜的基礎(chǔ)上,使用超像素SLIC和形態(tài)學(xué)算法進(jìn)行掩膜的后處理,得到待分割圖像的確定前景、確定背景和待分割區(qū)域,再輸入到改進(jìn)后的GrabCut算法中進(jìn)行迭代,最后對(duì)得到的結(jié)果進(jìn)行CRF精細(xì)化處理,得到最后精確分割的目標(biāo)圖像.

    2 分割理論介紹

    2.1 Mask RCNN算法

    Faster RCNN算法第一步先在輸入圖像上通過卷積提取特征圖,其中共享卷積核.然后將得到的卷積特征圖輸入到RPN網(wǎng)絡(luò)中,通過RPN網(wǎng)絡(luò)生成待檢測(cè)的RoI候選框并對(duì)RoI候選框進(jìn)行位置的修正.再通過RoI Pooling層對(duì)RPN網(wǎng)絡(luò)的輸出在feature map上進(jìn)行映射操作,輸出每個(gè)RoI區(qū)域所對(duì)應(yīng)的特征圖,并將維度置為定值.最后,使用全連接層(FC Layer)對(duì)RoI區(qū)域特征圖進(jìn)行分類,并且對(duì)目標(biāo)bounding boxes進(jìn)行第二次修正.

    Mask RCNN算法是RCNN系列算法的延續(xù)和擴(kuò)展.Mask RC-NN算法對(duì)Faster RCNN中的RoI Pooling進(jìn)行了改進(jìn)并提出了RoI Align方法[4].RoI Align方法通過使用雙線性插值來更精確地找到每個(gè)位置對(duì)應(yīng)的特征.Mask RCNN算法流程圖如圖1所示.

    在Mask Branch訓(xùn)練時(shí),不使用FCN式的SoftmaxLoss,而是輸出T個(gè)mask預(yù)測(cè)圖(為每一個(gè)類都輸出一張預(yù)測(cè)圖),并采用average binary cross-entropy loss訓(xùn)練.在訓(xùn)練的時(shí)候,輸出的T個(gè)特征圖中,只有對(duì)應(yīng)ground truth類別的特征圖對(duì)mask loss有影響.Mask RCNN的訓(xùn)練損失函數(shù)可以描述為:

    Lfinal=L({pi},{ti})+(Lcls+Lbox+Lmask)

    (1)

    其中L({pi},{ti})是訓(xùn)練RPN網(wǎng)絡(luò)的損失函數(shù),Lcls表示為分類損失,Lbox表示為邊框回歸損失,Lmask表示為掩膜的損失。

    2.2 SLIC超像素算法

    SLIC[5](simple linear iterative clustering)即簡(jiǎn)單的線性迭代聚類,是一種比較常用的超像素分割算法,實(shí)現(xiàn)起來方便、簡(jiǎn)單,在工程上有廣泛的使用.SLIC主要使用了CIELAB顏色空間,將RGB彩色圖像轉(zhuǎn)化為CIELAB空間下的5維特征向量[l,a,b,x,y].

    SLIC具體實(shí)現(xiàn)的步驟如下所示:

    1) 初始化種子點(diǎn)(聚類中心)

    類似于K-means[6]聚類算法,首先在程序的初始階段設(shè)置K個(gè)分割超像素個(gè)數(shù).假設(shè)輸入圖像的像素?cái)?shù)量為N,則通過聚類算法圖像將被分成K個(gè)超像素塊,每個(gè)超像素塊就是一個(gè)聚類結(jié)果,每個(gè)超像素塊的大小是S*S,并且相鄰種子點(diǎn)之間的距離大約為S=sqrt(N/K).

    2) 鄰域內(nèi)重新選擇種子點(diǎn)(假設(shè)取n=3)

    在每個(gè)超像素塊中隨機(jī)采樣一個(gè)點(diǎn)作為聚類中心.為了防止采樣點(diǎn)落在圖像梯度較大的輪廓邊界上,影響后續(xù)聚類效果,對(duì)該采樣點(diǎn)周圍n*n鄰域內(nèi)計(jì)算所有像素點(diǎn)的梯度值,找到該鄰域內(nèi)梯度最小的像素點(diǎn),將聚類中心移動(dòng)到該點(diǎn)上.

    3) 在采樣點(diǎn)周圍的鄰域內(nèi)為每個(gè)像素點(diǎn)分配類標(biāo)簽

    在2S*2S范圍內(nèi)搜索像素點(diǎn),S指的是期望的超像素邊長(zhǎng),其目的是可以加快算法收斂速度,而K-means的搜索范圍是整張圖片.

    4) 距離度量

    分別計(jì)算每個(gè)搜索到的像素點(diǎn)Ci=[li,ai,bi,xi,yi]和該超像素點(diǎn)中心Cj=[lj,aj,bj,xj,yj]的距離.具體的計(jì)算公式如下:

    (2)

    (3)

    (4)

    (5)

    其中,Ns是類內(nèi)的最大空間距離,Ns=S=sqrt(N/K),dc指的是顏色距離,ds指的是空間距離.最大的顏色距離Nc=m,m為常數(shù),取值范圍為[1,40],一般取10.最終的距離度量D′如下所示:

    (6)

    對(duì)于每個(gè)像素點(diǎn),選擇與該像素點(diǎn)距離最小的超像素作為該像素點(diǎn)的聚類中心,為該像素打上類標(biāo)簽.

    5) 迭代優(yōu)化

    不斷迭代上述步驟直到誤差收斂,通過實(shí)驗(yàn)發(fā)現(xiàn)絕大部分圖片在10次迭代內(nèi)可以得到較理想效果,所以迭代次數(shù)取10.

    6) 增強(qiáng)連通性

    在上述迭代優(yōu)化的過程中可能會(huì)出現(xiàn)超像素尺寸過小、多連通情況,這些情況可以通過增強(qiáng)連通性解決.

    2.3 GrabCut算法介紹

    GrabCut[7]圖像分割算法是一種有效的從復(fù)雜背景中提取前景目標(biāo)的交互式分割算法,由微軟研究院基于Grap hCuts[8]算法的原理改進(jìn)而來,是目前比較優(yōu)秀實(shí)用的算法之一,主要功能是用來從待分割圖像中分割出前后景.該算法需要通過用戶的交互操作,指定圖像中的前后景信息,使用高斯混合模型(GMM)對(duì)圖像建模,最后采用迭代估計(jì)法實(shí)現(xiàn)能量最小化得到最終的分割結(jié)果.

    對(duì)于一幅包含N個(gè)像素點(diǎn)的圖像,GrabCut將其映射成一張加權(quán)網(wǎng)絡(luò)圖并建立相應(yīng)的能量函數(shù),最后通過最大流/最小割來對(duì)圖像進(jìn)行最后的分割.圖片中的像素對(duì)應(yīng)的分割結(jié)果只有兩類:一類屬于前景,用1表示,一類屬于背景,用0表示.GrabCut分割算法分別用一個(gè)K維的高斯混合模型(Gaussian Mixture Model,GMM)對(duì)圖像中的前景和背景建模.其中單高斯模型的概率密度函數(shù)為:

    (7)

    高斯混合模型就是由k個(gè)單高斯模型所組成,如下式所示:

    (8)

    由此可見,整個(gè)高斯混合模型就是多個(gè)單高斯模型密度加權(quán)之和,其中,t(i)就是每個(gè)高斯模型的權(quán)重.

    GrabCut算法通過能量函數(shù)求解最優(yōu)分割.能量函數(shù)主要包括了兩項(xiàng):區(qū)域懲罰項(xiàng)和邊界懲罰項(xiàng).區(qū)域懲罰項(xiàng)又稱為數(shù)據(jù)懲罰項(xiàng),而邊界懲罰項(xiàng)主要用來鄰接像素點(diǎn)的空間和顏色之間的關(guān)系.能量函數(shù)用如下形式表示:

    E(α,k,θ,z)=U(α,k,θ,z)+V(α,z)

    (9)

    其中,U定義為:

    (10)

    式中:

    D(αn,kn,θ,zn)=-logp(zn|αn,kn,θ)-logπ(αn,kn)

    (11)

    且p(·)是一個(gè)高斯概率分布,π(·)是混合權(quán)重系數(shù).

    此時(shí)高斯參數(shù)模型為:

    θ={π(α,k),μ(α,k),∑(α,k),α=0,1;k=1…K}

    (12)

    其分別對(duì)應(yīng)第k個(gè)高斯模型的權(quán)值π、均值μ和協(xié)方差∑.平滑項(xiàng)V可用RGB空間的歐氏距離求出:

    (13)

    GrabCut算法中把圖像的像素點(diǎn)分為4大類:{F,B,PF,PB}.其中F代表確定的前景像素點(diǎn),B代表確定的背景點(diǎn),PF代表可能的前景點(diǎn),PB代表可能的背景點(diǎn).在GrabCut算法中,用戶先通過人工標(biāo)注在圖像上用矩形框選擇需要分割的區(qū)域,區(qū)域外的為確定的背景像素點(diǎn),區(qū)域內(nèi)的為可能是前景也可能是背景的像素點(diǎn),統(tǒng)稱為不確定項(xiàng),以此為依據(jù)建立GMM模型并初始化.其次,GrabCut算法為用戶還提供了另一個(gè)接口,可由用戶指定圖像中的某些像素分別屬于{F,B,PF,PB}中的哪些類,這樣可以通過人工指定的方式提高算法分割的準(zhǔn)確度.

    2.4 改進(jìn)GMM初始化

    通過前期形態(tài)學(xué)的預(yù)處理,可以得到分割圖像的三元圖,即確定的背景區(qū)域、確定的前景區(qū)域和可能的前景區(qū)域,GrabCut算法將這些區(qū)域中的像素劃分為背景和前景兩個(gè)類別,對(duì)于背景和前景均采用高斯混合模型(GMM)算法進(jìn)行建模,在建模的過程中首先對(duì)這兩類像素使用k-means算法進(jìn)行聚類,將每個(gè)類別分別聚類為K類(K取5),即GMM中的K個(gè)高斯混合模型分量.然后通過每個(gè)高斯模型中已有的樣本像素集的RGB值來估計(jì)每個(gè)高斯模型的參數(shù)均值和協(xié)方差.而最終的高斯混合模型需要通過K個(gè)高斯分量加權(quán)求和得到,因此每個(gè)高斯分量的權(quán)值也需要通過屬于該高斯分量的像素個(gè)數(shù)與總像素個(gè)數(shù)的比值來確定.由此可知,k-means算法的聚類結(jié)果將決定該像素屬于哪個(gè)GMM分量并影響最終分割結(jié)果.

    然而GrabCut算法在執(zhí)行k-means算法聚類時(shí)僅考慮了像素的RGB顏色信息,其結(jié)果是使GMM中各分量的分布不均勻,不利于后續(xù)迭代中能量函數(shù)的收斂,影響最終的分割結(jié)果.本文基于參考文獻(xiàn)[9]在使用k-means算法進(jìn)行聚類時(shí)加入改進(jìn)的像素位置信息的方法.為了獲得更合理的初始GMM參數(shù),本文將位置信息修改如下.

    原始像素對(duì)應(yīng)特征向量為:

    xi=(Pr,Pg,Pb)

    (14)

    其中,Pr,Pg,Pb分別是圖像的RGB三通道分量.本文所采用位置信息的計(jì)算步驟如下:

    1.通過得到的MaskRCNN掩膜計(jì)算得到掩膜的質(zhì)心Pc.

    2.遍歷待分割區(qū)域每一個(gè)像素點(diǎn),計(jì)算得到離質(zhì)心距離最大的一個(gè)點(diǎn)的距離,記為dm,計(jì)算公式如(16)所示:

    dm=max(‖P-Pc‖)

    (15)

    計(jì)算每個(gè)像素點(diǎn)與質(zhì)心的距離d,計(jì)算公式如下所示.

    d=‖P-Pc‖

    (16)

    3.通過dm、d計(jì)算得到位置信息.加入位置信息后本文特征向量為:

    (17)

    將位置信息可視化如圖2所示.

    圖2 位置信息可視化

    加入的位置信息能夠減小背景的像素差異,使屬于背景的一類像素點(diǎn)能夠更容易聚類成一類.越靠近目標(biāo)前景區(qū)域的像素點(diǎn)越能夠保留較大的像素差異.

    實(shí)驗(yàn)結(jié)果如圖3所示,圖3(a)中原始的聚類算法將作為前景飛機(jī)的像素分類成了兩類,作為背景的天空中的像素分類到了三個(gè)高斯分量中,背景結(jié)構(gòu)復(fù)雜.圖3(b)是采用加入位置信息后的聚類算法處理后得到的圖片,從圖中可以看出,飛機(jī)的大部分像素點(diǎn)被分為了一類,并且天空的像素點(diǎn)也只剩下了兩類,背景像素類別大大簡(jiǎn)化,這種方法可以使前景目標(biāo)的像素位于較少的高斯分量上,產(chǎn)生分布更加合理的高斯分量,有利于后續(xù)能量函數(shù)的收斂.

    圖3 k-means聚類效果對(duì)比Fig.3 Comparison of k-means cluster results

    3 結(jié)合多種圖像分割算法的實(shí)例分割流程

    本文采用Keras[10]深度學(xué)習(xí)庫來復(fù)現(xiàn)Mask RCNN算法,該深度學(xué)習(xí)庫以TensorFlow[11]框架作為后端,該框架具有對(duì)模型進(jìn)行快速實(shí)現(xiàn),支持GPU加速等優(yōu)點(diǎn).同時(shí)采用MS COCO數(shù)據(jù)集訓(xùn)練該模型,最后用訓(xùn)練好的模型進(jìn)行預(yù)測(cè).

    本文以Mask RCNN預(yù)分割掩膜為起點(diǎn),結(jié)合多種圖像分割算法的優(yōu)點(diǎn),提出一種能夠得到精細(xì)邊緣的圖像分割方案,通過該方案可以解決Mask RCNN分割掩膜邊緣精度不高的問題.具體的方案流程如圖4所示.

    圖4 分割流程圖Fig.4 Segmentation flowchart

    首先輸入待分割RGB圖像,通過Mask RCNN算法得到初始的各個(gè)物體的實(shí)例分割掩膜,同時(shí)通過SLIC算法得到圖像的超像素標(biāo)簽圖,結(jié)合實(shí)例分割掩膜采用形態(tài)學(xué)方法得到GrabCut算法分割初始掩膜,最后將原始的RGB圖像輸入GrabCut算法得到精細(xì)化后的分割掩膜.

    3.1 Mask RCNN算法預(yù)分割

    本文選取如圖5(a)所示的圖片進(jìn)行實(shí)驗(yàn).首先,Mask RCNN使用ResNet-101殘差卷積網(wǎng)絡(luò)對(duì)輸入圖像進(jìn)行整體特征的提取,得到圖像的共享卷積特征圖,該特征提取過程繼承自Faster RCNN網(wǎng)絡(luò)中的特征提取過程.其次使用已經(jīng)訓(xùn)練好的RPN網(wǎng)絡(luò)來生成多個(gè)ROI候選區(qū)域,然后將ROI候選區(qū)域映射到共享卷積特征圖上以獲得每個(gè)ROI區(qū)域的卷積特征圖,同時(shí)對(duì)每個(gè)ROI區(qū)域使用ROI Align方法進(jìn)行像素校正.對(duì)每個(gè)ROI的分類和bounding box的預(yù)測(cè)在ROI區(qū)域的特征圖上來進(jìn)行.最后,使用FCN框架來預(yù)測(cè)ROI區(qū)域的每個(gè)像素點(diǎn)所屬的類別,最終獲得圖像分割的結(jié)果.

    圖片經(jīng)過Mask RCNN算法處理后能夠得到三個(gè)預(yù)測(cè)結(jié)果:1)圖片中的物體所對(duì)應(yīng)的目標(biāo)檢測(cè)框.2)圖片中的物體所對(duì)應(yīng)的類別置信度(score).3)圖片中的每個(gè)物體所對(duì)應(yīng)像素上覆蓋的分割掩膜(mask).從分割結(jié)果中選擇分割掩膜顯示,如圖5(b)所示.

    3.2 基于SLIC超像素算法掩膜擴(kuò)展

    此方法是將掩膜邊緣所對(duì)應(yīng)的超像素塊添加擴(kuò)展到初始mask上,具體的方法流程如下:

    1) 輸入待分割原圖和Mask RCNN分割后的初始掩膜,記為m1.

    2) 直接將原圖放在SLIC超像素算法中進(jìn)行超像素分割,根據(jù)多次實(shí)驗(yàn)比較,超像素塊數(shù)量設(shè)置為:

    (18)

    最后得到一張超像素圖,該超像素圖中分別為每個(gè)超像素塊設(shè)置一個(gè)標(biāo)簽,每個(gè)超像素塊集合中的像素點(diǎn)的標(biāo)簽就是該超像素塊聚類中心的標(biāo)簽,標(biāo)簽從0開始排序,超像素圖記為s1.

    3) 將初始掩膜m1腐蝕一次,得到腐蝕后的掩膜,記為m2.

    4) 將初始掩膜減去腐蝕后的掩膜,即m1-m2,得到初始掩膜的邊緣區(qū)域,記為m3.如圖5(c)所示.

    5) 將邊緣區(qū)域m3與超像素圖s1相乘,得到邊緣處每個(gè)像素點(diǎn)所對(duì)應(yīng)的標(biāo)簽.對(duì)邊緣處的標(biāo)簽去重,根據(jù)邊緣標(biāo)簽在超像素圖中找到標(biāo)簽所對(duì)應(yīng)的超像素塊,將超像素塊與初始掩膜相加,得到擴(kuò)展之后的掩膜m4.如圖5(d)所示

    圖5 實(shí)驗(yàn)結(jié)果圖Fig.5 Experimental result chart

    3.3 掩膜形態(tài)學(xué)處理

    在正式輸入GrabCut算法進(jìn)行分割之前,還需要對(duì)得到的擴(kuò)展后的掩膜進(jìn)行分割前預(yù)處理.具體的步驟如下:

    1) 對(duì)初始掩膜m1進(jìn)行多次形態(tài)學(xué)腐蝕操作.該操作的目的是由于Mask RCNN分割的掩膜邊緣精細(xì)度不高,對(duì)物體內(nèi)部的空間不做分割,目標(biāo)物體內(nèi)部細(xì)節(jié)的空間信息無法體現(xiàn),導(dǎo)致掩膜只是內(nèi)部完全相連的一塊,不夠精細(xì).而作為GrabCut的分割原始mask,將視為確定的前景,因此需要腐蝕到合適的大小,既能作為確定的前景來生成GrabCut分割的初始mask,又不會(huì)引入過多的背景,導(dǎo)致分割結(jié)果不理想.根據(jù)多次試驗(yàn)比較,將初始掩膜腐蝕到面積只占原掩膜面積的1/3能得到比較好的實(shí)驗(yàn)效果.該部分像素點(diǎn)置為1,即確定的前景,記作m5,周圍其他區(qū)域都是背景(像素點(diǎn)值為0).

    2) 與對(duì)Mask RCNN分割掩膜進(jìn)行簡(jiǎn)單的膨脹不同,本方案對(duì)經(jīng)過超像素?cái)U(kuò)展后的掩膜m4進(jìn)行多次膨脹(經(jīng)過試驗(yàn)對(duì)比,當(dāng)膨脹的面積為超像素?cái)U(kuò)展后掩膜面積的1/3時(shí)可以達(dá)到比較滿意的效果).其目的是盡可能多的擴(kuò)展待分割的區(qū)域,因?yàn)镸ask RCNN分割的掩膜的邊緣信息存在缺失,缺失的部分在形態(tài)上可能比較尖銳或者比較狹長(zhǎng),像素點(diǎn)之間可能存在大面積的連通,簡(jiǎn)單的膨脹無法把缺失的部分覆蓋進(jìn)來.而超像素?cái)U(kuò)展后的圖像對(duì)物體的邊緣已經(jīng)進(jìn)行了一定的延伸和擴(kuò)展,對(duì)缺失部分有了一定的填補(bǔ),通過多次膨脹就能夠盡可能多的將目標(biāo)前景缺失的部分都填補(bǔ)上.但是也不能擴(kuò)展的過大,導(dǎo)致分割時(shí)將不屬于目標(biāo)物體但像素值與初始掩膜相近的物體誤認(rèn)為是目標(biāo)而引入.該部分像素點(diǎn)置為2,即不確定區(qū)域,記作m6,周圍其他區(qū)域都是背景(像素點(diǎn)值為0).

    3) 然后計(jì)算m5+m6,將值為3的像素點(diǎn)仍置為1,其他的不變,得到GrabCut分割初始掩膜m7,將其可視化如圖5(e)所示.該圖是一幅三元圖,其中具有三個(gè)區(qū)域,從外到內(nèi)分別為確定背景區(qū)域,不確定區(qū)域和確定的前景區(qū)域,后續(xù)的操作主要是對(duì)不確定區(qū)域進(jìn)行分割.

    3.4 GrabCut算法分割

    最后將分割初始掩膜m7輸入到改進(jìn)的GrabCut程序中,同時(shí)輸入原圖,GrabCut算法通過初始掩膜在分割原圖上使用改進(jìn)的GMM建模,再計(jì)算各個(gè)分量,最后通過最大流最小割得到最終分割結(jié)果.

    后續(xù)再對(duì)分割結(jié)果進(jìn)行CRF(Conditional Random Field,條件隨機(jī)場(chǎng))處理,能夠使邊緣更加精細(xì).最終得到的分割結(jié)果如圖5(f)所示.

    4 實(shí)驗(yàn)結(jié)果及分析

    4.1 分割結(jié)果比較

    本文的實(shí)驗(yàn)設(shè)備為64位四核CPU,8GB內(nèi)存PC機(jī),系統(tǒng)和軟件環(huán)境為Ubuntu18.04和python3.6.本實(shí)驗(yàn)使用MSRA10K數(shù)據(jù)集,該數(shù)據(jù)集被廣泛用于評(píng)價(jià)顯著性檢測(cè)和分割方法,該數(shù)據(jù)集包含10000張圖像,并包含真實(shí)標(biāo)注的像素級(jí)基準(zhǔn)圖像(GT),可以用來主觀和客觀地評(píng)價(jià)算法的性能.從中選擇5張比較典型的包含自然界常見類別的實(shí)例物體進(jìn)行檢測(cè).

    為了驗(yàn)證本文所提方法的精確度,本文主要采用三種方法進(jìn)行實(shí)驗(yàn)比較:1)Faster RCNN結(jié)合GrabCut算法(通過Faster RCNN目標(biāo)檢測(cè)算法檢測(cè)到圖像中的物體,得到物體的初始框,再通過GrabCut算法進(jìn)行分割,這里簡(jiǎn)記為FRCNN+).2)顯著性檢測(cè)結(jié)合GrabCut算法(本文參考文獻(xiàn)[12]中的方法,參考文獻(xiàn)中初始掩膜的獲取采用顯著性FT算法,為保證更好的分割效果和對(duì)比性,本文采用最新的MR顯著性算法[13],其他算法處理流程與文獻(xiàn)相同,該方法簡(jiǎn)記為顯著性+).3)本文方法.比較的結(jié)果如圖6所示.

    圖6 多種分割算法結(jié)果比較Fig.6 Comparison of segmentation results in different algorithms

    第一組圖像中由于FasterRCNN所檢測(cè)到的物體不完全,所以人物的下半部分有明顯的缺失,且人物的右側(cè)臉和肩膀有缺失;基于顯著性算法的分割方法,由于顯著性檢測(cè)缺少約束,結(jié)果導(dǎo)致人物的右腿下半部分缺失,而本文的方法能夠很好地回避這些問題,同時(shí)因?yàn)樵贛ask RCNN實(shí)例分割階段把人物左下角的包也檢測(cè)了出來,因此在分割的時(shí)候沒有將其作為person類分割進(jìn)去,保證了人物分割的合理性.第二組圖片中FasterRCNN的分割結(jié)果右邊有明顯的邊框痕跡,而顯著性檢測(cè)分割的結(jié)果人物的下半部分也存在缺失的情況,而本文算法所得到的分割效果與標(biāo)簽掩膜基本一致.第三組分割結(jié)果中,F(xiàn)asterRCNN分割結(jié)果可以看到,汽車的輪胎部分有明顯的缺失,汽車頂部也沒有分割到位,顯著性分割效果比FasterRCNN分割效果略好,但是也存在著輪胎部分缺失的情況.第四組分割結(jié)果中,F(xiàn)asterRCNN分割把部分背景也當(dāng)做前景分割進(jìn)來,顯著性方法雖然不存在背景問題,但是沒有把鳥的腿部分割進(jìn)來,而本文的算法能夠檢測(cè)到鳥的腿部,也沒有引入多余的背景.第五組結(jié)果中,由于FasterRCNN分割在檢測(cè)的過程中檢測(cè)框并沒有把飛機(jī)的所有部分都框入在待檢測(cè)區(qū)域內(nèi),導(dǎo)致分割后飛機(jī)的機(jī)頭部分沒有分割出來,而顯著性分割和本文算法完整的分割出來飛機(jī),并且分割效果與標(biāo)簽基本一致.

    4.2 不同算法分割性能比較

    本文對(duì)分割方法的評(píng)價(jià)方式主要有以下幾種:

    1) Jaccard系數(shù)

    Jaccard系數(shù)指的是兩個(gè)集合A和B交集元素的個(gè)數(shù)占集合A和B并集元素個(gè)數(shù)所占的比例,用符號(hào)J(A,B)表示.Jaccard系數(shù)是一種用來衡量?jī)蓚€(gè)集合相似度的指標(biāo),系數(shù)越大,兩個(gè)集合之間的相似度越高;反之,系數(shù)越小,兩個(gè)集合的相似度越小.具體的計(jì)算公式如公式(19)所示.

    (19)

    本文將Jaccard系數(shù)作為圖像分割精確度的計(jì)算方式,其中集合A指物體實(shí)例分割的標(biāo)簽,集合B指的是經(jīng)過本文方法處理后得到的實(shí)驗(yàn)分割結(jié)果.

    2) 欠分割率

    欠分割率指的是對(duì)于分割目標(biāo)而言,沒有分割的物體部分占總的分割部分的比值.具體計(jì)算公式如公式(20)所示.

    (20)

    3) 過分割率

    過分割率指的是對(duì)于分割目標(biāo)而言,過多分割的物體部分占總的分割部分的比值.具體計(jì)算公式如公式(21)所示.

    (21)

    從表1-表3可以看出,本文算法正確率明顯高于基于FasterRCNN的GrabCut算法和基于顯著性的GrabCut算法,欠分割率略低于其他兩種方法,過分割率三種方法基本相當(dāng).

    表1 正確率對(duì)比
    Table 1 Comparison of segmentation accuracy

    圖像正確率FRCNN+顯著性+本文方法Person10.88590.85740.8841Person20.96310.88560.9911Car0.85370.91290.9684Bird0.84360.89360.9374Aeroplane0.83990.97410.9774平均值0.87720.90470.9517

    由于分割時(shí)間也是影響分割效率的因素之一,因此本文對(duì)各算法的的分割時(shí)間進(jìn)行了比較,如表4所示.其中,F(xiàn)RCNN+算法需要先通過Faster RCNN算法預(yù)處理圖片得到目標(biāo)物體的初始位置框,再通過GrabCut算法使用位置框得到分割掩膜,在得到初始位置框的過程中消耗了大量的時(shí)間.

    表2 欠分割率對(duì)比
    Table 2 Comparison of under-segmentation rate

    圖像欠分割率FRCNN+顯著性+本文方法Person10.10990.13900.1084Person20.03110.10970.0028Car0.14410.07530.0282Bird0.11270.10110.0518Aeroplane0.16010.02590.0146平均值0.11160.09020.0412

    表3 過分割率對(duì)比
    Table 3 Comparison of over-segmentation rate

    圖像過分割率FRCNN+顯著性+本文方法Person10.00430.00360.0075Person20.00600.00500.0062Car0.00220.01180.0034Bird0.04370.00530.0108Aeroplane0.00000.00000.0080平均值0.01120.00510.0072

    顯著性+算法需要先通過MR顯著性算法得到圖片中物體的顯著性位置,再通過后續(xù)的像素?cái)U(kuò)展和GrabCut操作得到掩膜.本文方法需要先通過Mask RCNN算法初步得到圖片中物體的掩膜,再結(jié)合SLIC超像素?cái)U(kuò)展和形態(tài)學(xué)操作得到初始的待分割掩膜,最后使用GrabCut算法得到分割結(jié)果.Mask RCNN算法之后的操作步驟較多且復(fù)雜,但從實(shí)驗(yàn)的結(jié)果來看并沒有消耗太多的運(yùn)行時(shí)間,大量的時(shí)間主要消耗在Mask RCNN的實(shí)例分割階段.本文實(shí)驗(yàn)中沒有使用GPU加速,由于Mask RCNN算法涉及到目標(biāo)檢測(cè)和分割兩個(gè)步驟,運(yùn)行時(shí)間接近為Faster RCNN算法的兩倍,因此該實(shí)驗(yàn)結(jié)果也在合理的范圍之內(nèi).

    表4 不同算法的分割時(shí)間對(duì)比
    Table 4 Runtime comparison of different methods

    圖像分割時(shí)間(s)FRCNN+顯著性+本文方法Person131.47+1.100.08+69.7665.96+1.19Person230.49+1.260.10+74.9366.33+1.05Car28.93+1.130.12+48.6461.12+0.88Bird31.25+1.120.11+14.2765.57+0.96Aeroplane30.40+0.950.11+26.7565.16+1.03

    綜上所述,本文所提出的方法能夠有效的分割出不同類型圖像中的目標(biāo).與其他算法相比,在分割精度上平均提高了6.9%左右,在整個(gè)MSRA10K數(shù)據(jù)集上的測(cè)試平均精度為0.7334(其中不包含Mask RCNN算法識(shí)別出的置信度小于0.9的物體和長(zhǎng)寬較短的掩膜面積不到原圖五分之一以上的物體),而沒有經(jīng)過本文方法處理的Mask RCNN算法識(shí)別出的掩膜平均精度為0.7053,在客觀上提高了分割的精確度,適合用于自動(dòng)分割處理批量的圖片.

    5 結(jié) 論

    本文通過MaskRCNN算法對(duì)輸入的待檢測(cè)圖像進(jìn)行初級(jí)的實(shí)例分割,得到圖像中的物體類別和物體的初級(jí)掩膜,再通過SLIC超像素分割算法對(duì)原圖進(jìn)行超像素分割得到超像素圖,基于超像素圖對(duì)初級(jí)分割掩膜進(jìn)行邊緣的擴(kuò)展延伸,用以填補(bǔ)分割時(shí)缺失的邊緣信息,接著對(duì)初級(jí)掩膜和擴(kuò)展后的掩膜進(jìn)行形態(tài)學(xué)操作,得到GrabCut分割算法的初始三元圖掩膜,最后通過改進(jìn)的GrabCut算法得到最終的分割結(jié)果.與其他算法進(jìn)行對(duì)比發(fā)現(xiàn),本文分割精確度更高,欠分割率更低,很好的保持了分割目標(biāo)的完整性,證明了本文所提方法的可靠性.

    猜你喜歡
    掩膜像素點(diǎn)高斯
    小高斯的大發(fā)現(xiàn)
    利用掩膜和單應(yīng)矩陣提高LK光流追蹤效果
    一種結(jié)合圖像分割掩膜邊緣優(yōu)化的B-PointRend網(wǎng)絡(luò)方法
    天才數(shù)學(xué)家——高斯
    基于canvas的前端數(shù)據(jù)加密
    光纖激光掩膜微細(xì)電解復(fù)合加工裝置研發(fā)
    基于逐像素點(diǎn)深度卷積網(wǎng)絡(luò)分割模型的上皮和間質(zhì)組織分割
    多層陰影掩膜結(jié)構(gòu)及其制造和使用方法
    科技資訊(2016年21期)2016-05-30 18:49:07
    有限域上高斯正規(guī)基的一個(gè)注記
    基于Node-Cell結(jié)構(gòu)的HEVC幀內(nèi)編碼
    渝北区| 彭阳县| 苍山县| 萨迦县| 比如县| 澎湖县| 桃园县| 财经| 应用必备| 新沂市| 潞西市| 斗六市| 平阳县| 叶城县| 阿克陶县| 许昌县| 宁远县| 迁安市| 陵川县| 昌吉市| 萍乡市| 六盘水市| 高平市| 拉萨市| 曲靖市| 平陆县| 韩城市| 浑源县| 平顶山市| 兰坪| 酉阳| 巴马| 濮阳县| 林芝县| 沙坪坝区| 裕民县| 昌江| 耒阳市| 乌鲁木齐县| 长岭县| 五家渠市|