[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