專利名稱::利用控制點信息實現(xiàn)半球體三維表面形狀的重建方法
技術(shù)領(lǐng)域:
:本發(fā)明屬于物體三維表面測量
技術(shù)領(lǐng)域:
,具體地說是涉及一種利用控制點信息實現(xiàn)了半球體三維表面形狀的重建方法,為真實物體三維模型的精確重建提供了理論依據(jù)和應(yīng)用空間。
背景技術(shù):
:為了滿足工業(yè)檢測,逆向工程和多媒體三維建模的需要,獲取物體三維表面的準(zhǔn)確信息,已經(jīng)成為近年來研究的熱點問題之一。然而,如何使重建的物體三維表面無限逼近于標(biāo)準(zhǔn)的物體表面,至今仍未能很好解決問題。目前,物體三維表面重建方法按是否接觸測量來區(qū)分,主要分為接觸式測量方法和非接觸式測量方法。接觸式測量方法的復(fù)雜度和造價高,不能滿足實際的應(yīng)用條件。非接觸式測量方法的主要有立體視覺法、ShapefromShading(簡稱SFS)、光度立體法等。立體視覺法對立體匹配點的數(shù)量和準(zhǔn)確度要求都非常高,在實際處理中很困難。SFS的求解是一個病態(tài)問題,計算量大,誤差較大。光度立體法是針對上述兩種方法的缺點提出的,該方法測量速度快,具有一定的應(yīng)用價值。在圖像重建領(lǐng)域中,光度立體法(PS)是在至少三個不同光源方向的情形下,拍攝多幅圖像,利用圖像的光強來計算物體表面的方向梯度,進(jìn)而得到物體表面的三維重建。在實際的應(yīng)用中一般采用變分法和插補面法。變分法僅僅考慮了重建物體三維表面形狀的局部特征,忽略了全局的形狀特征,因此,采用變分法重建物體三維表面會造成很大的誤差,由實驗表明,變分法重建的平均相對誤差高達(dá)19.76%。插補面法是在待測物體表面噴涂漫反射材料,使用的光源是白光光源。它是2004年由以色列Aviv大學(xué)的Horovitz等人獨立提出的一種計算機輔助的物體三維表面偏差校正方法,具體地說,首先利用經(jīng)典的重建算法(比如變分法)得到半物體三維表面fjx,y),然后以樣條曲線理論為基礎(chǔ),結(jié)合單位矢量場的光滑性準(zhǔn)則,計算插補面f2(x,y),最后將^(x,y)和f2(x,y)相加,即可得半物體三維表面f3(x,y)。然而,該方法雖然測量速度快,但是,該算法所得的重建物體三維表面形狀的精度不高。
發(fā)明內(nèi)容鑒于以上所述現(xiàn)有技術(shù)存在的問題和不足,本發(fā)明目的在于提供一種利用控制點信息實現(xiàn)半球體三維表面形狀的重建方法,該方法不僅測量球類物體三維表面形狀速度快,而且測量所得的重建半球體三維表面形狀的精度高,進(jìn)而實現(xiàn)半球體三維表面形狀的重建。為達(dá)到上述目的,本發(fā)明采用如下方案上述利用控制點信息實現(xiàn)半球體三維表面形狀的重建方法,其特征在于首先構(gòu)建標(biāo)準(zhǔn)半球模型,從三個角度得到三幅半球體灰度圖像,建立物體表面輻照度方程;然后利用物體表面輻照度方程和光度立體法,唯一確定物體表面方向梯度,進(jìn)行變分法處理,由方向梯度重建半球體三維表面4(x,y);最后采用插補面算法和半球體表面控制點三維信息,得到插補面f2(x,y),將fjx,y)和f2(x,y)線性疊加求出物體表面每個點的三維信息,得到重建的半球體三維表面f3(x,y),其具體步驟如下(1)、構(gòu)建標(biāo)準(zhǔn)半球體模型,設(shè)立圖像表面輻照度方程;(2)、采集至少三幅圖像,確定半球體表面方向梯度,采用變分法重建半球體三維表面fjx,y);(3)、選取若干控制點信息點投影到xy平面,采用插補面算法獲取插補面&(x,y),將^(x,y)和f2(x,y)相加得到重建的半球體三維表面f3(x,y)由徑向基函數(shù)理論可知,薄板樣條函數(shù)是徑向基函數(shù)的一種。為提高重建表面的精度,本發(fā)明對gm(x,y)進(jìn)行修正,修正后的徑向基函數(shù)為gi^^=|f^m+《'^:,該薄板LQ與也樣條函數(shù)也能提高重建半球體三維表面的精度。本發(fā)明的利用控制點信息實現(xiàn)半球體三維表面形狀的重建方法與現(xiàn)有技術(shù)相比具有的優(yōu)點和效果是該方法采用插補面算法和半球體表面控制點三維信息,得到插補面f2(x,y),將fjx,y)和f2(x,y)線性疊加,就可以得到比較理想的物體三維表面f3(x,y),不僅測量球類物體三維表面形狀速度快,而且測量所得的重建半球體三維表面形狀的精度高。實驗結(jié)果表明,本發(fā)明所重建半球體三維表面的平均相對誤差減少大約1.3%。圖1為本發(fā)明的利用控制點信息實現(xiàn)半球體三維表面形狀的重建方法的流程圖;圖2為三幅半球體灰度圖像;圖3為成像幾何原理示意圖;圖4為由單幅圖像求解p,q的不是唯一性的示意圖;圖5為標(biāo)準(zhǔn)半球體三維立體圖;圖6為變分法三維表面重建立體圖;圖7為半球體表面控制點信息的線性加點方式示意圖(控制點信息投影到xy平面上);圖8為插補面法重建截面與標(biāo)準(zhǔn)半球截面比較示意圖(圖像寬度為75像素處)。具體實施例方式以下結(jié)合附圖對本發(fā)明的實施例作進(jìn)一步的詳細(xì)說明,本實施例以本發(fā)明的技術(shù)方案為前提進(jìn)行實施,給出了詳細(xì)的實施方式,但本發(fā)明的保護(hù)范圍不限于下述的實施例。本發(fā)明的利用控制點信息實現(xiàn)半球體三維表面形狀的重建方法的一個優(yōu)選實施例結(jié)合附圖詳述如下如圖1所示,其具體步驟如下(1)、構(gòu)建標(biāo)準(zhǔn)半球體模型,設(shè)立圖像表面輻照度方程獲取物體三維表面形狀的前提條件是半球體輻照度方程的求解。得到表面輻照度方程的方法是設(shè)標(biāo)準(zhǔn)半球三維立體模型,半球體表面用Z=f(X,y)來表示,則表面的反射分布函數(shù)R(x,y)與表面法向^,光源方向^及觀察者方向j有關(guān),如圖3所示的成像幾何原理,當(dāng)半球體表面為漫反射面,即理想的朗伯表面時,設(shè)^與^的夾角為a,則R(x,y)=Pcosci,P為反射常數(shù)。設(shè);=^^="^,則表面法向—可表示為(p,q,-l)。設(shè)光源方向51二(5^2,a),當(dāng)pi(x,y)=cos"=1時,反射分布函數(shù)R(x,y)有如下表達(dá)式為,S〉+《2《-53(1)//>+《+1^+S2+a其中,l問l,ll判為向量力與^的模長,〈力,》表示力與^勺內(nèi)積,由式(1)表明,R(x,y)也可表示為關(guān)于P,q的函數(shù)。由公式(1)可知,圖像表面輻照度方程為R(P,q),R(x,y)與R(p,q)是等價的。設(shè)I(x,y)二R(p,q),則llpr,(2)、/^2+《2+1其中,I(x,y)是測得的圖像表面輻照度函數(shù),圖像上的每一點(x,y)都對應(yīng)著三維表面z=f(x,y)上的梯度p與q。(2)、采集至少三幅圖像確定半球體表面方向梯度,利用變分法重建半球體三維表面f\(x,y)采用至少三幅圖像確定半球體表面方向梯度關(guān)于p,q的圖像表面輻照度方程R(p,q)=I(x,y)的解為二次曲線。對I(x,y)進(jìn)行歸一化處理,假定光源方向^=(-1,0,-1),那么當(dāng)圖像上某點的亮度分別為0.8133和0.397時,利用公式(2)可得對應(yīng)的p,q分布也各不相同。即由單幅圖像求解三維表面梯度場有無窮多個解。設(shè)現(xiàn)有從n個光源方向萬(&A2,&;)獲得的n幅圖像,其相應(yīng)的圖像輻照度函數(shù)為Ii(x,y),簡稱I"i=1,2,...,n。當(dāng)n=2時,由Rjp,q)=IjR2(p,q)=12可得《uP+J12《-J13=A—/,(3)'23式(3)是關(guān)于p,q的一條直線,其與Rjp,q)=^的交點有兩個,即由兩幅圖像不能唯一確定梯度場。當(dāng)n二3時,選Rjp,q)二^及Rjp,q)=13,可得^■P+AW-A3=i(4)+一s33由式(3)與式(4)的兩個方程,可求出一個唯一的梯度場。以上推導(dǎo)說明欲獲得唯一確定的三維表面的梯度場,必須至少獲得三幅不同光照方向下的圖像,因此,利用光度立體技術(shù)進(jìn)行半球體三維表面重建的基本原理為在至少三個不同光源方向的情形下,拍攝多幅圖像,利用圖像的光強來計算半球體表面的方向梯度,進(jìn)而得到半球體表面的三維重建。如圖4所示,式(3)或式(4)由單幅圖像求解p,q的,不具有唯一性。在本發(fā)明中,采用三幅圖像重建半球體三維表面。利用變分法重建半球體三維表面^(x,y)采用變分法重建半球體三維表面形狀的構(gòu)思為利用光度立體法,在歸一化條件7下求解半球體表面方向梯度,然后利用傳統(tǒng)積分法求出三維表面的高度初始值和變分處理之后的迭代公式,結(jié)合表面方向應(yīng)服從可積的平滑約束條件,唯一確定三維表面的高度。確定半球體表面方向梯度,對半球體表面方向作歸一化處理,有<table>tableseeoriginaldocumentpage8</column></row><table><formula>formulaseeoriginaldocumentpage8</formula>其中,s=(n&),可得,=n從而有p=—77,《=一&假設(shè)在Q區(qū)域內(nèi)確定了半球體表面方向,則表面任一點的高度可由梯度(p,q)確定,表達(dá)式為dz=pdx+qdy,然后構(gòu)造函數(shù)(6),并使之最小,//。[(zx-p)2+(zy-q)2]dxdy(6)函數(shù)(6)的歐拉方程為<formula>formulaseeoriginaldocumentpage8</formula>方程(7)存在多解問題,為此采用變分處理??傻萌缦碌?lt;formula>formulaseeoriginaldocumentpage8</formula>8)其中,h為采樣間隔,(i,j)為xy平面上點(x,y)的離散化表示,i=1,2,,W,j=1,2,,H,W和H分別表示獲取的圖像寬度和高度,Zij表示半球體表面(i,j)處的高度值,將Zij擬合在一起,就可以得到^(x,y)。(3)、選取若干控制點信息點投影到xy平面,采用插補面算法獲取插補面&(x,y),將^(x,y)和f2(x,y)相加得到重建的半球體三維表面f3(x,y)。假設(shè)z=f(x,y)GC2(R2),C2(R2)為R2上的二階連續(xù)可微函數(shù)空間,構(gòu)造可積二次變分函數(shù)(9),并使之最小<formula>formulaseeoriginaldocumentpage8</formula>(9)然后,根據(jù)薄板樣條函數(shù)插補理論,可得用于插補面法的f2(x,y)計算公式為<formula>formulaseeoriginaldocumentpage8</formula>(10)其中Um表示第m個控制點的權(quán)重因子,gm(x,y)表示薄板樣條函數(shù)。最后,利用公式(11)便可以得到重建的半球體三維表面f3(x,y)f3(x,y)=^(x,y)+f2(x,y)(11)假設(shè)已知標(biāo)準(zhǔn)半球體表面N個控制點,記為(am,bm,lm),1《m《N,在現(xiàn)有的文獻(xiàn)中,選取的薄板樣條函數(shù)gm(A"=k2logr">0I0,其他,其中,rm表示半球體表面任一點(x,y)到第HI個控制點的距離,計算公式為<formula>formulaseeoriginaldocumentpage8</formula>令變分法重建得到的半球體三維表面在(am,bm)處的高度值為hm,記vm=lm-hm,^=如-a")2+d乜)2,1《m《N,1《n《N,r(0=二bg"l>:,系數(shù)Cl,c2,c3,um的計算公式為0,其他L—丄Y=(Upu2,,其中Y=(Vl,v2、tUn,C]_,,C3,,.,vN,0,0,0)T,Z=(12)—a:尸f尸o0是3X3的零矩陣,11(3!6,《:0r(g0巧們)由徑向基函數(shù)理論可知,薄板樣條函數(shù)是徑向基函數(shù)的一種。為提高重建表面的精度,本發(fā)明對gm(x,y)進(jìn)行修正,修正后的徑向基函數(shù)為^(^y):,實驗證、Q離明,該薄板樣條函數(shù)也能提高重建半球體三維表面形狀的精度。實驗?zāi)M和性能評價上述關(guān)于圖像表面輻照度方程的求解,是在待測物體表面符合朗伯反射模型特征的前提下進(jìn)行的,因此,采用3幅朗伯反射模型生成的半球體圖像進(jìn)行三維表面重建實驗。如圖5所示,該圖為標(biāo)準(zhǔn)半球體三維立體圖,經(jīng)過實驗?zāi)M得到三幅半球體灰度圖像圖,其如圖2所示,圖像寬度與高度都為150像素,球體半徑50像素,光照強度為200坎德拉,半球體表面傾角(Slant)取45°,偏角(Tilt)分別取O。,100°,200°。如圖6所示,該圖為變分法三維表面重建立體圖,它是利用光度立體法計算出半球體表面方向梯度,然后采用變分法得到物體三維表面&(x,y);如圖7所示,控制點信息的五種線性加點方式為散狀加點;弧形加點;在弧形加點的基礎(chǔ)上加入一個半球體表面邊界點;環(huán)形加點;在環(huán)形加點的基礎(chǔ)上加入一個半球體表面最高點。依次分別稱為;方式1、方式2、方式3、方式4、方式5。為區(qū)別表示不同的加入方式,將控制點信息投影到xy平面上。經(jīng)過實驗?zāi)M得到三幅半球體灰度圖像;如圖8所示,該圖為控制點信息不同的加入方式插補面法重建截面與標(biāo)準(zhǔn)半球體截面比較。為說明不同算法的性能,從重建時間,重建精度等角度分析重建的性能評價效果,具體見表1和表2。表1不同加點方式的插補面法表面重建的性能評價控制點加入方式時間(秒)高度差值的均方差(像素)平均相對誤差(%)方式11.844211.416537.13方式24.15891.7308e+0035153.00方式34.18662.939610.60方式41.02183.692711.97方式51.23820.64641.71表2不同算法表面重建的性能評價9<table>tableseeoriginaldocumentpage10</column></row><table>由表1、2中不同算法可以看出,不同的控制點信息加入方式,重建的半球體(物體)三維表面效果是不同的,并且方式5是最佳的控制點信息加入方式。插補面法利用控制點信息構(gòu)建了一個插補面,對半球體表面進(jìn)行樣條插值,保證了半球體表面整體形狀特征,有效地實現(xiàn)了半球體表面各點的偏差校正,本發(fā)明中對徑向基函數(shù)進(jìn)行了修正,方式5的重建半球體三維表面的平均相對誤差減少大約1.3%,實驗結(jié)果表明,對徑向基函數(shù)修正是有益的。權(quán)利要求一種利用控制點信息實現(xiàn)半球體三維表面形狀的重建方法,其特征在于首先構(gòu)建標(biāo)準(zhǔn)半球體模型,從三個角度得到三幅半球體灰度圖像,建立物體表面輻照度方程;然后利用物體表面輻照度方程和光度立體法,唯一確定物體表面方向梯度,進(jìn)行變分法處理,由方向梯度重建半球體三維表面f1(x,y);最后采用插補面算法和半球體表面控制點三維信息得到插補面f2(x,y),將f1(x,y)和f2(x,y)線性疊加求出物體表面每個點的三維信息,進(jìn)而得到重建的半球體三維表面形狀f3(x,y),其具體步驟如下(1)、構(gòu)建標(biāo)準(zhǔn)半球體模型,設(shè)立圖像表面輻照度方程;(2)、采集至少三幅圖像確定半球體表面方向梯度,利用變分法重建半球體三維表面f1(x,y);(3)、選取若干控制點信息點投影到xy平面,采用插補面算法獲取插補面f2(x,y),將f1(x,y)和f2(x,y)相加得到重建的半球體三維表面f3(x,y)。2.根據(jù)權(quán)利要求1所述的利用控制點信息實現(xiàn)半球體三維表面形狀的重建方法,其特征在于,上述步驟(1)中所述的構(gòu)建標(biāo)準(zhǔn)半球體模型,設(shè)立反射分布函數(shù)與輻照度方程,其具體如下(1)、構(gòu)建標(biāo)準(zhǔn)半球體模型,設(shè)立圖像表面輻照度方程設(shè)標(biāo)準(zhǔn)半球體三維立體模型,半球體(物體)表面為z=f(x,y),則表面的反射分布函數(shù)R(x,y)。設(shè)一與』勺夾角為a,則R(x,y)=Pcosa,P為反射常數(shù),設(shè)^=|^,《=|^則表面法向#為(p,q,-l)。設(shè)光源方向S二(A,AA),當(dāng)P<formula>formulaseeoriginaldocumentpage2</formula>1時,反射分布函數(shù)R(x,y)表達(dá)式為(1)<formula>formulaseeoriginaldocumentpage2</formula>其中,l網(wǎng),Ipll為向量力與S的模長,〈^^〉表示力與^勺內(nèi)積,由公式(1)可知,圖像表面輻照度方程為R(P,q),R(x,y)與R(p,q)是等價的,設(shè)I(x,y)二R(p,q),則<formula>formulaseeoriginaldocumentpage2</formula>(2)其中,I(x,y)是測得的圖像表面輻照度函數(shù),圖像上的每一點(x,y)都對應(yīng)著三維表面z=f(x,y)上的梯度p與q。3.根據(jù)權(quán)利要求2所述的利用控制點信息實現(xiàn)半球體三維表面形狀的重建方法,其特征在于,上述步驟(2)中所述的確定半球體表面方向梯度,采用變分法重建半球體三維表面^(x,y),其具體如下:利用公式(l),采用3幅圖像可以得到相應(yīng)的圖像表面輻照度方程,聯(lián)立求解可以確定半球體表面方向梯度,對半球體表面方向作歸一化處理,有<formula>formulaseeoriginaldocumentpage2</formula><formula>formulaseeoriginaldocumentpage3</formula>其中,S—^^S一3),可得力。^1,"yv假設(shè)在Q區(qū)域內(nèi)確定了半球體表面方向,則表面任一點的高度可由梯度(P,q)確定,表達(dá)式為dz=pdx+qdy,然后構(gòu)造函數(shù)(6),并使之最小,<formula>formulaseeoriginaldocumentpage3</formula>函數(shù)(6)的歐拉方程為<formula>formulaseeoriginaldocumentpage3</formula>方程(7)存在多解問題,為此采用變分處理,可得如下迭代公式<formula>formulaseeoriginaldocumentpage3</formula>其中,h為采樣間隔,(i,j)為xy平面上點(x,y)的離散化表示,i=1,2,...,W,j=1,2,...,H,W和H分別表示獲取的圖像寬度和高度,Zij表示半球體表面(i,j)處的高度值,將Zij擬合在一起就可以得到fjx,y)。4.根據(jù)權(quán)利要求3所述的利用控制點信息實現(xiàn)半球體三維表面形狀的重建方法,其特征在于,上述步驟(3)中所述的選取若干控制點信息點投影到xy平面,采用插補面算法獲取插補面f2(x,y),將^(x,y)和f2(x,y)相加得到重建的半球體三維表面f3(x,y),其具體如下假設(shè)已知標(biāo)準(zhǔn)半球體表面N個控制點,記為(am,bm,lm),l《m《N,令z=f(x,y)GC2(R2),C2(R2)為f上的二階連續(xù)可微函數(shù)空間,構(gòu)造可積二次變分函數(shù)(9),并使之最小<formula>formulaseeoriginaldocumentpage3</formula>根據(jù)薄板樣條函數(shù)插補理論,可得用于插補面法的f2(x,y)計算公式為<formula>formulaseeoriginaldocumentpage3</formula>(9)(10)其中Um表示第m個控制點的權(quán)重因子,gm(x,y)表示薄板樣條函數(shù)。最后,利用公式(11)便可以得到重建的半球體三維表面f3(x,y)f3(x,y)=fjx,y)+f2(x,y)(11)選取的薄板樣條函數(shù)g^<formula>formulaseeoriginaldocumentpage3</formula>其他<formula>formulaseeoriginaldocumentpage0</formula>,其中,rm表示半球體表面任一點(x,y)到第m個控制點的距離,計算公式為;=#-;;-^,令變分法重建得到的半球體三維表面在(am,bm)處的高度值為hm,記vm=lm-hm,、=^/(am-a)2-《)2,1《m《N,1《n《N,T(0=:lQg"::,系數(shù)Cl,c2,c3,um的計算公式為0,其他<formula>formulaseeoriginaldocumentpage3</formula>0是3X3的零矩陣,<formula>formulaseeoriginaldocumentpage4</formula>全文摘要本發(fā)明公開了一種利用控制點信息實現(xiàn)半球體三維表面形狀的重建方法,該方法首先構(gòu)建標(biāo)準(zhǔn)半球體模型,從三個角度得到三幅半球體灰度圖像,建立物體表面輻照度方程;然后利用物體表面輻照度方程和光度立體法,唯一確定物體表面方向梯度,進(jìn)行變分法處理,由方向梯度重建半球體三維表面f1(x,y);最后采用插補面算法和半球體表面控制點三維信息得到插補面f2(x,y),將f1(x,y)和f2(x,y)線性疊加求出物體表面每個點的三維信息,進(jìn)而得到重建的物體三維表面f3(x,y)。該方法不僅測量球類物體三維表面形狀速度快,而且測量所得的重建半球體三維表面形狀的精度高,實驗結(jié)果表明,本發(fā)明所重建半球體三維表面的平均相對誤差減少大約1.3%。文檔編號G06T17/10GK101719287SQ20091019953公開日2010年6月2日申請日期2009年11月26日優(yōu)先權(quán)日2009年11月26日發(fā)明者呂東輝,張棟申請人:上海大學(xué)