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.

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_identifierApplySampleIdentifierApplySampleIdentifierApplySampleIdentifierapply_sample_identifier identifiziert das Objekt im Bild ImageImageImageImageimageimage mit dem gegebenen Sample-Identifikator SampleIdentifierSampleIdentifierSampleIdentifierSampleIdentifiersampleIdentifiersample_identifier und liefert den entsprechenden Objektindex in ObjectIdxObjectIdxObjectIdxObjectIdxobjectIdxobject_idx zurück.

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

Der Operator apply_sample_identifierapply_sample_identifierApplySampleIdentifierApplySampleIdentifierApplySampleIdentifierapply_sample_identifier kann nur ein Objekt pro Suchbild identifizieren. Das bedeutet, dass das in ImageImageImageImageimageimage übergebene Suchbild, oder genauer gesagt dessen Domain, nur ein Objekt enthalten darf. Der Parameter NumResultsNumResultsNumResultsNumResultsnumResultsnum_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""apply_rating_threshold" auf 'true'"true""true""true""true""true" gesetzt ist (siehe unten), werden nur solche Hypothesen zurück gegeben, deren Bewertung besser als der in RatingThresholdRatingThresholdRatingThresholdRatingThresholdratingThresholdrating_threshold angegebenen Schwellenwert ist.

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

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

'rating_method'"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""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 RatingRatingRatingRatingratingrating 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""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""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""score" bessere Ergebnisse. Der Vorteil der Bewertungsmethode 'score_single'"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""score".

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

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

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

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

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

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

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

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

Siehe set_sample_identifier_paramset_sample_identifier_paramSetSampleIdentifierParamSetSampleIdentifierParamSetSampleIdentifierParamset_sample_identifier_param für eine Beschreibung dieses Parameters.

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

Defaultwert: So lange 'use_color_info'"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""add_color_info" in create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifierCreateSampleIdentifiercreate_sample_identifier gesetzt wurde.

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

Siehe set_sample_identifier_paramset_sample_identifier_paramSetSampleIdentifierParamSetSampleIdentifierParamSetSampleIdentifierParamset_sample_identifier_param für eine Beschreibung dieses Parameters.

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

Defaultwert: So lange 'use_texture_info'"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""add_texture_info" in create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifierCreateSampleIdentifiercreate_sample_identifier gesetzt wurde.

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

Siehe create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifierCreateSampleIdentifiercreate_sample_identifier für eine Beschreibung dieses Parameters.

Werteliste: 'none'"none""none""none""none""none", 'scale_factor'"scale_factor""scale_factor""scale_factor""scale_factor""scale_factor", 'subsampling_step'"subsampling_step""subsampling_step""subsampling_step""subsampling_step""subsampling_step", 'image_area'"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""image_resize_method" nicht explizit mit diesem Operator gesetzt wird, wird der Wert verwendet, der mit create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifierCreateSampleIdentifiercreate_sample_identifier oder mit set_sample_identifier_paramset_sample_identifier_paramSetSampleIdentifierParamSetSampleIdentifierParamSetSampleIdentifierParamset_sample_identifier_param gesetzt wurde.

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

Siehe create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifierCreateSampleIdentifiercreate_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""image_resize_value" nicht explizit mit diesem Operator gesetzt wird, wird der Wert verwendet, der mit create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifierCreateSampleIdentifiercreate_sample_identifier oder mit set_sample_identifier_paramset_sample_identifier_paramSetSampleIdentifierParamSetSampleIdentifierParamSetSampleIdentifierParamset_sample_identifier_param gesetzt wurde.

Ausführungsinformationen

Parameter

ImageImageImageImageimageimage (input_object)  (multichannel-)image objectHImageHObjectHImageHobject (byte)

Bild, das das zu identifizierende Objekt zeigt.

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

Handle des Sample-Identifikators.

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

Anzahl der Hypothesen, die zurückgegeben werden.

Defaultwert: 1

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

RatingThresholdRatingThresholdRatingThresholdRatingThresholdratingThresholdrating_threshold (input_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Schwellenwert für die Bewertung.

Defaultwert: 0.0

Wertevorschläge: 0.05, 0.1, 0.15, 0.2

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

Generischer Parametername.

Defaultwert: []

Werteliste: 'apply_rating_threshold'"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_method", 'image_resize_value'"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""rating_method", 'use_color_info'"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""use_texture_info"

GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_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.

Defaultwert: []

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

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

Index des identifizierten Objekts.

RatingRatingRatingRatingratingrating (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_identifierApplySampleIdentifierApplySampleIdentifierApplySampleIdentifierapply_sample_identifier den Wert TRUE. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

train_sample_identifiertrain_sample_identifierTrainSampleIdentifierTrainSampleIdentifierTrainSampleIdentifiertrain_sample_identifier, read_sample_identifierread_sample_identifierReadSampleIdentifierReadSampleIdentifierReadSampleIdentifierread_sample_identifier

Nachfolger

add_sample_identifier_training_dataadd_sample_identifier_training_dataAddSampleIdentifierTrainingDataAddSampleIdentifierTrainingDataAddSampleIdentifierTrainingDataadd_sample_identifier_training_data

Siehe auch

create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifierCreateSampleIdentifiercreate_sample_identifier, add_sample_identifier_preparation_dataadd_sample_identifier_preparation_dataAddSampleIdentifierPreparationDataAddSampleIdentifierPreparationDataAddSampleIdentifierPreparationDataadd_sample_identifier_preparation_data, prepare_sample_identifierprepare_sample_identifierPrepareSampleIdentifierPrepareSampleIdentifierPrepareSampleIdentifierprepare_sample_identifier, set_sample_identifier_paramset_sample_identifier_paramSetSampleIdentifierParamSetSampleIdentifierParamSetSampleIdentifierParamset_sample_identifier_param, get_sample_identifier_paramget_sample_identifier_paramGetSampleIdentifierParamGetSampleIdentifierParamGetSampleIdentifierParamget_sample_identifier_param, get_sample_identifier_object_infoget_sample_identifier_object_infoGetSampleIdentifierObjectInfoGetSampleIdentifierObjectInfoGetSampleIdentifierObjectInfoget_sample_identifier_object_info, remove_sample_identifier_preparation_dataremove_sample_identifier_preparation_dataRemoveSampleIdentifierPreparationDataRemoveSampleIdentifierPreparationDataRemoveSampleIdentifierPreparationDataremove_sample_identifier_preparation_data, remove_sample_identifier_training_dataremove_sample_identifier_training_dataRemoveSampleIdentifierTrainingDataRemoveSampleIdentifierTrainingDataRemoveSampleIdentifierTrainingDataremove_sample_identifier_training_data, write_sample_identifierwrite_sample_identifierWriteSampleIdentifierWriteSampleIdentifierWriteSampleIdentifierwrite_sample_identifier, serialize_sample_identifierserialize_sample_identifierSerializeSampleIdentifierSerializeSampleIdentifierSerializeSampleIdentifierserialize_sample_identifier, deserialize_sample_identifierdeserialize_sample_identifierDeserializeSampleIdentifierDeserializeSampleIdentifierDeserializeSampleIdentifierdeserialize_sample_identifier, clear_sample_identifierclear_sample_identifierClearSampleIdentifierClearSampleIdentifierClearSampleIdentifierclear_sample_identifier, set_sample_identifier_object_infoset_sample_identifier_object_infoSetSampleIdentifierObjectInfoSetSampleIdentifierObjectInfoSetSampleIdentifierObjectInfoset_sample_identifier_object_info

Modul

Matching