ITK/Examples/ImageProcessing/IntensityWindowingImageFilter: Difference between revisions

From KitwarePublic
< ITK‎ | Examples
Jump to navigationJump to search
(Created page with "==IntensityWindowingImageFilter.cxx== <source lang="cpp"> </source> ==CMakeLists.txt== <source lang="cmake"> </source>")
 
No edit summary
Line 1: Line 1:
==IntensityWindowingImageFilter.cxx==
==IntensityWindowingImageFilter.cxx==
<source lang="cpp">
<source lang="cpp">
#include "itkImage.h"
#include "itkImageFileWriter.h"
#include "itkIntensityWindowingImageFilter.h"
#include "itkImageRegionIterator.h"


typedef itk::Image<unsigned char, 2>  ImageType;
void CreateImage(ImageType::Pointer image);
int main(int, char *[])
{
  ImageType::Pointer image = ImageType::New();
  CreateImage(image);
  typedef itk::IntensityWindowingImageFilter <ImageType, ImageType> IntensityWindowingImageFilterType;
  IntensityWindowingImageFilterType::Pointer filter = IntensityWindowingImageFilterType::New();
  filter->SetInput(image);
  filter->SetWindowMinimum(0);
  filter->SetWindowMaximum(100);
  filter->SetOutputMinimum(0);
  filter->SetOutputMaximum(255);
  filter->Update();
  typedef  itk::ImageFileWriter< ImageType > WriterType;
  WriterType::Pointer writer = WriterType::New();
  writer->SetFileName("output.png");
  writer->SetInput(image);
  writer->Update();
 
  return EXIT_SUCCESS;
}
void CreateImage(ImageType::Pointer image)
{
  ImageType::IndexType start;
  start.Fill(0);
  ImageType::SizeType size;
  size.Fill(100);
  ImageType::RegionType region(start,size);
  image->SetRegions(region);
  image->Allocate();
  image->FillBuffer(10);
  itk::ImageRegionIterator<ImageType> imageIterator(image,region);
  while(!imageIterator.IsAtEnd())
    {
    if(imageIterator.GetIndex()[0] > 30)
      {
      imageIterator.Set(0);
      }
    ++imageIterator;
    }
}
</source>
</source>


==CMakeLists.txt==
==CMakeLists.txt==
<source lang="cmake">
<source lang="cmake">
cmake_minimum_required(VERSION 2.6)
PROJECT(IntensityWindowingImageFilter)
FIND_PACKAGE(ITK REQUIRED)
INCLUDE(${ITK_USE_FILE})
ADD_EXECUTABLE(IntensityWindowingImageFilter IntensityWindowingImageFilter.cxx)
TARGET_LINK_LIBRARIES(IntensityWindowingImageFilter
ITKBasicFilters ITKCommon ITKIO)


</source>
</source>

Revision as of 17:39, 24 February 2011

IntensityWindowingImageFilter.cxx

<source lang="cpp">

  1. include "itkImage.h"
  2. include "itkImageFileWriter.h"
  3. include "itkIntensityWindowingImageFilter.h"
  4. include "itkImageRegionIterator.h"

typedef itk::Image<unsigned char, 2> ImageType;

void CreateImage(ImageType::Pointer image);

int main(int, char *[]) {

 ImageType::Pointer image = ImageType::New();
 CreateImage(image);
 typedef itk::IntensityWindowingImageFilter <ImageType, ImageType> IntensityWindowingImageFilterType;
 IntensityWindowingImageFilterType::Pointer filter = IntensityWindowingImageFilterType::New();
 filter->SetInput(image);
 filter->SetWindowMinimum(0);
 filter->SetWindowMaximum(100);
 filter->SetOutputMinimum(0);
 filter->SetOutputMaximum(255);
 filter->Update();
 typedef  itk::ImageFileWriter< ImageType > WriterType;
 WriterType::Pointer writer = WriterType::New();
 writer->SetFileName("output.png");
 writer->SetInput(image);
 writer->Update();
 
 return EXIT_SUCCESS;

}

void CreateImage(ImageType::Pointer image) {

 ImageType::IndexType start;
 start.Fill(0);
 ImageType::SizeType size;
 size.Fill(100);
 ImageType::RegionType region(start,size);
 image->SetRegions(region);
 image->Allocate();
 image->FillBuffer(10);
 itk::ImageRegionIterator<ImageType> imageIterator(image,region);
 while(!imageIterator.IsAtEnd())
   {
   if(imageIterator.GetIndex()[0] > 30)
     {
     imageIterator.Set(0);
     }
   ++imageIterator;
   }

} </source>

CMakeLists.txt

<source lang="cmake"> cmake_minimum_required(VERSION 2.6)

PROJECT(IntensityWindowingImageFilter)

FIND_PACKAGE(ITK REQUIRED) INCLUDE(${ITK_USE_FILE})

ADD_EXECUTABLE(IntensityWindowingImageFilter IntensityWindowingImageFilter.cxx) TARGET_LINK_LIBRARIES(IntensityWindowingImageFilter ITKBasicFilters ITKCommon ITKIO)

</source>