FAST  3.2.0
Framework for Heterogeneous Medical Image Computing and Visualization
SeededRegionGrowing.hpp
Go to the documentation of this file.
1 #ifndef SEEDEDREGIONGROWING_HPP_
2 #define SEEDEDREGIONGROWING_HPP_
3 
4 #include "FAST/ProcessObject.hpp"
5 #include "FAST/Data/Image.hpp"
7 
8 namespace fast {
9 
10 class FAST_EXPORT SeededRegionGrowing : public ProcessObject {
12  public:
13  void setIntensityRange(float min, float max);
14  void addSeedPoint(uint x, uint y);
15  void addSeedPoint(uint x, uint y, uint z);
16  void addSeedPoint(Vector3ui position);
17  private:
19  void execute();
20  void waitToFinish();
21  void recompileOpenCLCode(Image::pointer input);
22  template <class T>
23  void executeOnHost(T* input, Image::pointer output);
24 
25  float mMinimumIntensity, mMaximumIntensity;
26  std::vector<Vector3ui> mSeedPoints;
27 
28  cl::Kernel mKernel;
29  unsigned char mDimensionCLCodeCompiledFor;
30  DataType mTypeCLCodeCompiledFor;
31 
32 };
33 
34 } // end namespace fast
35 
36 
37 
38 #endif /* SEEDEDREGIONGROWING_HPP_ */
Image.hpp
fast::DataType
DataType
Definition: DataTypes.hpp:38
fast
Definition: AffineTransformation.hpp:7
FAST_OBJECT
#define FAST_OBJECT(className)
Definition: Object.hpp:9
fast::max
T max(T a, T b)
Definition: Utility.hpp:46
fast::min
T min(T a, T b)
Definition: Utility.hpp:41
DataTypes.hpp
ProcessObject.hpp
fast::DataObject::pointer
std::shared_ptr< DataObject > pointer
Definition: DataObject.hpp:16
fast::SeededRegionGrowing
Definition: SeededRegionGrowing.hpp:10
uint
unsigned int uint
Definition: DataTypes.hpp:16
fast::ProcessObject
Definition: ProcessObject.hpp:22
fast::Vector3ui
Eigen::Matrix< uint, 3, 1 > Vector3ui
Definition: DataTypes.hpp:35