[ITK-users] error exception occurred during SingleMethodExecute
amghanem
amghanem at gmail.com
Tue Mar 10 16:18:25 EDT 2015
Hi,
I am working on Osirix plugin and when the following code run, ITK generate
the following runtime error
itk::ERROR: MultiThreader(0x79f1400): Exception occurred during
SingleMethodExecute
ITK180/Modules/Core/Common/include/itkImageSource.hxx:300:
itk::ERROR: ImageToImageFilter(0x126df1a0): Subclass should override this
method!!!
The signature of ThreadedGenerateData() has been changed in ITK v4 to use
the new ThreadIdType.
ImageToImageFilter::ThreadedGenerateData() might need to be updated to used
it.
the version of ITK that used by osirix is 4.1
thanks,
const unsigned int Dimension = 3;
typedef float PixelType;
typedef itk::Image< PixelType, Dimension > ImageType;
typedef itk::SymmetricSecondRankTensor< double, Dimension >
HessianPixelType;
typedef itk::Image< HessianPixelType, Dimension >
HessianImageType;
typedef itk::HessianToObjectnessMeasureImageFilter< HessianImageType,
ImageType > ObjectnessFilterType;
ObjectnessFilterType::Pointer objectnessFilter =
ObjectnessFilterType::New();
//objectnessFilter->SetBrightObject( false );
objectnessFilter->SetBrightObject( true );
objectnessFilter->SetScaleObjectnessMeasure( false );
objectnessFilter->SetAlpha( 0.5 );
objectnessFilter->SetBeta( 1.0 );
objectnessFilter->SetGamma( 5.0 );
objectnessFilter->SetObjectDimension(1); //vessels
typedef itk::MultiScaleHessianBasedMeasureImageFilter< ImageType,
HessianImageType, ImageType > MultiScaleEnhancementFilterType;
MultiScaleEnhancementFilterType::Pointer multiScaleEnhancementFilter =
MultiScaleEnhancementFilterType::New();
multiScaleEnhancementFilter->SetInput( importFilter->GetOutput() );
multiScaleEnhancementFilter->SetHessianToMeasureFilter( objectnessFilter
);
multiScaleEnhancementFilter->SetSigmaStepMethodToEquispaced();
multiScaleEnhancementFilter->SetSigmaMinimum( 0.2 );
multiScaleEnhancementFilter->SetSigmaMaximum( 2 );
multiScaleEnhancementFilter->SetNumberOfSigmaSteps( 2);
multiScaleEnhancementFilter->SetGenerateHessianOutput(true);
multiScaleEnhancementFilter->SetGenerateScalesOutput(false);
try
{
multiScaleEnhancementFilter->Update();
}
catch( itk::ExceptionObject & excep )
{
NSString * erro = [[ NSString alloc]
initWithCString:excep.GetDescription()];
NSLog(erro);
return 1;
}
float*
enhanceOutput=multiScaleEnhancementFilter->GetOutput()->GetBufferPointer();
--
View this message in context: http://itk-users.7.n7.nabble.com/error-exception-occurred-during-SingleMethodExecute-tp35316.html
Sent from the ITK - Users mailing list archive at Nabble.com.
More information about the Insight-users
mailing list