[Rtk-users] 3D Backprojection using 360 X-ray 2D images

Fernando Hueso González Fernando.Hueso at uv.es
Fri Feb 11 20:48:38 EST 2022


Hello RTK users,

I am a totally newbie here, and wanted to ask for some help.

I have a dataset of 360 raw images, each corresponding to an X-ray of an 
object in steps of 1 degree (rotating around origin). They correspond to 
a flat panel detector and a microfocus X-ray source. I would be 
interested in reconstructing the 3D geometry using FDK backprojection. 
(I also have all the information about detector and source distance, etc.)

I was able to follow the FirstReconstruction.cxx example on GitHub to 
create my geometry object.

using GeometryType = rtk::ThreeDCircularProjectionGeometry;
GeometryType::Pointer geometry = GeometryType::New();
for (size_t i = 0; i < 360; i++)
{
     geometry->AddProjection(168, 271, i);
}

I was also able to correctly load the 360x 2D images (a binary array of 
signed shorts) using ITK:

using ImageIOType = itk::RawImageIO<short, 2>;
using ImageType = itk::Image<short, 2>;
ImageIOType::Pointer io = ImageIOType::New();
io->SetDimensions(0,768);
io->SetDimensions(1,486);
io->SetByteOrderToLittleEndian();
itk::ImageFileReader<ImageType>::Pointer reader = itk::ImageFileReader<ImageType>::New();
reader->SetImageIO(io);
for (size_t i = 0; i < 360; i++)
{
     reader->SetFileName(std::to_string(i)+".raw");
     reader->Update();
}

However, now I am struggling with the next step. I am not sure how to 
convert all these 360 imageIO projections to a constant image source, as 
in the FirstReconstruction example.

Or is there a more appropriate way to connect the loaded images to the 
FDKConeBeamReconstructionFilter ?

using FDKCPUType = rtk::FDKConeBeamReconstructionFilter<ImageType>;
FDKCPUType::Pointer feldkamp = FDKCPUType::New();
feldkamp->SetGeometry(geometry);
???

Thanks in advance,

Fernando.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://public.kitware.com/pipermail/rtk-users/attachments/20220212/93ca89a5/attachment.htm>


More information about the Rtk-users mailing list