国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

結合增強現(xiàn)實的醫(yī)用加速器碰撞檢測方法

2020-09-04 03:16:10張功森李永哲周解平
計算機工程與應用 2020年17期
關鍵詞:人體模型信息反饋碰撞檢測

張功森,郭 翌,李永哲,裴 曦,徐 榭,周解平

1.中國科學技術大學 物理學院 工程與應用物理系,合肥 230022

2.中國科學技術大學附屬第一醫(yī)院西區(qū),合肥 230001

1 引言

近年來,隨著腫瘤病人數(shù)量的不斷增加和放射醫(yī)學技術的不斷發(fā)展,放療技術在腫瘤治療中應用廣泛且日臻于完善,但在實際治療過程中還存在若干亟需解決的問題,放療室中各設備運轉時出現(xiàn)的機械碰撞問題是其中一個。醫(yī)用直線加速器是目前調(diào)強放療中的基礎設備,其包括:多葉準直器(MLC,又稱多頁光柵)、加速管、控制系統(tǒng)、定位系統(tǒng)、磁控管、輻射頭、治療床以及調(diào)制器等[1-2]。為了最大程度上提高照射精度以及避免射束對危機器官的損傷,要求加速器治療頭的環(huán)繞中心應與患者的腫瘤靶區(qū)在空間位置上保持高度重合,為了滿足這一要求,在加速器治療頭旋轉之前,需要對治療床進行上下、左右平移以及適度旋轉操作,然而這將導致治療頭和治療床以及病人之間產(chǎn)生碰撞。另外,在發(fā)射電子線時,治療頭會附加限光筒,類似機件的附加也會導致碰撞。這些碰撞不僅會阻斷治療計劃的實施,還會損壞設備,并很有可能對病人造成傷害。在較為復雜的放療計劃(例如肺癌寡轉移立體定向放療)制定過程中,由于治療床的旋轉平移,機械碰撞問題不可避免,高效、準確的碰撞檢測手段亟需發(fā)展。醫(yī)生和物理師在制定放療計劃時,每確定一個射野角度和治療床位置,都需要親自去放療室使設備運轉并檢查是否碰撞,這無疑大大降低了他們的工作效率,并給放療計劃的制定和實施帶來諸多不便。

之前有人提出過基于C++和OpenGL 動畫顯示的碰撞檢測方法[3],以及基于可視化工具包(VTK)的方法[4],這些方法可以得到碰撞檢測結果,但兩者都不便于模型更新,且難以實現(xiàn)與用戶實時交互,不能隨時更改設備運動參數(shù)以及調(diào)節(jié)用戶觀察視角,其次也難以實現(xiàn)和增強現(xiàn)實設備的對接。本文嘗試找出一種三維模擬加速器運轉的方法,首先根據(jù)放療室的實際情況進行三維建模,開發(fā)一個應用程序提供輸入旋轉角度和平移等空間信息,并且利用三維模型的剛體特性進行碰撞檢測,并最終部署到增強現(xiàn)實設備上,供相關工作人員更為直觀的查驗。在制定放療計劃的同時,可以通過這種方法進行照射角度以及治療床位置的更正,大大提高醫(yī)生和物理師的工作效率。同時,強大的三維可視化開發(fā)引擎Unity 3D以及先進的增強現(xiàn)實設備HoloLens為這一方法的實現(xiàn)提供了強有力的支持。

2 模型建立與完善

對于加速器模型,根據(jù)實際測得的放療設備相關參數(shù),分別將機架、治療頭、治療床及其他相關設備拆分為簡單三維模型組件,基于3ds Max進行建模。

對于人體模型,首先獲取病人的CT圖像,然后讀取DICOM(Digital Imaging and Communication in Medicine)文件進行處理,利用移動立方體算法(Marching Cubes)獲取三角面片信息[5],利用OpenGL 的初步得到三維重建模型[6],圖1給出本文工作中基于CT的某病人三維重建結果。

圖1 移動立方體算法所得基于CT的三維重建模型

同時考慮到,由于人體外形受年齡、性別、身高、體重等方面的影響,單一模型不能符合實際臨床檢測情況,另外,考慮到病人掃描CT 所受的照射劑量,臨床上只對病人的需檢查部位進行掃描,無法提供病人全身的CT 圖像,由于移動立方體算法需要基于不同二維斷層圖像之間輪廓線的位置得到三角面片,進而擬合重建三維圖像,所以CT 斷層圖像的缺少導致相應部位三角面片的缺失,進而難以得出病人全身的三維重建模型。通常采用單一模型代替病人其余部位的方法,難以滿足病人的個體化差異。因此,本文工作基于三維可視化結果,選取重建模型關鍵部位的外形尺寸在USTC系列中國人計算機人體模型中[7]匹配最符合模型,并進行精確的變形[8]。USTC系列中國人計算機人體模型包含不同性別、不同年齡段人群的數(shù)字化人體模型:USTC-AM、USTC-AF、USTC-15M、USTC-15F、USTC-10M、USTC-10F、USTC-5M、USTC-5F,基于表面Mesh 表示的數(shù)字化人體模型具有靈活可變性,本文工作結合年齡、體型因素,根據(jù)文獻[8]中的方法,依次進行體模匹配、位置匹配、模型縮放、表面網(wǎng)格修復和模型拼接,使得模型盡量和實際人體接近,提高碰撞檢測的精確性。系列模型如圖2、3所示[7]。

圖2 基于表面網(wǎng)格的USTC系列中國人計算機人體模型(成人)

在得到上述模型后,將這些模型導入Unity 3D,對各組件進行重新組裝,并建立起“父子”關系,以方便進行整體操作。為模型添加不同的材質(zhì),同時為整體場景添加光照,完善整個放療環(huán)境的模擬。本文工作采用了增強現(xiàn)實工具包 MRTK(Mixed Reality Toolkit)[9]提供的增強現(xiàn)實專用“相機”HoloLens Camera[10-11]。相機參數(shù)主要包括X、Y、Z三維空間坐標以及可視范圍,考慮到增強現(xiàn)實環(huán)境效果,將HoloLens Camera的裁剪平面(Clipping plane)設為最近0.85 m,最遠1 000 m[12]。

圖3 基于表面網(wǎng)格的USTC系列中國人計算機人體模型(不同年齡段未成年人)

3 剛體特性和碰撞檢測原理

為三維模型添加剛體特性是進行碰撞檢測的基本條件[13],剛體特性提供的碰撞檢測模式主要包括三種情況:不連續(xù)模式(Discrete)、連續(xù)模式(Continuous)和動態(tài)連續(xù)模式(Continuous Dynamic)且分別適用于不同情況,如表1所示。

表1 碰撞檢測模式及適用情況

Unity 3D 的碰撞檢測采用包圍盒(球)方式[14-15],且在整個檢測過程中,對于二維平面內(nèi)的檢測,主要依賴于類似四叉樹的檢測方式[16-17],如圖4 所示。首先利用x、y軸將整個二維平面劃分為四個一級區(qū)域,依次檢測二維平面上的所有模型,判斷模型所屬區(qū)域,如果某模型與軸相交(如圖中A、B模型),則A同時屬于一級區(qū)域1、4,B 同時屬于一級區(qū)域1、2,而模型C 僅屬于一級區(qū)域4。對于每個一級區(qū)域,再次利用x、y軸劃分為四個二級區(qū)域,判斷方式同理。循環(huán)往復直至單個區(qū)域內(nèi)模型數(shù)小于某特定值N,對單區(qū)域內(nèi)的模型進行兩兩檢測。對于三維空間及模型,則采用類似于八叉樹的檢測方式[18],如圖5所示,其區(qū)域劃分方式及檢測原理與四叉樹檢測方式相同,故不再贅述。

圖4 二維平面碰撞檢測空間

圖5 三維空間八叉樹碰撞檢測空間

本文工作中,碰撞檢測實現(xiàn)的基礎是基于Unity3D的碰撞器。首先根據(jù)每個三維模型的大致形狀分別賦予Sphere Collider(球碰撞器)、Box Collider(方盒碰撞器)或Capsule Collider(膠囊體碰撞器)中的一種或幾種碰撞器。此處主要對加速器治療頭、治療床和病人三組模型制作并添加了碰撞器,同時,碰撞器的幾何尺寸盡可能大于模型的最大邊界故采取了幾何如圖6所示。

圖6 病人、治療頭、治療床模型的碰撞器添加情況(紅色代表Capsule Collider,黃色代表Spere Collider,綠色代表Box Collider)

4 腳本控制及GUI規(guī)劃

4.1 腳本控制

三維模型的空間運動和碰撞檢測實現(xiàn)通過基于C#語言的腳本文件進行控制。本文工作中,腳本類型主要分為三類:運動控制腳本、碰撞檢測腳本和信息反饋腳本。其中,運動控制腳本根據(jù)實際設備的運轉情況確定其旋轉中心、旋轉速度、旋轉角度、平移方向、平移距離等。碰撞檢測腳本是建立在為三維模型添加碰撞器及剛體特性之后,工作過程被分為三個階段:碰撞發(fā)生,碰撞狀態(tài)保持和碰撞完成,信息反饋腳本用于檢測信息、調(diào)試信息反饋和部分窗口設計。腳本控制工作流程如圖7所示。

4.2 GUI界面規(guī)劃設計

圖形與用戶界面(Graphical User Interface,GUI)允許使用鍵盤、指點設備及顯示器與計算機進行交互。Unity 3D 的GUI 系統(tǒng)具有靈活、快速、可視化效果好的特點[19-20]。在控制模型運動和碰撞檢測的同時,如果碰撞發(fā)生,需要程序反饋碰撞信息,這些信息包括碰撞發(fā)生與否、旋轉角度以及平移距離等。本項目中,除了三維模擬運行界面,所設置的整個GUI界面還包括六個模塊:用戶功能操作模塊、檢測結果反饋模塊、用戶參數(shù)輸入模塊、調(diào)試日志信息輸出模塊、治療床參數(shù)反饋模塊、用戶視角操縱模塊,如表2所示。

圖7 腳本控制流程示意圖

表2 本文工作中GUI界面結構設計情況

GUI 界面整體設計結構如圖8 所示,GUI 的渲染是通過創(chuàng)建腳本并定義OnGUI 函數(shù)來執(zhí)行的[21]。本工作主要依賴圖形與用戶界面對信息反饋界面進行設計,且畫布渲染模式采用Screen Space-Overlay以使GUI界面與屏幕分辨率相適應。

圖8 信息反饋界面GUI設計

5 增強現(xiàn)實環(huán)境部署

增強現(xiàn)實環(huán)境是本碰撞檢測方法重要的呈現(xiàn)方式,這將給用戶或工作人員帶來更為直觀有效的現(xiàn)場效果。本文方法是基于Unity 3D 開發(fā)的,其發(fā)布平臺為Universal Windows Platform,渲染工具為Direct3D,發(fā)布后的工程經(jīng)Visual Studio2017 部署到增強現(xiàn)實設備HoloLens上并生成應用程序以供展示。同時,通過微軟MR官方提供的Windows Device portal對增強現(xiàn)實設備上的展示內(nèi)容進行電腦端查看。通過HoloLens可以在現(xiàn)實環(huán)境背景下看到整個碰撞檢測的模擬過程。并且在整個增強現(xiàn)實環(huán)境中,提供三種人機交互方式,分別為:

(1)凝視(Gaze),用于感知物體和反饋信息。

(2)手勢(Gesture),本文工作中主要用到的手勢有點擊(Tap)手勢和綻放(Blossom)手勢。前者用于物體的選定和確認,后者用于返回。

(3)語音(Voice),用到的語音控制為語音命令,本文工作中自定義的兩種語音命令為MOVE和ROTATE,使增強現(xiàn)實環(huán)境中的模型在手勢控制下分別進入平移和旋轉模式。

本文工作中整個增強現(xiàn)實環(huán)境中的人機交互主要實現(xiàn)虛擬物體的旋轉平移和縮放以及視角變化,其操作過程設計如圖9所示。

圖9 增強現(xiàn)實環(huán)境人機交互操作流程設計

6 結果

6.1 放療環(huán)境建模結果

本文工作首先建立了準確完整的放療環(huán)境三維模型,主要包括醫(yī)用加速器治療頭、病床和病人模型,根據(jù)實際測量的放療室內(nèi)各治療設備的外觀尺寸、機械旋轉中心、平移距離范圍及各設備的相對空間位置等參數(shù),基于3ds Max和Unity 3D對實際治療環(huán)境進行三維建模和模型整合,各個待檢測模型均添加了剛體特性且獨立運轉,圖10是建立并完善的放療室環(huán)境模型。

圖10 放療環(huán)境三維模型建模結果

6.2 碰撞檢測和信息反饋

本文工作最終設計完成方便用戶控制模型運動及設置參數(shù)的用戶交互界面,并設置合適的分辨率,將整體工程發(fā)布為可執(zhí)行文件,運行界面如圖11所示。

圖11 可執(zhí)行文件運行界面

輸入以下三組參數(shù)進行測試,對三組情形進行碰撞檢測后,得到各自反饋信息:

(1)病床(及病人)向后平移距離為0.21 m(△X=△Y=0,△Z=0.21 m),旋轉角度為順時針30°(△φ=-30°),檢測到當治療頭旋轉至87.51°時與病床發(fā)生碰撞。碰撞情況和檢測信息反饋如圖12(a)所示。(2)病床(及病人)向右移距離為0.21 m(△X=0.21 m,△Y=△Z=0),旋轉角度為0(△φ=0),檢測到當治療頭旋轉至63.22°時與病床發(fā)生碰撞。碰撞情況和碰撞信息反饋如圖12(b)所示。(3)病床(及病人)向上平移距離為0.1 m(△X=0,△Y=0.1 m,△Z=0),旋轉角度為逆時針30°(△φ=30°)。檢測到當治療頭旋轉至44.25°時與病人發(fā)生碰撞。碰撞情況和碰撞信息反饋如圖12(c)所示。

圖12 碰撞情況和檢測信息反饋

將治療床無任何運動的情形以及上述三組情形下的三維模擬結果與實際臨床操作結果對比,均相符合。此處需要說明的是為了保護加速器設備,實際臨床驗證時在保證會發(fā)生碰撞的情況下提前停止設備運行。驗證結果如表3所示。

表3 三維模擬結果與臨床操作結果對比

6.3 APP在增強現(xiàn)實環(huán)境下的發(fā)布和部署

增強現(xiàn)實是本文工作除了PC端之外最終的呈現(xiàn)方式。在增強現(xiàn)實環(huán)境下,可以通過凝視、手勢和語音等方式進行人機交互。整個三維模擬碰撞檢測流程可以通過HoloLens 在增強現(xiàn)實環(huán)境中觀看,并且可以通過相關設備接口在PC 端實時查看,增強現(xiàn)實示例直觀效果如圖13所示。

圖13 增強現(xiàn)實環(huán)境中碰撞檢測展示效果

7 結語

本研究工作為解決醫(yī)用直線加速器治療頭、治療床及病人之間的碰撞檢測問題提供了嶄新的可行思路,且主要實現(xiàn)了以下三點:

(1)建立了完整詳備而直觀的放療環(huán)境三維模型,且運用三維模型的剛體特性為碰撞檢測提供了必須條件。

(2)對各組件的運動情況進行準確的模擬,對于不同射野角度以及病人位置,能夠準確地檢測出各組件之間的碰撞情況并向用戶界面反饋檢測結果信息。

(3)通過HoloLens 將碰撞檢測流程在增強現(xiàn)實環(huán)境中運行,人機交互方便且效果更為直觀,并能幫助相關人員了解碰撞過程。

本碰撞檢測方法運用了Unity 3D引擎中碰撞觸發(fā)器,并最終將應用程序部署到增強現(xiàn)實環(huán)境中,結果更為準確,效果更為直觀,能夠協(xié)助物理師在制定放療計劃的同時驗證待實行計劃的可行性,大大提高了物理師的工作效率,具有較高的現(xiàn)實意義及廣闊的應用前景:首先,可以針對更多型號的醫(yī)用加速器進行建模并測試;其次,本文工作與增強現(xiàn)實環(huán)境的結合可以作為融入醫(yī)學培訓內(nèi)容;另外,碰撞檢測可以作為特定功能模塊集成到TPS(放療計劃系統(tǒng))中,為放療計劃的制定提供便利條件。

猜你喜歡
人體模型信息反饋碰撞檢測
全新預測碰撞檢測系統(tǒng)
基于BIM的鐵路信號室外設備布置與碰撞檢測方法
Unity3D中碰撞檢測問題的研究
電子測試(2018年1期)2018-04-18 11:53:00
淺談數(shù)學教學過程中的信息反饋作用
學周刊(2016年23期)2016-09-08 08:57:38
BIM技術下的某辦公樓項目管線碰撞檢測
基于乘員體型的車輛安全性研究
汽車文摘(2015年11期)2015-12-14 19:10:11
Family makes 45—foot icicle in front yard
高校教師教學質(zhì)量評定方式探究
體驗創(chuàng)新:3D人體掃描儀測三圍
人體模型內(nèi)置攝像頭為數(shù)據(jù)收集
聊城市| 芒康县| 克什克腾旗| 平塘县| 吴堡县| 寻乌县| 朔州市| 攀枝花市| 潞城市| 洛宁县| 大埔区| 廊坊市| 民县| 武鸣县| 鄯善县| 宜川县| 夹江县| 忻城县| 龙门县| 崇州市| 察隅县| 石渠县| 宜州市| 泰宁县| 平泉县| 神木县| 霍邱县| 都兰县| 罗江县| 密云县| 彭阳县| 卢湾区| 蓬溪县| 石河子市| 商城县| 秦安县| 衢州市| 蕲春县| 耒阳市| 衡阳市| 普兰店市|