北理工賈云德《計算機視覺》chapter13三維場景表示
《北理工賈云德《計算機視覺》chapter13三維場景表示》由會員分享,可在線閱讀,更多相關(guān)《北理工賈云德《計算機視覺》chapter13三維場景表示(18頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、精選優(yōu)質(zhì)文檔-----傾情為你奉上 第十三章 三維場景表示 三維場景表示是機器視覺的又一個關(guān)鍵技術(shù).為了理解場景并與場景中的物體交互作用,必須將場景的三維數(shù)據(jù)進行有效的表示.三維場景表示包含有兩個基本問題:場景重建和場景分割.場景重建(reconstruction)是指使用插值或擬合方法從采樣點(稠密深度測量值或稀疏深度測量值)計算曲面的連續(xù)函數(shù),實際中通常使用許多三角片或小平面片構(gòu)成的網(wǎng)面來近似表示場景深度測量值;場景分割是將表示場景的網(wǎng)面分割成若干部分,每一部分表示一個物體或一個特定的區(qū)域,這樣有利于物體識別、曲面精確估計等后處理算法的實現(xiàn). 本章從曲面的幾何特征開始,討
2、論場景曲面重建和分割的一些基本方法.這些方法可以將雙目立體測距、主動三角測距、激光雷達測距等成像系統(tǒng)的輸出值轉(zhuǎn)換成簡單的曲面表示.這些基本方法包括把測量點轉(zhuǎn)變成三角片網(wǎng)面、把距離測量值分割成簡單的曲面片、把測量點擬合成一個光滑曲面以及用測量點匹配一個曲面模型等. 13.1 三維空間曲線 討論三維空間曲線的原因主要有兩個,一是一些物體或物體特征可以直接用三維空間曲線表示,二是三維空間曲線表示可以推廣到三維空間曲面表示。曲線表示有三種形式:隱式、顯式和參數(shù)式。在機器視覺領(lǐng)域中,曲線的參數(shù)表示比隱式和顯式表示更為常用。三維曲線的參數(shù)形式為: (13.1) 上式
3、說明曲線上的一點可由參數(shù)表示的三個函數(shù)來定義,曲線的起點為,終點為。比如,從到的直線段的參數(shù)方程為: ?。?3.2) 空間曲線的最通常的表示形式是三次多項式,下面我們將詳細討論. 13.1.1 三次樣條曲線 物體表面上的線條可以是直線、弧線或是任意的曲線.曲線上的每一點位置可以表示成參數(shù)形式.一般的三維曲線都可以方便地用樣條函數(shù)來表示,這和前面討論的平面曲線表示類似.三次樣條函數(shù)是一系列首尾相連的表示復雜曲線的三次多項式曲線,每一段三次樣條函數(shù)的參數(shù)表示形式為:
4、(13.3) 其中.三次多項式允許曲線通過確定的相切點,三次多項式是對于非平面曲線的最低階的多項式.將上式的系數(shù)表示成如下系數(shù)矢量: (13.4) 而且,則三次多項式曲線可以重寫為如下形式: (13.5) 更復雜的曲線可以表示為一系列首尾相連的三次多項式: (13.6) 其中.如果定義第個三次多項式段在單位區(qū)間上,那么整個區(qū)間則
5、為.可以認為,這個三次多項式序列是起點為,終點為的單一參數(shù)曲線.這個三次多項式序列叫做一個三次樣條函數(shù),它是機器視覺和計算機圖形學中表示任意曲線的常用方式. 13.1.2 三維B樣條曲線 三維B樣條曲線很適合表示由點序列構(gòu)成的曲線,因此可以將二維B樣條的定義擴展到控制點位于三維空間的三維B樣條。例如對已知三維點序列,由等式(7.28)給出第階三次多項式,而由等式(7.31)給出.三維B樣條曲線也不通過控制點. 13.2 三維空間曲面的表示 本節(jié)將討論機器視覺中常用的幾種曲面表示. 13.2.1多邊形網(wǎng)面 平面多邊形,也叫平面片(planar patch),可以組成復雜的網(wǎng)面
6、(polygon mesh),以表示各種物體的形狀.圖13.1三角形網(wǎng)面和四邊形網(wǎng)面示意圖。本節(jié)將介紹如何用平面片進行物體多邊形網(wǎng)面表示. 圖13.1 物體表面的網(wǎng)面表示,(a) 三角形網(wǎng)面表示,(b)四邊形網(wǎng)面表示 第七章討論了如何用若干個直線段端點(頂點)坐標表來表示一個多直線段,這一方法也可推廣到平面多邊形,即平面多邊形網(wǎng)面也可以用一系列平面多邊形頂點坐標表來表示.一個頂點常常是三個或三個以上多邊形的公共頂點,因此,一個頂點在表中重復出現(xiàn)多次.為了使多邊形網(wǎng)面的每一個頂點在表中僅出現(xiàn)一次,可以使用一種間接的頂點坐標表示方法,即對這些頂點從1到進行編號,并按這一順序
7、將每一個頂點的坐標存入表中.每一個多邊形可用其頂點編號表表示.不過這種頂點表不能明顯地表示相鄰表面的邊界,對于一給定頂點,也不能有效地發(fā)現(xiàn)所有包含此頂點的表面.這些問題可以用翼邊緣數(shù)據(jù)結(jié)構(gòu)(Winged Edge Data Structure)來解決. 翼邊緣數(shù)據(jù)結(jié)構(gòu)是一種網(wǎng)絡數(shù)據(jù)結(jié)構(gòu),它具有三種類型數(shù)據(jù)記錄:頂點、邊和面.沿著數(shù)據(jù)結(jié)構(gòu)包含的數(shù)據(jù)指針可以找到所有元素的鄰接關(guān)系,而無須搜索整個網(wǎng)面,也無須將每一元素的所有鄰接元素都存儲起來.在多邊形網(wǎng)面中,每一個頂點對應數(shù)據(jù)結(jié)構(gòu)中的一個頂點記錄,每一個面對應一個面記錄、每一條邊對應一個邊記錄。這樣,可以直接查詢一條邊對應的兩個頂點和兩個多邊
8、形面,也可以直接查詢一個頂點對應的所有多邊形面(或邊),查詢時間正比于該頂點對應的多邊形面(或邊)的數(shù)量. 翼邊緣數(shù)據(jù)結(jié)構(gòu)可以有效地表示三角面網(wǎng)面及其它具有多條邊的多邊形網(wǎng)面,并且不要求各個多邊形面的邊數(shù)相等.由于各頂點坐標包含在頂點記錄中,因此,多邊形面(或邊)的位置可以由頂點的坐標計算出來. 每一個面記錄指向該面的某一個邊記錄,每一個頂點記錄指向該頂點對應的邊記錄。因此,邊記錄包含將多邊形面及其頂點連結(jié)成多邊形網(wǎng)面的指針,并且允許對多邊形網(wǎng)面頂點進行快速的掃描.具體地說,每一個邊記錄包含有兩個端點指針,其兩側(cè)的兩個多邊形面指針和4個鄰接翼指針,如圖13.2所示。其中的面、頂點和邊是用指
9、南針的方向表示的,這樣做只是為了方便,實際上,多邊形網(wǎng)面上的方向與地球方位沒有任何關(guān)系.每一條翼邊允許對其對應的多邊形頂點進行掃描,例如,可沿著東北翼邊按順時針方向掃描東多邊形面各頂點. 圖13.2 多邊形網(wǎng)面翼邊示意圖 確定多邊形面是在東面還是西面取決于進入翼邊緣數(shù)據(jù)結(jié)構(gòu)中多邊形面的順序.當掃描一個多邊形面時,必須首先檢查此面是在邊緣的東面還是西面.如果此面在這條邊的東面,則沿著東北翼順時針掃描或沿著東南翼逆時針掃描;如果此面在此邊的西面,則沿著西南翼順時針掃描或沿著西北翼逆時針掃描.順時針、逆時針方向是以觀察者為中心的.順時針方向是這樣確定的:左手大拇指指向此平面的法
10、線方向,左手的其它手指方向就是沿此面的順時針方向;右手大拇指指向此面的法線方向,右手的其它手指方向就是沿此面的逆時針方向.如果多邊形網(wǎng)面表示一個物體完整表面,則所有面的法線都向外.如果此多邊形網(wǎng)面表示一個曲面,則所有法線都指向此曲面的同一邊.如果此曲面是圖形曲面,則法線指向圖形空間坐標的正坐標軸方向,例如,如果多邊形網(wǎng)面為圖形表面,則此表面法線指向正軸. 在多邊形網(wǎng)面上增加一個多邊形面的方法見算法13.1,沿某一方向掃描多邊形面各頂點(或邊)的方法見算法13.2.在算法13.1中,假定頂點是沿著平面順時針方向排列的.適當改進算法13.2,可用于搜索一個給定頂點對應的所有邊(或面).
11、 算法13.1 翼邊緣數(shù)據(jù)結(jié)構(gòu)上增加一個多邊形面的算法 輸入是一個按順時針方向排列的多邊形面的頂點表,包括頂點個數(shù)和頂點坐標. 1.對于頂點表中的每一個頂點,如果沒有出現(xiàn)在數(shù)據(jù)結(jié)構(gòu)中,則可增加該頂點記錄. 2.對于每一對相鄰的頂點(包括起點和終點),如果其對應的邊沒有出現(xiàn)在此數(shù)據(jù)結(jié)構(gòu)中,則可增加該邊記錄. 3.對于多邊形的每一個邊記錄,增加翼邊,以便順時針或逆時針掃描該多邊形面. 4.產(chǎn)生一個多邊形面記錄,并增加指針指向其中一個邊緣. 算法13.2 沿著多邊形面順時針跟蹤邊緣 輸入是一個指向面記錄的指針和一個調(diào)用待訪問邊的進程. 1.從面記錄中取
12、出第一條邊,使之成為當前邊. 2.處理當前邊,即對被訪問的每一條邊完成所有的操作,如,沿著多邊形面順時針方向編輯頂點表,沿掃描方向記錄邊緣端點(頂點). 3.如果正在掃描當前邊的西側(cè)面,則下一條邊將是西南翼. 4.如果正在掃描當前邊的東側(cè)面,則下一條邊將是東南翼. 5.如果當前邊是第一條邊,則掃描結(jié)束. 6.否則,回到第2步. 13.2.2 曲面片 曲面上的各部分可以用一個雙多項式表示.例如,平面可以表示為: (13.7) 曲面片可以用更高階的多項式來表示. 雙線性曲面片(線性是指任何平行于坐標軸的截面的
13、截線是一直線): (13.8) 雙二次曲面片: (13.9) 雙三次曲面片: (13.10) 雙四次曲面片 (13.11) 在機器視覺中,上述雙多項式經(jīng)常被用來表示曲面片. 多項式曲面片非常適合于局部表面的表示,例如一個點的鄰域,但整個表面的表示不是很方便,而且不能表示非圖形曲面.更復雜的曲面可以用三次樣條函數(shù)來表示,這將在下一節(jié)討論. 13.2.3張量積
14、曲面 13.1.1節(jié)介紹了如何用參數(shù)形式將一個復雜曲線表示成一個三次多項式,此方法可以推廣到復雜曲面的參數(shù)表示. 一個三次多項式參數(shù)方程的矩陣形式為: (13.12) 其中,每一個系數(shù)都是一個三元矢量. 張量積曲面是由兩條曲線合成的,其參數(shù)形式如下: (13.13) 其中,是三元行矢量,是三元列矢量,,的積是每一個坐標系數(shù)的雙積.此系數(shù)曲面可以寫為: (13.14) 其中,
15、是矩陣,其元素是參數(shù)曲面的每一個坐標系數(shù)的矢量.在這種表示中,我們可以看到張量積曲面確實是兩曲線的積:一條曲線以為坐標,另一條以為坐標.任何平行于坐標軸的平面和張量積三次多項式曲面的交線都是三次多項式曲線.換句話說,如果其中一坐標是常數(shù),那么結(jié)果就是一條以其它兩個坐標為參數(shù)的三次多項式曲線. 13.2.4 超二次曲面 超二次曲面(superquadrics)由二次方程添加參數(shù)生成,這樣可以通過調(diào)整參數(shù)很方便地改變物體的形狀。增加的參數(shù)數(shù)目等同于物體的維數(shù),比如,曲線是一個參數(shù),曲面是兩個參數(shù)。 (1)超橢圓 在超橢圓相應的方程中,允許和項的指數(shù)是變量,這樣可以得到橢圓的笛卡兒表示式。笛
16、卡兒超橢圓方程的表示形式之一是: (12.15) 其中參數(shù)是任何實數(shù)。當時,可以得到一般橢圓表示式。 相對于方程(12.15),超橢圓參數(shù)參數(shù)方程可以表示成: (12.16) 圖13.3表示了運用不同的參數(shù)值產(chǎn)生的超橢圓面形狀。 圖13.3 不同參數(shù)值對應的超橢圓圖形 (2)超橢圓球 超橢圓球面的笛卡兒表達式是由橢圓球面方程增加二個指數(shù)參數(shù)而得: (12.17) 當時,得到一般的橢球面。 對超橢球面的方程(12.17),我們可以得到
17、相應的參數(shù)表示式: (12.18) 圖13.4表示了由不同參數(shù)和值生成的超圓球形狀。這些及其它超二次曲面形狀的 可以生成很復雜的形狀,如家具、閃電和其它金屬構(gòu)成。 圖 13.4 不同參數(shù)和值生成的超圓球形狀 13.3 曲面插值 本節(jié)將討論如何將上述曲面表示用于實際采樣值的曲面插值計算,比如,用均勻分布網(wǎng)面表示雙目立體測距或主動三角測距系統(tǒng)獲得的深度圖。但是,如果原始深度圖不是均勻分布的,則無法用均勻分布的網(wǎng)面表示,此時就需要曲面插值.一般來說,在對原始圖像進行處理(如邊界檢測和分割)之前,首先需要將深度圖通過插值運算將其表示成
18、一個均勻變化的網(wǎng)面模式. 13.3.1三角形面插值 假定通過雙目立體視覺系統(tǒng)或主動三角測量系統(tǒng)得到一個曲面在離散點()處的采樣值,,下面討論如何在圖像陣列點上通過三角面進行深度值插值計算.我們知道,不共線的空間三點可以構(gòu)成一個平面,平面方程為: (13.19) 所以,已知非共線的空間三點,則可以確定上述方程的三個系數(shù). 我們知道,在的圖像陣列上,每一點的坐標()由下式計算: 對于圖像陣列的每一點(),在深度圖中找出在平面上包含該點的三個非共面的點,根據(jù)(13.19) 求出三角面方程,然后計算該點的
19、深度值: (13.20) 13.3.2二元線性插值 二元線性函數(shù)可以表示為: (13.21) 如果把上式的一個變量設定為常數(shù),則函數(shù)對于另一個變量就是線性變化的.換句話說,任何一個平行于坐標軸的平面和此二元線性表面片的交線都是一個直線段.對于四條邊皆平行于坐標軸的任何矩形平面,有唯一的用于矩形頂點插值的二元線性多項式. 假定我們要在一個矩形網(wǎng)格的四個頂點中間的一點進行插值,并設點由四條邊都平行于坐標軸的矩形包圍.此矩形的頂點坐標是,, ,,其函數(shù)值為,見
20、圖13.5. 二元線性插值的系數(shù)是由矩形的4個頂點確定的,把每一個頂點的坐標代入方程13.20,則系數(shù)滿足如下方程: (13.22) 聯(lián)立上述四個方程,得到系數(shù)求解出: (13.23) 當矩形網(wǎng)格是一個行距和列距都是單位值的方格時,二元線性插值有一個非常簡單的表示.設要插值的點(x,y)離方格的左上頂點的偏移量為,則雙線性插值公式為: (13.24) 此公式可用于插入像元之間的圖像點的像素值. 圖 13.5 二元線性插值示意圖 13.3.3 魯棒插值
21、 在7.4.3節(jié)中,我們介紹了用直線擬合含有局外點的邊緣集的最小中值二乘法(least-median-squares, LMS).最小中值二乘法也可用于曲面片擬合具有局外點的深度測量值集合. 最小中值二乘法是一種魯棒回歸算法,其潰點值為50%,正好對應于待擬合點集的中值的地方.局部最小中值二乘估計器使用最小中值二乘法求出擬合一個局部區(qū)域來的模型參數(shù),即通過極小化殘差平方求解模型參數(shù): (13.25) 是估計的參數(shù)矢量,是在測量點處圖形曲面實際值的估計. 最小中值二乘法可以用于含有局外點的曲面采樣擬合模型的參數(shù)求解.例如,雙目立體視覺
22、的錯誤匹配,會造成錯誤的深度測量值,即局外點,測距雷達也可能在曲面不連續(xù)點處產(chǎn)生局外點.如果在用曲面片擬合深度測量值時使用最小中值二乘法,則這種曲面擬合對局外點不是十分敏感.特別需要指出,最小中值二乘法對曲面片擬合含有局外點的稀疏深度測量值是非常有用的. 將最小中值二乘法簡明地表示出來不是一件易事,但對此算法的實現(xiàn)卻很容易解釋.假設在每一個網(wǎng)格點附近的局部區(qū)域使用曲面片來擬合深度測量值.本算法可以很容易地推廣到使用更高階的曲片塊擬合.對于每一個網(wǎng)格點,選擇離此點最近的個深度測量值,從個測量值中任取數(shù)據(jù)作為一個待擬合子集,則所有可能的數(shù)據(jù)子集為個。用曲面片擬合第個數(shù)據(jù)點子集,表示相關(guān)參數(shù)矢量,
23、計算殘差平方中值: (13.26) 用曲面片擬合所有的子集后,取最小的殘差平方中值對應的參數(shù)矢量. 本方法計算成本較高,因為對每一局部區(qū)域擬合都要進行次.然而每一個曲面擬合是獨立的,程序可以實現(xiàn)高度并行計算.在實際中,可以嘗試幾種可能的組合,使得無局外點子集的概率接近于1,這樣可以大大地減少許多不必要的擬合. 13.4 曲面逼近 由于深度測量值存在誤差,因此找一個曲面來逼近深度數(shù)據(jù)比曲面插值更重要.如果深度測量值是一個連續(xù)曲面上的采樣點,那么完全可以由這些采樣點重建這個曲面.設重建曲面的模型為:
24、 (13.27) 該模型共包含個參數(shù).該曲面重建問題實際上成為確定最適合數(shù)據(jù)的曲面模型參數(shù)的回歸問題,回歸函數(shù)為: (13.28) 如果我們沒有曲面的參數(shù)模型,則只能使用一個普通(或非參數(shù)化〕曲面模型來擬合此數(shù)據(jù),即求解這些數(shù)據(jù)的一個最佳擬合曲面: (13.29) 這是一個不適定(ill-posed)問題,因為許多函數(shù)多可以對該數(shù)據(jù)集實現(xiàn)最佳擬合(實際上,這樣的函數(shù)有無窮多個).不適定這一術(shù)語的意思是問題的求解不唯一,反過來,適定問題(well-posed)會有唯一的最優(yōu)解.為了能使方程13.29
25、變?yōu)檫m定,可以增加一個逼近約束函數(shù),使得所選擇的曲面擬合函數(shù)有唯一解.選擇約束函數(shù)的標準有許多,一種比較常用的標準是選擇既能擬合數(shù)據(jù)又是光滑表面的函數(shù). 已知數(shù)據(jù)點集{()},,則使下式達到極小化的是該數(shù)據(jù)點集的最佳擬合, (13.30) 其中。該方程與13.29式不同之處是增加了一項加權(quán)光滑約束項.光滑約束項叫做正則項或穩(wěn)定函數(shù).權(quán)重系數(shù)稱為正則化參數(shù),較小時,可以使得逼近函數(shù)十分靠近數(shù)據(jù)點集,而較大時,則強迫逼近函數(shù)更平滑.上面方程的第一個項稱為問題約束,在該約束上通過增加穩(wěn)定函數(shù)將不適定問題變?yōu)檫m定問題的過程叫正則化(regularization). 適
26、定這一的概念遠比求唯一解嚴格的多,比如,方程13.29的擬合問題可能有唯一解,但是解空間中還有其它許多完全不同的解可能也是好的解,而一個適定問題只有一個解空間,該解對應的范數(shù)的最小值不僅是唯一的,而且肯定比其它解更好. 13.4.1回歸樣條 回歸樣條法是另一種曲面擬合方法。用曲面模型(如張量積樣條函數(shù))代替方程13.29的擬合函數(shù),該方程就變?yōu)橐粋€回歸問題,求解這一問題,就得到了該曲面模型的參數(shù).當然,如果知道曲面模型,那么就可以直接列出回歸問題的方程,而不必經(jīng)過方程13.29。 許多曲面函數(shù),包括張量積樣條函數(shù),可以表示為基本函數(shù)的線性組合:
27、 (13.31) 為函數(shù)系數(shù),為基本函數(shù).使用張量積樣條可以將基本函數(shù)組合成為一個網(wǎng)格: (13.32) 將方程13.31或13.32的曲面模型代入方程13.28,得到一組求解回歸參數(shù)的線性方程組.因為方程組是稀疏的,因此,用稀疏矩陣方法求解比用奇異值求解要好. 下面將從一維情況開始,詳細介紹回歸樣條計算方法.一維樣條函數(shù)是基本函數(shù)的線性組合: (13.33) 假設樣條基本函數(shù)均勻分布整數(shù)位置,樣條基本函數(shù)在區(qū)間是非零的,基本函數(shù)位于從0到,所以決定樣條基本曲
28、線的形狀的有個系數(shù)(見圖13.6)。 有一個樣條曲線是定義在區(qū)間從 x=3 到x=m+1, 在x=0點的基本函數(shù)跨越3個區(qū)間到此曲線的左端,在x=m+1點的基本函數(shù)跨越3個區(qū)間到達此曲線的右端.曲線端點以外的額外區(qū)間建立了曲線端點的邊界條件,而且必須要包括進來,那樣才能正確地定義第一個曲線段[0,1) 和最后一個曲線段[m,m+1). 圖13.6位于整數(shù)位置的基函數(shù)線性組合構(gòu)成一維樣條曲線示意圖 每一個樣條函數(shù)在4個整數(shù)區(qū)間上都是非零的,因為基本函數(shù)重疊,每一區(qū)間都被4個基本函數(shù)覆蓋.基本函數(shù)的每一段是僅定義它的單位區(qū)間上的三次多項式,如圖13.7所示,樣條函數(shù)的每一
29、段的三次多項式如下: (13.34) 如果簡單地把這些三次多項式相加以得到樣條基本函數(shù)是不正確的,因為每一段都限制于它的區(qū)間,這就是,每一段在它適用的區(qū)間之外必須被視為非零的.為了在特殊點x估計特殊樣條基本函數(shù),有必要確定x位于哪一段和估計相對應的三次多項式. 圖13.7 四個三次多項式構(gòu)成的樣條基函數(shù) 假設x位于區(qū)間,樣條曲線是每m+1個樣條基本函數(shù)的線性組合如式13.33.因為每一個樣條基本函數(shù)占四個區(qū)間(單位),上是,左邊順次是,,,所以為了估計當x在區(qū)間上的樣條曲線,只需估計此區(qū)間上的四個樣條基本函數(shù)的線性組合:
30、 (13.35) 因為每一個樣條基本函數(shù)包含4個三次多項式,其中每一段都定義在其各自的區(qū)間上,只需估計在三次樣條曲線被估計的區(qū)間上的三次多項式段即可.在區(qū)間上的x點樣條曲線的值為: (13.36) 為了在任何位置估計樣條曲線,有必要確定x所在的區(qū)間,并代入方程13.36,下標表示區(qū)間的起點,那么4個樣條基本函數(shù)的系數(shù)才是正確的. 方程13.36中的估計樣條曲線的公式可以用于線性回歸,因為模型在系數(shù)上是線性的.方程包含術(shù)語x的冪,這并沒有什么影響.此模型可以用于下面的回歸算法,此算法用于從一系列數(shù)據(jù)
31、點()中確定樣條的系數(shù).每一數(shù)據(jù)點可得到一個約束4個樣條系數(shù)的方程: (13.37) 這些方程組成一個線性方程組: (13.38) 其中,a是B樣條系數(shù)的列矢量,方程右側(cè)的列矢量是的矢量,除了在相對應在包含x的區(qū)間上的B樣條基本函數(shù)的系數(shù)的4個元素外,矩陣的其它元素都為0.此線性方程組可用單值求解法來求.但因為此方程組是稀疏的,最好用稀疏矩陣方法. 對于三維曲面擬合,模型是一張量積樣條曲面: (
32、13.39) 曲面擬合問題可以通過使下式最小化來求解. (13.40) 數(shù)據(jù)值之涉及一個下標,因為此數(shù)據(jù)只在此平面的離散點上,每一個數(shù)據(jù)值位于x-y平面的點(). 確定張量積樣條曲面系數(shù)的回歸問題的公式化是和以前介紹的一維情況有點相似.每一個基本函數(shù)占16個網(wǎng)面矩形.因為基本函數(shù)重疊,所以每一個網(wǎng)面矩形上有16個基本函數(shù).每一個基本函數(shù)包括16個二元三次多項式塊.每一塊定義在一個網(wǎng)面矩形上,在此網(wǎng)面矩形外是非零的. 假設此網(wǎng)面是均勻的,所以所有網(wǎng)面矩形都是大小相同的方格.此樣條基本函數(shù)中的二元三次多項式塊的公式對每一方格都是相同的.每一張量積基本函數(shù)可分
33、寫成一維基本函數(shù)的積: (13.41) 每一個一維基本函數(shù)包括4個三次多項式,定義在小網(wǎng)面矩形上的16個多項式塊中的每一個都是兩個三次多項式的積,其中一個以x為變量,另一個以y為變量,以x為變量的4個三次多項式見式13.34,同樣有以y為變量的4個三次多項式為: (13.42) 樣條基本函數(shù)的16個多項式塊是由前面給的多項式兩兩相乘得到的,在網(wǎng)面的點,估計樣條前面的公式如下: (13.43) 用此公式代替一維三次多項式就得到
34、估計樣條曲面的公式,16個系數(shù)的每一項為: 這些表示是在點處估計的,乘以對應的系數(shù),求和得到在(x,y)處的樣條曲面. 估計樣條曲面的公式也就是用于確定樣條曲面的回歸問題的模型.在樣條曲面中有(n+1)(m+1)個系數(shù).每一數(shù)據(jù)點()得到一個包括16個系數(shù)的方程.如同在一維情況下,回歸問題可得到一個線性方程組: (13.44) 其
35、中a是樣條系數(shù)的矢量,右側(cè)的列矢量b是數(shù)據(jù)值,,N 的矢量.除了對應在包含()的方格上的基本函數(shù)的16個元素矩陣M的每一行為0. 此方法可通過擬合樣條曲面到均勻像元和采樣樣條曲面來使圖像平滑.對樣條網(wǎng)面來說沒有必要和圖像網(wǎng)面相對應;實際上,如果樣條網(wǎng)面有更大的空間,也就更光滑.樣條基本函數(shù)象高斯光滑濾波器(第四章介紹過),而且,樣條基本函數(shù)的寬度是由樣條網(wǎng)面的空間決定的.當使用以前介紹的用于樣條網(wǎng)面回歸問題的公式時,在圖像上像元值為的位置()被映射到樣條曲面的網(wǎng)面坐標系中.樣條曲面可按需采樣,在原始圖像的網(wǎng)面點坐標處,為了計算光滑圖像的像元. 樣條曲面方程的優(yōu)化表明樣條只是
36、一系列13.5.2節(jié)中介紹的二元三次曲面塊.二元三次曲面塊和樣條曲面之間的區(qū)別只是樣條曲面的二元三次塊在塊所在區(qū)域是二階連續(xù)的,而任意二元三次塊根本不需要連續(xù).張量積樣條曲面是光滑的,而且還是二階連續(xù)的,可以用于如身體器官、車體、飛機機身的建模. 在許多實際應用中,張量積樣條曲面必須是參數(shù)形式,如13.4.3節(jié)介紹過的一樣,在回歸問題中反應曲面的系數(shù)是三元矢量,每一個元素對應,,中的一個坐標.,空間是平面直角坐標系,被分為均勻的網(wǎng)面.最困難的是構(gòu)造把點映射到,空間的公式,那樣此測量點就能正確地和組成樣條曲面的二元三次曲面塊聯(lián)系起來. 13.4.2加權(quán)樣條逼近 目前介紹的曲面逼近方
37、法的問題是:甚至在曲面邊界的數(shù)據(jù)不連續(xù),解還是光滑曲面.在13.6.1節(jié)介紹的回歸樣條的光滑的無參數(shù)函數(shù)是隱含的.如果擬合曲面可以公式化為一系列分段光滑函數(shù),深度測量值為: (13.45) 以分成數(shù)個區(qū)域,每個區(qū)域?qū)粋€分段光滑函數(shù),那樣解能更準確地反應此處曲面的形狀.然而這會得到一些用于計算某些曲面的算法,這些超出了本書的范圍.13.7節(jié)中將討論曲面分割的問題.我們可以避開曲面表示中的一些比較難的課題,而且通過改變方程13.5.2的光滑性函數(shù)以降低深度數(shù)據(jù)不連續(xù)處的光滑性,仍然獲得了符合不連續(xù)性的非常好的曲面擬合.此方法就是加權(quán)正則化方
38、法. 一維的加權(quán)正則化式子為: (13.46) 如果權(quán)函數(shù)在數(shù)據(jù)不連續(xù)點取值非常小,在其它地方大,那么權(quán)函數(shù)就消去了不連續(xù)點的連續(xù)標準. 在二維情況下,加權(quán)樣條曲面擬合的公式如下: (13.47) 權(quán)函數(shù)為: (13.48) 其中是采樣曲面的梯度.應指出的是來自方程13.29的正則化參數(shù)a已溶入權(quán)函數(shù). 可以用變分法把方程13.47變?yōu)槠⒎址匠?,或者用回歸樣條方法取代具有線性回歸問題的方程13.47.假定在張量積基本函數(shù)定義
39、的網(wǎng)面的區(qū)域上的權(quán)是常數(shù),就可以從梯度擬合中計算出方程13.47中的權(quán)函數(shù). 13.5曲面分割 一幅距離圖像可以看作是如下分段光滑曲面均勻采樣的網(wǎng)格: (13.49) 本節(jié)將討論如何將定義在均勻網(wǎng)格上的一組距離采樣值分割成具有相似曲率的區(qū)域,并用低階的雙變量多項式來逼近每一個區(qū)域.表面曲率特性可用來選取核區(qū)域,然后增長核區(qū)域以覆蓋鄰近距離采樣值,核區(qū)域的增長準則是鄰近距離采樣值與逼近核區(qū)域的雙變量多項式之間的偏差小于某一預先給定的閾值。 曲面分割問題通常表述如下,將分段光滑的曲面分割成光滑曲面基元
40、 (13.50) 其中為特征函數(shù),表示將曲面劃分成表面片的一種分割, 表示第個區(qū)域,它對應一個曲面基元,每一個區(qū)域可以用如下多項式逼近: (12.51) 此模型包括平面、雙線性、雙三次、雙四次多項式曲面片. 特征函數(shù)可以通過每一區(qū)域像素位置的列表來實現(xiàn),也可以使用其它表示如模板、四叉樹等來實現(xiàn). 13.5.1初始分割 通過計算曲面的平均曲率H和高斯曲率K,并使用H和K的正負號,可以估計用于分割的初始核區(qū)域,以形成初始區(qū)域分割。對應于平均曲率和高斯曲率正負號的曲面有8種類型,表13
41、.1所示,這些曲面類型可以用于構(gòu)造核區(qū)域. + 0 - - 峰 脊 鞍脊 0 平面 最小曲面 + 谷 谷 鞍谷 假設距離函數(shù)分布在均勻網(wǎng)格上,因此可以按照一般圖象進行處理。用可分離濾波器與距離圖象進行卷積來估計距離圖象的一階和二階導數(shù).使用距離圖像的一階和二階導數(shù)計算平均曲率和高斯曲率 (13.52) (13.53) 使用下面公式計算整數(shù)標記以實現(xiàn)平均曲率和高斯曲率正負號編碼. (13.54) 然后使用序貫連通成份算法(見第三章),將具
42、有相同符號標記組成一個連通區(qū)域,并使用收縮或腐蝕算法把每一個連通區(qū)域減少到可作為核區(qū)域的最大尺寸區(qū)域,使用濾波器將那些無法對應場景曲面片的太小的區(qū)域濾掉。最后剩下的區(qū)域構(gòu)成區(qū)域增長的種子. 13.5.2 曲面片增長 距離圖象中的每一個核區(qū)域可以用雙變量多項式有效地擬合。擬合多項式一般從一階(平面)開始,然后逐漸增加多項式(曲面)的階數(shù),直到曲面能夠很好地擬合核區(qū)域為止。如果多項式階數(shù)已經(jīng)很高,但仍然無法得到滿意的擬合結(jié)果,則該區(qū)域不能作為核區(qū)域。接下來的工作是核區(qū)域擴展,以便覆蓋核區(qū)域更多相似的鄰近點,即把那些沒有標記的距離像素通過增長過程添加到相應的核區(qū)域中去。決定鄰近點是否
43、添加到核區(qū)域中的相似性準則是鄰近點與雙變量多項式之間的偏差均方根,也稱為擬合殘差。如果該殘差小于預定的閾值,則該鄰近點為區(qū)域侯選點。在找到所有的侯選點以后,再使用雙變量多項式對核區(qū)域和侯選點一起重新進行擬合,如果需要的話,可以考慮增加雙變量多項式的階數(shù),使得所有點都滿足相似性準則。如果擬合殘差小于預定的閾值,則所有侯選點與核區(qū)域共同組成一個大區(qū)域;否則,放棄所有的侯選點。當沒有區(qū)域能夠再擴大時,區(qū)域增長過程終止。用于曲面分割的區(qū)域增長算法見算法13.3. 算法13.3 曲面分割算法 1. 使用可分離濾波器,計算距離圖象的一階和二階偏導數(shù), 2. 計算圖象每一個像素位置的平均曲率
44、和高斯曲率, 3. 對每一像素標記曲面類型, 4. 收縮區(qū)域以消除靠近區(qū)域邊界的錯誤標記, 5. 使用序貫連通成份算法識別核區(qū)域, 6. 去掉太小的核區(qū)域, 7. 用雙變量多項式擬合每一個核區(qū)域, 8. 從某一核區(qū)域開始,將滿足相似性準則的核區(qū)域鄰近點標記為該區(qū)域侯選點, 9. 重新用雙變量多項式同時擬合核區(qū)域和區(qū)域侯選點,如果擬合結(jié)果滿足相似性準則,則核區(qū)域和侯選點共同構(gòu)成新區(qū)域,否則,放棄區(qū)域侯選點, 10.選擇未進行過增長的核區(qū)域,重復步驟8和9,直到?jīng)]有核區(qū)域能夠再增長。 13.6 曲面配準 通過解絕對方位問題(12.2節(jié)),可以確定共軛對集合中的對應點之間
45、的變換,也有不需要對應點就能實現(xiàn)兩個表面對準,例如,無需事先知道采樣點與物體表面點對應關(guān)系,就能將一組距離采樣值與物體模型對準。本節(jié)將介紹迭代最近點算法(iterative closest point, ICP),此算法不用點對應關(guān)系,卻可以確定一個物體的兩種視圖之間的剛體轉(zhuǎn)換. 迭代最近點算法可以應用在許多物體模型上,包括:點集,二維或三維的以及各種不同的曲面表示.曲線可以表示為:多直線段線、隱式曲線或參數(shù)曲線.曲面可以表示為:多邊形曲面片、隱式或參數(shù)曲面、或張量積樣條.一個物體的兩個視圖沒有必要具有同樣的表示.例如,一個視圖可以是由主動三角測距獲取的一系列空間曲線,而另一個視圖可
46、能是張量積三次樣條曲面.關(guān)鍵的問題是視圖的采樣點可以映射到另一個視圖上最近的點,以逼近共軛對點集.通過對應關(guān)系求解絕對方位問題將會改善視圖之間的對準性.找到最近點的對應,并用這些近似的共軛對集求解絕對方位問題的過程可以一直重復進行,直到兩個視圖完全對準. 下面討論迭代最近點算法用于點集與曲面模型配準的方法。給定一個物體曲面的點集和此物體的一個模型,確定模型上的點集,使其與采樣點集是最近的。采樣點和模型的距離是: (13.56) 計算離采樣點集中的每一點最近的點集,.把每一采樣點和模型中最近的點配對以組成一共軛對集{(),(
47、),...,()}.用這一系列共軛對求解絕對方位問題.既使這些點列不是真正的共軛對,也可以獲得視圖之間轉(zhuǎn)換的逼近解法.把這種轉(zhuǎn)換用于點列,而且重新計算一系列最近點.目前,點列離模型比較近,和的點對更接近真正的共軛對,可以再解一次絕對方位問題,再轉(zhuǎn)換一次點列.本程序可以重復直到最近點之間平方距離的數(shù)目低于某一個閾值. 在早期的迭代中,最近的點對可能和真正的共軛對相去甚遠,但是通過應用這些相似共軛對來解絕對方位問題,實現(xiàn)剛體轉(zhuǎn)換,使此點列更接近模型.隨著迭代的繼續(xù),最近點對變得越來越象有效共軛對了.例如,如果點對起初離模型較遠,那么所有點可以映射到模型的同一點.很顯然,這樣多對一的映射不
48、可能是有效的一列共軛對,但是第一次迭代使此點列置于此模型上,那樣這些點就位于匹配模型點的中心,而且接下來的迭代把點列的中心和模型的中心對準.最終的迭代使點列旋轉(zhuǎn),調(diào)整位置以對準點列和模型.迭代最近點重合的過程見算法13.4. 算法13.4迭代最近點重合 把一系列點和以多項式塊為模型的曲面重合起來. 1.計算最近點列, 2.計算點列之間的重合, 3.應用轉(zhuǎn)換來重合點列, 4.返回第一步直到重合誤差低于某一閾值. 圖13.8求網(wǎng)面套準尋找對應點 圖13.9使用最近迭代算法進行深度圖像序列配準示意圖 思考題 13.1 怎樣確定空間4個點是否共面? 13.2 給出曲面
49、基本曲率、高斯曲率和平均曲率的定義.已知曲面上一點的這些曲率,你能得到此曲面的什么信息?從這些曲率中你能得到曲面的什么局部信息和全局信息? 13.3 什么是樣條曲線?為什么三次樣條經(jīng)常用于表示曲線? 13.4 為什么用多邊形片表示任意曲面?用多邊形片能夠多大程度地接近任意曲面? 13.5 什么是翼邊緣數(shù)據(jù)結(jié)構(gòu)?使用翼邊緣數(shù)據(jù)結(jié)構(gòu)的最大特點是什么? 13.6 曲面擬合和曲面插值有何區(qū)別? 13.7 什么是正則化?試舉例說明使用正則化能有效地解決問題. 13.8 如何用B樣條函數(shù)平滑圖像?試舉例說明? 13.9 使用微分幾何特性將曲面的局部形狀分為8種曲面類型之一.請解釋這些微分幾何特性,并說明劃分曲面的標準是什么? 計算機練習題 13.1 寫一個程序用于分割圖像(包括舉例圖像),分割可以從基于微分幾何學特征的局部核區(qū)域開始.用區(qū)域生長方法擬合一個圖像中的雙二次和雙三次曲面.選擇合適的區(qū)域增長和區(qū)域增長終止準則.將你的程序用于幾幅測試圖像,研究擬合曲面的誤差. 13.2 編制一個程序,可以生成超橢圓和超橢球(如圖13.2和13.3 所示)。 專心---專注---專業(yè)
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。