prepare_sample_identifierT_prepare_sample_identifierPrepareSampleIdentifierPrepareSampleIdentifierprepare_sample_identifier (Operator)
Name
prepare_sample_identifierT_prepare_sample_identifierPrepareSampleIdentifierPrepareSampleIdentifierprepare_sample_identifier — Anpassen der internen Datenstruktur eines Sample-Identifikators an die Art
der zu unterscheidenden Objekte.
Signatur
Beschreibung
prepare_sample_identifierprepare_sample_identifierPrepareSampleIdentifierPrepareSampleIdentifierPrepareSampleIdentifierprepare_sample_identifier bereitet den Sample-Identifikator
SampleIdentifierSampleIdentifierSampleIdentifierSampleIdentifiersampleIdentifiersample_identifier vor. Hierzu werden die Vorbereitungsdaten
verwendet, die mit add_sample_identifier_preparation_dataadd_sample_identifier_preparation_dataAddSampleIdentifierPreparationDataAddSampleIdentifierPreparationDataAddSampleIdentifierPreparationDataadd_sample_identifier_preparation_data gesetzt
wurden.
Das Konzept der samplebasierten Identifikation ist bei der Einleitung
zu Kapitel Identifizierung / Samplebasiert beschrieben.
Um die besten Identifikationsergebnisse zu erzielen, muss die interne
Datenstruktur des Sample-Identifikators SampleIdentifierSampleIdentifierSampleIdentifierSampleIdentifiersampleIdentifiersample_identifier an die
Art der Objekte angepasst werden, die unterschieden werden sollen.
Zur Vorbereitung des Sample-Identifikators SampleIdentifierSampleIdentifierSampleIdentifierSampleIdentifiersampleIdentifiersample_identifier müssen
diesem zuerst alle relevanten Samplebilder der zu unterscheidenden Objekte
mit add_sample_identifier_preparation_dataadd_sample_identifier_preparation_dataAddSampleIdentifierPreparationDataAddSampleIdentifierPreparationDataAddSampleIdentifierPreparationDataadd_sample_identifier_preparation_data hinzugefügt werden. Dann
wird die interne Datenstruktur des Sample-Identifikators durch den Aufruf
des Operators prepare_sample_identifierprepare_sample_identifierPrepareSampleIdentifierPrepareSampleIdentifierPrepareSampleIdentifierprepare_sample_identifier an die Merkmale der
Samplebilder angepasst.
Dieser Vorgang dauert relativ lange und benötigt unter Umständen sehr viel
Speicher. Wenn z.B. 100 Samplebilder für die Vorbereitung verwendet werden,
dauert dies einige Minuten und es werden ca. 300 MB Speicher benötigt. Wenn
1000 Samplebilder verwendet werden, dauert die Vorbereitung je nach
Rechner etwa eine Stunde und es werden ca. 2 GB Speicher benötigt.
Insbesondere die Vorbereitungsdaten benötigen viel Speicher. Normalerweise
werden die Daten aber nach der Vorbereitung des Sample-Identifikators nicht
mehr benötigt. Daher können sie durch das Setzen des Parameters
RemovePreparationDataRemovePreparationDataRemovePreparationDataRemovePreparationDataremovePreparationDataremove_preparation_data auf 'true'"true""true""true""true""true" gelöscht werden.
Alternativ zur Vorbereitung des Sample-Identifikator kann ein bereits
verfügbarer Sample-Identifikator mit dem Operator
read_sample_identifierread_sample_identifierReadSampleIdentifierReadSampleIdentifierReadSampleIdentifierread_sample_identifier von Datei eingelesen werden. Dieser sollte
mit ähnlichen Objekten vorbereitet worden sein. Allerdings ist zu beachten,
dass die Qualität der Ergebnisse der Identifikation nicht so hoch sein wird,
wie wenn der Sample-Identifikator mit Samples der zu unterscheidenden
Objekte vorbereitet wurde.
Um die Vorbereitungsdaten für das Training wiederzuverwenden, ist es möglich,
Trainingsdaten aus den Vorbereitungsdaten abzuleiten. Dies erspart den
Aufwand, dem Sample-Identifikator die Trainingsdaten erneut mit
add_sample_identifier_training_dataadd_sample_identifier_training_dataAddSampleIdentifierTrainingDataAddSampleIdentifierTrainingDataAddSampleIdentifierTrainingDataadd_sample_identifier_training_data hinzuzufügen (siehe
train_sample_identifiertrain_sample_identifierTrainSampleIdentifierTrainSampleIdentifierTrainSampleIdentifiertrain_sample_identifier für eine Beschreibung des Trainings eines
Sample-Identifikators). Die Trainingsdaten erfordern deutlich weniger
Speicher als die Vorbereitungsdaten. Wenn der generische Parameter
'copy_preparation_data_to_training_data'"copy_preparation_data_to_training_data""copy_preparation_data_to_training_data""copy_preparation_data_to_training_data""copy_preparation_data_to_training_data""copy_preparation_data_to_training_data" auf 'true'"true""true""true""true""true"
gesetzt ist, was der Default ist, so werden die Trainingsdaten automatisch
aus den Vorbereitungsdaten abgeleitet. Dies ist allerdings nur für die
Samples möglich, für die der Objektindex beim Hinzufügen zum
Sample-Identifikator mit dem Operator
add_sample_identifier_preparation_dataadd_sample_identifier_preparation_dataAddSampleIdentifierPreparationDataAddSampleIdentifierPreparationDataAddSampleIdentifierPreparationDataadd_sample_identifier_preparation_data gesetzt wurde.
Der Objektindex wird dabei unverändert in die Trainingsdaten übernommen. Die
Objektsampleindizes können sich allerdings ändern, wenn Samples für die
Vorbereitung aus den Vorbereitungsdaten mit
remove_sample_identifier_preparation_dataremove_sample_identifier_preparation_dataRemoveSampleIdentifierPreparationDataRemoveSampleIdentifierPreparationDataRemoveSampleIdentifierPreparationDataremove_sample_identifier_preparation_data gelöscht wurden, da Samples
für das Training neu fortlaufend und beginnend bei null nummeriert werden.
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
SampleIdentifierSampleIdentifierSampleIdentifierSampleIdentifiersampleIdentifiersample_identifier (input_control) sample_identifier → HSampleIdentifier, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle des Sample-Identifikators.
RemovePreparationDataRemovePreparationDataRemovePreparationDataRemovePreparationDataremovePreparationDataremove_preparation_data (input_control) string → HTuplestrHTupleHtuple (string) (string) (HString) (char*)
Gibt an, ob die Vorbereitungsdaten gelöscht werden
sollen.
Defaultwert:
'true'
"true"
"true"
"true"
"true"
"true"
Werteliste: 'false'"false""false""false""false""false", 'true'"true""true""true""true""true"
GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name (input_control) attribute.name-array → HTupleSequence[str]HTupleHtuple (string) (string) (HString) (char*)
Generischer Parametername.
Defaultwert: []
Werteliste: 'copy_preparation_data_to_training_data'"copy_preparation_data_to_training_data""copy_preparation_data_to_training_data""copy_preparation_data_to_training_data""copy_preparation_data_to_training_data""copy_preparation_data_to_training_data"
GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value (input_control) attribute.value-array → HTupleSequence[Union[str, int, float]]HTupleHtuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)
Generischer Parameterwert.
Defaultwert: []
Werteliste: 'false'"false""false""false""false""false", 'true'"true""true""true""true""true"
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
prepare_sample_identifierprepare_sample_identifierPrepareSampleIdentifierPrepareSampleIdentifierPrepareSampleIdentifierprepare_sample_identifier den Wert TRUE. Gegebenenfalls wird eine
Fehlerbehandlung durchgeführt.
Vorgänger
add_sample_identifier_preparation_dataadd_sample_identifier_preparation_dataAddSampleIdentifierPreparationDataAddSampleIdentifierPreparationDataAddSampleIdentifierPreparationDataadd_sample_identifier_preparation_data
Nachfolger
write_sample_identifierwrite_sample_identifierWriteSampleIdentifierWriteSampleIdentifierWriteSampleIdentifierwrite_sample_identifier,
add_sample_identifier_training_dataadd_sample_identifier_training_dataAddSampleIdentifierTrainingDataAddSampleIdentifierTrainingDataAddSampleIdentifierTrainingDataadd_sample_identifier_training_data,
train_sample_identifiertrain_sample_identifierTrainSampleIdentifierTrainSampleIdentifierTrainSampleIdentifiertrain_sample_identifier
Alternativen
read_sample_identifierread_sample_identifierReadSampleIdentifierReadSampleIdentifierReadSampleIdentifierread_sample_identifier
Siehe auch
create_sample_identifiercreate_sample_identifierCreateSampleIdentifierCreateSampleIdentifierCreateSampleIdentifiercreate_sample_identifier,
apply_sample_identifierapply_sample_identifierApplySampleIdentifierApplySampleIdentifierApplySampleIdentifierapply_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