李 健, 李 豐, 何 斌, 劉富強(qiáng)
(1.陜西科技大學(xué) 電氣與信息工程學(xué)院,陜西 西安 710021;2.同濟(jì)大學(xué) 電子與信息工程學(xué)院,上海 201804)
隨著三維(3D)技術(shù)的不斷進(jìn)步,越來(lái)越多的應(yīng)用以3D的方式呈現(xiàn)給用戶,因此3D技術(shù)的商業(yè)價(jià)值越來(lái)越凸顯出來(lái)[1-3]。
真實(shí)物體3D展示方式相較于二維(2D)圖像更為直觀,而這種展示方式必須以一種操作簡(jiǎn)便、成本低、真實(shí)感強(qiáng)的3D建模技術(shù)為基礎(chǔ)?!盎趫D像建模”技術(shù)為3D建模提供了關(guān)鍵支撐和必要條件。近年來(lái),隨著深度相機(jī)的廣泛應(yīng)用,用深度相機(jī)進(jìn)行三維重建逐漸成為主流。
隨著消費(fèi)級(jí)深度相機(jī)的普及,深度相機(jī)在稠密3D重建領(lǐng)域中的優(yōu)勢(shì)逐漸凸顯出來(lái),其對(duì)RGBD(red,green,blue and depth)多幀數(shù)據(jù)的融合取得了令人矚目的成果[4-7]。然而,受限于Kinect等深度傳感器獲得的單幀深度圖像的質(zhì)量,重建結(jié)果存在平滑過(guò)度、細(xì)節(jié)不足等缺陷。
為了克服深度相機(jī)采集到的深度圖像單幀精度不足的問(wèn)題,Digne等[8]將深度數(shù)據(jù)分解為高頻部分和低頻部分,對(duì)低頻部分進(jìn)行融合并保持高頻部分不變來(lái)提高重建精度。Haque等[9]提出了一種光度立體法和深度相機(jī)結(jié)合的重建技術(shù),但是在對(duì)光源標(biāo)定時(shí)假設(shè)反射率恒定,這就使得對(duì)于多反射率物體的重建結(jié)果不甚理想。文獻(xiàn)[10]中采用了一種融合RGBD信息和彩色光度立體方法的非剛性物體3D數(shù)字化方法,但該方法也只適用于對(duì)純色物體的3D重建。Berkiten等[11]在進(jìn)行深度和法向量信息融合之前,先對(duì)由多個(gè)視角Kinect深度圖計(jì)算得到的法向量進(jìn)行加權(quán)求和。
本文提出了RGBD信息和明暗恢復(fù)形狀(SFS)融合的數(shù)字化方法,并使用單個(gè)Kinect深度相機(jī)實(shí)現(xiàn)對(duì)多反射率物體的3D重建。首先對(duì)深度圖進(jìn)行雙邊濾波并估計(jì)其表面法向量,然后對(duì)SFS問(wèn)題優(yōu)化求解得到相應(yīng)的光照模型參數(shù),并考慮物體表面平滑約束,最后通過(guò)優(yōu)化得到兼顧整體形狀和細(xì)節(jié)信息的3D重建結(jié)果。
本文算法總體框架如圖1所示。
圖1 RGBD信息和SFS融合的算法框架Fig.1 Algorithm framework of integration of RGBD information and SFS
首先,在室內(nèi)自然光環(huán)境下使用Kinect深度相機(jī)獲取被測(cè)物體表面RGBD信息;其次,對(duì)采集到的深度圖進(jìn)行雙邊濾波[11-12]處理,并估計(jì)雙邊濾波后深度圖表面的法向量;然后,對(duì)SFS中的光照模型進(jìn)行求解,即從表面法線和深度圖的關(guān)系中求解出反射率,分別加以約束限制,從而優(yōu)化整個(gè)光照模型;最后,構(gòu)建一個(gè)全局代價(jià)函數(shù)來(lái)完成對(duì)目標(biāo)物體深度值的優(yōu)化求解,對(duì)該代價(jià)函數(shù)適當(dāng)變形后,采用迭代優(yōu)化方法求解出改進(jìn)質(zhì)量的物體表面3D數(shù)字化模型。
對(duì)于采集到的深度圖,首先通過(guò)深度閾值分割的方法提取出重建物體的有效區(qū)域,位于有效區(qū)域外的點(diǎn)云不參加計(jì)算以提高算法效率。選用點(diǎn)云處理領(lǐng)域常用的雙邊濾波進(jìn)行平滑處理。
雙邊濾波方法是在高斯濾波方法的基礎(chǔ)上改進(jìn)后提出的。該方法將濾波權(quán)系數(shù)修改為高斯函數(shù)和圖像灰度值的乘積,然后將修改后的權(quán)系數(shù)再與圖像灰度值作卷積運(yùn)算,這樣在濾波的同時(shí)能夠照顧到圖像中的邊緣數(shù)據(jù),使圖像在經(jīng)過(guò)一般的高斯濾波后變得很模糊的邊緣得以保持,而且邊緣更加平滑。雙邊濾波方法數(shù)學(xué)表達(dá)式如下所示:
(1)
(2)
式中:σs為空間域標(biāo)準(zhǔn)差;σr為灰度域標(biāo)準(zhǔn)差。從式(1)、(2)中可以看出,ws隨著像素點(diǎn)與中心點(diǎn)之間歐式距離的增加而減小,wr隨著兩像素灰度值之差的增大而減小。w由ws和wr的乘積組成,即w=wswr。
本文選取的光照模型為
L(i,j,n)=ρ(i,j)S(n)
式中:L(i,j,n)是光照強(qiáng)度;S(n)是陰影函數(shù);ρ(i,j)是場(chǎng)景中某像素點(diǎn)的反射率;n是法向量。
在求解過(guò)程中,首先在朗伯體假設(shè)下求解S(n),然后用優(yōu)化方法求解反射率ρ(i,j)。
朗伯體假設(shè)下求解S(n),求解的過(guò)程中設(shè)置ρ(i,j)=1,則
(3)
(4)
式(3)中,m是一階球諧函數(shù)系數(shù),可以通過(guò)彩色圖像灰度值I使用最小二乘法優(yōu)化求解出m,優(yōu)化公式為
優(yōu)化m后,可求出S(n),然后對(duì)反射率ρ進(jìn)行求解。為了防止ρ過(guò)擬合,以相近區(qū)域內(nèi)ρ變化不大為約束,構(gòu)造先驗(yàn)約束項(xiàng),如下所示:
式中:N是像素鄰域,k是該鄰域內(nèi)的像素索引;ωck是灰度權(quán)重,ωdk是深度權(quán)重。ωck和ωdk計(jì)算式如下所示:
式中:σc為控制參數(shù);σd為一個(gè)允許深度不連續(xù)的參數(shù);zk為中心像素點(diǎn)坐標(biāo)(i,j)鄰域內(nèi)像素索引k處對(duì)應(yīng)的深度值;I(i,j)為中心像素點(diǎn)坐標(biāo)(i,j)處的圖像灰度值。最后,用正則化線性最小二乘法求解ρ,如下所示:
式中:λρ為先驗(yàn)項(xiàng)權(quán)重。
3.3.1代價(jià)函數(shù)的構(gòu)造
完整的光照模型已經(jīng)得到,為恢復(fù)物體表面細(xì)節(jié),構(gòu)造出由SFS項(xiàng)、深度項(xiàng)和拉普拉斯平滑項(xiàng)三部分構(gòu)成的代價(jià)函數(shù),如下所示:
E(z)=λsEs(z)+λdEd(z)+λlEl(Δz)
式中:Es(z)是對(duì)應(yīng)的SFS項(xiàng);Ed(z)是對(duì)應(yīng)的深度項(xiàng);El(Δz)是對(duì)應(yīng)的拉普拉斯平滑項(xiàng);λs、λd、λl分別對(duì)應(yīng)各自約束項(xiàng)的權(quán)重。對(duì)代價(jià)函數(shù)中的SFS項(xiàng)、深度項(xiàng)、拉普拉斯平滑項(xiàng)做進(jìn)一步說(shuō)明。
(1)SFS項(xiàng)
Es(z)
(5)
從式(4)物體表面法線和表面梯度的關(guān)系中得出,表面梯度可以由z的函數(shù)表示,然后用最小化灰度值和光照模型的差值即式(5)來(lái)求解z值。
(2)深度項(xiàng)
(6)
式中:z0是初始采集到的深度值;z是估計(jì)出的深度值。式(6)表示估計(jì)出的深度值與原始采集到的深度值的距離。
(3)拉普拉斯平滑項(xiàng)
該項(xiàng)的作用是將曲面上非常小的變化、噪聲數(shù)據(jù)很快地?cái)U(kuò)散到它的鄰域中,從而達(dá)到平滑的效果。本文為了保證在重建結(jié)果中保留更多的細(xì)節(jié),所以設(shè)置該項(xiàng)權(quán)重參數(shù)較小。
3.3.2求解過(guò)程
從式(4)物體表面法線和表面梯度的關(guān)系可知,代價(jià)函數(shù)的SFS項(xiàng)是非線性部分,因此求解思路是首先求解線性部分,然后求解非線性部分。采用迭代方法,從一個(gè)初始值出發(fā),不斷更新當(dāng)前優(yōu)化變量,使代價(jià)函數(shù)下降,直到某個(gè)時(shí)刻代價(jià)函數(shù)值最小,此時(shí)算法收斂。
對(duì)法向量做如下變形:
對(duì)應(yīng)的新的線性光照模型如下所示:
L(i,j,z)
對(duì)應(yīng)的代價(jià)函數(shù)如下所示:
(7)
算法的輸入包括z0、m、ρ(i,j)等光照模型參數(shù),輸出為zk,求解的步驟如圖2所示。
實(shí)驗(yàn)時(shí)分別以單一反射率的石膏像和穿著多反射率服裝的人為重建目標(biāo),在室內(nèi)自然光環(huán)境下用Kinect深度相機(jī)進(jìn)行數(shù)據(jù)采集。
圖2 求解步驟Fig.2 Solving procedure
實(shí)驗(yàn)場(chǎng)景如圖3所示,在距石膏像0.6~1.5 m的范圍內(nèi)進(jìn)行拍攝。
圖3 實(shí)驗(yàn)場(chǎng)景Fig.3 Experimental scene
生成的數(shù)據(jù)如圖4所示。為了更方便展示,對(duì)深度圖進(jìn)行了加強(qiáng)對(duì)比度處理。
圖4 彩色圖和深度圖Fig.4 Color image and depth image
通過(guò)比較,選擇以下參數(shù):σs=8,σr=15,σc=0.223,σd=7.12,λρ=0.1,λs=1,λd=0.4,λl=0.007 5。單一反射率石膏像的重建結(jié)果如圖5所示,為了更好地展示重建結(jié)果,對(duì)面部細(xì)節(jié)進(jìn)行放大。
為了比較本文方法與其他方法的重建精度,將使用Artec掃描儀掃描得到的三維模版與不同方法的重建結(jié)果進(jìn)行注冊(cè)配準(zhǔn),計(jì)算重建模型上點(diǎn)與標(biāo)準(zhǔn)模板間點(diǎn)的最近幾何距離,并以偽彩色表示,如圖6所示。
圖5 石膏像重建結(jié)果Fig.5 Reconstruction results of plaster statue
三者誤差比較如表1所示。從表1可以看出,采用本文方法所得結(jié)果誤差更小。
圖6 偽彩色圖Fig.6 Pseudo color map
穿著多反射率服裝的人的重建結(jié)果如圖7所示。相較于利用改進(jìn)的彩色光度立體方法實(shí)現(xiàn)的多色物體重建[10],本文沒(méi)有光源、采樣球等其他環(huán)境限制,實(shí)現(xiàn)方法更為簡(jiǎn)單。
表1 誤差比較Tab.1 Error comparison
圖7 穿著多反射率服裝的人的重建結(jié)果Fig.7 Reconstruction results of a person wearing multi-reflective clothes
本文采用RGBD信息和SFS融合的方法在室內(nèi)自然光環(huán)境下進(jìn)行實(shí)驗(yàn),結(jié)果表明該方法較好地重建出了物體的細(xì)節(jié)信息,彌補(bǔ)了深度相機(jī)測(cè)量結(jié)果中噪聲過(guò)大的缺陷。相較于RGBD融合彩色光度立體方法,本文方法解決了重建環(huán)境限制的問(wèn)題,如不需要暗室環(huán)境、不需要光源、不限制物體反射率等。如何更好地實(shí)現(xiàn)全視角三維重建,是下一步的工作重點(diǎn)。