4 COMBICRIT_MORE_REL_RES,
5 COMBICRIT_SMOOTHING_DEFECT
14 FlagVector combination;
18 ContourDataSPtr closedContourData;
22 double arcLength, residual, maxDist;
29 Combination (
const FlagVector& combination,
double arcLength);
32 void setValid () { bValid =
true; }
33 void setInvalid () { bValid =
false; }
34 bool isValid ()
const {
return bValid; }
35 bool isCombined (
size_t idx)
const {
return idx < nSize && combination [idx]; }
36 void setCombined (
size_t idx) { combination [idx] =
true; }
37 void clearCombined (
size_t idx) { combination [idx] =
false; }
38 int getCombinedCounter ()
const {
return nCombined; }
39 void setArcLength (
double val) { arcLength = val; }
40 void setResidual (
double val) { residual = val; }
41 void setSysSize (
size_t val) { sysSize = val; }
42 void setMaxDistance (
double val) { maxDist = val; }
43 void setCriteria (
double val,
int idx) { criteria[idx] = val; }
44 double getArcLength ()
const {
return arcLength; }
45 double getResidual ()
const {
return residual; }
46 size_t getSysSize ()
const {
return sysSize; }
47 double getResidualPerArc ()
const {
return arcLength > 0 ? residual / arcLength : 1; }
48 double getRelResidual ()
const {
return sysSize > 0 ? residual / sysSize: 1;}
49 double getMaxDistance ()
const {
return maxDist; }
50 double getCriteria (
int idx)
const {
return criteria[idx]; }
51 void getApproxCoords (cv::Mat &mat)
const { mat = approxCoords; }
52 void setApproxCoords (cv::Mat &mat) { approxCoords = mat; }
53 FlagVector& getCombinationVector() {
return combination; }
55 ContourDataSPtr getClosedContour () {
return closedContourData; };
56 int setClosedContour (
const DoubleContourSPtr cont_,
const cv::Mat &cart_c_);
60 typedef std::shared_ptr<Combination> CombinationSPtr;
67 void combination2ClosedContour (DoubleContour& closedContour,
Combination& combi,
const ContourDataVector contDatas);
70 bool compareMinRelResidual (CombinationSPtr combiSysA, CombinationSPtr combiSysB) ;
71 bool compareMinMaxDistance (CombinationSPtr combiSysA, CombinationSPtr combiSysB) ;
72 bool compareCriteria1 (CombinationSPtr combiSysA, CombinationSPtr combiSysB) ;
73 bool compareCriteria2 (CombinationSPtr combiSysA, CombinationSPtr combiSysB) ;
74 bool compareApproxCoordsNorm (CombinationSPtr combiSysA, CombinationSPtr combiSysB) ;
Definition: Combination.h:8