Vergleicht Bilder in einer Tabelle mit denen in einer anderen. Diese Aktion ist nützlich, um die Ähnlichkeit oder den Unterschied zwischen zwei Bildersätzen zu quantifizieren, beispielsweise um die Qualität von komprimierten Bildern zu bewerten oder um Änderungen zwischen Bildversionen zu erkennen.
| Parameter | Beschreibung |
|---|---|
| casOut | Gibt die Einstellungen für eine Ausgabetabelle an, in der die Vergleichsergebnisse gespeichert werden. |
| copyVars | Gibt die Variablen an, die von der Eingabetabelle in die Ausgabetabelle kopiert werden sollen. |
| maximum | Gibt den maximalen zu meldenden Vergleichswert an. |
| method | Gibt den Namen der Bildvergleichsmethode an. 'SSIM' (Structural Similarity Index) bewertet die wahrgenommene Ähnlichkeit, während 'PSNR' (Peak Signal-to-Noise Ratio) das Verhältnis zwischen der maximal möglichen Leistung eines Signals und der Leistung des verfälschenden Rauschens misst. |
| minimum | Gibt den minimalen zu meldenden Vergleichswert an. |
| pairAll | Wenn auf True gesetzt, vergleicht alle Bilder aus der Quelltabelle mit allen Bildern aus der Referenztabelle, was zu einem kartesischen Produkt der Vergleiche führt. |
| pairOnPath | Wenn auf True gesetzt, gibt an, dass die Paarungsvariablen Dateipfade sind. Dies ist nützlich, wenn Bilder mit demselben Dateinamen in verschiedenen Verzeichnissen verglichen werden. |
| pairReferenceOn | Gibt den Namen der Spalte in der Referenzbildtabelle an, die die Paarungsvariable enthält. |
| pairSourceOn | Gibt den Namen der Spalte in der Quellbildtabelle an, die die Paarungsvariable enthält. |
| referenceImages | Gibt die Parameterliste der Eingabebildtabelle an, die Referenzbilder enthält. |
| separateChannels | Wenn auf True gesetzt, vergleicht jeden Kanal (z. B. Rot, Grün, Blau) separat. Andernfalls werden die Bilder in Graustufen umgewandelt, bevor der Vergleich durchgeführt wird. |
| sourceImages | Gibt die Liste der Parameter für die Eingabebildtabelle an, die Quellbilder enthält. |
Dieses Beispiel lädt zwei Bildersätze in CAS-Tabellen. Die Tabelle 'source_images' enthält die zu bewertenden Bilder und die Tabelle 'reference_images' die Originalbilder. Diese Tabellen werden in den folgenden Beispielen verwendet.
| 1 | PROC CAS; |
| 2 | loadImages / |
| 3 | path="/pfad/zu/ihren/quellbildern/" |
| 4 | casOut={name="source_images", caslib="casuser", replace=true}; |
| 5 | loadImages / |
| 6 | path="/pfad/zu/ihren/referenzbildern/" |
| 7 | casOut={name="reference_images", caslib="casuser", replace=true}; |
| 8 | RUN; |
Dieses Beispiel vergleicht Bilder zwischen den Tabellen 'source_images' und 'reference_images' unter Verwendung der Standardmethode SSIM (Structural Similarity Index). Die Bilder werden anhand ihrer Dateipfade in den beiden Tabellen gepaart.
| 1 | |
| 2 | PROC CAS; |
| 3 | image.compareImages / TABLE={name='source_images', caslib='casuser'}, referenceImages={TABLE={name='reference_images', caslib='casuser'}}, casOut={name='comparison_results', caslib='casuser', replace=true}; |
| 4 | |
| 5 | RUN; |
| 6 |
Dieses Beispiel verwendet die PSNR-Methode (Peak Signal-to-Noise Ratio) zum Vergleichen von Bildern. Es vergleicht jeden Kanal separat (separateChannels=true) und filtert die Ergebnisse, um nur Vergleiche mit einem PSNR-Wert zwischen 20 und 50 zu melden. Es kopiert auch die Spalte '_label_' aus der Quelltabelle in die Ergebnistabelle.
| 1 | |
| 2 | PROC CAS; |
| 3 | image.compareImages / TABLE={name='source_images', caslib='casuser'}, referenceImages={TABLE={name='reference_images', caslib='casuser'}}, casOut={name='comparison_results_psnr', caslib='casuser', replace=true}, method='PSNR', separateChannels=true, minimum=20, maximum=50, copyVars={'_label_'}; |
| 4 | |
| 5 | RUN; |
| 6 |
In diesem Szenario wird jedes Bild in der 'source_images'-Tabelle mit jedem Bild in der 'reference_images'-Tabelle verglichen, indem 'pairAll=true' gesetzt wird. Dies ist nützlich, um das ähnlichste Bild in einem Referenzsatz für jedes Quellbild zu finden.
| 1 | |
| 2 | PROC CAS; |
| 3 | image.compareImages / TABLE={name='source_images', caslib='casuser'}, referenceImages={TABLE={name='reference_images', caslib='casuser'}}, casOut={name='comparison_all_pairs', caslib='casuser', replace=true}, method='SSIM', pairAll=true; |
| 4 | |
| 5 | RUN; |
| 6 |