1. 程式人生 > >Gate 7.2的學習筆記(一)

Gate 7.2的學習筆記(一)

一、Gate的簡介

GATE是國際OpenGATE協作開發的高階開源軟體,致力於醫學成像和放射治療的數值模擬。它目前支援模擬發射斷層掃描(正電子發射斷層掃描 - PET和單光子發射計算機斷層掃描 - SPECT),計算機斷層掃描(CT),光學成像(生物發光和熒光)和放射治療實驗。使用易於學習的巨集觀機制來配置簡單或高度複雜的實驗設定,GATE現在在新的醫學成像裝置的設計,採集協議的優化和影象重建演算法的開發和評估中起著關鍵作用,校正技術。也可用於放射治療實驗中的劑量計算。

二、Gate的使用

1、使用Gate不需要任何C ++程式設計,這得益於擴充套件了Geant4的本機命令直譯器的專用指令碼機制。此介面允許使用者僅使用命令指令碼執行Gate程式。要執行操作,使用者必須以互動模式輸入命令,或者構建包含有序命令集合的巨集檔案。

2、巨集是ASCII檔案(具有’.mac’副檔名),其中每行包含命令或註釋。命令是GEANT4或Gate指令碼命令; 註釋以字元“#”開頭。巨集可以在Gate中的命令直譯器中執行,也可以將其作為命令列引數傳遞給Gate,或者通過從另一個巨集呼叫。巨集或一組巨集必須包括以正確順序描述模擬的不同元件的所有命令。通常這些元件是視覺化,體積(幾何),系統,數字化儀,物理,初始化,源,輸出和開始的定義。

3、通常,有一個主巨集呼叫更具體的巨集。分割巨集允許使用者在其他幾個模擬中重新使用這些巨集中的一個或多個,和/或組織所有命令的集合。

三、以SPECT為例介紹Gate的使用

1、Gate執行的規則

這裡寫圖片描述

2、在SPECT例子中所有的命令集合在benchSPECT.mac檔案中,其中在vis.mac是視覺化的命令,使用者需要根據卷定義模擬的幾何。所有卷都按照樹結構連結在一起,其中每個分支表示一個卷。每個體積的特徵在於形狀,大小,位置和材料組成。分配給新卷的預設資料是Air。可用資源列表在GateMaterials.db檔案中定義。

這裡寫圖片描述

3、有幾種可用於視覺化的工具OpenGL,VRML,DAWN。可以根據GEANT4配置步驟中選擇的視覺化選項啟用它們。在開發新幾何時,線上視覺化是一個有用的工具。它允許人們目視檢查掃描器幾何(位置,物理體積重疊等)。一旦檢查了幾何體,並且想要執行完整的模擬,建議禁用線上視覺化,以免CPU過載。

Gate中的視覺化命令在vis.mac檔案中

這裡寫圖片描述

/vis/open OGLSX      #開啟視覺化命令 OGLSX為儲存模式
/vis/viewer/set/viewpointThetaPhi 60 60    #設定視角
/vis/viewer/zoom 1.5         #設定縮放因子
/vis/drawVolume             #告訴觀察者繪製體積
/vis/viewer/flush             
/tracking/verbose 0
/tracking/storeTrajectory 1  #每次執行的軌跡應該一起繪製,不儲存軌跡= 0; 儲存軌跡= 1 
/vis/scene/add/trajectories 
/vis/scene/endOfEventAction accumulate 10 #請求檢視器在事件結束時重新整理點選,軌跡等。或積累圖紙,檢測器保留或重新繪製。