王 博,谷雪蓮,孫毅勇,周天鵬
(1.上海理工大學(xué)醫(yī)療器械與食品學(xué)院,上海 200093;2.上海微創(chuàng)電生理醫(yī)療科技股份有限公司,上海 201318)
快速性心律失常主要包括心房顫動(dòng)(房顫)、室上性心動(dòng)過速和室性心動(dòng)過速等[1]。快速性心律失常危害較大,若不及時(shí)治療將影響心臟泵血功能,誘發(fā)或使心功能不全加重,甚至導(dǎo)致心源性猝死[2]??焖傩孕穆墒С5陌l(fā)病率較高,在普通人群中室上性心動(dòng)過速的發(fā)病率約為0.225%[3],房顫的發(fā)病率約為1%[4],室性心動(dòng)過速的發(fā)病率約為0%~3%[5]。射頻消融術(shù)是目前治療快速性心律失常的一線臨床治療方案,自2010 年起我國射頻消融手術(shù)量持續(xù)迅猛增長(zhǎng),年增長(zhǎng)率為13.2%~17.5%,2018 年射頻消融手術(shù)量達(dá)15.16 萬[6]。然而,當(dāng)前部分快速性心律失常消融手術(shù)較為復(fù)雜,存在現(xiàn)有手術(shù)成功率待提高[7]、手術(shù)耗時(shí)較長(zhǎng)及臨床培訓(xùn)開展較困難等問題。造成這種現(xiàn)狀可能有如下原因:一是雖然當(dāng)今可以從電解剖圖系統(tǒng)獲取大量數(shù)據(jù),但是缺乏更加直觀的可視化技術(shù)來展現(xiàn)這些數(shù)據(jù);二是術(shù)者的視線需要在患者病灶部位和屏幕之間來回切換,存在手眼協(xié)調(diào)問題和深度信息缺乏問題[8]。增強(qiáng)現(xiàn)實(shí)(Augmented Reality,AR)領(lǐng)域中的頭戴式顯示設(shè)備(Head Mount Display,HMD)的出現(xiàn)使得以上問題有了解決方向,HMD 設(shè)備不僅可以更充分地可視化大量數(shù)據(jù),還具有虛實(shí)融合、3D 交互、手眼協(xié)調(diào)能力等優(yōu)勢(shì),這些不僅能增強(qiáng)用戶對(duì)周圍真實(shí)世界的感知,而且完成三維跟蹤后無需在現(xiàn)實(shí)世界和屏幕之間來回切換,可以從根本上解決上述問題[9]。
現(xiàn)階段AR 領(lǐng)域常見的消費(fèi)級(jí)HMD 設(shè)備包括Meta2、HoloLens2 等,其中HoloLens2 空間映射率更大,SLAM 更加穩(wěn)定,對(duì)環(huán)境的理解更加精準(zhǔn)和快速,處于當(dāng)前HMD 設(shè)備發(fā)展的最前沿,其因可以使患者和醫(yī)學(xué)影像數(shù)據(jù)潛在地結(jié)合,繼而成為AR 結(jié)合手術(shù)導(dǎo)航討論和研究的重點(diǎn)[10],HoloLens2目前被認(rèn)為是最適合手術(shù)導(dǎo)航的AR 設(shè)備之一[11]。
近年來,消費(fèi)級(jí)HMD 設(shè)備的出現(xiàn)推動(dòng)著AR 技術(shù)快速發(fā)展,使得AR 在醫(yī)療領(lǐng)域有了大量應(yīng)用[12],但是現(xiàn)階段AR 在快速性心律失常消融手術(shù)方面的應(yīng)用研究還相當(dāng)少,尚處于起步階段。目前,基于AR 或虛擬現(xiàn)實(shí)(Virtual Reality,VR)的快速性心律失常消融手術(shù)方面已有一定研究。Loewe 等[13]提出FAMAS-VR 虛擬現(xiàn)實(shí)系統(tǒng),其允許在虛擬現(xiàn)實(shí)環(huán)境中與單個(gè)患者模型進(jìn)行實(shí)時(shí)交互,以模擬放置不同位置消融灶的方式確定消融病變最佳位置,在模擬環(huán)境中可以評(píng)估不同的消融策略,有利于最終確定較為合適的手術(shù)方案。該系統(tǒng)使得操作者易于獲取心律失常消融手術(shù)的經(jīng)驗(yàn)和技能,可為醫(yī)生提供理想的培訓(xùn)環(huán)境,但是由于提供的是完全虛擬的環(huán)境,醫(yī)生無法在手術(shù)中同時(shí)觀察到虛擬模型和真實(shí)器官的情況,因此只適合術(shù)前規(guī)劃。Avari 等[14]提出增強(qiáng)電生理學(xué)交互系統(tǒng)(ēLVIS),該系統(tǒng)使用HoloLens2 顯示實(shí)時(shí)心臟解剖圖,實(shí)現(xiàn)了多臺(tái)Holo-Lens 的數(shù)據(jù)共享和交互,且可無菌地通過手勢(shì)控制導(dǎo)管定位。該系統(tǒng)改善了醫(yī)療數(shù)據(jù)的可視化和模型交互,將增進(jìn)對(duì)患者特定心臟解剖結(jié)構(gòu)的了解,但是未實(shí)現(xiàn)虛實(shí)配準(zhǔn)。該研究存在問題如下:一是當(dāng)前數(shù)據(jù)傳輸方案的延遲較大;二是視線需要在患者病灶部位和屏幕之間來回切換,導(dǎo)致手眼協(xié)調(diào)問題。
基于HoloLens2 的快速心律失常消融術(shù)的手術(shù)導(dǎo)航系統(tǒng),通過ZeroMQ 中間件實(shí)現(xiàn)大量數(shù)據(jù)實(shí)時(shí)傳輸和虛擬模型顯示,通過磁定位和Vuforia 的混合跟蹤技術(shù)實(shí)現(xiàn)虛實(shí)配準(zhǔn)。目標(biāo)一是保證數(shù)據(jù)傳輸?shù)目煽啃?、低延遲性以及模型顯示的流暢性、穩(wěn)定性;目標(biāo)二是實(shí)時(shí)可視化心腔的解剖結(jié)構(gòu),且實(shí)現(xiàn)模型的3D 交互,方便術(shù)者和培訓(xùn)者更好地了解心腔的解剖結(jié)構(gòu);目標(biāo)三是高精度的虛實(shí)配準(zhǔn),解決手術(shù)中醫(yī)生視線需在屏幕和病灶區(qū)域不斷切換的問題。
本系統(tǒng)主要由3部分組成:基于ZeroMQ 的實(shí)時(shí)數(shù)據(jù)傳輸、模型的可視化顯示和3D 交互、基于磁定位和Vuforia 混合跟蹤技術(shù)的三維跟蹤注冊(cè),如圖1所示。
Fig.1 Overview of workflow of surgical navigation system for tachyarrhythmic ablation based on HoloLens2圖1 基于HoloLens2的快速心律失常消融術(shù)的手術(shù)導(dǎo)航系統(tǒng)工作流程
基于ZeroMQ 的實(shí)時(shí)數(shù)據(jù)傳輸:手術(shù)過程中,置于手術(shù)床下方的磁場(chǎng)發(fā)生器,產(chǎn)生一定強(qiáng)度的磁場(chǎng)將患者心臟包含在內(nèi),含有磁場(chǎng)感應(yīng)器的體表參考電極貼片為該磁場(chǎng)的原點(diǎn),其置于患者背部,當(dāng)含有磁場(chǎng)傳感器的導(dǎo)管進(jìn)入患者心腔時(shí),會(huì)在心腔內(nèi)壁不同位置進(jìn)行標(biāo)測(cè),將導(dǎo)管頂端的三維位置和方向信息傳輸?shù)接?jì)算機(jī)工作站[15]。將導(dǎo)管獲取的原始數(shù)據(jù)信息封裝為自定義ZeroMQ 二進(jìn)制消息格式,在計(jì)算機(jī)工作站使用ZeroMQ 創(chuàng)建Socket 服務(wù)器端,在Unity 編輯器中(HoloLens2)使用ZeroMQ 創(chuàng)建Socket 客戶端,使用ZeroMQ 的Pub/Sub 方式異步并行傳輸方式,將自定義ZeroMQ 二進(jìn)制消息從服務(wù)器端傳輸至客戶端。
模型的可視化顯示和3D 交互:客戶端根據(jù)規(guī)則將自定義ZeroMQ 二進(jìn)制消息格式解碼,在Unity 中構(gòu)建模型可視化的程序安裝至HoloLens2,在HoloLens2 運(yùn)行可以實(shí)時(shí)顯示的導(dǎo)管模型、導(dǎo)管位置及方向信息,然后移動(dòng)導(dǎo)管,跟隨導(dǎo)管移動(dòng)軌跡實(shí)時(shí)構(gòu)建心腔模型,通過鍵盤輸入或手勢(shì)操作縮放和移動(dòng)虛擬模型以及切換線框模式。
基于磁定位和Vuforia 混合跟蹤技術(shù)的三維跟蹤注冊(cè):制作Vuforia 識(shí)別圖,識(shí)別圖的中心貼有磁場(chǎng)傳感器,使得識(shí)別圖同時(shí)擁有磁場(chǎng)坐標(biāo)系和HoloLens2 坐標(biāo)系(Unity 坐標(biāo)系)的坐標(biāo)位置,通過矩陣變換,建立兩個(gè)坐標(biāo)系的關(guān)系,在Unity 編輯器中使用Vuforia 插件實(shí)現(xiàn)三維跟蹤注冊(cè),將虛擬心腔模型和導(dǎo)管投影至患者的真實(shí)部位,完成實(shí)時(shí)的跟蹤導(dǎo)航。臨床醫(yī)生可以實(shí)時(shí)觀察導(dǎo)管在所構(gòu)建心腔的位置,后續(xù)可以分析電解剖圖的激動(dòng)傳導(dǎo)順序圖、電壓圖等特征,從而為找到患者心臟病灶位置、選擇手術(shù)消融路徑、實(shí)施消融、評(píng)估消融后的病灶治療情況等提供數(shù)據(jù)和圖像幫助。
ZeroMQ 是一個(gè)基于消息隊(duì)列的多線程網(wǎng)絡(luò)庫,號(hào)稱最快的消息隊(duì)列系統(tǒng),因其開源、高性能、跨平臺(tái)而被廣泛應(yīng)用[16]。射頻消融手術(shù)中數(shù)據(jù)的采集主要依靠磁傳感器,采集的數(shù)據(jù)在HoloLens2 上進(jìn)行顯示,需依靠磁傳感器和HoloLens2 之間的網(wǎng)絡(luò)通訊傳輸,這點(diǎn)類似于物聯(lián)網(wǎng)(The Internet of Things,loT),廣義上loT 是各種傳感器設(shè)備與互聯(lián)網(wǎng)結(jié)合形成的巨大網(wǎng)絡(luò)[17]。而ZeroMQ 相對(duì)于其他消息中間件在loT 系統(tǒng)中有高吞吐量/低延遲的表現(xiàn)[18],滿足手術(shù)導(dǎo)航系統(tǒng)在數(shù)據(jù)傳輸性能方面的要求,前綴匹配功能使得每條消息可以包含不同類型的數(shù)據(jù)(包括導(dǎo)管、心腔的頂點(diǎn)數(shù)據(jù)和索引值以及鍵盤輸入數(shù)據(jù)等),雖然當(dāng)前常見手術(shù)導(dǎo)航系統(tǒng)的數(shù)據(jù)傳輸方案尚未使用ZeroMQ,但根據(jù)以上分析,在快速心律失常射頻消融手術(shù)中使用ZeroMQ實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)傳輸?shù)姆桨冈诶碚撋鲜强尚械摹?/p>
基于ZeroMQ 的實(shí)時(shí)數(shù)據(jù)傳輸實(shí)現(xiàn)包括3 部分:環(huán)境配置、數(shù)據(jù)預(yù)處理以及數(shù)據(jù)傳輸。
環(huán)境配置:HoloLens2 應(yīng)用程序在Unity 中運(yùn)行,需要在“Universal Windows Platform”(UWP)上進(jìn)行設(shè)置,項(xiàng)目開啟“Windows Mixed Reality”和“InternetClient”,“Internet-ClientServer”,“Microphone”,“PrivateNetworkClientServer”,“SpatialPerception”功能,完成項(xiàng)目的環(huán)境配置。
數(shù)據(jù)預(yù)處理:設(shè)置不同前綴將采集的原始數(shù)據(jù)轉(zhuǎn)化為自定義ZeroMQ 消息格式(如表1所示),使每條消息包含不同類型的數(shù)據(jù),方便后續(xù)數(shù)據(jù)處理和模型可視化顯示。ASCII 碼格式的數(shù)據(jù)傳輸效率不高,將自定義ZeroMQ 消息數(shù)據(jù)轉(zhuǎn)為二進(jìn)制消息數(shù)據(jù),提高數(shù)據(jù)傳輸效率,完成項(xiàng)目數(shù)據(jù)預(yù)處理。
數(shù)據(jù)傳輸:HoloLens2 和計(jì)算機(jī)工作站連接到同一Wi-Fi 網(wǎng)絡(luò),在HoloLens2 應(yīng)用程序(Unity 編輯器)中使用ZeroMQ 構(gòu)建Socket 客戶端套接字,在計(jì)算機(jī)工作站程序中使用ZeroMQ 構(gòu)建Socket 服務(wù)端套接字。如圖2 所示,當(dāng)HoloLens2 應(yīng)用程序(Unity 編輯器)運(yùn)行時(shí),客戶端開始偵聽服務(wù)端IP 地址,該IP 地址設(shè)置為計(jì)算機(jī)工作站的IP 地址,若計(jì)算機(jī)工作站的服務(wù)器端開啟,此時(shí)客戶端偵聽到服務(wù)端的IP,對(duì)應(yīng)的端口號(hào)將和服務(wù)端對(duì)應(yīng)的端口號(hào)進(jìn)行綁定,使用ZeroMQ 的Pub/Sub 方式異步并行傳輸自定義格式的消息數(shù)據(jù),3 個(gè)端口的消息數(shù)據(jù)分別為:端口一(9002)傳輸導(dǎo)管和心腔的Mesh 數(shù)據(jù)(包括頂點(diǎn)數(shù)據(jù)、索引值等);端口二(9002)傳輸導(dǎo)管的位置和方向數(shù)據(jù);端口三傳輸鍵盤輸入的數(shù)據(jù)。
Table 1 Custom ZeroMQ binary message format表1 自定義ZeroMQ二進(jìn)制消息格式
如圖2 所示,HoloLens2 應(yīng)用程序(Unity 編輯器)通過客戶端接收到數(shù)據(jù),并通過前綴匹配分別解碼數(shù)據(jù),最后在HoloLens2 中構(gòu)建模型可視化顯示程序。服務(wù)器端默認(rèn)On 鍵關(guān)閉,在端口一,接收到前綴為“v”的數(shù)據(jù),根據(jù)表1說明對(duì)消息進(jìn)行解碼,獲取導(dǎo)管Mesh 的頂點(diǎn)數(shù)據(jù),接收到前綴為“f”的數(shù)據(jù),根據(jù)表1 說明對(duì)消息進(jìn)行解碼,獲取導(dǎo)管Mesh 的索引值數(shù)據(jù)。在服務(wù)器端點(diǎn)擊On 鍵,每次導(dǎo)管移動(dòng)時(shí),傳輸?shù)臄?shù)據(jù)將會(huì)更新,此時(shí)發(fā)出前綴為“v”和“f”的數(shù)據(jù)同時(shí)包含導(dǎo)管Mesh 和心腔Mesh 的頂點(diǎn)和索引值數(shù)據(jù),接收到前綴為“g”的數(shù)據(jù),根據(jù)表1 說明對(duì)消息進(jìn)行解碼,同時(shí)根據(jù)解碼后的“v”、“f”和“g”數(shù)據(jù),客戶端實(shí)現(xiàn)沿著導(dǎo)管軌跡實(shí)時(shí)構(gòu)建心腔模型的效果。在端口二,接收到前綴為“s”的消息數(shù)據(jù),根據(jù)表1 說明對(duì)消息進(jìn)行解碼,客戶端實(shí)時(shí)顯示導(dǎo)管的位置信息和方向信息。端口三,當(dāng)服務(wù)器端通過鍵盤輸入“I”(放大)、“O”(縮?。?、“W”(線框模式),客戶端接收前綴為“k”的消息數(shù)據(jù),通過鍵盤可以縮放模型和切換線框模式。在Unity 編輯器中導(dǎo)入官方的MRTK 工具包,在模型的Object 上添加自帶的NearInteractionGrabbable.cs 和MainipulationHandler.cs 腳 本,將Host Transform 指定為模型的Object,實(shí)現(xiàn)手勢(shì)移動(dòng)和縮放模型。
三維跟蹤注冊(cè)指AR 設(shè)備對(duì)現(xiàn)實(shí)場(chǎng)景中圖像或物體進(jìn)行定位和跟蹤。三維跟蹤注冊(cè)包括基于計(jì)算機(jī)視覺的跟蹤注冊(cè)技術(shù)、基于硬件傳感器的跟蹤注冊(cè)技術(shù)以及混合跟蹤注冊(cè)技術(shù)[19]。HoloLens 2 受限于硬件處理器,其計(jì)算處理能力不強(qiáng)[20],而基于標(biāo)志物的三維跟蹤注冊(cè)對(duì)硬件處理器要求不高,具有較高的魯棒性、較好的實(shí)時(shí)性和準(zhǔn)確性,適用于計(jì)算處理能力較差的PC 端和移動(dòng)終端。當(dāng)前,基于標(biāo)志物的三維跟蹤注冊(cè)的主要解決方案包括:ARTool-Kit、Wikitude、Vuforia 和Metaio 等[21]。Vuforia 成熟度較高,對(duì)物體的追蹤和識(shí)別效率最高,也較穩(wěn)定,支持的平臺(tái)更多,且對(duì)HoloLens 2有專有的適配[22]。
Fig.2 Real-time data transfer schematic based on ZeroMQ圖2 基于ZeroMQ的實(shí)時(shí)數(shù)據(jù)傳輸示意圖
基于磁定位和Vuforia 的混合跟蹤技術(shù)三維跟蹤注冊(cè)的實(shí)現(xiàn)主要包括兩個(gè)部分:相關(guān)坐標(biāo)系(磁坐標(biāo)系、Unity坐標(biāo)系、Hololens2 坐標(biāo)系)之間的矩陣變換、基于Vuforia的三維跟蹤注冊(cè)。
相關(guān)坐標(biāo)系之間的矩陣變換如圖3 所示,手術(shù)床下方的磁場(chǎng)發(fā)生器會(huì)產(chǎn)生一定強(qiáng)度的磁場(chǎng),該磁場(chǎng)以體表參考電極的位置為坐標(biāo)零點(diǎn)A0,計(jì)算機(jī)工作站可以采集磁場(chǎng)內(nèi)所有磁傳感器的位置信息。在Vuforia 識(shí)別圖M 的中心位置固定磁傳感器S,將S 置于磁場(chǎng)內(nèi),計(jì)算機(jī)工作站將會(huì)實(shí)時(shí)獲取S 在磁坐標(biāo)系{C}中的坐標(biāo)S(xc,yc,zc),Vuforia 的標(biāo)識(shí)圖同時(shí)有基于兩個(gè)參考系的坐標(biāo):基于{C}的坐標(biāo)M(xc,yc,zc)、基于HoloLens2 的坐標(biāo)系{H}的坐標(biāo)M(xm,ym,zm)。T1和T2分別為M 到A0的變換矩陣、{C}到{H}的變換矩陣,T1、T2均已知。計(jì)算機(jī)工作站采集的原始數(shù)據(jù)基于磁坐標(biāo)系M(xm,ym,zm),在HoloLens2 中顯示的虛擬模型數(shù)據(jù)基于{H}為V(xh,yh,zh),原始數(shù)據(jù)通過ZeroMQ傳輸至HoloLens2,HoloLens2 將原始數(shù)據(jù)經(jīng)過T2變換矩陣后進(jìn)行顯示,當(dāng)HoloLens2 檢測(cè)到Vuforia 識(shí)別圖時(shí),虛擬模型將以M 為世界坐標(biāo)的中心進(jìn)行顯示,虛擬模型進(jìn)行T1矩陣變換,虛擬模型將以A0為世界坐標(biāo)的中心進(jìn)行顯示,{C}和{H}實(shí)現(xiàn)對(duì)齊。
Fig.3 Conversion of 3D registration coordinate圖3 三維注冊(cè)坐標(biāo)轉(zhuǎn)換
基于Vuforia 的三維跟蹤注冊(cè)如圖4 所示,在Unity 中導(dǎo)入最新的Vuforia SDK,制作識(shí)別圖,將識(shí)別圖上傳至Vuforia 官網(wǎng)的云端識(shí)別庫,生成UnityPackage 資源包,將資源包導(dǎo)入U(xiǎn)nity。在Unity 中對(duì)Vuforia 插件進(jìn)行相關(guān)配置,創(chuàng)建ImageTarget,掛載導(dǎo)管和心臟模型的Object,生成應(yīng)用程序安裝至HoloLens2。Target Manager 中的image 檢測(cè)出的特征點(diǎn)保存在數(shù)據(jù)庫中,HoloLens2 運(yùn)行應(yīng)用程序,主攝像頭實(shí)時(shí)檢測(cè)真實(shí)圖像中的特征點(diǎn)與模板圖片特征點(diǎn)數(shù)據(jù)進(jìn)行匹配,若匹配就將則將虛擬模型顯示在預(yù)設(shè)位置,實(shí)現(xiàn)三維跟蹤注冊(cè)。
Fig.4 Implementation process of 3D registration method based on Vuforia圖4 基于Vuforia的三維跟蹤注冊(cè)方法實(shí)現(xiàn)流程
1.5.1 實(shí)驗(yàn)環(huán)境
實(shí)驗(yàn)環(huán)境使用Columbus 心臟電生理三維標(biāo)測(cè)系統(tǒng)的計(jì)算機(jī)工作站作為服務(wù)器端,其主要配置為CPU:Intel(R)Xeon(R)W-2123 CPU@3.60GHZ、GPU:NVIDIA Ge-Force GTX 1060、網(wǎng)卡:650Mbps、ZeroMQ 版本:4.3.1。HoloLens2 作為客戶端,其主要配置CPU:Qualcomm Snapdragon 850、GPU:第二代自定義構(gòu)建的全息處理單元、WLAN:802.11ac 2x2、Unity 版本:2019.4.4f1、Vuforia 版本:2.40。精度測(cè)量設(shè)備:基恩士顯微鏡KEYENCE VHX-S90BE。
1.5.2 顯示幀率測(cè)試
虛擬模型的顯示幀率是衡量虛擬圖像顯示流暢性和穩(wěn)定性的重要指標(biāo)之一,因此對(duì)虛擬模型的顯示幀率進(jìn)行測(cè)試。
當(dāng)心腔模型的三角面數(shù)量高于12k 時(shí),可以顯示較完整的心腔解剖結(jié)構(gòu),因此記錄心腔模型的三角面數(shù)量增大到20k 的過程具有臨床參考價(jià)值,記錄顯示幀率的實(shí)時(shí)變化,重復(fù)實(shí)驗(yàn)10次,求其平均值。
1.5.3 數(shù)據(jù)傳輸延遲測(cè)試
數(shù)據(jù)傳輸?shù)臅r(shí)延是衡量數(shù)據(jù)傳輸性能的重要指標(biāo)之一,因此對(duì)3個(gè)訂閱端接收消息的延遲情況進(jìn)行測(cè)試。
考慮到當(dāng)傳輸?shù)男那荒P偷娜敲鏀?shù)量增大時(shí),可能會(huì)影響傳輸?shù)难舆t,因此對(duì)于端口一,需要分傳輸導(dǎo)管數(shù)據(jù)和同時(shí)傳輸心腔數(shù)據(jù)以及導(dǎo)管數(shù)據(jù)這兩種情況。
端口一的測(cè)試方法:固定導(dǎo)管和移動(dòng)導(dǎo)管(服務(wù)器端開啟On 鍵)兩種情況,分別記錄每條消息發(fā)送和接收的時(shí)間差;端口二的測(cè)試方法:記錄每條消息發(fā)送和接收的時(shí)間差;端口三的測(cè)試方法:計(jì)算機(jī)工作站鍵盤分別輸入“I”(放大)、“O”(縮?。?、“W”(線框模式),記錄每次按鍵后發(fā)送的消息數(shù)和接收的時(shí)間差。以上端口測(cè)試均重復(fù)實(shí)驗(yàn)10次,求其平均值。
1.5.4 數(shù)據(jù)傳輸可靠性測(cè)試
數(shù)據(jù)傳輸?shù)膩G包率是保證數(shù)據(jù)傳輸可靠性的重要指標(biāo)之一,因此對(duì)3個(gè)訂閱端的數(shù)據(jù)丟包進(jìn)行測(cè)試。
端口一和端口二的測(cè)試方法:移動(dòng)導(dǎo)管(服務(wù)器端開啟On 鍵),實(shí)時(shí)記錄發(fā)送的消息數(shù)和接收的消息數(shù),分別記錄當(dāng)傳輸?shù)南⒘繛?00、600、900、1 200、1 500 時(shí),發(fā)送端的三角面數(shù)和接收端的三角面數(shù)。端口三的測(cè)試方法是,計(jì)算機(jī)工作站鍵盤分別輸入“I”(放大)、“O”(縮?。?、“W”(線框模式),記錄每次按鍵后發(fā)送的消息數(shù)和接收的消息數(shù)。以上端口測(cè)試均重復(fù)實(shí)驗(yàn)10次。
1.5.5 三維跟蹤注冊(cè)的精度測(cè)試
識(shí)別圖的位置和大小會(huì)影響HoloLens2 的位姿估計(jì),從而影響三維跟蹤注冊(cè)的準(zhǔn)確性[23-24]??紤]到磁場(chǎng)發(fā)生器的范圍有限,將識(shí)別圖如圖5(a)放置,各位置距離心腔模型的原點(diǎn)均為10cm,由于識(shí)別圖如果放置在位置4 會(huì)妨礙醫(yī)生的手術(shù)操作,將有很大的安全隱患,因此剔除該種情況。考慮到磁場(chǎng)大小有限和識(shí)別圖太大可能會(huì)遮擋外科醫(yī)生對(duì)手術(shù)部位的視野,因而將識(shí)別圖的大小設(shè)置為4cm2、8cm2、12cm2。相機(jī)到圖像識(shí)別圖的距離和角度也會(huì)影響HoloLens2 的位姿估計(jì)[25],因此結(jié)合臨床醫(yī)生在手術(shù)中可能的運(yùn)動(dòng)范圍,確定距離和角度,將HoloLens2 距離識(shí)別圖的距離分為40cm、60cm 和80cm,觀察角度分為0°、45°、90°3 種情況。最后,為了更全面地了解實(shí)際誤差,還需要模擬臨床醫(yī)生在手術(shù)中的操作,使用機(jī)械臂將操作導(dǎo)管的速度分為0、3cm/s、6cm/s 3 種情況,導(dǎo)管以預(yù)置速度沿著X 軸和Z軸、Y 軸和Z軸運(yùn)動(dòng),方便測(cè)量動(dòng)態(tài)誤差。
為了定量地分析識(shí)別圖位置、識(shí)別圖大小、觀察角度、觀察距離和導(dǎo)管移動(dòng)速度5 個(gè)因素對(duì)誤差的影響,本文選擇正交實(shí)驗(yàn)設(shè)計(jì)方案進(jìn)行研究。因素水平表如表2 所示,本次實(shí)驗(yàn)按表3的實(shí)驗(yàn)方案完成實(shí)驗(yàn),實(shí)驗(yàn)場(chǎng)景如圖5所示。
測(cè)量工具:將A4紙固定在桌面,A4紙每個(gè)間距格子的大小為1mm*1mm,拍照記錄,測(cè)量虛擬導(dǎo)管和真實(shí)導(dǎo)管的尖端以記錄精度((X 軸向誤差+Y 軸向誤差+Z 軸向誤差)/3),每個(gè)方案重復(fù)10次,計(jì)算精度的平均值。
心腔模型的三角面數(shù)量增大到15k 的過程中,虛擬模型顯示幀率主要分布在50~60FPS,占總顯示幀率的0.78,其中占比最高的顯示幀率是57FPS(占比0.12),如圖6(a)所示。當(dāng)心腔模型的三角面數(shù)量為5k、10k、15k 時(shí),分布在50~60FPS 的顯示幀率分別占總顯示幀率的0.79、0.77、0.78,而占比最高的顯示幀率分別為58FPS(占比0.13)、57FPS(占比0.11)、56FPS(占比0.11),當(dāng)心腔模型的三角面數(shù)量增加至20k 左右后,顯示幀率會(huì)顯著下降,分布在50~60FPS 的顯示幀率僅占總顯示幀率的0.1,而占比最高的顯示幀率為43FPS(占比0.14),如圖6(b)所示。
Table 2 Factor level表2 因素水平
Table 3 Orthogonal experimental design表3 正交實(shí)驗(yàn)方案
Fig.5 Experimental setup圖5 實(shí)驗(yàn)裝置
Fig.6 Frame rate during observation圖6 觀察期間顯示幀率情況
觀察期間數(shù)據(jù)傳輸延遲的平均值和標(biāo)準(zhǔn)差如表4 所示。當(dāng)端口一僅傳輸導(dǎo)管數(shù)據(jù)時(shí),傳輸延遲的區(qū)間在0.17~0.44ms,其中最高的傳輸延遲為0.433ms,傳輸延遲的平均值為0.216ms,傳輸延遲的標(biāo)準(zhǔn)差為0.028ms,如圖7(a)所示。當(dāng)端口一同時(shí)傳輸導(dǎo)管數(shù)據(jù)和心腔模型數(shù)據(jù)時(shí),傳輸延遲的區(qū)間在0.32~0.99ms,當(dāng)心腔三角面數(shù)量為14k 時(shí)延遲最大(0.99ms),如圖7(d)所示。端口二傳輸延遲的區(qū)間在0.17~0.22ms,傳輸延遲的平均值為0.186ms,傳輸延遲的標(biāo)準(zhǔn)差為0.015ms,如圖7(b)所示。針對(duì)端口三,傳輸延時(shí)區(qū)間在0.000 1~0.000 7ms,傳輸延遲的標(biāo)準(zhǔn)差為7.78e-5ms,如圖7(c)所示。
Fig.7 Data transmission delay during observation圖7 觀察期間數(shù)據(jù)傳輸延遲情況
Table 4 Mean and standard deviation of data transmission delays during the observation表4 觀察期間數(shù)據(jù)傳輸延遲的平均值和標(biāo)準(zhǔn)差
如圖8(a)和(b)所示,服務(wù)器端的心腔模型數(shù)據(jù)發(fā)送和客戶端的心腔模型數(shù)據(jù)接收的實(shí)時(shí)曲線趨勢(shì)相同,如圖8(c)所示,分別取傳輸?shù)南⒘繛?00、600、900、1 200、1 500 時(shí),服務(wù)器端發(fā)送的三角面數(shù)和客戶端接收的三角面數(shù)是相同的,分別為50 688、1 341 800、3 703 508、7 005 256、10 000 000。
利用多因素方差分析研究識(shí)別圖位置、識(shí)別圖大小、觀察角度、觀察距離和導(dǎo)管移動(dòng)速度共5 項(xiàng)對(duì)于誤差的差異關(guān)系,如表5 所示。模型R 平方值為0.994,意味著識(shí)別圖位置、觀察角度、觀察距離和導(dǎo)管移動(dòng)速度可以解釋誤差的99.4%的產(chǎn)生原因。
分析可知,識(shí)別圖大小、觀察距離會(huì)對(duì)誤差產(chǎn)生顯著性差異關(guān)系(p<0.05),影響因素的主次關(guān)系為B>D>C>A>E。從表3 可知,實(shí)驗(yàn)誤差范圍為1.17~4.52mm。從圖9(a)可知各影響因素不同水平下的誤差,影響程度最大的影響因素是識(shí)別圖大小,誤差變化量為2.36mm,影響最小的影響因素為導(dǎo)管移動(dòng)速度,誤差變化量為0.10mm,當(dāng)實(shí)驗(yàn)方案是A1B3C1D3E2時(shí),誤差最小。
Table 5 Analysis of variance表5 方差分析
針對(duì)該手術(shù)導(dǎo)航系統(tǒng)的可用性問題,本文從臨床手術(shù)角度出發(fā),分析影響因素主要在模型顯示效果、數(shù)據(jù)傳輸性能和三維跟蹤注冊(cè)精度3 個(gè)方面。模型顯示效果主要體現(xiàn)在顯示的流暢性和穩(wěn)定性上,數(shù)據(jù)傳輸?shù)男阅苤饕w現(xiàn)在延遲性和可靠性上,而三維跟蹤注冊(cè)的精度不僅受到三維注冊(cè)方法的影響,還應(yīng)該考慮到臨床醫(yī)生的手術(shù)操作行為,將觀察距離和觀察角度兩個(gè)方面納入討論范圍,最大限度還原實(shí)際手術(shù)場(chǎng)景。
(1)模型顯示效果。模擬手術(shù)實(shí)際場(chǎng)景,實(shí)時(shí)構(gòu)建心腔模型的三角面數(shù)量增大到15k 的過程中,虛擬模型的顯示幀率基本處于50FPS 以上,顯示幀率變化較小且穩(wěn)定,而隨著心腔模型的三角面數(shù)的增加,顯示幀率占比情況基本不受影響,因而在完整的手術(shù)過程中,虛擬模型的顯示較為穩(wěn)定流暢且不受數(shù)據(jù)量大小的影響。但是,當(dāng)三角面數(shù)量增大至20k 時(shí)顯示幀率會(huì)顯著下降,虛擬模型的顯示幀率基本處于50FPS 以下,這應(yīng)該是受HoloLens2 的處理器性能限制所致。
Fig.8 Reliability of data transmission during observation圖8 觀察期間數(shù)據(jù)傳輸可靠性情況
Fig.9 Experimental results圖9 實(shí)驗(yàn)結(jié)果
(2)數(shù)據(jù)傳輸性能。針對(duì)數(shù)據(jù)傳輸延遲,端口一:傳輸?shù)难舆t會(huì)隨著心腔模型三角面數(shù)的增加而增大,但總體小于1ms;端口二:數(shù)據(jù)傳輸延遲波動(dòng)較小,整體維持在0.2ms左右;端口三,當(dāng)鍵盤輸入數(shù)據(jù)時(shí),發(fā)生數(shù)據(jù)傳輸,傳輸延遲波動(dòng)較小,整體小于0.8us。綜上所述,雖然端口一數(shù)據(jù)量的增大會(huì)導(dǎo)致傳輸延遲增大,但在實(shí)時(shí)構(gòu)建由14k 個(gè)三角面組成的心腔模型時(shí),延遲小于1ms,仍然達(dá)到實(shí)際手術(shù)需求,因而端口一、端口二、端口三的數(shù)據(jù)傳輸均滿足要求。針對(duì)數(shù)據(jù)傳輸?shù)目煽啃?,從服?wù)器端和客戶端心腔模型三角面數(shù)量的實(shí)時(shí)變化曲線,以及采樣某消息條數(shù)時(shí)刻服務(wù)器端和客戶端心腔模型三角面數(shù)量可知,該數(shù)據(jù)傳輸方案實(shí)現(xiàn)了消息發(fā)送與接收不丟包,能夠保證數(shù)據(jù)傳輸可靠性。
(3)三維跟蹤注冊(cè)精度。結(jié)合臨床手術(shù)的實(shí)際場(chǎng)景,確定了誤差的主要影響因素為識(shí)別圖大小、觀察的距離,次要影響因素為觀測(cè)角度和識(shí)別圖位置,最小影響因素為導(dǎo)管運(yùn)動(dòng)速度,其中識(shí)別圖的大小和觀察距離都很大程度上會(huì)影響HoloLens2 對(duì)識(shí)別圖特征點(diǎn)的采集,識(shí)別圖過小或者觀察距離過大,都會(huì)導(dǎo)致HoloLens2 采集識(shí)別圖的特征點(diǎn)減少,從而使得識(shí)別精度下降。識(shí)別圖置于1 位置優(yōu)于2、3 位置,原因是識(shí)別圖放置在攝像機(jī)視圖截錐的中軸或以上,可以提高邊緣識(shí)別準(zhǔn)確性。雖然觀察角度在0~90°變化的影響略大于識(shí)別圖位置,但是要求佩戴Holo-Lens2 的外科醫(yī)生將頭部固定在預(yù)定靜態(tài)角度的方案并不合理,故可以暫不考慮該影響。此外,導(dǎo)管速度在0~6cm/s范圍變化對(duì)誤差影響最小,故該方案可以承受實(shí)際手術(shù)操作的移動(dòng)速度。最后,雖然根據(jù)實(shí)驗(yàn)結(jié)果分析得到,觀察距離越近,識(shí)別圖越大,誤差就會(huì)越小,但是無限追求更近的距離和更大的識(shí)別圖,在手術(shù)中并不符合實(shí)際,主要有兩方面原因:①要求醫(yī)生長(zhǎng)時(shí)間低頭操作,容易疲勞,導(dǎo)致手術(shù)風(fēng)險(xiǎn)增加;②識(shí)別圖過大,可能會(huì)遮擋外科手術(shù)醫(yī)生的手術(shù)視野,也可能會(huì)超出磁場(chǎng)的范圍。因此在臨床實(shí)踐中,需要在保證手術(shù)安全性的情況下,根據(jù)實(shí)際情況確定識(shí)別圖大小、觀察距離和識(shí)別圖位置以實(shí)現(xiàn)最小誤差。
本文基于HoloLens2 的快速心律失常消融術(shù)的手術(shù)導(dǎo)航系統(tǒng),為手術(shù)導(dǎo)航系統(tǒng)的數(shù)據(jù)傳輸方案和三維跟蹤注冊(cè)方案提供了新的思路。采用ZeroMQ 的Pub/Sub 模式實(shí)現(xiàn)數(shù)據(jù)傳輸,采用磁定位和Vuforia 的混合跟蹤技術(shù)三維跟蹤注冊(cè)技術(shù)實(shí)現(xiàn)虛擬配準(zhǔn)。當(dāng)模型的三角面數(shù)量小于15k時(shí),模型顯示幀率主要分布在50~60FPS,占總比例的78%,實(shí)時(shí)數(shù)據(jù)傳輸可以保證數(shù)據(jù)不丟失且整體延遲低于1ms。三維跟蹤注冊(cè)的正交實(shí)驗(yàn)誤差范圍是1.17~4.62mm,根據(jù)磁場(chǎng)的覆蓋范圍和識(shí)別效果,確定將識(shí)別圖置于1 位置,識(shí)別圖尺寸設(shè)置為12cm2,然后臨床醫(yī)生在保證手術(shù)效果和安全的情況下,盡量降低減小觀察距離,這是最優(yōu)的實(shí)踐方案,最小誤差為1.17mm。結(jié)果證明了該系統(tǒng)的實(shí)際醫(yī)用性,且通過鍵盤和手勢(shì)3D 交互進(jìn)行優(yōu)化,該系統(tǒng)為提高手術(shù)成功率、降低手術(shù)時(shí)長(zhǎng)、加強(qiáng)臨床培訓(xùn)開展等方面作出了努力,為臨床手術(shù)的優(yōu)化方向給出了參考建議。后續(xù)將嘗試疊加電生理信息以更好地跟蹤導(dǎo)管找到病灶,且考慮只采用基于磁傳感器的三維跟蹤以保證心臟電生理三維標(biāo)測(cè)系統(tǒng)的整體性。