From: jean-pierre roux Date: Wed, 26 Nov 2008 10:13:32 +0000 (+0000) Subject: Now itk::ImageSeriesReader returns a 3D image when it's passed a 2D images X-Git-Tag: v0.9.1~71 X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=commitdiff_plain;h=a273de250e863c9dec9b9cc426d8b079665d5895;p=bbtk.git Now itk::ImageSeriesReader returns a 3D image when it's passed a 2D images vector --- diff --git a/packages/itk/src/bbitkImageSeriesReader.cxx b/packages/itk/src/bbitkImageSeriesReader.cxx index 26fa4fa..1a18bcb 100644 --- a/packages/itk/src/bbitkImageSeriesReader.cxx +++ b/packages/itk/src/bbitkImageSeriesReader.cxx @@ -2,8 +2,8 @@ Program: bbtk Module: $RCSfile: bbitkImageSeriesReader.cxx,v $ Language: C++ - Date: $Date: 2008/10/17 08:18:21 $ - Version: $Revision: 1.6 $ + Date: $Date: 2008/11/26 10:13:32 $ + Version: $Revision: 1.7 $ =========================================================================*/ /* --------------------------------------------------------------------- @@ -65,21 +65,28 @@ namespace bbitk } std::string filename = filenames[0]; - + itk::ImageIOBase::Pointer genericReader = itk::ImageIOFactory::CreateImageIO(filename.c_str(), itk::ImageIOFactory::ReadMode); + if (!genericReader) { - bbtkError(bbGetFullName()<<" : File format unknown (while reading \"" << filename << "\")"); + bbtkError(bbGetFullName()<<" : File format unknown (while reading [" << filename << "])"); } genericReader->SetFileName(filename.c_str()); - genericReader->ReadImageInformation(); + genericReader->ReadImageInformation(); - bbtk::TypeInfo typ = GetITKImagePtrTypeInfoFromPixelTypeInfoAndDimension(genericReader->GetComponentTypeInfo(), genericReader->GetNumberOfDimensions()); + int plusUn; + if (filenames.size()>1) + plusUn = 1; + else + plusUn = 0; + bbtk::TypeInfo typ = GetITKImagePtrTypeInfoFromPixelTypeInfoAndDimension(genericReader->GetComponentTypeInfo(), genericReader->GetNumberOfDimensions() + plusUn); + BBTK_TEMPLATE_ITK_IMAGE_SWITCH(typ,Read); - + } /** @@ -112,10 +119,6 @@ namespace bbitk } - - - - } // eo namespace bbtk diff --git a/packages/itk/src/bbitkImageSeriesReader.h b/packages/itk/src/bbitkImageSeriesReader.h index 2558bc1..7f3337f 100644 --- a/packages/itk/src/bbitkImageSeriesReader.h +++ b/packages/itk/src/bbitkImageSeriesReader.h @@ -2,8 +2,8 @@ Program: bbtk Module: $RCSfile: bbitkImageSeriesReader.h,v $ Language: C++ - Date: $Date: 2008/10/17 08:18:21 $ - Version: $Revision: 1.8 $ + Date: $Date: 2008/11/26 10:13:32 $ + Version: $Revision: 1.9 $ =========================================================================*/ /* --------------------------------------------------------------------- @@ -78,7 +78,7 @@ namespace bbitk typedef std::vector vectorofstring; BBTK_INPUT(ImageSeriesReader,FileNames, "vector of file names with complete paths",vectorofstring,"file names list"); - BBTK_OUTPUT(ImageSeriesReader,Out,"Output itk::image with type T and dimension D determined by the content of the files",anyImagePointer,""); + BBTK_OUTPUT(ImageSeriesReader,Out,"Output itk::image with type T and dimension D determined by the content of the files + vector size",anyImagePointer,""); BBTK_END_DESCRIBE_BLACK_BOX(ImageSeriesReader); //=================================================================