吳濤,董肖莉,孟偉,徐健,覃鴻,4,李衛(wèi)軍,4
(1. 北京林業(yè)大學(xué) 信息學(xué)院,北京 100083; 2. 國家林業(yè)草原林業(yè)智能信息處理工程技術(shù)研究中心,北京 100083;3. 中國科學(xué)院 半導(dǎo)體研究所, 北京 100083; 4. 中國科學(xué)院大學(xué) 微電子學(xué)院,北京 100045)
線條肖像畫,是描繪人物形象的一種繪畫方式,是一種獨具風(fēng)格的藝術(shù)表現(xiàn)形式。線條肖像畫具有非常悠久的歷史,發(fā)展至今仍十分流行,世界各國的藝術(shù)家經(jīng)常舉辦相關(guān)藝術(shù)展,甚至在公園、廣場等場所也常會遇到正在進(jìn)行線條肖像畫創(chuàng)作的街頭藝術(shù)家。眾所周知,線條肖像畫以線條的形式真實、生動地體現(xiàn)人物特征,其創(chuàng)作需要很高的專業(yè)能力和藝術(shù)功底,是一項具有創(chuàng)意性、專業(yè)性且精細(xì)化程度高、極耗時、耗力的藝術(shù)活動,如何使用計算機(jī)來代替人類繪畫成為一個熱點問題[1]。隨著計算機(jī)視覺及人工智能技術(shù)的蓬勃發(fā)展,各行各業(yè)都涌現(xiàn)出了多種多樣的智能機(jī)器人以滿足不同的需求,而藝術(shù)創(chuàng)作一直被視為機(jī)器人智能的重要表現(xiàn)[2]。因而,探索面向機(jī)器藝術(shù)的線條肖像畫藝術(shù)創(chuàng)作方法已成為人工智能與藝術(shù)融合的研究熱點,如何提取凸顯人物特征的線條并簡潔展現(xiàn)成為創(chuàng)作的關(guān)鍵。
當(dāng)前,線條提取方法通常基于邊緣檢測算法,通過設(shè)計各種邊緣檢測算子,檢測灰度圖像的一階微分和二階微分的響應(yīng)來獲取邊緣,從而生成線條肖像畫圖像,如:一階微分檢測邊緣的濾波算子Sobel、交叉梯度Roberts算子,二階微分拉普拉斯算子(laplace operator)、Marr-Hildreth算子、DoG算子(difference-of-gaussians, DoG)等。Canny[3]檢測算法由于計算簡單、邊緣定位準(zhǔn)確,在邊緣檢測領(lǐng)域廣泛使用。Laplacian算子基于檢測二階微分來檢測邊緣,Marr-Hildreth算子是一種經(jīng)過高斯平滑的拉普拉斯變換。Gooch等[4]利用2個高斯濾波核的差(difference-of-gaussians,DoG)來近似表示Marr-Hildreth算子[5],大大節(jié)省了計算量,并取得了較好的線條提取效果。但由于DoG濾波的核是各項同性的,不能很好地考慮圖像自身邊緣的流向性,因而往往會出現(xiàn)一些雜亂的短線條干擾線條特征的表達(dá)。針對這一問題,Kang等[6]提出了基于流的高斯差分(flowbased difference of gaussian,F(xiàn)DoG)算法,使用基于流的各向異性濾波器替代傳統(tǒng)邊緣檢測算子,有效減少了線條的斷裂現(xiàn)象,提高了線條的連貫性與平滑性,同時抑制了噪聲。然而,這種方法仍具有一定的局限性,如對顏色不同但亮度近似的2個灰度域的邊界提取效果并不理想。為此,很多專家學(xué)者基于FDoG算法進(jìn)行了大量優(yōu)化改進(jìn)的嘗試。Wang等[7]在FDoG的基礎(chǔ)上提出了一種梯度引導(dǎo)方法,實現(xiàn)了對亮度相近顏色不同區(qū)域的邊緣檢測。王山東等[8-9]基于FDoG算法提出了基于特征流的抽象線條畫繪制方法,將高斯一階導(dǎo)濾波結(jié)果和高斯差分濾波結(jié)果進(jìn)行混合作為邊緣檢測的微分響應(yīng),所生成的線條圖像對線條位置的檢測更為準(zhǔn)確,但其線條卻十分復(fù)雜。柳有權(quán)等[10]提出了一種建筑線條生成方法,檢測建筑物的直線并強(qiáng)化直線的切向流,以突出建筑物的線條特征,但這種面向具有規(guī)則幾何結(jié)構(gòu)的線條生成方法對于人臉這類不規(guī)則圖像的線條提取卻難以適用。與FDoG構(gòu)建切向流場的方式不同,Kyprianidis等[11]提出用結(jié)構(gòu)張量構(gòu)建圖像的切向流場,這種方法容易實現(xiàn)但是對噪聲比較敏感。Winnem?ller等[12]提出的XDoG算法通過微調(diào)可以形成多種不同風(fēng)格的效果。此外,隨著深度學(xué)習(xí)技術(shù)的發(fā)展,基于神經(jīng)網(wǎng)絡(luò)的線條生成方法也應(yīng)運而生[13-16],但這些方法多為黑盒系統(tǒng),難以有針對性地進(jìn)行參數(shù)量化調(diào)整,因此無法實現(xiàn)對線條的調(diào)控,應(yīng)用效果受限。
綜合上述分析,目前主流的線條提取算法往往生成復(fù)雜的線條以保持可辨識的人臉特征,且對不同區(qū)域線條提取的精細(xì)程度采用統(tǒng)一調(diào)整的方式,使得線條肖像畫總體線條較復(fù)雜、機(jī)器人機(jī)械臂繪圖時間較長。鑒于此,本文提出了一種基于語義分割的簡潔線條肖像畫生成方法,利用語義分割技術(shù),將人臉圖像劃分為不同區(qū)域,進(jìn)而利用不同區(qū)域之間的邊緣,得到人臉主輪廓線條和五官區(qū)域線條,以優(yōu)化邊緣切向流場;進(jìn)一步,采用不同的參數(shù)配置,分區(qū)域進(jìn)行線條生成,實現(xiàn)對細(xì)節(jié)無關(guān)區(qū)域的線條簡化和細(xì)節(jié)重點區(qū)域的線條加強(qiáng),最終達(dá)到肖像線條總體簡潔、個性化特征可辨識、有效縮短機(jī)器人機(jī)械臂繪制時間的目標(biāo)。
圖像語義分割是圖像處理領(lǐng)域的一個熱點問題,目的是理解圖像的語義信息,按照圖像中的語義分析進(jìn)行分割,本文利用語義分割按照人臉圖像中內(nèi)容的不同,將人臉圖像劃分為不同區(qū)域,為后續(xù)的分區(qū)域圖像處理奠定基礎(chǔ)。圖像語義分割的方法可以分為2種,一種是基于區(qū)域分類的圖像語義分割方法,另一種是基于深度學(xué)習(xí)的像素級圖像語義分割方法。在基于深度學(xué)習(xí)的像素級圖像語義分割方法中,DeepLab系列ADDIN EN.CITE.DATA[17-20]取得了公認(rèn)的效果,該系列的主要特點是采用空洞卷積來代替?zhèn)鹘y(tǒng)卷積,在沒有增加參數(shù)的情況下,增大了感受野。其中DeepLabV3+采用了編碼解碼的結(jié)構(gòu),在解碼階段使用了編碼階段的信息來優(yōu)化目標(biāo)的細(xì)節(jié)。本文采用DeepLabV3+來構(gòu)建人臉語義分割模型,對人臉圖像的不同區(qū)域進(jìn)行劃分,從而實現(xiàn)針對性的圖像處理操作,生成簡潔線條肖像畫。
FDoG是一種各項異性邊緣檢測濾波器,可以根據(jù)圖像自身的一些局部方向特征改變?yōu)V波的過程,相比于各項同性濾波器能夠檢測到具有一致性的線條。FDoG算法主要包括2個過程:
1)構(gòu)造圖像邊緣切向流場。邊緣切向流(edge tangent flow, ETF)是垂直于梯度、表示局部邊緣流曲線的正切向量,用t(x) 來表示,其中x為圖像上的像素坐標(biāo)點。為了得到圖像的高質(zhì)量線條,利用與鄰域y的空間位置權(quán)重、幅值權(quán)重和方向權(quán)重信息,逐步迭代構(gòu)建切向流,如式(1)所示:
式中:tnew表示下一次切向流場;tcur表示當(dāng)前切向流場;k為鄰域大小; ? 表示x的鄰域; ωs、 ωm、ωd分別代表空間位置、幅值和方向的權(quán)重;? 表示鄰域y與x的方向是否相近。
2)基于ETF的高斯差分濾波線條提取。基于切向流場進(jìn)行濾波核卷積以提取線條,如圖1所示。首先,設(shè)置高斯差分卷積核沿著曲線ls從?T~T檢測邊緣;然后,在檢測到的邊緣上利用另一 個高 斯 核 沿著 弧 線cx從 ?S~S的 方 向 進(jìn) 行 積分,聚集檢測到的點以得到最終的連貫線條,如式(2)、(3)所示:
式中:F表示檢測到的邊緣點;H表示線條;I(ls(t))表示輸入圖像I在ls(t) 處的值;Gσ是方差為 σ 的一維高斯函數(shù);ρ、 σc、 σs、 σm為影響線條效果的參數(shù),是本文關(guān)注的重點。
圖1 基于ETF的高斯差分卷積Fig. 1 Flow-based DoG convolution
本文在人臉語義分割基礎(chǔ)上,提出了簡潔線條肖像畫生成方法(concise line portrait generation based on semantic segmentation, CLPG-SS),總體框架如圖2所示。首先,在對人臉圖像預(yù)處理后,對其進(jìn)行人臉語義分割,得到不同的人臉區(qū)域;然后,針對分割得到的頭發(fā)、面部、頸部、五官等區(qū)域,利用FDoG方法提取得到區(qū)域邊緣輪廓及五官細(xì)節(jié)線條;在此基礎(chǔ)上,進(jìn)行ETF優(yōu)化,從而加強(qiáng)輪廓線條和五官細(xì)節(jié)對應(yīng)位置的方向;最后,將預(yù)處理后的人臉圖像與線條提取結(jié)果進(jìn)行融合,并利用優(yōu)化后的ETF與語義分割結(jié)果,針對不同的分割區(qū)域調(diào)整FDoG參數(shù),以實現(xiàn)對細(xì)節(jié)無關(guān)區(qū)域的線條過濾和細(xì)節(jié)重點區(qū)域的線條加強(qiáng),得到簡潔線條肖像畫。
圖2 基于語義分割的簡潔線條肖像畫生成方法(CLPG-SS)總體架構(gòu)Fig. 2 The overall architecture of Concise line portrait generation method based on semantic segmentation ( CLPG-SS)
本文人臉圖像預(yù)處理主要包括人臉檢測、特征點定位、人臉歸一化、繪圖區(qū)域裁剪等。其中,人臉歸一化操作包括人臉圖像的旋轉(zhuǎn)、縮放,以使不同人臉圖像保持在同一尺度下。
五官反映了一個人有別于他人的主要特征,能表現(xiàn)容貌、表情、年齡等,是人臉特征中最為傳神、最具辨識性的特征。因此,本文的思路是盡可能提取并保留完整線條來展現(xiàn)五官特征。同時,輪廓線條也可以一定程度展現(xiàn)人臉的特征,如人臉的輪廓可以反映臉型、胖瘦等,頭發(fā)的輪廓能反映發(fā)型、長短等。因此,本文將人臉與頭發(fā)的輪廓線條也作為主要特征。而人臉的其他區(qū)域,如發(fā)絲、頸部等則與人臉的特征相關(guān)性不高,故本文將這些區(qū)域歸為細(xì)節(jié)無關(guān)區(qū)域,盡可能做線條簡化處理,以降低線條肖像畫的復(fù)雜度,提高機(jī)器人機(jī)械臂繪制的效率。
鑒于此,本文針對上述不同區(qū)域的處理需求,采用DeepLabV3+語義分割技術(shù),基于CelebAMask-HQ人臉語義分割數(shù)據(jù)集,構(gòu)建人臉語義分割模型,實現(xiàn)對人臉不同區(qū)域的分割。為了降低模型學(xué)習(xí)的復(fù)雜度并提高人臉分割的準(zhǔn)確率,本文對CelebAMask-HQ人臉語義分割數(shù)據(jù)集的人臉區(qū)域劃分方式進(jìn)行了優(yōu)化,將左右眉毛、左右眼睛、左右耳朵分別歸為一類,確定了11種類別,即:頭發(fā)、面部、頸部、眉毛、眼睛、鼻子、上嘴唇、下嘴唇、口腔、耳朵、背景。
為了提高模型的魯棒性與泛化能力,本文在人臉語義分割模型訓(xùn)練過程中,對人臉圖像及其語義標(biāo)注圖像做了數(shù)據(jù)增強(qiáng)處理,包括對比度調(diào)整、亮度調(diào)整、顏色變化、添加不同噪聲、添加不同程度模糊、不同程度旋轉(zhuǎn)、不同尺度縮放、替換多樣化背景等,以適應(yīng)在實際應(yīng)用過程中環(huán)境差異、姿態(tài)差異等情況。
2.3.1 線條提取
針對人臉語義分割得到的頭發(fā)、面部、頸部、五官等區(qū)域,基于FDoG方法,分別設(shè)置2組不同的參數(shù),分別實現(xiàn)頭發(fā)、面部和頸部區(qū)域的邊緣輪廓及五官細(xì)節(jié)線條的提取。
2.3.2 ETF優(yōu)化
在用FDoG進(jìn)行線條提取時,常因不同區(qū)域膚色相近、光照變化等情況導(dǎo)致出現(xiàn)線條提取不完整或五官細(xì)節(jié)不顯著等問題,補(bǔ)充或加強(qiáng)邊緣輪廓或細(xì)節(jié)線條的方向?qū)Ω纳粕鲜鰡栴}起到積極作用。為此,本文提出ETF優(yōu)化方法,引入單調(diào)遞增函數(shù) ωl(x,y) 作為新的權(quán)重來加強(qiáng)切向流,當(dāng)鄰域y的切向流幅值大于x的切向流幅值時,該權(quán)重系數(shù)增大,可在一定程度上加強(qiáng)邊緣方向性。改進(jìn)后的ETF計算為
式中: ETFoutline表示頭發(fā)、面部和頸部區(qū)域邊緣輪廓的切向流場; ETFdetail表示五官細(xì)節(jié)線條的切向流場; ψl是 E TFoutline與 E TFdetail之和;η 代表衰減率,η 越大受鄰域的影響越大,本文設(shè)置為1。
2.3.3 圖像調(diào)和
本文以預(yù)處理后的人臉圖像和提取的線條為基礎(chǔ)進(jìn)行圖像調(diào)和,如式(5)所示。
式中:Ioutline表示頭發(fā)、面部和頸部區(qū)域的邊緣輪廓;Idetail表示五官細(xì)節(jié)線條;Ioutline、Idetail與預(yù)處理人臉圖像的灰度圖Io相乘后得到調(diào)和圖像Im。
2.3.4 基于分區(qū)域參數(shù)的線條生成
采用調(diào)和圖像Im代替式(2)中的I,沿著優(yōu)化后的切向流進(jìn)行卷積,生成簡潔線條肖像畫。如1.2節(jié)所述,ρ 、 σc、 σs、 σm是影響線條效果的4個核心參數(shù)。本文通過大量實驗分析,總結(jié)了上述參數(shù)對線條肖像畫生成效果的影響,如表1所示。
表1 FDoG核心參數(shù)對線條肖像畫生成效果的影響Table 1 The influence of FDoG’s core parameters on the effect of line portrait
在此基礎(chǔ)上,提出分區(qū)域參數(shù)設(shè)置策略,如表2所示。
表2 分區(qū)域參數(shù)設(shè)置策略Table 2 Regional parameter setting strategy
具體說明如下:
1)頭發(fā)區(qū)域:最大程度去除細(xì)節(jié)線條、保留主輪廓線條,且盡可能保持主輪廓線條的連貫性??紤]到性別、裝飾等因素影響,頭發(fā)區(qū)域可能略有差異,因此設(shè)置 ρ 在區(qū)間內(nèi)取值;
2)面部區(qū)域:最大程度保留輪廓線條,減少面部噪聲;
3)頸部區(qū)域:盡可能保持輪廓線條的連貫性;
4)眉眼區(qū)域:主要包括眉毛、眼睛,由于最為傳神的特征體現(xiàn)在眉眼中,因此在線條生成時,要盡可能保留細(xì)節(jié),以體現(xiàn)出不同人的個性化特征;
5)其他五官區(qū)域:主要包括鼻子、上嘴唇、下嘴唇、口腔、耳朵,考慮到機(jī)器人機(jī)械臂快速繪制的需求,僅保留大致輪廓即可;
6)背景區(qū)域:將背景區(qū)域直接置為白色以去除背景的影響,因此無需再對背景進(jìn)行參數(shù)設(shè)置。
實驗設(shè)備:包括圖像采集裝置、四軸機(jī)械臂和計算機(jī)(CPU:Intel Core i5 4 590,內(nèi)存:8 GB)。
實驗數(shù)據(jù):采用CelebAMask-HQ人臉語義分割數(shù)據(jù)集,包含30 000張人臉圖像。其中,隨機(jī)選取27 000張作為訓(xùn)練集,用于構(gòu)建人臉語義分割模型;剩余3 000張作為測試集,用于生成簡潔線條肖像畫。
對比方法:Canny算法、FDoG方法。
3.2.1 線條提取結(jié)果
針對預(yù)處理后人臉圖像的線條提取結(jié)果如圖3所示。針對圖3(a)的頭發(fā)、面部、頸部語義分割區(qū)域,提取邊緣輪廓,設(shè)置FDoG參數(shù)為 σc=0.6,σm=3 ,ρ=0.99 , 得到邊緣輪廓Ioutline如圖3(b)所示;針對圖3(c)的面部子圖,提取五官細(xì)節(jié)線條,設(shè)置FDoG 參數(shù)為 σc=0.75,σm=1.3,ρ=0.994,得到五官細(xì)節(jié)線條Idetail如圖3(d)所示。由圖3可見,通過上述方法得到了人臉圖像頭發(fā)、面部、頸部的邊緣線條和五官細(xì)節(jié)線條。
3.2.2 線條肖像畫生成結(jié)果
基于CLPG-SS的線條肖像畫生成結(jié)果及與Canny算法、FDoG方法的比較,針對頭發(fā)區(qū)域大小及性別,隨機(jī)選取4幅圖像進(jìn)行展示,如圖4所示,五官部分局部放大如圖5所示??梢钥闯觯珻anny邊緣檢測算法所生成的線條寬度一致,無輕重之分,而且對人臉五官等較為重要的線條并未很好地檢出,不利于人臉特征的表達(dá),缺少層次感,總體線條效果較為凌亂,無法辨識。FDoG算法雖然能夠很好地保持人臉局部特征,但是對于一些視覺上具有明顯界限而顏色對比度上沒有太大區(qū)別的邊界,并不能很好地提取線條,如圖4中的下巴位置,未能檢測到該處的輪廓線條。相比上述2種方法所取得的效果,本文提出的CLPG-SS方法具有較強(qiáng)優(yōu)勢。從圖4中可以看出,CLPGSS方法明顯檢測到了Canny和FDoG無法檢測到的下巴線條,且強(qiáng)化了人臉五官的細(xì)節(jié),線條更加流暢、五官層次感更強(qiáng)。此外,CLPG-SS方法加強(qiáng)了頭發(fā)的主輪廓,精簡了頭發(fā)區(qū)域的線條細(xì)節(jié),非常有利于提高機(jī)械臂的繪制效率。
圖3 輪廓和五官圖Fig. 3 Outline and facial features details pictures
圖4 線條肖像畫生成結(jié)果比較Fig. 4 Comparison of line portrait generation results
進(jìn)一步,本文考察了FDoG中不同參數(shù)對線條肖像畫生成的影響,如圖6所示。圖6(a)中, 可以觀察到提取的線條較細(xì),凸顯了人臉中的細(xì)節(jié)特征,但總體線條較為雜亂,且線條輪廓提取并不完整;圖6(b)所提取線條的強(qiáng)度得到增強(qiáng),但主輪廓仍不完整;圖6(c)中,線條完整性得到提高,如提取到了下巴處的輪廓,但同時噪聲也得到了放大;圖6(d)中 檢測到了更多的短線條,但面部、頭發(fā)區(qū)域的噪聲得到了放大。由此可見,不同的參數(shù)設(shè)置會得到從視覺上來說非常不同的線條效果,為本文進(jìn)行分區(qū)域參數(shù)設(shè)置提供了思路。
圖5 線條肖像畫生成結(jié)果局部放大圖Fig. 5 Partial enlarged image of line portrait generation result
圖6 不同參數(shù)的線條肖像畫生成結(jié)果Fig. 6 Line drawing images with different parameters
為了體現(xiàn)ETF優(yōu)化方法對線條肖像畫的增強(qiáng)效果,以圖4中的原圖為例,對實驗結(jié)果進(jìn)行分析,如圖7所示。圖7(a)為未經(jīng)過優(yōu)化的FDoG線條圖,圖7(b)為僅進(jìn)行ETF優(yōu)化的結(jié)果,圖7(c)為在優(yōu)化ETF的同時,對人臉圖像進(jìn)行分區(qū)域參數(shù)設(shè)置的效果,即本文提出的CLPG-SS方法。不難發(fā)現(xiàn),相較于FDoG方法,ETF的優(yōu)化強(qiáng)化了人臉輪廓和五官細(xì)節(jié)的線條,但是頭發(fā)區(qū)域明顯線條過多,不利于機(jī)械臂的繪制。而ETF優(yōu)化與分區(qū)域參數(shù)設(shè)置結(jié)合所生成的線條效果整體更為簡潔,有效地減少了頭發(fā)線條的數(shù)量,保留了能夠體現(xiàn)頭發(fā)走向的部分重要線條,且五官的細(xì)節(jié)得到了進(jìn)一步的增強(qiáng),原始人臉的特征清晰可辨,降低了機(jī)械臂繪圖時間,提高了機(jī)械臂的繪制效率。
圖7 ETF優(yōu)化和分區(qū)域參數(shù)設(shè)置對線條肖像畫生成的影響Fig. 7 The influence of ETF optimization and regional parameter settings on the generation of line portraits
3.2.3 機(jī)器人機(jī)械臂繪制實驗結(jié)果
為了考察不同方法對機(jī)器人機(jī)械臂繪圖效率的影響,從測試集中按照頭發(fā)長短、頭發(fā)區(qū)域面積大小等因素隨機(jī)選擇了10張圖像,利用CLPGSS方法、Canny算法、FDoG方法分別生成線條肖像畫,由機(jī)械臂進(jìn)行繪制,并統(tǒng)計機(jī)械臂的繪圖時間,結(jié)果如表3所示。從表3中可見,Canny算法的平均時間最少,分析其原因主要是由于Canny算法檢測的線條為單像素寬度線條,總體繪圖矢量點較少,所以平均時間最短,但其效果最差,繪制出的效果圖可辨識效果最差。而FDoG方法和本文所提出的CLPG-SS方法,繪圖時間雖然較Canny方法長,但效果較Canny方法有了很大程度的提高。與FDoG方法相比,CLPG-SS方法生成的線條肖像畫人臉五官清晰可辨識,平均繪制時間更少,且最長繪制時間幾乎是FDoG的一半,這得益于對細(xì)節(jié)無關(guān)區(qū)域的線條簡化,很大程度上降低了機(jī)械臂的繪圖時間。
表3 不同方法生成的線條肖像畫機(jī)械臂繪制時間的對比Table 3 Comparison of the drawing time of the line portrait manipulator generated by different methods s
本文提出了一種基于語義分割的簡潔線條肖像畫生成方法CLPG-SS。該方法通過人臉語義分割將人臉圖像劃分為頭發(fā)、面部、頸部、五官等11個區(qū)域,利用FDoG方法提取得到區(qū)域邊緣輪廓及五官細(xì)節(jié)線條,并建立ETF優(yōu)化方法以加強(qiáng)輪廓線條和五官細(xì)節(jié)對應(yīng)位置的方向,采用不同分割區(qū)域設(shè)置不同F(xiàn)DoG參數(shù)的策略,最終得到既保留了人臉的關(guān)鍵特征又適合機(jī)械臂快速繪制的簡潔線條肖像畫。實驗結(jié)果驗證了CLPGSS對輪廓以及五官細(xì)節(jié)有更準(zhǔn)確的提取,更加突出了人臉線條的特點,該算法實現(xiàn)簡單可靠。