




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
目錄28532摘要 119311ABSTRACT 217400第一章緒論 3273161.1課題研究背景及意義 315751.2三維掃描系統(tǒng)的研究現(xiàn)狀 37141.3課題研究內容及總體設計方案 426143第二章Kinect傳感器的相機標定 576422.1Kinect簡介 5187292.2Kinect深度測量原理 6104072.3MATLAB標定過程 96940第三章圖像特征匹配與局部地圖構建 13126433.1匹配特征點的獲取 1310943.2相機位姿跟蹤 15282623.3局部地圖構建 1623521第四章基于ORB-SLAM的三維稠密地圖構建 17213294.1關鍵圖像幀的提取 1889724.2傳統(tǒng)ICP算法 18288404.3改進ICP算法 1929849第五章實驗重建 21309575.1實驗設備及環(huán)境 22307635.2實驗操作及結果分析 2224500第六章總結與展望 2770416.1工作總結 28272196.2展望 2810977參考文獻 291817致謝 31摘要近年來,隨著科學技術的快速發(fā)展,三維重建技術越來越受到人們的重視,其也一直以來被當做計算機視覺、圖形的重要研究方向。三維重建一方面能夠滿足人們對于客觀世界中存在的景物的視覺需求,更是在生活、生產(chǎn)、醫(yī)療、軍事等等領域有著極強的生命力和影響力,應用前景極為廣闊。本文針對室內場景提出了基于Kinect的手持式三維掃描系統(tǒng)的構建與設計方法。利用微軟推出的Kinect傳感器進行彩色圖像與深度信息的采集,并通過跟蹤獲取圖像特征點計算Kinect位姿,有效改善相機獲取深度圖片存在誤差及圖像噪聲等問題,實現(xiàn)局部地圖構建。利用回環(huán)檢測降低累計誤差,運用通用圖優(yōu)化框架(GeneralGraphoptimization,G2o)優(yōu)化位姿圖。由于ORB-SLAM系統(tǒng)所構建的是稀疏點云地圖,分辨率較低,因此本文在上述基礎上進一步通過提取關鍵幀,獲取更多的圖片像素,在提高算法速度的同時構建出三維稠密地圖。此外,本文提出了一種改進ICP算法,更好的實現(xiàn)室內場景的三維重建過程。經(jīng)過實驗驗證,本文研究的三維掃描系統(tǒng)能夠較好的完成對于室內場景的重建,得到完整的三維模型。關鍵詞:三維掃描;Kinect;標定;ORB-SLAM;ICP算法ABSTRACTInrecentyears,withtherapiddevelopmentofscienceandtechnology,3Dreconstructiontechnologyhasreceivedmoreandmoreattentionfrompeople.Ithasalsobeenregardedasanimportantresearchdirectionofcomputervisionandgraphics.Ontheonehand,3Dreconstructioncansatisfypeople'svisualneedsforthescenesintheobjectiveworld,andithasstrongvitalityandinfluenceinthefieldsoflife,production,medicaltreatment,militaryaffairs,andsoon.Theapplicationprospectisextremelybroad.Thispaperpresentsamethodofconstructinganddesigningahand-heldthree-dimensionalscanningsystembasedonKinectforindoorscenes.UsingMicrosoft'sKinectsensortocapturecolorimagesanddepthinformation,andcalculatingposeKinectacquiredbytheimagefeaturepointtracking,thecameraeffectivelyimprovetheerrorimageacquisitionandimagedepthpresentissuessuchasnoise,toachievelocalmapbuilding.Usingtheloopdetectiontodecreasethecumulativeerrorandthegeneralgraphoptimization(G2o)tooptimizetheposediagram.SincetheORB-SLAMsystemisconstructedwithasparsepointcloudmapandhasalowresolution,thispaperfurtherextractskeyframesandobtainsmorepicturepixelsonthebasisoftheabove,andconstructsathree-dimensionaldensemapwhileimprovingthespeedofthealgorithm.Inaddition,thispaperproposesanimprovedICPalgorithmtobetterachievethethree-dimensionalreconstructionprocessofindoorscenes.Afterexperimentalverification,thethree-dimensionalscanningsystemstudiedinthispapercansuccessfullycompletethereconstructionofindoorscenesandobtainacompletethree-dimensionalmodel.Keywords:three-dimensionalscanningsystem;Kinect;Calibration;ORB-SLAM;IterativeClosestPoint緒論1.1課題研究背景及意義近些年,隨著計算機視覺、圖形技術在許多領域的極大運用,且在一些場合早已利用機器視覺來替代人眼進行測量及判斷,實現(xiàn)人的視覺功能,即用計算機識別客觀三維世界。利用三維掃描聯(lián)合數(shù)字化技術,將具有立體三維數(shù)據(jù)的客觀實物模型在計算機的虛擬世界中重新構建,這就是三維掃描技術。三維掃描技術具有極為廣闊的應用前景,無論是在計算機視覺方面,還是在逆向工程、快速成型、虛擬現(xiàn)實等領域,其都具有鮮活的生命力。然而與此同時,伴隨著人們對于三維重建模型更加精準、廣泛、深入的要求,三維掃描技術愈加面臨更為嚴苛的挑戰(zhàn)。這不僅要求研究人員進一步的開發(fā)出三維模型的更多功能,在任意觀察的基礎上,更需要不斷改善重建的三維模型的效果,同時改進模型建立的步驟,更為簡便、快速的構建三維模型,使得三維建模得到愈加廣泛的利用。一般而言,三維重建具有相機標定、彩色及深度圖像獲取、圖像特征點提取、幀間匹配、三維重建等基本步驟,但是在重建過程中,由于光照條件、相機的幾何特性、噪聲干擾、景物幾何形狀畸變、表面物理特性等等原因,匹配得到的虛擬模型仍需著重考慮運用不同措施提高精度、減小誤差等。然而這些問題也困擾著許許多多的研究人員,不僅僅受限于算法和建模方法,所采取的設備問題也影響著建立的模型效果。隨著科技的發(fā)展,國內外市場上出現(xiàn)了一些價格低廉但應用效果良好、前景廣泛的深度傳感器,這些傳感器在獲取RGB彩色圖像的同時,也能提供三維信息且具有良好的實時性。2009年,微軟公司設計并推出的Kinect傳感器具有十分強大的功能,其本身價格也較為低廉,得到了機器視覺的研究人員的廣泛青睞,并不斷開發(fā)。因此,本文采用Kinect傳感器作為手持設備,構建并設計一種針對室內場景的三維掃描系統(tǒng)。1.2三維掃描系統(tǒng)的研究現(xiàn)狀三維掃描是一種融合了光、機、電和計算機為一體的科技手段。其主要針對現(xiàn)實物體的物理表面、物理結構及色彩進行掃描,獲取物體在一定空間內的三維坐標。隨著科學技術的不斷發(fā)展,對三維掃描技術的研究愈加深入,如何快速、精準、有效的進行三維掃描成為當前研究的熱點和難點。根據(jù)使用技術的不同,三維重建的方法主要分為三種:基于立體視覺技術的三維重建;基于激光掃描技術的三維重建;基于激光相機和彩色相機的三維重建。這些不同的重建手段正是相對于不同的掃描方法。相對而言,基于立體視覺技術的三維重建速度較慢,在精度要求上也差強人意,因此應用領域十分狹小;而基于激光掃描技術的三維重建雖然精度高、速度快,但是很難得到實際物體表面的紋理信息,所構建出來的三維模型效果不夠直觀。鑒于此,有學者提出了第三種方法,即利用激光和彩色相機,在得到精準的實際物體的幾何模型的同時,另一方面通過紋理映射,使得對應圖像的幾何模型在匹配后能夠得到較好的三維可視化效果。事實上,三維掃描技術在國外研究的比較早,并且取得了一定的研究成果。利用激光掃描儀和高分辨率的彩色相機,IBM的H.Rushmeier和F.Bernardini領導的團隊精確掃描了米切朗基羅佛羅倫薩圣母憐子雕像,結合模型的幾何數(shù)據(jù)與彩色相機的色彩信息,重建出較好的三維效果REF_Ref10492\r\h[1]。Debevoc,Taylor等構建出Facade建筑物重建系統(tǒng)。甚至包括基于RGB-D相機三維重建的開山之作,首次實現(xiàn)實時稠密的三維重建,即ShahramIzadi等人利用微軟公司發(fā)布的Kinect傳感器研發(fā)出的KinectFusion算法。相較于國外,國內的三維掃描技術研究較晚,在技術手段等方面涉獵不深,對于模型的重建效果也未能達到理想地步,因此具有很大的進步空間。1.3課題研究內容及總體設計方案本文主要的研究是利用手持式Kinect傳感器構建并設計針對于室內場景的三維掃描系統(tǒng)。在完成Kinect相機的標定之后,采集彩色圖像與深度圖像,并通過跟蹤獲取圖像特征點計算Kinect位姿,有效改善相機獲取深度圖片存在誤差及圖像噪聲等問題,實現(xiàn)局部地圖構建。利用回環(huán)檢測降低累計誤差,運用G2o優(yōu)化位姿圖。與此同時,在ORB-SLAM系統(tǒng)所構建的是稀疏點云地圖基礎上,通過提取關鍵幀,獲取更多的圖片像素,在提高算法速度的同時構建出三維稠密地圖,取得更加良好的重建效果。總體設計方案如下:第一章緒論:主要介紹課題研究的背景發(fā)展歷史及現(xiàn)狀,概述本文的主體設計思路。第二章標定:在介紹Kinect相機及其深度測量原理之后,采取合適的方案進行相機的標定,建立相機成像的幾何模型,并對標定結果進行評估,提高標定的精度和算法的穩(wěn)定性。第三章處理采集的圖像:分別對于RGB圖像和深度圖像進行處理,獲取圖像匹配特征點,并估計關鍵幀之間的匹配關系,構建局部地圖,與此同時,不斷進行回環(huán)檢測,以降低視覺里程計過程中誤差的積累,并利用G2o優(yōu)化回環(huán)位姿圖。第四章構建三維稠密地圖:由于ORB-SLAM存在的局限性,其只能構建稀疏的點云圖,在此基礎上,提出提取關鍵幀的方法來篩選有效合適的圖像,減少構建地圖的時間提高效率與構建效果。介紹傳統(tǒng)ICP算法,并提出新的改進的ICP算法,在相對比較的基礎上,優(yōu)化整體構建結構,以達到初始的目的。第五章實驗:介紹整個實驗流程,并借助一次實時有效的實驗操作及采集數(shù)據(jù)來驗證本文設計思路與設計結果的優(yōu)劣。第六章總結與展望:對本文所有涉及的過程進行總結與評估,分析尚存的問題,提出之后可能存在的改進工作。Kinect傳感器的相機標定2.1Kinect簡介Kinect最早于2009年6月2日在E3大展由微軟正式公布,并作為XBOX360體感周邊外設(開發(fā)代號“ProjectNatal”)。2010年11月4日,Kinect在北美正式發(fā)售。圖2-1KinectKinect設備上存在三個鏡頭,中間為用于采集RGB圖像的RGB相機;左右兩側分別為紅外線發(fā)射器和紅外線CMOS攝影機,兩者相互作用構成3D結構光深度感應器,用于采集深度數(shù)據(jù)REF_Ref20934\r\h[2]。作為游戲設備出生,Kinect本身并沒有任何控制器,其利用相機跟蹤客觀立體空間中玩家的肢體運動,同時具有還辨識人臉、聲音等功能,但由于一些原因,Kinect一直未曾被正式用于Windows平臺上的開發(fā)。2011年6月,在眾望所歸之下,微軟終于推出KinectforWindowsSDKBeta,這一發(fā)展為各領域的研究人員開啟了探索充滿無限可能的旅程。2.2Kinect深度測量原理在現(xiàn)今的3D深度攝像技術中,三種主流方案并肩而立,他們分別是TOF、結構光、雙目成像:TOF(TimeOfFlight):TOF系統(tǒng)是一種光雷達系統(tǒng),一方面從發(fā)射極向物體發(fā)射光脈沖,另一方面接收器通過計算光脈沖從發(fā)射器到對象,然后以像素格式返回到接收器的運行時間計算被測量對象的距離。結構光(StructuredLight):攝像頭采集投射到物體表面的特定的光信息。通過檢測物體帶來的光信號的變化,計算一定空間中物體的三維數(shù)據(jù)和深度等信息,并以此復原整個三維空間。雙目成像(StereoSystem):采用雙攝像頭拍攝物體,基于三角形原理計算物體距離。圖2-2三種主流的3D深度攝像方案對比目前最新的Kinectv2采用的是ToF相機。本文所使用的Kinect為v1版本,故對此不再贅述。Kinectv1的深度傳感器采用“光編碼(LightCoding)”的方式,即結構光,讀取投射的紅外線pattern,通過pattern的變形取得深度信息。“LightCoding”是基于以色列公司PrimeSense的三維測量技術,于2013年被微軟收購REF_Ref11361\r\h[3]REF_Ref11714\r\h[4]。其中具體步驟為:紅外發(fā)射器向外發(fā)射紅外線,經(jīng)過衍射光柵被分成多束,在空間碰到照射中的物體會在形成一個隨深度變化而變化的散斑圖案,同時產(chǎn)生反射,然后由紅外接收相機接收反射回來的鐳射散斑,進行一定運算從而得到物體的深度信息。圖2-3深度信息計算原理圖在采集深度信息之前,需要對光源進行標定。Kinect測量范圍一般為1m-5m,以10cm為間隔選取參考平面,記錄平面上形成的散斑圖像,一共得到40份具有一定差異的散斑圖像。由圖2-2所給出的測量計算原理圖可知,紅外發(fā)射器L發(fā)射紅外線,照射到參考平面上在O點形成散斑,被紅外接收相機采集到后在其內部成像為O’點。同理,對于實際存在的對象目標,紅外發(fā)射器L發(fā)射紅外線在其表面形成散斑k點,在紅外接收相機內部成像為k’點。Kinect到參考平面的實際距離為設定值Zo,紅外接收相機的焦距已知為f,兩個相機之間的距離為b,目標物體的上形成的散斑點與參考平面散斑點在紅外接受相機內部成像的距離為d,那么計算Kinect傳感器到實際物體之間的距離Zk可通過以下推導:(2-1)(2-2)由式(2-1)和式(2-2)得:(2-3)式中,Zo、f、b、d均為已知,顯然可計算得到此時的深度信息Zk。2.3MATLAB標定過程相機標定即建立攝像機成像的幾何模型,得到相機的內外參數(shù)。為了能夠得到客觀世界中存在的空間物體表面某點的三維幾何位置和它在相機獲取的圖像中對應存在點之間的相互關系,標定是必不可少的。張正友教授在1998年提出了一種基于單平面棋盤格的新標定方法,其所利用的是一個簡單的打印出來的棋盤格,而不是如傳統(tǒng)標定方法必須有高精度標定物參照,這一方法也只需要簡簡單單的步驟就能完成,因此得到了廣大機器視覺研究者的青睞。一般標定過程主要利用到三個不用的坐標系統(tǒng),圖2-3揭示了世界坐標系、攝像坐標系及圖像坐標系之間的聯(lián)系。在下圖中,點O為相機光心,Zc軸為相機光軸,O-O1為相機焦距。點P是客觀世界中存在的某個點,其成像在圖像坐標系中對應點p。圖2-4世界坐標系、攝像坐標系和圖像坐標系世界坐標系通過平行和旋轉得到攝像坐標系,再由針孔攝像機得到圖像坐標系,根據(jù)像素和公制單位按一定比例得到圖像像素坐標系。針對本文所利用的Kinect傳感器進行標定的方法有很多,本文采用MATLAB對Kinect進行標定REF_Ref12582\r\h[5]。圖2-4是實驗室準備好的標定板,圖中黑白格子之間的頂點即為角點。圖2-5實驗標定板將標定板放在Kinect相機最佳拍攝范圍內,Kinect不動,每拍一張照片,將標定板移動位置,不斷改變其朝向和放置角度,拍攝約十五至二十組照片并保存。啟動MATLAB中的標定工具箱“CameraCalibrationToolbox”(圖2-5),載入拍攝的標定板圖片。圖片的處理需要檢測并提取角點,如圖2-6所示,之后對于角點進行進一步細化,提高標定精確度。圖2-6CameraCalibrationToolbox圖2-7提取角點MATLAB計算參數(shù)時,由于圖片拍攝可能產(chǎn)生失真或由于光線、距離等原因,可能產(chǎn)生較大的誤差,需要仔細檢測每一幅圖片在檢測角點的過程中是否檢測成功,對于提取角點較為失敗的圖片有必要將其排除,因此在第一步拍攝標定板時可以多拍攝一些作為備用。計算完成后得到最終結果,將Kinect相機參數(shù)列表2-1:參數(shù)名稱深度相機(像素點)RGB相機(像素點)焦距fx522.3988532.0164fy523.5541534.7330中心點cx318.6899315.2386cy269.1692269.6484徑向畸變K10.0353-0.2125K2-0.11580.2158切向畸變P10.00230.0015P2-0.012-0.0016標定誤差ex0.15840.2514ey0.17650.2205表2-1Kinect標定參數(shù)從表格中可以看出,Kinect的深度相機和RGB相機的徑向及切向畸變值都較小,像素點誤差均小于0.3,對于本次實驗所要求的精度其標定可靠性已經(jīng)能夠滿足。在后面的建模步驟中,標定得到的部分參數(shù)可以直接被采用。圖像特征匹配與局部地圖構建ORB-SLAM是由RaulMur-Artal,J.M.M.Montiel和JuanD.Tardos在2015年于IEEETransactionsonRobotics上發(fā)表提出。它是一個基于特征點的實時單目SLAM系統(tǒng),能夠應對各種規(guī)模不同或室內室外的環(huán)境變化。隨著技術的改進,ORB-SLAM2應運而生,其在ORB-SLAM的基礎上,支持標定后的雙目相機和RGB-D相機。如此,在這樣的環(huán)境下,本文利用Kinect傳感器做進一步開發(fā)利用。3.1匹配特征點的獲取在計算機的圖像處理中,特征點是指圖像中存在灰度值發(fā)生較大變化的點或者在圖像邊緣上曲率變化劇烈的點。圖像特征點揭示了圖像的本質特征,它的存在在圖像匹配時有著極大的作用。特征點是由關鍵點(Key-point)和描述子(Descriptor)兩者組成。一般,“SIFT特征”即指“提取SIFT關鍵點,并計算SIFT描述子”。關鍵點是指該特征點在圖像中的位置,其中存在部分特征點具有朝向、大小等信息。描述子是以關鍵點為基礎而建立,依照某種人為設定的方式用于描述該關鍵點周圍像素的信息。描述子是按“外觀相似的特征應當有相似的描述子”的原則設計的。因此,如果存在兩個特征點的描述子在空間向量上距離較為接近,那么就可以認為它們是相同的特征點REF_Ref26978\r\h[6]。2011年,EthanRublee,KurtKonolige,VincentRabaud和GaryR.Bradski等人發(fā)表了論文《ORB:AnefficientalternativetoSIFTorSURF》。論文中提出的ORB特征結合了改良后的FAST角點提取和BRIEF描述子,在匹配性能、計算速度以及在專利要求上都可以替代SIFT和SURF算法。提取ORB特征有兩個步驟,第一步是FAST關鍵點提取,第二步是BRIEF描述子REF_Ref15590\r\h[12]。一方面,由于FAST特征點本身的局限性,其并不具有尺度不變性。為了解決這個問題,可以構建高斯金字塔,對于其中每一層的圖像上存在的角點進行檢測,并以此實現(xiàn)尺度不變性。與此同時,針對FAST特征點不具有方向的問題,ORB中提出了基于灰度質心法的解決方法:假設角點的灰度與質心之間存在一個偏移,該向量表示一個方向。對于任意一個特征點p來說,定義p的鄰域像素的矩為: (3-1)其中,I(x,y)為點(x,y)處的灰度值。則圖像的質心為:(3-2)特征點與質心的夾角定義為FAST特征點的方向:(3-3)同時,為了提高旋轉不變性,x和y應當確保在半徑為r的圓形區(qū)域內,即,r為鄰域半徑REF_Ref28752\r\h[7]。另一方面,BRIEF描述子是一種二進制字符描述子,它的描述向量為:(3-4)其中,(3-5)p(x)是圖像塊p中點x的強度。τ是圍繞圖像塊中心的高斯分布。如果n選為256的話,fn(p)就是256維的向量。BRIEF所使用的二進制,十分便于存儲,適用于實時的圖像匹配。由于原始的BRIEF描述子不具有旋轉不變性,因此圖像的旋轉會導致匹配性能大幅下降。ORB根據(jù)之前關鍵點的方向進行圖像的旋轉,得到“steerBRIEF”,然而這中間依然存在特定方向的角點關鍵點使均值發(fā)散的問題,導致其方差虧損,匹配時錯誤率發(fā)生明顯上升。因此,BRIEF采用貪婪搜索,針對所有可能存在的τ進行搜索,找出同時具有0.5均值及高方差而且相互之間不干涉的τ,這樣的最終結果稱為rBRIEF。在這兩方面考慮的基礎上,ORB在平移、旋轉和縮放的變換下都具有良好的表現(xiàn)。因此,本文采用ORB特征提取算法,可以得到較為理想的效果。3.2相機位姿跟蹤在已成功獲取特征點的基礎上,需要通過之前圖像幀的運動模型來計算當前圖像幀的Kinect位姿。本文采用光流法跟蹤其位置REF_Ref14934\r\h[8]。利用圖像中的像素存在于時間域的變化求解出物體在所成圖像中像素運動的瞬時速度s=(u,v),估算相鄰幀間存在的運動信息上的對應關系。假設圖像幀中像素的光流運動微小且亮度不變,由光流法原理則可以得到,展開得:(3-6)即有,令,得:(3-7)像素點為N時: (3-8)記為,則有:(3-9)用3.1中ORB所描述的地圖點與在檢測到的預測點附近的特征采取匹配,選擇其中最小漢明距離的特征點作為匹配點,并采取非線性優(yōu)化最小化重投影誤差(Reprojectionerror)的方法計算位姿。如果跟蹤失敗,則重新計算ORB特征和每個圖像幀的點云的對應關系,應用隨機采樣一致性(RandomSampleAndConsensus,RANSAC)算法進行一致性模型參數(shù)估計,從而找到近似的模型參數(shù),然后利用PnP(Perspective-n-Point)算法估算相機位姿。在獲得位姿之后,則可重新跟蹤。3.3局部地圖構建在獲取ORB特征和匹配特征點之后,估計圖像幀之間的對應關系并進行匹配。如果匹配成功,那么利用BA(BundleAdjustment)優(yōu)化估計重建地圖中點位置和圖像關鍵幀位姿。假設是第j個三維地圖點,是第i個關鍵幀的位姿,那么有:(3-10)其中,是協(xié)方差矩陣,是Huber函數(shù)。且: (3-11)(3-12)其中,為第i個關鍵幀上所觀測到的第j個地圖點;CamProj可以計算地圖點在已經(jīng)得到的Kinect位姿上的投影;、、、為Kinect傳感器的內參。Kinect在拍攝到新的圖像后,所獲取的圖像幀就被添加進之前構建的地圖中REF_Ref15002\r\h[9]。構建時,需要通過已經(jīng)得到的信息估計完整的環(huán)境地圖,在拼接時不斷回環(huán)檢測以降低視覺里程計過程中所積累的誤差,并利用通用圖優(yōu)化框架(GeneralGraphoptimization,G2o)進行優(yōu)化REF_Ref16491\r\h[12],對位姿漂移和匹配錯誤進行修正,如圖3-1,其公式為:(3-13)其中,。是位姿到的相似變換,是圖像邊的信息矩陣。圖3-1回環(huán)檢測位姿圖經(jīng)過回環(huán)檢測,每當Kinect變換位置,所獲得的新的圖像關鍵幀經(jīng)過優(yōu)化會被添加進已構建地圖中,并通過回環(huán)和之前的關鍵幀建立聯(lián)系,之后初始化成為新的地圖點,逐步實現(xiàn)局部地圖的構建。基于ORB-SLAM的三維稠密地圖構建4.1關鍵圖像幀的提取在ORB-SLAM系統(tǒng)中,其所構建的三維地圖由于受到其本身的限制,只能是三維稀疏點云地圖,其清晰度不高、分辨率低,結果差強人意,相較于本文所制定的目標而言還未能達到。因此,在ORB-SLAM的基礎上,本文采用了提取關鍵幀的算法彌補其缺點REF_Ref15002\r\h[9]。如果將Kinect傳感器所拍攝的所有幀圖像的點云都融合到三維地圖中,一方面大大提高了系統(tǒng)的運算難度和運算時間,降低了系統(tǒng)的實時性能,另一方面在匹配時可能產(chǎn)生的冗余會極大的影響構圖效果REF_Ref482964287\r\h[16]。為此,在構建地圖時需要有選擇性的提取關鍵圖像幀進行匹配操作,在不影響建圖分辨率的前提下,提高算法的靈活性和簡易程度。本文采取基于空間域的方法提取關鍵圖像幀,其核心是只有當新的圖像幀滿足一定條件時才把它作為關鍵幀加入到已構建的局部地圖中,即需求有一定間隔的圖像幀,其計算公式為:(4-1)其中,min_norm和max_norm為Kinect運動的最小和最大幅度,即只有在該區(qū)域內,才將這一圖像幀視為關鍵幀,本文實驗中分別取值為0.4和5;為初始化的圖像幀與新的圖像幀的位移矢量;r為相鄰幀的Kinect運動旋轉角度。針對于室內場景,在選取關鍵圖像幀構建三維稠密地圖時,需要考慮系統(tǒng)的運算復雜度,原始的對于圖像場景的處理可能會占用計算機的極大內存,為了減輕計算機的負荷,有必要設計較為簡便的算法,使得程序的運行更為快速。4.2傳統(tǒng)ICP算法從20世紀80年代中期開始,點擊數(shù)據(jù)的配準研究得到了廣大學者的青睞1992年,計算機視覺研究者Besl和Mckay提出了一種層次的基于自由形態(tài)曲面的配準方法,即迭代最近點算法ICP(IterativeClosestPoint),其也是現(xiàn)今最為經(jīng)典的ICP算法。ICP算法包含兩部分:對應點搜索和位姿求解。它以尋求點集之間的匹配關系為目的,求解兩個點集之間的平移和旋轉量REF_Ref32602\r\h[10]。假設M、P為曲面S上兩個點集,M是基準數(shù)據(jù)點集(可以理解為兩個不同坐標系中的點集),而P是待配準點集,那么ICP算法的基本步驟為:搜索最近點:取點集P中的一個點p(i),在點集M中找到距離p(i)最近的點m(i),則(pi,mi)構成一組對應點集,兩個點之間的旋轉和平移存在某種關系,即(R,T),則是所要尋求的矩陣。求解變換關系(R,T):計算點集P和M的重心坐標,之后將點集中心化,獲得新的點集和其正定矩陣N。由正定矩陣N的最大特征向量等價于殘差平方和最小時的旋轉四元數(shù)計算,并將其轉換為旋轉矩陣R。求得R后,平移向量T可以通過兩個坐標系的重心點和旋轉矩陣確定。應用變換:對點集P中的每一個點p(i)運用得到的變換關系,計算后得到點集P2,定義函數(shù)為E:(4-2)根據(jù)精度要求,定義終止迭代的實際條件,即E小于一個具體值時停止迭代。重復迭代:如果某次迭代滿足要求,則終止迭代,輸出最優(yōu)變換關系(R,T),否則繼續(xù)迭代直到達到需求,同時需要注意的是,在每一次迭代開始時都要重新尋找對應點集。迭代結束后,即完成了點云數(shù)據(jù)的配準,得到相對應的三維模型。4.3改進ICP算法經(jīng)典的ICP算法在迭代過程中通過對圖像間的對應關系和相對變換矩陣近不斷修正,直到其收斂至局部最優(yōu),但是這對點云初始位置有著較高的要求,易陷入局部最優(yōu)解的問題,且配準效率較低。為了防止這樣的問題出現(xiàn)干擾重建模型效果,本文在隨機抽樣一致算法(randomsampleconsensus,RANSAC)與ICP相結合的改進RANSAC-ICP算法的基礎上進行優(yōu)化,利用k-dtree搜尋最近點算法提高匹配的準確度REF_Ref15590\r\h[15]。RANSAC-ICP算法的流程框架如圖4-1所示。圖4-1RANSAC-ICP算法流程框架通過RANSAC粗配準可以得到相對變換T(p),將其作為RANSAC-ICP算法的輸入值。由RANSAC算法的知識可知,T(p)表示對點p進行剛性變換,T(p)=Rp+T。RANSAC-ICP最終輸出為最優(yōu)變換T*(p)。Extract_RGB_Point_Featrure函數(shù)可以從待配準的圖像幀和已初始化的圖像幀中提取稀疏ORB特征點云Ps、Pt。利用RANSAC算法得到的T(p)完成初始化,之后通過重復采樣確定特征點的內點數(shù),最優(yōu)變換即為變換后內點數(shù)最大的變換。后三步是基本的ICP配準算法,其基于最小二乘法,計算出最優(yōu)剛性變換直至滿足收斂精度,具體步驟為REF_Ref15446\r\h[11]REF_Ref16491\r\h[13]:計算點集Ps中每一個在點集Pt中的最近對應點。求取滿足(1)中平均距離最小的剛性變換T*:(4-3)對點集Pt應用變換矩陣,并取得新的變換點集。當新的點集與參考點集滿足條件,即平均距離小于閾值時終止迭代REF_Ref2564\r\h[14]。在RANSAC粗配準下,繼續(xù)采用k-dtree快速搜索最近點對,以此提高點云配準的速率REF_Ref15583\r\h[12]。其算法步驟為:對比待配準點與確定的分裂維的值的關系,如果待配準點小于或等于分裂維的值,那么其進入左子樹分支,反之則進入右子樹分支。在分支中繼續(xù)比較,直到二叉樹的葉子結點,在此情況下,只要沿搜索路徑就可以找到和待配準點處于同一子空間的最近對應點。對點進行回溯,如果在搜索路徑中存在別的子空間有更近點,則進行跳躍去尋找距離最近的點。反復執(zhí)行上述步驟直到搜索路徑為空時結束REF_Ref3971\r\h[17]。同時,為了防止錯誤匹配點對系統(tǒng)構建模型的影響,本文借鑒K最鄰近(K-NearestNeighbor,KNN)算法的思想REF_Ref15596\r\h[18],在匹配圖像中剔除非同一區(qū)域的匹配點對,具體步驟如下:在排序后的匹配點對中選取N組高質量的匹配點對。每次采樣時,隨機選取3組匹配點對進行模型估計,得出矩陣參數(shù)(A,T)。其余的匹配點在通過變換矩陣變換后統(tǒng)計出誤差小于內點誤差閾值的點對數(shù)量。不斷迭代,統(tǒng)計得出每一組參數(shù)返回匹配點對數(shù)量最多的模型參數(shù)值。迭代到最大次數(shù)后,返回匹配點對數(shù)量最多的變換矩陣模型參數(shù)。實驗重建5.1實驗設備及環(huán)境本文主要的研究是利用手持式Kinect傳感器構建并設計針對于室內場景的三維掃描系統(tǒng),因此主要實驗環(huán)境是在室內。由于Kinectv1本身采用結構光的形式進行深度測量,有必要避免強光源干擾實驗。操作人員手持Kinect對室內場景進行掃描,與此同時在計算機中同步實現(xiàn)數(shù)據(jù)的采集與保存,當掃描結束后,針對儲存的大量數(shù)據(jù)進行操作,通過特征點提取、相機位姿及軌跡求取、關鍵圖像幀提取、點云配準等步驟實現(xiàn)三維模型的建立。實驗需要裝有Linux系統(tǒng)的計算機,主要利用的開發(fā)工具及軟件平臺MATLAB,C++,OpenCV,Codeblock,ORB-SLAM等。5.2實驗操作及結果分析啟動Kinect和相關軟件后,手持Kinect對室內場景進行掃描。本文選取的室內場景如圖5-1所示。操作人員在手持Kinect拍攝場景時,需要有一定的移動規(guī)律。由于三維建模存在閉環(huán)檢測的步驟,如果在移動后對之前的同一場景反復拍攝,那么在建模還原的過程中可能導致圖像幀匹配錯誤,其視覺里程計累計誤差過大容易導致模型出現(xiàn)重影、錯亂等問題。圖5-1-1原始室內場景圖圖5-1-2原始室內場景圖此外,因為特征點在檢測過程中可能跟蹤丟失,使得建模過程中存在匹配間斷問題,所以在拍攝時鏡頭需要慢慢移動,并時刻關注計算機中顯示的實際拍攝場景和在Codeblock下的包含特征點的圖像,避免特征點在其中的跳躍,保證跟蹤不會失敗。在設計好最佳路線后,對場景進行較為仔細的拍攝。Kinect在跟蹤過程中得到的深度圖像和彩色圖像受限于拍攝角度問題,對于同一物體某部分被遮擋的地方有必要更改拍攝角度,觀察成像。當Kinect回到最初的起點后,保存拍攝的文件,執(zhí)行關鍵幀的處理及模型重建。初次拍攝完成后,生成的文件大約在25G以上,對于計算機而言,要處理這樣的較大工程是個不小的負荷,甚至在處理過程中可能出現(xiàn)超出運行內存而跳出或死機,因此有必要提取關鍵圖像幀。圖5-2為Linux系統(tǒng)下還原拍攝場景過程中的軌跡跟蹤,圖中包含關鍵圖像幀;圖5-3為不包含關鍵圖像幀的軌跡跟蹤。圖5-2包含關鍵圖像幀的軌跡跟蹤圖5-3不包含關鍵圖像幀的軌跡跟蹤從上面兩個圖的對比可以明顯發(fā)現(xiàn),提取關鍵幀后對于圖像的處理將會變得更加簡單,去掉了許多的冗余幀。一方面,大大減小了在之后建立三維模型所要處理的文件,減輕了計算機的負荷也很大程度上減少了運行時間;另一方面,有效的降低視覺里程計過程中所積累的誤差,避免出現(xiàn)較大的匹配錯誤,提高了模型的還原效果。在此基礎上,做進一步處理,針對提取的關鍵幀和其循環(huán)位姿圖可以得到最后的室內場景的整體三維模型。圖5-4構建失敗的三維模型圖5-4展示了模型構建中的一個錯誤典型。圖中可以清晰的發(fā)現(xiàn)模型中存在許多“漏洞”,不僅僅對于地面的建模出現(xiàn)較大的錯誤,對于其中物體的構建也并不完整。這一方面是由于拍攝中對于特征點的把握并不理想,出現(xiàn)多處的跳躍,雖然在之后的處理中有針對的進行算法上的修復與改進,但是仍然達不到理想目的;另一方面是對于圖像的處理出現(xiàn)問題,沒有提取關鍵圖像幀,從而導致運用改進的ICP算法進行點云拼接時累計誤差過大,且匹配效果較差。對比之下,圖5-5是注意了特征點和位姿跟蹤,以及在提取關鍵幀的基礎上運用改進ICP算法構建出的模型。圖5-5構建效果較為完好的三維模型圖5-6模型部分細節(jié)圖在圖5-5中,對于細節(jié)的處理較為完整,在整體建模效果良好的情況下,也能夠清晰的看見室內盆栽、書桌、書架等物體的三維模型,其余的物體也沒有出現(xiàn)錯亂等情況。在圖5-6中,從對盆栽及書架構建模型的細節(jié)來看,尤其是對于二者本身存在的層次性有著較為理想的構建效果。由此可見,本文所設計的室內場景的三維掃描系統(tǒng)其實現(xiàn)建模效果良好,在ORB-SLAM的基礎上對特征點的提取和提出的提取關鍵幀及改進的ICP算法都能夠較好的實現(xiàn)本文設計目標。通過三維模型,可以任意觀察一個房間的邊角和擺放的物體并做進一步詳細了解,十分簡便。總結與展望6.1工作總結本文詳細的闡述了三維掃描系統(tǒng)在時下的研究意義和國內外的發(fā)展現(xiàn)狀,并構建與設計了手持式室內場景三維掃描系統(tǒng)的方法。只需要利用Kinect相機就可以完成對于室內場景的掃描,在計算機的幫助下通過一定的步驟和算法實現(xiàn)室內場景的三維模型的建立,操作簡便,構建效率較高且構建模型效果良好。本文完成工作大致如下:介紹了手持式設備Kinect的詳細參數(shù)及其先今發(fā)展狀況,并敘述了3D攝像的深度測量原理及三種主要方法完成了Kinect相機的標定對室內場景三維建模的詳細步驟及主要操作流程進行了介紹概述了ORB-SLAM系統(tǒng)中存在的各種問題,介紹ORB特征點的獲取,提出了提取關鍵幀的方法提出改進ICP算法,實現(xiàn)三維稠密地圖的構建,得到良好的室內場景三維模型,并通過對比實驗闡述算法的優(yōu)越性6.2展望本文所提出的手持式室內場景三維掃描系統(tǒng),其操作十分簡便,算法流程也得到改善,得到的模型效果較為理想,未來在房地產(chǎn)、3D打印等方面可以廣泛應用。但是由于一些原因也存在一些不足之處:本文采用的Kinect版本為v1,相較于近來得到開發(fā)和進一步優(yōu)化的v2版本而言,設備本身深度測量的結構光原理具有一定局限性,v2的ToF相機則拍攝圖像更為優(yōu)秀。其次,雖然手持式掃描可以無視房間結構問題有效的進行全面掃描,但是會存在人為誤差,需要操作人員仔細并且耐心的掃描全景,否則在后期處理過程中可能出現(xiàn)較大的漏洞或累計誤差。此外,受限于實驗條件以及本人水平,所涉及的算法還是十分基礎和淺薄的,希望在以后的學習過程中能夠對于機器視覺等進一步研究,學習并提出更為優(yōu)越的算法。機器視覺在現(xiàn)今作為研究領域的熱門,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《婚姻家庭繼承法第六版》課件婚姻家庭法第七章
- 2026年中考生物一輪復習:北師大版(2024)七年級上、下冊知識點考點背誦提綱匯編
- 《高等數(shù)學》上冊課件01-07函數(shù)的連續(xù)性
- 2024北京九中高二(下)開學考數(shù)學試題及答案
- 2025年公共關系管理師資格考試試卷及答案
- 2025年公務員綜合素質測試試卷及答案
- 工地消防安全培訓
- 2025年工程經(jīng)濟學考試試題及答案詳解
- 2025年中國特色社會主義理論測試題及答案
- 2025年安徽省合肥市行知學校英語七下期中質量跟蹤監(jiān)視試題含答案
- 護理新技術項目匯報
- DL T596《電力設備預防性實驗規(guī)程》知識培訓
- DB11T 594.1-2017 地下管線非開挖鋪設工程施工及驗收技術規(guī)程 第1部分:水平定向鉆施工
- 2024低空航行系統(tǒng)白皮書:擁抱低空經(jīng)濟安全智慧飛行
- 高中生禁毒教育主題班會教學課件
- 財政投資項目評審服務投標方案(技術方案)
- DB3212-T 1162-2024 學校集體用餐配送單位檢驗室能力建設規(guī)范
- 2024年河南焦作中考生物試題及答案1
- 醫(yī)院培訓課件:《導管相關靜脈血栓形成專家共識》
- 帆船理論培訓課程設計
- 《有機化學》課程說課
評論
0/150
提交評論