Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System...

28
Principle of convolution/ superposition algorithm for dose calculation for Treatment Planning System Woong Cho [email protected] 11 of February, 2014

Transcript of Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System...

Page 1: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Principle of convolution/superposition algorithm for dose calculation for Treat-

ment Planning System

Woong Cho

[email protected]

11 of February, 2014

Page 2: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Radiation Treatment Plan-ning System

Eclipse, Pinnacle, RayStation, Xio ….

CorePlan (?)

Determining treatment pa-rameters to deliver accept-able radiation dose to the patient

Contouring Treatment simulation (plan-

ning) Dose calculation Evaluation of plans

What is RTP System?

Page 3: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Patient DB• Study information• Images(CT, MRI…)• Planning Data• Dose Data

Beam Data DB

• Linac geometry info• Dosimetric Data

• PDD data• Profile data• Output factor

• Wedge/MLC info• CT HU-density table• ETC…• Kernel table (hidden)

Commissioning module• RTP commissioning• Data I/O interface • Spectrum optimization• Source modeling optimization• Determine output factor: value/MU, cGy/MU• Wedge shape…

RTP Main Module• Patient Data I/O• 3D Visual rendering• Contouring• Planning GUI• Dose calculation• Planning result analysis

Dose calc Engine

• Photon Dose calculation - ETAR , CCC, AAA…• Electron Dsoe - PBC Hogstrom algorithm

ETC module• DVH calculator• Isodose generator• NTCP/TCP calculator

Optimization engine• Steepest decent method - for spectrum - for beam source model - for IMRT

IMRT Module• Beam-let extraction• Make Voxel lists per organ• Constraint I/O• Run optimization• MLC sequencing

Architecture of general RTP System

Page 4: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Dose calculation engine Most important to predict dose distribution Consisted of two parts

Dose calculation part Interpolation based method: ETAR Semi-analytic model method

Superposition/Convolution algorithm FFT, CCC, AAA…

LBTE algorithm Acuros XB

Monte Carlo based method

Beam modeling part Based on measured dosimetric data Directly linked to RTP commissioning module

Dose calculation engines

Page 5: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Two step of the process at depositing doses Photon and a media interaction making TERMA Electrons from a interaction point are traversed through the

media making excitation and ionization (kernel)

TERMA Total energy released per media Temporal energy deposition before electron transport Considering attenuation and divergence effect

Kernel Relative energy spread from unit TERMA Energy deposition from electron transport Function of energy and media

Dose = TERMA kernelⓧ

Convolution/superposition method

')'(ker)'()( 3rdrrnelrTrD p

Page 6: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

TERMA deposition: Pencil beam transfer energy at

each voxels in tissue through its traveling way.

Assume that directly give po-tential energy to each volume element

Kernel spread: Deposited dose spread to 3D

space from TERMA at each voxel.

')'(ker)'()( 3rdrrnelrTrD p

Dose: Superposition: Sun of all

kerma map at each voxel. Same as convolution of

TERMA and kernel

Convolution/superposition method

Page 7: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

General Process of Dose Calcu-lation

),,,(ker

),,(

EnergyrnelMono

rKernelEnergyall

Calculate 3D TERMA

Calculate Photon fluence

Do convolution

• Attenuation• Beam hardening/

softening• Transmission

through MLC /block/collimators

• Photon beam source• 2 source model• 3 source model

• Beam aperture• Collimators• MLC

• Horn effects• Beam Divergence

• Inverse square law

• Consider geometric infomations

Poly-energetic kernels

• C/S or CCC or AAA• Differential kernels or

Accumulative kernels

Page 8: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Geometric transformation

• Patient coordinate system• World (global) coordinators• Based on CT coordinators• Define 3D dose• Define contours

xg

yg

zg

CT coordinate

1Block

0

Source

xb

zb

yb

isocenter

Beam coordinate • Geometric definition• Freedom of beam directions

• Gantry angles• Collimator angles• Couch angles• Translations of couch

• Beam coordinate system• Origin is beam source• Z axis is beam center• Fluence. Beam source, TERMA,

kernels• Defined per beams

• Transformation between Patient coordinate and Beam coordinate

1B

lock

0

So

urce

xb

zb yb Beam

coo

rdin

ate

Page 9: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Geometric transformation

xg

yg

zg

CT Origin Pg (0,0,0)

Source

Isocenter Pb

xb

zb

ybBeam coordinate

• Simple Example• Pb at iso-center ( Xb, Yb, Zb)

= (0, 0, 100)• Assume Iso-center (Pg ) is (0, 5, 5)

• Converting Pb to Pg? • Rotate based on Xb axis by 90’

counter clock wise• Pb = (0,-100, 0)

• Translate Beam coordinate by (0, -100, 0)

• Beam coordinate origin shifted to isocenter

• Pb = ( 0,0,0)• Translate Beam coordinate by (0, -

5, -5)• Beam coordinate is same to pa-

tient coordinate• Pb = (0, 5, 5) = Pg

Sb ( 0, 0, 0)

5

5

xb

zbyb

Beam coordinate

xb

zbyb

Beam coordinate

xb

zbyb

Beam coordinate

z

y

x

b

b

b

g

g

g

t

t

t

z

y

x

z

y

x

coscoscossinsin

sinsincoscossinsinsinsincoscossincos

cossincossinsincossinsinsincoscoscos

Page 10: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Process of TERMA Calculation

• Calculation of Fluence and TERMA distribution in media

Calculate Fluence at each voxel

Calculate effective depth for each voxels

CalculateBeam divergence

Calculate Horn effect

1

0

Source• Beam source model

• Binary MLC plane• Using Hit

test• Considering

partially block

Calculation point

Calculate Attenuation

Calculatebeam softening effect

Page 11: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Beam source Model: 3 source model

Collimator or MLCCollimator or

MLC

Point of calculation(xb,yb,zb)

Isocenter

SCD = 100 cm

pprimary CrSrc )(

Primary photon source Point source: Cp

Srcprimary plane

Point source

)exp()( 0 rkr

ArSrcsf

Scattered photon source from other structures

Disk shape Intensity function with r

Srcsf plane

Disk sourceZsf = 12.5 cm

otherwise

RrRCrSrc spsp

,0

)(,)( 0201

Srcsp plane

Annulus sourceZsp = 4cm

Scattered photon source from primary collimator

Annulus shape

Gantry head

Page 12: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Beam source model: 3 source model

3_30

2_2

1_1

)exp(

)(

srcISWsrcsf

srcISWsrcspsp

srcISWsrcp

fdArkr

A

fdArC

fdACFluence

Fluence at an arbitrary point

Srcprimary plane

Point source

Collimator or MLCCollimator or

MLC

Point of calculation(xb,yb,zb)

Isocenter

Srcsp plane

Annulus source

Gantry head

Srcsf plane

Disk source

Page 13: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Binary Block Plane

1 1 0

Implementation of Beam source model• Define Binary MLC Grid

from the position of MLC leaves– Considering partially

block– Hit Test algorithm

Fluence Voxel

Beam Source center (0, 0, 0)

(xb, yb, zb)

Prepare Binary 2DGrid

For all voxels (xb,yb,zb)

{

Src1_fluence = Calc_OpenRatio(Subboxels)

{

for (3x3x3 Subvoxels)

do HitTest(SubVoxels)

}

Src2_fluene =Calc_ScatterSource2()

Src3_fluene =Calc_ScatterSource3()

}

Page 14: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Implementation of Beam source model

MLC planeZ= 67 cm0.1mm resolution

Source planeZ = Z_src5mm resolution

(Xb,Yb,Zb)Calculation point: 101 x 101 x 101

Xs

Ys

0

0 0

1

Hit_corner_grid: partially block

Sub voxelBlocking ratio=9/25 = 0.36

Src2_fluene =Calc_ScatterSource():

For all SourceGrid{

Hit-test 4 corner bloks at firstIf not blocked

Calculate Radius (Xb,Yb,Zb)Get source value from source

functionsSrc_flue += source_value

}

Page 15: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Process of TERMA Calculation

• Calculation of Fluence and TERMA distribution in media

Calculate Fluence at each voxel

Calculate effective depth for each voxels

CalculateBeam divergence

Calculate Horn effect

1

0

Source

Calculation point

Calculate Attenuation

Calculatebeam softening effect

2)100(

SPD

cmDist

Fluence

Fluence

ref

Init

Div

Distref

SPD

Page 16: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Process of TERMA Calculation

• Calculation of Fluence and TERMA distribution in media

Calculate Fluence at each voxel

Calculate effective depth for each voxels

CalculateBeam divergence

Calculate Horn effect

1

0

Source

Calculation point

Calculate Attenuation

Calculatebeam softening effect

OAD

OADHornFFluence

Fluence

Div

Horn

100

)(

OAD

Page 17: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Process of Dose Calculation

• Calculation of Fluence and TERMA distribution in media

Calculate Fluence at each voxel

Calculate effective depth for each voxel

CalculateBeam divergence

Calculate Horn effect

Calculate Attenuation

Calculatebeam softening effect

1

0

Source

Calculation point

rr

rdr

d

voxelr

sourceri

rr

sourcer

Effective

i

)(

)(

Page 18: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Process of Dose Calculation

• Calculation of Fluence and TERMA distribution in media

Calculate Fluence at each voxel

Calculate effective depth for each voxels

CalculateBeam divergence

Calculate Horn effect

Calculate Attenuation

Calculatebeam softening effect

1

0

Source

Calculation point

Effective

soften

dOAD

OADd

atioSofteningRf1

1

)(

Page 19: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Process of Dose Calculation

• Calculation of Fluence and TERMA distribution in media

Calculate Fluence at each voxel

Calculate effective depth for each voxels

CalculateBeam divergence

Calculate Horn effect

Calculate Attenuation

Calculatebeam softening effect

1

0

Source

max

min

)(

)())(exp(

)(

E

Emono

soften

Hornmono

ETERMATERMA

EEdE

FluenceETERMA

• Beam hardening effect

Page 20: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

VrrKernelrTERMA

rdrrKernelrTERMArD

N

rp

p

1'

3

)'()'(

')'()'()(

Implementation of convolution

for all r’…(N voxels in volume){

Get TERMA(r’)for all r….{

Get Kernel (r-r’) from TableAccumulate TERMA(r’) x Kernel (r-r’) to the r’ voxel

}}

Photon source

r' r

D(r)T(r’)

Page 21: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Limitation of convolution/superposition method

Center of kernel has too steep gradient.

Discrete kernel data Signifi-cant error at the center voxels in dose calculation.

From “Current Concepts in Dose Calculations”, Anders Ahnesjö.

Why Collapse Cone Convolu-tion?

Too long calculation time FFT is a good method. But no inhomogeneity correction.

Not invariant kernel at inhomogeneous medium Iterative calculation: N6 number of iteration at N x N x N

voxels

Page 22: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Collapsed cone approximation

• Can reduce calculation time because of computing dose to MxN points instead of NxNxN points.

• More accurate dose calculation in heterogeneous me-dia by considering effective pathway through cone lines

N

N

M rays

N voxels

No of Iterations: N3 No of Iterations : M x N

N num-ber of Voxels

M Number of Cones

Page 23: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Scatter particle transport directions

Near center voxels Spherical voxels are generally smaller than cubic voxels

Far away voxels One spherical voxels covers several cubic voxels Only consider the voxels in axial lines

Too much energy imparted. But small errors because of small fraction energy at

far site.

Page 24: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Process of Convolution

• Total 288 cone rays– 24 divisions of theta– 12 divisions of phi angle

• Extracting voxel lists traversed by each ray vector r.

• Heterogeneity correction by ef-fective pathway through vector r

• Convolution kernel table with spherical coordinate system.

• Consideration of kernel tilting effect

• Adaption of accumulative ker-nel

• Sphere Convolution Process

VrrxkrxkrTERMA

rxDxD

scatterprimary

sub

)()()()(

)()(

288

1

288

1

Y

-Z

θ

φ

A Col-lapsed Cone

X

A TERMA Voxel

Page 25: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Process of convolution

Prepare Poyenrgetic_Spherical_Kernel (r, θ, φ)

Make Accumulative_Kernel (r, θ, φ)

For (all 3D voxels with (Xp,Yp,Zp) )

{

for (all r, θ, φ)

{

Calc_vector()

Get_transversed_voxel_Lists()

Calculate eff_pathlength(voxel_Lists)

for (all Listed voxels)

{

Calculate θtilt

Energy = Accumulative_Kernel(rinner)

- Accumulative_Kernel(router)

Get_TERMA(voxel)

Dose +=TERMA x Energy

}

}

}

(Xp, Yp, Zp)

(r, θ, φ)

Page 26: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Kernel tilting

Divergent Beam

Dose Voxel

θbeam

θcon

e

TERMA Voxel

cone

srcisosrcg

srcisosrcgconebeamtilt

rrrr

rrrr

)

)()(

)()(arccos(

srcg rr

srciso rr

gr

TERMA Voxel

Page 27: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Considering Beam hardening

• Poly-energetic kernel– Photon spectrum is changed according to depths

• Solve:– Get changed spectrums at every 10 cm depth– Prepare each kernel tables from the changed spec-

trum– Calculate interpolate kernel values between two ta-

bles using the depth of voxels

Page 28: Principle of convolution/superposition algorithm for dose calculation for Treatment Planning System Woong Cho tarotblue@gmail.com 11 of February, 2014.

Discussion & Question