1 #ifndef __bbSlicerVotingBinaryHoleFilling_h_INCLUDED__
2 #define __bbSlicerVotingBinaryHoleFilling_h_INCLUDED__
4 #include "bbSlicer_EXPORT.h"
5 #include "bbtkAtomicBlackBox.h"
14 #include <ModuleDescriptionUtilities.h>
15 #include <ModuleDescriptionParser.h>
16 #include <ModuleParameterGroup.h>
17 #include <ModuleDescription.h>
18 #include <ModuleParameter.h>
20 #include "CreationTool.h"
24 class bbSlicer_EXPORT VotingBinaryHoleFilling
26 public bbtk::AtomicBlackBox {
27 BBTK_BLACK_BOX_INTERFACE ( VotingBinaryHoleFilling , bbtk::AtomicBlackBox ) ;
31 BBTK_DECLARE_INPUT ( radius , std::vector<int> );
32 BBTK_DECLARE_INPUT ( majorityThreshold , int );
33 BBTK_DECLARE_INPUT ( background , int );
34 BBTK_DECLARE_INPUT ( foreground , int );
35 BBTK_DECLARE_INPUT ( inputVolume , std::string );
36 BBTK_DECLARE_INPUT ( outputVolume , std::string );
40 BBTK_PROCESS ( Process ) ;
43 void execute ( std::string lib , int _argc , char * _argv[] ) ;
46 BBTK_BEGIN_DESCRIBE_BLACK_BOX ( VotingBinaryHoleFilling , bbtk::AtomicBlackBox ) ;
47 BBTK_NAME ( "VotingBinaryHoleFilling" ) ;
48 BBTK_AUTHOR ( "Bill Lorensen" ) ;
49 BBTK_DESCRIPTION ( "Applies a voting operation in order to fill-in cavities. This can be used for smoothing contours and for filling holes in binary images. This technique is used frequently when segmenting complete organs that may have ducts or vasculature that may not have been included in the initial segmentation, e.g. lungs, kidneys, liver." ) ;
50 BBTK_CATEGORY ( "Filtering" ) ;
52 // GENERATED DESCRPTION
54 BBTK_INPUT(VotingBinaryHoleFilling , radius , "radius" , std::vector<int>, "");
55 BBTK_INPUT(VotingBinaryHoleFilling , majorityThreshold , "majorityThreshold" , int, "");
56 BBTK_INPUT(VotingBinaryHoleFilling , background , "background" , int, "");
57 BBTK_INPUT(VotingBinaryHoleFilling , foreground , "foreground" , int, "");
58 BBTK_INPUT(VotingBinaryHoleFilling , inputVolume , "inputVolume" , std::string, "");
59 BBTK_INPUT(VotingBinaryHoleFilling , outputVolume , "outputVolume" , std::string, "");
61 // EO GENERATED DESCRIPTION
63 BBTK_END_DESCRIBE_BLACK_BOX ( VotingBinaryHoleFilling ) ;
66 #endif // __bbSlicerVotingBinaryHoleFilling_h_INCLUDED__