Scénario de test & Cas d'usage
Bildverarbeitung, -manipulation und -analyse.
Entdecken Sie alle Aktionen von imageErstellt eine simulierte CAS-Tabelle `qc_images_raw`, die Bild-IDs, gefälschte Binärdaten für die Bilder und ein Label ('defect'/'nodefect') enthält. Diese Tabelle dient als Grundlage für die Augmentation.
| 1 | DATA casuser.qc_images_raw(caslib='casuser' replace=true); |
| 2 | LENGTH _image_ binary(32) defect_label $10 image_id $8; |
| 3 | INFILE DATALINES dlm='|'; |
| 4 | INPUT image_id $ _image_ $hex64. defect_label $; |
| 5 | DATALINES; |
| 6 | PCB_01|47494638396101000100800000000000FFFFFF21F90401000000002C0000000001000100000202440100|nodefect |
| 7 | PCB_02|47494638396101000100800000FF000000000021F90401000000002C00000000010001000002024C0100|defect |
| 8 | ; |
| 9 | RUN; |
| 1 | PROC CAS; |
| 2 | image.augmentImages / |
| 3 | TABLE={name='qc_images_raw', caslib='casuser'} |
| 4 | casOut={name='qc_images_augmented', caslib='casuser', replace=true} |
| 5 | seed=2024 |
| 6 | copyVars={'defect_label', 'image_id'} |
| 7 | image='_image_' |
| 8 | augmentations={{ |
| 9 | useWholeImage=true, |
| 10 | mutations={ |
| 11 | rotateLeft={type='RANGE', value={0, 15}}, |
| 12 | lighten={type='RANGE', value={0.05, 0.2}} |
| 13 | } |
| 14 | }}; |
| 15 | RUN; |
| 16 | QUIT; |
Eine neue CAS-Tabelle `qc_images_augmented` wird erstellt. Sie enthält die Originalbilder sowie augmentierte Versionen, die leichte Rotations- und Helligkeitsänderungen aufweisen. Die Spalten `defect_label` und `image_id` sind in der Ausgabetabelle vorhanden, wodurch die Zuordnung zwischen Bild und Label für das nachfolgende Modelltraining erhalten bleibt.