MeVisLab Toolbox Reference
mlPCLEuclideanClusterExtraction.h
Go to the documentation of this file.
1// Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2// **InsertLicense** code author="Wolf Spindler"
3//----------------------------------------------------------------------------------
5
12//----------------------------------------------------------------------------------
13#pragma once
14
16#include <mlPCLModule.h>
17
19
20//----------------------------------------------------------------------------------
22//----------------------------------------------------------------------------------
24{
25public:
28
29protected:
31 void activateAttachments() override;
32
34 void handleNotification (Field* field) override;
35
36private:
38 void _resetResultValues();
39
41 void _clampValues();
42
44 void _filter();
45
47 template <typename POINT_CLOUD_TYPE>
48 typename POINT_CLOUD_TYPE::Ptr _getScaledCloud(const POINT_CLOUD_TYPE &inCloud,
49 const Vector3 &preScale);
50
52 template <typename POINT_CLOUD_TYPE>
53 void _filterT(const POINT_CLOUD_TYPE &inputPointCloud);
54
56 DoubleField *_clusterToleranceFld;
57
59 IntField *_clusterMinSizeFld;
60
62 IntField *_clusterMaxSizeFld;
63
66 Vector3Field *_preScaleFld;
67
69 Vector3Field *_clusterMinExtentsFld;
70
72 BoolField *_passOnlyClusterPointsFld;
73
77 BoolField *_startClusterCountingAtOneFld;
78
80 IntField *_numFoundClustersFld;
81
84
87};
88
90
Project global and OS specific declarations.
#define MLPCL_Segmentation_EXPORT
If included by external modules, exported symbols are declared as import symbols.
Field to encapsulate a boolean value.
Definition mlFields.h:58
Field to encapsulate a double value.
Definition mlFields.h:538
Base class for all fields used in the ML.
Definition mlField.h:73
Field to encapsulate an integer value.
Definition mlFields.h:126
ML Module class applying the pcl::EuclideanClusterExtraction filter to the input point cloud and prov...
void handleNotification(Field *field) override
Handles field changes of the field field.
PCLEuclideanClusterExtraction()
Initializes an ML module wrapping a pcl::EuclideanClusterExtraction filter.
void activateAttachments() override
Updates internal state after changes of fields without field notifications.
ML Module base class for algorithms from the Point Cloud Library (PCL).
Definition mlPCLModule.h:26
Field to encapsulate a vector of 3 double values.
Definition mlFields.h:1103
#define ML_MODULE_CLASS_HEADER(className)
Like ML_CLASS_HEADER for the usage of derived classes from Module.
ML Module base class for algorithms from the Point Cloud Library (PCL).
#define ML_PCL_TEST_INTERFACE(BASE_OBJECT_NAME)
Implements a dedicated interface for PCL related modules which is required in automatic tests.
Target mlrange_cast(Source arg)
Generic version of checked ML casts.