apply_sample_identifierT_apply_sample_identifierApplySampleIdentifierApplySampleIdentifierapply_sample_identifier (Operator)

Name

apply_sample_identifierT_apply_sample_identifierApplySampleIdentifierApplySampleIdentifierapply_sample_identifier — Identifizieren von Objekten mit einem Sample-Identifikator.

Warnung

apply_sample_identifierapply_sample_identifierApplySampleIdentifierApplySampleIdentifierapply_sample_identifier ist veraltet und wird nur aus Gründen der Rückwärtskompatibilität zur Verfügung gestellt. Neue Applikationen sollten stattdessen die Operatoren für die Deep Learning-basierte Klassifikation verwenden, die in Deep Learning / Klassifikation beschrieben sind.

Signatur

apply_sample_identifier(Image : : SampleIdentifier, NumResults, RatingThreshold, GenParamName, GenParamValue : ObjectIdx, Rating)

Herror T_apply_sample_identifier(const Hobject Image, const Htuple SampleIdentifier, const Htuple NumResults, const Htuple RatingThreshold, const Htuple GenParamName, const Htuple GenParamValue, Htuple* ObjectIdx, Htuple* Rating)

void ApplySampleIdentifier(const HObject& Image, const HTuple& SampleIdentifier, const HTuple& NumResults, const HTuple& RatingThreshold, const HTuple& GenParamName, const HTuple& GenParamValue, HTuple* ObjectIdx, HTuple* Rating)

HTuple HImage::ApplySampleIdentifier(const HSampleIdentifier& SampleIdentifier, Hlong NumResults, double RatingThreshold, const HTuple& GenParamName, const HTuple& GenParamValue, HTuple* Rating) const

Hlong HImage::ApplySampleIdentifier(const HSampleIdentifier& SampleIdentifier, Hlong NumResults, double RatingThreshold, const HTuple& GenParamName, const HTuple& GenParamValue, double* Rating) const

HTuple HSampleIdentifier::ApplySampleIdentifier(const HImage& Image, Hlong NumResults, double RatingThreshold, const HTuple& GenParamName, const HTuple& GenParamValue, HTuple* Rating) const

Hlong HSampleIdentifier::ApplySampleIdentifier(const HImage& Image, Hlong NumResults, double RatingThreshold, const HTuple& GenParamName, const HTuple& GenParamValue, double* Rating) const

static void HOperatorSet.ApplySampleIdentifier(HObject image, HTuple sampleIdentifier, HTuple numResults, HTuple ratingThreshold, HTuple genParamName, HTuple genParamValue, out HTuple objectIdx, out HTuple rating)

HTuple HImage.ApplySampleIdentifier(HSampleIdentifier sampleIdentifier, int numResults, double ratingThreshold, HTuple genParamName, HTuple genParamValue, out HTuple rating)

int HImage.ApplySampleIdentifier(HSampleIdentifier sampleIdentifier, int numResults, double ratingThreshold, HTuple genParamName, HTuple genParamValue, out double rating)

HTuple HSampleIdentifier.ApplySampleIdentifier(HImage image, int numResults, double ratingThreshold, HTuple genParamName, HTuple genParamValue, out HTuple rating)

int HSampleIdentifier.ApplySampleIdentifier(HImage image, int numResults, double ratingThreshold, HTuple genParamName, HTuple genParamValue, out double rating)

def apply_sample_identifier(image: HObject, sample_identifier: HHandle, num_results: int, rating_threshold: float, gen_param_name: Sequence[str], gen_param_value: Sequence[Union[str, int, float]]) -> Tuple[Sequence[int], Sequence[float]]

def apply_sample_identifier_s(image: HObject, sample_identifier: HHandle, num_results: int, rating_threshold: float, gen_param_name: Sequence[str], gen_param_value: Sequence[Union[str, int, float]]) -> Tuple[int, float]

Beschreibung

apply_sample_identifierapply_sample_identifierApplySampleIdentifierApplySampleIdentifierapply_sample_identifier identifiziert das Objekt im Bild ImageImageImageimageimage mit dem gegebenen Sample-Identifikator SampleIdentifierSampleIdentifierSampleIdentifiersampleIdentifiersample_identifier und liefert den entsprechenden Objektindex in ObjectIdxObjectIdxObjectIdxobjectIdxobject_idx zurück.

Das Konzept der samplebasierten Identifikation ist bei der Einleitung zu Kapitel Legacy / Identifizierung beschrieben.

Der Operator apply_sample_identifierapply_sample_identifierApplySampleIdentifierApplySampleIdentifierapply_sample_identifier kann nur ein Objekt pro Suchbild identifizieren. Das bedeutet, dass das in ImageImageImageimageimage übergebene Suchbild, oder genauer gesagt dessen Domain, nur ein Objekt enthalten darf. Der Parameter NumResultsNumResultsNumResultsnumResultsnum_results gibt die Anzahl von Hypothesen an, die zurückgegeben werden. Die Hypothesen sind dabei nach ihrer Bewertung sortiert. Wenn der generische Parameter 'apply_rating_threshold'"apply_rating_threshold""apply_rating_threshold""apply_rating_threshold""apply_rating_threshold" auf 'true'"true""true""true""true" gesetzt ist (siehe unten), werden nur solche Hypothesen zurück gegeben, deren Bewertung besser als der in RatingThresholdRatingThresholdRatingThresholdratingThresholdrating_threshold angegebenen Schwellenwert ist.

Der Objektindex des identifizierten Objekts wird in ObjectIdxObjectIdxObjectIdxobjectIdxobject_idx zurückgegeben und die entsprechende Bewertung in RatingRatingRatingratingrating. Wenn NumResultsNumResultsNumResultsnumResultsnum_results auf einen Wert größer als 1 gesetzt ist, werden die Objektindizes und die Bewertungen der besten NumResultsNumResultsNumResultsnumResultsnum_results Hypothesen in ObjectIdxObjectIdxObjectIdxobjectIdxobject_idx und RatingRatingRatingratingrating zurückgegeben.

Mit den folgenden generischen Parametern kann das Verhalten des Sample-Identifikators SampleIdentifierSampleIdentifierSampleIdentifiersampleIdentifiersample_identifier beeinflusst werden. Die Parameter und ihre Werte können in GenParamNameGenParamNameGenParamNamegenParamNamegen_param_name und GenParamValueGenParamValueGenParamValuegenParamValuegen_param_value übergeben werden. Die folgenden generischen Parameter können gesetzt werden:

'rating_method'"rating_method""rating_method""rating_method""rating_method":

Dieser Parameter legt fest, welche Bewertungsmethode für die Identifikation der Objekte verwendet wird. Es stehen drei unterschiedliche Bewertungsmethoden zur Auswahl:

'distance'"distance""distance""distance""distance"

Die Bewertung wird aufgrund der Distanz zwischen den Merkmalen im Suchbild und den trainierten Samplebildern durchgeführt. Die Bewertungen liegen zwischen 0.0 und 2.0. Sind Suchbild und Samplebild identisch, so wird eine Bewertung von 0.0 im Parameter RatingRatingRatingratingrating zurückgegeben. Je stärker sich die Bilder unterscheiden, desto höher wird die Bewertung. Bei dieser Bewertungsmethode werden die Rohdaten der Bewertung zurückgegeben. Diese Bewertungsmethode hat den Vorteil, dass die Bewertung nur von den Samples für das Training abhängt, die für das identifizierte Objekt trainiert wurden. Die Bewertungen der beiden anderen Bewertungsmethoden hängen auch von allen übrigen Samples für das Training ab.

'score'"score""score""score""score"

Die Bewertung basiert auf einer komplizierten Kombination der einzelnen Auswertungen für Textur und Farbe. Die Bewertungen liegen zwischen 0.0 und 1.0. Höhere Werte bedeuten eine bessere Übereinstimmung. Wird sowohl Textur als auch Farbe verwendet, liefert diese Bewertungsmethode die besten Ergebnisse und sollte daher in diesem Fall auch verwendet werden. Ein Nachteil dieser Bewertungsmethode ist, dass die Bewertungen von Trainingsbildern typischerweise deutlich unter 1.0 liegt. Außerdem muss ein passender Schwellenwert für jede Anwendung gesondert bestimmt werden.

'score_single'"score_single""score_single""score_single""score_single"

Die Bewertung basiert auf einer einfachen Kombination der einzelnen Auswertungen für Textur und Farbe. Die Bewertungen liegen zwischen 0.0 und 1.0. Höhere Werte bedeuten eine bessere Übereinstimmung. Wird sowohl Textur wie auch Farbe verwendet, liefert die Bewertungsmethode 'score'"score""score""score""score" bessere Ergebnisse. Der Vorteil der Bewertungsmethode 'score_single'"score_single""score_single""score_single""score_single" ist, dass sie für Trainingsbilder die Bewertung 1.0 liefert. Daher sollte diese Methode angewendet werden, wenn nur Textur oder nur Farbe für die Identifikation verwendet werden. Bei dieser Bewertungsmethode ist es auch leichter einen passenden Schwellenwert festzulegen, als bei der Bewertungsmethode 'score'"score""score""score""score".

Es ist zu beachten, dass die Wahl der Bewertungsmethode nicht nur die (Zahlenwerte der) Bewertung beeinflusst, die im Parameter RatingRatingRatingratingrating zurückgegeben wird, sondern auch die eigentliche Identifikation der Objekte.

Werteliste: 'distance'"distance""distance""distance""distance", 'score'"score""score""score""score", 'score_single'"score_single""score_single""score_single""score_single"

Defaultwert: 'score'"score""score""score""score"

'apply_rating_threshold'"apply_rating_threshold""apply_rating_threshold""apply_rating_threshold""apply_rating_threshold":

Dieser Parameter legt fest, ob der in RatingThresholdRatingThresholdRatingThresholdratingThresholdrating_threshold übergebene Schwellenwert angewendet wird, oder nicht. Wenn 'apply_rating_threshold'"apply_rating_threshold""apply_rating_threshold""apply_rating_threshold""apply_rating_threshold" auf 'true'"true""true""true""true" gesetzt ist, wird der Schwellenwert angewendet.

Werteliste: 'true'"true""true""true""true", 'false'"false""false""false""false"

Defaultwert: 'true'"true""true""true""true"

'use_color_info'"use_color_info""use_color_info""use_color_info""use_color_info":

Siehe set_sample_identifier_paramset_sample_identifier_paramSetSampleIdentifierParamSetSampleIdentifierParamset_sample_identifier_param für eine Beschreibung dieses Parameters.

Werteliste: 'true'"true""true""true""true", 'false'"false""false""false""false"

Defaultwert: So lange 'use_color_info'"use_color_info""use_color_info""use_color_info""use_color_info" nicht gesetzt wird, wird der Wert verwendet, der mit 'add_color_info'"add_color_info""add_color_info""add_color_info""add_color_info" in create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifiercreate_sample_identifier gesetzt wurde.

'use_texture_info'"use_texture_info""use_texture_info""use_texture_info""use_texture_info":

Siehe set_sample_identifier_paramset_sample_identifier_paramSetSampleIdentifierParamSetSampleIdentifierParamset_sample_identifier_param für eine Beschreibung dieses Parameters.

Werteliste: 'true'"true""true""true""true", 'false'"false""false""false""false"

Defaultwert: So lange 'use_texture_info'"use_texture_info""use_texture_info""use_texture_info""use_texture_info" nicht gesetzt wird, wird der Wert verwendet, der mit 'add_texture_info'"add_texture_info""add_texture_info""add_texture_info""add_texture_info" in create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifiercreate_sample_identifier gesetzt wurde.

'image_resize_method'"image_resize_method""image_resize_method""image_resize_method""image_resize_method":

Siehe create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifiercreate_sample_identifier für eine Beschreibung dieses Parameters.

Werteliste: 'none'"none""none""none""none", 'scale_factor'"scale_factor""scale_factor""scale_factor""scale_factor", 'subsampling_step'"subsampling_step""subsampling_step""subsampling_step""subsampling_step", 'image_area'"image_area""image_area""image_area""image_area"

Defaultwert: Wenn 'image_resize_method'"image_resize_method""image_resize_method""image_resize_method""image_resize_method" nicht explizit mit diesem Operator gesetzt wird, wird der Wert verwendet, der mit create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifiercreate_sample_identifier oder mit set_sample_identifier_paramset_sample_identifier_paramSetSampleIdentifierParamSetSampleIdentifierParamset_sample_identifier_param gesetzt wurde.

'image_resize_value'"image_resize_value""image_resize_value""image_resize_value""image_resize_value":

Siehe create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifiercreate_sample_identifier für eine Beschreibung dieses Parameters. Es ist hierbei zu beachten, dass die zu identifizierenden Objekte in den Suchbildern in etwa in derselben Größe erscheinen, wie in den Samples für das Training.

Wertevorschläge: 0.25, 0.5, 1.0, 2, 3, 4

Defaultwert: Wenn 'image_resize_value'"image_resize_value""image_resize_value""image_resize_value""image_resize_value" nicht explizit mit diesem Operator gesetzt wird, wird der Wert verwendet, der mit create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifiercreate_sample_identifier oder mit set_sample_identifier_paramset_sample_identifier_paramSetSampleIdentifierParamSetSampleIdentifierParamset_sample_identifier_param gesetzt wurde.

Ausführungsinformationen

Parameter

ImageImageImageimageimage (input_object)  (multichannel-)image objectHImageHObjectHObjectHobject (byte)

Bild, das das zu identifizierende Objekt zeigt.

SampleIdentifierSampleIdentifierSampleIdentifiersampleIdentifiersample_identifier (input_control)  sample_identifier HSampleIdentifier, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle des Sample-Identifikators.

NumResultsNumResultsNumResultsnumResultsnum_results (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Anzahl der Hypothesen, die zurückgegeben werden.

Default: 1

Wertevorschläge: 1, 2, 3, 4, 5, 10

RatingThresholdRatingThresholdRatingThresholdratingThresholdrating_threshold (input_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Schwellenwert für die Bewertung.

Default: 0.0

Wertevorschläge: 0.05, 0.1, 0.15, 0.2

GenParamNameGenParamNameGenParamNamegenParamNamegen_param_name (input_control)  attribute.name-array HTupleSequence[str]HTupleHtuple (string) (string) (HString) (char*)

Generischer Parametername.

Default: []

Werteliste: 'apply_rating_threshold'"apply_rating_threshold""apply_rating_threshold""apply_rating_threshold""apply_rating_threshold", 'image_resize_method'"image_resize_method""image_resize_method""image_resize_method""image_resize_method", 'image_resize_value'"image_resize_value""image_resize_value""image_resize_value""image_resize_value", 'rating_method'"rating_method""rating_method""rating_method""rating_method", 'use_color_info'"use_color_info""use_color_info""use_color_info""use_color_info", 'use_texture_info'"use_texture_info""use_texture_info""use_texture_info""use_texture_info"

GenParamValueGenParamValueGenParamValuegenParamValuegen_param_value (input_control)  attribute.value-array HTupleSequence[Union[str, int, float]]HTupleHtuple (real / string / integer) (double / string / int / long) (double / HString / Hlong) (double / char* / Hlong)

Generischer Parameterwert.

Default: []

Werteliste: 'distance'"distance""distance""distance""distance", 'false'"false""false""false""false", 'score'"score""score""score""score", 'score_single'"score_single""score_single""score_single""score_single", 'true'"true""true""true""true"

ObjectIdxObjectIdxObjectIdxobjectIdxobject_idx (output_control)  integer(-array) HTupleSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Index des identifizierten Objekts.

RatingRatingRatingratingrating (output_control)  real(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Bewertung des identifizierten Objekts.

Ergebnis

Sind die Parameterwerte korrekt, dann liefert apply_sample_identifierapply_sample_identifierApplySampleIdentifierApplySampleIdentifierapply_sample_identifier den Wert 2 ( H_MSG_TRUE) . Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

train_sample_identifiertrain_sample_identifierTrainSampleIdentifierTrainSampleIdentifiertrain_sample_identifier, read_sample_identifierread_sample_identifierReadSampleIdentifierReadSampleIdentifierread_sample_identifier

Nachfolger

add_sample_identifier_training_dataadd_sample_identifier_training_dataAddSampleIdentifierTrainingDataAddSampleIdentifierTrainingDataadd_sample_identifier_training_data

Siehe auch

create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifiercreate_sample_identifier, add_sample_identifier_preparation_dataadd_sample_identifier_preparation_dataAddSampleIdentifierPreparationDataAddSampleIdentifierPreparationDataadd_sample_identifier_preparation_data, prepare_sample_identifierprepare_sample_identifierPrepareSampleIdentifierPrepareSampleIdentifierprepare_sample_identifier, set_sample_identifier_paramset_sample_identifier_paramSetSampleIdentifierParamSetSampleIdentifierParamset_sample_identifier_param, get_sample_identifier_paramget_sample_identifier_paramGetSampleIdentifierParamGetSampleIdentifierParamget_sample_identifier_param, get_sample_identifier_object_infoget_sample_identifier_object_infoGetSampleIdentifierObjectInfoGetSampleIdentifierObjectInfoget_sample_identifier_object_info, remove_sample_identifier_preparation_dataremove_sample_identifier_preparation_dataRemoveSampleIdentifierPreparationDataRemoveSampleIdentifierPreparationDataremove_sample_identifier_preparation_data, remove_sample_identifier_training_dataremove_sample_identifier_training_dataRemoveSampleIdentifierTrainingDataRemoveSampleIdentifierTrainingDataremove_sample_identifier_training_data, write_sample_identifierwrite_sample_identifierWriteSampleIdentifierWriteSampleIdentifierwrite_sample_identifier, serialize_sample_identifierserialize_sample_identifierSerializeSampleIdentifierSerializeSampleIdentifierserialize_sample_identifier, deserialize_sample_identifierdeserialize_sample_identifierDeserializeSampleIdentifierDeserializeSampleIdentifierdeserialize_sample_identifier, clear_sample_identifierclear_sample_identifierClearSampleIdentifierClearSampleIdentifierclear_sample_identifier, set_sample_identifier_object_infoset_sample_identifier_object_infoSetSampleIdentifierObjectInfoSetSampleIdentifierObjectInfoset_sample_identifier_object_info

Modul

Matching