[Gate-users] Incorrect voxel values - Interfile import GATE
David Larsson
davlars at kth.se
Wed Dec 24 08:38:11 CET 2014
Hi Albert,
I was suspecting that this might have been the problem. If you do have a working script to convert long float interfile data to "GATE-compatible" unsigned integer that you don't mind sharing, that would be very helpful. Hopefully this will resolve my issue.
Thanks again and Merry Christmas,
David
________________________________
Från: Albert Hirtl [albert.hirtl at meduniwien.ac.at]
Skickat: den 23 december 2014 23:31
Till: David Larsson; gate-users at lists.opengatecollaboration.org
Ämne: AW: [Gate-users] Incorrect voxel values - Interfile import GATE
Hi David,
Reading voxelized sources can be nasty. One part of your problem is related to your interfile data which is long float. You need unsigned integer for Gate to do well. I usually do the conversion with a small python script, which I could share if you liked.
I hope this helps.
Cheers,
Albert
Von: David Larsson
Gesendet: Dienstag, 23. Dezember 2014 18:01
An: gate-users at lists.opengatecollaboration.org
Betreff: [Gate-users] Incorrect voxel values - Interfile import GATE
Dear GATE-users,
I am trying to implement a voxelized phantom into my GATE-simulations for the first time, but seem to encounter problems in the Interfile-read of my script.
Using a simple imageconverter ((x)medcon) I've created a test-interfile (.h33 + .i33) with a 10x10x10 matrix with voxel values ranging from 0 to 10. The conversion seems to work fine, and when I open to generated interfile-set in a random image viewer (ImageJ/MATLAB) I can see that the voxel values are preserved (ranging from 0 - 10).
However, when I run my script I notice that the loader does not import the voxels as ranging from 0-10, instead I can see (through the error messages) that all voxels are given one value (in this specific case 9280). The original values and the corresponding input structure is therefore lost.
I've tried to compare my generated code to the (working) example with the hof_brain but cannot seem to understand the problem. I've provided the essential parts of the mac-files and the interfile-header of my testfile below. Can anyone identify what the problem might be?
----------------------------main.mac----------------------------------------
# WORLD
/gate/world/geometry/setXLength 400. cm
/gate/world/geometry/setYLength 400. cm
/gate/world/geometry/setZLength 400. cm
# VOXEL PHANTOM
/gate/world/daughters/name teststack
/gate/world/daughters/insert fictitiousVoxelMap
/gate/teststack/geometry/insertReader interfile
/gate/teststack/interfileReader/insertTranslator range
/gate/teststack/interfileReader/rangeTranslator/readTable attenuation_range.dat
/gate/teststack/interfileReader/rangeTranslator/describe 1
/gate/teststack/interfileReader/readFile testintf.h33
/gate/teststack/placement/setTranslation 0. 0. 0. mm
/gate/teststack/placement/setRotationAxis 1 0 0
/gate/teststack/placement/setRotationAngle 0 deg
/gate/teststack/attachVoxelPhantomSD
-------------------attenuation_range.dat--------------------------
5
0 1 Air false 0.0 0.0 0.0 0.0
1 2 Water true 1.0 0.0 0.0 0.0
2 3 Water true 1.0 0.0 0.0 0.0
4 9280 Water true 1.0 0.0 0.0 0.2
9280 9280 Air true 1.0 0.0 0.0 0.2 #This changed for visualisation of incorrect values
------------------------- testintf.h33--------------------------
!INTERFILE :=
!imaging modality := nucmed
!originating system := (X)MedCon
!version of keys := 3.3
date of keys := 1996:09:24
conversion program := (X)MedCon
program author := Erik Nolf
program version := 0.13.0
program date := 2013:06:23
;
!GENERAL DATA :=
original institution := NucMed
!data offset in bytes := 0
!name of data file := m000-testnew.i33
patient name := Unknown
!patient ID := Unknown
patient dob := 0000:00:00
patient sex := Unknown
!study ID := Unknown
exam type := Unknown
data compression := none
data encode := none
organ := Unknown
isotope := Unknown
dose := 0
NUD/Patient Weight [kg] := 0.00
NUD/imaging modality := NM
NUD/activity := 0
NUD/activity start time := 00:00:00
NUD/isotope half life [hours] := 0.000000
;
!GENERAL IMAGE DATA :=
!type of data := Tomographic
!total number of images := 10
study date := 0000:00:00
study time := 00:00:00
imagedata byte order := LITTLEENDIAN
process label :=
;
number of energy windows := 1
;
energy window [1] :=
energy window lower level [1] :=
energy window upper level [1] :=
flood corrected := N
decay corrected := N
;
!SPECT STUDY (general) :=
number of detector heads := 1
;
!number of images/energy window := 10
!process status := Reconstructed
!matrix size [1] := 10
!matrix size [2] := 10
!number format := long float
!number of bytes per pixel := 8
scaling factor (mm/pixel) [1] := +10.000000e+00
scaling factor (mm/pixel) [2] := +10.000000e+00
!number of projections := 10
!extent of rotation :=
!time per projection (sec) := 0
study duration (sec) := 0
!maximum pixel count := +1.000000e+01
patient orientation := Unknown
patient rotation := Unknown
;
!SPECT STUDY (reconstructed data) :=
method of reconstruction := Unknown
!number of slices := 10
number of reference frame := 0
slice orientation := unknown
slice thickness (pixels) := +10.000000e+00
centre-centre slice separation (pixels) := +1.000000e+00
filter name := Unknown
filter parameters := Cutoff
method of attenuation correction := measured
scatter corrected := N
oblique reconstruction := N
!END OF INTERFILE :=
----------------------------------------------------------------------------
Best regards,
David
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opengatecollaboration.org/mailman/private/gate-users/attachments/20141224/68df3fbb/attachment.html>
More information about the Gate-users
mailing list