#include "itkImage.h"
#include "itkImageFileReader.h"
#include "itkImageFileWriter.h"
#include "itkFlipImageFilter.h"
template <typename ImageType>
typename ImageType::Pointer Flip(typename ImageType* image, itk::FixedArray<bool,2> flipAxes) {
using FlipImageFilterType = itk::FlipImageFilter<ImageType>;
FlipImageFilterType::Pointer flipFilter = FlipImageFilterType::New();
flipFilter->SetInput(image);
/* FlipImageFilterType::FlipAxesArrayType flipAxes;
flipAxes[0] = true;
flipAxes[1] = true;
flipAxes[2] = true;*/
flipFilter->SetFlipAxes(flipAxes);
flipFilter->Update();
return flipFilter->GetOutput();
}
int main()
{
constexpr unsigned Dimension = 2;
using PixelType = unsigned char;
using ImageType = itk::Image<PixelType, Dimension>;
using ReaderType = itk::ImageFileReader<ImageType>;
ReaderType::Pointer reader = ReaderType::New();
reader->SetFileName("C:/Users/Curaway/Desktop/1.jpg");
reader->Update();
itk::FixedArray<bool, 2> flipAxes;
flipAxes[0] = true;
flipAxes[1] = false;
auto Image = Flip(reader->GetOutput(), flipAxes);
using WriterType = itk::ImageFileWriter<ImageType>;
WriterType::Pointer writer = WriterType::New();
writer->SetFileName("C:/Users/Curaway/Desktop/3.png");
writer->SetInput(Image);
writer->Update();
return EXIT_SUCCESS;
}
itk itkFlipImageFilter任意轴翻转
最新推荐文章于 2023-12-08 17:05:43 发布