#include #include #include "itkImageFileWriter.h" #include #include //#include "MacheteImageFilter.h" #include "itkObjectFactory.h" #include "itkImageRegionIterator.h" #include "itkImageRegionConstIterator.h" #include int main(int, char*[]) { std::cout << "Machete image filter"; // 1. work with the filter typedef itk::Image ImageType; ImageType::Pointer image; typedef itk::ImageFileReader ReaderType; ReaderType::Pointer reader = ReaderType::New(); reader->SetFileName("c://img//lung.jpg"); image = reader->GetOutput(); typedef cpExtensions::Algorithms::MacheteImageFilter FilterType; FilterType::Pointer filter = FilterType::New(); filter->SetInput(image); filter->SetRadius(151); itk::Point p0; p0[0] = 250.0; p0[1] = 250.0; p0[2] = 0.0; filter->SetPoint(p0); filter->Update(); // 2. write result typedef itk::ImageFileWriter< ImageType > WriterType; WriterType::Pointer writer = WriterType::New(); writer->SetFileName("c://img//out.jpg"); writer->SetInput(filter->GetOutput()); writer->Update(); // 3.display result visualization /* vtkSmartPointer actor = vtkSmartPointer::New(); #if VTK_MAJOR_VERSION <= 5 actor->SetInput(connector->GetOutput()); #else connector->Update(); actor->GetMapper()->SetInputData(connector->GetOutput()); #endif vtkSmartPointer renderer = vtkSmartPointer::New(); renderer->AddActor(actor); renderer->ResetCamera(); vtkSmartPointer renderWindow = vtkSmartPointer::New(); renderWindow->AddRenderer(renderer); vtkSmartPointer renderWindowInteractor = vtkSmartPointer::New(); vtkSmartPointer style = vtkSmartPointer::New(); renderWindowInteractor->SetInteractorStyle(style); renderWindowInteractor->SetRenderWindow(renderWindow); renderWindowInteractor->Initialize(); renderWindowInteractor->Start();*/ return 0; }