版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 單位代碼 10006 </p><p> 學(xué) 號(hào) </p><p> 分類號(hào) </p><p> 密 級(jí) 秘 密 </p><p><b> 畢業(yè)設(shè)計(jì)(論文)</b><
2、/p><p> 用于心臟手術(shù)仿真的虛擬力反饋模型</p><p><b> 及軟件實(shí)現(xiàn)</b></p><p><b> 2014年6月</b></p><p><b> 北京航空航天大學(xué)</b></p><p> 本科生畢業(yè)設(shè)計(jì)(論文)任務(wù)書&l
3、t;/p><p> Ⅰ、畢業(yè)設(shè)計(jì)(論文)題目:</p><p> 用于心臟手術(shù)仿真的虛擬力反饋模型及軟件實(shí)現(xiàn) </p><p> Ⅱ、畢業(yè)設(shè)計(jì)(論文)使用的原始資料(數(shù)據(jù))及設(shè)計(jì)技術(shù)要求:</p><p> 原始資料:
4、7自由度的力反饋器(Omega.7)(已購買) 心血管主動(dòng) </p><p> 脈弓的幾何建模(初步完成) OpenGL開發(fā)環(huán)境(已搭建) Chai3D </p><p> Demo源代碼(已獲得) </p><p> 技術(shù)要求:1. 實(shí)現(xiàn)三維心臟模型的變形顯
5、示 </p><p> 2. 實(shí)現(xiàn)三維心臟模型的實(shí)時(shí)力反饋計(jì)算 </p><p> 3. 利用Omega.7實(shí)現(xiàn)三維心臟模型的力感知 </p><p>
6、Ⅲ、畢業(yè)設(shè)計(jì)(論文)工作內(nèi)容:</p><p> 搭建虛擬力反饋硬件平臺(tái) </p><p> 編寫基于Chai3D/OpenGL的軟件平臺(tái) </p><p> 建立心臟三維幾何模型
7、 </p><p> 實(shí)現(xiàn)一種心臟受力變形算法 </p><p><b> ?、簟⒅饕獏⒖假Y料:</b></p><p> Majumder S, Roychowdh
8、ury A, Pal S. Simulation of hip fracture in sideways fall using a 3D finite element model of pelvis–femur–soft tissue complex with simplified representation of whole body[J]. Medical engineering & physics, 2007, 29(1
9、0): 1167-1178. Xie K, Yang J, Zhu Y M. Fast collision detection based on nose augmentation virtual surgery[J]. Computer methods and programs in biomedicine, 2007, 88(1): 1
10、-7. </p><p> 學(xué)生 王青春 </p><p> 畢業(yè)設(shè)計(jì)(論文)時(shí)間: 2014 年 3 月 1 日至 2014 年 5 月 25 日</p><p> 答辯時(shí)間: 2014 年 6 月 10 日</p><
11、p> 成 績(jī): </p><p> 指導(dǎo)教師: </p><p> 兼職教師或答疑教師(并指出所負(fù)責(zé)部分):</p><p> 系(教研室) 主任(簽字): </p><p> 注:任務(wù)書應(yīng)該附在已完成的畢業(yè)設(shè)計(jì)(論文)的首頁。&l
12、t;/p><p><b> 本人聲明</b></p><p> 我聲明,本論文及其研究工作是由本人在導(dǎo)師指導(dǎo)下獨(dú)立完成的,在完成論文時(shí)所利用的一切資料均已在參考文獻(xiàn)中列出。</p><p><b> 作者:王青春</b></p><p><b> 簽字:</b></p
13、><p> 時(shí)間:2014年 6 月</p><p> 用于心臟手術(shù)仿真的虛擬力反饋模型及軟件實(shí)現(xiàn)</p><p> 學(xué) 生:王青春</p><p><b> 指導(dǎo)老師:劉文勇</b></p><p><b> 摘要</b></p><p>
14、; 由于現(xiàn)代人生活方式和生活條件的變化,心臟病日益成為一種常見疾病,同時(shí)心臟手術(shù)的需求量也急劇增加,然而由于培訓(xùn)方式和材料的特殊性,目前遠(yuǎn)遠(yuǎn)無法滿足需求。</p><p> 虛擬現(xiàn)實(shí)技術(shù)是利用電腦模擬產(chǎn)生一個(gè)三維的虛擬世界,提供給使用者視覺、聽覺、觸覺等感官的模擬,讓使用者如同身臨其境一般,可以及時(shí)、沒有限制的觀察三維空間內(nèi)的事物,使用者進(jìn)行位置移動(dòng)時(shí),計(jì)算機(jī)可以立即進(jìn)行復(fù)雜的運(yùn)算,將改變后的三維世界影響傳回
15、產(chǎn)生臨場(chǎng)感。隨著硬件和軟件技術(shù)的發(fā)展,以及對(duì)虛擬現(xiàn)實(shí)技術(shù)研究的不斷深入,目前已經(jīng)有條件實(shí)現(xiàn)虛擬手術(shù)。</p><p> 針對(duì)這個(gè)問題,本課題以虛擬現(xiàn)實(shí)技術(shù)為基礎(chǔ),以虛擬環(huán)境中的心臟模型作為研究對(duì)象,以O(shè)mega.7作為力反饋設(shè)備,用于向虛擬對(duì)象施加作用力,同時(shí)對(duì)輸入的力用配備英偉達(dá)專業(yè)顯卡的圖形工作站進(jìn)行處理,將得到的反作用力反饋給使用者,從而得到真實(shí)可感的力覺和觸覺反饋。這種方法有望克服傳統(tǒng)醫(yī)生訓(xùn)練過程中采用
16、人或其他動(dòng)物標(biāo)本作為研究對(duì)象的諸多缺點(diǎn),可以更高效、便捷的培養(yǎng)外科醫(yī)生,使其足以承擔(dān)心臟手術(shù)的工作,滿足患者對(duì)手術(shù)的需求。</p><p> 本課題主要借助開源項(xiàng)目Chai3D和由瑞士Force Dimension提供的力反饋設(shè)備Omega. 7進(jìn)行。Chai3D提供了一套對(duì)虛擬環(huán)境中的對(duì)象進(jìn)行操作的編程接口和一組示例程序,可以在此基礎(chǔ)上進(jìn)行二次開發(fā)得到針對(duì)心臟手術(shù)的算法。Qt是一個(gè)跨平臺(tái)的C++應(yīng)用程序開發(fā)框
17、架,提供了一套便捷的C++圖形庫和集成開發(fā)環(huán)境,原生支持OpenGL程序,為了更便捷的對(duì)虛擬環(huán)境中的對(duì)象進(jìn)行操作,將給這個(gè)系統(tǒng)原型添加一個(gè)基于Qt的圖形前端。</p><p> 同時(shí)本次研究作為虛擬手術(shù)仿真項(xiàng)目的一個(gè)先導(dǎo)課題,為后續(xù)的深入研究做一些基礎(chǔ)性工作。</p><p> 關(guān)鍵詞:心臟手術(shù),手術(shù)仿真,力反饋,虛擬現(xiàn)實(shí),碰撞檢測(cè)</p><p> A vi
18、rtual force feedback model for the simulation of cardiac surgery and its software implementation</p><p> Author: 王青春</p><p> Tutor: 劉文勇</p><p><b> Abstract</b></p&
19、gt;<p> As people’s life style and quality is changing rapidly, heart disease has been developing to a common disease thus there’s a great need of doctors who can handle such operations. However, because of the s
20、pecial methods and special materials they use, much more doctors are needed for now.</p><p> Virtual Reality technology is a technology which generates a three-dimensional virtual world with computers, supp
21、lying visual and hearing and haptic simulation, making the users feel that they are actually in the real environment, where they can observe the objects in the virtual world in time and without any limits, when the users
22、 move, the computers compute the new world in almost no time and then give the new world to the users.</p><p> Computers are changing the world everywhere. Now both the hardware and software technology have
23、 been developed in a significant degree, in addition to the research in virtual reality theory, virtual surgery can be realized for now.</p><p> The heart model in the virtual environment acts as the object
24、 being manipulated, forces and torques applied to the heart model via the haptic device Omega.7, and then the feedback forces and torques are computed in the workstation equipped with a nVIDIA Quadro graphics card and t
25、hen exported via the same haptic device. Thus users can obtain a real force and haptic feedback. This training method is promising to avoid the disadvantages of the traditional methods in which human or animal specimen&
26、lt;/p><p> This subject is a sub-subject of the virtual surgery system, the research also do a lot of foundational works for incoming research.</p><p> Key words: Cardiac surgery, Simulation, For
27、ce feedback, Virtual-Reality technology</p><p><b> 目 錄</b></p><p><b> 緒論</b></p><p><b> 研究背景</b></p><p> 隨著現(xiàn)代人生活方式和習(xí)慣的改變,飲食結(jié)構(gòu)發(fā)
28、生了很大變化,高糖、高蛋白、高脂肪含量的食物越來越普遍,加上生活環(huán)境的惡化,工作、生活和經(jīng)濟(jì)壓力的增加,都導(dǎo)致現(xiàn)代人心臟病發(fā)病率明顯增高。據(jù)統(tǒng)計(jì),我國每年有超過15萬人接受心臟手術(shù),而需要接受心臟手術(shù)的患者多達(dá)800萬人[1],這產(chǎn)生了對(duì)能勝任心臟手術(shù)的外科醫(yī)生的巨大需求。</p><p> 同時(shí)由于現(xiàn)代外科手術(shù)的復(fù)雜程度越來越高,不經(jīng)過充分的訓(xùn)練,很難適應(yīng)現(xiàn)代外科手術(shù)的要求。據(jù)統(tǒng)計(jì),通常訓(xùn)練一名合格的外科醫(yī)生
29、需要5-7年的時(shí)間[2],其間醫(yī)生必須進(jìn)行大量的手術(shù)訓(xùn)練。對(duì)醫(yī)生進(jìn)行手術(shù)訓(xùn)練的傳統(tǒng)方法是使用人體或動(dòng)物標(biāo)本代替病人進(jìn)行[3],然而動(dòng)物的解剖結(jié)構(gòu)與人體的解剖結(jié)構(gòu)不同,而尸體的材料特性與活體組織都存在較大差異,這些缺點(diǎn)嚴(yán)重地影響了培養(yǎng)外科手術(shù)醫(yī)生的效果和效率。同時(shí)這類方法使用的材料都存在資源短缺,同時(shí)無法重復(fù)使用的缺點(diǎn),因此培訓(xùn)成本很高。</p><p> 現(xiàn)代計(jì)算機(jī)技術(shù)的發(fā)展日新月異,尤其是虛擬現(xiàn)實(shí)技術(shù)已經(jīng)滲入
30、到我們生活的方方面面,但力觸覺結(jié)合的虛擬現(xiàn)實(shí)技術(shù)在軟組織中的應(yīng)用仍不太廣泛。應(yīng)用這種虛擬現(xiàn)實(shí)技術(shù),使用者可以通過終端輸入操作數(shù)據(jù),數(shù)據(jù)經(jīng)計(jì)算機(jī)處理后反饋給使用者相應(yīng)的力覺和觸覺,讓使用者獲得如在真實(shí)世界中觸摸物體一樣的感官體驗(yàn)[4]。同時(shí),虛擬手術(shù)可以模擬活體組織的各種物理特性和生理特性,提高培訓(xùn)效果;此外由于所用的電子設(shè)備都可以重復(fù)使用,并可以根據(jù)實(shí)際需要修改以提供不同類型的實(shí)驗(yàn)對(duì)象,從長(zhǎng)遠(yuǎn)看來可以大大降低培養(yǎng)外科醫(yī)生的成本。<
31、/p><p><b> 研究?jī)?nèi)容</b></p><p> 研究?jī)?nèi)容主要分為以下幾個(gè)部分:</p><p> 搭建虛擬力反饋硬件平臺(tái)</p><p> 硬件主要用到了由瑞士Force Dimension提供的Omega.7力反饋設(shè)備和一臺(tái)圖形工作站,由于后期需要3D立體顯示和對(duì)OpenGL的硬件加速需要,還配備了一塊
32、nVIDIA高性能專業(yè)顯卡。</p><p> 編寫基于Chai3D/OpenGL的軟件平臺(tái)</p><p> 軟件系統(tǒng)架構(gòu)在開源項(xiàng)目Chai3D之上,而Chai3D中大量使用了OpenGL的API,支持7種力反饋設(shè)備,具有良好的通用型。</p><p> 建立心臟三維幾何模型</p><p> 心臟模型是由CT成像技術(shù)得到的,但原始
33、圖像文件無法適用于Chai3D系統(tǒng),需要做多步處理。</p><p> 實(shí)現(xiàn)一種心臟受力變形算法</p><p> 心臟模型是靜態(tài)的,而虛擬手術(shù)中需要其在受到外力的作用后作出相應(yīng)的外形變化同時(shí)計(jì)算出對(duì)虛擬末端控制器的反作用力,并表現(xiàn)到力反饋設(shè)備上。</p><p> 形成心臟手術(shù)虛擬仿真訓(xùn)練系統(tǒng)原型</p><p> 原計(jì)劃編寫一套基
34、于Qt的仿真訓(xùn)練系統(tǒng),但研究中發(fā)現(xiàn)Qt的pro工程文件和Chai3D中使用的Makefile差別較大,從后者移植到前者的結(jié)構(gòu)需要大量時(shí)間和精力,考慮到畢設(shè)時(shí)間限制,該步?jīng)]有完成。</p><p><b> 研究現(xiàn)狀</b></p><p> 目前,國外已經(jīng)有許多商業(yè)公司和研究機(jī)構(gòu)對(duì)虛擬手術(shù)仿真技術(shù)做了深入的研究和實(shí)踐,如美國波士頓力學(xué)研究中心對(duì)虛擬手術(shù)器械模擬操作
35、的研究,加利福尼亞圣弗朗西斯科大學(xué)外科系與伯克利學(xué)院的電子工程與計(jì)算機(jī)科學(xué)系對(duì)虛擬腹腔手術(shù)的研究,斯坦福大學(xué)的SRI正在進(jìn)行的對(duì)組織和脈管縫合的虛擬手術(shù)技術(shù)的研究等;在歐洲,法國國家信息和自動(dòng)化研究所(INRIA)、德國國家信息技術(shù)研究中心(GMD)、法蘭克福計(jì)算機(jī)圖形研究所(IGD)等研究單位也對(duì)虛擬手術(shù)及相關(guān)的技術(shù)進(jìn)行了深入的研究[5]。</p><p> 我國關(guān)于計(jì)算機(jī)建模和仿真的研究開展較早,在上世紀(jì)7
36、0年代初主要集中在航空航天領(lǐng)域。數(shù)十年來,我國多所高校入北京航空航天大學(xué)、浙江大學(xué)、清華大學(xué)、北京大學(xué)、國防科技大學(xué)等和多所科研院所及其他許多應(yīng)用部門和單位的研究人員進(jìn)行了各具背景、各具特色的研究工作[4]。</p><p> 近年來國內(nèi)的研究多集中在對(duì)醫(yī)學(xué)圖像的三維重建及可視化方面,但對(duì)帶有力反饋的虛擬手術(shù)系統(tǒng),尤其是軟組織如臟器等的手術(shù)仿真研究方面投入較少。蘇永松等人在2002年設(shè)計(jì)了基于二維鼠標(biāo)的骨科手術(shù)
37、模擬系統(tǒng)[6];譚珂等人在2005年設(shè)計(jì)了鼻腔鏡虛擬手術(shù)仿真系統(tǒng)[7];許天春等人在2006年也使用PHANToM設(shè)備設(shè)計(jì)了一個(gè)聲帶腫物切除仿真系統(tǒng)[8]。</p><p><b> 研究意義</b></p><p> 虛擬手術(shù)對(duì)于現(xiàn)代外科手術(shù)具有積極的推動(dòng)作用。</p><p> 首先,它可以為外科醫(yī)生培訓(xùn)提供用之不盡的實(shí)驗(yàn)對(duì)象。傳統(tǒng)的
38、培訓(xùn)中使用的動(dòng)物或人體標(biāo)本都存在或資源短缺或與實(shí)際活體組織各方面物理屬性和生理屬性不同的缺點(diǎn)。虛擬手術(shù)充分利用了虛擬現(xiàn)實(shí)技術(shù)對(duì)視覺和觸覺的支持,可以根據(jù)不同情況調(diào)整參數(shù),提供不同種類的實(shí)驗(yàn)對(duì)象,大大提高了培訓(xùn)靈活性。</p><p> 其次,傳統(tǒng)的培訓(xùn)使用的兩種材料都無法重復(fù)使用,導(dǎo)致訓(xùn)練的成本高昂且效率低下,由于虛擬手術(shù)使用的電子產(chǎn)品,可以提供近乎無限次地使用壽命,從長(zhǎng)遠(yuǎn)觀點(diǎn)看,將極大的降低總體培訓(xùn)成本。&l
39、t;/p><p> 最后,由于虛擬手術(shù)極強(qiáng)的定制性,不僅可以用于外科醫(yī)生的培訓(xùn),還可以滿足不同的需求,比如對(duì)手術(shù)結(jié)果進(jìn)行預(yù)測(cè),輔助制定手術(shù)計(jì)劃和手術(shù)導(dǎo)航等。</p><p> 本課題是使用比較新的組合Omega.7力反饋設(shè)備(配置Force Dimension驅(qū)動(dòng)和Chai3D)進(jìn)行虛擬手術(shù)研究的一次嘗試。國內(nèi)對(duì)于力反饋方面的研究工作多集中于使用美國SensAble公司提供的PHANToM
40、力反饋設(shè)備(配備GHOST SDK開發(fā)包),而對(duì)Chai3D的研究目前還較少,雖然Chai3D可以支持包括PHANToM在內(nèi)的7種力反饋設(shè)備,但事實(shí)上由于設(shè)計(jì)生產(chǎn)Omega.7力反饋設(shè)備的瑞士Force Dimension公司和Chai3D的關(guān)系,Chai3D可以完美支持Force Dimension公司生產(chǎn)的力反饋設(shè)備的所有功能。</p><p> 課題的目標(biāo)是實(shí)現(xiàn)一個(gè)操作界面基于Qt,后端動(dòng)作基于Chai3
41、D的虛擬手術(shù)系統(tǒng)的原型,然而由于前期對(duì)工作量的預(yù)計(jì)失誤,導(dǎo)致Qt和Chai3D的結(jié)合在結(jié)題時(shí)仍無法完成,但在研究的過程中總結(jié)了一套經(jīng)驗(yàn)和教訓(xùn),為后續(xù)的研究提供了借鑒。</p><p><b> 研究方法</b></p><p><b> 硬件方面</b></p><p> 力反饋設(shè)備使用了瑞士Force Dimens
42、ion公司的固定式力反饋裝置,采用獨(dú)特的并聯(lián)運(yùn)動(dòng)結(jié)構(gòu),將輕巧的鋁制金屬桿與牢固的傳動(dòng)裝置結(jié)合在一起,具有超高的性能。它共有7個(gè)自由度,包括3個(gè)平移自由度,3個(gè)旋轉(zhuǎn)自由度和1個(gè)抓取功能。其中平移關(guān)節(jié)和抓取關(guān)節(jié)都具有力反饋。它具有卓越的機(jī)械剛度,同時(shí)采用實(shí)時(shí)USB2.0控制器,在Windows下可以以4.3kHz左右的速率對(duì)接觸力進(jìn)行處理,而在Linux下可以達(dá)到穩(wěn)定在7.9kHz左右,遠(yuǎn)遠(yuǎn)高于最低標(biāo)準(zhǔn)500Hz[8],這樣在發(fā)生碰撞檢測(cè)時(shí)
43、可以獲得平滑的效果,保證力觸覺交互系統(tǒng)的穩(wěn)定性。為了確保較高的觸覺透明度,設(shè)備通過將啟動(dòng)與未啟動(dòng)的部件相結(jié)合,保證了在平移和其他方向區(qū)域的重力補(bǔ)償。每個(gè)系統(tǒng)均可進(jìn)行單獨(dú)校準(zhǔn),確??芍貜?fù)的最佳精度和性能。</p><p> 前期由于Omega.7未到貨,暫時(shí)用國內(nèi)的代理商紅京鳥(北京)科技有限公司臨時(shí)提供的Omega.3作為替代,二者在基本功能和性能上無差異)。Omega.7在Omega.3的基礎(chǔ)功能上,將末端控
44、制器改為具有夾取功能的力反饋手柄,并包括左右手配置,可以建立雙手工作站以實(shí)現(xiàn)雙手控制,從而增加了高精度主動(dòng)式抓握功能和方向感功能。其中12N的持續(xù)力反饋與的夾取力,可以滿足在虛擬顯示技術(shù)研究中的基本需求。</p><p> (a) Omega.3設(shè)備 (b) Omega.3末端控制器</p><p> (c) Omega.7設(shè)備 (d
45、) Omega.7末端控制器</p><p> 圖 1.1 Omega.3和Omega.7對(duì)比</p><p> 在圖形和圖像運(yùn)算方面,由于運(yùn)算量較大且對(duì)實(shí)時(shí)性的要求較高,同時(shí)考慮到經(jīng)費(fèi)的因素,選擇了采用最新開普勒架構(gòu)的英偉達(dá)的專業(yè)級(jí)顯卡Quadro K5000,顯存帶寬173GB/s,具有1536個(gè)流處理器、128個(gè)紋理單元、32個(gè)ROP單元,核心頻率700MHz左右,搭配256位4
46、GB GDDR5顯存,最高支持分辨率為4096x2196。同時(shí)支持3D輸出,可以滿足后續(xù)研究中添加3D顯示器的需求。</p><p> 在通用計(jì)算方面,由于需要渲染的數(shù)據(jù)量巨大,為了從根本上避免性能低下的集成顯卡帶來的影響,并且盡可能的提高CPU的整體性能,同時(shí)考慮了價(jià)格因素,選擇了英特爾E3 1230v3。它是由Intel發(fā)布的Haswell架構(gòu)的LGA1150型CPU,默認(rèn)主頻3.3GHz,具有4個(gè)物理核心
47、,同時(shí)由于超線程技術(shù)實(shí)際上可利用8線程,性能強(qiáng)勁。</p><p> 其他方面,考慮整體性能,選擇2*4G 1600mHz內(nèi)存,加配128G固態(tài)硬盤作為系統(tǒng)盤,大大提高了系統(tǒng)的整體性能。</p><p><b> 軟件方面</b></p><p> 軟件方面分為運(yùn)行環(huán)境和開發(fā)工具,運(yùn)行環(huán)境主要依賴Force Dimension和Chai3
48、D,而開發(fā)工具根據(jù)平臺(tái)不同,在Windows平臺(tái)下采用Visual Studio2013(由DreamSpark提供專業(yè)版授權(quán))和Qt Creator 5.3(beta),Linux平臺(tái)下采用Vim 7.4和Qt Creator 5.2。</p><p> OpenGL全稱“開放式圖形庫”,它是一個(gè)方便和快速的三維圖形和模型庫。最初算法是由SGI(Silicom Graphics, Inc)公司開發(fā)和優(yōu)化的。它
49、定義了一個(gè)跨程序設(shè)計(jì)語言、跨平臺(tái)的應(yīng)用程序接口(API)規(guī)范,用于生成二維、三維圖像,這個(gè)接口由近350個(gè)不同的函數(shù)調(diào)用組成,用來從簡(jiǎn)單的圖形位元繪制復(fù)雜的三維圖像。OpenGL的高效實(shí)現(xiàn)(利用了圖形加速硬件)存在于Windows、很多UNIX平臺(tái)和OS X,這些實(shí)現(xiàn)一般由顯卡廠商提供,而且非常依賴于該廠商提供的硬件。OpenGL規(guī)范描述了繪制二維和三維圖形的抽象API,盡管這些繪制可以由軟件實(shí)現(xiàn),但它是為大部分或者全部使用硬件加速而設(shè)
50、計(jì)的。OpenGL與語言無關(guān),但出于性能的考慮,臺(tái)式計(jì)算機(jī)本地的應(yīng)用程序一般使用C++語言實(shí)現(xiàn),同時(shí)Chai3D也是用C/C++作為實(shí)現(xiàn)語言。在項(xiàng)目進(jìn)行時(shí),所用的英偉達(dá)驅(qū)動(dòng)程序支持OpenGL 4.4標(biāo)準(zhǔn)。</p><p> Force Dimension是Omega系列力反饋設(shè)備配備的原廠驅(qū)動(dòng)程序,同時(shí)內(nèi)置了一系列簡(jiǎn)單的示例程序和性能測(cè)試工具,能夠很好的檢測(cè)設(shè)備是否能夠正常運(yùn)行。</p><
51、;p> Chai3D是一套為計(jì)算機(jī)觸覺、視覺和實(shí)時(shí)交互仿真而設(shè)計(jì)的開放源代碼并且可以自由獲得的C++庫。Chai3D支持7種商業(yè)許可的三自由度、六自由度和七自由度的觸覺設(shè)備,并且讓支持新的定制的觸覺設(shè)備成為可能。Chai3D尤其適合教育和科研的目的,因?yàn)樗峁┝艘粋€(gè)輕量級(jí)的平臺(tái),可以在這個(gè)平臺(tái)上開發(fā)擴(kuò)展。Chai3D支持多個(gè)觸覺設(shè)備,因此可以很容易的將應(yīng)用程序發(fā)送到遠(yuǎn)程的不同的硬件設(shè)備上執(zhí)行。本課題使用Chai3D 2.0版本。
52、</p><p> Windows平臺(tái)上的Visual Studio是最常用的C/C++集成開發(fā)工具,它是一個(gè)基本完整的開發(fā)工具集,包括了軟件生命周期中所需要的大部分工具,如UML工具、代碼管控工具、集成開發(fā)環(huán)境等等,所寫的目標(biāo)代碼適用于微軟支持的所有平臺(tái)。</p><p> Windows平臺(tái)上使用了Qt Creator 5.3,而不是當(dāng)時(shí)的穩(wěn)定版本5.2,是由于Qt Creator
53、自身并不集成編譯器,需要使用系統(tǒng)已有的編譯器,5.2在當(dāng)時(shí)只支持稍舊的Visual Studio2012編譯器,無法適用于已經(jīng)存在的Visual Studio 2013,因此需要使用穩(wěn)定性差一下(使用過程中并未發(fā)現(xiàn)異常情況)但已經(jīng)支持最新版Visual Studio 2013的Qt Creator 5.3RC版。它是一款跨平臺(tái)的集成開發(fā)環(huán)境,特別針對(duì)Qt開發(fā)者,是Qt SDK的組件,可運(yùn)行于Windows、Linux/X11及OS X等
54、操作系統(tǒng)平臺(tái),允許開發(fā)者為多桌面環(huán)境及移動(dòng)設(shè)備平臺(tái)創(chuàng)建應(yīng)用程序。同時(shí)Qt內(nèi)建了對(duì)OpenGL的支持,能較好的支持用Qt為操作提供前端界面的目的。</p><p> 在處理心臟模型中用到了一系列圖像處理軟件,具體如下:</p><p><b> Mimics</b></p><p> Mimics是一種專門為處理醫(yī)學(xué)圖像而開發(fā)的商業(yè)軟件。用
55、Mimics處理三維醫(yī)學(xué)圖像斷層(來自CT、MRI、micro-CT、CBCT、3D超聲、共聚焦顯微鏡)并導(dǎo)出病人解剖學(xué)的高度精確的三維模型。可以繼續(xù)用這些根據(jù)病人區(qū)分的模型進(jìn)行不同的工程應(yīng)用開發(fā)。在本課題中用其對(duì)原始工程文件進(jìn)行處理,導(dǎo)出每個(gè)部位的獨(dú)立文件,然后選擇需要的部位在blender中進(jìn)行連接。</p><p><b> Blender</b></p><p&
56、gt; Blender是一套三維繪圖和渲染軟件,支持幾乎所有的操作系統(tǒng)平臺(tái),支持不同的幾何圖元,包括多邊形網(wǎng)紋、快速表層塑模、曲線及矢量字符,使用Python語言來創(chuàng)作及制作游戲及工作自動(dòng)化腳本。在本課題中,將選擇的8個(gè)部位的圖形文件以此導(dǎo)入blender中,將其連接在一起,并導(dǎo)出obj文件,交給Geomagic Studio繼續(xù)處理。</p><p> Geomagic Studio</p>
57、<p> Geomagic Studio是將三維掃描數(shù)據(jù)轉(zhuǎn)換為高精度曲面、多邊形和通過CAD模型的整套工具組。其整合了強(qiáng)大的自動(dòng)化工具,可以使使用者顯著縮短時(shí)間并降低人力成本。它提供了簡(jiǎn)化模型功能,在本課題中主要利用它簡(jiǎn)化模型的功能,因?yàn)樵寄P臀募^于復(fù)雜,不僅沒有必要而且會(huì)嚴(yán)重影響結(jié)果的實(shí)時(shí)性。</p><p><b> MeshLab</b></p><
58、;p> MeshLab是立體網(wǎng)格處理軟件,可管理和處理大量的非結(jié)構(gòu)化網(wǎng)格,并提供編輯、清理、修復(fù)和查核等功能,可對(duì)模型進(jìn)行渲染和格式轉(zhuǎn)換。在本課題中,使用MeshLab將已經(jīng)使用Geomagic Studio簡(jiǎn)化過的模型文件進(jìn)行屬性編輯,如加上材質(zhì)庫信息,并導(dǎo)出適當(dāng)?shù)母袷健?lt;/p><p><b> 理論基礎(chǔ)</b></p><p> 課題主要涉及三個(gè)方面
59、的理論研究。</p><p><b> 1、碰撞檢測(cè)</b></p><p> 碰撞檢測(cè)是整個(gè)課題的基礎(chǔ),顧名思義,就是檢測(cè)在虛擬環(huán)境中的兩個(gè)物體是否能發(fā)生碰撞和碰撞發(fā)生后的一系列變化,如變形和產(chǎn)生的反作用力[9]。這方面比較成熟的方法是使用軸對(duì)齊包圍盒(Axis Aligned Bounding Box,AABB)檢測(cè)算法。</p><p&g
60、t;<b> 2、力反饋算法</b></p><p> 力反饋算法主要有兩種方法,一種是用簡(jiǎn)單但精度不高的彈簧-質(zhì)點(diǎn)模型,另一種用有限元分析法。前者簡(jiǎn)單實(shí)用,但精確度不高,后者運(yùn)算復(fù)雜并且計(jì)算量極大,很難滿足實(shí)時(shí)性的要求[10]。由于本課題面對(duì)的實(shí)時(shí)性目的,同時(shí)Chai3D的力反饋算法也是使用彈簧-質(zhì)點(diǎn)模型,本文主要討論彈簧-質(zhì)點(diǎn)模型。</p><p><b
61、> 3、變形算法</b></p><p> 變形算法分為兩種情形,當(dāng)虛擬對(duì)象可以變形時(shí),且整體相對(duì)全局坐標(biāo)系的位置不發(fā)生變化時(shí),則變形量根據(jù)虛擬操縱終端的位移決定;當(dāng)虛擬對(duì)象不可變形,且虛擬對(duì)象只有中心位置固定,而整體可以運(yùn)動(dòng)時(shí),則在受到外力時(shí),虛擬對(duì)象繞中心轉(zhuǎn)動(dòng),并不會(huì)發(fā)生表面的形變。</p><p><b> 論文構(gòu)成</b></p&
62、gt;<p> 文章主要分下面幾部分。</p><p> 第二章方案設(shè)計(jì),主要講述虛擬對(duì)象與虛擬操縱終端之間的碰撞檢測(cè)算法的研究和移植。</p><p> 第三章平臺(tái)搭建,介紹虛擬力反饋系統(tǒng)軟硬件的搭建詳細(xì)過程。</p><p> 第四章實(shí)驗(yàn)步驟,介紹心臟模型處理和實(shí)現(xiàn)力反饋效果的過程。</p><p> 第五章結(jié)果,
63、總結(jié)本課題所得到的結(jié)果。</p><p><b> 方案設(shè)計(jì)</b></p><p><b> 實(shí)驗(yàn)材料</b></p><p> 整個(gè)過程中使用的虛擬對(duì)象是由(安貞醫(yī)院)提供的心臟模型。該心臟模型是由CT圖像經(jīng)過處理得到的,并且已經(jīng)根據(jù)心臟各個(gè)部分性質(zhì)在Mimics中根據(jù)閾值調(diào)整而分割開。整個(gè)過程中用到了幾種中間文
64、件格式。詳細(xì)如下:</p><p><b> mcs</b></p><p> Mimics的工程文件,心臟模型原始文件格式,通過這種格式將心臟的各部分分開,得到后續(xù)步驟中需要用的文件。</p><p> 圖 2.1心臟模型原始文件</p><p><b> ASCII stl</b><
65、;/p><p> 計(jì)算機(jī)圖形系統(tǒng)中用于表示三角形網(wǎng)格的一種文件格式,它的格式非常簡(jiǎn)單,應(yīng)用廣泛,它是快速原型系統(tǒng)所應(yīng)用的標(biāo)準(zhǔn)文件類型,是用三角網(wǎng)格來表現(xiàn)三維CAD模型。這里用其作為向目標(biāo)文件類型的中間格式,因?yàn)镸imics無法直接導(dǎo)出為obj,而obj和3ds是Chai3D所支持的文件類型。</p><p><b> 3ds</b></p><p&
66、gt; 3D Studio R4網(wǎng)格文件格式,其包括以下信息,視圖中的背景(實(shí)心、漸變和位圖),場(chǎng)景中的霧、分層霧和距離線索,場(chǎng)景中的環(huán)境光級(jí)別,材質(zhì)中相減的透明度轉(zhuǎn)換為“過濾器”透明度,而過濾器的顏色設(shè)置為“漫反射”,材質(zhì)的透明度衰減設(shè)置,材質(zhì)中所有貼圖通道,所有貼圖參數(shù),包括UV變換、負(fù)值、景象和螺旋,材質(zhì)中的自動(dòng)反射貼圖第N幀和“貼圖尺寸”設(shè)置,對(duì)目標(biāo)材質(zhì)和“噪波”進(jìn)行SXP平移。這里使用3ds文件類型時(shí)三角面片數(shù)量不能大于65
67、536,這個(gè)限制導(dǎo)致圖像無法太精確。</p><p><b> Obj</b></p><p> Alias Wavefront公司為它的一套工作站的3D建模和動(dòng)畫軟件Advanced Visualizer開發(fā)的一種標(biāo)準(zhǔn)3D模型文件,適合在不同的3D軟件模型之間作為中間文件互導(dǎo)。Obj文件是一種文本文件,可以直接用文本編輯器軟件查看和編輯修改。Obj文件格式支持直
68、線、多邊形、表面和 自由形態(tài)曲線,直接通和多邊形通過它們的點(diǎn)來描述,曲線和表面則根據(jù)它們的控制點(diǎn)和依附于曲線類型的額外信息來定義,這些信息支持規(guī)則和不規(guī)則的曲線,包括基于貝塞爾曲線、B樣條、基數(shù)和泰勒方程的曲線。它不包含動(dòng)畫、材質(zhì)特性、貼圖路徑、動(dòng)力學(xué)、粒子等信息。因此,在Chai3D中使用obj文件需要對(duì)應(yīng)的mtl文件來表明其材質(zhì)。obj文件不包含面的顏色信息,不過可以引用材質(zhì)庫,材質(zhì)庫信息存儲(chǔ)在一個(gè)后綴是mtl的獨(dú)立文件中,obj文
69、件中的mtllib即材質(zhì)庫的意思。材質(zhì)庫中包含材質(zhì)的漫射(diffuse)、環(huán)境(ambient)、光澤(specular)的RGB的定義值,以及反射(specularity)、折射(refraction)、透明度(transparency)等其他特征。</p><p><b> 碰撞檢測(cè)算法</b></p><p> 碰撞檢測(cè)自20世紀(jì)80年代開始受到人們的重視
70、,在計(jì)算幾何和機(jī)器人等領(lǐng)域得到了廣泛的研究和應(yīng)用[12],形成了一些較為成熟的技術(shù)。</p><p> 簡(jiǎn)單地講,碰撞檢測(cè)就是檢測(cè)虛擬場(chǎng)景中不同對(duì)象之間是否發(fā)生了碰撞。從幾何上講,碰撞檢測(cè)表現(xiàn)為兩個(gè)多面體的求交測(cè)試問題;按對(duì)象所處的空間可分為二維平面碰撞檢測(cè)和三維空間碰撞檢測(cè)。平面碰撞檢測(cè)相對(duì)簡(jiǎn)單一些,已經(jīng)有較為成熟的檢測(cè)算法,而三維空間碰撞檢測(cè)則要復(fù)雜很多[13-14],主要是如何解決碰撞檢測(cè)的實(shí)時(shí)性和精確性
71、的矛盾。在不同的應(yīng)用場(chǎng)景中,對(duì)精確性和實(shí)時(shí)性的要求不同,就本課題而言,目標(biāo)是應(yīng)用在虛擬心臟手術(shù)的仿真系統(tǒng)中,因此對(duì)實(shí)時(shí)性的要求比較高,但同時(shí)由于是手術(shù)仿真,要求其精度也要達(dá)到相當(dāng)高的要求。</p><p> 碰撞檢測(cè)算法主要有以下幾類:基于包圍盒的碰撞檢測(cè)算法,基于距離計(jì)算的碰撞檢測(cè)算法,基于維諾圖的碰撞檢測(cè)算法。其中,基于距離計(jì)算的碰撞檢測(cè)算法和基于維諾圖的碰撞檢測(cè)算法只能解決凸多邊形之間的碰撞檢測(cè),對(duì)于本課
72、題中形狀較為復(fù)雜的心臟模型都不適用,因此采用包圍盒碰撞檢測(cè)算法。</p><p> 包圍盒法的基本思想是使用簡(jiǎn)單的幾何體來代替復(fù)雜的幾何體,先對(duì)對(duì)象的包圍盒進(jìn)行粗略的檢測(cè),當(dāng)包圍盒之間可以相交時(shí),對(duì)象本身才有可能相交,當(dāng)包圍盒之間不可相交,則對(duì)象本身也一定不相交。這樣就可以排除大量不可能相交的幾何體和幾何部位,從而更加快速的找到相交的對(duì)象。</p><p> 一個(gè)對(duì)象可以用不同的層次表
73、達(dá)的包圍盒來近似對(duì)象,結(jié)合層次表達(dá)法如二叉樹,可以把對(duì)象用近似包圍盒分層次的表達(dá),使用一個(gè)大的包圍盒包圍住整個(gè)對(duì)象,再把對(duì)象分成兩部分,用兩個(gè)包圍盒包圍各自的部分,這樣細(xì)分下去,直到每個(gè)包圍盒只包含一個(gè)基本的幾何元素,形成一棵層次表達(dá)的包圍盒二叉樹。這樣在進(jìn)行碰撞檢測(cè)時(shí)只需要根節(jié)點(diǎn)遍歷包圍盒二叉樹,那么這兩個(gè)對(duì)象不相交,否則繼續(xù)向下一級(jí)走,進(jìn)行下一級(jí)的碰撞檢測(cè),如果在某個(gè)節(jié)點(diǎn)兩個(gè)包圍盒不相交,則以該節(jié)點(diǎn)為根節(jié)點(diǎn)的子樹就不需要再檢測(cè)。當(dāng)檢
74、測(cè)到葉節(jié)點(diǎn)時(shí),如果葉節(jié)點(diǎn)包圍盒相交就要進(jìn)行基本的幾何元素的相交檢測(cè),否則這兩個(gè)基本幾何元素不相交。這樣通過由粗到細(xì)的檢測(cè),只有粗檢相交的對(duì)象才進(jìn)行下一級(jí)更細(xì)的檢測(cè),可以提前篩選出不可能相交的對(duì)象,大大加快了碰撞檢測(cè)的時(shí)間。算法流程圖如下:</p><p> 圖 2.2碰撞檢測(cè)算法流程圖</p><p> 目前存在多種為計(jì)算機(jī)圖形學(xué)和計(jì)算機(jī)視覺的不同應(yīng)用而開發(fā)的不同的包圍盒,例如方向包圍
75、盒(Oriented Bounding Box, OBB),離散方向多邊形(Discrete Orientation Polytope, k-DOPs),固定方向包圍盒(Fixed Directions Hulls,F(xiàn)DH),球包圍盒(Bounding Sphere)和軸對(duì)齊包圍盒(Axis Aligned Bounding Box, AABB)等[15。</p><p><b> 軸對(duì)齊包圍盒法&l
76、t;/b></p><p> 軸對(duì)齊包圍盒法簡(jiǎn)單性好,但是緊密型差;當(dāng)物體旋轉(zhuǎn)之后需要對(duì)包圍盒進(jìn)行同樣的旋轉(zhuǎn)并更新;當(dāng)物體變形之后只需要對(duì)變形了的基本幾何元素對(duì)應(yīng)的包圍盒重新計(jì)算,然后可以自底向上由子節(jié)點(diǎn)的包圍盒合成父節(jié)點(diǎn)的包圍盒,最后進(jìn)行包圍盒樹的更新。因此軸對(duì)齊包圍盒法尤其適合可變形對(duì)象的碰撞檢測(cè)。</p><p><b> 包圍球法</b></p
77、><p> 層次包圍球法簡(jiǎn)單性好,無論幾何體相交檢測(cè)都很簡(jiǎn)單;但是它的緊密型差;但是當(dāng)物體旋轉(zhuǎn)之后,層次包圍盒不用更新;當(dāng)物體變形之后,包圍球樹需要重新計(jì)算。因此包圍球法不適合可變形對(duì)象的碰撞檢測(cè)。</p><p><b> 方向包圍盒法</b></p><p> 方向包圍盒法是Gottschalk在1996年實(shí)現(xiàn)的RAPID系統(tǒng)中首先使用的
78、,當(dāng)時(shí)該系統(tǒng)聲稱是最快的碰撞檢測(cè)系統(tǒng),曾一度作為評(píng)價(jià)碰撞檢測(cè)算法的標(biāo)準(zhǔn)。方向包圍盒的計(jì)算相對(duì)復(fù)雜,其關(guān)鍵是尋找最佳方向,并確定在該方向上包圍對(duì)象的包圍盒的最小尺寸。方向包圍盒間相交測(cè)試的代價(jià)比較大。但是它的緊密型是最好的,可以成倍的減少參與相交檢測(cè)包圍盒的樹木和基本幾何元素的數(shù)量,在大多數(shù)情況下其總體性能優(yōu)于軸對(duì)齊包圍盒和包圍球。此外,當(dāng)幾何對(duì)象發(fā)生旋轉(zhuǎn)運(yùn)動(dòng)后,只要對(duì)方向包圍盒的基底進(jìn)行同樣的旋轉(zhuǎn)即可。因此,對(duì)于剛體的碰撞檢測(cè),方向包圍
79、盒是一種較好的選擇,但至今為止,還沒有找到一種更有效的方法來解決對(duì)象變形后方向包圍盒樹更新的問題,而重新計(jì)算每個(gè)節(jié)點(diǎn)的方向包圍盒的代價(jià)太大。因此,方向包圍盒法無法滿足可變形對(duì)象碰撞檢測(cè)中的實(shí)時(shí)性要求。</p><p><b> 固定方向包圍盒法</b></p><p> 固定方向凸包法優(yōu)于包圍盒的所有面的法向量均來自一個(gè)固定的方向向量集合,它的簡(jiǎn)單性比較好;它的緊
80、密性也是比較好的;當(dāng)物體旋轉(zhuǎn)之后,可以通過線性規(guī)劃的方法來進(jìn)行優(yōu)化計(jì)算;當(dāng)物體變形之后可以通過重新計(jì)算變形葉節(jié)點(diǎn)的包圍盒,然后嚴(yán)格按照自底向上的順序,由子節(jié)點(diǎn)的固定方向包圍盒合成父節(jié)點(diǎn)的固定方向包圍盒。</p><p> 總體比較結(jié)果如下表:</p><p> 表 2.1幾種包圍盒法比較</p><p> 綜上,AABB法最適合用于可變形對(duì)象,在本課題中是虛擬
81、心臟模型的場(chǎng)景</p><p> 一個(gè)對(duì)象的AABB被定義為包含該對(duì)象,且邊平行于局部坐標(biāo)系的坐標(biāo)軸的最小立方體。因此,描述一個(gè)AABB,僅需要六個(gè)標(biāo)量。在構(gòu)造AABB時(shí),需沿著物體局部坐標(biāo)系的軸向(X, Y, Z)來構(gòu)造,所以所有的AABB具有一致的方向。</p><p> AABB樹是基于AABB的二叉樹,按照從上到下的遞歸細(xì)分方向構(gòu)造生成。在每一次遞歸過程中,要求取最小的AABB
82、,需沿所選的剖面分別將對(duì)象分為正負(fù)兩半,并將所對(duì)應(yīng)的原始幾何元素分別歸屬正、負(fù)兩邊,整個(gè)遞歸過程類似于空間二叉剖分,只是每次剖分的對(duì)象是AABB,而不是空間區(qū)域。遞歸細(xì)分一致要進(jìn)行到每一個(gè)葉子節(jié)點(diǎn)只包含一個(gè)原始幾何元素為止,所以具有n個(gè)原始幾何元素的AABB樹具有n-1個(gè)非葉子節(jié)點(diǎn)和n個(gè)葉子節(jié)點(diǎn)。對(duì)于剖分面的選擇,一般是選擇垂直于AABB的最長(zhǎng)軸,且平分該軸的平面。經(jīng)試驗(yàn)證明,采用這種方式,大多數(shù)情況下算法的復(fù)雜度為O(1),較其他剖分
83、面選擇方法有了極大的提高。至于原始幾何元素的歸屬依據(jù)幾何元素的重心P在最長(zhǎng)軸的投影坐標(biāo)來確定。若投影坐標(biāo)大于剖分面的坐標(biāo),則在剖分面的正向;否則在負(fù)向。</p><p> 圖 2.3樹狀層次包圍盒</p><p> 圖2.3展示了一個(gè)典型的軸對(duì)齊包圍盒。虛擬心臟的中心是局部坐標(biāo)系的坐標(biāo)原點(diǎn),包圍盒是能包圍住虛擬心臟的最小的立方體,如果虛擬心臟的形狀比較復(fù)雜(如圖2.1),則會(huì)以樹狀分層
84、結(jié)構(gòu)構(gòu)造多個(gè)包圍盒。</p><p><b> 力反饋算法</b></p><p> 虛擬手術(shù)的仿真,就是通過對(duì)真實(shí)人體的組織結(jié)構(gòu)和物理屬性來進(jìn)行幾何建模和物理建模,來逼真的模擬組織器官在真實(shí)手術(shù)器械的外力交互作用下變形甚至被切割的過程,同時(shí)通過視覺/力學(xué)反饋的形式來提供逼真的手術(shù)現(xiàn)場(chǎng)臨場(chǎng)感。為了達(dá)到高度的真實(shí)感,虛擬手術(shù)仿真技術(shù)中面臨兩個(gè)關(guān)鍵的技術(shù)難點(diǎn),高逼真和
85、精確的人體組織器官建模技術(shù)和高逼真度和實(shí)時(shí)的人體組織力覺(觸覺)反饋技術(shù)。</p><p> 力反饋是一種重要的觸覺通道,這種作用于體內(nèi)的觸覺通道可以感知物體的重量以及物體對(duì)外力產(chǎn)生的反作用力。只有提供與世紀(jì)手術(shù)中相近的力反饋,虛擬手術(shù)的仿真才有現(xiàn)實(shí)意義。虛擬環(huán)境中的力的表示采用了機(jī)器人學(xué)和遙控學(xué)中描述的算法和模型來進(jìn)行底層控制。虛擬手術(shù)系統(tǒng)中的力反饋必須要維持一個(gè)非常高的刷新頻率,否則使用者會(huì)感覺到力反饋設(shè)備
86、的震動(dòng)而不是從虛擬對(duì)象傳出的反作用力,因此一般要求刷新頻率高于500Hz。實(shí)際Omega.7力反饋設(shè)備的性能(最高8kHz)要遠(yuǎn)遠(yuǎn)超出這個(gè)標(biāo)準(zhǔn)。</p><p> 力反饋算法主要有兩種模型可以選擇。</p><p><b> 有限元模型</b></p><p> 有限元分析是一種求解微分方程組或積分方程組數(shù)值解的數(shù)值技術(shù),這一解法基于完全
87、消除微分方程,即將微分方程轉(zhuǎn)化為代數(shù)方程組,或?qū)⑵⒎址匠蹋ńM)改寫為常微分方程(組)的逼近,這樣可以用標(biāo)準(zhǔn)的數(shù)值技術(shù)進(jìn)行求解。利用有限元方法可以得到精細(xì)的反作用力,但存在一個(gè)很嚴(yán)重的缺陷,就是針對(duì)目前的硬件系統(tǒng),尚遠(yuǎn)遠(yuǎn)達(dá)不到實(shí)時(shí)性的要求。因?yàn)橛邢拊枰臄?shù)據(jù)量極大,并且在使用者操作系統(tǒng)的過程中,虛擬對(duì)象和虛擬操縱終端的位置及相互作用的關(guān)系在不斷變化,需要大量的實(shí)時(shí)運(yùn)算。因此,在實(shí)際的力反饋研究中很少有使用有限元方法進(jìn)行反作用計(jì)算的先例
88、。</p><p><b> 彈簧-質(zhì)點(diǎn)模型</b></p><p> 彈簧-質(zhì)點(diǎn)模型和有限元模型是兩種常用的形變模擬模型。彈簧-質(zhì)點(diǎn)模型的原理簡(jiǎn)單,計(jì)算也較為簡(jiǎn)單,容易滿足實(shí)時(shí)性的要求,但是精度較差;而有限元模型模型復(fù)雜,精度較高。</p><p> Chai3D系統(tǒng)中,computeForces()方法使用的即是彈簧-質(zhì)點(diǎn)模型,利用胡
89、克定律進(jìn)行計(jì)算。</p><p> 在這里有一個(gè)非常重要的概念——虛擬代理(Virtual Proxy),虛擬代理是假設(shè)虛擬操縱終端上連接的一個(gè)虛擬物體。自然狀態(tài)下虛擬代理的運(yùn)動(dòng)是貪婪的(greedy),只要沒有被阻擋,它會(huì)一直沿著力的方向運(yùn)動(dòng)。一旦它在虛擬環(huán)境中碰上了表面或者某個(gè)對(duì)象,它的就會(huì)被限制在表面上的位置,這種情況下真實(shí)對(duì)象的內(nèi)陷深度會(huì)在局部達(dá)到最小。這是通過基于虛擬代理的位置和速度(也就是虛擬操縱終
90、端的位置和速度)來預(yù)測(cè)兩個(gè)物體可能發(fā)生碰撞的位置實(shí)現(xiàn)的,其中位置和速度是通過其運(yùn)動(dòng)軌跡上前一幀和簡(jiǎn)單線性插值來獲得的。在當(dāng)前幀的開始,連接在虛擬操縱終端上的物體被限制只能在一個(gè)基于預(yù)先設(shè)計(jì)的距離閾值,從而來使內(nèi)陷的值最小化。</p><p> 首先設(shè)定虛擬對(duì)象和虛擬末端控制器在虛擬環(huán)境中的位置,初始位置二者沒有接觸,也不會(huì)產(chǎn)生作用力。</p><p> 當(dāng)虛擬末端控制器位于包圍盒外部時(shí)
91、,則二者不可能發(fā)生碰撞,無需檢測(cè)。</p><p> 當(dāng)虛擬末端控制器位于包圍盒內(nèi)部以后,系統(tǒng)實(shí)時(shí)計(jì)算其與虛擬心臟邊緣的距離,當(dāng)距離為0時(shí),碰撞發(fā)生。</p><p> 隨著虛擬末端控制器繼續(xù)向內(nèi)部移動(dòng),由于對(duì)虛擬對(duì)象材質(zhì)設(shè)定的不同分兩種情況:</p><p> 對(duì)象邊界可以穿透,則虛擬末端控制器進(jìn)入虛擬心臟,開始實(shí)時(shí)計(jì)算虛擬代理的位移 ,反作用力通
92、過公式(2.1)可以得到。</p><p> 對(duì)象邊界不可穿透,則虛擬操縱對(duì)象接觸虛擬心臟后后者開始形變,這里代入胡克定律可知變形越大,則作用力越大。</p><p> 圖 2.4力反饋算法流程圖</p><p><b> 變形算法</b></p><p> 軟組織形變的物理模型是計(jì)算機(jī)圖形學(xué)中非常重要的,但又是
93、很富有挑戰(zhàn)性的一個(gè)課題。目前多數(shù)虛擬手術(shù)仿真的課題研究的研究對(duì)象是剛性組織如骨骼,而針對(duì)內(nèi)臟這類可變形組織的研究較少。軟組織的物理建模不僅要使用物體的幾何模型,還要利用其生物力學(xué)特性建立它的動(dòng)力學(xué)模型,給幾何模型賦予在適當(dāng)場(chǎng)景下的物理行為,達(dá)到視覺和觸覺上逼真的用戶體驗(yàn)。</p><p> 與力反饋算法類似,軟組織的物理建模一般也分為有限元方法和彈簧-質(zhì)點(diǎn)方法兩種。兩種方法都是希望將無限的問題簡(jiǎn)化為有限的問題,
94、求解微積分方程,得到問題的近似解。離散化程度的高低,一方面影響仿真的真實(shí)程度,一方面影響計(jì)算量的大小。而計(jì)算量的大小又會(huì)對(duì)實(shí)時(shí)性產(chǎn)生極大的影響。</p><p> 彈簧質(zhì)點(diǎn)模型以簡(jiǎn)單易行,計(jì)算量小等優(yōu)點(diǎn),被廣泛的應(yīng)用于軟組織變形的實(shí)時(shí)仿真中。其核心思想是把要仿真的對(duì)象用質(zhì)點(diǎn)離散化,質(zhì)點(diǎn)之間用復(fù)合線性彈性模型(“胡克定律”)(也可以是非線性的,在很多情形下,可以近似看作線性)的彈簧連接而成,質(zhì)點(diǎn)除了受到彈簧的彈力
95、作用外,同時(shí)還受到與速度成正比的阻尼力的約束。當(dāng)一個(gè)質(zhì)點(diǎn)在外力的作用下運(yùn)動(dòng)時(shí),其產(chǎn)生的作用力會(huì)作用在其周圍的其他質(zhì)點(diǎn),帶動(dòng)其他質(zhì)點(diǎn)的運(yùn)動(dòng),這樣可以看到,物體的變形是由質(zhì)點(diǎn)的運(yùn)動(dòng)和傳遞而產(chǎn)生的。由牛頓力學(xué)定律,每個(gè)質(zhì)點(diǎn)i的動(dòng)力學(xué)方程為:</p><p><b> ?。?.1)</b></p><p><b> 其中</b></p>
96、<p><b> ?。?.2)</b></p><p> 是質(zhì)點(diǎn)的質(zhì)量,,分別是質(zhì)點(diǎn)的速度和加速度,是粘性系數(shù), 是外力,是質(zhì)點(diǎn)i和質(zhì)點(diǎn)j之間的彈簧對(duì)質(zhì)點(diǎn)i的應(yīng)力,且</p><p><b> ?。?.3)</b></p><p> 其中,是彈簧兩端點(diǎn)的位置,是彈簧的彈性系數(shù),是彈簧的靜止長(zhǎng)度。</p&
97、gt;<p><b> 平臺(tái)搭建</b></p><p><b> 硬件平臺(tái)</b></p><p><b> 硬件選擇</b></p><p> 由于心臟模型的精密度比較高,包含較多細(xì)節(jié),并且手術(shù)環(huán)境對(duì)實(shí)時(shí)性的要求較高,因此需要性能強(qiáng)勁的硬件設(shè)備才能很好的支持圖形的處理和保證實(shí)
98、時(shí)的運(yùn)算。綜合考慮了性能和成本等因素后決定工作站的硬件配置如下:</p><p> 表 3.1 圖形工作站硬件配置</p><p><b> 安裝軟件環(huán)境</b></p><p> 根據(jù)紅京鳥力維(北京)科技有限公司工作人員的建議,同時(shí)考慮了我本人的使用習(xí)慣,采用Linux平臺(tái)作為開發(fā)和測(cè)試環(huán)境。但由于此平臺(tái)在實(shí)驗(yàn)室其他人員中的普及度不高
99、,故同時(shí)使用了Windows平臺(tái)。在進(jìn)行本課題時(shí),微軟已經(jīng)發(fā)布了Windows 8,但Chai3D 2.0的時(shí)代對(duì)Windows 8的支持度無法得知,故采用了相對(duì)老舊但兼容性更好的Windows 7 64位。</p><p><b> Linux平臺(tái)</b></p><p> Linux是自由軟件,它是一個(gè)開放源代碼的類UNIX操作系統(tǒng),在遵循GNU通用許可證的條
100、件下任何人都可以自由的使用Linux所有的底層源代碼,也可以自由的修改和再發(fā)布。Linux實(shí)際上是一個(gè)執(zhí)行內(nèi)存管理、任務(wù)調(diào)度的內(nèi)核,通常使用者使用的Linux全稱GNU/Linux,即包含Linux內(nèi)核和由GNU項(xiàng)目開發(fā)的一套軟件系統(tǒng)。Arch Linux是Linux的一個(gè)發(fā)行版,它是一個(gè)相對(duì)非常自由的發(fā)行版,使用者可以根據(jù)需要定制系統(tǒng)的組件,并且由于該操作系統(tǒng)針對(duì)64位處理器做了優(yōu)化,因此性能較通常的其他發(fā)行版如Ubuntu等會(huì)有一定
101、程度的提升。</p><p> 按照Arch Linux官方Wiki安裝了操作系統(tǒng)之后,根據(jù)力反饋設(shè)備的安裝說明書,需要安裝以下組件:</p><p> Quadro專業(yè)顯卡桌面驅(qū)動(dòng)程序331.79(Linux 64位),提供了對(duì)最新OpenGL標(biāo)準(zhǔn)4.4的支持。</p><p> libusb-1.0,它是一個(gè)開源的C程序庫,它使應(yīng)用在不同的操作系統(tǒng)上可以很
102、容易的訪問USB設(shè)備。Libusb設(shè)計(jì)了一系列外部API為應(yīng)用程序調(diào)用,通過這些API應(yīng)用程序可以操作硬件,從libusb的源代碼可以看出這些API調(diào)用了內(nèi)核的底層接口,和內(nèi)核驅(qū)動(dòng)中所用到的函數(shù)所實(shí)現(xiàn)的功能相似,但libusb更加接近USB規(guī)范,使得libusb的使用也比開發(fā)內(nèi)核驅(qū)動(dòng)相對(duì)容易得多。</p><p> freeglut 2.8,GLUT最初是《OpenGL編程指南(第二版)》中的示例程序,自那以后
103、,GLUT簡(jiǎn)單、跨平臺(tái)的特點(diǎn)使其在各種應(yīng)用中得到廣泛使用。但GLUT并不是開源軟件,無法自由使用,且該項(xiàng)目目前已經(jīng)停止開發(fā),同時(shí)由于其許可證的原因,禁止任何人發(fā)布對(duì)其修改后的版本。Freeglut是于1999年12月由開源社區(qū)發(fā)起的項(xiàng)目,目的是重新實(shí)現(xiàn)GLUT,并以一種更自由的許可條款發(fā)布出來供自由使用。目前freeglut具有GLUT的幾乎所有功能,并且有一些更靈活的擴(kuò)展。</p><p> Qt 5.2開發(fā)
104、套件。Qt當(dāng)前的最新正式版本是5.2,包括SDK和集成開發(fā)環(huán)境Qt Creator。</p><p> 英偉達(dá)驅(qū)動(dòng)程序從官方網(wǎng)站獲取,下載完成后添加可執(zhí)行權(quán)限,執(zhí)行安裝即可。其他軟件可以通過pacman –S libusb freeglut qtcreator來獲取。</p><p><b> Windows平臺(tái)</b></p><p>
105、 Windows平臺(tái)下安裝Quadro專業(yè)顯卡桌面驅(qū)動(dòng)程序334.95WHQL,F(xiàn)orce Dimension提供了可以直接安裝的力反饋設(shè)備驅(qū)動(dòng)程序,完成安裝即可。</p><p><b> 測(cè)試</b></p><p> 完成上述兩個(gè)平臺(tái)的安裝后,運(yùn)行Force Dimension附帶的測(cè)試工具包進(jìn)行測(cè)試,以檢測(cè)平臺(tái)安裝是否正常,一切正常后進(jìn)入開發(fā)階段。<
106、/p><p><b> 設(shè)備初始化</b></p><p> 力反饋設(shè)備每次開機(jī)時(shí)需要校準(zhǔn)(初始化),對(duì)于Omega.3而言,由于只有三個(gè)自由度的輸入/輸出,只需要將校準(zhǔn)開關(guān)插入校準(zhǔn)孔即可完成校準(zhǔn),這時(shí)校準(zhǔn)指示燈長(zhǎng)亮,對(duì)Omega.7而言,由于有7個(gè)自由度,校準(zhǔn)時(shí)需要向每個(gè)可以運(yùn)動(dòng)的方向旋轉(zhuǎn)到盡頭,共6次,最后一次逆向前一次的旋轉(zhuǎn)方向,即可校準(zhǔn),這時(shí)校準(zhǔn)指示燈長(zhǎng)亮。&
107、lt;/p><p><b> 問題排除</b></p><p> 在Linux下遇到用戶權(quán)限導(dǎo)致的Chai3D程序無法正常運(yùn)行的問題。</p><p> 正常情況下應(yīng)該使用普通用戶(非root)用戶登錄系統(tǒng),進(jìn)行所有操作,當(dāng)需要root權(quán)限時(shí)使用sudo臨時(shí)切換到root用戶,但在調(diào)試系統(tǒng)時(shí)發(fā)現(xiàn)如果用普通用戶則系統(tǒng)提示“segmentatio
108、n fault”,而臨時(shí)切換到sudo用戶,則提示無法打開display:0。分析以后得到的結(jié)論是:普通用戶運(yùn)行程序出現(xiàn)錯(cuò)誤是因?yàn)闆]有該文件的執(zhí)行權(quán)限,可能是由于程序調(diào)用了涉及需要高級(jí)權(quán)限的系統(tǒng)調(diào)用引起的。當(dāng)使用sudo臨時(shí)切換時(shí),由于當(dāng)前用戶是普通用戶,display:0已經(jīng)被普通用戶使用,因此無法再被root用戶使用,導(dǎo)致上述錯(cuò)誤。Linux桌面環(huán)境下默認(rèn)是不允許root使用者登錄桌面環(huán)境的,因此需要調(diào)整系統(tǒng)參數(shù)允許root用戶直接
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 虛擬手術(shù)中力反饋的研究與實(shí)現(xiàn).pdf
- 虛擬手術(shù)仿真中基于形變模型的力反饋關(guān)鍵技術(shù)研究.pdf
- 虛擬手術(shù)系統(tǒng)中力反饋技術(shù)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 面向虛擬手術(shù)系統(tǒng)的力反饋的研究與實(shí)現(xiàn).pdf
- 基于虛擬手術(shù)的力反饋機(jī)制研究.pdf
- 基于力反饋的心血管介入虛擬手術(shù)仿真與評(píng)價(jià).pdf
- 具有力反饋的虛擬手術(shù)設(shè)備的研究與實(shí)現(xiàn).pdf
- 面向虛擬手術(shù)的力反饋技術(shù)研究.pdf
- 基于力反饋技術(shù)的虛擬手術(shù)硬件平臺(tái)的研究與實(shí)現(xiàn).pdf
- 虛擬手術(shù)中帶力反饋的縫合模擬研究.pdf
- 虛擬手術(shù)系統(tǒng)的搭建和力反饋算法研究.pdf
- 基于力反饋的虛擬手術(shù)切割技術(shù)研究.pdf
- 基于點(diǎn)云模型虛擬手術(shù)訓(xùn)練系統(tǒng)的碰撞檢測(cè)及力反饋算法研究.pdf
- 腦外科虛擬手術(shù)力反饋設(shè)備的設(shè)計(jì)與研究.pdf
- 用于心臟微創(chuàng)手術(shù)的觸覺傳感器與接觸模型研究.pdf
- 虛擬手術(shù)力反饋人機(jī)交互控制系統(tǒng)研究.pdf
- 基于力反饋的虛擬手術(shù)器械的設(shè)計(jì)與研究.pdf
- 虛擬針刺手術(shù)軟組織形變建模與力反饋算法研究.pdf
- 微創(chuàng)手術(shù)機(jī)器人力反饋主手設(shè)計(jì)與仿真.pdf
- 典型場(chǎng)景紅外陰影仿真的模型設(shè)計(jì)與軟件實(shí)現(xiàn).pdf
評(píng)論
0/150
提交評(píng)論