#ifndef __bbSlicerFastAffineregistration_h_INCLUDED__ #define __bbSlicerFastAffineregistration_h_INCLUDED__ #include "bbSlicer_EXPORT.h" #include "bbtkAtomicBlackBox.h" #include #include #include #include #include #include #include #include #include #include #include #include "CreationTool.h" namespace bbSlicer { class bbSlicer_EXPORT FastAffineregistration : public bbtk::AtomicBlackBox { BBTK_BLACK_BOX_INTERFACE ( FastAffineregistration , bbtk::AtomicBlackBox ) ; // GENERATED ARGS BBTK_DECLARE_INPUT ( FixedImageSmoothingFactor , int ); BBTK_DECLARE_INPUT ( MovingImageSmoothingFactor , int ); BBTK_DECLARE_INPUT ( HistogramBins , int ); BBTK_DECLARE_INPUT ( SpatialSamples , int ); BBTK_DECLARE_INPUT ( Iterations , int ); BBTK_DECLARE_INPUT ( TranslationScale , double ); BBTK_DECLARE_INPUT ( InitialTransform , std::string ); BBTK_DECLARE_INPUT ( FixedImageFileName , std::string ); BBTK_DECLARE_INPUT ( MovingImageFileName , std::string ); BBTK_DECLARE_INPUT ( OutputTransform , std::string ); BBTK_DECLARE_INPUT ( ResampledImageFileName , std::string ); // EO GENERATED ARGS BBTK_PROCESS ( Process ) ; void Process ( ) ; private: void execute ( std::string lib , int _argc , char * _argv[] ) ; } ; BBTK_BEGIN_DESCRIBE_BLACK_BOX ( FastAffineregistration , bbtk::AtomicBlackBox ) ; BBTK_NAME ( "FastAffineregistration" ) ; BBTK_AUTHOR ( "Daniel Blezek" ) ; BBTK_DESCRIPTION ( "Registers two images together using an affine transform and mutual information. This module is often used to align images of different subjects or images of the same subject from different modalities.This module can smooth images prior to registration to mitigate noise and improve convergence. Many of the registration parameters require a working knowledge of the algorithm although the default parameters are sufficient for many registration tasks." ) ; BBTK_CATEGORY ( "Legacy.Registration" ) ; // GENERATED DESCRPTION BBTK_INPUT(FastAffineregistration , FixedImageSmoothingFactor , "FixedImageSmoothingFactor" , int, ""); BBTK_INPUT(FastAffineregistration , MovingImageSmoothingFactor , "MovingImageSmoothingFactor" , int, ""); BBTK_INPUT(FastAffineregistration , HistogramBins , "HistogramBins" , int, ""); BBTK_INPUT(FastAffineregistration , SpatialSamples , "SpatialSamples" , int, ""); BBTK_INPUT(FastAffineregistration , Iterations , "Iterations" , int, ""); BBTK_INPUT(FastAffineregistration , TranslationScale , "TranslationScale" , double, ""); BBTK_INPUT(FastAffineregistration , InitialTransform , "InitialTransform" , std::string, ""); BBTK_INPUT(FastAffineregistration , FixedImageFileName , "FixedImageFileName" , std::string, ""); BBTK_INPUT(FastAffineregistration , MovingImageFileName , "MovingImageFileName" , std::string, ""); BBTK_INPUT(FastAffineregistration , OutputTransform , "OutputTransform" , std::string, ""); BBTK_INPUT(FastAffineregistration , ResampledImageFileName , "ResampledImageFileName" , std::string, ""); // EO GENERATED DESCRIPTION BBTK_END_DESCRIBE_BLACK_BOX ( FastAffineregistration ) ; } #endif // __bbSlicerFastAffineregistration_h_INCLUDED__