欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

三維掃描儀及其三維模型重構(gòu)方法

文檔序號(hào):6463062閱讀:302來源:國知局
專利名稱:三維掃描儀及其三維模型重構(gòu)方法
技術(shù)領(lǐng)域
本發(fā)明屬于三維掃描領(lǐng)域中以采用光學(xué)方法為特征的計(jì)量設(shè)備及其計(jì)量方法。本發(fā)明主要涉及到利用物理光路生成光學(xué)圖案,在對(duì)光學(xué)采集設(shè)備進(jìn)行標(biāo)定 后,利用光學(xué)采集設(shè)備采集圖像,對(duì)采集到的圖像進(jìn)行圖像處理并計(jì)算出被測(cè)件 位置,對(duì)多次計(jì)算結(jié)果進(jìn)行拼接等技術(shù)。能在工業(yè)、醫(yī)療服務(wù)業(yè)及文化產(chǎn)業(yè)上均 能得到較有效的運(yùn)用。
背景技術(shù)
三維掃描技術(shù)在工業(yè)、醫(yī)療服務(wù)業(yè)及文化產(chǎn)業(yè)上均有較廣泛的應(yīng)用,在工業(yè) 上利用于逆向工程計(jì)算,以及對(duì)體積較大、剛性較弱、形狀較復(fù)雜的工件進(jìn)行結(jié) 構(gòu)及外形測(cè)量,在整形醫(yī)療服務(wù)業(yè)可用于創(chuàng)面分析、陰陽模設(shè)計(jì),另外在三維動(dòng) 畫設(shè)計(jì)上也能用到三維掃描技術(shù)。對(duì)于傳統(tǒng)的三維掃描設(shè)備多為接觸式掃描器、激光掃描儀,掃描速度慢,操 作復(fù)雜,對(duì)于被測(cè)件以及工作條件都有較嚴(yán)格的要求,在很多需要三維掃描技術(shù) 的應(yīng)用領(lǐng)域均不適用。最近發(fā)展起來的光柵式三維掃描技術(shù)尚處起步階段,多項(xiàng) 技術(shù)均有待完善。與傳統(tǒng)設(shè)備不一樣的是,光柵式三維掃描設(shè)備在每次數(shù)據(jù)采集 后都將產(chǎn)生相對(duì)獨(dú)立的海量點(diǎn)云數(shù)據(jù),因此對(duì)多次采集所得到的數(shù)據(jù)進(jìn)行拼接和 融合的技術(shù)就顯示尤于重要了。發(fā)明內(nèi)容本發(fā)明的目的是設(shè)計(jì)了一種光柵掃描設(shè)備,并提出了一種利用此設(shè)備多次采 集到的數(shù)據(jù)進(jìn)行拼接的方法。1. 光柵式三維掃描儀一種三維掃描儀(如圖2),其特征是由光柵生成設(shè)備③,圖像采集設(shè)備①②,標(biāo)定塊 ,計(jì)算機(jī)通訊板卡⑤及外圍機(jī)械支撐設(shè)施構(gòu)成,光柵生成設(shè)備③與 計(jì)算機(jī)通訊板卡⑤連接,圖像采集設(shè)備與計(jì)算機(jī)通訊板卡⑤連接,其數(shù)目可為一 到八個(gè),具體數(shù)目由系統(tǒng)精度要求以及被測(cè)物體大小規(guī)格而定,標(biāo)定塊④(如圖3)是一個(gè)尺寸經(jīng)過嚴(yán)格控制的印有精確圖案的標(biāo)準(zhǔn)量塊,計(jì)算機(jī)通訊板卡⑤是 計(jì)算機(jī)控制圖像采集設(shè)備的中介設(shè)備,可以是1394接口卡或USB接口卡,夕卜圍 支撐設(shè)施可以是三腳機(jī)架、三坐標(biāo)機(jī)床。2. 三維模型重構(gòu)方法,其特征由以下步驟組成(1) 首先對(duì)圖像采集設(shè)備進(jìn)行定標(biāo);(2) 采集被測(cè)件在不同結(jié)構(gòu)光圖案照射下所反射產(chǎn)生的圖像,并由此計(jì)算出 被測(cè)件上的反射點(diǎn)位置(點(diǎn)云)及貼于被測(cè)件上標(biāo)志點(diǎn)的位置;(3) 點(diǎn)云數(shù)據(jù)拼接算法第一步在被測(cè)件上固定若干易于利用圖像處理技術(shù)進(jìn)行識(shí)別的標(biāo)志點(diǎn)后,開始投射光柵并進(jìn)行圖像采集,每次圖像采集都需保證能拍攝到多于三個(gè)以上的標(biāo)志點(diǎn),并保證所采集到的標(biāo)志點(diǎn)圖像具有足夠的信息量;第二步匹配標(biāo)志點(diǎn),在兩拼接數(shù)據(jù)的標(biāo)志點(diǎn)集中選擇三對(duì)對(duì)應(yīng)點(diǎn)進(jìn)行長邊 對(duì)長邊、短邊對(duì)短邊的三角形匹配,在匹配成功的情況下利用點(diǎn)對(duì)剛性變換算法 進(jìn)行兩拼接數(shù)據(jù)標(biāo)志點(diǎn)集的完全對(duì)應(yīng)匹配,其中剛性變換算法的具體步驟為首先按式C =_^, C《-^計(jì)算左點(diǎn)集重心Cp和右點(diǎn)集重心Q;然后按 P; = P,-Cp' 9;^-q計(jì)算相對(duì)位置P'和Q',其中左相對(duì)坐標(biāo)?'=(//,|/=1,2, 3,...,"},右相對(duì)坐標(biāo)(^={ ',|/= 1,2, 3, ...,"};再按式M-l^;(P;f計(jì)算交互協(xié)方差矩陣M;接著按式K-'"=+111<++11211〖++11311〖計(jì)算對(duì)稱矩陣K =MTM,以及K的特征值乂卜^2、 "3及其相應(yīng)特征向量u" u2、 u3,并由此計(jì) 算矩陣K的半正定平方根的逆K—1/2;最后由R = MK—^計(jì)算出旋轉(zhuǎn)變換量R,并由t = C《-RCp計(jì)算出平移變換量t;第三步分別確定兩拼接數(shù)據(jù)集的以法向錐方式表達(dá)的法向空間;第四步將法向所處區(qū)間均勻劃分為若干部分,在每個(gè)部分中按一定數(shù)目取 樣點(diǎn)進(jìn)入后續(xù)操作;第五步在兩拼接數(shù)據(jù)集中找到最近點(diǎn)對(duì),即所有滿足條件的點(diǎn)對(duì)勺", p^"〉,其中Pn是C^中距離p^最近的點(diǎn),而p—"也是C/"—"中距離p"最近的 點(diǎn),若點(diǎn)對(duì)數(shù)目過少則需返回第二步重新選取另一種標(biāo)志點(diǎn)的配對(duì)方案;第六步找到所有最近點(diǎn)對(duì),在點(diǎn)對(duì)集合中取樣一部分點(diǎn)對(duì)進(jìn)行剛性變換計(jì) 算,若計(jì)算出的剛性旋轉(zhuǎn)量及平移量無法讓所選取的點(diǎn)對(duì)距離平均值變小,則結(jié) 束剛性變換量計(jì)算,以當(dāng)前位置作為拼接位置,否則重復(fù)本步操作直至結(jié)束。與現(xiàn)有技術(shù)相比,本發(fā)明具有如下優(yōu)點(diǎn)(1) 本發(fā)明所設(shè)計(jì)的系統(tǒng)結(jié)構(gòu)能保證得到絕大部分點(diǎn)對(duì)光線反射的法向方向, 獲得除空間位置之外更多的信息,如局部曲率等信息;(2) 對(duì)標(biāo)志點(diǎn)位置識(shí)別精度要求不高。標(biāo)志點(diǎn)的識(shí)別及定位往往只依靠于較 少的幾個(gè)邊緣像素點(diǎn)計(jì)算而得,很難保證精度,本發(fā)明考慮到這種先天不足的因 素,將標(biāo)志點(diǎn)位置精度的影響能力降到較低的程度;(3) 可適度調(diào)整數(shù)據(jù)取樣率。在對(duì)較大規(guī)模點(diǎn)云數(shù)據(jù)時(shí),適度降低數(shù)據(jù)取樣 率,可以較大幅度地提升拼接速度,而拼接精度并不會(huì)受到明顯的影響;(4) 利用數(shù)據(jù)冗余剔除技術(shù),拍攝次數(shù)的提高可以有效提升測(cè)量精度,可適 用于對(duì)精度要求極其嚴(yán)格的情況,從而使設(shè)備有更強(qiáng)的適用性。


圖1為三維掃描技術(shù)所涉及的技術(shù)環(huán)節(jié)及順序關(guān)系示意圖 圖2為本發(fā)明所設(shè)計(jì)的光柵式三維掃描設(shè)備的結(jié)構(gòu)示意圖 圖3為本發(fā)明所設(shè)計(jì)的標(biāo)定塊圖案 圖4為點(diǎn)云數(shù)據(jù)拼接算法流程5為多位置測(cè)量產(chǎn)生匹配點(diǎn)對(duì)剛性變換計(jì)算問題示意6為利用KD樹搜索最近點(diǎn)示意7為由于相機(jī)畸變而造成的掃描誤差分布圖8為兩個(gè)單面拼接后的效果9為兩個(gè)單面拼接并刪除冗余點(diǎn)后的效果圖具體實(shí)施方式
1、 光柵式三維掃描儀本發(fā)明所采用的系統(tǒng)結(jié)構(gòu)(如圖2)由光柵生成設(shè)備③、圖像采集設(shè)備①②、 標(biāo)定塊 、計(jì)算機(jī)通訊板卡⑤及外圍機(jī)械支撐設(shè)施構(gòu)成。光柵生成設(shè)備③與計(jì)算 機(jī)通訊板卡⑤連接,是一種可產(chǎn)生光柵式結(jié)構(gòu)光的光源設(shè)備,其光柵圖案可因計(jì) 算機(jī)控制而改變。圖像采集設(shè)備①②與計(jì)算機(jī)通訊板卡⑤連接,它的主要作用在 于采集被測(cè)件對(duì)所投射光柵的反射圖像,其數(shù)目可以只有一個(gè),也可以有兩個(gè)到 八個(gè),具體數(shù)目由系統(tǒng)精度要求以及被測(cè)體物體大小規(guī)格而定。標(biāo)定塊④(如圖 3)是一個(gè)尺寸經(jīng)過嚴(yán)格控制的印有精確圖案的標(biāo)準(zhǔn)量塊,其尺寸精度的控制對(duì) 設(shè)備的精度有至關(guān)重要的作用。計(jì)算機(jī)通訊板卡是計(jì)算機(jī)控制相機(jī)的中介設(shè)備, 可以是1394接口卡或USB接口卡等。外圍支撐設(shè)施可能是三腳機(jī)架、三坐標(biāo)機(jī) 床等,主要因被測(cè)物體大小而確定。本發(fā)明在硬件設(shè)計(jì)時(shí),為提高數(shù)據(jù)采集速度,采用了如下措施 1.1數(shù)據(jù)采集速度提高策略 *采用1394接口的數(shù)據(jù)采集接口; *采用CCD或CMOS電子高速相機(jī);*使用不間斷拍攝模式,在光柵圖案切換后從緩存中選取數(shù)據(jù)。 1.2數(shù)據(jù)采集效率提高策略*采用三自由度設(shè)備拍攝方向調(diào)整器,保證各個(gè)拍攝視角的可達(dá)性; *相機(jī)與光柵發(fā)射器間相對(duì)位置可調(diào),保證在多尺度條件下的可用性; *光柵發(fā)射器的亮度及相機(jī)的曝光時(shí)間可調(diào),保證在不同光照條件下設(shè)備的適 應(yīng)能力。2. 數(shù)據(jù)拼接算法假設(shè)由三維掃描設(shè)備采集到一系列的測(cè)量點(diǎn)集G (/ =1, 2, 3,"),要對(duì)這 些點(diǎn)集進(jìn)行剛性變換(即只進(jìn)行旋轉(zhuǎn)變換和平移變換),并合成為單一點(diǎn)集C^, 以得到對(duì)被測(cè)物體精確的整體測(cè)量或描述,這種手段就叫數(shù)據(jù)拼接。而如何更精 確地進(jìn)行數(shù)據(jù)拼接就是三維掃描領(lǐng)域所面臨的數(shù)據(jù)拼接問題。數(shù)據(jù)拼接使得使用 小設(shè)備對(duì)大型物體數(shù)據(jù)進(jìn)行掃描成為可能,也是補(bǔ)齊很難由整體掃描得到的區(qū)域 的補(bǔ)充性手段。由此,在對(duì)物體進(jìn)行360。整體掃描時(shí),數(shù)據(jù)拼接技術(shù)被廣泛的 運(yùn)用。本發(fā)明提出的數(shù)據(jù)拼接方法是利用本發(fā)明所設(shè)計(jì)的三維掃描儀能獲得均勻 分布于網(wǎng)格上的點(diǎn)陣,并能同時(shí)獲得標(biāo)志點(diǎn)位置以及法向等附近信息等特點(diǎn)而設(shè) 計(jì)的數(shù)據(jù)拼接算法。下面分六部分說明這一拼接算法,第一部分介紹總體拼接算 法,第二部分介紹算法中匹配點(diǎn)對(duì)剛性變換計(jì)算算法細(xì)節(jié),第三部分介紹大規(guī)模 點(diǎn)云數(shù)據(jù)的邏輯組織方式,第四部分利用第三部分所介紹的組織方式進(jìn)行公式部 分的冗余信息剔除,最后兩部分說明為實(shí)現(xiàn)上述算法所使用的相關(guān)大規(guī)模點(diǎn)云數(shù) 據(jù)物理存儲(chǔ)及顯示的具體技術(shù)。 2.1點(diǎn)云數(shù)據(jù)拼接算法點(diǎn)云數(shù)據(jù)拼接算法流程圖見圖4,其具體步驟為-第一步在被測(cè)件上固定若干較易于利用圖像處理技術(shù)進(jìn)行識(shí)別的標(biāo)志點(diǎn) 后,開始投射光柵并進(jìn)行圖像采集。每次圖像采集都需保證能拍攝到多于三個(gè)以 上的標(biāo)志點(diǎn),并保證所采集到的標(biāo)志點(diǎn)圖像具有足夠的信息量(即像素?cái)?shù)目), 以確定能在獲得點(diǎn)云數(shù)據(jù)C,的同時(shí),獲得標(biāo)志點(diǎn)中心點(diǎn)位置的粗略坐標(biāo)M^V^1 j = l,2,3, ...,W,}(其中/為當(dāng)次掃描的序號(hào),W,為當(dāng)次掃描所獲得的標(biāo)志點(diǎn)的 總數(shù))。第二步匹配標(biāo)志點(diǎn),初步調(diào)整點(diǎn)云間的相對(duì)位置。假設(shè),當(dāng)前掃描為第"次掃描,掃描結(jié)果包含點(diǎn)云C",標(biāo)志點(diǎn)集M",以及之前所獲得的點(diǎn)云<:"^=1,2,3, ..., "-i)所拼接成的點(diǎn)云集c("") = r,(c,)ur2(c2)ur3(c3)u…u z^(Qh),標(biāo)志點(diǎn)(A: = 1, 2, 3,…,"-l)所拼接成的標(biāo)志點(diǎn)集M("-" = 7KMi)ur2(M2)Ur3,U…U7^(M^)(其中r,為第z次掃描結(jié)果對(duì)應(yīng)的剛性變換)。為得到當(dāng)前掃描 所對(duì)應(yīng)的剛性變換r ,首先將當(dāng)次掃描所得標(biāo)志點(diǎn)集匹配到前w-i次掃描所得標(biāo)志點(diǎn)集中。利用標(biāo)志點(diǎn)信息量少的優(yōu)勢(shì),首先進(jìn)行標(biāo)志點(diǎn)的拼接,算法具體步驟為(1) 在M"和N^"力中各取三點(diǎn)并組成三角形F"和F—1、(2) 將兩個(gè)三角形的長邊與長邊比較,短邊與短邊比較,中邊與中邊比較,若三條邊的長度相差較小,說明這是一種可以嘗試的匹配方式,并進(jìn)入下一步計(jì)算,否則使用一種未使用過的選點(diǎn)策略重新選點(diǎn),并返回第一步;若再?zèng)]有其它 未使用過的選點(diǎn)策略,再說明沒有可取的匹配策略,即可退出任務(wù);(3) 由對(duì)應(yīng)邊得到兩個(gè)三角形的對(duì)應(yīng)點(diǎn),固定F一O不動(dòng),將在F"通過剛性 變換,移動(dòng)到與F—U匹配最佳的位置,此剛性變換7V可以由2.2中所述點(diǎn)對(duì)剛 性變換算法獲得;(4) 利用計(jì)算所得的剛性變換&, 對(duì)M"進(jìn)行整體變換,計(jì)算變換后M 中各 點(diǎn)到M—"中各點(diǎn)的距離,并得到Np個(gè)由M"中一點(diǎn)和M"力中一點(diǎn)所形成的點(diǎn)對(duì), 這個(gè)點(diǎn)對(duì)< ,W""、滿足w 是M 中距離W"-"最近的點(diǎn),而W"屮也是M—"中 距離^最近的點(diǎn);(5) 根據(jù)得到的點(diǎn)對(duì),由點(diǎn)對(duì)剛性變換算法計(jì)算得到匹配位置更佳的剛性變換。第三步假設(shè)設(shè)備數(shù)據(jù)采集能力為每次可采集數(shù)量不大于A^d,個(gè)的均勻分 布在d^z^的規(guī)則網(wǎng)格點(diǎn)上的三維點(diǎn),那么利用網(wǎng)格拓?fù)湫畔⒌玫礁鼽c(diǎn)之間的位置關(guān)系,并由此得到各點(diǎn)所對(duì)應(yīng)曲面上點(diǎn)的法向方向。法向計(jì)算方案為(1) 若目標(biāo)點(diǎn)所在網(wǎng)格點(diǎn)的上下左右四個(gè)網(wǎng)格點(diǎn)均存在,且網(wǎng)格上有點(diǎn),我們稱之為第一類點(diǎn),則其法向?yàn)槠渲蠯為上網(wǎng)格上的點(diǎn),^為下網(wǎng)格上的點(diǎn),F(xiàn)/為左網(wǎng)格上的點(diǎn),^為右網(wǎng)格 上的點(diǎn);(2) 若目標(biāo)點(diǎn)周圍有空缺網(wǎng)格,但周圍有第一類點(diǎn)存在,我們稱之為第二類 點(diǎn),則當(dāng)前點(diǎn)的法向定為周圍所有第一類點(diǎn)的法向的平均法向;G)若目標(biāo)點(diǎn)周圍不存在第一類點(diǎn)或根本就不存點(diǎn),則這類點(diǎn)被稱為孤立點(diǎn)。 孤立點(diǎn)無法計(jì)算法向,因此將不被納入到后續(xù)計(jì)算的考慮范圍中。第四步法向空間取樣。將法向量空間均勻劃分為A^部分,按照法向方向的劃分將所有c"和d"-"中的點(diǎn)進(jìn)行歸類,并從每類中隨機(jī)選取一定數(shù)量的點(diǎn)",和C/"力進(jìn)入后續(xù)的操作。、("-l).'〉,第五步對(duì)取樣點(diǎn)進(jìn)行最近點(diǎn)匹配,即找出所有滿足條件的點(diǎn)對(duì)〈Pn,p" 其中Pn是C",中距離p一"最近的點(diǎn),而p^也是C/"力中距離p"最近的點(diǎn)。若點(diǎn) 對(duì)數(shù)量過少,則說明匹配不成功,需返回第二步重新選取另一種標(biāo)志點(diǎn)配對(duì)方案。第六步最近點(diǎn)對(duì)取樣。按上一步的要求找到所有最近點(diǎn)對(duì),按照一定比率從所有滿足條件的點(diǎn)對(duì)中隨機(jī)選取一部分點(diǎn)對(duì),并利用點(diǎn)對(duì)剛性變換算法計(jì)算最 佳剛性變換7;,使得點(diǎn)對(duì)間能進(jìn)行最優(yōu)匹配。若此剛性變換的轉(zhuǎn)角小于門限值, 且平移距離也小于門限值,此時(shí)即可認(rèn)為達(dá)到最佳位置,退出任務(wù),否則重復(fù)本 步驟的計(jì)算和操作。由上述步驟得到的最后剛性變換結(jié)果r 即為所求。2.2.匹配點(diǎn)對(duì)剛性變換計(jì)算算法匹配點(diǎn)對(duì)剛性變換計(jì)算主要出現(xiàn)在進(jìn)行多位置測(cè)量時(shí)(如圖5),由于設(shè)備 坐標(biāo)xyz及x'y'z'相對(duì)世界坐標(biāo)XYZ的位置總是變化的,測(cè)量對(duì)象不動(dòng),但所 得的測(cè)量結(jié)果卻是不同的,這是因?yàn)闇y(cè)量結(jié)果使用的是不斷變化的設(shè)備坐標(biāo)。此時(shí)出現(xiàn)的計(jì)算兩次測(cè)量相應(yīng)的設(shè)備坐標(biāo)之間關(guān)系r的計(jì)算問題就是匹配點(diǎn)對(duì)剛性變換計(jì)算的問題。假設(shè)有點(diǎn)對(duì)集S = (9,,仏> I / = 1, 2, 3,…,"}及其相應(yīng)的左點(diǎn)集P = (A I!' = 1, 2,3,...,"}以及右點(diǎn)集(^={^|/=1,2,3,...,"},要計(jì)算點(diǎn)對(duì)間的剛性變換,即 使得R(P) +1盡可能匹配到Q上的R和t。計(jì)算步驟如下第一步計(jì)算左點(diǎn)集重心Cp和右點(diǎn)集重心Cq。按下式計(jì)算左右點(diǎn)集重心。第二步計(jì)算相對(duì)位置P'和Q'。將點(diǎn)集坐標(biāo)轉(zhuǎn)換為相對(duì)于重心的相對(duì)坐標(biāo)左相對(duì)坐標(biāo)P' = (p'小'=1, 2, 3,…,"}以及右相對(duì)坐標(biāo)Q' = {& |f = 1 , 2, 3,…,"}。第三步計(jì)算交互協(xié)方差矩陣M。按下式構(gòu)造交互協(xié)方差矩陣。M<formula>formula see original document page 8</formula>其中第四步計(jì)算對(duì)稱矩陣K二M『M,以及K的特征值義卜A2、 一及其相應(yīng) 特征向量u!、 u2、 u3,并由此計(jì)算矩陣K的半正定平方根的逆K—"2。<formula>formula see original document page 8</formula>第五步計(jì)算旋轉(zhuǎn)變換量R。旋轉(zhuǎn)變換量R的計(jì)算公式為<formula>formula see original document page 8</formula>第六步計(jì)算平移變換量t。平移變換量t的計(jì)算公式為:計(jì)算至此,剛性變換的兩個(gè)元素旋轉(zhuǎn)變換量R及平移變換量t均被計(jì)算獲得。 3.大規(guī)模點(diǎn)云數(shù)據(jù)邏輯組織方法點(diǎn)云數(shù)據(jù)在拼接計(jì)算過程中主要的操作有坐標(biāo)等信息查詢、點(diǎn)集采樣以及 最近點(diǎn)查找。信息查詢及無空間分布限制的點(diǎn)集采樣操作可以一維數(shù)組的數(shù)據(jù)結(jié) 構(gòu)下方便且高效地實(shí)現(xiàn),但同樣的結(jié)構(gòu)在進(jìn)行最近點(diǎn)査找或以此為依據(jù)的點(diǎn)集采 樣時(shí),時(shí)間復(fù)雜度將達(dá)到O(W)。為更快速高效地進(jìn)行上述操作,需要設(shè)計(jì)一種 數(shù)據(jù)結(jié)構(gòu)以適應(yīng)高頻度的數(shù)據(jù)操作,我們采用的是三維空間的上的帶法向錐的KD索引樹,即一種附加有法向錐信息的KD索引樹。 3丄KD索引樹的建立KD索引樹是一種以索引值作為存儲(chǔ)內(nèi)容的KD樹,而KD樹在邏輯上是指 將整體目標(biāo)數(shù)據(jù)作為根結(jié)點(diǎn),針對(duì)數(shù)據(jù)在各個(gè)維度上的跨度選取最大跨度作為劃 分量,將數(shù)據(jù)均勻劃分為左右兩份,并依此遞歸劃分而形成的樹型組織結(jié)構(gòu)。在 具體到對(duì)三維點(diǎn)云進(jìn)行帶法向錐的KD索引樹組織的情況時(shí),這個(gè)KD樹的建立 過程為第一步尋找與坐標(biāo)平面平行的最小六面體閉空間,使其包含全部原始數(shù)據(jù), 即點(diǎn)云在三個(gè)維度上的最大值及最小值所確定的六面體閉空間,建立根結(jié)點(diǎn),并 以此為當(dāng)前結(jié)點(diǎn),確定的六面體閉空間稱之為根結(jié)點(diǎn)所對(duì)應(yīng)的六面體閉空間。第二步確定當(dāng)前結(jié)點(diǎn)上數(shù)據(jù)點(diǎn)個(gè)數(shù),若個(gè)數(shù)足夠少則不進(jìn)行進(jìn)一步的劃分, 否則進(jìn)入第三步進(jìn)行數(shù)據(jù)劃分。在數(shù)據(jù)點(diǎn)個(gè)數(shù)不多的情況下,當(dāng)前結(jié)點(diǎn)成為葉子 結(jié)點(diǎn),其所包含的數(shù)據(jù)點(diǎn)所對(duì)應(yīng)的法向組成了一個(gè)法向簇,可以由這個(gè)法向簇確 定一個(gè)以原點(diǎn)為頂點(diǎn)的圓錐體,使其包含法向簇且擁有最小的張角。第三步比較當(dāng)前結(jié)點(diǎn)所對(duì)應(yīng)六面體閉空間在三個(gè)維度上的跨度大小,選取 最大跨度所在維度,將其一分為二,其中分界面位置取當(dāng)前結(jié)點(diǎn)所含點(diǎn)集的重心 位置,并在以此分割此六面體閉空間后,建立當(dāng)前結(jié)點(diǎn)的左右子結(jié)點(diǎn),將分割所 得的兩個(gè)六面體閉空間對(duì)應(yīng)到左右子結(jié)點(diǎn)上。對(duì)于將六面體分割為兩部分的平 面,我們稱之為當(dāng)前結(jié)點(diǎn)所對(duì)應(yīng)的分割面,由此可知,葉子結(jié)點(diǎn)不存在分割面, 即葉子結(jié)點(diǎn)所對(duì)應(yīng)分割面不存在。點(diǎn)云數(shù)據(jù)因?yàn)樗鶎倏臻g被分為兩部分并分別居 于左右子結(jié)點(diǎn)上而相應(yīng)地被分割開來。對(duì)左右結(jié)點(diǎn)分別進(jìn)入第2步,進(jìn)行進(jìn)一步 判斷和劃分操作。在進(jìn)行完左右結(jié)點(diǎn)的劃分操作及相應(yīng)的法向錐計(jì)算后,可由左 右結(jié)點(diǎn)的法向錐推出當(dāng)前結(jié)點(diǎn)的法向錐,其計(jì)算準(zhǔn)則為確定一個(gè)以原點(diǎn)為頂點(diǎn)的 圓錐體,使其包含左右結(jié)點(diǎn)的法向錐且擁有最小張角。3.2.快速最近點(diǎn)査找由上述步驟將KD索引樹建立完成后,即可以其基礎(chǔ)上進(jìn)行在進(jìn)行較快速的最近點(diǎn)査找操作。最近點(diǎn)查找即以給定的中心坐標(biāo)(中心點(diǎn))及其法向方向,并 在以給定的半徑(最遠(yuǎn)距離)確定的判定球及給定的角度(最大角度差)確定的頂點(diǎn)在原點(diǎn)上的判定錐內(nèi)査找距中心點(diǎn)最近的點(diǎn),具體步驟如下第一步給定中心點(diǎn)、法向、距離門限及角度門限,確定判定球并計(jì)算此判 定球與根結(jié)點(diǎn)所對(duì)應(yīng)六面體閉空間是否具有重合區(qū)域并確定根結(jié)點(diǎn)所對(duì)應(yīng)法向 錐是否與判定錐是否有重合區(qū)域,若有一項(xiàng)為否則表示不可能在點(diǎn)云中找到到中 心點(diǎn)距離小于距離門限,且法向相差少于角度門限的點(diǎn),否則從根結(jié)點(diǎn)開始進(jìn)行 最近點(diǎn)査找,即以根結(jié)點(diǎn)作為當(dāng)前結(jié)點(diǎn),進(jìn)入下一步操作。第二步若當(dāng)前結(jié)點(diǎn)不存在分割面,即為葉子結(jié)點(diǎn),則轉(zhuǎn)第三步,否則轉(zhuǎn)第 四步。第三步分別在確定法向差小于角度門限的前提下比較所包含的各坐標(biāo)與中 心點(diǎn)的距離,并得到最小距離,若最小距離小于距離門限,則將距離門限更新為 當(dāng)前計(jì)算所得的最小距離(相應(yīng)的判定球也隨之更新),并記錄當(dāng)前最小距離所 對(duì)應(yīng)的坐標(biāo)為結(jié)果坐標(biāo)。第四步此時(shí)需判斷中心點(diǎn)相對(duì)分割面所處方向(即判斷中心點(diǎn)是在距左子 結(jié)點(diǎn)所對(duì)應(yīng)六面體近還是距右子結(jié)點(diǎn)所對(duì)應(yīng)立面體近)以及分割面與判定球之間 的位置關(guān)系(相離或相交)。判定后,首先在距中心點(diǎn)較近的結(jié)點(diǎn)搜索最近點(diǎn), 即將此結(jié)點(diǎn)設(shè)為當(dāng)前結(jié)點(diǎn),轉(zhuǎn)第二步的操作,完成后返回并繼續(xù)進(jìn)行下一步。第五步再次使用更新后的判定球與分割面進(jìn)行位置關(guān)系比較,若此時(shí)未出 現(xiàn)相交,即如圖6中情況①,則可免于對(duì)另一結(jié)點(diǎn)進(jìn)行搜索,而若出現(xiàn)相交,即 如圖6中情況②,此時(shí)則說明還須在另一個(gè)結(jié)點(diǎn)上進(jìn)行一次搜索操作,即將另一 結(jié)點(diǎn)設(shè)為當(dāng)前結(jié)點(diǎn),轉(zhuǎn)第二步操作,完成后返回并結(jié)束對(duì)當(dāng)前結(jié)點(diǎn)的搜索。但實(shí) 際上,后一種情況在一次全搜索中出現(xiàn)的次數(shù)總是很少的,這樣就可以省略大量 的距離計(jì)算和角度計(jì)算,節(jié)省了時(shí)間,降低時(shí)間復(fù)雜度可達(dá)0(log^)。4. 拼接后公共部分處理并輸出點(diǎn)云 由于對(duì)部分表面的多次重復(fù)掃描,大規(guī)模點(diǎn)云數(shù)據(jù)在拼接后將出現(xiàn)大量的數(shù)據(jù)冗 余,這部分不必要的數(shù)據(jù)需要得到有效的精簡(jiǎn)。根據(jù)由本發(fā)明所設(shè)計(jì)的系統(tǒng)所獲 得到的點(diǎn)云數(shù)據(jù)的特點(diǎn),我們?cè)O(shè)計(jì)了如下的冗余點(diǎn)剔除算法。第一步帶法向錐的KD索引樹的建立。對(duì)每次的掃描結(jié)果,都可以建立相 應(yīng)的KD樹結(jié)構(gòu),具體構(gòu)造方法已在3中有具體描述。第二步尋找最近點(diǎn)。使用3中所描述的算法,對(duì)每個(gè)點(diǎn)使用其坐標(biāo)信息及法向信息進(jìn)行最近點(diǎn)尋找。第三步冗余點(diǎn)剔除。找到最近點(diǎn),則說明點(diǎn)對(duì)中存在冗余點(diǎn),需要剔除一 個(gè)。由于相機(jī)畸變?cè)斐烧`差分布如圖7,可近似估計(jì)超遠(yuǎn)離鏡頭中心的測(cè)量點(diǎn), 預(yù)計(jì)誤差超大。因此為保留預(yù)計(jì)誤差較小的點(diǎn),即需選擇更為遠(yuǎn)離鏡頭中心的測(cè) 量點(diǎn)進(jìn)行剔除。循環(huán)執(zhí)行第二三步,直至在所有未被剔除的點(diǎn)上都完成了一次操 作。圖8和圖9展示了拼接后剔除冗余點(diǎn)前后的點(diǎn)云數(shù)據(jù)效果圖5. 大規(guī)模點(diǎn)云數(shù)據(jù)的存儲(chǔ)三維掃描所產(chǎn)生的點(diǎn)云數(shù)據(jù)量大,尤其在對(duì)精細(xì)度要求較高而表面積又較大 的物體進(jìn)行掃描時(shí),可能要進(jìn)行上百次甚至上千次的掃描,掃描的結(jié)果將外部存 儲(chǔ)空間迅速充滿,不利于工作的繼續(xù)進(jìn)行。我們主要采用了二維投影、頻域變換 壓縮及空間量化的技術(shù)來進(jìn)行數(shù)據(jù)量的控制。(1) 二維投影。由于單面掃描所得點(diǎn)是均勻分布在i^xi^的規(guī)則網(wǎng)格上的,因此可利用這種投影規(guī)則性,將點(diǎn)云投射到二維空間,得到一張規(guī)則的二維圖像(深度圖像),數(shù)據(jù)壓縮率可達(dá)33%,而且這種壓縮方式完全無損,是一種安全 的壓縮方法。對(duì)于拼接后的點(diǎn)云數(shù)據(jù)可以分塊進(jìn)行投影,其壓縮比與單面壓縮比 無異。(2) 頻域變換壓縮。由第一種方法得到的規(guī)則圖像在實(shí)踐中一般具有頻域范 圍小,且低頻信號(hào)占絕大部分的特點(diǎn),是進(jìn)行頻域壓縮較理想的數(shù)據(jù)。常用的壓 縮方法有傅立葉變換后壓縮,小波壓縮等。這種壓縮方法壓縮比可控,有利于數(shù) 據(jù)的適應(yīng)性存儲(chǔ),和分級(jí)解壓的實(shí)現(xiàn),但計(jì)算量較大,且一般為有損壓縮,尤其是對(duì)數(shù)據(jù)細(xì)節(jié)有較大影響。(3)對(duì)三維空間進(jìn)行量化。對(duì)于一般的點(diǎn)云數(shù)據(jù),由于沒有特定的投影算子 可使用,因此第一、二種壓縮方法將不適用,這里使用另一種壓縮方法。計(jì)算出 點(diǎn)云某一維的取值范圍,以及數(shù)據(jù)分布,利用上下限信息及分布直方圖,將取值 范圍按分布積分函數(shù)均勻劃分為一定數(shù)量的區(qū)域,從而達(dá)到量化的目的。量化后 以四字節(jié)甚至雙字節(jié)的空間存儲(chǔ)坐標(biāo)的每一維數(shù)據(jù),便可以只使用50%甚至25% 的原始數(shù)據(jù)量來存儲(chǔ)點(diǎn)云數(shù)據(jù)。雖然這種壓縮方法是有損數(shù)據(jù)精度的,在精度要 求較高的情況下不適用,但在一般應(yīng)用下,經(jīng)實(shí)踐證明這是一種行之有效且實(shí)現(xiàn) 速度快、壓縮效果好的壓縮方案。6.大規(guī)模點(diǎn)云數(shù)據(jù)的顯示大規(guī)模數(shù)據(jù)不但面臨存儲(chǔ)的問題,在顯示時(shí)將面臨更大的問題,因?yàn)樵瓉韷?縮過的數(shù)據(jù)在顯示時(shí)將完全解差出來,數(shù)據(jù)量無可避免地變得非常大,這樣如果要進(jìn)行點(diǎn)云的顯示將變得非常困難。為此,我們采用了以下辦法(1) 存儲(chǔ)映射。點(diǎn)云顯示時(shí)需要點(diǎn)的位置、法向以及亮度、色彩等一系列相 關(guān)信息,為使在OpenGL調(diào)用時(shí)按標(biāo)準(zhǔn)格式讀入數(shù)據(jù),有必要按點(diǎn)云相關(guān)信息的 標(biāo)準(zhǔn)格式設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu),如將位置信息組織在一塊連續(xù)區(qū)域中,而法向信息也組 織另一塊連續(xù)的存儲(chǔ)區(qū)域中。按照這種方式在外部存儲(chǔ)中進(jìn)行結(jié)構(gòu)組織后,使用 存儲(chǔ)映射技術(shù),直接將外存映射到內(nèi)存中,在不預(yù)載入文件的情況下即將顯示點(diǎn) 云,提高了數(shù)據(jù)讀取效率,且利用外存空間遠(yuǎn)大于內(nèi)存空間的特點(diǎn),使得大規(guī)模 數(shù)據(jù)的顯示成為可能。(2) 計(jì)時(shí)顯示。點(diǎn)云數(shù)據(jù)量過于龐大,顯示設(shè)備(如顯示卡)的處理速度及 存儲(chǔ)能力都將面臨瓶頸,而三維掃描拼接最主要的任務(wù)是在拼接而非顯示,在顯 示上花費(fèi)過多時(shí)間會(huì)形成本末倒置的結(jié)果,極大地影響工作效率。因此我們采用 計(jì)時(shí)顯示技術(shù),對(duì)點(diǎn)云顯示程序進(jìn)行計(jì)時(shí),按照期望幀率截取部分點(diǎn)云進(jìn)行顯示。 在一般情況下,只顯示這一部分的點(diǎn)云,而只在GPU、 CPU等顯示計(jì)算設(shè)備空 閑時(shí),再逐級(jí)顯示其余點(diǎn)云,在不影響主體工作的前提下,盡可能地提供最精細(xì) 的數(shù)據(jù)顯示效果。
權(quán)利要求
1.一種三維掃描儀,其特征是由光柵生成設(shè)備(3),圖像采集設(shè)備(1)、(2),標(biāo)定塊(4),計(jì)算機(jī)通訊板卡(5)及外圍機(jī)械支撐設(shè)施構(gòu)成,光柵生成設(shè)備(3)與計(jì)算機(jī)通訊板卡(5)連接,圖像采集設(shè)備與計(jì)算機(jī)通訊板卡(5)連接,其數(shù)目可為一到八個(gè),具體數(shù)目由系統(tǒng)精度要求以及被測(cè)物體大小規(guī)格而定,標(biāo)定塊(4)是一個(gè)尺寸經(jīng)過嚴(yán)格控制的印有精確圖案的標(biāo)準(zhǔn)量塊,計(jì)算機(jī)通訊板卡(5)是計(jì)算機(jī)控制圖像采集設(shè)備的中介設(shè)備,可以是1394接口卡或USB接口卡,外圍支撐設(shè)施可以是三腳機(jī)架、三坐標(biāo)機(jī)床。
2. —種三維模型重構(gòu)方法,其特征由以下步驟組成-(1) 首先對(duì)圖像采集設(shè)備進(jìn)行定標(biāo);(2) 采集被測(cè)件在不同結(jié)構(gòu)光圖案照射下所反射產(chǎn)生的圖像,并由此計(jì)算出 被測(cè)件上的反射點(diǎn)位置(點(diǎn)云)及貼于被測(cè)件上標(biāo)志點(diǎn)的位置;(3) 點(diǎn)云數(shù)據(jù)拼接算法第一步在被測(cè)件上固定若干易于利用圖像處理技術(shù)進(jìn)行識(shí)別的標(biāo)志點(diǎn)后, 開始投射光柵并進(jìn)行圖像采集,每次圖像采集都需保證能拍攝到多于三個(gè)以上的 標(biāo)志點(diǎn),并保證所采集到的標(biāo)志點(diǎn)圖像具有足夠的信息量;第二步匹配標(biāo)志點(diǎn),在兩拼接數(shù)據(jù)的標(biāo)志點(diǎn)集中選擇三對(duì)對(duì)應(yīng)點(diǎn)進(jìn)行長邊 對(duì)長邊、短邊對(duì)短邊的三角形匹配,在匹配成功的情況下利用點(diǎn)對(duì)剛性變換算法 進(jìn)行兩拼接數(shù)據(jù)標(biāo)志點(diǎn)集的完全對(duì)應(yīng)匹配,其中剛性變換算法的具體步驟為首 y p y孑先按式Cp-^, C,^^計(jì)算左點(diǎn)集重心Cp和右點(diǎn)集重心然后按 P卜P,-q, A'^,-q計(jì)算相對(duì)位置P'和Q',其中左相對(duì)坐標(biāo)P^(p',h、1,2, 3, ...,"},右相對(duì)坐標(biāo)Q'^ {g',|/ = 1,2,3, ...,"};再按式M:^;C計(jì)算交互協(xié)方差矩陣M;接著按式K-'"=+111<++11211〖++113<計(jì)算對(duì)稱矩陣K =<formula>formula see original document page 2</formula>M""M,以及K的特征值義i、乂2、A3及其相應(yīng)特征向量u!、 U2、 U3,并由此計(jì)算矩陣K的半正定平方根的逆K—1/2;最后由R = MK—1/2計(jì)算出旋轉(zhuǎn)變換量R, 并由t = C, - RCp計(jì)算出平移變換量t;第三步分別確定兩拼接數(shù)據(jù)集的以法向錐方式表達(dá)的法向空間;第四步將法向所處區(qū)間均勻劃分為若干部分,在每個(gè)部分中按一定數(shù)目取 樣點(diǎn)進(jìn)入后續(xù)操作;第五步在兩拼接數(shù)據(jù)集中找到最近點(diǎn)對(duì),即所有滿足條件的點(diǎn)對(duì), , p—1、其中p"是C",中距離p—"最近的點(diǎn),而p—"也是C/"力中距離pn最近的 點(diǎn),若點(diǎn)對(duì)數(shù)目過少則需返回第二步重新選取另一種標(biāo)志點(diǎn)的配對(duì)方案;第六步找到所有最近點(diǎn)對(duì),在點(diǎn)對(duì)集合中取樣一部分點(diǎn)對(duì)進(jìn)行剛性變換計(jì)算,若計(jì)算出的剛性旋轉(zhuǎn)量及平移量無法讓所選取的點(diǎn)對(duì)距離平均值變小,則結(jié) 束剛性變換量計(jì)算,以當(dāng)前位置作為拼接位置,否則重復(fù)本步操作直至結(jié)束。
全文摘要
本發(fā)明三維掃描儀及其三維模型重構(gòu)方法屬于三維掃描領(lǐng)域中以采用光學(xué)方法為特征的計(jì)量設(shè)備及其計(jì)量方法。發(fā)明中所提及的三維掃描儀屬于一種光柵掃描設(shè)備。本三維掃描儀由圖像采集設(shè)備、光柵生成設(shè)備、標(biāo)定塊、計(jì)算機(jī)通訊板卡及外圍機(jī)械支撐設(shè)施構(gòu)成。其工作流程及特征為首先對(duì)圖像采集設(shè)備進(jìn)行標(biāo)定;然后采集被測(cè)件在不同結(jié)構(gòu)光圖案照射下所反射產(chǎn)生的圖像,并由此計(jì)算出被測(cè)件上的反射點(diǎn)位置(點(diǎn)云)及貼于被測(cè)件上標(biāo)志點(diǎn)的位置;最后通過各次采集到的點(diǎn)云及標(biāo)志點(diǎn)之間的相互匹配關(guān)系合成被測(cè)件的整體三維模型。本發(fā)明設(shè)計(jì)了一種光柵掃描設(shè)備并提出了一種利用此設(shè)備多次采集到的數(shù)據(jù)進(jìn)行拼接的方法。
文檔編號(hào)G06T11/00GK101236660SQ200810101400
公開日2008年8月6日 申請(qǐng)日期2008年3月6日 優(yōu)先權(quán)日2008年3月6日
發(fā)明者俊 劉, 張利群 申請(qǐng)人:張利群;劉 俊
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
环江| 中卫市| 巴青县| 睢宁县| 玉田县| 会昌县| 五家渠市| 佛冈县| 离岛区| 赣榆县| 如东县| 葫芦岛市| 蓝山县| 宾阳县| 南郑县| 三明市| 革吉县| 嘉荫县| 八宿县| 宜良县| 宣化县| 瑞丽市| 新巴尔虎左旗| 长子县| 甘南县| 密山市| 苏尼特左旗| 田阳县| 巴林左旗| 濮阳县| 会昌县| 台东市| 繁昌县| 南开区| 临泽县| 定西市| 厦门市| 广平县| 芒康县| 化德县| 县级市|