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