FLImaging 7.8.25.3
GeometricMatch.h
1#pragma once
2
22
23#include "DefinitionsAdvancedFunctions.h"
24#include "AlgorithmFeature_SR_LI_LR_LP.h"
25
27namespace FLImaging
28{
30 namespace AdvancedFunctions
31 {
32 class CInternalGeometricMatch;
34
54 class FL_EXPORT CGeometricMatch : public CAlgorithmFeature_SR_LI_LR_LP
55 {
56 public:
64 struct FL_EXPORT SResult
65 {
74
82 virtual ~SResult();
83
91 SResult(const SResult& pmr);
92
100 SResult(const SResult* pPmr);
101
109 const SResult& operator=(const SResult& pmr);
110
124 virtual const CResult Assign(const SResult& pmr);
125
139 virtual const CResult Assign(const SResult* pPmr);
140
148 virtual const CResult Clear();
149
157 float f32Score;
158
166 float f32Angle;
167
175 float f32Scale;
176
187
198
209 };
210
219 {
225
231
237
243
249
255
261
267 };
268
276 {
282
288 };
289
298 {
307
316
325
334
343
352
361
370
379
388
397
406
415
424
433
442 };
443
453 {
462
471
480 };
481
491 {
500
509
518 };
519
529 {
538
547 };
548
558 {
567
576 };
577
587 {
596
605
614 };
615
633 {
650
667
684
701
720 };
721
739 {
756
773
790
807
826 };
827
842 {
851
864 };
865
874
883
892
901
910
924 virtual const CResult Assign(const CGeometricMatch& aib);
925
939 virtual const CResult Assign(const CGeometricMatch* pAib);
940
952 virtual const CResult Clear();
953
965 virtual const CResult ClearLearnedData();
966
986 virtual const CResult GetLearnedImage(Base::CFLImage& fliImage, bool bIncludeFigure = false) const;
987
1007 virtual const CResult GetLearnedImage(Base::CFLImage* pFliImage, bool bIncludeFigure = false) const;
1008
1026 virtual const CResult GetLearnedImageRaw(Base::CFLImage& fliImage) const;
1027
1045 virtual const CResult GetLearnedImageRaw(Base::CFLImage* pFliImage) const;
1046
1066 virtual const CResult GetLearnedROI(Foundation::CFLFigureArray& flfaLearnedROI) const;
1067
1087 virtual const CResult GetLearnedROI(Foundation::CFLFigureArray* pFlfaLearnedROI) const;
1088
1104 virtual const CResult GetLearnedROI(Base::CFLString<wchar_t>& strLearnROI) const;
1105
1121 virtual const CResult GetLearnedROI(Base::CFLString<wchar_t>* pStrLearnROI) const;
1122
1139
1156
1170 virtual const CResult SetFeatureCount(int64_t i64FeatureCount = 2048);
1171
1181 virtual int64_t GetFeatureCount() const;
1182
1196 virtual const CResult SetFeatureFiltering(double f64FeatureFilter = 0.5);
1197
1207 virtual double GetFeatureFiltering() const;
1208
1222 virtual const CResult SetLearnThresholdCoefficient(double f64ThresCoeff = 1.0);
1223
1233 virtual double GetLearnThresholdCoefficient() const;
1234
1249
1262
1274 virtual const CResult SetLearnReductionLevel(int32_t i32Level = 0);
1275
1285 virtual int32_t GetLearnReductionLevel() const;
1286
1301
1314
1324 virtual const int64_t GetLearnWeightROICount() const;
1325
1343 virtual const CResult AddLearnWeightROI(Foundation::CFLFigure* pFlfWeightROI, double f64Weight = 1.);
1344
1362 virtual const CResult AddLearnWeightROI(Foundation::CFLFigure& flfWeightROI, double f64Weight = 1.);
1363
1383 virtual const CResult GetLearnWeightROI(Foundation::CFLFigureArray* pFlfaWeightROI, double& f64Weight, int64_t i64Index = 0) const;
1384
1404 virtual const CResult GetLearnWeightROI(Foundation::CFLFigureArray& flfaWeightROI, double& f64Weight, int64_t i64Index = 0) const;
1405
1419 virtual const CResult DeleteLearnWeightROI(int64_t i64Index = 0);
1420
1433
1443 virtual const int64_t GetLearnedWeightROICount() const;
1444
1464 virtual const CResult GetLearnedWeightROI(Foundation::CFLFigureArray* pFlfaWeightROI, double& f64Weight, int64_t i64Index = 0) const;
1465
1485 virtual const CResult GetLearnedWeightROI(Foundation::CFLFigureArray& flfaWeightROI, double& f64Weight, int64_t i64Index = 0) const;
1486
1501
1514
1527
1537 virtual const int64_t GetLearnGuideShapeCount() const;
1538
1560 virtual const CResult AddLearnGuideShape(Foundation::CFLFigure* pFlfCustomRegion, double f64Weight = 1, double f64Tolerance = 5);
1561
1583 virtual const CResult AddLearnGuideShape(Foundation::CFLFigure& flfCustomRegion, double f64Weight = 1, double f64Tolerance = 5);
1584
1598 virtual const CResult DeleteLearnGuideShape(int64_t i64Index = 0);
1599
1621 virtual const CResult GetLearnGuideShape(Foundation::CFLFigureArray* pFlfaGuideShape, double& f64Weight, double& f64Tolerance, int64_t i64Index = 0) const;
1622
1644 virtual const CResult GetLearnGuideShape(Foundation::CFLFigureArray& flfaGuideShape, double& f64Weight, double& f64Tolerance, int64_t i64Index = 0) const;
1645
1658
1668 virtual const int64_t GetLearnedGuideShapeCount() const;
1669
1691 virtual const CResult GetLearnedGuideShape(Foundation::CFLFigureArray* pFlfaGuideShape, double& f64Weight, double& f64Tolerance, int64_t i64Index = 0) const;
1692
1714 virtual const CResult GetLearnedGuideShape(Foundation::CFLFigureArray& flfaGuideShape, double& f64Weight, double& f64Tolerance, int64_t i64Index = 0) const;
1715
1728
1742 virtual const CResult SetMaxObject(int64_t i64MaxObject = 1);
1743
1753 virtual int64_t GetMaxObject() const;
1754
1768 virtual const CResult SetMinimumDetectionScore(double f64Score = .5);
1769
1779 virtual double GetMinimumDetectionScore() const;
1780
1796 virtual const CResult SetScaleRange(double f64ScaleMin = 1., double f64ScaleMax = 1.);
1797
1813 virtual const CResult GetScaleRange(double& f64ScaleMin, double& f64ScaleMax) const;
1814
1828 virtual const CResult SetAngleBias(double f64AngleBias = .0);
1829
1839 virtual double GetAngleBias() const;
1840
1854 virtual const CResult SetAngleTolerance(double f64AngleTolerance = .0);
1855
1865 virtual double GetAngleTolerance() const;
1866
1880 virtual const CResult EnableInterpolation(bool bEnable = true);
1881
1891 virtual bool IsInterpolationEnabled() const;
1892
1909
1922
1939
1952
1969
1982
1999
2011 virtual const EScoreMode GetScoreMode() const;
2012
2027
2040
2054 virtual const CResult SetInvisibleRegionEstimation(double f64InvisibleRatio = 1.25);
2055
2065 virtual double GetInvisibleRegionEstimation() const;
2066
2080 virtual const CResult SetFindThresholdCoefficient(double f64ThresCoeff = 1.0);
2081
2091 virtual double GetFindThresholdCoefficient() const;
2092
2106 virtual const CResult SetObjectOverlap(double f64Overlap = 0.5);
2107
2117 virtual double GetObjectOverlap() const;
2118
2142 virtual const CResult SetFilterItem(CGeometricMatch::EFilterItem eFilterItem, double f64Value, const Base::ELogicalCondition eFilterCondition);
2166 virtual const CResult AddFilterItem(CGeometricMatch::EFilterItem eFilterItem, double f64Value, const Base::ELogicalCondition eFilterCondition);
2190 virtual const CResult SetFilterItem(const Base::CFLArray<int32_t>& flaFilterItem, const Base::CFLArray<double>& flaValue, const Base::CFLArray<int32_t>& flaFilterCondition);
2214 virtual const CResult AddFilterItem(const Base::CFLArray<int32_t>& flaFilterItem, const Base::CFLArray<double>& flaValue, const Base::CFLArray<int32_t>& flaFilterCondition);
2215
2239 virtual const CResult GetFilterItem(CGeometricMatch::EFilterItem& eFilterItem, double& f64Value, Base::ELogicalCondition& eFilterCondition) const;
2263 virtual const CResult GetFilterItem(Base::CFLArray<int32_t>& flaFilterItem, Base::CFLArray<double>& flaValue, Base::CFLArray<int32_t>& flaFilterCondition) const;
2264
2278 virtual const CResult ClearFilterItem();
2279
2345 virtual const CResult SetSortItem(const Base::CFLArray<int32_t>& flaItem, const Base::CFLArray<int32_t>& flaOrder);
2367 virtual const CResult AddSortItem(const Base::CFLArray<int32_t>& flaItem, const Base::CFLArray<int32_t>& flaOrder);
2411 virtual const CResult GetSortItem(Base::CFLArray<int32_t>& flaItem, Base::CFLArray<int32_t>& flaOrder) const;
2412
2432 virtual const CResult SetSortClusterMode(CGeometricMatch::ESortClusterModeMethod eMethod, double f64Coefficient);
2452 virtual bool GetSortClusterMode(CGeometricMatch::ESortClusterModeMethod& eMethod, double& f64Coefficient) const;
2453
2467 virtual const CResult ClearSortItem();
2468
2478 virtual bool IsLearned() const;
2479
2491 virtual const CResult Learn();
2492
2504 virtual const CResult Execute();
2505
2527 virtual const CResult Filter(EFilterItem eItem, double f64Value, Base::ELogicalCondition eCondition);
2528
2549
2575 virtual const CResult Sort(const Base::CFLArray<int32_t>& flaItem, const Base::CFLArray<int32_t>& flaOrder);
2576
2595 virtual const CResult SortClusterMode(ESortClusterModeMethod eMethod, double f64Coefficient = .5);
2596
2612 virtual const CResult Load(const Base::CFLString<wchar_t>& strPatternFile);
2613
2629 virtual const CResult Save(const Base::CFLString<wchar_t>& strPatternFile);
2630
2644 virtual const CResult ClearResultData();
2645
2657 virtual int64_t GetResultCount() const;
2658
2676 virtual const CResult GetResult(int64_t i64Index, CGeometricMatch::SResult& sResult) const;
2677
2695 virtual const CResult GetResultScore(int64_t i64Index, float& f32ResultScore) const;
2696
2714 virtual const CResult GetResultAngle(int64_t i64Index, float& f32ResultAngle) const;
2715
2733 virtual const CResult GetResultScale(int64_t i64Index, float& f32ResultScale) const;
2734
2754 virtual const CResult GetResultRegion(int64_t i64Index, Foundation::CFLFigureArray* pFlfaResultRegion) const;
2755
2775 virtual const CResult GetResultRegion(int64_t i64Index, Foundation::CFLFigureArray& flfaResultRegion) const;
2776
2796 virtual const CResult GetResultRegionLocation(int64_t i64Index, Foundation::CFLPoint<double>& flpResultLocation) const;
2797
2817 virtual const CResult GetResultPivot(int64_t i64Index, Foundation::CFLPoint<double>& flpResultPivot) const;
2818
2847 virtual const CResult GetLearnedFeature(Foundation::CFLFigureArray& flfaFeaturePoints, ECoordinateOrigin eCoordinateOrigin = ECoordinateOrigin_Image) const;
2848
2877 virtual const CResult GetLearnedFeature(Foundation::CFLFigureArray* pFlfaFeaturePoints, ECoordinateOrigin eCoordinateOrigin = ECoordinateOrigin_Image) const;
2878
2896 virtual const CResult GetResultDetectedFeature(int64_t i64Index, Foundation::CFLFigureArray& flfaResultFeaturePoints) const;
2897
2915 virtual const CResult GetResultDetectedFeature(int64_t i64Index, Foundation::CFLFigureArray* pFlfaResultFeaturePoints) const;
2916
2934 virtual const CResult GetResultDetectedValidFeature(int64_t i64Index, Foundation::CFLFigureArray& flfaResultFeaturePoints) const;
2935
2953 virtual const CResult GetResultDetectedValidFeature(int64_t i64Index, Foundation::CFLFigureArray* pFlfaResultFeaturePoints) const;
2954
2972 virtual const CResult GetResultDetectedInvalidFeature(int64_t i64Index, Foundation::CFLFigureArray& flfaResultFeaturePoints) const;
2973
2991 virtual const CResult GetResultDetectedInvalidFeature(int64_t i64Index, Foundation::CFLFigureArray* pFlfaResultFeaturePoints) const;
2992
2993 virtual const CResult ReportToCSV(const Foundation::CReportDescriptor* pWrd) const override;
2994
3016
3038
3059 static const CResult GetLearnedFileVersion(Base::CFLString<wchar_t> strPatternFile, int32_t& i32MajorVer, int32_t& i32MinorVer);
3060
3061 virtual bool IsLicenseAvailable() const override;
3062
3063
3064 DeclareGetClassType();
3065 SupportToDuplicateObject(CGeometricMatch, *this);
3066
3067 protected:
3076
3085
3094
3103
3112
3121
3130
3139
3148
3157
3166
3175
3184
3195
3206
3217
3228
3239
3250
3261
3272
3283
3294
3303
3314
3325
3336
3347
3358
3369
3378
3389
3398
3399
3400 protected:
3401 friend class CInternalGeometricMatch;
3402
3403 CInternalGeometricMatch* m_pInternal;
3404 };
3405 }
3406}
3407
virtual const CResult Save(const Base::CFLString< wchar_t > &strPatternFile)
int64_t m_i64MaxObject
Definition GeometricMatch.h:3102
virtual EGuideShapeProcessingMethod GetGuideShapeProcessingMethod() const
virtual const CResult SortClusterMode(ESortClusterModeMethod eMethod, double f64Coefficient=.5)
virtual const CResult GetLearnedGuideShape(Foundation::CFLFigureArray *pFlfaGuideShape, double &f64Weight, double &f64Tolerance, int64_t i64Index=0) const
virtual const CResult SetScaleRange(double f64ScaleMin=1., double f64ScaleMax=1.)
double m_f64Overlap
Definition GeometricMatch.h:3174
EGuideShapeProcessingMethod m_eGuideShapeProcessingMethod
Definition GeometricMatch.h:3282
EOrder
Definition GeometricMatch.h:276
@ EOrder_Ascending
Definition GeometricMatch.h:281
@ EOrder_Descending
Definition GeometricMatch.h:287
virtual const CResult GetLearnedPivot(Foundation::CFLPoint< double > *pFlpPivot) const
virtual const CResult ReportToCSV(const CReportDescriptorForGeometricMatch *pWrd) const
const CGeometricMatch & operator=(const CGeometricMatch &pm)
virtual const CResult SetAngleBias(double f64AngleBias=.0)
EWeightROIProcessingMethod
Definition GeometricMatch.h:633
@ EWeightROIProcessingMethod_LowestValue
Definition GeometricMatch.h:683
@ EWeightROIProcessingMethod_SumValue
Definition GeometricMatch.h:719
@ EWeightROIProcessingMethod_DescendingOrder
Definition GeometricMatch.h:666
@ EWeightROIProcessingMethod_HighestValue
Definition GeometricMatch.h:700
@ EWeightROIProcessingMethod_AscendingOrder
Definition GeometricMatch.h:649
virtual const CResult Load(const Base::CFLString< wchar_t > &strPatternFile)
EJudgementLevel
Definition GeometricMatch.h:587
@ EJudgementLevel_Rough
Definition GeometricMatch.h:613
@ EJudgementLevel_Normal
Definition GeometricMatch.h:604
@ EJudgementLevel_Tight
Definition GeometricMatch.h:595
virtual const int64_t GetLearnWeightROICount() const
double m_f64InvisibleRatio
Definition GeometricMatch.h:3156
virtual const CResult SetAngleTolerance(double f64AngleTolerance=.0)
virtual double GetLearnThresholdCoefficient() const
virtual const CResult SetSortItem(CGeometricMatch::EFilterItem eSortItem, CGeometricMatch::EOrder eOrder)
virtual const CResult Filter(EFilterItem eItem, double f64Value, Base::ELogicalCondition eCondition)
double m_f64MinimumDetectionScore
Definition GeometricMatch.h:3111
virtual const CResult GetResultRegion(int64_t i64Index, Foundation::CFLFigureArray *pFlfaResultRegion) const
virtual const CResult GetResultDetectedFeature(int64_t i64Index, Foundation::CFLFigureArray &flfaResultFeaturePoints) const
virtual EWeightROIProcessingMethod GetWeightROIProcessingMethod() const
virtual const Foundation::CFLFigureArray GetLearnedGuideShape() const
Base::CFLArray< double > m_flaFilterValue
Definition GeometricMatch.h:3335
virtual const CResult GetLearnedROI(Foundation::CFLFigureArray *pFlfaLearnedROI) const
virtual EOptimizationOption GetOptimizationOption() const
virtual const CResult GetFilterItem(Base::CFLArray< int32_t > &flaFilterItem, Base::CFLArray< double > &flaValue, Base::CFLArray< int32_t > &flaFilterCondition) const
double m_f64LearnThreshold
Definition GeometricMatch.h:3093
virtual const CResult SetFeatureCount(int64_t i64FeatureCount=2048)
virtual const CResult GetResultScore(int64_t i64Index, float &f32ResultScore) const
EFilterItem
Definition GeometricMatch.h:219
@ EFilterItem_Scale
Definition GeometricMatch.h:236
@ EFilterItem_RegionCenterX
Definition GeometricMatch.h:248
@ EFilterItem_RegionCenterY
Definition GeometricMatch.h:254
@ EFilterItem_PivotX
Definition GeometricMatch.h:260
@ EFilterItem_PivotY
Definition GeometricMatch.h:266
@ EFilterItem_Angle
Definition GeometricMatch.h:242
@ EFilterItem_Unselected
Definition GeometricMatch.h:224
@ EFilterItem_Score
Definition GeometricMatch.h:230
static const CResult GetLearnedFileVersion(Base::CFLString< wchar_t > strPatternFile, int32_t &i32MajorVer, int32_t &i32MinorVer)
virtual const CResult GetLearnedPivot(Foundation::CFLPoint< double > &flpPivot) const
double m_f64FindThreshold
Definition GeometricMatch.h:3165
virtual const CResult AddSortItem(const Base::CFLArray< int32_t > &flaItem, const Base::CFLArray< int32_t > &flaOrder)
ECoordinateOrigin
Definition GeometricMatch.h:842
@ ECoordinateOrigin_Image
Definition GeometricMatch.h:850
@ ECoordinateOrigin_ROI
Definition GeometricMatch.h:863
Base::CFLArray< double > m_arrGuideWeight
Definition GeometricMatch.h:3249
virtual const CResult GetLearnedGuideShape(Foundation::CFLFigureArray &flfaGuideShape, double &f64Weight, double &f64Tolerance, int64_t i64Index=0) const
virtual const CResult GetLearnWeightROI(Foundation::CFLFigureArray *pFlfaWeightROI, double &f64Weight, int64_t i64Index=0) const
virtual const EScoreMode GetScoreMode() const
virtual double GetInvisibleRegionEstimation() const
int64_t m_i64FeatureCount
Definition GeometricMatch.h:3075
virtual const int64_t GetLearnedWeightROICount() const
virtual const CResult Assign(const CGeometricMatch *pAib)
EOptimizationOption
Definition GeometricMatch.h:453
@ EOptimizationOption_Normal
Definition GeometricMatch.h:470
@ EOptimizationOption_Fast
Definition GeometricMatch.h:461
@ EOptimizationOption_Accurate
Definition GeometricMatch.h:479
EScoreMode
Definition GeometricMatch.h:529
@ EScoreMode_Model
Definition GeometricMatch.h:537
@ EScoreMode_Target
Definition GeometricMatch.h:546
virtual const CResult SetGuideShapeProcessingMethod(EGuideShapeProcessingMethod eMethod=EGuideShapeProcessingMethod_AscendingOrder)
virtual const CResult AddLearnWeightROI(Foundation::CFLFigure *pFlfWeightROI, double f64Weight=1.)
virtual const CResult SetFindThresholdCoefficient(double f64ThresCoeff=1.0)
CGeometricMatch(const CGeometricMatch &pg)
virtual const CResult GetSortItem(CGeometricMatch::EFilterItem &eSortItem, CGeometricMatch::EOrder &eOrder) const
virtual const CResult GetScaleRange(double &f64ScaleMin, double &f64ScaleMax) const
virtual bool IsLicenseAvailable() const override
Returns whether the algorithm can be used with the current license.
EScoreMode m_eScoreMode
Definition GeometricMatch.h:3227
double m_f64SortClusterCoefficient
Definition GeometricMatch.h:3397
double m_f64ScaleMin
Definition GeometricMatch.h:3120
double m_f64FeatureFilter
Definition GeometricMatch.h:3084
virtual double GetFindThresholdCoefficient() const
virtual const CResult SetMinimumDetectionScore(double f64Score=.5)
virtual const CResult GetLearnWeightROI(Foundation::CFLFigureArray &flfaWeightROI, double &f64Weight, int64_t i64Index=0) const
virtual const CResult SetLearnReductionLevel(int32_t i32Level=0)
virtual const CResult GetLearnedROI(Base::CFLString< wchar_t > *pStrLearnROI) const
EGuideShapeProcessingMethod
Definition GeometricMatch.h:739
@ EGuideShapeProcessingMethod_HighestValue
Definition GeometricMatch.h:806
@ EGuideShapeProcessingMethod_SumValue
Definition GeometricMatch.h:825
@ EGuideShapeProcessingMethod_AscendingOrder
Definition GeometricMatch.h:755
@ EGuideShapeProcessingMethod_DescendingOrder
Definition GeometricMatch.h:772
@ EGuideShapeProcessingMethod_LowestValue
Definition GeometricMatch.h:789
bool m_bInterpolation
Definition GeometricMatch.h:3183
EOptimizationOption m_eOptimizationOption
Definition GeometricMatch.h:3194
virtual const CResult GetLearnedFeature(Foundation::CFLFigureArray *pFlfaFeaturePoints, ECoordinateOrigin eCoordinateOrigin=ECoordinateOrigin_Image) const
virtual const CResult GetResultPivot(int64_t i64Index, Foundation::CFLPoint< double > &flpResultPivot) const
virtual const CResult GetResultDetectedFeature(int64_t i64Index, Foundation::CFLFigureArray *pFlfaResultFeaturePoints) const
bool m_bSortClusterMode
Definition GeometricMatch.h:3377
virtual bool GetSortClusterMode(CGeometricMatch::ESortClusterModeMethod &eMethod, double &f64Coefficient) const
virtual const CResult AddFilterItem(CGeometricMatch::EFilterItem eFilterItem, double f64Value, const Base::ELogicalCondition eFilterCondition)
virtual const Foundation::CFLFigureArray GetLearnGuideShape() const
double m_f64AngleBias
Definition GeometricMatch.h:3138
virtual const CResult GetLearnGuideShape(Foundation::CFLFigureArray *pFlfaGuideShape, double &f64Weight, double &f64Tolerance, int64_t i64Index=0) const
virtual const CResult Assign(const CGeometricMatch &aib)
virtual const CResult GetLearnedImageRaw(Base::CFLImage *pFliImage) const
virtual const CResult Sort(EFilterItem eItem=EFilterItem_Unselected, EOrder eOrder=EOrder_Descending)
virtual const CResult AddLearnWeightROI(Foundation::CFLFigure &flfWeightROI, double f64Weight=1.)
virtual const CResult GetLearnedWeightROI(Foundation::CFLFigureArray &flfaWeightROI, double &f64Weight, int64_t i64Index=0) const
virtual const CResult GetResultRegion(int64_t i64Index, Foundation::CFLFigureArray &flfaResultRegion) const
virtual const CResult DeleteLearnWeightROI(int64_t i64Index=0)
virtual const CResult GetLearnGuideShape(Foundation::CFLFigureArray &flfaGuideShape, double &f64Weight, double &f64Tolerance, int64_t i64Index=0) const
virtual const CResult SetOptimizationOption(EOptimizationOption eOption=CGeometricMatch::EOptimizationOption_Fast)
Foundation::CFLFigureArray m_flfaGuideShapes
Definition GeometricMatch.h:3238
virtual const CResult GetResultDetectedValidFeature(int64_t i64Index, Foundation::CFLFigureArray &flfaResultFeaturePoints) const
virtual const CResult GetResultRegionLocation(int64_t i64Index, Foundation::CFLPoint< double > &flpResultLocation) const
virtual const CResult GetResultDetectedInvalidFeature(int64_t i64Index, Foundation::CFLFigureArray &flfaResultFeaturePoints) const
virtual const CResult SetMaxObject(int64_t i64MaxObject=1)
Base::CFLArray< double > m_arrGuideTolerance
Definition GeometricMatch.h:3260
EReductionMode m_eReductionMode
Definition GeometricMatch.h:3293
virtual const CResult SetScoreMode(EScoreMode eMode=EScoreMode_Model)
virtual const CResult EnableInterpolation(bool bEnable=true)
virtual const CResult GetLearnedROI(Foundation::CFLFigureArray &flfaLearnedROI) const
virtual CGeometricMatch::ECandidateExtraction GetCandidateExtraction() const
virtual const CResult SetWeightROIProcessingMethod(EWeightROIProcessingMethod eMethod=EWeightROIProcessingMethod_AscendingOrder)
double m_f64AngleTolerance
Definition GeometricMatch.h:3147
virtual const CResult GetLearnedImage(Base::CFLImage *pFliImage, bool bIncludeFigure=false) const
virtual const CResult Sort(const Base::CFLArray< int32_t > &flaItem, const Base::CFLArray< int32_t > &flaOrder)
virtual const CResult GetLearnedROI(Base::CFLString< wchar_t > &strLearnROI) const
virtual const CResult GetLearnedWeightROI(Foundation::CFLFigureArray *pFlfaWeightROI, double &f64Weight, int64_t i64Index=0) const
virtual const CResult GetSortItem(Base::CFLArray< int32_t > &flaItem, Base::CFLArray< int32_t > &flaOrder) const
virtual const int64_t GetLearnGuideShapeCount() const
virtual const CResult SetCandidateExtraction(ECandidateExtraction eOption=CGeometricMatch::ECandidateExtraction_Normal)
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 GeometricMatch.h:3324
virtual const CResult GetLearnedFeature(Foundation::CFLFigureArray &flfaFeaturePoints, ECoordinateOrigin eCoordinateOrigin=ECoordinateOrigin_Image) const
EJudgementLevel m_eJudgementLevel
Definition GeometricMatch.h:3313
ESortClusterModeMethod
Definition GeometricMatch.h:298
@ ESortClusterModeMethod_RegionCenter_X_Desc_Y_Desc
Definition GeometricMatch.h:369
@ ESortClusterModeMethod_Pivot_Y_Asc_X_Desc
Definition GeometricMatch.h:387
@ ESortClusterModeMethod_Pivot_X_Asc_Y_Asc
Definition GeometricMatch.h:414
@ ESortClusterModeMethod_RegionCenter_X_Desc_Y_Asc
Definition GeometricMatch.h:360
@ ESortClusterModeMethod_RegionCenter_Y_Asc_X_Asc
Definition GeometricMatch.h:306
@ ESortClusterModeMethod_Pivot_X_Asc_Y_Desc
Definition GeometricMatch.h:423
@ ESortClusterModeMethod_Pivot_X_Desc_Y_Asc
Definition GeometricMatch.h:432
@ ESortClusterModeMethod_RegionCenter_Y_Asc_X_Desc
Definition GeometricMatch.h:315
@ ESortClusterModeMethod_Pivot_X_Desc_Y_Desc
Definition GeometricMatch.h:441
@ ESortClusterModeMethod_RegionCenter_X_Asc_Y_Asc
Definition GeometricMatch.h:342
@ ESortClusterModeMethod_RegionCenter_X_Asc_Y_Desc
Definition GeometricMatch.h:351
@ ESortClusterModeMethod_Pivot_Y_Asc_X_Asc
Definition GeometricMatch.h:378
@ ESortClusterModeMethod_Pivot_Y_Desc_X_Desc
Definition GeometricMatch.h:405
@ ESortClusterModeMethod_RegionCenter_Y_Desc_X_Desc
Definition GeometricMatch.h:333
@ ESortClusterModeMethod_Pivot_Y_Desc_X_Asc
Definition GeometricMatch.h:396
@ ESortClusterModeMethod_RegionCenter_Y_Desc_X_Asc
Definition GeometricMatch.h:324
virtual const CResult GetLearnedImage(Base::CFLImage &fliImage, bool bIncludeFigure=false) const
EReductionMode
Definition GeometricMatch.h:558
@ EReductionMode_NearestNeighbor
Definition GeometricMatch.h:566
@ EReductionMode_Area
Definition GeometricMatch.h:575
virtual const CResult SetInvisibleRegionEstimation(double f64InvisibleRatio=1.25)
virtual const CResult GetResult(int64_t i64Index, CGeometricMatch::SResult &sResult) const
virtual const CResult SetSortItem(const Base::CFLArray< int32_t > &flaItem, const Base::CFLArray< int32_t > &flaOrder)
virtual const CResult SetFilterItem(const Base::CFLArray< int32_t > &flaFilterItem, const Base::CFLArray< double > &flaValue, const Base::CFLArray< int32_t > &flaFilterCondition)
virtual const CResult GetFilterItem(CGeometricMatch::EFilterItem &eFilterItem, double &f64Value, Base::ELogicalCondition &eFilterCondition) 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 const CResult SetSortClusterMode(CGeometricMatch::ESortClusterModeMethod eMethod, double f64Coefficient)
virtual const EMatchContrastOption GetContrastOption() const
virtual const CResult SetContrastOption(EMatchContrastOption eOption=EMatchContrastOption_Normal)
virtual const CResult AddSortItem(CGeometricMatch::EFilterItem eSortItem, CGeometricMatch::EOrder eOrder)
virtual const CResult SetObjectOverlap(double f64Overlap=0.5)
virtual const CResult SetLearnReductionMode(EReductionMode eReductionMode=EReductionMode_NearestNeighbor)
Base::CFLArray< int32_t > m_flaFilterCondition
Definition GeometricMatch.h:3346
CGeometricMatch::ESortClusterModeMethod m_eSortClusterMethod
Definition GeometricMatch.h:3388
virtual const CResult AddLearnGuideShape(Foundation::CFLFigure *pFlfCustomRegion, double f64Weight=1, double f64Tolerance=5)
virtual const CResult SetFeatureFiltering(double f64FeatureFilter=0.5)
Base::CFLArray< int32_t > m_flaSortOrder
Definition GeometricMatch.h:3368
virtual const CResult ReportToCSV(const CReportDescriptorForGeometricMatch &wrd) const
virtual EReductionMode GetLearnReductionMode() const
virtual const CResult GetLearnedImageRaw(Base::CFLImage &fliImage) const
virtual const CResult SetJudgementLevel(EJudgementLevel eJudgementLevel=EJudgementLevel_Normal)
virtual EJudgementLevel GetJudgementLevel() const
int32_t m_i32ReduceLevel
Definition GeometricMatch.h:3302
EWeightROIProcessingMethod m_eWeightROIProcessingMethod
Definition GeometricMatch.h:3271
Base::CFLArray< int32_t > m_flaSortItem
Definition GeometricMatch.h:3357
virtual const CResult GetResultAngle(int64_t i64Index, float &f32ResultAngle) const
double m_f64ScaleMax
Definition GeometricMatch.h:3129
CGeometricMatch(const CGeometricMatch *pPg)
virtual const CResult GetResultDetectedInvalidFeature(int64_t i64Index, Foundation::CFLFigureArray *pFlfaResultFeaturePoints) const
virtual const CResult AddLearnGuideShape(Foundation::CFLFigure &flfCustomRegion, double f64Weight=1, double f64Tolerance=5)
virtual const CResult SetFilterItem(CGeometricMatch::EFilterItem eFilterItem, double f64Value, const Base::ELogicalCondition eFilterCondition)
EMatchContrastOption m_eContrastOption
Definition GeometricMatch.h:3216
virtual int32_t GetLearnReductionLevel() const
virtual const CResult SetLearnThresholdCoefficient(double f64ThresCoeff=1.0)
virtual const int64_t GetLearnedGuideShapeCount() const
ECandidateExtraction m_eCandidateExtraction
Definition GeometricMatch.h:3205
ECandidateExtraction
Definition GeometricMatch.h:491
@ ECandidateExtraction_Fast
Definition GeometricMatch.h:499
@ ECandidateExtraction_Normal
Definition GeometricMatch.h:508
@ ECandidateExtraction_Accurate
Definition GeometricMatch.h:517
virtual const CResult GetResultDetectedValidFeature(int64_t i64Index, Foundation::CFLFigureArray *pFlfaResultFeaturePoints) const
virtual const CResult DeleteLearnGuideShape(int64_t i64Index=0)
virtual const CResult GetResultScale(int64_t i64Index, float &f32ResultScale) const
ReportDescriptorForGeometricMatch class.
Definition ReportDescriptorForGeometricMatch.h:23
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 base class representing array of figure.
Definition FLFigureArray.h:27
A base class of classes representing figures.
Definition FLFigure.h:27
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
virtual const CResult Assign(const SResult *pPmr)
float f32Angle
Definition GeometricMatch.h:166
float f32Score
Definition GeometricMatch.h:157
Foundation::CFLPoint< double > flpLocation
Definition GeometricMatch.h:197
const SResult & operator=(const SResult &pmr)
Foundation::CFLPoint< double > flpPivot
Definition GeometricMatch.h:208
Foundation::CFLFigure * pFlfRegion
Definition GeometricMatch.h:186
virtual const CResult Assign(const SResult &pmr)
float f32Scale
Definition GeometricMatch.h:175