From dcf1b58a69fbd464fb447bf4bddef182d1a2dfd4 Mon Sep 17 00:00:00 2001 From: dsarrut Date: Thu, 22 Jul 2010 05:47:34 +0000 Subject: [PATCH] replace "RegionOfInterest" filter with "ExtractImage" (keep origin and so on) --- itk/clitkAutoCropFilter.txx | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/itk/clitkAutoCropFilter.txx b/itk/clitkAutoCropFilter.txx index 6f00926..cc2c137 100644 --- a/itk/clitkAutoCropFilter.txx +++ b/itk/clitkAutoCropFilter.txx @@ -29,6 +29,7 @@ #include "itkLabelImageToLabelMapFilter.h" #include "itkLabelMapToLabelImageFilter.h" #include "itkRegionOfInterestImageFilter.h" +#include "itkExtractImageFilter.h" namespace clitk { @@ -89,12 +90,12 @@ namespace clitk { typename ImageToMapFilterType::Pointer imageToLabelFilter = ImageToMapFilterType::New(); imageToLabelFilter->SetBackgroundValue(m_BackgroundValue); imageToLabelFilter->SetInput(input); - DD(input->GetLargestPossibleRegion()); // AutoCrop typedef itk::AutoCropLabelMapFilter AutoCropFilterType; typename AutoCropFilterType::Pointer autoCropFilter = AutoCropFilterType::New(); autoCropFilter->SetInput(imageToLabelFilter->GetOutput()); + autoCropFilter->ReleaseDataFlagOff(); // Convert to LabelImage typedef itk::LabelMapToLabelImageFilter MapToImageFilterType; @@ -103,12 +104,10 @@ namespace clitk { // Go ! (needed) labelToImageFilter->Update(); - DD("CHECK AUTOCROP IF NB LABEL == 0 !!!"); m_labeImage = labelToImageFilter->GetOutput(); // Update the output size m_Region = m_labeImage->GetLargestPossibleRegion(); - DD(m_Region); // Sometimes the index is 9223372036854775807 ??? if (m_Region.GetIndex()[0] > 99999) { typename ImageType::IndexType index; @@ -131,11 +130,19 @@ namespace clitk { ImageConstPointer input = dynamic_cast(itk::ProcessObject::GetInput(0)); // Extract the region - typedef itk::RegionOfInterestImageFilter CropFilterType; + + //TO CHANGE WITH EXTRACTIMAGEFILTER ! + + // typedef itk::RegionOfInterestImageFilter CropFilterType; + typedef itk::ExtractImageFilter CropFilterType; m_labeImage->SetRequestedRegion(m_labeImage->GetLargestPossibleRegion()); typename CropFilterType::Pointer cropFilter = CropFilterType::New(); cropFilter->SetInput(m_labeImage); - cropFilter->SetRegionOfInterest(m_Region); + + // cropFilter->SetRegionOfInterest(m_Region); + cropFilter->SetExtractionRegion(m_Region); + + cropFilter->ReleaseDataFlagOff(); // Go ! cropFilter->Update(); -- 2.47.1