JHU上交等提出首個(gè)可渲染X光3DGS!推理速度73倍NeRF,性能提升6.5dB | ECCV 2024
X光由于其強(qiáng)大的穿透力而被廣泛地應(yīng)用于醫(yī)療、安檢、考古、生物、工業(yè)檢測(cè)等場(chǎng)景的透射成像。
然而,X光的輻射作用對(duì)人體是有害的,受試者與測(cè)試者都會(huì)受到暴露于X光下的影響。
為了減少X光對(duì)人體的傷害,約翰霍普金斯大學(xué)、香港科技大學(xué)(廣州)、上海交通大學(xué)的研究人員提出了稀疏視角下的X光三維重建任務(wù)——新視角生成,即只拍攝少數(shù)幾張X光片,剩下視角的X光片通過(guò)渲染得到,用以幫助醫(yī)生進(jìn)行診斷分析。
論文鏈接:https://arxiv.org/abs/2403.04116
代碼鏈接:https://github.com/caiyuanhao1998/X-Gaussian
視頻鏈接:https://www.youtube.com/watch?v=v6FESb3SkJg&t=28s
文中提出了首個(gè)能夠渲染X光的3D Gaussian Splatting框架以用于X光的新視角合成(Novel View Synthesis, NVS)。
值得一提的是,該方法無(wú)需計(jì)算耗時(shí)的Structure-from-Motion(SfM)算法來(lái)進(jìn)行初始化。
圖1 高斯點(diǎn)云分布在模型訓(xùn)練中的變化過(guò)程
目前所有的代碼、數(shù)據(jù)、高斯點(diǎn)云模型、訓(xùn)練日志均已開(kāi)源,歡迎大家來(lái)使用或是提交issue。
研究背景
NeRF類(lèi)重建方法由于需要密集地采集射線(xiàn),并在射線(xiàn)上采樣多個(gè)3D點(diǎn),計(jì)算后通過(guò)再通過(guò)volume rendering渲染得到2D projection。這一過(guò)程非常消耗時(shí)間。
當(dāng)前正火的3D Gaussian Splatting (3DGS)因?yàn)槠涓叨绕叫谢匿秩痉椒ā猂asterization而有著比NeRF更快的渲染速度。然而3DGS是針對(duì)自然光成像設(shè)計(jì)的。
直接將3DGS用于X光成像會(huì)遇到兩個(gè)問(wèn)題:
(1)首先,如圖2所示,自然光成像主要依靠于光線(xiàn)在物體表面的反射,這使得從不同角度看,物體表面的顏色會(huì)有差異。為了擬合這一各向異性的特點(diǎn),3DGS采用球諧函數(shù)(Spherical Harmonics,SH)來(lái)模擬自然光的分布。然而在X光成像中,X光穿透物體并衰減,然后落在探測(cè)器上成像。X光無(wú)論從各個(gè)角度穿透同一物質(zhì)點(diǎn),其衰減都是一樣的。直接使用SH很難擬合X光成像的這一各向同性的特點(diǎn)。
(2)其次,3DGS的初始化需要通過(guò)計(jì)算Structure-from-Motion(SfM)算法來(lái)得到各個(gè)視角的相機(jī)內(nèi)外參數(shù)以及一個(gè)稀疏點(diǎn)云作為起始。這個(gè)算法十分耗時(shí),增加了患者和醫(yī)生的等待時(shí)間。
圖2 3DGS 自然光成像與 X-Gaussian 進(jìn)行 X 光成像對(duì)比
本文針對(duì)上述這些問(wèn)題展開(kāi)研究,做出了以下四點(diǎn)貢獻(xiàn):
針對(duì)X光新視角合成任務(wù),本文提出首個(gè)基于3D Gaussian Splatting的技術(shù)框架——X-Gaussian;
設(shè)計(jì)了一個(gè)全新的輻射高斯點(diǎn)云模型(Radiative Gaussian Point Cloud Model),基于該模型,又設(shè)計(jì)了一個(gè)可微的輻射光柵化渲染方法(Differentiable Radiative Rasterization);
針對(duì)高斯點(diǎn)云模型,提出了一種初始化方法——Angle-pose Cuboid Uniform Initialization(ACUI),這種初始化方法能夠通過(guò)X光掃描儀的設(shè)備參數(shù)和旋轉(zhuǎn)角直接計(jì)算出相機(jī)內(nèi)外參數(shù)和初始稀疏點(diǎn)云,這使得新方法免于計(jì)算 SfM,從而大幅提升訓(xùn)練速度。
X-Gaussian在性能上超過(guò)當(dāng)前最好NeRF方法6.5dB的情況下,推理速度還達(dá)到了73倍。同時(shí)在傳統(tǒng)算法上也驗(yàn)證了,通過(guò)新方法合成的新視角X光片能夠提升CT重建的圖像質(zhì)量。
空間坐標(biāo)系的轉(zhuǎn)換
在圓形掃描軌跡錐形X光束掃描(circular cone-beam X-ray scanning)場(chǎng)景下研究三維重建問(wèn)題??臻g坐標(biāo)系的變換關(guān)系如圖3所示。被掃描物體的中心O為世界坐標(biāo)系的原點(diǎn)。
掃描儀的中心S為相機(jī)坐標(biāo)系的中心。探測(cè)器D的左上角為圖像坐標(biāo)系的原點(diǎn)。整個(gè)空間坐標(biāo)系的變換遵循OpenCV三維視覺(jué)的標(biāo)準(zhǔn)。
圖3 空間坐標(biāo)系轉(zhuǎn)換關(guān)系示意圖
本文方法
圖4 X-Gaussian 算法框架流程圖
算法的流程圖如圖4所示,首先通過(guò)圖4(a)中的Angle-pose Cuboid Uniform Initialization(ACUI)來(lái)計(jì)算出X光源(Source)在對(duì)應(yīng)旋轉(zhuǎn)角??下的相機(jī)內(nèi)外參矩陣并計(jì)算出初始稀疏點(diǎn)云。然后,針對(duì)X光各向同性的成像特點(diǎn)設(shè)計(jì)了輻射高斯點(diǎn)云模型(Radiative Gaussian Point Cloud Model),如圖4(b)所示。
針對(duì)這一點(diǎn)云模型,團(tuán)隊(duì)設(shè)計(jì)了一個(gè)可微的輻射光柵化(Differentiable Radiative Rasterization,DRR)渲染方法,用于三維高斯點(diǎn)云的潑濺渲染,如圖4(c)所示。本節(jié)先介紹輻射高斯點(diǎn)云模型,然后是可微的輻射光柵化,最后介紹ACUI初始化方法。
輻射高斯點(diǎn)云模型
本小節(jié)首先回顧一下3DGS的基本知識(shí)。3DGS將一個(gè)物體或場(chǎng)景用????個(gè)高斯點(diǎn)云表示如下:
其中的????表示第??個(gè)高斯點(diǎn)云,????,Σ??,????分別表示高斯點(diǎn)云的中心位置,協(xié)方差,和不透明度。
協(xié)方差控制高斯點(diǎn)云橢球的三軸大小,即控制點(diǎn)云的形狀。3DGS對(duì)每一個(gè)高斯點(diǎn)云采用球諧函數(shù)來(lái)擬合其顏色如下:
其中,??表示顏色,??=(??,??)表示觀測(cè)視角,??????表示球諧函數(shù)系數(shù),??????表示球諧函數(shù),將球面上的點(diǎn)映射成一個(gè)實(shí)數(shù)值。然而,如前面的分析,球諧函數(shù)并不適合用來(lái)模擬各向同性的X光成像。
為此,團(tuán)隊(duì)設(shè)計(jì)了一個(gè)輻射強(qiáng)度響應(yīng)函數(shù)(Radiation Intensity Response Function,RIRF)來(lái)替代球諧函數(shù)。
具體而言,讓每一個(gè)高斯點(diǎn)云學(xué)一個(gè)特征向量??其固有的輻射屬性,如輻射密度等。然后該點(diǎn)云的輻射強(qiáng)度??便可以被表示為:
其中??表示一組常數(shù)。
因此,輻射高斯點(diǎn)云模型????可以被表示為:
其中????為可學(xué)習(xí)參數(shù),表示分配給第??個(gè)高斯點(diǎn)云的特征向量。
可微的輻射光柵化方法
基于提出的這個(gè)高斯點(diǎn)云模型,團(tuán)隊(duì)還設(shè)計(jì)了一個(gè)可微的輻射光柵化方法(Differentiable Radiative Rasterization,DRR)。
整DRR的過(guò)程????????總結(jié)如下:
其中??表示被渲染的圖像,????????和????????分別表示內(nèi)外參矩陣。接著介紹????????的細(xì)節(jié)。
首先,計(jì)算第??個(gè)高斯分布上的3D點(diǎn)??的概率如下:
接著,將3D高斯點(diǎn)云從世界坐標(biāo)系中投影到相機(jī)坐標(biāo)系,進(jìn)而再投影到圖像坐標(biāo)系上:
其中的????=(????,????,????)表示相機(jī)坐標(biāo),????表示圖像坐標(biāo)。三維的協(xié)方差矩陣????也被對(duì)應(yīng)地投影到相機(jī)坐標(biāo)系上:
其中????是投影變換(projective transformation)的仿射近似的雅克比矩陣。
????是viewing transformation。
其中的??????表示X光掃描儀中X光源(source)和探測(cè)器(detector)之間的距離,??表示X光源的旋轉(zhuǎn)角。
然后在圖像坐標(biāo)系下的二維協(xié)方差矩陣是直接取????′的前兩行前兩列。
將2D projection分割成互補(bǔ)重疊的titles。每一個(gè)三維高斯點(diǎn)云都按照其對(duì)應(yīng)投影所落在的位置分配到對(duì)應(yīng)的tiles上。這些3D高斯點(diǎn)云按照與二維探測(cè)器平面的距離進(jìn)行排序。
那么,在2D projection上像素點(diǎn)??上的輻射強(qiáng)度便是混合??個(gè)與??重疊的排好序的3D點(diǎn)得到的,如下公式所示:
其中的????表示落在像素??上的X射線(xiàn)與高斯點(diǎn)云之間的交點(diǎn),????表示????的輻射強(qiáng)度。
模型訓(xùn)練的監(jiān)督函數(shù)是一范數(shù)損失與SSIM損失之間的加權(quán)和:
其中的??是加權(quán)稀疏,可調(diào)的超參。
角度位姿立方體均勻初始化
常規(guī)的3DGS使用SfM算法來(lái)計(jì)算每一個(gè)視角的相機(jī)內(nèi)外參數(shù)以及初始的稀疏點(diǎn)云。
SfM算法的原理是檢測(cè)不同視角投影之間的特征匹配點(diǎn)。對(duì)于X光片這種低對(duì)比度的圖像來(lái)說(shuō),SfM的檢測(cè)精度會(huì)降低。
同時(shí)運(yùn)行SfM非常耗時(shí),對(duì)幾十張圖像計(jì)算SfM可能需要耗費(fèi)幾個(gè)小時(shí)。這大大延長(zhǎng)了病人和醫(yī)生的等待時(shí)間。
為此,團(tuán)隊(duì)設(shè)計(jì)了角度位姿立方體均勻初始化(Angle-pose Cuboid Uniform Initialization,ACUI)算法。
ACUI首先直接使用X光掃描儀的參數(shù)來(lái)計(jì)算相機(jī)的內(nèi)外參矩陣:
其中的????????表示外參矩陣,??????表示X光源與物體之間的距離。????????表示相機(jī)內(nèi)參,??,??表示渲染圖像的寬度和高度。
然后設(shè)置一個(gè)尺寸為??1×??2×??3(????)的立方塊使其能夠完全包裹被掃描的物體,并將其分割成一個(gè)??1×??2×??3(voxel)的網(wǎng)格。
最后,按照間隔??來(lái)采樣得到初始的稀疏點(diǎn)云:

實(shí)驗(yàn)結(jié)果
新視角生成
表1 新視角生成任務(wù)對(duì)比
圖5 新視角生成視覺(jué)對(duì)比圖
在新視角生成任務(wù)上,新方法與之前方法的定量與定性對(duì)比分別如表1和圖5所示。
新方法在比當(dāng)前最好的NeRF類(lèi)算法要高出6.5dB的情況下,還達(dá)到了73倍的渲染速度,并且可以渲染更多的結(jié)構(gòu)細(xì)節(jié)。
圖6 3DGS與X-Gaussian訓(xùn)練過(guò)程的視覺(jué)分析
團(tuán)隊(duì)做了視覺(jué)分析,將3DGS與X-Gaussian訓(xùn)練的各個(gè)iteration的高斯點(diǎn)云進(jìn)行可視化。
如圖6所示,X-Gaussian收斂得更快,噪聲更少,更加貼合被掃描物體(腳趾)的形狀。
稀疏視角CT重建
采用X-Gaussian為傳統(tǒng)方法在稀疏視角下渲染更多X光片視圖以進(jìn)行CT重建,定量對(duì)比如表2所示
表2 稀疏視角下CT重建的數(shù)值對(duì)比
圖7 使用不同NVS算法為傳統(tǒng)方法SART合成新視角以進(jìn)行CT重建視覺(jué)對(duì)比
新的方法能夠更好地輔助不同傳統(tǒng)方法進(jìn)行稀疏視角的CT重建,PSNR性能上的漲幅都超過(guò)了10dB。
總結(jié)
本文提出了首個(gè)能渲染X光的3DGS方法——X-Gaussian。
具體而言,團(tuán)隊(duì)重新設(shè)計(jì)了一個(gè)輻射高斯點(diǎn)云模型,并基于該模型設(shè)計(jì)了一個(gè)可微的輻射光柵化渲染方法,能夠在GPU上高效地并行計(jì)算。同時(shí)為求出不同視角下的相機(jī)內(nèi)外參矩陣和初始稀疏點(diǎn)云,還設(shè)計(jì)了ACUI初始化方法。
最終,X-Gaussian在比當(dāng)前最好NeRF方法要高出6.5dB的情況下速度還達(dá)到了73倍速。同時(shí)還在稀疏視角CT重建任務(wù)上驗(yàn)證了新方法的實(shí)用價(jià)值。
本文使用的數(shù)據(jù)來(lái)自團(tuán)隊(duì)CVPR 2024的工作SAX-NeRF,能夠同時(shí)做X光新視角合成和CT重建的Instant-NGP。