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

?

基于CHAI3D的虛擬手術(shù)訓(xùn)練系統(tǒng)研究

2022-05-10 19:43朱玲曹國賢李艷東姚芝鳳
軟件工程 2022年5期
關(guān)鍵詞:虛擬現(xiàn)實

朱玲 曹國賢 李艷東 姚芝鳳

摘? 要:CHAI3D具有強大的力覺渲染能力,但相關(guān)應(yīng)用并不廣泛,為此,在CHAI3D平臺下搭建虛擬手術(shù)場景,導(dǎo)入手術(shù)臺及人體的3ds文件,通過屬性設(shè)置、紋理貼圖、視角變換增強系統(tǒng)的視覺表現(xiàn);詳細給出CHAI3D平臺下虛擬手術(shù)場景設(shè)計的具體流程及其在虛擬訓(xùn)練系統(tǒng)中的力覺渲染優(yōu)勢;最后呈現(xiàn)了不同視角下的虛擬手術(shù)訓(xùn)練系統(tǒng)實例。關(guān)鍵程序段及訓(xùn)練系統(tǒng)實例充分體現(xiàn)了CHAI3D在虛擬現(xiàn)實場景創(chuàng)建及人機交互方面的便利性與高效性,為初學(xué)者快速入門提供了參考。

關(guān)鍵詞:虛擬現(xiàn)實;CHAI3D;虛擬手術(shù);力覺渲染

中圖分類號:TP391.9? ? ?文獻標識碼:A

Research on Virtual Surgical Training System based on CHAI3D

ZHU Ling1, CAO Guoxian1, LI Yandong2, YAO Zhifeng1

(1.School of Mechanical and Electronic Engineering, Qiqihar University, Qiqihar 161006, China;2.College of Computer and Control Engineering, Qiqihar University, Qiqihar 161006, China)

Abstract: CHAI3D has powerful force-sensing rendering capabilities, but its related applications are not extensive. In view of this problem, this paper proposes to build a virtual surgical scene on the CHAI3D platform. The 3ds files of operating table and human body are imported, and visual representation of the system is enhanced through attribute setting, texture mapping, and perspective transformation. This paper elaborates the specific process of virtual surgical scene design on CHAI3D platform and the force rendering advantage of CHAI3D in virtual training system. Finally, virtual surgical training system from different perspectives is presented. The key program segments and training system examples fully reflect the convenience and efficiency of CHAI3D in the creation of virtual reality scenes and human-computer interaction, and the proposed system provides a reference for beginners to get started quickly.

Keywords: virtual reality; CHAI3D; virtual surgery; force-sensing rendering

1? ?引言(Introduction)

CHAI3D(Computer Haptics and Active Interface)是用于計算機觸覺、可視化和交互式實時仿真的開源C++庫。它最初由斯坦福大學(xué)人工智能實驗室開發(fā),其設(shè)計目的是提供一個用于虛擬現(xiàn)實的程序框架,并將實驗觸覺引入研究領(lǐng)域。瑞士洛桑聯(lián)邦理工學(xué)院和意大利錫耶納大學(xué)進一步發(fā)展了CHAI3D,2004 年發(fā)布了第一個公共版本,致力于讓研究人員更容易地創(chuàng)建結(jié)合3D模型與力反饋渲染的應(yīng)用程序[1]。多年來,CHAI3D已成為流行的開源多平臺觸覺渲染框架之一,全球有100多個行業(yè)和研究機構(gòu)在開發(fā)基于CHAI3D的應(yīng)用,主要包括汽車、航空航天、醫(yī)療、娛樂、工業(yè)機器人、游戲、模擬器、交互藝術(shù)、科學(xué)可視化等領(lǐng)域,支持各種商業(yè)可用的三自由度、六自由度和七自由度觸覺設(shè)備,并使其易于支持新的自定義力反饋設(shè)備[2]。

在3D場景搭建、力覺信息反饋等相關(guān)研究中,CHAI3D的運用可極大縮減場景搭建時間,提高力反饋程序的開發(fā)效率。國外針對CHAI3D平臺的應(yīng)用研究較早[3-4],北京航空航天大學(xué)、東北大學(xué)、哈爾濱工業(yè)大學(xué)、沈陽工業(yè)大學(xué)、上海工程技術(shù)大學(xué)等國內(nèi)科研團隊也先后基于CHAI3D開發(fā)了各類虛擬手術(shù)系統(tǒng)訓(xùn)練環(huán)境,結(jié)合力反饋設(shè)備實現(xiàn)了外科手術(shù)場景中虛擬人體組織的視覺仿真與力覺的虛擬感知[5-6]。但他們沒有給出CHAI3D具體的使用方法,這對初學(xué)者尤其是沒有程序設(shè)計及應(yīng)用經(jīng)驗的研究人員而言,需花費更多時間入門學(xué)習(xí),甚至在未觸及其核心功能時就遇挫放棄,從而影響了CHAI3D優(yōu)勢的發(fā)揮及其廣泛應(yīng)用。

為了使初學(xué)者更容易掌握CHAI3D并基于此平臺迅速搭建虛擬場景,本文詳細介紹了虛擬場景創(chuàng)建的CHAI3D程序架構(gòu)及其力反饋渲染過程,通過設(shè)計虛擬手術(shù)訓(xùn)練場景實例,給出具體的實現(xiàn)流程。

2? ?虛擬場景設(shè)計流程(The design process of virtual scene)

CHAI3D安裝與運行十分簡單,不需要配置環(huán)境變量。CHAI3D的可視化系統(tǒng)使用OpenGL渲染引擎,支持照明、陰影、紋理映射等效果。通過引入第三方組件擴展了CHAI3D的核心功能。擴展模塊目前包括對BULLET、ODE和GEL動力學(xué)引擎的實例支持,用于實時模擬剛體和可變形體,每個例程共享相同的結(jié)構(gòu)和文檔。新版本的CHAI3D提供了48 個例程,包括31 個CHAI3D基本案例及17 個BULLET(剛體)、GEL(形變體)、OCULUS(剛體)應(yīng)用案例,可在現(xiàn)有的案例基礎(chǔ)上創(chuàng)建自己的虛擬環(huán)境[3],具體實現(xiàn)流程如圖1所示。

虛擬場景設(shè)計流程可歸納為七個操作步驟:

(1)預(yù)設(shè)虛擬場景空間:采集現(xiàn)實場景中的實物尺寸,對虛擬現(xiàn)實場景整體結(jié)構(gòu)進行空間預(yù)設(shè)。

(2)創(chuàng)建世界類:具體包括創(chuàng)建相機類、創(chuàng)建燈光類、創(chuàng)建對象類和創(chuàng)建工具類,每一種創(chuàng)建都可以根據(jù)不同的場景進一步增添細節(jié),例如通過添加多個相機,呈現(xiàn)場景的不同視角;通過添加場景隱形約束空間,限制虛擬對象的活動范圍在可視空間內(nèi)等。

(3)構(gòu)建圖元/導(dǎo)入3ds模型:CHAI3D可構(gòu)建自己的基本圖形,也可導(dǎo)入專業(yè)建模軟件3DMAX創(chuàng)建的復(fù)雜模型,包括復(fù)雜的手術(shù)器械工具類對象。

(4)添加對象物理屬性:上述基本模型建立后,還需賦予剛體對象物理屬性,包括顏色、硬度、質(zhì)量、表面摩擦力等;為軟體對象添加節(jié)點屬性,包括節(jié)點半徑、質(zhì)量、線性阻尼、轉(zhuǎn)動阻尼等,這些屬性將為后續(xù)力反饋模型的引入和構(gòu)建做準備。

(5)添加力反饋框架:主要實現(xiàn)與外部力反饋設(shè)備的對接。CHAI3D已為用戶提供了較完善的程序框架,用戶可在此框架下設(shè)計力反饋算法,表現(xiàn)不同的力覺效果。

(6)完善場景細節(jié):如調(diào)整燈光角度或增加光源數(shù)量,添加對象的陰影效果,增添場景的第二視角或縮放場景,通過紋理映射美化地板、墻壁及對象,增加文字顯示信息等,多方位提升虛擬場景的真實性。

(7)呈現(xiàn)虛擬場景界面:運行CHAI3D程序需要安裝Visual Studio,并在此編譯環(huán)境下調(diào)試程序。這里通過CHAI3D示例呈現(xiàn)的虛擬場景界面如圖2所示。

(a)CHAI3D基本案例? ? ? ?(b)BULLET剛體案例? ? ? ?(c)GEL軟體案例

3? 訓(xùn)練系統(tǒng)中的力覺渲染(Force rendering of training systems)

觸覺反饋可以有效地引導(dǎo)學(xué)員進行規(guī)范訓(xùn)練,彌補傳統(tǒng)手術(shù)訓(xùn)練系統(tǒng)由于缺乏力覺反饋信息而出現(xiàn)的手術(shù)模擬不準確、訓(xùn)練低效等問題。CHAI3D為觸覺技術(shù)提供簡單而緊湊的程序框架,內(nèi)置了代理算法、勢場算法等力覺渲染方法,可以模擬具有質(zhì)量、摩擦、阻尼和剛度的對象特性,也可以模擬虛擬工具與周圍虛擬對象交互的黏、滑、振動和磁效應(yīng)等力覺行為,從而為3D模型的力反饋渲染提供了極大的便利。

CHAI3D通過名為cGenericHapticDevice的基類與常見的3D觸覺設(shè)備通信。觸覺設(shè)備末端執(zhí)行器或句柄的位姿可以通過getPosition()、getRotation()、getGripperAngleDeg()等方法讀取;當(dāng)虛擬手術(shù)工具接收到交互信息時,仿真模型將做出反應(yīng),并在每次仿真迭代中計算力和力矩信息,最后通過setForce()、setForceAndTorque()和setForceAndTorqueAndGripperForce()等方法發(fā)送到觸覺設(shè)備,從而實現(xiàn)力覺信息的雙向交互。

CHAI3D實現(xiàn)了幾種特定力反饋設(shè)備的類(例如cDeltaDevice、cPhantomDevice、CLeapDevices),具有用戶和虛擬手術(shù)工具之間的接口功能。它們是cGenericHapticDevice的派生類,而cGenericHapticDevice又繼承自通用設(shè)備類cGenericDevice,這兩個類對力反饋設(shè)備的操作函數(shù)及屬性進行了詳細的定義,因此只需要改寫部分函數(shù)就可以實現(xiàn)CHAI3D平臺對自定義力反饋設(shè)備的支持[7]。

目錄tools包含兩種實現(xiàn)觸覺工具的類,單個交互點代表一個非常簡單的工具,兩個相互依賴的交互點代表一個夾具。這些工具將觸覺設(shè)備類連接到虛擬環(huán)境中,實現(xiàn)與對象交互的虛擬角色[8]。力覺渲染流程如圖3所示。

4? 虛擬手術(shù)場景設(shè)計(The scene design of virtual surgery)

(1)世界類創(chuàng)建

世界類(cWorld)是虛擬場景的基礎(chǔ),是相機、光源、對象、工具等其他任何類的父類,需要首先創(chuàng)建。世界類劃分為剛體世界類(Bullet World)與軟體世界類(GEL World),根據(jù)虛擬場景中構(gòu)建的對象類型進行調(diào)用,本案例采用剛體世界類。

(2)相機類創(chuàng)建

如果只有世界類,場景界面是無法觀察讀取的,需要添加一個觀察世界的相機類(cCamera)。相機類的創(chuàng)建需要定義相機剪切面與三個主要位置屬性,分別為相機位置、觀察視角位置與法線位置。相機類主要充當(dāng)虛擬場景中的人眼,對世界進行觀察。如圖4所示是相機觀察到的初始世界界面,黑色小球為力反饋設(shè)備類鏈接球。

(3)燈光類創(chuàng)建

圖形渲染的核心工作就是模擬光照,CHAI3D默認的光照類型主要有三種,分別為定向光源(cDirectionalLight)、定位光源(cPositionlLight)、聚光燈光源(cSpotLight),此外還為聚光燈創(chuàng)建了陰影映射類(cShadowMap)。與相機類相似,也采用三個位置定義坐標屬性,但不同于相機類,燈光類主要照亮世界,增強虛擬對象的立體效果,讓充當(dāng)“人眼”的相機類可以觀察到更加真實的虛擬世界。添加燈光類后的效果如圖5所示,與圖4對比球體有明顯的立體效果,更符合真實對象特性。

(4)對象類創(chuàng)建

對象類(cMesh,cShapeBox等)是世界類的子類,需要在前面構(gòu)建的世界框架的基礎(chǔ)上進行創(chuàng)建。對象類一般分為背景對象與操作對象,背景對象一般為靜態(tài)的,不設(shè)質(zhì)量等屬性,不參與人機交互;操作對象主要分為剛體和軟體兩大類。CHAI3D通過第三方組件(BULLET、GEL)的支持拓展了對剛體和軟體的模擬,剛體對象采用規(guī)整尺寸構(gòu)建基本體或?qū)?ds格式模型構(gòu)建多面體兩種方法;軟體對象可采用逐個節(jié)點構(gòu)建基本模型,亦可導(dǎo)入3ds或obj文件構(gòu)建復(fù)雜網(wǎng)格模型。圖6為添加墻、地板等背景對象的開放世界。

在添加背景的開放世界基礎(chǔ)上,導(dǎo)入手術(shù)臺、照明燈、虛擬人體對象、訓(xùn)練器械等虛擬對象3ds模型,同時賦予相應(yīng)的物理屬性,以便實現(xiàn)動態(tài)碰撞效果與力反饋的計算,如圖7所示。

(5)設(shè)置物理屬性

對象類的物理屬性是虛擬環(huán)境中模擬真實力反饋碰撞交互效果的基礎(chǔ),物理屬性具體包括網(wǎng)格類型、質(zhì)量、慣性、動態(tài)模型、阻尼等。下面給出設(shè)計的VRBody訓(xùn)練場景的關(guān)鍵代碼。

VRBody=new cBulletMultiMesh(bulletWorld); //創(chuàng)建VRBody對象

bulletWorld->addChild(VRBody); //將VRBody對象加入bulletworld世界中

bool fileload; //設(shè)定一個bool

Fileload=VRBdoy->loadFromFile(RESOURCE_PATH("resource/models/VRBody.3ds"))

//獲取VRBody.3ds模型路徑

If( !fileoad )

{

#if defined(_MSVC)

Fileload=VRBody->loadFormFile("bin/resource/models/VRBody.3ds");

#endif

} //將VRBody.3ds模型導(dǎo)入

cMaterialmatGear; //創(chuàng)建材質(zhì)屬性

matGear.setStiffness(100); //設(shè)定材料剛度

matGear.DynamicFriction(0.5); //設(shè)定表面動摩擦系數(shù)

matGear.StaticFriction(0.5); //設(shè)定表面靜摩擦系數(shù)

matGear.Damping(0.7); //設(shè)定阻尼

matGear.setGray(); //設(shè)定基礎(chǔ)顏色為灰色

VRBody->setMaterial(matGear, true); //將材料屬性賦予VRBody對象

VRBody->scale(0.007); //設(shè)置VRBody對象網(wǎng)格縮放等級

VRBody->buildContactTriangles(0.001);? //VRBody對象網(wǎng)格三角形大小

VRBody->setMass(100); //設(shè)定對象質(zhì)量

VRBody->estimateInertia(); //為對象添加慣性

VRBody->buildDynamicModel(); //為對象添加動態(tài)模型

VRBody->setDamping(0.7, 0.7); //為對象添加運動阻尼,包括線阻尼與角阻尼

(6)紋理貼圖

在CHAI3D中提供cTexture2d、cTexture3d兩個類實現(xiàn)二位或三維的紋理布局??梢詫㈩A(yù)先處理的紋理貼圖按不同對象分別映射,如果同一對象具備過多的部件,需要將對象按部件類別劃分為不同圖層,再分別進行紋理貼圖,如圖8紋理貼圖效果所示。

(7)場景完善

虛擬訓(xùn)練場景需要具備多方位的觀察視角,以方便訓(xùn)練操作,提高訓(xùn)練效果。同時,虛擬訓(xùn)練場景還應(yīng)該具備手術(shù)設(shè)備的位置、旋轉(zhuǎn)角度、視角角度等空間信息。通過調(diào)整相機位置、燈光屬性,優(yōu)化渲染效果,最終在CHAI3D平臺上呈現(xiàn)不同視角的虛擬訓(xùn)練場景。圖9、圖10分別為添加相應(yīng)空間信息的內(nèi)窺鏡手術(shù)視角及全局視角圖。

(8)人機交互

目前,CHAI3D平臺支持多種力反饋設(shè)備,并且在缺少力反饋設(shè)備的情況下,也可以基于鼠標、鍵盤開發(fā)各類交互算法,實現(xiàn)與虛擬場景對象的人機交互,體現(xiàn)了CHAI3D強大的擴展性。在上述創(chuàng)建的手術(shù)訓(xùn)練場景的基礎(chǔ)上,可以繼續(xù)構(gòu)建手術(shù)器械的虛擬對象,然后借助鼠標和鍵盤控制虛擬手術(shù)器械,實現(xiàn)對虛擬人體組織的按壓、提拉、切割、縫合等手術(shù)訓(xùn)練過程中的交互模擬。訓(xùn)練者可以直觀地看到交互操作引發(fā)的對象變化效果,在力反饋設(shè)備引入的同時,達到手眼動作的協(xié)調(diào)訓(xùn)練及力覺感知。

5? 結(jié)論(Conclusion)

CHAI3D在3D虛擬場景構(gòu)建、力覺信息反饋方面有著顯著的優(yōu)勢,其虛擬場景模塊化搭建有效地降低了元素、對象組件的建模復(fù)雜度,可以快速直觀地完成虛擬手術(shù)等訓(xùn)練系統(tǒng)的構(gòu)建;同時,其簡單緊湊的力反饋程序框架使得研究人員能夠輕松地實現(xiàn)應(yīng)用程序與力反饋設(shè)備通信。虛擬手術(shù)訓(xùn)練場景的設(shè)計實例表明,利用CHAI3D能顯著縮短建模時間,并可在此框架下增加人體組織的生物力學(xué)模型,進一步實現(xiàn)觸診、切割、縫合等手術(shù)訓(xùn)練操作。

參考文獻(References)

[1] RENON P, YANG C, MA H, et al. Haptic interaction between human and virtual iCub robot using Novint Falcon with CHAI3D and MATLAB[C]// IEEE. Proceedings of the 32nd Chinese Control Conference. Xi'an, China: IEEE, 2013:6045-6050.

[2] NGUYEN T N, HO BA THO M C, DAO T T. A systematic review of real time medical simulations with soft-tissue deformation: computational approaches, interaction devices, system architectures, and clinical validations[J]. Applied Bionics and Biomechanics, 2020, 2:1-30.

[3] MANSOR N N, JAMALUDDIN M H, SHUKOR A Z. Concept and application of virtual reality haptic technology: A review[J]. Journal of Theoretical and Applied Information Technology, 2017, 95(14):3320-3336.

[4] GONG M B, LIU D, YUAN X N. The training system of vascular? interventional surgical robot based on Chai3D[C]// IEEE. 2014 IEEE International Conference on Mechatronics and Automation(ICMA). Tianjin, China: IEEE, 2014:600-605.

[5] 劉明雨,項士海.一種具有觸覺再現(xiàn)功能的人體心臟組織虛擬內(nèi)鏡系統(tǒng)[J].北京生物醫(yī)學(xué)工程,2020,39(2):34-41,79.

[6] 秦偉,杭魯濱,黃曉波,等.力觸覺建模及再現(xiàn)技術(shù)研究[J].輕工機械,2017,35(2):48-52.

[7] 楊達.面向遙操作的并聯(lián)式力反饋手控器系統(tǒng)設(shè)計[D].南京:東南大學(xué),2019.

[8] HERGENHAN J, RUTSCHKE J, UHL M, et al. A haptic display for tactile and kinesthetic feedback in a CHAI 3D palpation training scenario[C]// IEEE. 2015 IEEE International Conference on Robotics and Biomimetics (ROBIO). Zhuhai, China: IEEE, 2015:291-296.

作者簡介:

朱? ?玲(1981-),女,博士,副教授.研究領(lǐng)域:虛擬現(xiàn)實,虛擬手術(shù).

曹國賢(1998-),男,碩士生.研究領(lǐng)域:虛擬現(xiàn)實,3D建模.

李艷東(1978-),男,博士,教授.研究領(lǐng)域:非線性控制,智能控制.

姚芝鳳(1979-),女,博士,副教授.研究領(lǐng)域:虛擬現(xiàn)實,機器人控制.

猜你喜歡
虛擬現(xiàn)實
虛擬現(xiàn)實技術(shù)在中學(xué)校園中的應(yīng)用
論虛擬現(xiàn)實藝術(shù)的“沉浸”
REALITY BITES
虛擬現(xiàn)實產(chǎn)業(yè)進入高速發(fā)展期
風(fēng)口上的虛擬現(xiàn)實
虛擬現(xiàn)實技術(shù)向科幻小說借靈感
虛擬現(xiàn)實:另一個真實世界
諾基亞推出虛擬現(xiàn)實攝像機OZO
虛擬現(xiàn)實炫酷來襲走出實驗室坎坷漫長
淺談虛擬現(xiàn)實
迁安市| 旅游| 上犹县| 高密市| 长海县| 隆安县| 威宁| 钟祥市| 荔波县| 望都县| 会昌县| 井冈山市| 蓬溪县| 山阳县| 广南县| 贞丰县| 裕民县| 宝兴县| 桃江县| 鸡东县| 凯里市| 嘉荫县| 德阳市| 亳州市| 梁河县| 大城县| 郓城县| 皋兰县| 库伦旗| 揭东县| 隆德县| 瑞金市| 九寨沟县| 应用必备| 福建省| 黄梅县| 台江县| 堆龙德庆县| 东光县| 马关县| 湘潭市|