摘 要:近紅外光學(xué)跟蹤系統(tǒng)以其高精度、便捷的特點(diǎn)迅速發(fā)展成為手術(shù)導(dǎo)航中的重要組成部分。本文基于雙目視覺設(shè)計了一套高精度、低成本的光學(xué)跟蹤系統(tǒng),該系統(tǒng)使用安裝在器械上的被動標(biāo)記球(NDI Passive Sphere)作為標(biāo)記,并在雙目相機(jī)鏡頭前添加近紅外濾光片,以消除環(huán)境光的干擾。首先,采用輪廓過濾算法,用于標(biāo)記輪廓的提取,使用最小二乘橢圓擬合算法獲取標(biāo)記投影中心的像素坐標(biāo);其次,設(shè)計了器械識別算法,使每個器械可以單獨(dú)有序儲存標(biāo)記球的中心像素坐標(biāo),用于多個器械的分辨;最后,通過左右視圖對應(yīng)標(biāo)記中心匹配,重建其空間坐標(biāo),進(jìn)而推導(dǎo)出器械尖端在世界坐標(biāo)系中的坐標(biāo)。實(shí)驗(yàn)使用該系統(tǒng)跟蹤器械,利用器械的無規(guī)則擺放實(shí)驗(yàn)驗(yàn)證了器械識別算法的準(zhǔn)確性和魯棒性,準(zhǔn)確率達(dá)95%,平均識別時間僅需4ms。并對系統(tǒng)進(jìn)行了穩(wěn)定性、靜態(tài)定位精度、動態(tài)跟蹤等測試。結(jié)果表明,穩(wěn)定性誤差可達(dá)0.13mm,靜態(tài)定位精度可達(dá)0.373mm,所提出的近紅外光學(xué)跟蹤系統(tǒng)具有較高的精度和穩(wěn)定性,可以滿足手術(shù)導(dǎo)航的要求。
關(guān)鍵詞:器械識別;手術(shù)導(dǎo)航;光學(xué)定位;雙目視覺
王杰; 仲重亮; 朱偉東, 紅外與激光工程 發(fā)表時間:2021-11-05
0 引言
導(dǎo)航系統(tǒng)一般由軟件系統(tǒng)及主動或被動跟蹤定位系統(tǒng)組成,而光學(xué)跟蹤定位系統(tǒng)因其可靠、非接觸等特點(diǎn)在導(dǎo)航系統(tǒng)中廣泛應(yīng)用。光學(xué)跟蹤定位系統(tǒng)一般應(yīng)用在手術(shù)導(dǎo)航、精準(zhǔn)焊接、工件定位、打磨拋光等領(lǐng)域。例如在手術(shù)導(dǎo)航方面,光學(xué)跟蹤定位系統(tǒng)可以通過實(shí)時跟蹤手術(shù)工具和患者實(shí)體,然后將手術(shù)工具與患者實(shí)體之間的相對姿態(tài)映射到虛擬導(dǎo)航界面,從而使手術(shù)更加便捷,而且也減少了創(chuàng)傷面積[1-3]。為了減少可見光的干擾,手術(shù)導(dǎo)航一般使用近紅外跟蹤定位系統(tǒng),由兩臺高速相機(jī)搭建而成,通過跟蹤被動標(biāo)記球而實(shí)時重建空間坐標(biāo),達(dá)到精準(zhǔn)導(dǎo)航的目的。
跟蹤定位技術(shù)是衡量手術(shù)導(dǎo)航系統(tǒng)的關(guān)鍵因素。高精度和實(shí)時性是手術(shù)導(dǎo)航成功的先決條件。目前在手術(shù)導(dǎo)航系統(tǒng)中應(yīng)用的主要跟蹤方法是電磁跟蹤和光學(xué)跟蹤。電磁導(dǎo)航系統(tǒng)雖然成本低,使用靈活,但對金屬物體特別是鐵磁儀器特別敏感,其精度對電磁波的干擾很敏感。光學(xué)跟蹤系統(tǒng)(OTS)不僅定位精度高,而且使用方便[4]。它迅速發(fā)展成為當(dāng)前手術(shù)導(dǎo)航的主要產(chǎn)品,目前主流商用產(chǎn)品如NDI的Polaris VEGA 系列,最多可跟蹤25個工具,跟蹤精度僅為0.12 mm。
北京理工大學(xué)首先通過并行算法在FPGA中實(shí)現(xiàn)了三維點(diǎn)重建定位附著在儀器上的標(biāo)記,然后根據(jù)這些標(biāo)記的幾何關(guān)系估計姿勢[5]。極線約束通常用于立體匹配,但它無法確定與兩個光學(xué)中心共面的標(biāo)記的正確對應(yīng),從而導(dǎo)致重影標(biāo)記在重建3D點(diǎn)后生成[6]。為了解決重影標(biāo)記的形成,其他改進(jìn)的方法如點(diǎn)極線之間的幾何距離約束[7];將最大輪廓重投影一致性和極線約束結(jié)合到目標(biāo)函數(shù)中[8];根據(jù)標(biāo)記提供的幾何信息查找標(biāo)記投影之間的對應(yīng)關(guān)系,以及基于投影的大小在幀間快速跟蹤2D圖像中的標(biāo)記[9] ;基于標(biāo)記點(diǎn)幾何排列的儀器識別方法和基于標(biāo)記點(diǎn)運(yùn)動矢量的儀器跟蹤方法[10]。
對于新手外科醫(yī)生來說,計算機(jī)輔助手術(shù)的術(shù)前培訓(xùn)必不可少,旨在提高外科醫(yī)生的動手實(shí)踐能力。然而,Polaris VEGA 相關(guān)產(chǎn)品不僅價格昂貴,而且其所依賴的技術(shù)受專利保護(hù),不利于二次開發(fā)和定制化,因此通常用于臨床手術(shù),不能廣泛用于培訓(xùn)新手外科醫(yī)生。
本文基于雙目視覺原理,設(shè)計了一種低成本、高精度的光學(xué)跟蹤系統(tǒng)。在設(shè)計的光學(xué)跟蹤系統(tǒng)中,六個被動標(biāo)記球用作安裝在器械上的標(biāo)記。該系統(tǒng)使用兩個高速相機(jī)來捕捉標(biāo)記的圖像,兩個紅外燈用作主動光源,為了增強(qiáng)標(biāo)記亮度減弱可見光的干擾,在每個相機(jī)鏡頭前添加了近紅外濾光片。為提取標(biāo)記中心的像素坐標(biāo),采用輪廓過濾方法消除干擾輪廓,然后用最小二乘橢圓擬合算法獲取中心像素坐標(biāo)。這種圖像處理方法大大增強(qiáng)了抗干擾能力,提高了系統(tǒng)的精度。接下來,器械識別算法根據(jù)器械特有幾何特征對其正確識別并有序儲存器械上標(biāo)記球的像素坐標(biāo)序列,用于匹配左右攝像機(jī)圖像中的標(biāo)記。最后,通過標(biāo)記的3D坐標(biāo)重建得到器械尖端的坐標(biāo),并通過實(shí)驗(yàn)驗(yàn)證了系統(tǒng)的準(zhǔn)確性和穩(wěn)定性,可以滿足手術(shù)導(dǎo)航的需要。
1 系統(tǒng)建立
一般來說,可見光相機(jī)在可見光條件下工作,但它也可以檢測近紅外光。量子效率 (QE) 是器件對各個波長靈敏度的重要表征,本系統(tǒng)使用的CMOS USB3.0相機(jī),它在不同波長下QE的分布如圖1-a所示。由圖1-a可知,可見光波段的QE大于近紅外波段的QE。如果相機(jī)直接用于跟蹤器械,手術(shù)室內(nèi)環(huán)境光的干擾是不可避免的,而且標(biāo)記球的亮度會很暗,如圖1-b所示,這將嚴(yán)重影響器械尖端定位的準(zhǔn)確性。
因此,在工業(yè)定焦鏡頭前添加了一個中心波長為 850 nm的窄帶通濾波器。由圖1-c可知,添加近紅外濾光片可以有效阻止可見光等進(jìn)入傳感器。
整體系統(tǒng)如圖2所示,硬件部分使用兩臺同型號高頻黑白相機(jī)(MV-CA013-21UM,HIKROBOT,China),相機(jī)分辨率為1280×1024,最大幀率為210 fps,二者間距420 mm。相機(jī)內(nèi)側(cè)為兩個中心波長為850 nm的近紅外照明燈。鏡頭采用定焦鏡頭,焦距為8 mm,鏡頭前添加有近紅外濾光片。軟件部分可以實(shí)時采集處理得出標(biāo)記中心像素坐標(biāo)及器械尖點(diǎn)在世界坐標(biāo)系中的坐標(biāo)。
系統(tǒng)原理框圖如圖3所示,當(dāng)系統(tǒng)啟動時,近紅外光源照射固定在器械上的被動標(biāo)記球的表面,雙目視覺系統(tǒng)收集標(biāo)記球反射的光線在相機(jī)的傳感器上成像,并將圖像數(shù)據(jù)通過USB3.0接口發(fā)送到計算機(jī),軟件可以實(shí)時顯示標(biāo)記及器械尖點(diǎn)的世界坐標(biāo)。軟件算法處理主要分為三步:首先,應(yīng)用標(biāo)記輪廓過濾算法得到有效輪廓并利用最小二乘橢圓擬合算法獲取標(biāo)記投影中心的像素坐標(biāo),結(jié)合雙目視覺系統(tǒng)的內(nèi)外參數(shù),對捕獲的中心坐標(biāo)進(jìn)行畸變校正;其次,根據(jù)器械的幾何排列對左右視圖的器械逐一識別并有序儲存器械上標(biāo)記球的像素坐標(biāo)序列,為立體匹配做好基礎(chǔ);最后,通過已標(biāo)定的雙目相機(jī)內(nèi)外參數(shù)重建標(biāo)記中心的3D坐標(biāo)。更重要的是,結(jié)合器械尖端在器械坐標(biāo)系中的坐標(biāo),可以計算出尖端的世界坐標(biāo)。從而實(shí)現(xiàn)對器械的實(shí)時定位和跟蹤。
2 方法
2.1 器械設(shè)計
如圖4所示,本文設(shè)計的器械安裝六個NDI公司生產(chǎn)的被動標(biāo)記球,這種標(biāo)記球?qū)t外光具有高反射率,其組成一個等腰直角三角形,三角形每條邊都有三個標(biāo)記球,但是處于每條邊中間的標(biāo)記球的位置會不同,比如有些位于中點(diǎn),而有些位于三等分點(diǎn)。尖點(diǎn)位于圖4最右側(cè),通過尖點(diǎn)旋轉(zhuǎn)驗(yàn)證系統(tǒng)抗干擾性。 D16、D14、D24這三組距離的準(zhǔn)確性也會在動態(tài)跟蹤實(shí)驗(yàn)中驗(yàn)證。
2.2 相機(jī)標(biāo)定與畸變校正
Zhang’s標(biāo)定法[11]近年來在相機(jī)標(biāo)定中得到廣泛應(yīng)用,并且已經(jīng)成熟。它是傳統(tǒng)相機(jī)標(biāo)定和自標(biāo)定的折衷方法,這種方法是穩(wěn)健的,無需開發(fā)高精度定位參考。更重要的是,標(biāo)定精度可以滿足要求,因此本文采用此方法來標(biāo)定相機(jī),標(biāo)定后將得到左右相機(jī)的旋轉(zhuǎn)矩陣、平移矩陣以及每個相機(jī)的內(nèi)參矩陣和畸變參數(shù)。
相機(jī)光學(xué)系統(tǒng)中透鏡形狀引起的畸變稱為徑向畸變,安裝過程中由于不能使透鏡和成像面嚴(yán)格平行引起的畸變稱為切向畸變。以上兩種畸變會使相機(jī)坐標(biāo)系中的歸一化坐標(biāo) (( / ) ,( / ) ) X Z Y Z c c distorted c c distorted 與真實(shí)歸一化坐標(biāo) (( / ),( / )) X Z Y Z c c c c 存在偏差。二者的對應(yīng)關(guān)系為: 2 4 6 11 12 13 2 2 1 2 : ( ) ( )(1 ) 2 ( )( ) ( 2( ) ) c c distorted c c c c c c c c X X Z X Z k r k r k r p X Z Y Z p r X Z ? ? ? ? ?? ? (1) 2 4 6 11 12 13 2 2 2 1 : ( ) ( )(1 ) 2 ( )( ) ( 2( ) ) c c distorted c c c c c c c c Y Y Z Y Z k r k r k r p X Z Y Z p r Y Z ? ? ? ? ?? ? (2)
其中, 2 2 2 ( ) ( ) c c c c r X Z Y Z ? ? , 11 12 13 k k k , , 為徑向畸變系數(shù), 1 2 p p, 為切向畸變系數(shù),五個參數(shù)均可由相機(jī)標(biāo)定得到。
則投影在像素坐標(biāo)系中的位置變?yōu)椋?0 0 ( ) ( ) d x c c distorted d y c c distorted u f X Z u v f Y Z v ? ?? ? (3) 其中, 0 0 , , , x y f f u v 均可由相機(jī)標(biāo)定的內(nèi)參矩陣得到。因此,系統(tǒng)首先應(yīng)通過畸變校正,得到畸變校正后的圖像。畸變校正一般通過迭代法解算,當(dāng)前后兩次迭代的差值小于預(yù)設(shè)閾值,則終止迭代。
2.3 標(biāo)記中心提取
在光學(xué)跟蹤系統(tǒng)中,標(biāo)記中心的像素坐標(biāo)提取將直接影響器械尖端世界坐標(biāo)的精度。在捕獲的圖像中,標(biāo)記是高亮區(qū)域,標(biāo)記中心的像素坐標(biāo)是高亮區(qū)域的中心,用于計算器械尖端的世界坐標(biāo)。
然而,因?yàn)楣ぷ鳝h(huán)境中其他物體的高強(qiáng)度反光,形成高亮區(qū)域,這種區(qū)域會對標(biāo)記球輪廓的提取造成干擾,因此,本文采用輪廓過濾算法提取標(biāo)記輪廓。在進(jìn)行標(biāo)記輪廓提取之前,必須使用圖像分割的方法提取標(biāo)記邊緣。雖然閾值分割可以快速實(shí)現(xiàn)邊緣提取,但使用單閾值或多閾值的圖像分割方法會造成結(jié)果不穩(wěn)定。而 Canny邊緣檢測器作為提取標(biāo)記邊緣的常用方法[12],算法穩(wěn)定性已經(jīng)被多位學(xué)者驗(yàn)證,因此本文使用Canny算法進(jìn)行邊緣檢測。邊緣提取后使用OpenCV中輪廓檢測函數(shù)獲得輪廓集 { } d d C c ? i , d i c 表示第i個輪廓, ={ } d d i j c p ,表示第i個輪廓中的單個像素 d j p 。但這些像素值都是未經(jīng)校正的,需要利用畸變參數(shù)進(jìn)行校正。然而校正整個原始圖像的畸變是很耗時的,因此,只需要校正 d i c 。最后,得到校正后的輪廓 { } i j c p ?,以及校正后的最終獲得輪廓集 { } C c ? i 。
標(biāo)記輪廓提取的第一步:判斷邊緣是否近似于圓。如果 i c 是一個圓,那么輪廓上的像素 j p 到質(zhì)心 o 的距離 j d 與平均距離 i o 的均方根誤差很小。假設(shè) Mi 為 i c 中的像素點(diǎn)個數(shù),那么 j i d o ? 的均方根誤差(RMSE)為: 2 1 Mi j i i j i i d o o RMSE M ?? ? ?? ? ? ??? (4) 如果 RSMEi 小于閾值 r t , i c 可以被視為一個標(biāo)記輪廓,如表 1 所示,分別選取 0.4000、0.3000、0.226、 0.225、0.224、0.200、0.100 等 7 個閾值分別實(shí)驗(yàn),發(fā)現(xiàn)在 0.100-0.225 區(qū)間中,識別數(shù)量滿足要求,本文中 r t 取值0.224。
標(biāo)記輪廓提取的第二步:判斷輪廓中的像素數(shù)量是否滿足一個取值范圍,在 1.2 m 處采集到標(biāo)記球的像素數(shù)量最大值為 250 個像素,2 m 處采集到標(biāo)記球的像素數(shù)量為 60 個像素,因此,如果輪廓中的像素數(shù)量滿足此范圍,則該輪廓正式被視為一個標(biāo)記輪廓,如若未執(zhí)行此步驟,輪廓提取結(jié)果將會如圖5-a所示。
最后使用最小二乘橢圓擬合算法[13]過濾后的輪廓 i c 擬合得到投影標(biāo)記中心像素坐標(biāo),最終提取結(jié)果如圖 5- b所示。
首先給出橢圓的一般表達(dá)式: 2 2 f m n ax bxy cy dx ey f ( , ) ? ? ? ? ? ? (5) 其 中 , 矢 量 m a b c d e f ? ? ? ,n x xy y x y ? ? ?1 ? ?。令 { } i j c p ?中像素點(diǎn)的坐標(biāo)為 ( , )( 1,2, ) j j i x y j M ? , Mi 為橢圓邊界上像素點(diǎn)的個數(shù)。引入約束條件 2 m ? 1 ,同時建立如下的目標(biāo)函數(shù): 2 2 2 1 ( ) ( , ) ( 1) Mi j j F m f m n M m ?? ? ? ? (6) 其中, M 為 懲 罰 系 數(shù) , 且 有 2 2 1 j j j j j j j n x x y y x y ? ? ? ? ? 。最小化目標(biāo)函數(shù) F m( ) ,求得矢量 m 的最優(yōu)解。這是一個非線性最小二乘問題,可以利用牛頓-高斯法或 Levenberg-Marquardt算法求解。根據(jù)矢量,計算橢圓中心的像素坐標(biāo),公式如下: 2 2 4 c cd be x b ac ??? (7) 2 2 4 c ae bd y b ac ??? (8)
2.4 器械識別
器械識別影響立體匹配的精確性,通過器械識別,可以有序儲存器械中每個標(biāo)記的坐標(biāo)信息,為立體匹配做好準(zhǔn)備。
首先,對左視圖進(jìn)行標(biāo)記中心提取,得出一組二維像素坐標(biāo) { , } i i u v ,然后,將像素坐標(biāo)系轉(zhuǎn)換成圖像坐標(biāo)系: 0 0 ( ) ( ) i i x i i y x u u d y v v d ? ?? ? (9) 式中 x y d d ?,表示像元尺寸,本文二者相等。
此時,圖像坐標(biāo)系中點(diǎn)集 { , } i i x y 與相機(jī)坐標(biāo)系中三維點(diǎn)集具有下述轉(zhuǎn)換關(guān)系: { , } { , , } i i i i x y x y f ? (10) { , , } i i x y f 表示圖像坐標(biāo)系中的二維點(diǎn)集與光心之間距離為焦距 f 時的相機(jī)坐標(biāo)系空間坐標(biāo)。
假設(shè)空間點(diǎn)集的數(shù)量為 N,子集元素數(shù)目為 3的集合一共可以找出 3 CN 個組合。現(xiàn)找出其中的一個子集 { , , | 0,1,2} i i x y f i ?,對每個點(diǎn)列出空間直線方程 i i x y z t x y f ? ? ? (11) { , , | 0,1,2} i i x y f i ?對應(yīng)的 t 為 1,位于圖 6 中Z f c ?平面。在 Z f c ?平面前后建立 0.5 Z f c ?與 4 Z f c ?兩個平面,因?yàn)槊總€點(diǎn)的空間直線方程一定經(jīng)過相機(jī)光心,因此與 0.5 Z f c ?和 4 Z f c ?這兩個平面存在交點(diǎn),如圖6所示。
如圖 6 所示,子集 { , , | 0,1,2} i i x y f i ?與光心連線的空間直線與 0.5 Z f c ?和 4 Z f c ?這兩個平面共有六個交點(diǎn),然后通過這六個交點(diǎn)擬合平面,計算 Z f c ?平面上 { , , | 0,1,2} i i x y f i ?到該平面的距離平方和 i 012 S ?,并判斷 i 012 S ?是否小于閾值 s t ,如若滿足,則認(rèn)為 { , , | 0,1,2} i i x y f i ?在擬合平面上,即該子集屬于器械的一條邊。最后將其存儲到二維向量 output 中。接下來,依次取出其他子集重復(fù)上述過程。如表 2所示,分別選取 0.012、0.011、0.010、0.009、0.008 等 5 個閾值分別實(shí)驗(yàn),發(fā)現(xiàn)在 0.008-0.010 區(qū)間中,識別數(shù)量滿足要求,本文 s t 取值為0.009。
當(dāng)所有的子集經(jīng)過上述過程后,不滿足的子集被過濾,二維向量 output 中保存的子集均為目標(biāo)子集,但是子集之間并不能有效區(qū)分,因次,器械設(shè)計時對每條邊添加了對稱性屬性,使子集通過對稱性區(qū)分,分為對稱子集與非對稱子集。子集對稱性區(qū)分即:找出 output 中的一個子集,假設(shè)子集是 { , , | 0,1,2} i i x y f i ?。下面對該 子 集 執(zhí) 行 對 稱 性 區(qū) 分 操 作 , 首 先 找 出 { , , | 0,1,2} i i x y f i ?中位于邊緣兩點(diǎn)中間的點(diǎn),然后計算邊緣兩點(diǎn)與中間點(diǎn)二者空間向量的弧度值,并用較小的弧度值與較大弧度值相比,該比值記為? i?012 。如果? i?012 滿足式(12): min 012 max i ? ? ? ? ?? (12) min ? ? 0.9 ,? max =1.0 ,則認(rèn)為子集 { , , | 0,1,2} i i x y f i ?為對稱子集,如圖7-a所示;如果滿足式(13):? ? ? min 012 max ? ? i? (13) ?min =0.35 ,? max =0.58 ,則認(rèn)為子集 { , , | 0,1,2} i i x y f i ?為非對稱子集,如圖7-b所示;因?yàn)橄到y(tǒng)工作距離遠(yuǎn)大于器械標(biāo)記球之間的距離,所以? i?012 在對稱子集中非常接近 1.0;在非對稱子集中,? i?012 接近器械最初設(shè)計的比例,即中間點(diǎn)位于三等分點(diǎn)。
依次計算 output 中的子集,將對稱子集按照中間點(diǎn)、邊緣點(diǎn)的順序存儲到二維向量 Sym中,非對稱子集也按照中間點(diǎn)、邊緣點(diǎn)的順序存儲到二維向量 Asym 中。
output 中的子集全部處理完之后,子集被分為對稱子集與非對稱子集,分別存儲在二維向量 Sym 與 Asym 中。從二維向量 Sym中找出一個子集,然后從二維向量Asym 中找出兩組子集,如果這兩組非對稱子集滿足:存在邊緣點(diǎn)與對稱子集邊緣點(diǎn)相等,則將這三組子集存放到同一個二維向量Tool中。
目前,只是將屬于同一器械中的被動標(biāo)記球中心坐標(biāo)存入到二維向量 Tool中,但并沒有明確標(biāo)記球之間的關(guān)系。因此,需要定義一種可以辨別標(biāo)記球相互關(guān)系的方法。
本文定義的方法是以對稱子集中間點(diǎn)為起點(diǎn),對器械 中 每 個 標(biāo) 記 球 按 照 逆 時 針 順 序 編 號 1 2 3 4 5 6 { , , , , , } A A A A A A ,起點(diǎn)為 A1 ,兩個非對稱子集的重合點(diǎn)為 A4 ,這兩點(diǎn)可以快速確定。但是因空間旋轉(zhuǎn)的不確定性,其它點(diǎn)并不能確定。因此,我們利用確定的 A1 與 A4 的位置關(guān)系來確定 A2 ,相互關(guān)系如圖 8-a 所示。
由圖 8-a 可知,當(dāng) A1 與 A4 的位置確定之后, A2 的位置將唯一確定。例如 A4 的橫縱坐標(biāo)均大于 A1 的橫縱坐標(biāo),則 A2 應(yīng)滿足:橫坐標(biāo)小于 A1 的橫坐標(biāo)而縱坐標(biāo)大于 A1 的縱坐標(biāo)。確定 A2 之后,對稱子集已經(jīng)確定了兩個點(diǎn)。 A3 則為屬于 A2 與 A4 那組非對稱點(diǎn)集中的中間點(diǎn), A4 為公共點(diǎn),之前已經(jīng)確認(rèn)。 A5 則為另外一個非對稱子集的中間點(diǎn), A6 則為對稱子集的另外一個端點(diǎn)。至此,Tool 中的六個標(biāo)記球中心坐標(biāo)已經(jīng)有序排列,最后將 1 2 3 4 5 6 { , , , , , } A A A A A A 按照下標(biāo)由小到大的順序儲存,為下一步立體匹配做準(zhǔn)備,器械上標(biāo)記球的編號如圖8-b所示。
經(jīng)過上述過程,器械中的標(biāo)記球被有序存儲。對于每個器械,分別找出 2 3 4 5 6 A A A A A , , , , 計算圖 8-b 中 L L 1 2 與 L L 3 4 的比值確定器械種類,本文根據(jù) L L 1 2 與 L L 3 4 的比值設(shè)計了三種器械,如表3所示。
最后,依次從二維向量 Sym、Asym 取出子集,重復(fù)上述過程,確定器械種類。當(dāng)左視圖所有子集處理完成后,再對右視圖進(jìn)行類似處理,最終得到左右視圖相同種類器械有序存儲的標(biāo)記球中心坐標(biāo),為后續(xù)匹配做好準(zhǔn)備。
2.5 三維重建
器械正確識別后,可以對左右視圖中的相同器械按照存儲的順序匹配重建。對于左相機(jī),我們假設(shè)其坐標(biāo)系的原點(diǎn)與世界坐標(biāo)系原點(diǎn)重合且無旋轉(zhuǎn),那么左相機(jī)坐標(biāo)系可以表示為 o xyz ? ,圖像坐標(biāo)系為 O X Y l l l ? ,焦距為 l f ,右相機(jī)坐標(biāo)系可以表示為 r r r o x y z ? ,圖像坐標(biāo)系為 O X Y r r r ? ,焦距為 r f 。因此,我門通過相機(jī)的透視投影關(guān)系可以得到[14]: 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 1 l l l l l r r r r r r r r X f x s Y f y z X f x s Y f y z ? ? ? ? ? ? ? ? ? ? ? ? ? ??? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ?? ? ? ? ? ? ????? ? ? ? ? ? ? (14) 而兩個相機(jī)之間的位置關(guān)系可以通過空間轉(zhuǎn)換矩陣 Mlr 表示:
? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (15) 對于空間中的一點(diǎn) P,成像于兩個相機(jī)的點(diǎn)的對應(yīng)關(guān)系可以用下面的等式表示: 1 2 3 4 5 6 7 8 9 = 1 1 l l r r r r r x l l l r r r r r y z zX f X f r f r f r f t zY f Y f r f r f r f t z r r r t ?? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (16) 于是,空間中的三維點(diǎn)可以通過上式解出: 7 8 9 1 2 3 7 8 9 4 5 6 ( ) ( ) ( ) ( ) ( ) ( ) l l l l l r x r z r l l l r l l l l r y r z r l l l r l l l zX x f zY y f f f t X t z X r X r Y f r f r X r Y f r f f t Y t Y r X r Y f r f r X r Y f r ????? ? ? ? ???? ? ? ? ? (17)
2.6 器械尖點(diǎn)世界坐標(biāo)確定
本文使用的器械經(jīng)過精密加工,器械尖點(diǎn)在器械坐標(biāo)系中的坐標(biāo) Pins (0,214.14, 13.77) ? 已知。如圖 8-b 所示,在器械坐標(biāo)系中, A1 為原點(diǎn), AA1 2 方向?yàn)?x 軸正方向, AA1 4 方向?yàn)?y 軸正方向,z 軸通過右手法則得出。經(jīng)過立體匹配, A1 的空間坐標(biāo) A1 P 則為世界坐標(biāo)系與器械坐標(biāo)系之間的平移矩陣 T ,旋轉(zhuǎn)矩陣可通過式(18)、(19)、(20)得出: 2 1 2 1 A A x A A P P n P P ??? (18) 4 1 4 1 A A y A A P P n P P ??? (19)n n n ? ? (20) 世界坐標(biāo)系與器械坐標(biāo)系的旋轉(zhuǎn)矩陣 R ,可以表示為 , , R n n n x y z ? ? ? ? ? 。則器械尖點(diǎn)在世界坐標(biāo)系中的坐標(biāo) Pcl 可以表示為: P R P T cl ins = ? (21)
3 實(shí)驗(yàn)驗(yàn)證
為了能夠更好的測試該系統(tǒng),我們進(jìn)行了四組實(shí)驗(yàn),測試器械識別算法的準(zhǔn)確性和魯棒性,并對器械進(jìn)行了穩(wěn)定性、定位精度、動態(tài)跟蹤等測試。
首先,器械識別實(shí)驗(yàn)用于驗(yàn)證算法的準(zhǔn)確性和魯棒性,通過無規(guī)則擺放多組器械并且設(shè)置干擾進(jìn)行識別得出結(jié)論;其次,穩(wěn)定性測試用于驗(yàn)證系統(tǒng)的穩(wěn)定性,這是通過以尖點(diǎn)為圓心旋轉(zhuǎn)而重復(fù)測量尖端坐標(biāo)來完成的;接下來,應(yīng)用三維坐標(biāo)儀來測量系統(tǒng)的靜態(tài)定位精度,這是通過測量由尖端坐標(biāo)跟隨坐標(biāo)儀移動的前后距離差值計算得出的;最后,通過不斷改變器械空間位置,并實(shí)時計算兩個標(biāo)記之間的距離,與真值進(jìn)行比較,用于評估該系統(tǒng)動態(tài)跟蹤精度。本文中,平均絕對誤差(MAE)表示程度測量值與真實(shí)值的偏差,而均方根誤差(RMSE)用于評估定位精度。它們的表達(dá)式可以表示如下:? ? 2 1 n i ref i X X RMSE n ???? (22) 1 1 n i ref i MAE X X n ?? ? ? (23)
3.1標(biāo)定結(jié)果
本文使用 Matlab 相機(jī)標(biāo)定箱對相機(jī)進(jìn)行標(biāo)定,為了提高標(biāo)定的精確性,首先,分別對左右相機(jī)進(jìn)行單目標(biāo)定,然后再使用單目標(biāo)定參數(shù)作為初始參數(shù)進(jìn)行雙目標(biāo)定,最終標(biāo)定出左右相機(jī)的內(nèi)參矩陣 , A A l r ,畸變系數(shù) , D Dl r ,右相機(jī)相對左相機(jī)的旋轉(zhuǎn)矩陣 Rrl ,平移矩陣 Trl ,結(jié)果如下: 1751.783 0.3731 641.047 0 1749.971 495.806 0 0 1.0 A A l r ? ?? ?? ? ? ?? ? ? ? (24) 0.998 0.016 0.056 0.013 0.998 0.043 0.057 0.042 0.997 Rrl ? ? ? ?? ?? ? ? ?? ? ? ? (25) Trl ? ?429.585 4.763 2.711? (26) D e l ? ? ? ? ? ? ? 0.094 0.34 5.412 4 0.007 0.05? (27) D e e r ? ? ? ? ? ? ? ? 0.054 1.197 7.05 4 7.7 4 10.305? (28)
3.2器械識別驗(yàn)證
首先,系統(tǒng)對表 3中的任意兩種器械識別,驗(yàn)證算法是否可以識別不同種類的器械。實(shí)驗(yàn)時將兩個器械無規(guī)則擺放,但沒有相互遮擋,共采集了 100張圖片。結(jié)果表明:只有 4次沒有識別成功,成功率為 96%。未識別成功的主要原因是兩個器械重合度過高,實(shí)際應(yīng)用不會出現(xiàn)這種情況。識別成功情況如圖9-a所示。
為了驗(yàn)證器械識別算法的魯棒性,還設(shè)計了干擾實(shí)驗(yàn),對需識別器械添加干擾,本實(shí)驗(yàn)干擾設(shè)置為 4個無規(guī)則擺放的被動標(biāo)記球,如圖 9-b 所示。在存在干擾的情況下識別器械,共采集了 100張圖片。結(jié)果表明:只有5次沒有成功識別,成功率為95% 。
圖 9-a 中紅色連線組成的器械代表 A 類器械,藍(lán)色代表 C類器械。圖 9-b中綠色連線組成的器械代表 B類器械。
本次實(shí)驗(yàn)還測量了在有干擾和沒有干擾標(biāo)記的器械識別所需的時間,如表 4 所示。結(jié)果表明:識別器械時間花費(fèi)很少,并且不會隨著器械的數(shù)量增加而顯著增加。
3.3 穩(wěn)定性驗(yàn)證
光學(xué)跟蹤系統(tǒng)工作時,系統(tǒng)必須具有足夠的穩(wěn)定性。如果器械尖端保持靜止,由于捕獲環(huán)境的變化和算法的穩(wěn)定性,計算的尖端世界坐標(biāo)可能會發(fā)生變化。
為了測試系統(tǒng)的穩(wěn)定性,隨機(jī)選取8個不同的位置,使器械尖端在每個位置都保持靜止。對于每個位置, 采集100 組圖像。然后分別計算 X、Y 和 Z 方向的 RMSE,用于評估系統(tǒng)的穩(wěn)定性,結(jié)果如圖10所示。
由圖10可知,8個位置的X、Y和Z方向的平均RMSE 分別為0.039625、0.024625、0.1284 mm。Z方向的RMSE誤差大于其他兩個方向,但是誤差處于可接受范圍,可能由于器械加工誤差所致。
3.4定位精度驗(yàn)證
在定位精度驗(yàn)證實(shí)驗(yàn)中,將器械固定到三維坐標(biāo)儀上,在距離光心1.2 m、1.4 m、2 m三個位置及1.6 m、 1.8 m 水平偏離光軸、1.6m 垂直偏離光軸另外三組位置進(jìn)行測試。實(shí)驗(yàn)中器械將在三維坐標(biāo)儀上沿一個方向移動5 mm、10 mm、15 mm、20 mm,記錄尖點(diǎn)移動的距離如表5所示。
由表5可知,5 mm、10 mm、15 mm和20 mm的RMSE 分別為0.6195、0.9252、1.2160、1.1768 mm,MAE分別為 0.5528、0.7435、0.9411、0.9718 mm。表5中第4個位置誤差較大,對應(yīng)的是距離光心2 m處的實(shí)驗(yàn)結(jié)果,由第1、 3、5組位置數(shù)據(jù)可知,系統(tǒng)在1.2 m-1.6 m區(qū)間范圍內(nèi)靜態(tài)定位精度良好,但是隨著距離的增加,誤差會逐漸增大。實(shí)際使用時應(yīng)合理設(shè)置工作距離,盡量設(shè)置在1.2 m-1.6 m的范圍區(qū)間且在垂直方向不嚴(yán)重偏離光軸。由此可知,系統(tǒng)在1.2 m-1.6 m的范圍區(qū)間工作時,定位精度可達(dá)0.373 mm。
3.5動態(tài)跟蹤驗(yàn)證
在動態(tài)跟蹤實(shí)驗(yàn)中,我們在系統(tǒng)視場內(nèi)距離左右相機(jī)中心1.2 m至1.8 m的范圍內(nèi)隨機(jī)采集100組圖像,利用圖4所示器械中的三組距離D16、D14、D24驗(yàn)證,結(jié)果如表6所示。
由表6可知,三組距離在1.2 m至1.8 m的范圍內(nèi)RMSE 值較為接近。所有三種情況下的RMSE均小于0.53 mm,其中D24這組距離的最大誤差超過1 mm,產(chǎn)生此結(jié)果的原因可能是當(dāng)器械在系統(tǒng)的工作空間中移動時,標(biāo)記球位于不同的視角,標(biāo)記投影的變化可能會影響定位精度。在實(shí)際應(yīng)用中,應(yīng)避免出現(xiàn)嚴(yán)重偏離光軸的情況,這可以通過術(shù)前合理設(shè)置該系統(tǒng)中心光軸與器械的角度改善。
4 結(jié) 語
本文提出了一種基于雙目視覺原理的低成本、高精度的光學(xué)跟蹤系統(tǒng)。結(jié)合輪廓過濾算法,系統(tǒng)可以快速消除場景中非目標(biāo)輪廓干擾。自主設(shè)計的器械識別算法根據(jù)器械特有幾何特征對其正確識別并有序儲存器械上標(biāo)記球的像素坐標(biāo)序列。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)具有較高的穩(wěn)定性和準(zhǔn)確性,可為缺少經(jīng)驗(yàn)的外科醫(yī)生的術(shù)前培訓(xùn)帶來福音。但在實(shí)際應(yīng)用過程中,該系統(tǒng)仍有改進(jìn)的余地,首先,可以為器械選擇一種對近紅外光反射率比較低的材料,反射較高將影響標(biāo)記中心提取的精確度;其次,可以為系統(tǒng)匹配處理速度更高的并行處理模塊,這將有助于系統(tǒng)的實(shí)時性大大提高。目前,隨著對手術(shù)導(dǎo)航系統(tǒng)越來越精確的運(yùn)行要求,光學(xué)跟蹤系統(tǒng)的精度和穩(wěn)定性需要不斷提高。
論文指導(dǎo) >
SCI期刊推薦 >
論文常見問題 >
SCI常見問題 >