do_ocv_simpleT_do_ocv_simpleDoOcvSimpleDoOcvSimple (Operator)
Name
do_ocv_simpleT_do_ocv_simpleDoOcvSimpleDoOcvSimple
— Bewerten eines Zeichens mit einem OCV-Tool.
Signatur
void DoOcvSimple(const HObject& Pattern, const HTuple& OCVHandle, const HTuple& PatternName, const HTuple& AdaptPos, const HTuple& AdaptSize, const HTuple& AdaptAngle, const HTuple& AdaptGray, const HTuple& Threshold, HTuple* Quality)
HTuple HImage::DoOcvSimple(const HOCV& OCVHandle, const HTuple& PatternName, const HString& AdaptPos, const HString& AdaptSize, const HString& AdaptAngle, const HString& AdaptGray, double Threshold) const
double HImage::DoOcvSimple(const HOCV& OCVHandle, const HString& PatternName, const HString& AdaptPos, const HString& AdaptSize, const HString& AdaptAngle, const HString& AdaptGray, double Threshold) const
double HImage::DoOcvSimple(const HOCV& OCVHandle, const char* PatternName, const char* AdaptPos, const char* AdaptSize, const char* AdaptAngle, const char* AdaptGray, double Threshold) const
double HImage::DoOcvSimple(const HOCV& OCVHandle, const wchar_t* PatternName, const wchar_t* AdaptPos, const wchar_t* AdaptSize, const wchar_t* AdaptAngle, const wchar_t* AdaptGray, double Threshold) const
(Nur Windows)
HTuple HOCV::DoOcvSimple(const HImage& Pattern, const HTuple& PatternName, const HString& AdaptPos, const HString& AdaptSize, const HString& AdaptAngle, const HString& AdaptGray, double Threshold) const
double HOCV::DoOcvSimple(const HImage& Pattern, const HString& PatternName, const HString& AdaptPos, const HString& AdaptSize, const HString& AdaptAngle, const HString& AdaptGray, double Threshold) const
double HOCV::DoOcvSimple(const HImage& Pattern, const char* PatternName, const char* AdaptPos, const char* AdaptSize, const char* AdaptAngle, const char* AdaptGray, double Threshold) const
double HOCV::DoOcvSimple(const HImage& Pattern, const wchar_t* PatternName, const wchar_t* AdaptPos, const wchar_t* AdaptSize, const wchar_t* AdaptAngle, const wchar_t* AdaptGray, double Threshold) const
(Nur Windows)
static void HOperatorSet.DoOcvSimple(HObject pattern, HTuple OCVHandle, HTuple patternName, HTuple adaptPos, HTuple adaptSize, HTuple adaptAngle, HTuple adaptGray, HTuple threshold, out HTuple quality)
HTuple HImage.DoOcvSimple(HOCV OCVHandle, HTuple patternName, string adaptPos, string adaptSize, string adaptAngle, string adaptGray, double threshold)
double HImage.DoOcvSimple(HOCV OCVHandle, string patternName, string adaptPos, string adaptSize, string adaptAngle, string adaptGray, double threshold)
HTuple HOCV.DoOcvSimple(HImage pattern, HTuple patternName, string adaptPos, string adaptSize, string adaptAngle, string adaptGray, double threshold)
double HOCV.DoOcvSimple(HImage pattern, string patternName, string adaptPos, string adaptSize, string adaptAngle, string adaptGray, double threshold)
Beschreibung
do_ocv_simpledo_ocv_simpleDoOcvSimpleDoOcvSimpleDoOcvSimple
bewertet das übergebene Zeichen (PatternPatternPatternPatternpattern
).
Das Zeichen muss vorher mit dem OCV-Tool
trainiert worden sein. Die Region sollte dabei in etwa
die gleiche (relative) Ausdehnung und Form haben wie beim Training.
Zur Kennzeichnung des Zeichens wird der gleiche Name wie beim Training
in PatternNamePatternNamePatternNamePatternNamepatternName
übergeben. Über die nächsten vier Parameter
kann dann Einfluss auf die automatische Anpassung genommen werden:
AdaptPosAdaptPosAdaptPosAdaptPosadaptPos
und AdaptSizeAdaptSizeAdaptSizeAdaptSizeadaptSize
beziehen sich auf die Geometrie
des Zeichens. Mit AdaptPosAdaptPosAdaptPosAdaptPosadaptPos
wird festgelegt, ob eine Verschiebung
des Zeichens kompensiert werden soll. AdaptSizeAdaptSizeAdaptSizeAdaptSizeadaptSize
legt fest,
ob eine Größenveränderung angepasst werden soll.
AdaptAngleAdaptAngleAdaptAngleAdaptAngleadaptAngle
ist nicht implementiert.
Der Parameter AdaptGrayAdaptGrayAdaptGrayAdaptGrayadaptGray
bezieht
sich auf die Grauwertanpassung. Zum einen wird eine
additive Grauwertänderung kompensiert, gleichzeitig
wird eine multiplikative Grauwertänderung angepasst.
Der Parameter ThresholdThresholdThresholdThresholdthreshold
gibt den Mindestunterschied
der Grauwerte an, der als Fehler interpretiert wird. Als Resultat
ergibt sich dann der Prozentsatz der fehlerhaften Pixel.
Wird mit dem Parameter ThresholdThresholdThresholdThresholdthreshold
eine Schwelle kleiner
als 0 übergeben, besteht das Resultat stattdessen in der Summe aller
Abweichungen normiert auf die Fläche der Region.
Das Ergebnis des Operators ist eine Bewertung des Zeichens.
Dies ist der Unterschied der Grauwerte zwischen dem aktuellen
Zeichen und dem
Trainingszeichen nach den entsprechenden automatischen Anpassungen.
Der Wert von QualityQualityQualityQualityquality
liegt zwischen 0 und 1. Der
Wert 1 bedeutet, dass das Zeichen mit dem Muster identisch ist.
Der Wert 0 steht für eine sehr große Abweichung.
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Parameter
PatternPatternPatternPatternpattern
(input_object) singlechannelimage(-array) →
objectHImageHImageHobject (byte)
Zu bewertendes Zeichen.
OCVHandleOCVHandleOCVHandleOCVHandleOCVHandle
(input_control) ocv →
HOCV, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle des OCV-Tools.
PatternNamePatternNamePatternNamePatternNamepatternName
(input_control) string(-array) →
HTupleHTupleHtuple (string) (string) (HString) (char*)
Name des Zeichens.
Defaultwert:
'a'
"a"
"a"
"a"
"a"
AdaptPosAdaptPosAdaptPosAdaptPosadaptPos
(input_control) string →
HTupleHTupleHtuple (string) (string) (HString) (char*)
Anpassung an horizontale und vertikale Verschiebung.
Defaultwert:
'true'
"true"
"true"
"true"
"true"
Werteliste: 'false'"false""false""false""false", 'true'"true""true""true""true"
AdaptSizeAdaptSizeAdaptSizeAdaptSizeadaptSize
(input_control) string →
HTupleHTupleHtuple (string) (string) (HString) (char*)
Anpassung an horizontale und vertikale
Größenveränderung.
Defaultwert:
'true'
"true"
"true"
"true"
"true"
Werteliste: 'false'"false""false""false""false", 'true'"true""true""true""true"
AdaptAngleAdaptAngleAdaptAngleAdaptAngleadaptAngle
(input_control) string →
HTupleHTupleHtuple (string) (string) (HString) (char*)
Anpassung der Orientierung (nicht implementiert).
Defaultwert:
'false'
"false"
"false"
"false"
"false"
Werteliste: 'false'"false""false""false""false"
AdaptGrayAdaptGrayAdaptGrayAdaptGrayadaptGray
(input_control) string →
HTupleHTupleHtuple (string) (string) (HString) (char*)
Anpassung an additive und multiplikative
Grauwertänderungen.
Defaultwert:
'true'
"true"
"true"
"true"
"true"
Werteliste: 'false'"false""false""false""false", 'true'"true""true""true""true"
ThresholdThresholdThresholdThresholdthreshold
(input_control) number →
HTupleHTupleHtuple (real) (double) (double) (double)
Mindestdifferenz der Muster.
Defaultwert: 10
Wertevorschläge: -1.0, 0.0, 1.0, 5.0, 10.0, 15.0, 20.0, 30.0, 40.0, 50.0, 60.0, 80.0, 100.0, 150.0
QualityQualityQualityQualityquality
(output_control) real(-array) →
HTupleHTupleHtuple (real) (double) (double) (double)
Bewertung des Zeichens.
Typischer Wertebereich: 0.0
≤
Quality
Quality
Quality
Quality
quality
≤
1.0
Ergebnis
do_ocv_simpledo_ocv_simpleDoOcvSimpleDoOcvSimpleDoOcvSimple
liefert den Wert 2 (H_MSG_TRUE), falls
das Handle und die Vergleichsdaten gültig sind.
Ansonsten wird eine Fehlerbehandlung durchgeführt.
Vorgänger
traind_ocr_class_boxtraind_ocr_class_boxTraindOcrClassBoxTraindOcrClassBoxTraindOcrClassBox
,
trainf_ocr_class_boxtrainf_ocr_class_boxTrainfOcrClassBoxTrainfOcrClassBoxTrainfOcrClassBox
,
read_ocvread_ocvReadOcvReadOcvReadOcv
,
thresholdthresholdThresholdThresholdThreshold
,
connectionconnectionConnectionConnectionConnection
,
select_shapeselect_shapeSelectShapeSelectShapeSelectShape
Nachfolger
close_ocvclose_ocvCloseOcvCloseOcvCloseOcv
Siehe auch
create_ocv_projcreate_ocv_projCreateOcvProjCreateOcvProjCreateOcvProj
Modul
OCR/OCV