劉曉文 付莉娜 徐 工
(1. 山東廣源巖土工程有限公司, 山東 煙臺(tái) 264000; 2. 西安四維圖新信息技術(shù)有限公司, 陜西 西安 710000;3. 山東理工大學(xué) 建筑工程學(xué)院, 山東 淄博 255049)
近年來(lái),隨著三維激光掃描儀、相機(jī)以及無(wú)人機(jī)等多源傳感器的到來(lái),使得激光點(diǎn)云和光學(xué)影像數(shù)據(jù)得到了廣泛的應(yīng)用。三維激光掃描技術(shù)可以快速、無(wú)接觸、高精度地獲取目標(biāo)物體的三維激光點(diǎn)云數(shù)據(jù)[1],但是獲取的激光點(diǎn)云數(shù)據(jù)缺乏紋理信息,相機(jī)或者無(wú)人機(jī)獲取的影像卻具有豐富的顏色紋理特征信息,因此將兩者進(jìn)行融合不僅可以彌補(bǔ)兩種數(shù)據(jù)的不足,而且可以獲取更高精度的點(diǎn)云數(shù)據(jù)。兩種數(shù)據(jù)的配準(zhǔn)是融合的重要步驟,其配準(zhǔn)的精度和效率對(duì)兩種數(shù)據(jù)融合以及目標(biāo)物三維模型重建都具有重要影響。
國(guó)內(nèi)外的科研者對(duì)激光點(diǎn)云與影像的配準(zhǔn)展開(kāi)了大量的研究[2-4],主要將激光點(diǎn)云與影像的配準(zhǔn)分為3類,第一類是將激光點(diǎn)云內(nèi)插生成強(qiáng)度圖像,通過(guò)已有的圖像配準(zhǔn)方法實(shí)現(xiàn)兩種數(shù)據(jù)的配準(zhǔn)。劉燕萍等[5]通過(guò)提取建筑的特征角點(diǎn)進(jìn)行激光點(diǎn)云與影像密集點(diǎn)云的粗配準(zhǔn),然后將激光點(diǎn)云轉(zhuǎn)化為灰度影像,并在影像中提取線特征實(shí)現(xiàn)了兩種數(shù)據(jù)的精配準(zhǔn)。趙吉慶[6]通過(guò)將激光點(diǎn)云數(shù)據(jù)生成點(diǎn)云深度影像圖,然后利用尺度不變特征變換(scale invariant feature transform, SIFT )算法提取目標(biāo)物點(diǎn)云深度圖以及影像中的點(diǎn)特征,實(shí)現(xiàn)了激光點(diǎn)云數(shù)據(jù)與影像的配準(zhǔn)。張良等[7]通過(guò)將點(diǎn)云轉(zhuǎn)換為距離影像,然后利用SIFT算法從距離影像中提取建筑物的點(diǎn)特征和線特征實(shí)現(xiàn)了兩種數(shù)據(jù)的配準(zhǔn)。以上方法在將激光點(diǎn)云轉(zhuǎn)換為影像時(shí)會(huì)引入內(nèi)插誤差從而影響配準(zhǔn)的精度。第二類是直接在激光點(diǎn)云和影像中提取特征,陳為民等[8]提出將影像投影中心、影像像點(diǎn)以及激光點(diǎn)云通過(guò)共方程建立聯(lián)系,實(shí)現(xiàn)兩種數(shù)據(jù)的配準(zhǔn)。Chen等[9]從激光雷達(dá)(light detection and ranging,LiDAR)數(shù)據(jù)和影像三維點(diǎn)云中提取建筑物輪廓,從輪廓線中提取同名角特征,該方法提高了在激光點(diǎn)云和影像數(shù)據(jù)中尋找同名特征點(diǎn)的準(zhǔn)確率,實(shí)現(xiàn)了兩種數(shù)據(jù)的配準(zhǔn)。張永軍[10]從點(diǎn)云中提取目標(biāo)物的角點(diǎn)特征,利用影像的外方位元素將點(diǎn)云的角點(diǎn)特征投影到影像上,通過(guò)相似性測(cè)度在航空影像上尋找同名角點(diǎn)特征實(shí)現(xiàn)點(diǎn)云數(shù)據(jù)與影像的配準(zhǔn)。第三類是將光學(xué)影像生成三維點(diǎn)云,然后與激光點(diǎn)云數(shù)據(jù)進(jìn)行配準(zhǔn),宋恒嘉[11]提出通過(guò)光束法平差獲取影像三維點(diǎn)云,通過(guò)迭代最近點(diǎn)(iterative closest point, ICP)算法實(shí)現(xiàn)了影像三維點(diǎn)云與激光點(diǎn)云的配準(zhǔn)。荊路等[12]提出通過(guò)計(jì)算特征點(diǎn)的特征直方圖,然后利用一致性初始配準(zhǔn)算法實(shí)現(xiàn)點(diǎn)云數(shù)據(jù)的粗配準(zhǔn),最后使用ICP算法實(shí)現(xiàn)點(diǎn)云的精配準(zhǔn)。由于點(diǎn)云數(shù)量比較大,使用ICP算法進(jìn)行點(diǎn)云配準(zhǔn)時(shí),存在效率低的問(wèn)題,而且算法對(duì)初值的精度要求較高,且容易陷入局部最優(yōu)解。
針對(duì)以上問(wèn)題,本文提出基于三維(three-dimensional,3D)-SIFT與SICP的激光點(diǎn)云與影像配準(zhǔn)方法,該方法使用3D-SIFT提取激光點(diǎn)云與影像三維點(diǎn)云中的特征點(diǎn);然后通過(guò)對(duì)偶四元數(shù)解算激光點(diǎn)云和影像三維點(diǎn)云的初始變換矩陣,實(shí)現(xiàn)兩種點(diǎn)云數(shù)據(jù)的粗配準(zhǔn);最后在使用SICP算法實(shí)現(xiàn)兩種點(diǎn)云數(shù)據(jù)的精配準(zhǔn)。該方法有效地減少了激光點(diǎn)云與影像三維點(diǎn)云中參加配準(zhǔn)的點(diǎn)云的數(shù)量,避免了結(jié)果陷入局部最優(yōu)解。
尺度不變特征(SIFT)是由Lowe[13]提出的,主要被應(yīng)用到二維圖像中特征的提取,因此,針對(duì)三維空間中特征點(diǎn)的提取3D-SIFT被提出,該算法由SIFT算法改進(jìn)產(chǎn)生的,3D-SIFT算法主要利用三維點(diǎn)云中的曲率代替二維影像中的強(qiáng)度值,通過(guò)體素空間尺度的生成獲得三維點(diǎn)云中的特征點(diǎn),其主要步驟包括點(diǎn)云尺度空間的構(gòu)建、三維點(diǎn)云高斯差分尺度的構(gòu)建、尺度空間極值點(diǎn)檢測(cè)確定特征點(diǎn)。下面將具體介紹這幾個(gè)步驟:
(1)首先通過(guò)確定體素柵格的大小,然后構(gòu)建點(diǎn)云體素的金字塔,求解該體素中所包含的三維點(diǎn)云的重心,并用該重心近似替代該體素中包含的所有三維點(diǎn)云,從而實(shí)現(xiàn)點(diǎn)云尺度空間的構(gòu)建。
(2)設(shè)步驟(1)中的金字塔一共具有A組,每一組具有S層,則第i層的三維點(diǎn)云金字塔尺度為Oi,其具體表達(dá)式如式(1)所示。
(1)
式中:o為三維點(diǎn)云起始尺度大小。
對(duì)通過(guò)以上方法獲取的三維點(diǎn)云尺度空間中每個(gè)點(diǎn)計(jì)算其高斯過(guò)濾響應(yīng)值W和點(diǎn)云相鄰尺度的高斯差分值V,并對(duì)點(diǎn)云3σ(σ為點(diǎn)云的平均距離)鄰域范圍內(nèi)的點(diǎn)進(jìn)行曲率值高斯加權(quán),從而實(shí)現(xiàn)三維點(diǎn)云高斯差分尺度的構(gòu)建。
(3)如果某一個(gè)三維點(diǎn)的高斯差分值V與其鄰域范圍內(nèi)的點(diǎn)和相鄰上下2個(gè)尺度鄰域范圍內(nèi)的高斯差分值的大小都為極值,則該三維點(diǎn)云即為特征點(diǎn)。
對(duì)偶四元數(shù)(dual quaternion)由四元數(shù)和對(duì)偶數(shù)兩部分組合而成,對(duì)偶四元數(shù)的具體形式為
(2)
(3)
式中,G為反對(duì)稱矩陣,如式(4)所示。
(4)
則得到的對(duì)偶四元數(shù)與旋轉(zhuǎn)和平移矩陣之間的關(guān)系為
(5)
通過(guò)計(jì)算可得旋轉(zhuǎn)矩陣R和平移矩陣T,并用k和r對(duì)其進(jìn)行表示,如式(6)所示。
激光點(diǎn)云與影像點(diǎn)云配準(zhǔn)的最終目的是確定三維影像點(diǎn)云從影像坐標(biāo)系到激光掃面坐標(biāo)系下的關(guān)系,其實(shí)質(zhì)是兩個(gè)點(diǎn)云集之間的坐標(biāo)轉(zhuǎn)換,轉(zhuǎn)換模型[14]為
(7)
式中,X2、Y2、Z2為激光掃描系下的點(diǎn)云坐標(biāo);X1、Y1、Z1為影像坐標(biāo)系下的影像點(diǎn)云坐標(biāo);R為旋轉(zhuǎn)矩陣;T為平移矩陣;λ為縮放因子。
(8)
只需從激光點(diǎn)云和影像三維點(diǎn)云中提取至少3對(duì)近似同名特征點(diǎn),然后對(duì)式(8)進(jìn)行線性化,最后通過(guò)最小二乘算法即可獲取激光點(diǎn)云與影像點(diǎn)云的初始變換參數(shù),實(shí)現(xiàn)激光點(diǎn)云與影像三維點(diǎn)云的粗配準(zhǔn)。
由于經(jīng)典的ICP算法在精配準(zhǔn)過(guò)程中無(wú)法考慮到兩個(gè)點(diǎn)云集之間存在的尺度問(wèn)題,因此本文使用SICP算法進(jìn)行激光點(diǎn)云與影像三維點(diǎn)云的精配準(zhǔn),在精配準(zhǔn)過(guò)程中考慮兩個(gè)三維點(diǎn)集的尺度大小,精配準(zhǔn)模型如式(9)所示。
(9)
式中,R為旋轉(zhuǎn)矩陣;T為平移矩陣;λ為縮放矩陣;pi為激光點(diǎn)云點(diǎn)集;mj為影像三維第點(diǎn)集。
在迭代求解配準(zhǔn)參數(shù)的過(guò)程中利用多維尺度因子的迭代方法,將尺度因子分為3個(gè)方向,分別為x、y、z方向,M=diag(S1,S2,S3),然后利用最小二乘方法以及光束法平差解算激光點(diǎn)云與影像三維點(diǎn)云之間的精配準(zhǔn)參數(shù)。
經(jīng)過(guò)激光點(diǎn)云和影像點(diǎn)云的粗配準(zhǔn),大致將影像三維點(diǎn)云調(diào)整到與激光點(diǎn)云近似的位置上,從而保證在精配準(zhǔn)過(guò)程中具有較好的收斂性。
本章實(shí)驗(yàn)環(huán)境是Intel(R) Core(TM) i7-7700K CPU @ 4.20 GHz, 運(yùn)行內(nèi)存為32 GB,操作系統(tǒng)為Windows 10的計(jì)算機(jī)。本文實(shí)驗(yàn)數(shù)據(jù)采用Open Heritage 3D 平臺(tái)上提供的數(shù)據(jù)——越南亭子進(jìn)行實(shí)驗(yàn),亭子的影像數(shù)據(jù)以及激光點(diǎn)云數(shù)據(jù)是分別采用型號(hào)為尼康D810的數(shù)碼單反相機(jī)、型號(hào)為大江精靈4Pro的無(wú)人機(jī)以及型號(hào)為法魯焦點(diǎn)X330的激光掃描儀獲取的,如圖1和圖2所示。
(a)遠(yuǎn)景
圖2 亭子激光點(diǎn)云數(shù)據(jù)
亭子影像通過(guò)SfM算法生成三維影像點(diǎn)云,如圖3所示。亭子激光點(diǎn)云和影像數(shù)據(jù)的基本信息如表1所示。
表1 實(shí)驗(yàn)基本信息介紹 單位:個(gè)
利用本文方法在激光點(diǎn)云和影像三維點(diǎn)云中提取的特征點(diǎn)如圖4所示。由圖4可知,激光點(diǎn)云中提取的特征點(diǎn)在底部和中間部位較多,但在亭子頂部提取的較少,分析主要原因是由于亭子頂部過(guò)高,使用三維激光掃描儀獲取的頂部點(diǎn)云較為稀疏,因此導(dǎo)致在頂部點(diǎn)云中提取的特征點(diǎn)較少;由影像生成的三維點(diǎn)云質(zhì)量較好,整體點(diǎn)云較為均勻,因此提取的特征點(diǎn)分布也較為均勻。從激光點(diǎn)云和影像點(diǎn)云中提取的特征點(diǎn)的個(gè)數(shù)分別為3 484、3 964個(gè),后續(xù)只需從提取的特征點(diǎn)中選取一定的數(shù)量的同名點(diǎn)特征進(jìn)行激光點(diǎn)云與影像三維點(diǎn)云的配準(zhǔn),因此可以有效地縮短在目標(biāo)點(diǎn)云和源點(diǎn)云中搜索配準(zhǔn)基元的時(shí)間,從而提高點(diǎn)云配準(zhǔn)的效率。
分別從亭子激光點(diǎn)云和影像三維點(diǎn)云中提取的特征點(diǎn)中選取5對(duì)同名特征點(diǎn)基元進(jìn)行亭子的激光點(diǎn)云和影像配準(zhǔn)實(shí)驗(yàn),并且將本文方法與經(jīng)典ICP方法進(jìn)行對(duì)比。為了說(shuō)明激光點(diǎn)云與影像點(diǎn)云的配準(zhǔn)精度,本文選用配準(zhǔn)后激光點(diǎn)云與影像點(diǎn)云之間的距離平均值和中誤差作為精度評(píng)定指標(biāo),兩種方法的配準(zhǔn)結(jié)果和配準(zhǔn)精度如表2所示。
表2 兩種方法的激光點(diǎn)云與影像配準(zhǔn)結(jié)果
由表2可知,本文方法與基于ICP的配準(zhǔn)方法解算的旋轉(zhuǎn)矩陣、平移向量以及尺度因子在數(shù)值上存在一定的差距,說(shuō)明兩種方法獲取的配準(zhǔn)精度不同,亭子激光點(diǎn)云與影像點(diǎn)云的尺度因子為0.985、0.891。本文方法與ICP算法獲取的激光點(diǎn)云與影像點(diǎn)云之間的距離平均值為0.35、0.48 cm,中誤差為0.24、0.41 cm,配準(zhǔn)時(shí)間分別為69、85 s。因此,本文方法的配準(zhǔn)精度和配準(zhǔn)效率都高于ICP的配準(zhǔn)方法。
為了進(jìn)一步驗(yàn)證提取的同名特征點(diǎn)數(shù)量對(duì)激光點(diǎn)云與影像點(diǎn)云配準(zhǔn)結(jié)果的影響,從激光點(diǎn)云以及影像三維點(diǎn)云提取的特征點(diǎn)中分別選取3、5、20、100、200、500對(duì)同名特征點(diǎn)進(jìn)行配準(zhǔn)實(shí)驗(yàn),獲取的配準(zhǔn)結(jié)果如圖5所示。圖5中橫坐標(biāo)表示選取的同名特征點(diǎn)對(duì)數(shù),縱坐標(biāo)表示配準(zhǔn)后激光點(diǎn)云與影像點(diǎn)云之間的距離平均值和中誤差。
圖5 不同數(shù)量同名特征點(diǎn)對(duì)獲取的點(diǎn)云配準(zhǔn)結(jié)果
由圖5可知,選取不同數(shù)量的同名特征點(diǎn)對(duì)進(jìn)行激光點(diǎn)云與影像點(diǎn)云之間的配準(zhǔn),獲取的距離平均值均在0.4 cm以下,中誤差均在0.3 cm以下,由此可知,同名特征點(diǎn)的數(shù)量對(duì)點(diǎn)配準(zhǔn)結(jié)果影響較小。
在配準(zhǔn)前,亭子激光點(diǎn)云和影像三維點(diǎn)云的位置姿態(tài)如圖6所示,獲取的原始激光點(diǎn)云和影像點(diǎn)云的位置存在偏離,使用本文方法獲取的粗配準(zhǔn)和精配準(zhǔn)效果如圖7所示,經(jīng)過(guò)對(duì)偶四元數(shù)算法對(duì)激光點(diǎn)云與影像三維點(diǎn)云粗配準(zhǔn)后,亭子的激光點(diǎn)云和影像點(diǎn)云大致移到了相同的位置,說(shuō)明本文采用的粗配準(zhǔn)方法獲取的配準(zhǔn)結(jié)果較為準(zhǔn)確,因此可以為后續(xù)的精配準(zhǔn)提供可靠的參數(shù)初值。通過(guò)精配準(zhǔn)后從效果圖可以看出,利用SICP算法配準(zhǔn)后亭子的激光點(diǎn)云與影像三維點(diǎn)云配準(zhǔn)質(zhì)量較好,激光點(diǎn)云與影像三維點(diǎn)云充分融合在了一起,影像三維點(diǎn)云很好地填充了激光點(diǎn)云頂部以及底部缺失的部分,整體亭子的激光點(diǎn)云與影像三維點(diǎn)云貼合的較為緊密,證明了本文方法的有效性與可行性。
圖6 配準(zhǔn)前激光點(diǎn)云與影像點(diǎn)云的位置
(a)粗配準(zhǔn)
本文通過(guò)利用3D-SIFT算法提取激光點(diǎn)云和影像三維點(diǎn)云中的特征點(diǎn),然后使用對(duì)偶四元數(shù)通過(guò)提取的特征點(diǎn)對(duì)激光點(diǎn)云和影像三維點(diǎn)云進(jìn)行粗配準(zhǔn),最后利用SICP算法對(duì)激光點(diǎn)云和影像三維點(diǎn)云進(jìn)行精配準(zhǔn)。實(shí)驗(yàn)結(jié)果表明,本文方法與經(jīng)典ICP算法相比可以獲得更高的配準(zhǔn)質(zhì)量和配準(zhǔn)效率,為激光點(diǎn)云與影像點(diǎn)云的融合提供了一種解決方法。但本文方法使用的3D-SIFT算法對(duì)質(zhì)量較差的點(diǎn)云中特征點(diǎn)提取效果不是很好,在接下來(lái)的工作中對(duì)特征點(diǎn)提取算法將會(huì)展開(kāi)進(jìn)一步的研究。