李華,張超,權(quán)巍,韓成,翟宏宇,劉婷婷
(長春理工大學計算機科學技術(shù)學院,長春 130022)
一種基于Kinect深度圖的人像自動摳像算法
李華,張超,權(quán)巍,韓成,翟宏宇,劉婷婷
(長春理工大學計算機科學技術(shù)學院,長春 130022)
針對傳統(tǒng)摳像算法需要人工交互,無法實現(xiàn)自動摳像,且邊緣區(qū)域前、背景顏色相近時摳像效果不佳等問題,研究一種基于Kinect深度圖的人像自動摳像算法。利用Kinect人物識別的優(yōu)勢,研究根據(jù)采集的彩色圖像對于人形區(qū)域深度圖像進行預處理,生成三元圖;對人形區(qū)域中孔縫進行處理;采用改進的魯棒摳像算法實現(xiàn)無需人工輸入的自動摳像。實驗結(jié)果表明,摳像算法可實現(xiàn)自然背景中人像的自動摳像,對于前景和背景邊緣顏色相近的原始圖像,可得到良好的摳像效果。
人像摳像;自然摳像;深度圖;Kinect;三元圖
數(shù)字摳像技術(shù)是計算機視覺、數(shù)字圖像處理領(lǐng)域的一個重要的研究內(nèi)容,是影視和廣告制作中的關(guān)鍵技術(shù)。數(shù)字摳像是一個欠約束問題,要想從自然圖像中摳取出感興趣的前景區(qū)域,則必須首先獲取用戶輸入信息。即通過三分圖或涂鴉等方式,獲取到感興趣的前景區(qū)域、背景區(qū)域的提示信息,進而基于摳像算法實現(xiàn)感興趣區(qū)域的摳取。這種基于用戶交互的自然圖像摳像方式,限制了它在視頻自動摳像中的應用。
通常在拍攝的圖像或視頻中,往往感興趣區(qū)域和背景區(qū)域處于不同的空間位置,因此,根據(jù)它們不同的深度信息,可分割出前景和背景區(qū)域。TOF深度相機、Kinect體感設備等深度傳感器迅速發(fā)展,并且廣泛使用,因此,一些學者們開始研究基于深度信息的自動摳像算法。
文獻[1]基于顏色、深度和運動信息構(gòu)建一個帶權(quán)圖,并使用歸一化切割方法實現(xiàn)摳像,但是無法有效地將前景背景染色區(qū)域正確地摳出。文獻[2-4]利用TOF深度相機獲取的深度信息,實現(xiàn)區(qū)域分割,并對另一相機所拍攝的圖像進行摳像。其中,文獻[2]和文獻[3]無法獲取精確的邊界,摳像結(jié)果不理想。文獻[4]對區(qū)域分割結(jié)果進行優(yōu)化,利用Soft Scissors算法實現(xiàn)摳像,得到了較好的摳像效果。但是,這類基于TOF深度相機和彩色相機的摳像方法并不是完全自動的摳像,在對TOF深度相機所拍攝的深度圖像進行區(qū)域劃分時,仍需要人為指定一個平面(即深度閾值)來區(qū)分前景和背景;并且對于深度和彩色相機這兩個傳感器需要首先進行校準和統(tǒng)一。文獻[5]和文獻[6]研究了基于Kinect深度信息采用共享樣本點方法實現(xiàn)自動摳像,不需要人工交互,實現(xiàn)了自動的感興趣區(qū)域檢測。但是在邊緣區(qū)域前景與背景顏色相近或染色的情況下,很難得到較好的摳像效果。
本文利用Kinect人物識別的優(yōu)勢,研究基于深度圖的人像自動摳像算法。用Kinect同時采集人形區(qū)域深度圖像和彩色圖像;利用彩色圖像作為相關(guān)圖像,采用聯(lián)合雙邊濾波對人形區(qū)域深度圖像進行預處理,使得深度圖邊緣信息更為準確;生成三元圖;對人形區(qū)域的孔縫進行處理;由于前景顏色和背景顏色區(qū)別較小但邊界部分十分清晰時的魯棒算法表現(xiàn)良好,采用改進的魯棒摳像算法進行摳像實現(xiàn)自動的人物摳像,實驗表明得到良好的摳像效果。
1.1 深度傳感器的選取
與傳統(tǒng)的TOF深度相機等相比,雖然Kinect采集的深度圖像常常含有較多的噪聲,但是作為一款體感捕捉設備,Kinect有著較強的人物識別能力。當基于Kinect深度圖進行摳像時,若目標是非人物的其它物體時,仍需要人工或者在后期對圖像的前景和背景進行區(qū)分;而若目標為人物時,Kinect可以將識別出來的人形區(qū)域深度數(shù)據(jù)直接輸出,不需要人為區(qū)分前景和背景,并且對于在同一深度區(qū)域的腳和地面的區(qū)分也較為準確。TOF深度相機雖然分辨率很高,但是卻不能自動地識別出人物,只能單純的給出各個像素的深度信息。因此,若基于TOF深度圖進行摳像,仍需要根據(jù)特定的源圖像深度值人為的確定一個平面將前景和背景分開;當前景和背景的深度值相近時這種人工方式往往無法準確地將兩者區(qū)分;還有一個問題是彩色圖像和深度圖像來自不同的相機視角,摳像時還需進行視角轉(zhuǎn)換。另外,TOF相機的價格高昂。綜上,本文選擇Kinect作為深度傳感器捕獲深度圖。
1.2 Kinect深度圖像的預處理
Kinect中可以獲取到三種圖像,包括:彩色圖像、包含場景中全部像素點深度信息的深度圖像以及人形區(qū)域的深度圖像,如圖1所示。Kinect拍攝的深度圖像邊緣比較粗糙,預處理階段的目的是有效分割出人體的邊緣區(qū)域,因此必須保留邊緣信息。雙邊濾波器是一種加權(quán)的非線性高斯濾波,有兩個核函數(shù),同時關(guān)注了像素在空間和幅度兩個域上的相似性,具有平滑保邊的優(yōu)點。聯(lián)合雙邊濾波器是一種雙邊濾波器改進算法,使用另外一張與目標圖像相關(guān)性很高的圖像作為參考,從而可以更加精準的得到需要的圖像,減少圖像邊緣模糊的同時也可以得到相關(guān)圖像的特性。
圖1 Kinect獲得的圖像
本文采用聯(lián)合雙邊濾波器[7]的思想,使用Kinect同時采集彩色圖像和深度圖像,利用彩色圖像作為相關(guān)圖像,對深度圖像進行濾波處理。根據(jù)其完整的邊緣信息,對深度圖像進行校正補全。
圖像濾波公式如下:
其中,I(x,y)是處理后的具有清晰邊緣的人形區(qū)域深度圖像,Io(i,j)是需要濾波處理的Kinect采集的人形區(qū)域深度圖像,Ω是像素的鄰域,w(i,j)是濾波器在點(i,j)處的權(quán),wp是一個標準量,其可由下述公式得到:
對于高斯濾波來說,權(quán)值w(i,j)和像素的空間距離線性相關(guān),距離越近相關(guān)性越大,權(quán)值也越大。定義一個權(quán)值wk(i,j),計算公式如下:
除了距離的影響因素外,像素值的變化對于邊緣的濾波至關(guān)重要,因此,定義一個權(quán)值wg(i,j)衡量像素值變化。Kinect同時采集的彩色圖像記為Ic(i,j),則wg(i,j)的計算公式如下:
因此,圖像濾波公式中的權(quán)值w(i,j)可由下面公式得到:
對于圖1(c)人形區(qū)域深度圖像按上述方法濾波處理后的人形區(qū)域圖像如圖2所示:
圖2 濾波后的人形區(qū)域深度圖像
1.3 三元圖的生成
本文基于濾波處理后的三元圖生成主要基于文獻[4]的思想,具體方法為:將濾波后的具有光滑邊緣的人形區(qū)域深度圖像I(x,y)進行二值化,得到人形區(qū)域二值化圖像Ib(x,y);分別對其進行膨脹和腐蝕操作,得到圖像,則人形邊緣區(qū)域圖像IMar(x,y)可由下式得到:
根據(jù)IMar(x,y)中未知的像素邊緣區(qū)域信息,標示人形區(qū)域深度圖像I(x,y),即可得到三元圖ITr(x,y),如下圖所示,其中的人物邊緣的灰色寬帶區(qū)域為摳像的未知像素點,其余區(qū)域為已知像素點。
由于Kinect對人物圖像邊緣部分的識別不準確和圖像濾波的局限性,當人物身體存在縫隙時,并不能被檢測出來,因此,出現(xiàn)肉眼可觀察到的已知背景像素點被作為前景像素點的情況,導致?lián)赶裥Ч患选1疚膶⒉噬珗D像作為引導圖像,對前景輪廓外的背景信息采樣,并在前景中搜索,對于檢測出的孔洞和縫隙作為已知背景區(qū)域點處理,有效的解決了這一問題。
圖3 生成的三元圖
數(shù)字摳像問題就是將前景圖像中感興趣的目標對象,提取出來與其它背景圖像合成[8],合成公式如下所示:
其中,對于合成圖像中的某個像素點,F(xiàn)、B、C分別為前景圖像、背景圖像、合成圖像的顏色值,α稱為不透明度,α的范圍[0,1][9]。
魯棒摳像算法則是基于采樣傳播相結(jié)合的摳像算法[10],該算法通過在抽樣階段選擇具有高信任度的樣本來估算出一個初始的α值,然后通過隨機漫步最優(yōu)化來完成摳像,實現(xiàn)了準確性和魯棒性的良好均衡。本文基于文獻[11]中的魯棒摳像思想,基于三元圖ITr(x,y)計算α值完成摳像,步驟如下:
(1)根據(jù)三元圖的已知前景和背景區(qū)域減少未知像素個數(shù),降低α估計的計算量;
(2)計算前景-背景的可靠度,選擇可信賴的樣本,進行α初始值和信心值估計;
(3)建立基于圖拉普拉斯的二次優(yōu)化目標函數(shù)確定α最終值。
由于基于Kinect的摳像并不存在標準測試集,為了驗證算法的可行性和效果,本文采用基于Kinect2.0同時采集的深度、彩色圖像算法進行實驗。如圖4所示,圖(a)為Kinect采集的原始彩色圖像,圖像中待摳取的人像邊緣顏色與背景色極為相近,對于這種圖像,傳統(tǒng)摳像方法需要復雜的人工交互,且很難得到好的效果。應用本文算法,基于Kinect同時采集的深度圖像,無需任何人工輸入可實現(xiàn)自動摳像;人形邊緣區(qū)域圖像IMar(x,y)如圖(b)所示,基于魯棒摳像算法生成的透明度α圖(c)所示,摳像結(jié)果如圖(d)所示,對于同為黑色的衣服和背景區(qū)域仍得到良好的邊緣。
圖4 濾波前后的人形區(qū)域深度圖像
圖5 基于彩色圖像的孔縫處理前后的摳像結(jié)果比較
圖5展示了原始圖像中包含孔縫時,經(jīng)過孔縫處理前后的摳像結(jié)果對比。圖中紅色矩形區(qū)域中,人手和身體間存在孔縫,未經(jīng)孔縫處理的透明度α圖和摳像結(jié)果,分別如圖(a)、圖(b)所示;經(jīng)過孔縫處理后的透明度α圖和摳像結(jié)果,分別如圖(c)、圖(d)所示,驗證了本文孔縫處理的有效性。
數(shù)字摳像技術(shù)是圖像處理的重要研究領(lǐng)域,在影視制作等領(lǐng)域應用廣泛。本文針對數(shù)字摳像中人像摳像的問題,研究一種基于深度圖的人像自動摳像算法。實現(xiàn)了完全不需人工交互的自動摳像。對于前、背景邊緣區(qū)域顏色相近的情況,實驗表明:依然能得到良好的效果。在未來的研究中,將繼續(xù)研究生成三元圖算法,降低計算量、縮短算法的計算時間,進一步完善摳像算法,提高摳像精度。
[1]Cigla C,Alatan A A.Segmentation in multi-view video via color,depth and motion matting[C].Proceedings of the 15th IEEE International Conference on Image Processing,Québec,Canada:IEEE,2008.
[2]Zhu J,Liao M,Yang R,et al.Joint depth and alpha matteoptimizationviafusionofstereoand time-of-flight sensor[C].Proceedings of IEEE Conference on Computer Vision&Pattern Recognition,Miami,USA:IEEE,2009.
[3]Kim S Y,Cho JH A Koschan,Abidi M A.Spatial and temporal enhancement of depth images captured by a time-of-flight depth sensor[C].Proceedings of 20th IEEE International Conference on Pattern Recognition,Istanbul,Turkey:IEEE,2010.
[4]Cinque L,Dondi P,Lombardi L.Automatic selectionofregionsofinterestinavideobya depth-color image matting[C].Proceedings of InternationalWorkshoponVideoandImageGround Truth in Computer Vision Applications,St.Petersburg,USA:ACM,2013.
[5]夏倩,許勇,夏玉勤.基于Kinect的自動視頻摳像算法[J].計算機工程與設計,2015,36(5):1299-1303.
[6]張約倫.基于Kinect的摳像算法研究[D],西安:電子科技大學,2012.
[7]李知菲,陳源.基于聯(lián)合雙邊濾波器的Kinect深度圖像濾波算法[J].計算機應用,2014,34(8):2231-2234+ 2242.
[8]權(quán)巍,葛薇,張玉強,等.一種基于采樣的藍屏摳像方法[J].長春理工大學學報:自然科學版,2015,38(3):97-101.
[9]Wang J,Cohen M F.Image and video matting:a survey[J].FoundationsandTrendsinComputer Graphics and Vision,2007,3(2):97-175.
[10]Optimized Color Sampling for Robust Matting[C]. Proceedings of IEEE Conference on Computer VisionandPatternRecognition,Minneapolis,USA:IEEE,2007.
[11]Cho J H,Ziegler R,Gross M,et al.Improving alpha matte with depth information[J].Ieice Electronics Express,1996,6223(1):1602-1607.
An Automatic Matting Algorithms of Human Figure Based on Kinect Depth Image
LI Hua,ZHANG Chao,QUAN Wei,HAN Cheng,ZHAI Hongyu,LIU Tingting
(School of Computer Science and Technology,Changchun University of Science and Technology,Changchun 130022)
Traditional matting algorithms requires manual interaction in order to separate the foreground and the background.And when color of pixels in the edge from both foreground and background are similar,poor matting effects are obtained.According to these problems,an automatic matting algorithm of human figure based on Kinect depth image is proposed in this paper.Kinect has an advantage of recognizing human figure.Taking both the color image and the human figure depth image as inputs which are shot by Kinect at the same time,the depth image is preprocessed by joint bilateral filter.Tri-map is produced automatically,and tiny holes and gaps are considered.An improved robust matting algorithm without manual input is conducted.The experimental results show that human figure can be matted automatically,and a good effect can be obtained even if pixels at the edge have same colors.
human figure matting;natural image matting;depth image;Kinect;tri-map
TP391.41
A
1672-9870(2016)06-0081-04
2016-09-05
國家科技支撐計劃重大項目課題(2012BAF12B22);吉林省重點科技攻關(guān)項目(20140204050GX);吉林省自然科學基金項目(20150101015JC)
李華(1977-),女,博士研究生,副教授,E-mail:lihua@cust.edu.cn