【附圖說明】
[0020] 圖1為本發(fā)明一種基于蟻群算法的血管三維路徑規(guī)劃方法的流程圖。
【具體實施方式】
[0021] 下面結(jié)合附圖對本發(fā)明的實施方式作進一步詳細的說明。
[0022] 實施例一: 參見圖1,一種基于蟻群算法的血管三維路徑規(guī)劃方法,其特征在于操作步驟如下,1 數(shù)據(jù)導(dǎo)入、2血管建模、3血管中心線提取、4建立血管中心線網(wǎng)絡(luò)拓撲結(jié)構(gòu)、5螞蟻偵察算 法、6參數(shù)初始化、7啟發(fā)式信息計算、8概率選擇、9信息素動態(tài)揮發(fā)、10信息素增量計算、11 信息素更新、12規(guī)劃結(jié)束判斷、13結(jié)果輸出。
[0023] 所述步驟1數(shù)據(jù)導(dǎo)入:導(dǎo)入一組完整的醫(yī)學(xué)CTA圖像數(shù)據(jù)(DIC0M); 所述步驟2血管建模:將導(dǎo)入的CTA圖像數(shù)據(jù)采用基于3D水平集的方法進行血管建 模; 所述步驟3血管中心線提取:將建立的血管模型采用基于Voronoi圖和Eikonal方程 的方法提取血管中心線,并求得最大內(nèi)切球半徑R; 所述步驟4建立血管中心線網(wǎng)絡(luò)拓撲結(jié)構(gòu):根據(jù)中心線提取結(jié)果建立網(wǎng)絡(luò)拓撲結(jié)構(gòu), 確定結(jié)點和邊的數(shù)量,并計算各段路徑的距離、最大曲率、最大撓率和最小直徑; 4-1距離計算,采用第一類曲線積分來計算空間曲線的長度; 4-2最大曲率計算,根據(jù)參數(shù)化形式空間曲線方程的曲率計算公式計算該路徑上每個 點的曲率并求得該路徑的最大曲率; 4-3最大撓率計算,根據(jù)參數(shù)化形式空間曲線方程的撓率計算公式計算該路徑上每個 點的撓率并求得該路徑的平均曲率糕_:; 4- 4最小直徑計算,根據(jù)最大內(nèi)切球半徑R計算中心線上每個點的直徑D,由此計算 各路徑上的最小直徑巧_,假設(shè)手術(shù)導(dǎo)管的直徑為?,則要求這段血管路徑的最小直徑 W以保證導(dǎo)管能夠穿過血管。
[0024] 所述步驟5螞蟻偵察算法:在確定起始點后,讓螞蟻先對整個網(wǎng)絡(luò)拓撲結(jié)構(gòu)進行 偵察,區(qū)分并去除這類非終點端結(jié)點后再執(zhí)行蟻群算法。這類偵察螞蟻具備自我復(fù)制功能, 在偵察過程中可以根據(jù)頂點V的度數(shù)N,即邊數(shù),相應(yīng)自我復(fù)制(除了已訪問的邊之外),再 分別往其他頂點繼續(xù)偵察; 5- 1根據(jù)起點V和終點|的度數(shù)分別放置對應(yīng)數(shù)量的螞蟻謂; 5-2從頂點集F中選擇一個頂點難,判斷頂點難是否已偵察; 5-2-1若巧沒有偵察,則每只螞蟻偵察頂點_時先將其保存至各自的路由表中,做 偵察標(biāo)記; 5-2-2若叉已經(jīng)偵察,則返回到5-2 ; 5-3每只螞蟻判斷偵察的頂點_的度數(shù)纖, 5-3-1若章1,則復(fù)制只螞蟻副本,繼續(xù)偵察; 5-3-2若1則報告該頂點聽為異常點,剔除該點,修改其上一頂點通4的度數(shù) ,更新整體網(wǎng)絡(luò)拓撲結(jié)構(gòu),進入步驟5-4 ; 5-4根據(jù)路由表埤沿原路退回到上一頂點_:,若_戶|,則執(zhí)行步驟5-3-2 ;若__:1: ,則進入步驟5-5 ; 5-5若所有頂點都已偵察完,則終止偵察,進入?yún)?shù)初始化6 ;否則進入步驟5-3 ; 所述步驟6參數(shù)初始化:初始化各參數(shù),如設(shè)置螞蟻數(shù)量M,信息素強度常量_,迭代總 數(shù),導(dǎo)管直徑II,將螞蟻置于初始位置。
[0025] 實施例二:本實施例與實施例一基本相同,特別之處如下: 所述步驟7啟發(fā)式信息計算:本發(fā)明規(guī)劃路徑的標(biāo)準(zhǔn)是手術(shù)安全和路徑最優(yōu),因此路 徑規(guī)劃中不僅要考慮到血管的長度iy、最大曲率和最大撓率__,還要考慮到血管的 最小直徑; 所述步驟8概率選擇:在蟻群算法的每一步路徑選擇中,螞蟻爾:按照概率公式的比率 決定下一步往哪條路上移動; 所述步驟9信息素動態(tài)揮發(fā):信息素揮發(fā)速度會隨著時間的推移受到溫度、濕度等因 素而變化,是一個動態(tài)的變化的過程,越復(fù)雜的路徑,啟發(fā)信息越小,揮發(fā)速度越快,信息素 殘留越少,因此信息素的揮發(fā)系數(shù)p隨著啟發(fā)式信息的變化而動態(tài)揮發(fā)。
[0026] 實施例三:本實施例與實施例二基本相同,特別之處如下: 所述步驟10信息素增量計算:信息素更新模型是基本蟻群算法的隨機搜索與快速收 斂重要環(huán)節(jié)。本發(fā)明針對問題本身的全局性最優(yōu)要求,采用蟻周模型;考慮到血管最小直徑 和導(dǎo)管直徑在手術(shù)中的影響,按照改進后信息素增量模型進行計算; 所述步驟11信息素更新:初始時刻各路徑上的信息素量是相等的,當(dāng)螞蟻完成一次循 環(huán)后,信息素會隨著時間的推移逐漸揮發(fā),因此要對信息素濃度要進行更新,在螞蟻進入下 一個循環(huán)之前對相應(yīng)路徑上的信息素做相應(yīng)更新; 所述步驟12規(guī)劃結(jié)束判斷:當(dāng)達到最大迭代次數(shù)則退出循環(huán),否則進入啟發(fā)式信息計 算7,繼續(xù)循環(huán); 所述步驟13結(jié)果輸出:整理路由表輸出結(jié)果。
【主權(quán)項】
1. 一種基于蟻群算法的血管三維路徑規(guī)劃方法,其特征在于操作步驟如下:1數(shù)據(jù)導(dǎo) 入、2血管建模、3血管中心線提取、4建立血管中心線網(wǎng)絡(luò)拓撲結(jié)構(gòu)、5螞蟻偵察算法、6參數(shù) 初始化、7啟發(fā)式信息計算、8概率選擇、9信息素動態(tài)揮發(fā)、10信息素增量計算、11信息素更 新、12規(guī)劃結(jié)束判斷、13結(jié)果輸出; 所述步驟1數(shù)據(jù)導(dǎo)入:導(dǎo)入一組完整的醫(yī)學(xué)CTA圖像數(shù)據(jù)(DICOM); 所述步驟2血管建模:將導(dǎo)入的CTA圖像數(shù)據(jù)采用基于3D水平集的方法進行血管建 模; 所述步驟3血管中心線提?。簩⒔⒌难苣P筒捎没赩oronoi圖和Eikonal方程 的方法提取血管中心線,并求得最大內(nèi)切球半徑R ; 所述步驟4建立血管中心線網(wǎng)絡(luò)拓撲結(jié)構(gòu):根據(jù)中心線提取結(jié)果建立網(wǎng)絡(luò)拓撲結(jié)構(gòu), 確定結(jié)點和邊的數(shù)量,并計算各段路徑的距離、最大曲率、最大撓率和最小直徑; 4-1距離計算,采用第一類曲線積分來計算空間曲線的長度; 4-2最大曲率計算,根據(jù)參數(shù)化形式空間曲線方程的曲率計算公式計算該路徑上每個 點的曲率并求得該路徑的最大曲率C1maa ; 4-3最大撓率計算,根據(jù)參數(shù)化形式空間曲線方程的撓率計算公式計算該路徑上每個 點的撓率并求得該路徑的平均曲率種_:; 4- 4最小直徑計算,根據(jù)最大內(nèi)切球半徑R計算中心線上每個點的直徑D,由此計算 各路徑上的最小直徑假設(shè)手術(shù)導(dǎo)管的直徑為響I,則要求這段血管路徑的最小直徑 Dmia > 以保證導(dǎo)管能夠穿過血管; 所述步驟5螞蟻偵察算法:在確定起始點后,讓螞蟻先對整個網(wǎng)絡(luò)拓撲結(jié)構(gòu)進行偵察, 區(qū)分并去除這類非終點端結(jié)點后再執(zhí)行蟻群算法; 這類偵察螞蟻具備自我復(fù)制功能,在偵察過程中可以根據(jù)頂點V的度數(shù)N,即邊數(shù),相 應(yīng)自我復(fù)制(除了已訪問的邊之外),再分別往其他頂點繼續(xù)偵察; 5- 1根據(jù)起點V和終點I的度數(shù)分別放置對應(yīng)數(shù)量的螞蟻__=3___|聲:議; 5-2從頂點集V中選擇一個頂點觀,判斷頂點麵是否已偵察; 5-2-1若兄沒有偵察,則每只螞蟻偵察頂點_時先將其保存至各自的路由表中,做 偵察標(biāo)記; 5-2-2若聽已經(jīng)偵察,則返回到5-2 ; 5-3每只螞蟻判斷偵察的頂點_的度數(shù)_:, 5-3-1若|_1,則復(fù)制只螞蟻副本,繼續(xù)偵察; 5-3-2若_夂1,則報告該頂點漏為異常點,剔除該點,修改其上一頂點顆&的度數(shù)難-? ,更新整體網(wǎng)絡(luò)拓撲結(jié)構(gòu),進入步驟5-4 ; 5-4根據(jù)路由表Tai沿原路退回到上一頂點·_若讓產(chǎn)則執(zhí)行步驟5-3-2 ;若鞔_, ,則進入步驟5-5 ; 5-5若所有頂點都已偵察完,則終止偵察,進入?yún)?shù)初始化6 ;否則進入步驟5-3 ; 所述步驟6參數(shù)初始化:初始化各參數(shù),如設(shè)置螞蟻數(shù)量M,信息素強度常量:_,迭代總 數(shù),導(dǎo)管直徑K,將螞蟻置于初始位置。2. 根據(jù)權(quán)利要求1所述的基于蟻群算法的血管三維路徑規(guī)劃方法,其特征在于所述 步驟7啟發(fā)式信息計算:本發(fā)明規(guī)劃路徑的標(biāo)準(zhǔn)是手術(shù)安全和路徑最優(yōu),因此路徑規(guī)劃中 不僅要考慮到血管的長度|§:、最大曲率€_和最大撓率1^:,還要考慮到血管的最小直徑 η δΠξ? * 所述步驟8概率選擇:在蟻群算法的每一步路徑選擇中,螞蟻_按照概率公式的比率 決定下一步往哪條路上移動; 所述步驟9信息素動態(tài)揮發(fā):信息素揮發(fā)速度會隨著時間的推移受到溫度、濕度等因 素而變化,是一個動態(tài)的變化的過程,越復(fù)雜的路徑,啟發(fā)信息越小,揮發(fā)速度越快,信息素 殘留越少,因此信息素的揮發(fā)系數(shù)I賄著啟發(fā)式信息衡^)的變化而動態(tài)揮發(fā)。3.根據(jù)權(quán)利要求1所述的基于蟻群算法的血管三維路徑規(guī)劃方法,其特征在于所述步 驟10信息素增量計算:信息素更新模型是基本蟻群算法的隨機搜索與快速收斂重要環(huán)節(jié), 本發(fā)明針對問題本身的全局性最優(yōu)要求,采用蟻周模型;考慮到血管最小直徑和導(dǎo)管 直徑在手術(shù)中的影響,按照改進后信息素增量模型進行計算; 所述步驟11信息素更新:初始時刻各路徑上的信息素量是相等的,當(dāng)螞蟻完成一次循 環(huán)后,信息素會隨著時間的推移逐漸揮發(fā),因此要對信息素濃度要進行更新,在螞蟻進入下 一個循環(huán)之前對相應(yīng)路徑上的信息素做相應(yīng)更新; 所述步驟12規(guī)劃結(jié)束判斷:當(dāng)達到最大迭代次數(shù)則退出循環(huán),否則進入啟發(fā)式信息計 算7,繼續(xù)循環(huán); 所述步驟13結(jié)果輸出:整理路由表輸出結(jié)果。
【專利摘要】本發(fā)明公開了一種基于蟻群算法的血管三維路徑規(guī)劃方法,本方法的操作步驟如下:1數(shù)據(jù)導(dǎo)入、2血管建模、3血管中心線提取、4建立血管中心線網(wǎng)絡(luò)拓撲結(jié)構(gòu)、5螞蟻偵察算法、6參數(shù)初始化、7啟發(fā)式信息計算、8概率選擇、9信息素動態(tài)揮發(fā)、10信息素增量計算、11信息素更新、12規(guī)劃結(jié)束判斷、13結(jié)果輸出。該方法在血管中心線提取的基礎(chǔ)上采用螞蟻偵察算法,通過改進蟻群算法,并綜合考慮導(dǎo)管直徑、血管長度、最小直徑、最大曲率和最大撓率輔助外科醫(yī)生規(guī)劃手術(shù)的最優(yōu)路徑。該方法提血管介入手術(shù)術(shù)前路徑規(guī)劃的可靠性,保證了導(dǎo)管的通過性,能夠為外科醫(yī)生提供一種新的手術(shù)路徑參考標(biāo)準(zhǔn)。
【IPC分類】G06N3/00, A61B19/00, G06F17/50
【公開號】CN105167849
【申請?zhí)枴?br>【發(fā)明人】陳一民, 高明柯, 黃晨, 李澤宇, 張云華, 許麗娟, 張典華, 鄒一波, 劉權(quán), 鄒國志, 高雅平, 呂圣卿, 陸佳輝, 趙林林
【申請人】上海大學(xué)
【公開日】2015年12月23日
【申請日】2015年5月19日