本發(fā)明涉及地圖制圖,特別是指一種顧及室內(nèi)曲面結(jié)構(gòu)的室內(nèi)三維重建方法。
背景技術(shù):
1、經(jīng)濟(jì)活動(dòng)快速發(fā)展,建筑物數(shù)量大幅增加,人類室內(nèi)活動(dòng)顯著增長(zhǎng)。建筑物內(nèi)部結(jié)構(gòu)也呈現(xiàn)大型化、復(fù)雜化趨勢(shì),匯集各種生產(chǎn)、生活用品,室內(nèi)三維建模勢(shì)在必行。隨著激光硬件與移動(dòng)式掃描設(shè)備的不斷普及,基于三維激光掃描產(chǎn)生的三維點(diǎn)云已成為獲取室內(nèi)場(chǎng)景信息的重要方式,如何通過三維點(diǎn)云實(shí)現(xiàn)室內(nèi)實(shí)景建模已成為當(dāng)今研究的熱點(diǎn)。然而,目前建模方法,一般針對(duì)室外平面結(jié)構(gòu),針對(duì)室內(nèi)場(chǎng)景尤其是含有曲面結(jié)構(gòu)的室內(nèi)場(chǎng)景,尚無良好的解決方案。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本發(fā)明提出一種顧及室內(nèi)曲面結(jié)構(gòu)的室內(nèi)三維重建方法。該方法基于三維點(diǎn)云進(jìn)行室內(nèi)三維重建,實(shí)現(xiàn)了室內(nèi)曲面結(jié)構(gòu),尤其是圓柱形曲面結(jié)構(gòu)的三維重建,可快速、有效、高精度的實(shí)現(xiàn)室內(nèi)場(chǎng)景重建,滿足復(fù)雜室內(nèi)場(chǎng)景導(dǎo)航與建模需求。
2、為了實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案如下:
3、一種顧及室內(nèi)曲面結(jié)構(gòu)的室內(nèi)三維重建方法,包括以下步驟;
4、步驟1,輸入室內(nèi)三維點(diǎn)云,基于超體素分割方法將室內(nèi)三維點(diǎn)云分割為室內(nèi)平面超體素集合s和室內(nèi)曲面點(diǎn)集合c;
5、步驟2,針對(duì)室內(nèi)平面超體素集合s,基于改進(jìn)的超體素隨機(jī)采樣一致性方法擬合平面模型,構(gòu)建平面模型集合;
6、步驟3,以室內(nèi)曲面點(diǎn)集合c內(nèi)的各個(gè)曲面點(diǎn)為單元,以圓柱、球型為幾何單形,基于隨機(jī)采樣一致性方法擬合曲面模型,構(gòu)建曲面模型集合;
7、步驟4,將平面模型集合與曲面模型集合投影到2d平面,將2d平面分割為二維單元集合;
8、步驟5,基于疊加分析和馬爾可夫場(chǎng)構(gòu)建二維單元集合到室內(nèi)房間的多對(duì)多映射,構(gòu)建室內(nèi)二維平面圖;
9、步驟6,基于約束delaunay三角化方法,將室內(nèi)二維平面圖構(gòu)建為室內(nèi)三維模型,完成顧及室內(nèi)曲面結(jié)構(gòu)的室內(nèi)三維重建。
10、進(jìn)一步地,步驟2的具體方式為:
11、步驟2.1,設(shè)置角度閾值,距離閾值與數(shù)目閾值,構(gòu)建平面模型集合;
12、步驟2.2,針對(duì)室內(nèi)平面超體素集合s中的每一個(gè)室內(nèi)平面超體素,計(jì)算其曲率值,按照曲率值從小到大的順序?qū)λ惺覂?nèi)平面超體素進(jìn)行排序;
13、步驟2.3,選取曲率值最小的室內(nèi)平面超體素,計(jì)算其中心點(diǎn)和法向量,并根據(jù)中心點(diǎn)和法向量建立對(duì)應(yīng)的平面模型,將當(dāng)前選取的室內(nèi)平面超體素記為平面模型的一個(gè)內(nèi)斂超體素;
14、步驟2.4,遍歷其余室內(nèi)平面超體素,若選取到的室內(nèi)平面超體素與平面模型的法向量夾角小于角度閾值,且在平面模型法向量上的距離小于距離閾值,則將當(dāng)前選取到的室內(nèi)平面超體素記為平面模型的一個(gè)內(nèi)斂超體素;
15、步驟2.5,如果平面模型的內(nèi)斂超體素?cái)?shù)量大于數(shù)目閾值則保留當(dāng)前平面模型,否則刪去當(dāng)前平面模型;
16、步驟2.6,針對(duì)不屬于任意平面模型內(nèi)斂超體素的室內(nèi)平面超體素,重復(fù)執(zhí)行步驟2.3~步驟2.5,直至所有室內(nèi)平面超體素均被記為某一對(duì)應(yīng)平面模型的內(nèi)斂超體素;
17、步驟2.7,將內(nèi)斂超體素?cái)?shù)量最多的平面模型存入平面模型集合ps中,并將該平面模型對(duì)應(yīng)的內(nèi)斂超體素從室內(nèi)平面超體素集合s刪去;刪去其余平面模型;
18、步驟2.8,重復(fù)步驟2.2~步驟2.7,直至平面模型集合ps中的平面模型不再增加。
19、進(jìn)一步地,步驟4的具體方式為:
20、步驟4.1,根據(jù)室內(nèi)三維點(diǎn)云的坐標(biāo)最大值與最小值,形成2d邊界范圍;
21、步驟4.2,將平面模型集合ps投影到2d平面,每個(gè)線段延長(zhǎng)為直線,并選擇其中的相似直線進(jìn)行刪除;具體的,選擇其中的相似直線進(jìn)行刪除執(zhí)行以下步驟:
22、步驟4.2.1,針對(duì)直線與直線,代入以下公式進(jìn)行計(jì)算:
23、;
24、;
25、其中,表示取模,與分別為直線與直線的矢量朝向,表示矢量點(diǎn)乘,arccos表示反余弦函數(shù);
26、步驟4.2.2,若上述兩公式均成立,則判定直線與直線為相似直線,并任選其中一條直線進(jìn)行刪除,否則判定直線與直線為非相似直線;
27、步驟4.3,將曲面模型集合中的圓柱集合投影到2d平面,并刪除近似圓;
28、步驟4.4,根據(jù)所有延長(zhǎng)線與圓線,將2d邊界范圍切分為二維單元集合。
29、進(jìn)一步地,步驟5的具體方式為:
30、步驟5.1,將室內(nèi)三維點(diǎn)云投影到2d平面,所述室內(nèi)三維點(diǎn)云離散化為二維投影柵格圖;
31、步驟5.2,利用形態(tài)學(xué)房間分割方法對(duì)二維投影柵格圖進(jìn)行分割,形成二維房間分割圖;
32、步驟5.3,在步驟4.1形成的2d邊界范圍內(nèi),生成隨機(jī)點(diǎn)集,隨機(jī)點(diǎn)集中的每個(gè)隨機(jī)點(diǎn)根據(jù)自身位置對(duì)應(yīng)二維房間分割圖中的一個(gè)房間,并對(duì)應(yīng)二維單元集合中的一個(gè)二維單元;
33、步驟5.4,根據(jù)隨機(jī)點(diǎn)集,計(jì)算將二維單元對(duì)應(yīng)至房間的概率:
34、;
35、其中,為二維單元集合中的第i個(gè)二維單元,i=1,2,3,……,m,m為二維單元集合中的二維單元數(shù)量;表示二維房間分割圖中的第t個(gè)房間,t=1,2,3,……,k,k為二維房間分割圖中的房間數(shù)量;表示隨機(jī)點(diǎn)集中對(duì)應(yīng)第i個(gè)二維單元且對(duì)應(yīng)第t個(gè)房間的隨機(jī)點(diǎn)的數(shù)量;表示隨機(jī)點(diǎn)集中對(duì)應(yīng)第i個(gè)二維單元的隨機(jī)點(diǎn)的數(shù)量;將計(jì)算概率最大時(shí)的記為二維單元的初步對(duì)應(yīng)房間;
36、步驟5.5,利用α擴(kuò)張優(yōu)化方法,實(shí)現(xiàn)以下公式的最小化,得到最終的m行k列矩陣,進(jìn)而得到二維單元集合中每個(gè)二維單元的最終對(duì)應(yīng)房間:
37、;
38、其中,x為優(yōu)化變量,且x為m行k列矩陣,矩陣x中的每一行元素都包括一個(gè)1與k-1個(gè)0;表示矩陣x中的第i行第t列元素,表示二維單元的面積,nei為二維單元集合中的兩兩鄰接二維單元對(duì)集合,為兩兩鄰接二維單元對(duì)集合nei中的二維單元對(duì)數(shù)量,與為兩兩鄰接二維單元對(duì)集合nei中的一對(duì)兩兩鄰接二維單元,j,q=1,2,3,……,m,與分別為二維單元與的初步對(duì)應(yīng)房間,若,則=1,=0,否則=0,=1;表示二維單元與之間的墻面,表示墻面在2d平面的面積;
39、最終得到的優(yōu)化變量x即為m行k列矩陣,若矩陣的第i行第t列元素的值為1,則表示二維單元最終對(duì)應(yīng)二維房間分割圖中的第t個(gè)房間;
40、步驟5.6,將對(duì)應(yīng)同一房間的二維單元標(biāo)記相同顏色,對(duì)應(yīng)不同房間的二維單元標(biāo)記不同顏色,輸出室內(nèi)二維平面圖。
41、進(jìn)一步地,步驟6的具體方式為:
42、步驟6.1,利用步驟5.6中生成的室內(nèi)二維平面圖,結(jié)合每一個(gè)房間區(qū)域內(nèi)的室內(nèi)三維點(diǎn)云,通過豎直方向的點(diǎn)云高程直方圖求取每個(gè)房間的高度,并根據(jù)室內(nèi)二維平面圖在鄰接房間之間的墻面上標(biāo)記門的位置;
43、步驟6.2,利用約束delaunay三角化方法,將室內(nèi)的天花板、墻面、門和地板進(jìn)行三角化,構(gòu)建最終的室內(nèi)三維模型,并以矢量mesh網(wǎng)格形式輸出,完成顧及室內(nèi)曲面結(jié)構(gòu)的室內(nèi)三維重建。
44、由于采用了上述技術(shù)方案,本發(fā)明與現(xiàn)有技術(shù)相比的有益效果在于:
45、1、本發(fā)明基于三維點(diǎn)云進(jìn)行室內(nèi)三維重建,實(shí)現(xiàn)了室內(nèi)曲面結(jié)構(gòu),尤其是圓柱形曲面結(jié)構(gòu)的三維重建,完善了室內(nèi)建模領(lǐng)域的三維建模方案。
46、2、本發(fā)明基于3d-2d投影規(guī)律,將室內(nèi)場(chǎng)景重建看作室內(nèi)單元到室內(nèi)房間標(biāo)簽之間的多對(duì)多映射,并通過α擴(kuò)張優(yōu)化算法解決該問題。構(gòu)建了基于室內(nèi)三維點(diǎn)云的室內(nèi)場(chǎng)景重建框架,可快速、有效、高精度的實(shí)現(xiàn)室內(nèi)場(chǎng)景重建,該發(fā)明同樣適用于室內(nèi)定位和室內(nèi)測(cè)圖。