19#include "DefinitionsAdvancedFunctions.h"
20#include "AlgorithmFeature_SR_LI_LR_LP.h"
21#include "ReportDescriptorForMatch.h"
29 class CInternalPatternMatch;
1625 virtual const CResult RunWarmUpCuda();
1632 DeclareGetClassType();
1803 friend class CInternalPatternMatch;
1805 CInternalPatternMatch* m_pInternal;
virtual const CResult SetFilterItem(CPatternMatch::EFilterItem eFilterItem, double f64Value, const Base::ELogicalCondition eFilterCondition)
bool m_bSortClusterMode
Definition PatternMatch.h:1782
virtual const CResult Filter(EFilterItem eItem, double f64Value, Base::ELogicalCondition eCondition)
virtual const CResult Assign(const CPatternMatch &aib)
EMatchContrastOption m_eContrastOption
Definition PatternMatch.h:1717
double m_f64ScaleMin
Definition PatternMatch.h:1661
virtual const CResult SetSortItem(CPatternMatch::EFilterItem eSortItem, CPatternMatch::EOrder eOrder)
virtual double GetAngleTolerance() const
virtual const CResult GetResultScale(int64_t i64Index, float &f32ResultScale) const
virtual const CResult SetFilterItem(const Base::CFLArray< int32_t > &flaFilterItem, const Base::CFLArray< double > &flaValue, const Base::CFLArray< int32_t > &flaFilterCondition)
virtual int64_t GetRequiredGPUMemory() const override
virtual const CResult SetAccuracy(double f64Accuracy=0.5)
virtual const CResult SetContrastOption(EMatchContrastOption eOption=EMatchContrastOption_Normal)
virtual const ESearchAccuracy GetSearchAccuracy() const
virtual const CResult GetSortItem(Base::CFLArray< int32_t > &flaItem, Base::CFLArray< int32_t > &flaOrder) const
virtual const CResult AddSortItem(CPatternMatch::EFilterItem eSortItem, CPatternMatch::EOrder eOrder)
virtual const CResult GetResult(int64_t i64Index, CPatternMatch::SResult &sResults) const
virtual const CResult ReportToCSV(const CReportDescriptorForMatch *pWrd) const
virtual Foundation::EProcessingUnitFeatures GetOptimalProcessingUnit() const override
virtual const CResult GetScaleRange(double &f64ScaleMin, double &f64ScaleMax) const
int64_t m_i64MaxObject
Definition PatternMatch.h:1643
virtual const CResult GetResult(int64_t i64Index, CPatternMatch::SResult *pSResults) const
EFilterItem
Definition PatternMatch.h:201
@ EFilterItem_Angle
Definition PatternMatch.h:224
@ EFilterItem_PivotY
Definition PatternMatch.h:248
@ EFilterItem_Unselected
Definition PatternMatch.h:206
@ EFilterItem_RegionCenterX
Definition PatternMatch.h:230
@ EFilterItem_RegionCenterY
Definition PatternMatch.h:236
@ EFilterItem_Scale
Definition PatternMatch.h:218
@ EFilterItem_Score
Definition PatternMatch.h:212
@ EFilterItem_PivotX
Definition PatternMatch.h:242
virtual const CResult GetFilterItem(Base::CFLArray< int32_t > &flaFilterItem, Base::CFLArray< double > &flaValue, Base::CFLArray< int32_t > &flaFilterCondition) const
virtual const CResult ReportToCSV(const Foundation::CReportDescriptor *pWrd) const override
The execution result of the algorithm is recorded in a file according to the options recorded in the ...
virtual bool IsLicenseAvailable() const override
Returns whether the algorithm can be used with the current license.
virtual const CResult SetSearchAccuracy(const ESearchAccuracy eSearchAccuracy)
virtual double GetAngleBias() const
virtual const CResult SetAngleBias(double f64AngleBias=.0)
virtual double GetAccuracy() const
virtual const CResult GetLearnedImageRaw(Base::CFLImage &fliImage) const
virtual const CResult Execute()
ESortClusterModeMethod
Definition PatternMatch.h:280
@ ESortClusterModeMethod_Pivot_X_Desc_Y_Asc
Definition PatternMatch.h:414
@ ESortClusterModeMethod_Pivot_X_Desc_Y_Desc
Definition PatternMatch.h:423
@ ESortClusterModeMethod_RegionCenter_X_Desc_Y_Desc
Definition PatternMatch.h:351
@ ESortClusterModeMethod_RegionCenter_X_Asc_Y_Asc
Definition PatternMatch.h:324
@ ESortClusterModeMethod_Pivot_Y_Desc_X_Asc
Definition PatternMatch.h:378
@ ESortClusterModeMethod_Pivot_X_Asc_Y_Asc
Definition PatternMatch.h:396
@ ESortClusterModeMethod_Pivot_Y_Asc_X_Desc
Definition PatternMatch.h:369
@ ESortClusterModeMethod_RegionCenter_X_Asc_Y_Desc
Definition PatternMatch.h:333
@ ESortClusterModeMethod_RegionCenter_Y_Desc_X_Asc
Definition PatternMatch.h:306
@ ESortClusterModeMethod_Pivot_X_Asc_Y_Desc
Definition PatternMatch.h:405
@ ESortClusterModeMethod_Pivot_Y_Asc_X_Asc
Definition PatternMatch.h:360
@ ESortClusterModeMethod_RegionCenter_Y_Asc_X_Desc
Definition PatternMatch.h:297
@ ESortClusterModeMethod_RegionCenter_Y_Desc_X_Desc
Definition PatternMatch.h:315
@ ESortClusterModeMethod_RegionCenter_Y_Asc_X_Asc
Definition PatternMatch.h:288
@ ESortClusterModeMethod_RegionCenter_X_Desc_Y_Asc
Definition PatternMatch.h:342
@ ESortClusterModeMethod_Pivot_Y_Desc_X_Desc
Definition PatternMatch.h:387
virtual const CResult Load(const Base::CFLString< wchar_t > &strPatternFile)
virtual const CResult ClearResultData()
virtual const CResult SetScaleRange(double f64ScaleMin=1., double f64ScaleMax=1.)
virtual int64_t GetResultCount() const
virtual const CResult GetResultScore(int64_t i64Index, float &f32ResultScore) const
CPatternMatch(const CPatternMatch *pPmr)
virtual bool IsLearned() const
virtual const CResult ClearSortItem()
virtual const CResult GetResultRegion(int64_t i64Index, Foundation::CFLFigureArray *pFlfaResultRegion) const
virtual bool IsInterpolationEnabled() const
double m_f64Accuracy
Definition PatternMatch.h:1697
virtual const CResult AddSortItem(const Base::CFLArray< int32_t > &flaItem, const Base::CFLArray< int32_t > &flaOrder)
virtual const CResult Clear()
virtual double GetMinimumDetectionScore() const
ESearchAccuracy
Definition PatternMatch.h:435
@ ESearchAccuracy_Normal
Definition PatternMatch.h:452
@ ESearchAccuracy_Accurate
Definition PatternMatch.h:461
@ ESearchAccuracy_Fast
Definition PatternMatch.h:443
virtual const CResult GetFilterItem(CPatternMatch::EFilterItem &eFilterItem, double &f64Value, Base::ELogicalCondition &eFilterCondition) const
virtual bool GetSortClusterMode(CPatternMatch::ESortClusterModeMethod &eMethod, double &f64Coefficient) const
double m_f64MinimumDetectionScore
Definition PatternMatch.h:1652
virtual const CResult Sort(EFilterItem eItem=EFilterItem_Unselected, EOrder eOrder=EOrder_Descending)
virtual const CResult Save(const Base::CFLString< wchar_t > &strPatternFile)
virtual const CResult GetResultRegion(int64_t i64Index, Foundation::CFLFigureArray &flfaResultRegion) const
bool m_bInterpolation
Definition PatternMatch.h:1706
virtual const EMatchContrastOption GetContrastOption() const
double m_f64AngleBias
Definition PatternMatch.h:1679
EOrder
Definition PatternMatch.h:258
@ EOrder_Descending
Definition PatternMatch.h:269
@ EOrder_Ascending
Definition PatternMatch.h:263
virtual const CResult SetMinimumDetectionScore(double f64Score=.5)
double m_f64ScaleMax
Definition PatternMatch.h:1670
virtual const CResult ClearFilterItem()
ESearchAccuracy m_eSearchAccuracy
Definition PatternMatch.h:1728
Base::CFLArray< int32_t > m_flaSortOrder
Definition PatternMatch.h:1773
double m_f64AngleTolerance
Definition PatternMatch.h:1688
virtual const CResult Sort(const Base::CFLArray< int32_t > &flaItem, const Base::CFLArray< int32_t > &flaOrder)
virtual const CResult ClearLearnedData()
virtual const CResult Learn()
virtual const CResult SortClusterMode(ESortClusterModeMethod eMethod, double f64Coefficient=.5)
virtual const CResult SetMaxObject(int64_t i64MaxObject=1)
const CPatternMatch & operator=(const CPatternMatch &pm)
virtual const CResult GetSortItem(CPatternMatch::EFilterItem &eSortItem, CPatternMatch::EOrder &eOrder) const
virtual const CResult GetResultPivot(int64_t i64Index, Foundation::CFLPoint< double > &flpResultPivot) const
Base::CFLArray< int32_t > m_flaFilterCondition
Definition PatternMatch.h:1755
double m_f64SortClusterCoefficient
Definition PatternMatch.h:1800
virtual const CResult SetSortItem(const Base::CFLArray< int32_t > &flaItem, const Base::CFLArray< int32_t > &flaOrder)
virtual const CResult Assign(const CPatternMatch *pAib)
virtual const CResult EnableInterpolation(bool bEnable=true)
virtual const CResult GetLearnedImage(Base::CFLImage &fliImage, bool bIncludeFigure=false) const
CPatternMatch(const CPatternMatch &pmr)
CPatternMatch::ESortClusterModeMethod m_eSortClusterMethod
Definition PatternMatch.h:1791
virtual const CResult SetAngleTolerance(double f64AngleTolerance=.0)
virtual const CResult AddFilterItem(const Base::CFLArray< int32_t > &flaFilterItem, const Base::CFLArray< double > &flaValue, const Base::CFLArray< int32_t > &flaFilterCondition)
Base::CFLArray< int32_t > m_flaFilterItem
Definition PatternMatch.h:1737
Base::CFLArray< int32_t > m_flaSortItem
Definition PatternMatch.h:1764
static const CResult GetLearnedFileVersion(Base::CFLString< wchar_t > strPatternFile, int32_t &i32MajorVer, int32_t &i32MinorVer)
virtual int64_t GetMaxObject() const
virtual const CResult ReportToCSV(const CReportDescriptorForMatch &wrd) const
virtual const CResult SetSortClusterMode(CPatternMatch::ESortClusterModeMethod eMethod, double f64Coefficient)
Base::CFLArray< double > m_flaFilterValue
Definition PatternMatch.h:1746
virtual const CResult AddFilterItem(CPatternMatch::EFilterItem eFilterItem, double f64Value, const Base::ELogicalCondition eFilterCondition)
virtual const CResult GetResultAngle(int64_t i64Index, float &f32ResultAngle) const
ReportDescriptorForMatch class.
Definition ReportDescriptorForMatch.h:22
Template type array class.
Definition FLArray.h:71
FLIMaging's image class.
Definition FLImage.h:35
Template type string class.
Definition FLString.h:34
FLImaging module execution result object.
Definition ResultsDef.h:1704
A class representing a point.
Definition FLPoint.h:24
ReportDescriptor class.
Definition ReportDescriptor.h:22
Definition AlgorithmFeature_DI_BAT_CI.h:15
EMatchContrastOption
Definition DefinitionsAdvancedFunctions.h:29
@ EMatchContrastOption_Normal
Definition DefinitionsAdvancedFunctions.h:37
ELogicalCondition
Logical condition.
Definition DefinitionsBase.h:3147
EProcessingUnitFeatures
Processing Unit Features.
Definition AlgorithmBase.h:26
Definition PatternMatch.h:57
virtual const CResult Clear()
Foundation::CFLFigure * pFlfRegion
Definition PatternMatch.h:178
const SResult & operator=(const SResult &pmr)
float f32Angle
Definition PatternMatch.h:158
SResult(const SResult &pmr)
SResult(const SResult *pPmr)
virtual const CResult Assign(const SResult &pmr)
virtual const CResult Assign(const SResult *pPmr)
float f32Scale
Definition PatternMatch.h:167
Foundation::CFLPoint< double > flpPivot
Definition PatternMatch.h:189
float f32Score
Definition PatternMatch.h:149