2014-11-03 599 views
3

我正在開發一種基於筆形射束方法的放射療法逆向規劃工具。這些方法中的一個重要步驟(特別是在劑量計算中)是來自許多來源的射線追蹤,最常用的算法之一是Siddon的算法(這裏有一個很好的簡短描述http://on-demand.gputechconf.com/gtc/2014/poster/pdf/P4218_CT_reconstruction_iterative_algebraic.pdf)。現在,我將嘗試簡化我的問題:射線追蹤:Bresenham's vs Siddon算法

輸入數據是CT圖像(具有值的3D矩陣)和圖像周圍的一些源位置。你可以想象一個立方體和許多點,都在相同的距離,但不同的方向角,輻射射線來自哪裏。每條射線都將通過該體積,並根據距源頭的距離爲每個體素分配一個值。 Siddon算法的優點是在光線跟蹤的迭代過程中按時計算長度。但是,我知道Bresenham的算法是評估矩陣中從一個點到另一個點的路徑的有效方法。因此,即使在Bresenham的迭代過程中,從源到特定體素的長度也可以很容易地計算爲歐氏距離兩點。

那麼,如果知道這兩種方法已經很老了並且效率很高,那麼使用Siddon而不是Bresenham會有一個明確的優勢嗎?也許我在這裏錯過了一個重要的細節,但對我來說很奇怪,在這些劑量計算程序中,Bresenham並不是一個真正的選擇,並且Siddon總是作爲黃金標準出現。

感謝您的任何評論或回覆!

美好的一天。

+0

只想對Siddon的方法發表評論,其中只考慮了路徑在每個體素內部傳播的長度。然而,在使用扇形光束的情況下,光束本身的寬度隨着其行進而改變,這意味着相同的路徑,根據X射線源的位置,衰減將不同。放大可能是這種現象的正確術語。 – antiquity 2015-11-16 16:59:29

回答

1

在我看來,在大多數涉及醫療射線追蹤的應用中,您不僅需要從源的距離,而且還需要該路徑與每個單個體素在路上的交叉長度。現在,佈雷森漢姆給你的路徑上的體素,但不是交叉點的長度,而西頓。