日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

医疗图像配准-点云配准总结

發(fā)布時(shí)間:2023/12/31 编程问答 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 医疗图像配准-点云配准总结 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

近期主要在做一個(gè)關(guān)于將三維CT影像和點(diǎn)云數(shù)據(jù)做配準(zhǔn)的項(xiàng)目,通過(guò)前期調(diào)研,業(yè)內(nèi)主要的方法是將CT影像使用MarchingCubes(移動(dòng)立方體)生成等值面三角網(wǎng)格,然后再使用點(diǎn)云配準(zhǔn)的方法。

1、三維圖像轉(zhuǎn)三角網(wǎng)格(STL)

三維圖像轉(zhuǎn)stl網(wǎng)格,在vtk中已經(jīng)實(shí)現(xiàn),主要使用MarchingCubes算法,簡(jiǎn)單而有效算法介紹詳見(jiàn)下面篇博文,對(duì)比眾多水文,這篇講的比較明白。
圖像數(shù)據(jù)到網(wǎng)格數(shù)據(jù)-1——MarchingCubes算法 - 止戰(zhàn) - 博客園原文:http://blog.csdn.net/u013339596/article/details/19167907概述 之前的博文已經(jīng)完整的介紹了三維圖像數(shù)據(jù)和三角形網(wǎng)格數(shù)據(jù)。在實(shí)際應(yīng)用中,利用遙https://www.cnblogs.com/zhizhan/p/3987254.html

2.配準(zhǔn)工具選擇

在配準(zhǔn)工具選擇中,先后使用了vtk和itk,其內(nèi)部都包含了icp算法的模塊,但都是經(jīng)典的point-to-point算法,而且只適宜對(duì)數(shù)據(jù)量較少的點(diǎn)進(jìn)行配準(zhǔn),如果點(diǎn)太多,那么耗時(shí)太久,雖然itk官方例子中有可以通過(guò)構(gòu)建距離圖的例子加快運(yùn)算,但通過(guò)實(shí)際使用,并沒(méi)有起到很好的加速作用,綜合比較之后,最終還是選用點(diǎn)云專門(mén)處理庫(kù)PCL做。

3.PCL配準(zhǔn)庫(kù)基本介紹

PCL配準(zhǔn)庫(kù)中集成了很多針對(duì)點(diǎn)云配準(zhǔn)的精配準(zhǔn)及粗配準(zhǔn)方法,主要類(lèi)如下:

(1)CorrespondenceEstimation類(lèi),用來(lái)確定兩點(diǎn)云中的對(duì)應(yīng)匹配關(guān)系。

(2)CorrespondenceRejectorFeatures類(lèi),能夠?qū)崿F(xiàn)基于特征匹配的對(duì)應(yīng)點(diǎn)對(duì)提取。

(3)SampleConsensusPrerejective類(lèi),實(shí)現(xiàn)了基于RANSAC方法的對(duì)應(yīng)點(diǎn)對(duì)外點(diǎn)去除,用于姿態(tài)評(píng)估和點(diǎn)云配準(zhǔn)中的幾何一致性限制,從而保證后續(xù)算法的準(zhǔn)確和高效。

(4)TransformationEstimation3Point類(lèi),實(shí)現(xiàn)使用三個(gè)匹配點(diǎn)計(jì)算兩點(diǎn)云變換矩陣。

(5)TransformationFromCorrespondences類(lèi),實(shí)現(xiàn)三個(gè)及以上匹配點(diǎn)間變換矩陣的計(jì)算。

(6)TransformationEstimationDQ類(lèi)和TransformationEstimationDualQuaternion類(lèi)

實(shí)現(xiàn)基于對(duì)偶四元數(shù)的點(diǎn)云姿態(tài)估計(jì)。

(7)TransformationEstimationLM類(lèi),實(shí)現(xiàn)基于對(duì)應(yīng)匹配點(diǎn)對(duì),用Levenberg-Marquardt優(yōu)化的變換矩陣估計(jì)。

(8)TransformationEstimationPointToPlane類(lèi),實(shí)現(xiàn)基于Levenberg-Marquardt優(yōu)化的匹配點(diǎn)對(duì)間最小點(diǎn)到平面距離的最優(yōu)變換矩陣計(jì)算。

(9)TransformationEstimationPointToPlaneWeighted類(lèi),在TransformationEstimationPointToPlane類(lèi)的基礎(chǔ)上加入了對(duì)應(yīng)匹配點(diǎn)的權(quán)重,以適應(yīng)更為復(fù)雜場(chǎng)景點(diǎn)云配準(zhǔn)任務(wù)。

(10)TransformationEstimationPointToPlaneLLS 類(lèi),基于線性最小二乘的點(diǎn)到平面距離累計(jì)最小化約束,對(duì)應(yīng)點(diǎn)到平面的距離計(jì)算加入法向量約束,具體內(nèi)容參照論文:Linear Least-Squares Optimization for Point-to-Plane ICP surface registration 2014

(11)TransformationEstimationPointToPlaneLLSWeighted類(lèi),在TransformationEstimationPointToPlaneLLS 類(lèi)基礎(chǔ)上加入了對(duì)應(yīng)點(diǎn)匹配權(quán)重,從而更合理的計(jì)算匹配點(diǎn)間變換矩陣。

(12)TransformationEstimationSVD類(lèi),使用SVD分解策略完成匹配點(diǎn)對(duì)的變換矩陣計(jì)算。

(13)TransformationValidationEuclidean類(lèi),實(shí)現(xiàn)了給定對(duì)應(yīng)匹配的變換,并計(jì)算可靠性得分。

(14)IterativeClosestPoint類(lèi),實(shí)現(xiàn)迭代最近點(diǎn)算法(ICP)。

(15)IterativeClosestPointNonLinear類(lèi),ICP算法的變體,后端使用Levenberg-Marquardt作為優(yōu)化。

(16)GeneralizedIterativeClosestPoint類(lèi),ICP算法的變體,實(shí)現(xiàn)了一般化的ICP算法,具體參考Generalized-ICP論文。

(17)GeneralizedIterativeClosestPoint6D類(lèi),集成了L*a*b*顏色空間到Generalized-ICP算法中。

(18)IterativeClosestPointWithNormals 類(lèi),ICP算法的變體,以點(diǎn)到平面的最小距離作為迭代優(yōu)化對(duì)象,實(shí)現(xiàn)點(diǎn)云配準(zhǔn)。

(19)FPCSInitialAlignment 類(lèi),實(shí)現(xiàn)《4-points congruent sets for robust pairwise surface registration》中的4PCS算法;

(20)KFPCSInitialAlignment類(lèi),實(shí)現(xiàn)《Markerless point cloud registration with keypoint-based 4-points congruent sets》中的k4PCS算法。

(21)NormalDistributionsTransform(NDT)類(lèi),統(tǒng)計(jì)分析點(diǎn)云中法向量分布,來(lái)實(shí)現(xiàn)點(diǎn)云的轉(zhuǎn)化和配準(zhǔn)。具體參考The Three-Dimensional Normal-Distributions Transform an Efficient Representation for Registration(2009)

4.配準(zhǔn)方法介紹

4.1采樣一致性初始配準(zhǔn)算法SAC-IA(Sample Consensus Initial Aligment?)

4.1.1介紹

? ? ? ?采樣一致性初始配準(zhǔn)算法通常基于特征描述子PFH和FPFH進(jìn)行配準(zhǔn)。

????????PFH(Point Feature Histograms)是一種點(diǎn)云特征點(diǎn)的特征描述子,是一種的姿態(tài)不變的局部特征,其目標(biāo)是編碼k鄰域中的幾何特征,關(guān)于PFH描述子生成的原理,網(wǎng)上有很多介紹,在此不再贅述,在PCL中PFH經(jīng)常會(huì)生成125維的向量,有些同學(xué)可能不太明白這個(gè)特征描述子為什么是125維,其實(shí)可以這樣想,PCL中主要使用經(jīng)典的PFH描述子k個(gè)鄰域內(nèi)兩兩點(diǎn)之間的四聯(lián)體(三個(gè)角度一個(gè)距離)中的三個(gè)角度變量(先叫三聯(lián)體),然后每個(gè)角度變量分成五份,我們可以先不要想125維的一維向量,先生成一個(gè)具有5*5*5維度的125個(gè)小格子的三維直方圖,然后每計(jì)算一個(gè)三聯(lián)體,在三維直方圖中符合的位置加1,然后計(jì)算結(jié)束之后,攤開(kāi),即成為了125維的一維向量。

????????FPFH特征描述子,對(duì)PFH特征進(jìn)一步優(yōu)化升級(jí)就得到了快速點(diǎn)特征直方圖(FPFH)。其計(jì)算過(guò)程如下:

(1)為查詢點(diǎn)求得它和其k鄰域內(nèi)每個(gè)點(diǎn)之間的三個(gè)特征元素值,然后統(tǒng)計(jì)成一個(gè)SPFH;

(2)分別對(duì)k鄰域中的每個(gè)點(diǎn)確定k鄰域,按第一步分別形成自己的SPFH;

(3)加權(quán)統(tǒng)計(jì)生成最終的33維度的特征向量(每個(gè)特征維度生成一個(gè)直方圖,最后連在一起)

????????PFH和FPFH的主要區(qū)別

????????(1)FPFH沒(méi)有對(duì)全互聯(lián)點(diǎn)Pq的所有鄰近點(diǎn)的計(jì)算參數(shù)進(jìn)行統(tǒng)計(jì),因此可能漏掉了一些重要的點(diǎn)對(duì),而這些漏掉的點(diǎn)對(duì)可能對(duì)捕捉查詢點(diǎn)周?chē)膸缀翁卣饔胸暙I(xiàn)。

????????(2)PFH特征模型是對(duì)查詢點(diǎn)周?chē)囊粋€(gè)精確的鄰域半徑內(nèi),而FPFH還包括r范圍以外2r以內(nèi)的額外點(diǎn)對(duì)。

????????(3)因?yàn)橹匦掠?jì)算權(quán)重的方式,FPFH通過(guò)結(jié)合SFPH的值,重新捕獲鄰近重要點(diǎn)對(duì)的幾何信息。

????????(4)FPFH的整體復(fù)雜性低,FPFH在實(shí)際的應(yīng)用中更為常見(jiàn)。

4.1.2流程

(1)計(jì)算PFH或者FPFH特征描述子

(2)SAC配準(zhǔn)(配準(zhǔn)的采樣記錄要大于某個(gè)閾值,保證采樣點(diǎn)具有不同的特征),使用Huber作為罰函數(shù)

(3)進(jìn)行精配準(zhǔn)

4.1.3算法適用范圍

粗配準(zhǔn),可以看到該配準(zhǔn)方法還是基于局部特征描述子的一種配準(zhǔn)方法。在醫(yī)療圖像軟件中基于特征描述子配準(zhǔn)方法使用較少,更多的是先人工選擇一些特征點(diǎn),完成粗配準(zhǔn)。

?4.1.4參考資料:

(1)PFH和FPFH_xinxiangwangzhi_的博客-CSDN博客

(2)SAC-IA粗配準(zhǔn)+ICP精配準(zhǔn)_peach_blossom的博客-CSDN博客_sac-ia

4.2 Point to Point ICP算法

4.2.1算法介紹

方法來(lái)自論文《A method for registration of 3-D shapes》,網(wǎng)上介紹比較多,在后續(xù)項(xiàng)目中也使用了該算法,總體來(lái)說(shuō)效果還可以,主要公式如下:

算法主要包含兩個(gè)步驟

(1)在moving點(diǎn)云在fixed點(diǎn)云中每個(gè)點(diǎn)的最近點(diǎn),在PCL中默認(rèn)會(huì)構(gòu)建fixed點(diǎn)云KD-tree,所以在配準(zhǔn)時(shí),速度比ITK要快很多

(2)基于找到的最近點(diǎn)對(duì),求解最優(yōu)變換矩陣,在PCL中使用SVD來(lái)求解。

4.2.2算法中設(shè)置需要設(shè)置的變量說(shuō)明

(1)setMaximumIterations,設(shè)置最大迭代次數(shù)

(2)setEuclideanFitnessEpsilon,收斂條件,均方誤差小于此值就停止迭代。

(3)setTransformtionEpsilon,收斂條件,設(shè)置兩次變化矩陣之間的差值小于此值就停止迭代。

(4)setMaxCorrespondenaceDistance,設(shè)置對(duì)應(yīng)點(diǎn)對(duì)之間的最大距離,在步驟1中使用。

4.2.3算法使用中需要注意的問(wèn)題

(1)ICP算法對(duì)初始值很敏感,極容易陷入局部最優(yōu)解,所以在迭代之前最好設(shè)計(jì)好初始值。

(2)ICP算法原來(lái)上來(lái)講要對(duì)moving中找到在fixed點(diǎn)云中的對(duì)應(yīng)點(diǎn),然后來(lái)計(jì)算轉(zhuǎn)換矩陣,如果在moving點(diǎn)云中包含了不應(yīng)該配對(duì)的點(diǎn),這會(huì)導(dǎo)致計(jì)算誤差,這種情況應(yīng)該避免

(3)ICP的moving點(diǎn)云中最好少用一些平面或者掃描面的點(diǎn),這種類(lèi)型點(diǎn)太多的話,對(duì)結(jié)果影響較大,對(duì)于ICP算法來(lái)講,moving點(diǎn)云中盡量包含較多有一定曲率,并且距離較遠(yuǎn)的點(diǎn),這樣可能會(huì)提高精度。

(4)如果moving點(diǎn)云中包含了太多點(diǎn),可以使用降采樣來(lái)過(guò)濾一些點(diǎn)。

4.2.4適用范圍

地球人都知道在精配準(zhǔn)中使用.

?????

4.3 Point to Plane ICP

4.3.1算法介紹

???出自《Object Modeling by Registration of Multiple Range Images》,基本原理如下:

后續(xù)由《Linear Least-Squares Optimization for. Point-to-Plane ICP Surface Registration》這篇論文將該問(wèn)題轉(zhuǎn)換成了近似的線性最小二乘問(wèn)題,可以使用SVD求解

4.3.2算法適用范圍

(1)算法比point to point 方法可以提高收斂速度,但論文中提到不一定會(huì)收斂到全局最優(yōu)解

(2)算法中主要使用了法向量來(lái)計(jì)算,所以在配準(zhǔn)中使用準(zhǔn)確的法向量至關(guān)重要,主要可以通過(guò)兩個(gè)方法來(lái)保證①對(duì)比較平滑、質(zhì)量較好的點(diǎn)云使用該方法②如果原始點(diǎn)云質(zhì)量不太好,那么在相對(duì)smooth區(qū)域采樣,然后進(jìn)行配準(zhǔn)。

參考文獻(xiàn)

【1】https://blog.csdn.net/pingjun5579/article/details/118546565

4.4 Plane to Plane ICP

4.4.1介紹

該方法在論文《Generalized-ICP》中最先提出來(lái),Generalized-ICP其實(shí)是一種基于概率論的算法框架,將point to point 和point to plane作為該框架中的一種特例,并且又提出了plane to plane方法,該方法的特點(diǎn)是綜合考慮了距離和法向量,收斂效果較好,可以糾正最大匹配距離設(shè)的值比較大的情況,具體算法介紹可以參照如下文章:

[論文閱讀][ICP變種] Generalized-ICP_你代碼像一首詩(shī)的博客-CSDN博客

4.4.2適用范圍

由于該方法也使用了法向量,如果點(diǎn)云中噪聲比較多,那么計(jì)算的法向量就不太準(zhǔn)確,也會(huì)影響最終精度,對(duì)于醫(yī)療圖像來(lái)說(shuō),如果骨質(zhì)成像不好,直接使用移動(dòng)立方體生成的stl網(wǎng)格是及其不平滑的,這時(shí)候可以先平滑后再使用該方法,綜合icp三種方法,油管有個(gè)up主建議generalized icp應(yīng)該是使用icp算法時(shí)首選的方法。

4.5 NDT算法

4.5.1原理介紹

NDT(Normal Distribution Transformation)算法主要有三篇論文:

1. <A new approach to laser scan matching> 認(rèn)為是它首先提出的,不過(guò)是2D2. <The Three-Dimensional Normal-Distributions Transform - an Efficient Representation for Registration,Surface Analysis, and Loop>領(lǐng)域應(yīng)用到了3D3. <A 3-D Scan Matching using Improved 3-D Normal Distributions Transform for Mobile Robotic Mapping>做了全面的總結(jié)和拓展,博士論文

網(wǎng)上寫(xiě)該算法原理的最多是第二篇,這也是激光點(diǎn)云配準(zhǔn)中經(jīng)常使用的一種方法,通過(guò)學(xué)習(xí)該算法,可以知道,該算法的思想與Generalized ICP算法非常類(lèi)似,都使用了概率分布,而且都假設(shè)點(diǎn)主要分布服從正態(tài)分布,不同的是Generalized ICP直接假設(shè)點(diǎn)的位置符合高斯分布,而在NDT算法中假設(shè)每個(gè)分成的小格子內(nèi)部的點(diǎn)符合高斯概率分布(實(shí)現(xiàn)時(shí)會(huì)加入均勻分布),這樣做我個(gè)人感覺(jué)會(huì)減少計(jì)算時(shí)間,加快計(jì)算速度。NDT基本原理和步驟如下:

(1)分成小格子,計(jì)算每個(gè)小格子中的高斯分布參數(shù),主要是均值和協(xié)方差矩陣(協(xié)方差矩陣表征了當(dāng)前小格子中點(diǎn)分布的平滑性和方向)

(2)通過(guò)轉(zhuǎn)換矩陣T將浮動(dòng)點(diǎn)云(moving cloud)變換到(1)中分成的小格子中,然后計(jì)算每個(gè)變換點(diǎn)在小格子中的概率,這個(gè)概率是該變換點(diǎn)在周?chē)徑「褡又懈怕手?#xff0c;最后通過(guò)最大似然估計(jì)原理,將每個(gè)變換點(diǎn)的概率相乘得到最終的目標(biāo)函數(shù)。

(3)使用牛頓迭代法求解變換矩陣,查看是否滿足收斂條件,不滿足,則轉(zhuǎn)到(2)中。

4.5.2適用范圍

這種方法相對(duì)于icp等算法,具有更好的魯棒性,但也會(huì)受到初始條件的影響,主要通過(guò)計(jì)算概率分布作為主要的收斂目標(biāo),其應(yīng)該能達(dá)到較好的形狀匹配,可用于精確配準(zhǔn)。

4.5.3一些質(zhì)量較高的參考鏈接

(1)學(xué)習(xí)教程:點(diǎn)云匹配-正態(tài)分布變換NDT(Normal Distributions Transform)算法_嗶哩嗶哩_bilibili

(2)

點(diǎn)云 | 配準(zhǔn)之NDT算法漫談 - 墨天輪

(3)https://www.youtube.com/watch?v=MLpaC-ZG2RA

4.6 4PCS算法

沒(méi)時(shí)間寫(xiě)了,有時(shí)間再寫(xiě)。

5.總結(jié)

通過(guò)這個(gè)項(xiàng)目,把點(diǎn)云配準(zhǔn)中幾個(gè)具有代表性的算法進(jìn)行了梳理,小有收獲。
?

6.其他參考文獻(xiàn):

[1] Lorensen, W. E. and H. E. Cline(1987). “Marching cubes: A high resolution 3D surface construction algorithm.” Computers & Graphics.

[2]【泡泡點(diǎn)云時(shí)空-PCL源碼解讀】PCL中的點(diǎn)云配準(zhǔn)方法_算法

總結(jié)

以上是生活随笔為你收集整理的医疗图像配准-点云配准总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。