張 品,王學(xué)淵
(1.西南科技大學(xué) 信息工程學(xué)院,綿陽(yáng) 621010;2.特殊環(huán)境機(jī)器人技術(shù)四川省重點(diǎn)實(shí)驗(yàn)室,綿陽(yáng) 621000)
增強(qiáng)現(xiàn)實(shí)是一種利用計(jì)算機(jī)對(duì)圖像進(jìn)行處理的技術(shù),該技術(shù)可以讓用戶所看到的真實(shí)世界影像與計(jì)算機(jī)產(chǎn)生的虛擬信息融合在一起,從而加強(qiáng)使用者對(duì)真實(shí)世界的感知能力。近年來(lái)增強(qiáng)現(xiàn)實(shí)技術(shù)在醫(yī)療領(lǐng)域的應(yīng)用愈加廣泛,尤其在手術(shù)導(dǎo)航中,增強(qiáng)現(xiàn)實(shí)技術(shù)能給醫(yī)生提供更加直觀的導(dǎo)航,但手術(shù)導(dǎo)航的虛實(shí)配準(zhǔn)與追蹤是一個(gè)難點(diǎn),只有實(shí)現(xiàn)虛實(shí)完全重疊,才能給醫(yī)生更好的手術(shù)指導(dǎo)[1~3]。在現(xiàn)有技術(shù)中,一般增強(qiáng)現(xiàn)實(shí)頭顯設(shè)備眼鏡有空間映射功能,可以做到位置匹配,但是其有一定局限性:手動(dòng)配準(zhǔn)的效率和精度較低,很難達(dá)到醫(yī)學(xué)上高精準(zhǔn)、高效率的需求[4,5]。由于其自身帶的空間映射需要手動(dòng)調(diào)整對(duì)齊,調(diào)整耗時(shí)較長(zhǎng),手動(dòng)調(diào)整過(guò)程中由于視角差的原因不能準(zhǔn)確對(duì)齊,不符合醫(yī)學(xué)手術(shù)要求。二維圖片的識(shí)別配準(zhǔn),會(huì)出現(xiàn)佩戴者視角超過(guò)90度易跟蹤丟失,在目標(biāo)和相機(jī)之間的高入射角下降低了跟蹤精度[6,7]。醫(yī)學(xué)中又出現(xiàn)了電磁追蹤方式和光學(xué)追蹤方式,電磁跟蹤系統(tǒng)在電磁場(chǎng)的干擾下會(huì)影響精度,限制電磁追蹤系統(tǒng)在醫(yī)學(xué)領(lǐng)域中的使用[8~11]。光學(xué)追蹤方式上存在配準(zhǔn)精度低的缺點(diǎn),不能在醫(yī)學(xué)上得到廣泛應(yīng)用。
隨后,葛敏[12]提出一種新的外置的脫離人體的注冊(cè)方法,在CT下掃描成像,利用算法自動(dòng)分割識(shí)別4個(gè)球的球心,在光學(xué)導(dǎo)航儀的追蹤下利用尺寸關(guān)系得到4個(gè)球心的三維坐標(biāo),并結(jié)合四元數(shù)的方法與圖像空間進(jìn)行匹配。這種方法的優(yōu)點(diǎn)是可以避免醫(yī)生多次對(duì)患者粘貼或佩戴標(biāo)志物,然而這種方法需要準(zhǔn)確有效地識(shí)別球心位置,并且用此種方法注冊(cè)時(shí)遠(yuǎn)離模具的位置會(huì)導(dǎo)致誤差增大。El-Hariri提出[13]利用光學(xué)ultrasound(超聲波)跟蹤,從超聲波圖像和CT圖像中分割骨表面,并進(jìn)行多模態(tài)體積配準(zhǔn),將術(shù)前數(shù)據(jù)與術(shù)中數(shù)據(jù)進(jìn)行對(duì)齊。利用hololens進(jìn)行顯示操作。此方法可以使醫(yī)生更自然的沉浸化,減少疲勞,簡(jiǎn)化手眼協(xié)調(diào)。由于此方法的儀器價(jià)格昂貴,并且精度還有待提高。Taylor Frantz提出[14]利用hololens與專有的圖像處理軟件開發(fā)工具包Vuforia結(jié)合,為神經(jīng)導(dǎo)航使用提供更穩(wěn)定的空間全息圖。它可以在hololens中實(shí)現(xiàn)真實(shí)空間與虛擬空間的關(guān)聯(lián),跟蹤精度高,但是手動(dòng)配準(zhǔn)精度較低。本文結(jié)合以上方法提出一種增強(qiáng)現(xiàn)實(shí)在醫(yī)學(xué)上自動(dòng)精確配準(zhǔn)與追蹤的技術(shù),通過(guò)雙目攝影測(cè)量獲取真實(shí)空間坐標(biāo)點(diǎn)來(lái)幫助自動(dòng)配準(zhǔn),利用Vuforia進(jìn)行關(guān)聯(lián)虛擬現(xiàn)實(shí)之間的坐標(biāo)系,幫助提高虛實(shí)配準(zhǔn)的精度[15]。
在真實(shí)空間中,制作一個(gè)Vuforia中同比例大小的圓柱體標(biāo)識(shí)物。真實(shí)中的RGB圓柱體橫截面的半徑以及圓柱體的高需要和Vuforia中導(dǎo)入的圓柱體半徑與高度的比例大小嚴(yán)格相同,否則會(huì)影響識(shí)別跟蹤的精度。制作Vuforia中的RGB圓柱體,首先選取識(shí)別性能良好的Vuforia圖像Chips,用A4紙彩色打印,采用高為172.5mm,寬為207.97mm的A4識(shí)別圖紙。然后將其包裹在直徑為66.20mm的圓柱體上,并用薄雙面膠帶固定,使其不可見,RGB圓柱體的擺放位置十分重要,在配準(zhǔn)時(shí),把RGB圓柱體用非永久粘合劑使其固定在病床的柱子上,讓RGB圓柱體和病人人體共同出現(xiàn)在Hololens視野中,方便識(shí)別與追蹤。
在真實(shí)人體上和RGB圓柱體上粘貼帶有一定厚度的小圓點(diǎn)標(biāo)記貼。各粘貼4個(gè)(或4個(gè)以上)標(biāo)記點(diǎn),要求3點(diǎn)不共線,4點(diǎn)不共面,方便用于對(duì)真實(shí)空間進(jìn)行識(shí)別和定位。使用一定厚度的小圓點(diǎn)標(biāo)記貼,用于在CT掃描中獲得標(biāo)記點(diǎn)在虛擬空間中的坐標(biāo),也便于相機(jī)攝影測(cè)量獲得真實(shí)空間中標(biāo)記點(diǎn)的精確坐標(biāo)[16]。為完成虛擬空間和真實(shí)空間坐標(biāo)系的配準(zhǔn)做準(zhǔn)備。
通過(guò)對(duì)粘貼標(biāo)記點(diǎn)的真實(shí)人體CT掃描,獲取虛擬空間的三維數(shù)據(jù),在Mimics中對(duì)所建三維模型進(jìn)行閾值分析和編輯處理,以及三維模型網(wǎng)格的重新劃分并做優(yōu)化,從而提高三維模型的可靠性和精確性,在Vuforia中建立一個(gè)與真實(shí)空間同比例大小的RGB圓柱體(Cylinder Target),將構(gòu)建好的人體三維模型和RGB圓柱體三維模型導(dǎo)入U(xiǎn)nity中進(jìn)行規(guī)劃,以便在Hololens中顯示與操作。
真實(shí)空間中的標(biāo)記點(diǎn)坐標(biāo)無(wú)法直接準(zhǔn)確獲得,需要借助相機(jī)的攝影測(cè)量進(jìn)行獲得其標(biāo)記點(diǎn)坐標(biāo)的精確位置。為了能夠在配準(zhǔn)過(guò)程中快速高精度的獲取標(biāo)記點(diǎn)的坐標(biāo)信息,采用圓形標(biāo)記點(diǎn)的識(shí)別和定位的方法,通過(guò)雙目相機(jī)拍攝提取不同位置的兩幅圖片,然后將圖像做灰度化處理和形態(tài)學(xué)變換,設(shè)定其閾值對(duì)左右圖像做輪廓提取,最后通過(guò)霍夫圓檢測(cè)算法識(shí)別圓形標(biāo)記點(diǎn)的輪廓,并得到圓心坐標(biāo)的像素值,對(duì)圖像的處理、幾何約束以及橢圓擬合等操作,實(shí)現(xiàn)圓形標(biāo)記點(diǎn)的提取并精確求出其圓心點(diǎn)在圖像像素坐標(biāo)系內(nèi)的坐標(biāo)值,選取其中幾個(gè)比較容易識(shí)別的標(biāo)記點(diǎn),推導(dǎo)出圓形標(biāo)記點(diǎn)在攝像機(jī)坐標(biāo)系下的空間坐標(biāo)信息。
虛、實(shí)坐標(biāo)系進(jìn)行配準(zhǔn)時(shí),需要在兩個(gè)不同坐標(biāo)系下測(cè)出同一組公共點(diǎn)的坐標(biāo),通過(guò)這組公共坐標(biāo)將這兩個(gè)坐標(biāo)系的位姿進(jìn)行關(guān)聯(lián)。首先在真實(shí)空間中選取4個(gè)標(biāo)記點(diǎn),取任意一個(gè)標(biāo)記點(diǎn)A0為參考坐標(biāo)系的原點(diǎn),同時(shí)以A0與其他3個(gè)坐標(biāo)點(diǎn)A1、A2、A3的連線建立X軸、Y軸以及Z軸,并設(shè)定向量、、為各自坐標(biāo)軸上的單位向量,因此A0、A1、A2、A34點(diǎn)坐標(biāo)分別為(0,0,0)、(1,0,0)、(0,1,0)、(0,0,1)。從而建立真實(shí)空間坐標(biāo)系,即手術(shù)空間非正交坐標(biāo)系,這樣手術(shù)空間中任意一點(diǎn)的位置AP(xp,yp,zp)都可以唯一確定,并滿足以下公式:
A0、A1、A2、A34點(diǎn)在虛擬空間中的坐標(biāo)分別為(x0,y0,z0)、(xa1,ya1,za1)、(xa2,ya2,za2)、(xa3,ya3,za3)。
4個(gè)標(biāo)記點(diǎn)在兩個(gè)空間坐標(biāo)系中的坐標(biāo)比較如表1所示。
表1 4個(gè)標(biāo)志點(diǎn)在真實(shí)空間和虛擬空間的坐標(biāo)比較
由于虛擬空間中三維模型是通過(guò)患者的CT掃描數(shù)據(jù)重建所得,因此可認(rèn)為虛擬空間與真實(shí)手術(shù)空間的空間映射轉(zhuǎn)換為剛體變換(包括平移和旋轉(zhuǎn))[17],一個(gè)變換矩陣可完成兩坐標(biāo)系中位置的空間映射轉(zhuǎn)換,從真實(shí)空間向虛擬空間的映射矩陣T如下式:
R是3×3的旋轉(zhuǎn)矩陣,t是3×1的平移矩陣;
根據(jù)空間映射方法對(duì)PRB、PRT、PVB、PVT四個(gè)坐標(biāo)系之間進(jìn)行轉(zhuǎn)換,確定虛擬場(chǎng)景坐標(biāo)系與現(xiàn)實(shí)場(chǎng)景坐標(biāo)系之間的位置轉(zhuǎn)換關(guān)系。其中PRB是人體上標(biāo)記點(diǎn)在真實(shí)空間中建立的坐標(biāo)系,PRT是RGB圓柱體上標(biāo)記點(diǎn)在真實(shí)空間中建立的坐標(biāo)系,PVB是人體上的標(biāo)記點(diǎn)在導(dǎo)入U(xiǎn)nity初始狀態(tài)下建立的坐標(biāo)系,PVT是RGB圓柱體上的標(biāo)記點(diǎn)在虛擬空間中建立的坐標(biāo)系。
利用PVB上的4個(gè)標(biāo)記點(diǎn)和與其對(duì)應(yīng)PRB上的4個(gè)標(biāo)記點(diǎn)坐標(biāo),采用空間映射方法求得PVB與PRB坐標(biāo)系之間的轉(zhuǎn)換矩陣T1,PVB_center在Unity中可以使用模型包圍盒直接獲得,由PVB上的人體包圍盒中心點(diǎn)坐標(biāo)PRB_center,利用公式如下求取PRB_center:
由雙目相機(jī)攝影測(cè)量獲得真實(shí)空間中PVB和PRB之間的位置關(guān)系,為使虛擬空間中PVB和PVT之間的位置關(guān)系與真實(shí)空間中保持一致,求取與PRB_center位置對(duì)應(yīng)的P'VB_center:已知真實(shí)人體PRB_center在PRT坐標(biāo)系下的位置坐標(biāo),利用PRT上的4個(gè)標(biāo)記點(diǎn)坐標(biāo)和與其對(duì)應(yīng)PVT上的4個(gè)標(biāo)記點(diǎn)坐標(biāo),采用空間映射方法求得PRT與PVT坐標(biāo)系之間的轉(zhuǎn)換矩陣T2,由真實(shí)人體PRB_center在PRT坐標(biāo)系下的位置坐標(biāo),利用如下公式求取P'VB_center相應(yīng)的位置:
由3.4可知,真實(shí)人體與虛擬人體的包圍盒中心點(diǎn)位置是一一對(duì)應(yīng)的,但是模型之間相差一個(gè)旋轉(zhuǎn)角度,以PRB上的4個(gè)標(biāo)記點(diǎn)和P'VB上的4個(gè)標(biāo)記點(diǎn)坐標(biāo),利用空間映射求取旋轉(zhuǎn)矩陣R,由旋轉(zhuǎn)矩陣與歐拉角之間的轉(zhuǎn)換,獲得虛擬人體在Unity中應(yīng)旋轉(zhuǎn)的角度,在Unity中為左手系旋轉(zhuǎn),且歐拉旋轉(zhuǎn)的旋轉(zhuǎn)順序是ZXY,并在Unity中做相應(yīng)的角度調(diào)整。其中P'VB是步驟3.3中虛擬人體中心點(diǎn)在P'VB_center下建立的坐標(biāo)系;
其中,在左手系中繞X軸旋轉(zhuǎn)角度為p,對(duì)應(yīng)的矩陣為Rx:
在左手系中繞Y軸旋轉(zhuǎn)角度為h,對(duì)應(yīng)的矩陣為Ry:
在左手系中繞Z軸旋轉(zhuǎn)角度為b,對(duì)應(yīng)的矩陣為Rz:
首先獲取真實(shí)空間模型的真實(shí)空間模型數(shù)據(jù),并建立與真實(shí)空間模型對(duì)應(yīng)的真實(shí)空間坐標(biāo)系,根據(jù)真實(shí)空間模型數(shù)據(jù),建立與真實(shí)空間模型對(duì)應(yīng)的虛擬空間模型,并建立與虛擬空間模型對(duì)應(yīng)的虛擬空間坐標(biāo)系。利用Vuforia的精確識(shí)別跟蹤功能實(shí)現(xiàn)真實(shí)空間與虛擬空間坐標(biāo)系之間的關(guān)聯(lián),在Visual Studio平臺(tái)上用代碼進(jìn)行坐標(biāo)之間轉(zhuǎn)換操作,進(jìn)行虛擬空間與真實(shí)空間坐標(biāo)系位置之間轉(zhuǎn)換,完成真實(shí)人體與虛擬人體模型之間的包圍盒中心點(diǎn)的重合,再運(yùn)用旋轉(zhuǎn)矩陣與歐拉角之間的轉(zhuǎn)換獲得模型之間的角度轉(zhuǎn)換,并在Unity的Vuforia中進(jìn)行虛實(shí)配準(zhǔn)跟蹤操作,把項(xiàng)目導(dǎo)入Hololens中,通過(guò)Hololens與Unity聯(lián)合操作結(jié)合雙目相機(jī)攝影測(cè)量進(jìn)行三維追蹤識(shí)別,醫(yī)生可佩戴Hololens眼鏡,在手術(shù)導(dǎo)航中提供更好的手術(shù)指導(dǎo)[18]。
圖1 增強(qiáng)現(xiàn)實(shí)自動(dòng)精確配準(zhǔn)與追蹤的方法流程圖
實(shí)驗(yàn)采用雙目相機(jī)獲取真實(shí)空間中標(biāo)記點(diǎn)的位置坐標(biāo),在Windows10操作系統(tǒng)上運(yùn)行Microsoft Visual Studio平臺(tái)上完成坐標(biāo)配準(zhǔn),采用vuforia進(jìn)行識(shí)別跟蹤,并在unity平臺(tái)上展示虛實(shí)配準(zhǔn)效果。配準(zhǔn)前真實(shí)空間點(diǎn)集M坐標(biāo)與配準(zhǔn)前虛擬空間點(diǎn)集W坐標(biāo)如表3所示。
表2 配準(zhǔn)前真實(shí)空間點(diǎn)集M(mm)
表3 配準(zhǔn)前虛擬空間點(diǎn)集W(mm)
為了驗(yàn)證實(shí)驗(yàn)的精確度,將一張帶有毫米刻度的A4紙(其細(xì)線間距為1毫米)粘貼在一個(gè)光滑平板上,將3D打印的胸骨和RGB圓柱體粘貼在平板上。將其一并放在實(shí)驗(yàn)臺(tái)上,利用雙目相機(jī)獲取真實(shí)空間坐標(biāo)點(diǎn)信息,在unity中獲取虛擬空間坐標(biāo)點(diǎn)信息。通過(guò)坐標(biāo)系之間的轉(zhuǎn)換,在unity中對(duì)模型進(jìn)行調(diào)整相應(yīng)的角度和位置。最后利用Hololens進(jìn)行同構(gòu)多個(gè)角度觀察配準(zhǔn)效果。
表4 配準(zhǔn)后虛擬空間點(diǎn)集N(mm)
圖2 虛擬空間模型與真實(shí)空間模型配準(zhǔn)前效果
圖3 虛擬空間模型與真實(shí)空間模型配準(zhǔn)后效果
經(jīng)過(guò)以上對(duì)各坐標(biāo)系轉(zhuǎn)換,獲得配準(zhǔn)前后坐標(biāo)值,并用MATLAB顯示模型配準(zhǔn)前后點(diǎn),經(jīng)計(jì)算誤差為1.004mm,在允許范圍內(nèi)。
圖4 空間坐標(biāo)點(diǎn)配準(zhǔn)前后精度對(duì)比
為了達(dá)到增強(qiáng)現(xiàn)實(shí)在醫(yī)學(xué)導(dǎo)航上的高精度配準(zhǔn)與追蹤技術(shù),提出了一種自動(dòng)精確配準(zhǔn)與追蹤的方法。它是通過(guò)雙目相機(jī)攝影測(cè)量獲取真實(shí)空間坐標(biāo)點(diǎn)來(lái)幫助自動(dòng)配準(zhǔn),利用Vuforia來(lái)進(jìn)行關(guān)聯(lián)虛擬與現(xiàn)實(shí)之間的坐標(biāo)系,幫助提高虛實(shí)配準(zhǔn)精度。Vuforia中的Cylinder Target識(shí)別在虛實(shí)配準(zhǔn)與追蹤過(guò)程中不易受到遮擋的影響,配準(zhǔn)精度較高,對(duì)比配準(zhǔn)前后坐標(biāo)誤差精度為1.004mm,達(dá)到實(shí)時(shí)追蹤的效果,并且可以做到360°視角跟蹤目標(biāo),允許醫(yī)生在測(cè)試區(qū)域內(nèi)走動(dòng),符合實(shí)用要求。此方法具有先進(jìn)性和實(shí)用參考價(jià)值,并且經(jīng)濟(jì)實(shí)惠。