image augmentImages

Erkennung von Defekten auf Leiterplatten durch Augmentation für Robustheit

Scénario de test & Cas d'usage

Geschäftskontext

Ein Elektronikhersteller möchte ein KI-Modell trainieren, um kleine Defekte auf Leiterplatten (PCBs) zu erkennen. Die Beleuchtung und Ausrichtung der Platinen während der Aufnahme kann leicht variieren. Um das Modell robust gegenüber diesen Variationen zu machen, muss der Trainingsdatensatz künstlich erweitert werden, indem Bilder mit leichten Rotations- und Helligkeitsänderungen erzeugt werden.
Über das Set : image

Bildverarbeitung, -manipulation und -analyse.

Entdecken Sie alle Aktionen von image
Datenaufbereitung

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

Kopiert!
1DATA 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;

Étapes de réalisation

1
Ausführen der `augmentImages`-Aktion, um die gesamten Bilder mit zufälliger Drehung und Aufhellung zu augmentieren. Die Metadaten (`defect_label`, `image_id`) werden beibehalten.
Kopiert!
1PROC 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;

Erwartetes Ergebnis


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.