[Insight-users] compilation error when using itkMultiLabelSTAPLEImageFilter in ITK 4.5

francois rousseau rousseau at unistra.fr
Wed Feb 5 11:52:04 EST 2014


Thank you Bill.

I didn’t catch the meaning of the compiler message.

françois


On 05 Feb 2014, at 17:48, Bill Lorensen <bill.lorensen at gmail.com> wrote:

> If you look in
> Modules/Core/Common/include/itkConceptCheking.h at line 749 you will
> see the error is coming from the Concept: /** Concept requiring T to
> be an unsigned integer. */
> 
> This teels you that this filter wants the image to have an unsigned pixel type.
> 
> If you change:
> 
> typedef itk::Image< short, Dimension >    ShortImageType;
> to
> 
> typedef itk::Image< unsigned short, Dimension >    ShortImageType;
> 
> the code should compile.
> 
> 
> 
> On Wed, Feb 5, 2014 at 11:25 AM, francois rousseau <rousseau at unistra.fr> wrote:
>> Hi everyone,
>> 
>> I've tried to use the itkMultiLabelSTAPLEImageFilter and it appears that,
>> even without trying to "run" it, something went wrong for the complier
>> (clang or gcc). I'm using ITK4.5
>> 
>> Here is a sample of the code :
>> 
>> //ITK declaration
>> 
>>  const   unsigned int        Dimension = 3;
>> 
>>  typedef itk::Image< short, Dimension >    ShortImageType;
>> 
>> 
>>  typedef itk::MultiLabelSTAPLEImageFilter< ShortImageType >
>> STAPLEFilterType;
>> 
>>  typedef STAPLEFilterType::Pointer STAPLEFilterPointer;
>> 
>> 
>>  typedef ShortImageType::Pointer ShortImagePointer;
>> 
>> 
>>  STAPLEFilterPointer filter = STAPLEFilterType::New();
>> 
>> 
>> and the compiler message :
>> 
>> 
>> In file included from
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/IO/ImageBase/include/itkImageFileReader.h:22:
>> In file included from
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/IO/ImageBase/include/itkImageIOBase.h:26:
>> In file included from
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/Core/Common/include/itkImageIORegion.h:24:
>> In file included from
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/Core/Common/include/itkImageRegion.h:34:
>> In file included from
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/Core/Common/include/itkContinuousIndex.h:22:
>> In file included from
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/Core/Common/include/itkIndex.h:23:
>> In file included from
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/Core/Common/include/itkMath.h:33:
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/Core/Common/include/itkConceptChecking.h:749:17:
>> error: no viable conversion from 'UniqueType_bool<true>' to
>> 'UniqueType_bool<(Self::Unsigned)>'
>>      UnsignedT a = TrueT();
>>                ^   ~~~~~~~
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/Core/Common/include/itkConceptChecking.h:755:3:
>> note: in instantiation of member function
>> 'itk::Concept::IsUnsignedInteger<short>::Constraints::constraints' requested
>> here
>>  itkConceptConstraintsMacro();
>>  ^
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/Core/Common/include/itkConceptChecking.h:62:36:
>> note: expanded from macro 'itkConceptConstraintsMacro'
>>  typedef Enforcer< & Constraints::constraints > EnforcerInstantiation
>>                                   ^
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/Segmentation/LabelVoting/include/itkMultiLabelSTAPLEImageFilter.hxx:229:9:
>> note: in instantiation of member function
>> 'itk::MultiLabelSTAPLEImageFilter<itk::Image<short, 3>,
>>      itk::Image<short, 3>,
>> float>::InitializeConfusionMatrixArrayFromVoting' requested here
>>  this->InitializeConfusionMatrixArrayFromVoting();
>>        ^
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/Segmentation/LabelVoting/include/itkMultiLabelSTAPLEImageFilter.h:128:15:
>> note: in instantiation of member function
>> 'itk::MultiLabelSTAPLEImageFilter<itk::Image<short, 3>,
>>      itk::Image<short, 3>, float>::GenerateData' requested here
>>  itkNewMacro(Self);
>>              ^
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/Core/Common/include/itkMacro.h:142:21:
>> note: expanded from macro 'itkNewMacro'
>>  itkSimpleNewMacro(x)                                         \
>>                    ^
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/Core/Common/include/itkMacro.h:152:22:
>> note: expanded from macro 'itkSimpleNewMacro'
>>      smartPtr = new x;                                        \
>>                     ^
>> /Users/rousseau/Code/src/fbrain/Utilities/btkSTAPLE.cxx:80:50: note: in
>> instantiation of member function
>> 'itk::MultiLabelSTAPLEImageFilter<itk::Image<short, 3>, itk::Image<short,
>> 3>, float>::New' requested here
>>  STAPLEFilterPointer filter = STAPLEFilterType::New();
>>                                                 ^
>> /Users/rousseau/Code/src/InsightToolkit-4.5.0/Modules/Core/Common/include/itkConceptChecking.h:112:8:
>> note: candidate constructor (the implicit copy constructor) not viable: no
>> known conversion from 'TrueT' (aka 'UniqueType_bool<true>')
>>      to 'const itk::Concept::Detail::UniqueType_bool<false> &' for 1st
>> argument
>> struct UniqueType_bool {};
>>       ^
>> 1 error generated.
>> 
>> 
>> Any idea ?
>> 
>> thank you
>> françois
>> 
>> 
>> 
>> 
>> 
>> 
>> _____________________________________
>> Powered by www.kitware.com
>> 
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>> 
>> Kitware offers ITK Training Courses, for more information visit:
>> http://www.kitware.com/products/protraining.php
>> 
>> Please keep messages on-topic and check the ITK FAQ at:
>> http://www.itk.org/Wiki/ITK_FAQ
>> 
>> Follow this link to subscribe/unsubscribe:
>> http://www.itk.org/mailman/listinfo/insight-users
>> 
> 
> 
> 
> -- 
> Unpaid intern in BillsBasement at noware dot com

--
François Rousseau
Chargé de recherche CNRS
--------------------------------------------------------------------------------------------------------------------------------
Laboratoire des sciences de l'Ingénieur, de l'Informatique et de l'Imagerie (ICube) UMR 7357
300 Bd Sébastien Brant - CS 10413 
F - 67412 ILLKIRCH cedex
tel : +33 3 68 85 44 89
email : rousseau at unistra.fr
http://icube-miv.unistra.fr/fr/index.php/François_Rousseau
--------------------------------------------------------------------------------------------------------------------------------


More information about the Insight-users mailing list