[Rtk-users] How to determine the position and size of reconstructed volume
Simon Rit
simon.rit at creatis.insa-lyon.fr
Wed Feb 10 07:44:28 EST 2016
Hi,
I haven't used the Digisens geometry reader so I hope that it works
fine. Be careful with it because I don't think it's been thoroughly tested.
Regarding the definition of the volume, in ITK, the origin is the
coordinate of the first voxel. This is what allows you to place the
volume at the right location. Using your grid parameters, I would say
that you have to set the origin as (coordinate-by-coordinate)
scale * 0.5 * (resolution-1) + center
so that the center of the reconstructed volume is around the "center"
parameter of your xml file.
The direction would allow you to tilt your volume but since I don't
understand the digisens parameter, I can't help you. I advise you to
work on it later.
I hope this helps. Good luck!
Simon
On 10/02/2016 02:03, Deepak Roy Chittajallu wrote:
> Hello All,
>
> I have at hand a stack of projection images and the projection
> geometry defined in a .cal file of digisens. I am trying to use RTK to
> do the reconstruction.
>
> I used rtk::DigisensGeometryReader
> <http://www.openrtk.org/Doxygen/classrtk_1_1DigisensGeometryReader.html> to
> read the .cal file and generate the geometry.
>
> Then i call rtk::FDKConeBeamReconstructionFilter
> <http://www.openrtk.org/Doxygen/classrtk_1_1FDKConeBeamReconstructionFilter.html> to
> do the reconstruction by supplying to it as Inputs -- the geometry, a
> dummy reference image of the reconstructed volume (with origin,
> spacing, size, direction etc), and the stack of projection images.
>
> But i am getting a blank volume as reconstruction.
>
> I suspect the problem is with positioning the reconstructed volume
> (specified via the dummy reference image).
>
> As a sample attached is the digisens .cal file that RTK uses for
> testing purposes which looks very similar to mine.
>
> In lines 642-656, it seems to define the postion, size, and spacing of
> the reconstructed volume via the following schema:
>
> ---------------------------------------------------------------------
>
> <Grid>
> <rotation>0 0 0.705858 0.708353</rotation>
> <center>-1.23119 -16.6554 10.2144</center>
> <scale>0.2 0.2 0.2</scale>
> <resolution>289 399 360</resolution>
> <autoRotation>true</autoRotation>
> <cylinderConstraint>false</cylinderConstraint>
> <cylinderConstraintFromGrid>false</cylinderConstraintFromGrid>
> <name>C:/Documents/2011_02_14_15-15-12_FenteAl/reconstruction.vol</name>
> <format>2</format>
> <beamHardening>0</beamHardening>
> <background>0</background>
> <colorscaling>1 0</colorscaling>
> <rawOutput></rawOutput>
> </Grid>
>
> -----------------------------------------------------------------------
>
> I understand the <scale> (spacing in mm) and <resolution> (size)
> elements. These can be used to SetSize() and SetSpacing() of the dummy
> reconstructed volume provided as input to the reconstruction filter.
>
> I dont know how to translate the <rotation> and <center> to
> SetOrigin(), and SetDirection() of the dummy reconstructed volume.
>
> Does anyone know how to do this?
>
> Or alternatively, is there a way to automatically set these to
> reconstruct the maximum possible extent of the object positioned in
> between the source and detector?
>
> Regards,
>
> Deepak
>
>
> _______________________________________________
> Rtk-users mailing list
> Rtk-users at public.kitware.com
> http://public.kitware.com/mailman/listinfo/rtk-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/rtk-users/attachments/20160210/d1bcd37a/attachment-0010.html>
More information about the Rtk-users
mailing list