Gabor算子研究
int itkGaborImageSourceTest1( int argc, char *argv[] )
{
typedef float PixelType;
const unsigned int ImageDimension = ;
typedef itk::Image<PixelType, ImageDimension> ImageType;
// Instantiate the filter
typedef itk::GaborImageSource<ImageType> GaborSourceType;
GaborSourceType::Pointer gaborImage = GaborSourceType::New();
GaborSourceType::ArrayType sigma;
sigma[] = ;
sigma[] = ;
sigma[] = ;
ImageType::SpacingType spacing;
spacing.Fill( );
ImageType::SizeType size;
size.Fill( * );
gaborImage->SetSpacing( spacing );
gaborImage->SetSize( size );
gaborImage->SetSigma( sigma );
gaborImage->SetFrequency( );
gaborImage->SetCalculateImaginaryPart( true );
try
{
gaborImage->Update();
}
catch (itk::ExceptionObject & err)
{
std::cout << "ExceptionObject caught !" << std::endl;
std::cout << err << std::endl;
return EXIT_FAILURE;
}
typedef itk::ImageFileWriter<ImageType> WriterType;
WriterType::Pointer writer = WriterType::New();
writer->SetFileName( argv[] );
writer->SetInput( gaborImage->GetOutput() );
writer->Update();
return EXIT_SUCCESS;
}