顧 瓏,芮延川
(南京醫(yī)科大學(xué)附屬常州第二人民醫(yī)院醫(yī)學(xué)裝備科,江蘇 常州 213161)
Unity 3D具有虛擬三維物體、虛擬場景等功能,可快速導(dǎo)入3D建模軟件構(gòu)建的模型,具有強(qiáng)大的交互性,可以讓用戶在短時間內(nèi)感知到現(xiàn)實環(huán)境中的事物。Unity 3D技術(shù)可應(yīng)用于PC(personal computer)端和移動平臺中,Unity功能強(qiáng)大,具有易學(xué)的編輯界面,包含場景視圖、游戲視圖、層次面板、工程面板和檢視面板5組視圖。
3Ds Max建模技術(shù)可以渲染相似的真實物體和場景畫面。渲染出的場景畫面由頂視圖、左視圖、右視圖、透視圖組成,可以通過材質(zhì)設(shè)置、燈光設(shè)置和特效處理,在建模時完成可視化處理。自帶有標(biāo)準(zhǔn)基本體、NURBS曲面、粒子系統(tǒng)等建模工具,具有強(qiáng)大的動畫演示功能,可以靈活操作,能夠在軟件中建立虛擬實驗室以及實驗器材等。
本文對基于Unity 3D和3Ds Max技術(shù)的電子計算機(jī)斷層掃描(computed tomography,CT)設(shè)備模型構(gòu)建步驟進(jìn)行分析,在此基礎(chǔ)上從軟硬件方面完成CT設(shè)備結(jié)構(gòu)拆裝和故障示教系統(tǒng)設(shè)計。
場景設(shè)計的基礎(chǔ)是模型設(shè)計,3Ds Max技術(shù)可以在FBX格式下[1],將設(shè)計的模型直接導(dǎo)入Unity 3D中,使得模型與3Ds Max能夠快速交互。在幾何模型導(dǎo)出前,對單位進(jìn)行自定義設(shè)置,將英制單位改為公制單位。在Unity 3D中設(shè)置碰撞體,在模型導(dǎo)出前選中對象,通過“僅影響軸”和“對齊-居中到對象”兩個操作,自動對齊軸心,并對導(dǎo)入的模型進(jìn)行碰撞檢查,減少物體旋轉(zhuǎn)的后續(xù)影響。對貼圖進(jìn)行渲染,渲染工作直接在Unity 3D中完成,無需額外對貼圖進(jìn)行協(xié)調(diào),從根本上杜絕貼圖丟失現(xiàn)象。3Ds Max模型導(dǎo)出時,將轉(zhuǎn)換軸選定為Y軸向上選項,保證3Ds Max和Unity 3D的坐標(biāo)一致。
本文主要目的是對CT設(shè)備結(jié)構(gòu)的拆裝和維修進(jìn)行演示教學(xué),因此模型需要包含CT機(jī)的主要部件和工作示意流程[2]。通過部件的組裝對細(xì)節(jié)部分進(jìn)行修改,表1為CT設(shè)備的球管細(xì)節(jié)示例。
由表1可知,模型需要經(jīng)過部件處理形成后續(xù)虛擬物件。模型部件細(xì)節(jié)和尺寸的比例要求可由數(shù)據(jù)庫和時間推演得到,在模型初次構(gòu)建完畢后,應(yīng)從數(shù)據(jù)庫中尋找已有模型資源,查詢當(dāng)前時間節(jié)點下的所有數(shù)據(jù),參照已經(jīng)投入應(yīng)用的模型進(jìn)行修改,并根據(jù)用戶主要訴求,適當(dāng)調(diào)整模型的細(xì)節(jié)和具體參數(shù),實現(xiàn)模型重塑。
光源在Unity 3D場景中是不可或缺的,一旦缺少光源,設(shè)計出來的場景將會一片漆黑,在用戶視角中不能看到任何東西。良好的光源可以提升畫質(zhì),Unity 3D中有3種比較常見的光源:1)平行光,模擬自然界的陽光,達(dá)到平行光效果;2)點光源,模擬日常生活中的燈源;3)聚光燈,模擬手電筒和探照燈等工具燈源。
在光源屬性面板中,可以通過光源類型、顏色及陰影類型模塊完成對光源的創(chuàng)建[3]。但在 Unity 3D中,光源會消耗極大的資源儲備,尤其是使用復(fù)合光源構(gòu)造模型,在整個渲染過程中會消耗大量資源,這會對場景運行的流暢性產(chǎn)生影響??紤]到這一情況,本文只采用平行光來模擬。完成對光源的創(chuàng)建之后,可以利用Transform插件更改光源的朝向。
Unity 3D模型渲染包括兩方面內(nèi)容:1)材質(zhì)選擇,由于CT設(shè)備結(jié)構(gòu)為醫(yī)用級別,在選擇渲染材料時需要具備反光特性;2)貼圖設(shè)置,要對紋理文件的輸入和輸出進(jìn)行控制,保證其拉伸與收縮的合理性,在選好貼圖材料和顏色后,直接利用Unity 3D中的著色器添加貼圖效果。
Unity 3D中包括一個標(biāo)準(zhǔn)著色器和一個高級著色器,它們共同組成一個物理著色的光照模型,可實現(xiàn)事物著色的統(tǒng)一渲染。標(biāo)準(zhǔn)著色器通常用于設(shè)置物體表面的顏色和貼圖,并處理光照強(qiáng)度以及貼圖在物體上的位置。高級著色器可以對貼片的紋理進(jìn)行調(diào)整,設(shè)定貼圖的復(fù)雜程度和可容許偏移量。
在基本幾何模型構(gòu)建、模型細(xì)節(jié)修改、場景光源創(chuàng)建的基礎(chǔ)上,進(jìn)一步對具體的模型參數(shù)進(jìn)行設(shè)定,此時便能達(dá)到渲染出圖的目的,3D建模需求得以滿足。
CT設(shè)備結(jié)構(gòu)拆裝與故障維修示教系統(tǒng)包括硬件和軟件兩個部分,硬件部分主要設(shè)置故障信號、監(jiān)測前置模塊,當(dāng)發(fā)生故障時發(fā)出信號,并對故障進(jìn)行定位,為后續(xù)拆裝和維修提供依據(jù)[4]。根據(jù)一般的CT檢測設(shè)備要求以及示教需求,采用LabVIEW語言,構(gòu)建Unity 3D &3Ds Max示教系統(tǒng)框架,如圖1所示。
圖1 示教系統(tǒng)總體框圖
根據(jù)應(yīng)用要求,示教系統(tǒng)采用模塊化的設(shè)計理念,將整個系統(tǒng)劃分為檢測模塊、數(shù)據(jù)管理模塊以及示教顯示和訓(xùn)練模塊,并以數(shù)據(jù)庫為中心模塊,建立各個模塊之間的聯(lián)系[5]。
當(dāng)CT設(shè)備運行信號觸發(fā)檢測板卡時,驅(qū)動程序能夠調(diào)取數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行分析,判斷其是否出現(xiàn)故障,以此建立多種故障問題演示模板,如圖2所示。
圖2 CT設(shè)備驅(qū)動裝置結(jié)構(gòu)圖
系統(tǒng)采用NI公司生產(chǎn)的PCI-65425E作為監(jiān)測設(shè)備,直接與該公司的虛擬編程軟件配套使用,減少不同設(shè)備之間的接入矛盾[6]。當(dāng)CT設(shè)備出現(xiàn)故障時,系統(tǒng)會觸發(fā)DAQ板卡,并利用PC機(jī)控制DAQ板卡采集CT設(shè)備故障信號,利用Unity 3D和3Ds Max軟件構(gòu)建模型,直接通過訪問程序并經(jīng)由驅(qū)動裝置達(dá)到控制CT設(shè)備的目的,提高系統(tǒng)的運行效率和穩(wěn)定性。
Unity 3D和3Ds Max建模技術(shù)最主要的環(huán)節(jié)之一即幾何模型構(gòu)建,通過構(gòu)建的模型將現(xiàn)實中的事物轉(zhuǎn)化為虛擬實例[7]。
利用齊次坐標(biāo)變換對圖形進(jìn)行三維變換,假設(shè)物體中含有一點Q(X,Y,Z),將其平移至點Q″(X″,Y″,Z″),則有:
(1)
式中:WX、WY、WZ為平移量。構(gòu)建平移變換矩陣W:
(2)
各點的平移坐標(biāo)變換為:
[X″Y″Z″ 1]=W[XYZ1]
(3)
通過齊次坐標(biāo)獲取圖像的三維變化比例,設(shè)置等比例參數(shù)A、B、C,將Q(X,Y,Z)作為CT設(shè)備需要拆卸的部件中心,分別按照A、B、C等比例變化[8],則有:
[X″Y″Z″ 1]=[XYZ1]·
(4)
對應(yīng)到CT設(shè)備,設(shè)備部件模型在導(dǎo)入Unity 3D時會產(chǎn)生軸旋轉(zhuǎn)現(xiàn)象,需要針對不同的坐標(biāo)系進(jìn)行變換矩陣求解。由此,以X、Y、Z軸為軸線,對Q(X,Y,Z)進(jìn)行轉(zhuǎn)換的變換矩陣為:
(5)
(6)
(7)
式中:δ為旋轉(zhuǎn)角度。示教系統(tǒng)不僅要保證畫面清晰度,更要保證畫面連貫性,通過碰撞理論檢查示教交互圖面。
CT設(shè)備應(yīng)用場景具有較高的嚴(yán)謹(jǐn)性,為了保證本文示教系統(tǒng)在對設(shè)備拆裝和維修時示教畫面的連貫性[9],對CT設(shè)備結(jié)構(gòu)拆裝與故障維修示教交互畫面碰撞進(jìn)行檢測。
針對CT設(shè)備的應(yīng)用需求,依據(jù)時間順序按照連續(xù)、離散和靜態(tài)3種類型進(jìn)行檢測,如圖3所示。
圖3 碰撞檢測分類
靜態(tài)檢測是在CT設(shè)備靜止條件下進(jìn)行的,即系統(tǒng)示教準(zhǔn)備階段,驗證CT設(shè)備中的組件是否放置在正確的位置。離散和連續(xù)碰撞檢測基本應(yīng)用于示教過程中,驗證部件是否在拆分中出現(xiàn)碰撞現(xiàn)象[10]。如果在多次檢測和碰撞實驗后,整個示教過程均沒有發(fā)生部件重疊的問題,即可保證設(shè)計的三維模型能夠完成示教工作,至此完成示教系統(tǒng)設(shè)計。
為驗證本文設(shè)計的示教系統(tǒng)具有應(yīng)用效果,分3個階段進(jìn)行論證。以某技術(shù)股份公司生產(chǎn)的CT設(shè)備為建模原型,其內(nèi)部構(gòu)造為X線攝影系統(tǒng)、高壓發(fā)生器、探測器等,外部構(gòu)造為外殼、掃描床、信號源。采用本文示教系統(tǒng),以貼圖和渲染為主,分別模擬設(shè)備模型和放置場景,展示CT設(shè)備的工作原理以及設(shè)備的拆裝過程。
CT設(shè)備包括滑環(huán)、螺旋CT、雙源CT、能譜CT等,對操作技術(shù)要求較高,醫(yī)護(hù)人員或?qū)嵙?xí)生很難在短時間內(nèi)熟練其操作步驟。另外,CT設(shè)備在實際操作中會產(chǎn)生高壓,用戶只能觀摩各部件的裝配和工作,這種觀摩學(xué)習(xí)的方式很難達(dá)到較好的學(xué)習(xí)效果。
為保證用戶的學(xué)習(xí)效果,通過本文系統(tǒng)進(jìn)行模型構(gòu)建,展示CT機(jī)模型和應(yīng)用場景,模型展示如圖4所示。
圖4 模型展示
根據(jù)圖4,利用本文系統(tǒng)對所選CT設(shè)備進(jìn)行建模。建模過程中,從外殼和機(jī)床兩個方面分別完成了整體CT機(jī)的建模處理,并實現(xiàn)了應(yīng)用場景的設(shè)計,可以實現(xiàn)示教工作。
在構(gòu)建的虛擬模型中進(jìn)一步測試系統(tǒng)示教效果,由于CT設(shè)備故障一般為內(nèi)部部件的損壞,因此在設(shè)備維修時需要對其外殼進(jìn)行拆解,外殼拆解展示如圖5所示。
圖5 外殼拆解展示
根據(jù)圖5,系統(tǒng)完成了CT機(jī)的外殼拆解,觀察CT機(jī)內(nèi)部的配件并進(jìn)行維修,維修完畢后對CT機(jī)的各個組件進(jìn)行裝配。圖6所示為示教系統(tǒng)自動生成的探測器部件示例。
圖6 系統(tǒng)自動生成探測器部件
由圖6可知,示教系統(tǒng)能夠自動生成CT設(shè)備部件,并給出部件名稱和提示裝配的正確方位,進(jìn)一步完成CT設(shè)備的示教工作。
通過構(gòu)建展示和拆解展示,證明本文系統(tǒng)可以完成示教工作。為進(jìn)一步驗證系統(tǒng)的實用性,引入錄播示教系統(tǒng)和CMM示教系統(tǒng)作為本文系統(tǒng)的對照組,選擇某省高校醫(yī)學(xué)專業(yè)學(xué)生進(jìn)行測試。
在MATLAB上初始化3種系統(tǒng)的運行環(huán)境,分別測試500、1 000、1 500、2 000名醫(yī)學(xué)生同時訪問3種系統(tǒng),進(jìn)入CT設(shè)備結(jié)構(gòu)拆裝與故障維修示教系統(tǒng)主界面,并點擊“開始上課”,以此比較分析3種系統(tǒng)的響應(yīng)速度。響應(yīng)速度對比結(jié)果如圖7所示。
圖7 響應(yīng)速度對比結(jié)果
由圖7可知,隨著學(xué)生數(shù)量的增加,各系統(tǒng)響應(yīng)時間增加,當(dāng)學(xué)生數(shù)量為2 000名時,本文系統(tǒng)響應(yīng)時間仍可在0.2 s內(nèi),說明本文系統(tǒng)可以快速啟動,應(yīng)用效果均較錄播示教系統(tǒng)和CMM示教系統(tǒng)更好。
分別利用3種系統(tǒng)對CT機(jī)外殼進(jìn)行建模,以面片數(shù)為指標(biāo),分析3種系統(tǒng)的建模性能。面片數(shù)越多,系統(tǒng)越容易發(fā)生卡頓,測試結(jié)果如圖8所示。
圖8 CT機(jī)外殼生成面片數(shù)對比結(jié)果
由圖8可知,在CT機(jī)外殼建模過程中,隨著旋轉(zhuǎn)角度增加各系統(tǒng)面片數(shù)增加。但從整體來看,本文系統(tǒng)的面片數(shù)少于兩種對比系統(tǒng),最高面片數(shù)為120個。由此可知,本文系統(tǒng)性能更優(yōu),建模過程中不易卡頓。
Unity 3D能夠通過程序腳本對實例化的事物進(jìn)行模型展示,實現(xiàn)虛擬部件的構(gòu)建和應(yīng)用。虛擬教學(xué)作為現(xiàn)代化教學(xué)資源,顛覆了傳統(tǒng)教學(xué)方式,為學(xué)生和教師提供了更為廣闊的學(xué)習(xí)空間,其擺脫了時間和環(huán)境的限制,能夠提升學(xué)生的學(xué)習(xí)自主性。由于研究時間所限,本文系統(tǒng)在實驗測試中還存在一定的不足,如模型展示有限、系統(tǒng)對比分析數(shù)量相對較少等,后續(xù)應(yīng)通過對虛擬技術(shù)的進(jìn)一步研究,彌補實驗中的缺陷,為教學(xué)提供更精確的理論支持。