#ifndef __bbSlicerVectorDemonRegistrationBRAINS_h_INCLUDED__ #define __bbSlicerVectorDemonRegistrationBRAINS_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 VectorDemonRegistrationBRAINS : public bbtk::AtomicBlackBox { BBTK_BLACK_BOX_INTERFACE ( VectorDemonRegistrationBRAINS , bbtk::AtomicBlackBox ) ; // GENERATED ARGS BBTK_DECLARE_INPUT ( movingVolume , std::vector ); BBTK_DECLARE_INPUT ( fixedVolume , std::vector ); BBTK_DECLARE_INPUT ( inputPixelType , std::string ); BBTK_DECLARE_INPUT ( outputVolume , std::string ); BBTK_DECLARE_INPUT ( outputDisplacementFieldVolume , std::string ); BBTK_DECLARE_INPUT ( outputPixelType , std::string ); BBTK_DECLARE_INPUT ( interpolationMode , std::string ); BBTK_DECLARE_INPUT ( registrationFilterType , std::string ); BBTK_DECLARE_INPUT ( smoothDisplacementFieldSigma , double ); BBTK_DECLARE_INPUT ( numberOfPyramidLevels , int ); BBTK_DECLARE_INPUT ( minimumFixedPyramid , std::vector ); BBTK_DECLARE_INPUT ( minimumMovingPyramid , std::vector ); BBTK_DECLARE_INPUT ( arrayOfPyramidLevelIterations , std::vector ); BBTK_DECLARE_INPUT ( histogramMatch , bool ); BBTK_DECLARE_INPUT ( numberOfHistogramBins , int ); BBTK_DECLARE_INPUT ( numberOfMatchPoints , int ); BBTK_DECLARE_INPUT ( medianFilterSize , std::vector ); BBTK_DECLARE_INPUT ( initializeWithDisplacementField , std::string ); BBTK_DECLARE_INPUT ( initializeWithTransform , std::string ); BBTK_DECLARE_INPUT ( makeBOBF , bool ); BBTK_DECLARE_INPUT ( fixedBinaryVolume , std::string ); BBTK_DECLARE_INPUT ( movingBinaryVolume , std::string ); BBTK_DECLARE_INPUT ( lowerThresholdForBOBF , int ); BBTK_DECLARE_INPUT ( upperThresholdForBOBF , int ); BBTK_DECLARE_INPUT ( backgroundFillValue , int ); BBTK_DECLARE_INPUT ( seedForBOBF , std::vector ); BBTK_DECLARE_INPUT ( neighborhoodForBOBF , std::vector ); BBTK_DECLARE_INPUT ( outputDisplacementFieldPrefix , std::string ); BBTK_DECLARE_INPUT ( outputCheckerboardVolume , std::string ); BBTK_DECLARE_INPUT ( checkerboardPatternSubdivisions , std::vector ); BBTK_DECLARE_INPUT ( outputNormalized , bool ); BBTK_DECLARE_INPUT ( outputDebug , bool ); BBTK_DECLARE_INPUT ( weightFactors , std::vector ); BBTK_DECLARE_INPUT ( gradientType , int ); BBTK_DECLARE_INPUT ( smoothingUp , double ); BBTK_DECLARE_INPUT ( maxStepLength , double ); BBTK_DECLARE_INPUT ( turnOffDiffeomorph , bool ); BBTK_DECLARE_INPUT ( UseDebugImageViewer , bool ); BBTK_DECLARE_INPUT ( PromptAfterImageSend , bool ); BBTK_DECLARE_INPUT ( numberOfBCHApproximationTerms , int ); BBTK_DECLARE_INPUT ( numberOfThreads , int ); // EO GENERATED ARGS BBTK_PROCESS ( Process ) ; void Process ( ) ; private: void execute ( std::string lib , int _argc , char * _argv[] ) ; } ; BBTK_BEGIN_DESCRIBE_BLACK_BOX ( VectorDemonRegistrationBRAINS , bbtk::AtomicBlackBox ) ; BBTK_NAME ( "VectorDemonRegistrationBRAINS" ) ; BBTK_AUTHOR ( "This tool was developed by Hans J. Johnson and Greg Harris." ) ; BBTK_DESCRIPTION ( "This program finds a deformation field to warp a moving image onto a fixed image. The images must be of the same signal kind, and contain an image of the same kind of object. This program uses the Thirion Demons warp software in ITK, the Insight Toolkit. Additional information is available at: http://www.nitrc.org/projects/brainsdemonwarp." ) ; BBTK_CATEGORY ( "Registration.Specialized" ) ; // GENERATED DESCRPTION BBTK_INPUT(VectorDemonRegistrationBRAINS , movingVolume , "movingVolume" , std::vector, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , fixedVolume , "fixedVolume" , std::vector, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , inputPixelType , "inputPixelType" , std::string, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , outputVolume , "outputVolume" , std::string, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , outputDisplacementFieldVolume , "outputDisplacementFieldVolume" , std::string, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , outputPixelType , "outputPixelType" , std::string, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , interpolationMode , "interpolationMode" , std::string, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , registrationFilterType , "registrationFilterType" , std::string, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , smoothDisplacementFieldSigma , "smoothDisplacementFieldSigma" , double, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , numberOfPyramidLevels , "numberOfPyramidLevels" , int, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , minimumFixedPyramid , "minimumFixedPyramid" , std::vector, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , minimumMovingPyramid , "minimumMovingPyramid" , std::vector, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , arrayOfPyramidLevelIterations , "arrayOfPyramidLevelIterations" , std::vector, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , histogramMatch , "histogramMatch" , bool, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , numberOfHistogramBins , "numberOfHistogramBins" , int, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , numberOfMatchPoints , "numberOfMatchPoints" , int, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , medianFilterSize , "medianFilterSize" , std::vector, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , initializeWithDisplacementField , "initializeWithDisplacementField" , std::string, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , initializeWithTransform , "initializeWithTransform" , std::string, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , makeBOBF , "makeBOBF" , bool, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , fixedBinaryVolume , "fixedBinaryVolume" , std::string, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , movingBinaryVolume , "movingBinaryVolume" , std::string, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , lowerThresholdForBOBF , "lowerThresholdForBOBF" , int, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , upperThresholdForBOBF , "upperThresholdForBOBF" , int, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , backgroundFillValue , "backgroundFillValue" , int, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , seedForBOBF , "seedForBOBF" , std::vector, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , neighborhoodForBOBF , "neighborhoodForBOBF" , std::vector, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , outputDisplacementFieldPrefix , "outputDisplacementFieldPrefix" , std::string, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , outputCheckerboardVolume , "outputCheckerboardVolume" , std::string, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , checkerboardPatternSubdivisions , "checkerboardPatternSubdivisions" , std::vector, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , outputNormalized , "outputNormalized" , bool, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , outputDebug , "outputDebug" , bool, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , weightFactors , "weightFactors" , std::vector, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , gradientType , "gradientType" , int, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , smoothingUp , "smoothingUp" , double, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , maxStepLength , "maxStepLength" , double, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , turnOffDiffeomorph , "turnOffDiffeomorph" , bool, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , UseDebugImageViewer , "UseDebugImageViewer" , bool, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , PromptAfterImageSend , "PromptAfterImageSend" , bool, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , numberOfBCHApproximationTerms , "numberOfBCHApproximationTerms" , int, ""); BBTK_INPUT(VectorDemonRegistrationBRAINS , numberOfThreads , "numberOfThreads" , int, ""); // EO GENERATED DESCRIPTION BBTK_END_DESCRIBE_BLACK_BOX ( VectorDemonRegistrationBRAINS ) ; } #endif // __bbSlicerVectorDemonRegistrationBRAINS_h_INCLUDED__