12#include "DefinitionsThreeDim.h"
13#include "AlgorithmFeature3D_LR_SR_LP_LO_SO.h"
21 class CInternalRegistration3D;
998 DeclareGetClassType();
1112 CInternalRegistration3D* m_pInternal;
1113 friend class CInternalRegistration3D;
Template type array class.
Definition FLArray.h:71
Simplified class representing a 3-D point.
Definition TPoint3.h:37
FLImaging module execution result object.
Definition ResultsDef.h:1704
A class representing 3D object data.
Definition FL3DObject.h:42
A class representing matrix.
Definition Matrix.h:79
float m_f32SamplingDistance
Definition Registration3D.h:1064
virtual const CResult EnableSHOTAutoRadius(bool bEnableAutoRadius=true)
virtual const CResult GetResultEulerAngle(Foundation::EEulerSequence eEulerSequence, Base::TPoint3< double > &tp3ResultEulerAngle) const
virtual ~CRegistration3D()
virtual float GetSHOTLRFRadius() const
virtual const CResult SetDescriptorType(EDescriptorType eType)
virtual const CResult GetResultEulerAngle(Foundation::EEulerSequence eEulerSequence, Base::TPoint3< double > *ptp3ResultEulerAngle) const
virtual const CResult SetSHOTCoefficient(float f32Coefficient=4)
virtual const CResult GetResultEulerAngle(Foundation::EEulerSequence eEulerSequence, Base::CFLArray< float > &flaResultEulerAngle) const
virtual bool IsSHOTAutoRadiusEnabled() const
virtual float GetFPFHRadiusCoefficient() const
float m_f32SHOTLRFRadius
Definition Registration3D.h:1046
virtual const CResult GetResultRotationVector(Base::TPoint3< double > &tp3ResultRotationVector) const
virtual const CResult GetResultEulerAngle(Foundation::EEulerSequence eEulerSequence, Base::CFLArray< double > &flaResultEulerAngle) const
virtual float GetSHOTRadius() const
virtual const CResult EnableSHOTLRFAutoRadius(bool bEnableAutoRadius=true)
virtual const CResult SetRefinementMethod(ERefinementMethod eMethod)
virtual float GetSHOTLRFCoefficient() const
float m_f32FPFHRadius
Definition Registration3D.h:1037
virtual const CResult SetSamplingDistance(float f32SamplingDistance=0.03f)
virtual const CResult GetResultPoseMatrix(Foundation::CMatrixFor3DTransform< double > *pMatPoseMatrix) const
virtual const CResult GetResultEulerAngle(Foundation::EEulerSequence eEulerSequence, Base::CFLArray< double > *pFlaResultEulerAngle) const
virtual const CResult SetFPFHRadius(float f32Radius=0.01f)
virtual const CResult SetSHOTRadius(float f32Radius=0.1f)
virtual const CResult SetFPFHRadiusCoefficient(float f32Coefficient=3)
CRegistration3D(const CRegistration3D &Registration3D)
virtual const ERefinementMethod GetRefinementMethod() const
virtual const CResult GetResultTranslationVector(Base::TPoint3< double > &tp3ResultTranslationVector) const
virtual bool IsFPFHAutoRadiusEnabled() const
virtual const CResult Assign(const CRegistration3D *pRegistration3D)
virtual const CResult GetResultTranslationVector(Base::CFLArray< double > *pFlaResultTranslationVector) const
virtual const CResult EnableFPFHAutoRadius(bool bEnableAutoRadius=true)
virtual const EDescriptorType GetDescriptorType() const
float m_f32FPFHCoefficient
Definition Registration3D.h:1010
ERefinementMethod m_eRefinementMethod
Definition Registration3D.h:1073
float m_f32SHOTLRFCoefficient
Definition Registration3D.h:1019
virtual bool IsSHOTLRFAutoRadiusEnabled() const
virtual const CResult GetResultTranslationVector(Base::CFLArray< double > &flaResultTranslationVector) const
virtual const CResult GetResultPoseMatrix(Foundation::CMatrix< double > &matPoseMatrix) const
bool m_bAutoFPFHRadius
Definition Registration3D.h:1082
virtual const CResult GetResultPoseMatrix(Foundation::CMatrixFor3DTransform< float > &matPoseMatrix) const
float m_f32SHOTRadius
Definition Registration3D.h:1055
virtual const CResult GetResultRotationVector(Base::CFLArray< float > &flaResultRotationVector) const
virtual const CResult GetResultPoseMatrix(Foundation::CMatrix< float > &matPoseMatrix) const
virtual float GetSamplingDistance() const
bool m_bAutoSHOTRadius
Definition Registration3D.h:1100
EDescriptorType
Definition Registration3D.h:46
@ EDescriptorType_SHOT352
Definition Registration3D.h:54
@ EDescriptorType_FPFH
Definition Registration3D.h:63
virtual const CResult Clear() override
virtual float GetSHOTCoefficient() const
virtual const CResult SetSHOTLRFRadius(float f32Radius=0.05f)
virtual const CResult GetResultPoseMatrix(Foundation::CMatrixFor3DTransform< double > &matPoseMatrix) const
virtual const CResult GetResultRotationVector(Base::CFLArray< float > *pFlaResultRotationVector) const
virtual const CResult GetResultTranslationVector(Base::CFLArray< float > &flaResultTranslationVector) const
virtual float GetFPFHRadius() const
virtual const CResult GetResultTranslationVector(Base::CFLArray< float > *pFlaResultTranslationVector) const
EDescriptorType m_eDescriptorType
Definition Registration3D.h:1109
virtual const CResult GetResultRotationVector(Base::TPoint3< double > *ptp3ResultRotationVector) const
virtual const CResult SetSHOTLRFCoefficient(float f32Coefficient=2)
virtual bool IsLicenseAvailable() const override
Returns whether the algorithm can be used with the current license.
virtual const CResult GetMergedResult3DObject(bool bLearnRecoloring=true, bool bSourceRecoloring=true, const Base::TPoint3< uint8_t > *pTp3LearnColor=nullptr, const Base::TPoint3< uint8_t > *pTp3SourceColor=nullptr, Foundation::CFL3DObject *pFloMergedResult=nullptr)
virtual const CResult GetResultRotationVector(Base::CFLArray< double > *pFlaResultRotationVector) const
virtual const CResult GetResultEulerAngle(Foundation::EEulerSequence eEulerSequence, Base::CFLArray< float > *pFlaResultEulerAngle) const
virtual const CResult GetResultPoseMatrix(Foundation::CMatrixFor3DTransform< float > *pMatPoseMatrix) const
ERefinementMethod
Definition Registration3D.h:75
@ ERefinementMethod_None
Definition Registration3D.h:83
@ ERefinementMethod_Fast
Definition Registration3D.h:92
virtual const CResult Assign(const CRegistration3D &Registration3D)
virtual const CResult GetResultTranslationVector(Base::TPoint3< double > *ptp3ResultTranslationVector) const
virtual const CResult GetMergedResult3DObject(bool bLearnRecoloring, bool bSourceRecoloring, const Base::TPoint3< uint8_t > &tp3LearnColor, const Base::TPoint3< uint8_t > &tp3SourceColor, Foundation::CFL3DObject &floMergedResult)
CRegistration3D(const CRegistration3D *pRegistration3D)
bool m_bAutoSHOTLRFRadius
Definition Registration3D.h:1091
virtual const CResult GetResultPoseMatrix(Foundation::CMatrix< float > *pMatPoseMatrix) const
float m_f32SHOTCoefficient
Definition Registration3D.h:1028
virtual const CResult Execute() override
const CRegistration3D & operator=(const CRegistration3D &Registration3D)
virtual const CResult GetResultRotationVector(Base::CFLArray< double > &flaResultRotationVector) const
virtual const CResult GetResultPoseMatrix(Foundation::CMatrix< double > *pMatPoseMatrix) const
EEulerSequence
The order of rotations.
Definition DefinitionsMathematics.h:240
Definition Algorithm3DBase.h:16