QtCreatorでITK4.2を使用しています。
いくつかの画像を読み込もうとすると、私はいつも同じようになります。
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()はunsignedshortを返します。とにかく、unsigned long、unsigned int、double、int、short、short unsigned int、unsignedcharを試してみました...同じようになりました。
これはコードです:
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;
}