本發(fā)明涉及軟組織力觸覺建模技術(shù)領(lǐng)域,具體涉及基于放松LRA約束算法的縫合模擬方法。
背景技術(shù):
在手術(shù)過程中,縫合至關(guān)重要,通過虛擬手術(shù)訓(xùn)練系統(tǒng)可以幫助實習(xí)醫(yī)生快速掌握縫合的訣竅,幫助新手醫(yī)生學(xué)習(xí)縫合技術(shù)。
常用的物理模型中,彈簧質(zhì)點模型具有建模簡單、計算靈活、速度快的優(yōu)點,但該模型穩(wěn)定性差。有限元模型精度高,可保證在大形變下模型不發(fā)生失真,但在計算力反饋和形變時比較復(fù)雜。因此,具有良好的交互功能和形變效果的柔體模型對于虛擬手術(shù)系統(tǒng)來說至關(guān)重要。
技術(shù)實現(xiàn)要素:
為了克服現(xiàn)有技術(shù)中的不足,本發(fā)明提供了基于放松LRA約束算法的縫合模擬方法,用以解決在彈簧質(zhì)點模型中大形變下模型不穩(wěn)定導(dǎo)致形變失真,以及在有限元模型中計算復(fù)雜的問題。
為了解決上述技術(shù)問題,本發(fā)明所采用的技術(shù)方案是:
基于放松LRA約束算法的縫合模擬方法,所述方法基于彈簧質(zhì)點模型構(gòu)建皮膚模型,采用FTL算法跟蹤縫合線軌跡,采用放松LRA約束算法優(yōu)化皮膚形變,包括以下步驟:
步驟一,根據(jù)醫(yī)學(xué)影像,使用基于彈簧質(zhì)點模型構(gòu)建皮膚模型,采用拓?fù)浣Y(jié)構(gòu)為四邊形的彈簧質(zhì)點模型構(gòu)建皮膚模型,
步驟二,采用跟蹤頭結(jié)點FTL(Follow The Leader)算法跟蹤縫合線軌跡,使用與縫合線段數(shù)相同的小圓柱體模擬縫合線,其具體計算過程為:使用FTL方法計算各個縫合線質(zhì)點的新位置,設(shè)點α受外力作用從位置Pα,old運動到新位置Pα,new,則它相鄰質(zhì)點α+1的新位置Pα+1,new就是沿Pα+1,old到Pα,new方向移動一個單位長度P,該過程的數(shù)學(xué)公式表達(dá)如下,
Pα+1,new=Pα,new+P
其中,P為從Pα+1,old到Pα,new方向的一個單位長度,Pα+1,old為與質(zhì)點α相鄰的質(zhì)點α+1的舊位置,Pα,new為縫合線上質(zhì)點α的新位置,Pα+1,new為質(zhì)點α+1的新位置,||·||為范數(shù)符號,用于求向量的長度;
步驟三,采用放松長距離依附約束LRA(Long Range Attachment)算法對皮膚形變模擬進(jìn)行優(yōu)化,其具體過程為:
設(shè)j為縫合點,i為與縫合點相鄰的質(zhì)點,計算原始距離為質(zhì)點i和j的初始距離,質(zhì)點i的坐標(biāo)隨縫合點j的坐標(biāo)變化而變化,若質(zhì)點i超出了理想距離di,則將它約束至以j為球心,di為半徑的軌道上,di數(shù)學(xué)表達(dá)如下,
其中di是質(zhì)點i和縫合點j的理想距離,是質(zhì)點i和縫合點j的初始距離,β是用戶定義的放松參數(shù),xj為縫合點j的坐標(biāo),xi為質(zhì)點i的坐標(biāo);
步驟四,皮膚在縫合線的拉動下發(fā)生形變,通過皮膚的形變大小計算皮膚彈簧拉力,其具體過程為:
相鄰各質(zhì)點i對縫合點j產(chǎn)生阻礙形變的彈簧力,其在縫合線方向上的合力計算如下:
其中,F(xiàn)為縫合點受到的皮膚彈簧拉力,projN(·)代表求括號內(nèi)向量在N方向上的投影,N為以縫合點為起點沿縫合線反方向的單位向量,σ(i)為受形變影響的質(zhì)點集合,k為彈簧彈性系數(shù);
步驟五,根據(jù)上一步得出的彈簧拉力,對縫合點進(jìn)行打結(jié)力模擬,其技術(shù)方案為:
設(shè)縫合線與皮膚的夾角為θ,皮膚下方的縫合線對縫合點j有一個以縫合點為起點沿皮膚下方縫合線方向的水平拉力Fdown,同時皮膚上方的縫合線對縫合點有一個大小相等的以縫合點為起點沿皮膚上方縫合線方向的拉力Fup,縫合點在這兩個拉力的作用下發(fā)生形變,F(xiàn)down和Fup大小相等方向不同,只考慮皮膚在切向上的形變,考察縫合過程的切向力平衡方程:
Fup·cosθ+Fdown-F=aj·mj
其中Fup和Fdown大小相等為縫合線拉力,θ為縫合線與皮膚的夾角,aj為縫合點j的加速度,mj為縫合點j的質(zhì)量,
步驟六,更新縫合點的坐標(biāo)及速度;
根據(jù)力的平衡方程計算得到的加速度實時更新縫合點的坐標(biāo)和速度,運動方程如下,
其中,是縫合點j經(jīng)過Δt時間后的運動速度,是縫合點j在t時刻的運動速度,Δt為經(jīng)過的時間,為縫合點j經(jīng)過Δt時間后的坐標(biāo),為縫合點j在t時刻的坐標(biāo)。
本發(fā)明的有益效果是:
基于放松型LRA約束算法的彈簧質(zhì)點模型可以在較好控制縫合過程中柔體的形變的前提下實現(xiàn)快速而逼真的力反饋計算,相輔相成的形變更新和力反饋更新讓系統(tǒng)具有良好的交互性,本發(fā)明的技術(shù)效果包括:①基于彈簧質(zhì)點模型的皮膚重建不但能很好地表現(xiàn)皮膚均勻的質(zhì)感,而且計算簡單;②基于FTL算法的縫合線軌跡跟蹤表現(xiàn)了縫合線的真實感和立體感;③基于放松型LRA約束算法防止皮膚在大形變下失真,彌補了彈簧質(zhì)點模型的不穩(wěn)定性;④采用一針一結(jié)的模擬方式,讓縫合模擬更符合醫(yī)學(xué)邏輯;⑤通過力平衡方程實時更新運動方程,通過運動方程實時更新縫合點的坐標(biāo)及速度,從而更新彈簧力和力平衡方程,實現(xiàn)力反饋與皮膚形變的實時更新。
附圖說明
圖1是本發(fā)明的流程示意圖。
圖2是左側(cè)皮膚表面在縫合線的拉動下的形變示意圖。
圖3是形變平面橫截面的受力示例圖。
具體實施方式
下面結(jié)合附圖對本發(fā)明作進(jìn)一步描述。以下實施例僅用于更加清楚地說明本發(fā)明的技術(shù)方案,而不能以此來限制本發(fā)明的保護(hù)范圍。
如圖1所示,本發(fā)明的基于放松型LRA約束的縫合打結(jié)模擬算法,包括以下步驟:
步驟一,基于彈簧質(zhì)點模型進(jìn)行皮膚模型重建。
基于彈簧質(zhì)點模型進(jìn)行皮膚模型重建屬于現(xiàn)有技術(shù),就是將目標(biāo)軟組織表面用彈簧質(zhì)點模型表達(dá),由于皮膚的質(zhì)量分布相對均勻,所以采用如圖2所示的彈簧質(zhì)點模型拓?fù)浣Y(jié)構(gòu)——質(zhì)點分布均勻的四邊形拓?fù)浣Y(jié)構(gòu)。使用彈簧質(zhì)點模型不但可以很好地表現(xiàn)皮膚組織,而且使軟組織重建快捷簡單、計算方便。
步驟二,采用基于FTL算法對縫合線進(jìn)行軌跡跟蹤。
基于FTL算法對縫合線進(jìn)行軌跡跟蹤屬于現(xiàn)有技術(shù),使用與縫合線段數(shù)相同的若干個小圓柱體模擬縫合線,其具體計算過程為:使用FTL方法計算各個縫合線質(zhì)點的新位置,設(shè)點α受外力作用從Pα,old運動到Pα,new,則它相鄰質(zhì)點α+1的新位置就是沿Pα+1,old到Pα,new方向移動一個單位長度。該過程的數(shù)學(xué)公式表達(dá)如下,
Pα+1,new=Pα,new+P
其中,P為從Pα+1,old到Pα,new方向的一個單位長度,Pα+1,old為與質(zhì)點α相鄰的質(zhì)點α+1的舊位置,Pα,new為縫合線上質(zhì)點α的新位置,Pα+1,new為質(zhì)點α+1的新位置,||·||為范數(shù)符號,用于求向量的長度,基于FTL的縫合線軌跡跟蹤使得縫合線更為逼真,表現(xiàn)了縫合線的立體感,還可以調(diào)節(jié)縫合線的長短、粗細(xì)。
步驟三,采用基于放松型LRA約束算法對皮膚形變模擬進(jìn)行優(yōu)化。
原始的LRA約束被用來處理不可延展的布料,核心思想是將質(zhì)點以原始距離約束在縫合點上。在軟組織中,離縫合點更遠(yuǎn)的質(zhì)點更容易被拉扯,因此需要改良LRA方法使其適用于軟組織結(jié)構(gòu),即放松型LRA約束,其具體計算過程為:
以左側(cè)縫合點jleft為例,右側(cè)縫合點類似,其主要算法描述如下:計算左側(cè)初始距離為左側(cè)質(zhì)點ileft和jleft的初始距離,ileft的坐標(biāo)隨左側(cè)縫合點jleft坐標(biāo)的變化而變化,若ileft超出了左側(cè)理想距離di,left,則將它約束至以jleft為球心,以di,left為半徑的軌道上,di,left數(shù)學(xué)表達(dá)如下,
其中di,left是左側(cè)質(zhì)點ileft和左側(cè)縫合點jleft的左側(cè)理想距離,是ileft和jleft的初始距離,β是用戶定義的放松參數(shù),β會影響到皮膚的剛度,xj,left為左側(cè)縫合點jleft的坐標(biāo),xi,left為左側(cè)質(zhì)點ileft的坐標(biāo)。
如圖2所示的左側(cè)皮膚在縫合線的拉力下發(fā)生形變,基于放松型LRA約束算法的形變模擬防止皮膚在大形變下發(fā)生失真,彌補了彈簧質(zhì)點模型的不穩(wěn)定性,同時提供了方便的計算和寫實的模擬。
步驟四,通過皮膚形變計算皮膚彈簧拉力。
當(dāng)皮膚發(fā)生形變時,如圖2所示,左側(cè)質(zhì)點ileft對左側(cè)縫合點jleft產(chǎn)生阻礙形變的彈簧力,其在左側(cè)縫合線方向上的合力計算如下:
其中Fleft為左側(cè)縫合點受到的左側(cè)皮膚彈簧拉力,代表求括號內(nèi)向量在Nleft方向上的投影,Nleft為以左側(cè)縫合點jleft為起點沿縫合線反方向的單位向量,σ(i)為受形變影響的質(zhì)點下標(biāo)合集,k為彈簧彈性系數(shù),di,left是左側(cè)質(zhì)點ileft和左側(cè)縫合點jleft的左側(cè)理想距離,是左側(cè)質(zhì)點ileft和縫合點jleft的左側(cè)初始距離。
步驟五,對左右兩個縫合點分別進(jìn)行打結(jié)力模擬。
醫(yī)學(xué)縫合中,縫合線自皮膚下部穿過裂口兩側(cè)后,通過打結(jié)拉緊傷口并完成縫合,皮膚在打結(jié)時才發(fā)生形變,因此打結(jié)模擬是縫合模擬的關(guān)鍵,采用一針一結(jié)的模擬方式;本過程不模擬針和穿刺過程,只模擬打結(jié)時的形變過程和這一過程中的力反饋,其具體計算過程為:
在打結(jié)過程中,此時縫合線處于繃緊狀態(tài),為了方便模擬,近似認(rèn)為縫合線在傷口上方交叉拉動,如圖3力示意圖,此時左手縫合線與皮膚的夾角為θ1,右手縫合線與皮膚的夾角為θ2,皮膚下方的縫合線對左縫合點jleft有一個以jleft為起點沿縫合線方向的水平拉力Fleft,down,對右縫合點jright有一個以jright為起點沿縫合線方向的水平拉力Fright,down,同時皮膚上方的縫合線對左右縫合點分別有一個大小相等的斜向上的沿縫合線方向的拉力Fleft,up和Fright,up,兩側(cè)縫合點在這兩個拉力的作用下分別發(fā)生形變。由于在同一根線上的拉力大小處處相等,因此Fleft,down、Fright,down、Fleft,up和Fright,up大小相等,方向不同,以左側(cè)縫合點jleft為考察點考察力的切向和法向力平衡方程,右側(cè)縫合點jright類似,如下:
其中Fleft,down、Fright,down、Fleft,up和Fright,up為左側(cè)縫合線上的拉力,其大小相等,θ2為左側(cè)縫合線與皮膚的夾角,aleft為左側(cè)縫合點的加速度,mj,left為左側(cè)縫合點的質(zhì)量,F(xiàn)stick為粘合力,其大小與其他力的法向分量大小之和相等,用來抵消皮膚在法向上受到的力,從而消除皮膚在法向上的形變。
步驟六,更新左右縫合點的坐標(biāo)及速度。
根據(jù)力的平衡方程計算得到的加速度實時更新縫合點的坐標(biāo)和速度,與縫合點相鄰或相近的若干質(zhì)點通過改良的LRA約束算法更新位置,以左側(cè)縫合點jleft為例,右側(cè)縫合點jright類似,具體計算如下,
其中,是左側(cè)縫合點jleft經(jīng)過Δt時間后的運動速度,是左側(cè)縫合點jleft在t時刻的運動速度,為左側(cè)縫合點jleft經(jīng)過Δt時間后的坐標(biāo),為左側(cè)縫合點jleft在t時刻的坐標(biāo)。
力平衡方程與運動方程相互影響,兩個過程相輔相成,簡單的縫合線角度改變和外力大小改變將會影響整個縫合打結(jié)模擬系統(tǒng),從而實現(xiàn)力反饋與皮膚形變的實時更新。
本發(fā)明算法可以在計算簡單的同時確保穩(wěn)定的變形模擬,在交互過程中,操作者可以感受到逼真的觸覺信息。
以上所述僅是本發(fā)明的優(yōu)選實施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明技術(shù)原理的前提下,還可以做出若干改進(jìn)和變型,這些改進(jìn)和變型也應(yīng)視為本發(fā)明的保護(hù)范圍。