陶彬嬌, 陳 倩, 潘中良, 李 萍
(華南師范大學(xué)物理與電信工程學(xué)院, 廣州 510006)
基于Grab Cut和區(qū)域生長(zhǎng)的服裝圖像前景提取算法
陶彬嬌, 陳 倩*, 潘中良, 李 萍
(華南師范大學(xué)物理與電信工程學(xué)院, 廣州 510006)
針對(duì)Grab Cut算法應(yīng)用于服裝檢索系統(tǒng)中服裝圖像的前景提取時(shí)所存在的交互式和復(fù)雜背景提取效果差問(wèn)題,首先提出了一種全自動(dòng)化的Grab Cut算法,以實(shí)現(xiàn)自動(dòng)根據(jù)背景情況,對(duì)單一背景和復(fù)雜背景圖像分別采用不同的方法生成初始矩形框并進(jìn)行前景提取. 由于該算法仍存在欠分割或過(guò)分割現(xiàn)象,故將該算法與區(qū)域生長(zhǎng)算法相結(jié)合,給出了一種結(jié)合區(qū)域生長(zhǎng)的全自動(dòng)化Grab Cut算法. 實(shí)驗(yàn)結(jié)果表明,無(wú)論對(duì)于單一背景還是復(fù)雜背景的圖像,改進(jìn)算法的前景提取效果都明顯優(yōu)于傳統(tǒng)算法,不僅能準(zhǔn)確獲取服裝前景區(qū)域,而且對(duì)于服裝內(nèi)部的過(guò)分割問(wèn)題也有很大的改善.
前景提??; Grab Cut算法; 區(qū)域生長(zhǎng)算法; 服裝圖像檢索
Keywords: foreground extraction; Grab Cut algorithm; region growth algorithm; clothing image retrieval
前景提取是圖像處理和圖像分析的基礎(chǔ). 在基于內(nèi)容的服裝檢索系統(tǒng)中,無(wú)論是基于哪種特征的檢索,服裝圖像的前景提取都是其中一個(gè)重要的步驟,前景提取效果的好壞將在很大程度上影響最終的檢索效果.
近年來(lái),已有不少學(xué)者對(duì)Grab Cut算法提出了不同的改進(jìn)方式,如:基于顯著圖的交互式Grab Cut改進(jìn)算法[1]及基于感興趣區(qū)域的Grab Cut算法[2],這2種算法相對(duì)于傳統(tǒng)的Grab Cut算法在處理速度和精確度上都有所提高,但是仍采用交互的方式,不適合實(shí)際應(yīng)用中對(duì)批量圖像進(jìn)行處理;與顯著性檢測(cè)FT算法相結(jié)合,基于Grab Cut的自動(dòng)圖像分割算法[3],該算法在背景復(fù)雜、顯著性特征不明顯的情況下效果不好;基于區(qū)域分割和像素級(jí)細(xì)化的服裝圖像前景提取算法[4],該算法的不足之處是不適合那些姿勢(shì)復(fù)雜或者沒(méi)有人體姿勢(shì)的服裝圖像;基于人類視覺(jué)模型的區(qū)域生長(zhǎng)圖像分割算法[5],該算法在復(fù)雜背景下能提取出接近人眼視覺(jué)特性的前景,且執(zhí)行效率較高,但只適用于灰度圖像的分割.
本文將針對(duì)服裝圖像的前景提取展開(kāi)研究,對(duì)Grab Cut算法用于服裝前景提取時(shí)所存在的問(wèn)題進(jìn)行改進(jìn):針對(duì)交互式問(wèn)題,首先提出一種全自動(dòng)化的Grab Cut算法,以實(shí)現(xiàn)自動(dòng)根據(jù)背景情況,對(duì)單一背景和復(fù)雜背景圖像分別采用不同的方法生成初始矩形框并進(jìn)行前景提??;針對(duì)全自動(dòng)化的Grab Cut算法仍存在欠分割或過(guò)分割現(xiàn)象,將該算法與區(qū)域生長(zhǎng)算法相結(jié)合,給出了一種結(jié)合區(qū)域生長(zhǎng)的全自動(dòng)化Grab Cut算法.
Grab Cut是一種交互式前景目標(biāo)提取算法.所謂的交互是指用戶需要勾畫(huà)出一個(gè)包含整個(gè)目標(biāo)對(duì)象的初始矩形框,把框外的像素設(shè)為背景,框內(nèi)的像素設(shè)為不確定,經(jīng)過(guò)多次迭代運(yùn)算后,實(shí)現(xiàn)前景目標(biāo)和背景的分割[6-8]. 該方法對(duì)用戶提供的初始矩形框內(nèi)外區(qū)域建立高斯混合模型,由此來(lái)提供初始分割的前景和背景種子點(diǎn),經(jīng)過(guò)一次分割之后進(jìn)行高斯混合模型更新,再由此估計(jì)新的前景和背景種子點(diǎn)進(jìn)行分割,如此迭代下去直至收斂為止.
Grab Cut算法對(duì)于前景和背景顏色反差較大的圖像分割效果較好[9]. 大多數(shù)網(wǎng)絡(luò)服裝圖像的前景和背景顏色差異明顯,因此適合采用該算法提取服裝前景. 本文利用區(qū)域生長(zhǎng)算法[10]、JSEG(Joint Systems Engineering Group)算法[11]、Grab Cut算法、K聚類算法[12]和分水嶺算法[13]分別對(duì)同一張服裝圖像進(jìn)行前景提取,對(duì)比效果(圖1)顯示Grab Cut算法的前景提取效果最好. 因此,本文選用Grab Cut算法.
圖1 前景提取效果對(duì)比
Grab Cut算法在應(yīng)用時(shí)仍然存在一些問(wèn)題:
(1)Grab Cut算法的交互方式不適合服裝圖像的批量處理. 如1.1節(jié)所述,利用Grab Cut算法對(duì)每一幅圖像進(jìn)行前景提取時(shí)都需要人工標(biāo)注初始矩形框,工作量很大,不適合服裝檢索系統(tǒng)中的批量服裝處理.
(2)單一背景和復(fù)雜背景下的前景提取效果存在較大差異. 本文對(duì)單一背景和復(fù)雜背景圖像的前景提取效果進(jìn)行了對(duì)比實(shí)驗(yàn),其中Grab Cut算法均采取固定比例和位置來(lái)生成初始矩形框. 實(shí)驗(yàn)結(jié)果表明,對(duì)于背景單一的服裝圖像可以采取固定比例和位置來(lái)生成初始矩形框,提取前景的效果比較好. 而對(duì)于背景復(fù)雜,特別是服裝顏色與背景顏色非常接近的情況,用上面同樣的方法進(jìn)行前景提取的效果就不太理想. 因此,有必要對(duì)單一背景和復(fù)雜背景的圖像分別采用不同的方案進(jìn)行前景提取.
針對(duì)1.2節(jié)提到的2個(gè)問(wèn)題,本文對(duì)Grab Cut算法進(jìn)行改進(jìn),提出了一種對(duì)簡(jiǎn)單背景和復(fù)雜背景分別處理的全自動(dòng)化的Grab Cut算法.
該算法的基本思想如下:首先,對(duì)服裝圖像的背景情況進(jìn)行判斷,將圖像背景分為單一背景和復(fù)雜背景. 判斷的依據(jù)是:比較圖像4個(gè)角點(diǎn)的顏色特征,通常,復(fù)雜背景圖像各角點(diǎn)顏色差異較大,而單一背景圖像的各角點(diǎn)顏色幾乎完全相同或十分接近. 本文采用以下步驟進(jìn)行判斷:第一步,提取圖像左上、右上、左下和右下等4個(gè)角點(diǎn)的顏色特征;第二步,對(duì)每2個(gè)角點(diǎn)之間的顏色特征進(jìn)行相似性度量,即:計(jì)算出4個(gè)角點(diǎn)兩兩之間的歐氏距離,共得到6個(gè)數(shù)據(jù);第三步,統(tǒng)計(jì)出兩點(diǎn)之間歐氏距離小于閾值5及小于閾值55的個(gè)數(shù),若小于閾值5的個(gè)數(shù)大于1或者小于閾值55的個(gè)數(shù)為6,則判斷該服裝圖像為單一背景,否則,判斷為復(fù)雜背景.
然后,針對(duì)單一背景和復(fù)雜背景分別采用不同的方法生成Grab Cut算法所需的初始矩形框.
對(duì)于單一背景的服裝圖像,采用固定比例和位置來(lái)生成初始矩形框,初始矩形框的寬度(Width)為15 px、高度(Height)為15 px,矩形框的位置位于原圖像的中心.
對(duì)于復(fù)雜背景的服裝圖像,采用區(qū)域生長(zhǎng)算法生成初始矩形框,具體步驟如下:首先將圖像均分為7×7塊,分別提取4個(gè)邊角與最中心小矩形的顏色直方圖,計(jì)算出4個(gè)邊角與中心矩形的顏色直方圖之間的歐氏距離,從中選取最小的歐氏距離值作為區(qū)域生長(zhǎng)的閾值. 然后,選取圖像的中心點(diǎn)作為區(qū)域生長(zhǎng)的初始種子點(diǎn),向其鄰域進(jìn)行生長(zhǎng),具體為:將種子點(diǎn)與其八鄰域點(diǎn)進(jìn)行比較,若顏色差小于閾值則進(jìn)行生長(zhǎng),生長(zhǎng)點(diǎn)處的像素點(diǎn)作為服裝圖像的前景區(qū)域,標(biāo)記為白色;反之,將不滿足生長(zhǎng)條件的點(diǎn)作為背景區(qū)域,標(biāo)記為黑色. 當(dāng)種子點(diǎn)生長(zhǎng)完畢后獲得X圖像. 最后,將X圖像的前景區(qū)域作為Grab Cut算法的初始矩形框.
對(duì)于單一背景和復(fù)雜背景的服裝圖像,分別采用上述2種方法獲取初始矩形框,其后的步驟與傳統(tǒng)Grab Cut算法一致.
第2節(jié)給出的全自動(dòng)化的Grab Cut算法仍存在欠分割或過(guò)分割的現(xiàn)象:當(dāng)服裝前景與背景顏色較為接近時(shí),往往會(huì)出現(xiàn)欠分割現(xiàn)象,不能準(zhǔn)確地提取服裝前景;當(dāng)服裝圖像為復(fù)雜背景且服裝花紋圖案比較復(fù)雜時(shí),往往會(huì)出現(xiàn)過(guò)分割現(xiàn)象,即對(duì)服裝的內(nèi)部區(qū)域造成過(guò)度分割,把服裝的花紋和圖案也當(dāng)作是背景. 為改進(jìn)該算法的欠分割和過(guò)分割問(wèn)題,本文提出了一種結(jié)合區(qū)域生長(zhǎng)的全自動(dòng)化Grab Cut算法:該算法流程圖如圖2所示,主要步驟如下:
(1)對(duì)服裝圖像進(jìn)行背景情況的判斷,對(duì)于單一背景的圖像,采用固定比例和位置生成Grab Cut算法所需的初始矩形框;對(duì)于復(fù)雜背景的圖像,采用區(qū)域生長(zhǎng)算法生成Grab Cut算法所需的初始矩形框.
圖2 結(jié)合區(qū)域生長(zhǎng)的全自動(dòng)化Grab Cut算法流程圖
Figure 2 The flow diagram of fully automated Grab Cut algorithm combined with region growing algorithm
(2)用Grab Cut算法初步提取前景,獲得一個(gè)S圖,即初步前景圖,僅有黑白部分,白色為前景,黑色為背景.
(3)將S圖作為待處理圖像,對(duì)S圖采用區(qū)域生長(zhǎng)算法提取最外層的背景X圖. 具體操作為:先選取生長(zhǎng)點(diǎn),為了確保生長(zhǎng)的正確性,本文選取了8個(gè)生長(zhǎng)點(diǎn),分別是S圖的邊緣4個(gè)頂點(diǎn)和4條邊的中點(diǎn),假設(shè)圖像的矩陣為M(x,y),則8個(gè)生長(zhǎng)點(diǎn)分別是(0,0)、(0,y/2)、(0,y-1)、(x/2,0)、(x-1,0)、(x/2,y-1)、(x-1,y-1)、(x-1,y/2). 接著,從這些生長(zhǎng)點(diǎn)往內(nèi)進(jìn)行區(qū)域生長(zhǎng),具體為:當(dāng)生長(zhǎng)點(diǎn)所在的像素點(diǎn)為白色時(shí)不進(jìn)行區(qū)域生長(zhǎng),因?yàn)樵擖c(diǎn)屬于前景,若生長(zhǎng)點(diǎn)所在的像素點(diǎn)為黑色時(shí),則進(jìn)行區(qū)域生長(zhǎng). 最后,當(dāng)種子點(diǎn)生長(zhǎng)完畢,就獲得了背景X圖.
(4)將X圖與原圖進(jìn)行與運(yùn)算,從而獲得最終的完整前景圖.
本文用Java語(yǔ)言實(shí)現(xiàn)了一個(gè)基于結(jié)合區(qū)域生長(zhǎng)的全自動(dòng)Grab Cut算法、傳統(tǒng)的Grab Cut算法、區(qū)域生長(zhǎng)算法、JSEG算法等多種算法的服裝圖像前景提取軟件,并對(duì)服裝圖庫(kù)中的圖像進(jìn)行對(duì)比實(shí)驗(yàn). 實(shí)驗(yàn)所用的圖庫(kù)包括單一背景、復(fù)雜背景和人物模特等不同背景的服裝圖像. 從實(shí)用的角度考慮,圖庫(kù)中的1 000多幅服裝圖像都是從天貓、京東等網(wǎng)站下載的. 本文從圖庫(kù)中共選取了72幅有代表性的服裝圖像進(jìn)行測(cè)試,其中,單一背景的31幅、復(fù)雜背景的41幅. 分別采用本文的結(jié)合區(qū)域生長(zhǎng)的全自動(dòng)化Grab Cut算法和傳統(tǒng)Grab Cut算法進(jìn)行對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如下.
由圖3可見(jiàn),對(duì)于單一背景的服裝圖像,如果前景顏色與背景色比較接近,用傳統(tǒng)Grab Cut算法提取會(huì)出現(xiàn)欠分割現(xiàn)象,不能準(zhǔn)確提取服裝前景. 而采用結(jié)合區(qū)域生長(zhǎng)的全自動(dòng)化Grab Cut算法則能很好地解決這一問(wèn)題,前景提取效果得到很大改善.
圖3 單一背景的服裝圖像前景提取效果對(duì)比
Figure 3 Result comparison of foreground extraction for single clothing images
由圖4可見(jiàn),對(duì)于復(fù)雜背景的服裝圖像,尤其是模特身上的服裝,若采用傳統(tǒng)的Grab Cut算法通常不能去除模特而準(zhǔn)確提取出服裝,如果背景較復(fù)雜,則欠分割現(xiàn)象比較嚴(yán)重. 若采用全自動(dòng)化Grab Cut算法,雖然能較好地去除服裝以外部分,但卻產(chǎn)生過(guò)分割現(xiàn)象,尤其是花色和圖案服裝,服裝內(nèi)部花紋出現(xiàn)大量的過(guò)分割. 而結(jié)合區(qū)域生長(zhǎng)的全自動(dòng)化Grab Cut算法提取效果最佳,不僅能夠去除模特準(zhǔn)確獲取服裝區(qū)域,同時(shí)過(guò)分割現(xiàn)象也有很大改善.
實(shí)驗(yàn)結(jié)果表明:結(jié)合區(qū)域生長(zhǎng)的全自動(dòng)化Grab Cut算法的前景提取效果優(yōu)于傳統(tǒng)算法的有70幅(占97.2%),2種算法前景提取效果持平的有2幅. 由此可見(jiàn)結(jié)合區(qū)域生長(zhǎng)的全自動(dòng)化Grab Cut算法的優(yōu)越性.
結(jié)合區(qū)域生長(zhǎng)的全自動(dòng)化Grab Cut算法和傳統(tǒng)的Grab Cut算法的運(yùn)行時(shí)間見(jiàn)表1,其中,運(yùn)行時(shí)間為分別計(jì)算2種算法對(duì)所有簡(jiǎn)單背景圖像和所有復(fù)雜背景圖像的運(yùn)行時(shí)間總和后取平均值.
圖4 復(fù)雜背景的服裝圖像前景提取效果對(duì)比
算法運(yùn)行時(shí)間/s簡(jiǎn)單背景復(fù)雜背景傳統(tǒng)GrabCut算法0.89060.9623結(jié)合區(qū)域生長(zhǎng)的全自動(dòng)化GrabCut算法0.89211.4388
由表1可見(jiàn),對(duì)于簡(jiǎn)單背景的圖像,改進(jìn)后算法的運(yùn)行時(shí)間僅僅增加了0.168%,與改進(jìn)前算法的運(yùn)行時(shí)間幾乎相當(dāng). 但對(duì)于復(fù)雜背景的圖像,改進(jìn)后算法的運(yùn)行時(shí)間則增加了49.5%,運(yùn)行效率有較明顯的下降. 這主要是由于復(fù)雜背景圖像在生成初始矩形框時(shí)比較耗費(fèi)時(shí)間.
本文將傳統(tǒng)的交互式Grab Cut算法應(yīng)用于服裝圖像的前景提取,發(fā)現(xiàn)傳統(tǒng)算法在提取服裝前景時(shí)存在2個(gè)問(wèn)題:第一,交互方式不適合服裝圖像的批量處理;第二,復(fù)雜背景的提取效果較差. 針對(duì)這2個(gè)問(wèn)題,本文提出了一種全自動(dòng)化的Grab Cut算法,能夠自動(dòng)根據(jù)背景情況,對(duì)單一背景和復(fù)雜背景圖像分別采用不同的方法生成初始矩形框,然后進(jìn)行前景提取. 全自動(dòng)化Grab Cut算法仍存在欠分割或過(guò)分割現(xiàn)象. 針對(duì)這一問(wèn)題,本文又提出了一種結(jié)合區(qū)域生長(zhǎng)的全自動(dòng)化Grab Cut算法. 實(shí)驗(yàn)結(jié)果表明,無(wú)論是單一背景還是復(fù)雜背景,結(jié)合區(qū)域生長(zhǎng)的全自動(dòng)化Grab Cut算法的前景提取效果都明顯優(yōu)于傳統(tǒng)算法,不僅能準(zhǔn)確獲取服裝前景區(qū)域,而且對(duì)于服裝內(nèi)部的過(guò)分割問(wèn)題也有很大的改善.
[1] KIM K S,YOON Y J,KANG M C,et al. An improved GrabCut using a saliency map[C]//Proceedings of the 3rd IEEE Global Conference on Consumer Electronics.Washington:IEEE,2015:317-318.
[2] HUA S,SHI P. GrabCut color image segmentation based on region of interest[C]//Proceedings of the 7th International Congress on Image and Signal Processing. Washington:IEEE,2014:392-396.
[3] HE Y R,SUN Y Q. An automatic image segmentation algorithm based on GrabCut[C]//Proceedings of the 6th International Conference on Wireless,Mobile and Multi-Media. Beijing,China:IET,2015:185-190.
[4] LIU Z R,WU X,ZHAO B,et al. Clothing extraction using region-based segmentation and pixel-level refinement[C]//Proceedings of the 2014 IEEE International Symposium on Multimedia. Washington:IEEE,2014:303-310.
[5] 譚洪波,侯志強(qiáng),劉榮. 基于人類視覺(jué)模型的區(qū)域生長(zhǎng)圖像分割[J]. 中國(guó)圖象圖形學(xué)報(bào),2010,15(9):1352-1356.
TAN H B,HOU Z Q,LIU R. Region growing image segmentation based on human visual model[J]. Journal of Image and Graphics,2010,15(9):1352-1356.
[6] KIM G,SIM J. Depth guided selection of adaptive region of interest for Grabcut-Based image segmentation[C]//Proceedings of 2016 Asia-Pacific Signal and Information Processing Association Annual Summit and Conference. Washington:IEEE,2016:1-4.
[7] BOYKOV Y,ISACK H,OLSSON C,et al. Volumetric bias in segmentation and reconstruction:secrets and solutions[C]//Proceedings of the IEEE International Conference on Computer Vision. Washington:IEEE,2015:1769-1777.
[8] JAYASUMANA S,HARTLEY R,SALZMANN M,et al. Kernel methods on Riemannian manifolds with Gaussian RBF kernels[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2015,37(12):2464-2477.
[9] SANGUESA A A,JORGENSEN N K,LARSEN C A,et al. Initiating GrabCut by color difference for automatic foreground extraction of passport imagery[C]//Proceedings of the 6th International Conference on Image Processing Theory,Tools and Applications. Washington:IEEE,2016:1-6.
[10] HAPP P N,BENTES C,FEITOSA R Q,et al. A cloud computing strategy for region-growing segmentation[J]. IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing,2016,9(12):5294-5303.
[11] KANG J,WANG L,CHEN F,et al. Identifying tree crown areas in undulating eucalyptus plantations using JSEG multi-scale segmentation and unmanned aerial vehicle near-infrared imagery[J]. International Journal of Remote Sensing,2017,38(8/9/10):2296-2312.
[12] TANG M,AYED I B,MARIN D,et al. Secrets of grabcut and kernel K-Means[C]//Proceedings of the 2015 IEEE International Conference on Computer Vision.Washington:IEEE,2015:1555-1563.
[13] KIRUTHIKAA R. An implementation of watershed based image segmentation algorithm using fpga processor[J]. International Journal of Science and Research,2013,2(12):399-402.
Foreground Extraction Algorithm Combined with Grab Cut and Region Growing for Clothing Image
TAO Binjiao, CHEN Qian*, PAN Zhongliang, LI Ping
(School of Physics & Telecommunication Engineering, South China Normal University, Guangzhou 510006, China)
Aiming at the problem of the interactive and complex background extraction effect of Grab Cut algorithm applied in the foreground retrieval of garment images in a garment retrieval system, a fully automated Grab Cut algorithm is proposed to adopt different methods to automatically generate the initial rectangle and then extract the foreground for single backgrounds and complex background images, depending on the background. As the algorithm still has under-segmentation and over-segmentation problems, a new fully automated Grab Cut algorithm combined with region growing algorithm is proposed. The results show that, the improved Grab Cut algorithm is superior to classical algorithms for both single background and complex background,and can not only accurately extract the foreground of clothing images, but also effectively reduce the over-segmentation within the images.
2017-03-24 《華南師范大學(xué)學(xué)報(bào)(自然科學(xué)版)》網(wǎng)址:http://journal.scnu.edu.cn/n
2014年廣東省科技廳公益研究與能力建設(shè)專項(xiàng)資金(2014A040401076)
*通訊作者:陳倩,講師,Email:rqjsrqjs@126.com.
TP391.41;TP751.1
A
1000-5463(2017)05-0115-05
【中文責(zé)編:莊曉瓊 英文審校:肖菁】