39 #ifdef ICL_HAVE_OPENCL 76 void setUseCL(
bool use);
80 void setUseROI(
bool use);
87 void setROI(
float xMin,
float xMax,
float yMin,
float yMax);
91 void setMinClusterSize(
unsigned int size);
95 void setUseFastGrowing(
bool use);
99 void setAssignmentRadius(
int radius);
103 void setAssignmentMaxDistance(
float maxDistance);
107 void setRANSACeuclDistance(
int distance);
111 void setRANSACpasses(
int passes);
115 void setRANSACtolerance(
int tolerance);
119 void setRANSACsubset(
int subset);
123 void setBLOBSeuclDistance(
int distance);
139 std::vector<std::vector<int> > getCluster();
143 std::vector<std::vector<int> > getBlobs();
147 const int* getAssignment();
176 void calculatePointAssignmentAndAdjacency();
179 void calculateCutfreeMatrix();
182 void greedyComposition();
185 void calculateRemainingPoints();
188 void blobSegmentation();
191 void colorPointcloud();
214 std::vector<std::vector<int> >
blobs;
234 void checkNeighbourGrayThreshold(
int x,
int y,
int zuw,
int threshold, std::vector<int> *
data);
236 void checkNeighbourDistanceRemaining(
int x,
int y,
int zuw, std::vector<int> *
data);
238 void regionGrowBlobs();
240 void checkNeighbourDistance(
int x,
int y,
int zuw, std::vector<int> *
data);
242 bool checkNotExist(
int zw, std::vector<int> &nb);
246 #ifdef ICL_HAVE_OPENCL math::DynMatrix< float > probabilities
Definition: Segmentation3D.h:227
std::vector< std::vector< int > > cluster
Definition: Segmentation3D.h:213
int RANSACpasses
Definition: Segmentation3D.h:220
undocument this line if you encounter any issues!
Definition: Any.h:37
int w
Definition: Segmentation3D.h:195
core::Img8u normalEdgeImage
Definition: Segmentation3D.h:208
unsigned char * segmentColorImageRArray
Definition: Segmentation3D.h:248
int BLOBSeuclDistance
Definition: Segmentation3D.h:223
utils::CLBuffer segmentColorImageRBuffer
Definition: Segmentation3D.h:260
math::DynMatrix< bool > neighbours
Definition: Segmentation3D.h:225
#define ICLGeom_API
Definition: CompatMacros.h:179
math::DynMatrix< bool > cutfree
Definition: Segmentation3D.h:226
Wrapper for an OpenCL Kernel.
Definition: CLKernel.h:72
utils::CLBuffer elementsBlobsBuffer
Definition: Segmentation3D.h:269
utils::CLKernel kernelSegmentColoring
Definition: Segmentation3D.h:254
utils::CLBuffer segmentColorImageGBuffer
Definition: Segmentation3D.h:261
utils::CLBuffer assignmentBuffer
Definition: Segmentation3D.h:263
utils::CLKernel kernelCheckRANSAC
Definition: Segmentation3D.h:256
bool clReady
Definition: Segmentation3D.h:231
core::DataSegment< float, 4 > xyzData
Definition: Segmentation3D.h:207
unsigned int minClusterSize
Definition: Segmentation3D.h:215
utils::CLBuffer neighboursBuffer
Definition: Segmentation3D.h:264
ICLQt_API ImgROI data(ImgQ &r)
creates full ROI ROI-struct
utils::CLProgram program
Definition: Segmentation3D.h:253
int assignmentRadius
Definition: Segmentation3D.h:217
bool useFastGrowing
Definition: Segmentation3D.h:216
Wrapper for an OpenCL Buffer.
Definition: CLBuffer.h:52
utils::CLBuffer xyzBuffer
Definition: Segmentation3D.h:267
Size class of the ICL.
Definition: Size.h:61
std::vector< std::vector< int > > blobs
Definition: Segmentation3D.h:214
int * assignmentBlobs
Definition: Segmentation3D.h:205
utils::CLKernel kernelPointAssignment
Definition: Segmentation3D.h:255
utils::CLBuffer assignmentBlobsBuffer
Definition: Segmentation3D.h:268
utils::CLKernel kernelAssignRANSAC
Definition: Segmentation3D.h:257
int RANSACeuclDistance
Definition: Segmentation3D.h:219
Complex utility class for detection of connected image components.
Definition: RegionDetector.h:179
depth
determines the pixel type of an image (8Bit-int or 32Bit-float)
Definition: Types.h:60
utils::CLBuffer assignmentOutBuffer
Definition: Segmentation3D.h:266
float yMinROI
Definition: Segmentation3D.h:198
bool * elements
Definition: Segmentation3D.h:201
utils::Size s
Definition: Segmentation3D.h:196
core::Img8u segmentColorImage
Definition: Segmentation3D.h:211
int * assignmentRemaining
Definition: Segmentation3D.h:203
int RANSACsubset
Definition: Segmentation3D.h:222
Definition: Segmentation3D.h:49
core::Img32f depthImage
Definition: Segmentation3D.h:209
bool * elementsBlobs
Definition: Segmentation3D.h:204
utils::CLBuffer segmentColorImageBBuffer
Definition: Segmentation3D.h:262
utils::CLBuffer elementsBuffer
Definition: Segmentation3D.h:265
unsigned char * segmentColorImageGArray
Definition: Segmentation3D.h:249
unsigned char * segmentColorImageBArray
Definition: Segmentation3D.h:250
bool useCL
Definition: Segmentation3D.h:232
bool useROI
Definition: Segmentation3D.h:199
int * assignment
Definition: Segmentation3D.h:202
Main class for OpenCL based accelleration.
Definition: CLProgram.h:259
cv::RegionDetector * region
Definition: Segmentation3D.h:229
float assignmentMaxDistance
Definition: Segmentation3D.h:218
float dist3(const Vec4 &a, const Vec4 &b)
3d euclidian distance
Definition: HomogeneousMath.h:179
int RANSACtolerance
Definition: Segmentation3D.h:221