#ifndef __bbSlicerMedianFilter_h_INCLUDED__ #define __bbSlicerMedianFilter_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 MedianFilter : public bbtk::AtomicBlackBox { BBTK_BLACK_BOX_INTERFACE ( MedianFilter , bbtk::AtomicBlackBox ) ; // GENERATED ARGS BBTK_DECLARE_INPUT ( neighborhood , std::vector ); BBTK_DECLARE_INPUT ( inputVolume , std::string ); BBTK_DECLARE_INPUT ( outputVolume , 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 ( MedianFilter , bbtk::AtomicBlackBox ) ; BBTK_NAME ( "MedianFilter" ) ; BBTK_AUTHOR ( "Bill Lorensen" ) ; BBTK_DESCRIPTION ( "The MedianImageFilter is commonly used as a robust approach for noise reduction. This filter is particularly efficient against 'salt-and-pepper' noise. In other words, it is robust to the presence of gray-level outliers. MedianImageFilter computes the value of each output pixel as the statistical median of the neighborhood of values around the corresponding input pixel." ) ; BBTK_CATEGORY ( "Filtering.Denoising" ) ; // GENERATED DESCRPTION BBTK_INPUT(MedianFilter , neighborhood , "neighborhood" , std::vector, ""); BBTK_INPUT(MedianFilter , inputVolume , "inputVolume" , std::string, ""); BBTK_INPUT(MedianFilter , outputVolume , "outputVolume" , std::string, ""); // EO GENERATED DESCRIPTION BBTK_END_DESCRIBE_BLACK_BOX ( MedianFilter ) ; } #endif // __bbSlicerMedianFilter_h_INCLUDED__