[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