FRED Optimizer tips & helps
Installing and running
The Optimizer lives under git.
Download using
git clone http://XXXuser@arpg-serv.ing2.uniroma1.it:8181/git/Optimizer.git
where you need to replace XXXuser with the account under the git server (if you don't know if you have an account, ask a.sarti) and compile it as it is explained inside README.txt
To run the optimizer one has to launch it using the syntax
./optiRoot #inputfile
A template for the input file that uses 7 different fields can be found in the folder inpFiles.
The input file
The input files contains several fields and lines to setup the optimizer:
- The dij for each field can be specified using dij:
- ptv: defines what is the PTV and the goal dose, the weight
- oar: for the organs at risk one can set the max dose, the weight and the DMF.
- NoT: for the normal tissues (CT - PTV - OARs) one can set the max dose, the weight, the DMF and the threshold applied to consider the voxels as NoT
- outFlag: flags the output files
As an example:
dij: SingleFieldMatrix/70MeV/Dij_merge1.bin
dij: SingleFieldMatrix/70MeV/Dij_merge2.bin
dij: SingleFieldMatrix/70MeV/Dij_merge3.bin
dij: SingleFieldMatrix/70MeV/Dij_merge4.bin
dij: SingleFieldMatrix/70MeV/Dij_merge5.bin
dij: SingleFieldMatrix/70MeV/Dij_merge6.bin
dij: SingleFieldMatrix/70MeV/Dij_merge7.bin
ptv: PTVTrue_NEW_itk.mhd Dgoal 2
oar: vescica_NEW_itk.mhd maxDose 2.2 DMF 1. weight 20
oar: retto_NEW_itk.mhd maxDose 2.2 DMF 1. weight 20
oar: bulbopenieno_NEW_itk.mhd maxDose 2.2 DMF 1. weight 20
oar: femoredx_NEW_itk.mhd maxDose 1. DMF 1. weight 20
oar: femoresin_NEW_itk.mhd maxDose 1. DMF 1. weight 20
oar: ano_NEW_itk.mhd maxDose 2.2 DMF 1. weight 20
NoT: maxDose 1.2 DMF 1. weight 10 thre 5.
outFlag: 70MeV_VeReBp22Gy_NT12_DMF1_OAR20
The use of the weights herebefore sets
NoT @ 10%, OARs @ 20% and PTV @ 100%.
The new workflow
- legge il DMF_NT (default = 1)
- carica i PTV con relativa plannedDose ed eventuale DMF (default = 1)
- carica gli OAR con relativa maxDose ed eventuale DMF (default = 1)
- crea la mappa “dense” del DMF (per ogni voxel della CT)
- carica le varie Dij (ad esempio una per ogni field) applicando il DMF
- output: scrive la mappa con i voxel appartenenti alle varie ROI => rois.mhd
- output: scrive la mappa densa con il DMF delle varie ROI => alldmf.mhd
- lancia l’ottimizzatore
- output: ricostruisce e scrive la mappa di dose ottimizzata (usando il DMF) => optiDose.mhd
Checking the output
Creating the DVHs and analysing the output
In order to generate the DVH a script is provided by git.
To run it:
./testDVH/mhd_DVH.py -p -v -roi PTVTrue_NEW_itk.mhd vescica_NEW_itk.mhd retto_NEW_itk.mhd bulbopenieno_NEW_itk.mhd
ano_NEW_itk.mhd femoredx_NEW_itk.mhd femoresin_NEW_itk.mhd -dose optiDose_70MeV_0.8Op_PTV_2GyVesRet_1Gyall.mhd
--norm-volume -Dgoal 200
The available options can be prompted using
./testDVH/mhd_DVH.py -h
The output is.
--
Alessio Sarti - 2020-10-06
Comments