<div dir="ltr"><br clear="all"><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>HI Everyone ,</div><div><br></div><div>I have a question </div><div>that When I was refer to the official example "Firstcudareconstruction.cpp",</div><div>then I tried to  modify the code and reconstruction 2D x ray projection image to 2D ct slice, </div><div>the code is worked but I got the wrong result too, </div><div>I don't understand what the problem I'm have ?</div><div> it's possible that the setting of reconstruction output image size or origin is wrong? </div><div><br></div><div>here is my code and result (I was tried to only reconstruction <span style="color:rgb(32,33,34);font-family:sans-serif;font-size:14px">just a slice NO.100 of the whole volume</span>)</div><div> --------------------------------------------------------------------------------------------</div><div> using GeometryType = rtk::ThreeDCircularProjectionGeometry;<br>  GeometryType::Pointer geometry = GeometryType::New();<br>  unsigned int          numberOfProjections = 280; <br>  double                firstAngle = 0;<br>  double                angularArc = 280; <br>  unsigned int          sid = 510;  <br>  unsigned int          sdd = 690; <br><br>  for (unsigned int noProj = 0; noProj < numberOfProjections; noProj++)<br>  {<br>    double angle = firstAngle + noProj * angularArc / numberOfProjections;<br>    geometry->AddProjection(sid, sdd, angle);<br>  }<br><br>  rtk::ThreeDCircularProjectionGeometryXMLFileWriter::Pointer xmlWriter;<br>  xmlWriter = rtk::ThreeDCircularProjectionGeometryXMLFileWriter::New();<br>  xmlWriter->SetFilename(".\\RTK_Geometry.xml");<br>  xmlWriter->SetObject(geometry);<br>  xmlWriter->WriteFile();<br><br>  using NameGeneratorType = itk::NumericSeriesFileNames;<br>  NameGeneratorType::Pointer nameGenerator = NameGeneratorType::New();<br><br>  nameGenerator->SetSeriesFormat(ProjectionInage +"\\%d.tif");<br>  nameGenerator->SetStartIndex(1);<br>  nameGenerator->SetEndIndex(280);<br>  nameGenerator->SetIncrementIndex(1);<br><br>  using IutputImageType = itk::CudaImage<float, 3>; <br>  using ReaderType = rtk::ProjectionsReader<IutputImageType>; <br>  ReaderType::Pointer reader = ReaderType::New();<br>  reader->SetFileNames(nameGenerator->GetFileNames());<br>  reader->Update();<br>  <br>  using ConstantImageSourceType = rtk::ConstantImageSource<OutputImageType>;<br>  ConstantImageSourceType::PointType   origin;<br>  ConstantImageSourceType::SpacingType spacing;<br>  ConstantImageSourceType::SizeType    sizeOutput;<br>  ConstantImageSourceType::Pointer     recoVolume = ConstantImageSourceType::New();<br> <br>  sizeOutput[0] = Imagewidth;<br>  sizeOutput[1] = Imageheigh;<br>  sizeOutput[2] = numofproj; <br>  spacing[0] = 0.25;<br>  spacing[1] = 0.25;<br>  spacing[2] = 0.25;<br>  origin[0] = Imagewidth*spacing[0]*0.5*-1; <br>  origin[1] = Imageheigh*spacing[0]*0.5*-1; <br>  origin[2] = spacing[2]*SliceN*-1; <br><br>  recoVolume->SetSize(sizeOutput);<br>  recoVolume->SetSpacing(spacing);<br>  recoVolume->SetOrigin(origin);<br>  recoVolume->SetConstant(0);<br><br>  using FDKGPUType = rtk::CudaFDKConeBeamReconstructionFilter;<br>  FDKGPUType::Pointer feldkamp = FDKGPUType::New();<br><br>  feldkamp->SetInput(0, recoVolume->GetOutput());<br>  feldkamp->SetInput(1, reader->GetOutput()); <br>  feldkamp->SetGeometry(geometry);<br>  feldkamp->SetNumberOfThreads(7);<br>  feldkamp->Update();<br><br>  using WriterType = itk::ImageFileWriter<OutputImageType>;<br>  WriterType::Pointer writer = WriterType::New();<br>  writer->SetFileName("C:\\RTK.mhd");<br>  writer->SetInput(feldkamp->GetOutput());<br>  writer->Update();<br><br><img src="cid:ii_lcss1ndj0" alt="20230112_100.PNG" width="312" height="308" style="margin-right: 0px;">   </div><div><br></div><div>it should be look like this </div><img src="cid:ii_lcss2s4a1" alt="20230109.PNG" width="291" height="240" style="margin-right: 0px;"></div><div dir="ltr"><br></div><div dir="ltr">thanks for your reply </div><div dir="ltr"><br></div><div dir="ltr">BR,<br><div> <br><br> <br></div></div></div></div></div>