我将 ITK 4.2 与 Qt Creator 一起使用。
尝试阅读几张图像,我总是得到相同的结果:
itk::ImageFileReaderException (0x1efccb0) 位置:“void itk::ImageFileReader::GenerateOutputInformation() [with TOutputImage = itk::Image; ConvertPixelTraits = itk::DefaultConvertPixelTraits]”
文件:/usr/local/include/ITK-4.2/itkImageFileReader.hxx 行:143
说明: 无法为文件 /home/marcos/d2.dcm创建 IO 对象
尝试创建以下内容之一:您可能未能设置文件后缀,或将后缀设置为不受支持的类型。
我已经成功地阅读了它
vtkGDCMImageReader* reader = vtkGDCMImageReader::New();
reader->SetFileName(fileName);
reader->Update();
vtkImageData* imageData = reader->GetOutput();
cout << "imageData->GetScalarTypeAsString(): " << imageData->GetScalarTypeAsString() << endl;
GetScalarTypeAsString ()返回unsigned short。无论如何,我尝试使用 unsigned long、unsigned int、double、int、short、short、unsigned int、unsigned char ......我得到了同样的结果。
这是代码:
typedef itk::Image <unsigned short> ImageType;
typedef itk::ImageFileReader<ImageType> ReaderType;
ReaderType::Pointer reader = ReaderType::New();
try
{
reader->SetFileName(nombreFichero);
}
catch (itk::ExceptionObject& excep)
{
cerr << excep << endl;
return;
}