Hello Simon Thanks for your reply,
I also have some question to ask , 1. I just tried your suggested code to implement projectionreader API , in C++ version and use CUDA too, but is will be crash on update parameters function , What steps am I doing wrong? here is my code : ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ using ImageIOType = itk::RawImageIO<unsigned short, 2>; //unsigned short using IutputImageType = itk::CudaImage<float, 3>; //float ImageIOType::Pointer io = ImageIOType::New(); io->SetHeaderSize(2048); io->SetNumberOfDimensions(2); io->SetPixelType(itk::CommonEnums::IOPixel::SCALAR); io->SetDimensions(0, 1152); io->SetDimensions(1, 1152); io->SetByteOrderToLittleEndian(); io->SetSpacing(0, 0.25); io->SetSpacing(1, 0.25); string nametostring = ""; std::vector<std::string> newfilename(272); for (int fna = 1; fna < 273; fna++) { nametostring = std::to_string(fna); newfilename.push_back(subfolder); newfilename.push_back("\\"); newfilename.push_back(nametostring + ".raw"); } using ReaderType = rtk::ProjectionsReader<IutputImageType>; //OutputImageType CPUimagetype ReaderType::Pointer reader = ReaderType::New(); reader->SetFileNames(newfilename); reader->SetImageIO(io); reader->Update(); <- Crash on here --------- 2. You can reconstruct one 3D slice by using a size of 1 in the axial direction --> Do you mean Set Z in the size parameter to 1 ? for example --> Size (XYZ)=>(1024,1024,1) then I get the reconstruct image like this ? [image: 250.jpg] Thanks again in advance for your reply. BR Simon Rit <simon....@creatis.insa-lyon.fr> 於 2023年1月4日 週三 下午8:23寫道: > Hello, > 1/ Yes, you can read images in raw format but you need to specify the meta > information for example in python > rawio = itk.RawImageIO.New() > rawio.SetNumberOfDimensions(2) > rawio.SetPixelType(itk.CommonEnums.IOPixel_SCALAR) > rawio.SetComponentType(itk.CommonEnums.IOComponent_FLOAT) > rawio.SetDimensions(0, 256) > rawio.SetDimensions(1, 256) > rawio.SetSpacing(0, 1) > rawio.SetSpacing(1, 1) > rawio.SetByteOrderToLittleEndian() > > # List of filenames > fileNames = [] > for i in range(100): > fileNames.append(f'{i}.raw') > > # Read projections > CPUImageType = itk.Image[itk.F,3] > proj = rtk.projections_reader(ttype=CPUImageType, file_names=fileNames, > ImageIO=rawio) > > 2/ We only work in 3D. You can reconstruct one 3D slice by using a size of > 1 in the axial direction. > Simon > > On Mon, Dec 26, 2022 at 10:40 AM 何明哲 via Rtk-users < > rtk-users@public.kitware.com> wrote: > >> >> Hello everyone >> >> I am a newbie in using RTK >> >> I have two question to ask, >> 1. Can the projectionreader API read images in RAW format data set? >> 2. Which API or method does RTK provide to reconstruct the 2D X-ray scan >> data set projection image into a 2D CT Slice image ?Or is there any other >> reference document that can help me reconstruct CT slices in RTK? >> >> thanks for reply ,BR >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users@public.kitware.com >> https://public.kitware.com/cgi-bin/mailman/listinfo/rtk-users >> >
_______________________________________________ Rtk-users mailing list Rtk-users@public.kitware.com https://public.kitware.com/cgi-bin/mailman/listinfo/rtk-users