MCPcopy Create free account
hub / github.com/creatale/node-dv / DisplayFeatureDebugInfo

Method DisplayFeatureDebugInfo

deps/tesseract/classify/intmatcher.cpp:1080–1122  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1078
1079
1080void IntegerMatcher::DisplayFeatureDebugInfo(
1081 INT_CLASS ClassTemplate,
1082 BIT_VECTOR ProtoMask,
1083 BIT_VECTOR ConfigMask,
1084 inT16 NumFeatures,
1085 const INT_FEATURE_STRUCT* Features,
1086 int AdaptFeatureThreshold,
1087 int Debug,
1088 bool SeparateDebugWindows) {
1089 ScratchEvidence *tables = new ScratchEvidence();
1090
1091 tables->Clear(ClassTemplate);
1092
1093 InitIntMatchWindowIfReqd();
1094 if (SeparateDebugWindows) {
1095 InitFeatureDisplayWindowIfReqd();
1096 InitProtoDisplayWindowIfReqd();
1097 }
1098
1099 for (int Feature = 0; Feature < NumFeatures; Feature++) {
1100 UpdateTablesForFeature(
1101 ClassTemplate, ProtoMask, ConfigMask, Feature, &Features[Feature],
1102 tables, 0);
1103
1104 /* Find Best Evidence for Current Feature */
1105 int best = 0;
1106 for (int i = 0; i < ClassTemplate->NumConfigs; i++)
1107 if (tables->feature_evidence_[i] > best)
1108 best = tables->feature_evidence_[i];
1109
1110 /* Update display for current feature */
1111 if (ClipMatchEvidenceOn(Debug)) {
1112 if (best < AdaptFeatureThreshold)
1113 DisplayIntFeature(&Features[Feature], 0.0);
1114 else
1115 DisplayIntFeature(&Features[Feature], 1.0);
1116 } else {
1117 DisplayIntFeature(&Features[Feature], best / 255.0);
1118 }
1119 }
1120
1121 delete tables;
1122}
1123#endif
1124
1125/**

Callers

nothing calls this directly

Calls 5

InitIntMatchWindowIfReqdFunction · 0.85
DisplayIntFeatureFunction · 0.85
ClearMethod · 0.45

Tested by

no test coverage detected