image

flattenImages

Description

Convertit les tables d'images en un format large (une colonne par pixel). Cette action est utile pour préparer les données d'image pour des algorithmes d'analyse qui nécessitent des entrées vectorielles plates plutôt que des matrices multidimensionnelles.

image.flattenImages <result=results> <status=rc> / casOut={casouttable} copyVars={"variable-name-1" <, "variable-name-2", ...>} groupChannels=TRUE | FALSE height=64-bit-integer image="variable-name" images={flattenImagesTableIn} numberOfChannels="COLOR_IMAGE" | "GRAY_SCALE_IMAGE" | 64-bit-integer table={castable} transpose=TRUE | FALSE width=64-bit-integer;
Paramètres
ParamètreDescription
casOutSpécifie les paramètres de la table de sortie (nom, caslib, options de remplacement, etc.).
copyVarsSpécifie les variables à copier de la table d'entrée vers la table de sortie. Par défaut, inclut '_path_' et '_label_'. Les valeurs spécifiées doivent être uniques.
groupChannelsLorsqu'il est défini sur Vrai (True), regroupe les canaux des images ensemble (par exemple, tous les pixels bleus, puis tous les pixels verts, puis tous les pixels rouges) avant de les écrire dans la table de sortie. Par défaut : Faux (False).
heightSpécifie la hauteur des images de sortie en pixels. Alias : h. Valeur par défaut : 32. Valeur minimale : 1.
imageSpécifie le nom de la colonne contenant les données binaires de l'image. Alias : imageVar. Valeur par défaut : '_image_'.
imagesSpécifie la liste des paramètres décrivant la table d'images d'entrée (dimensions, format, label, chemin, résolution).
numberOfChannelsSpécifie le nombre de canaux des images de sortie (ex: 'COLOR_IMAGE', 'GRAY_SCALE_IMAGE' ou un entier). Alias : c.
tableSpécifie la table d'entrée contenant les données d'image. Peut inclure le nom, le caslib et les filtres 'where'.
transposeLorsqu'il est défini sur Vrai (True), transpose les images avant de les écrire dans la table de sortie. Par défaut : Faux (False).
widthSpécifie la largeur des images de sortie en pixels. Alias : w. Valeur par défaut : 32. Valeur minimale : 1.
Préparation des Données Voir la fiche de ce code dataprep
Chargement préalable des images

Avant d'utiliser l'action flattenImages, les images doivent être chargées dans une table CAS. Cet exemple charge des images depuis un répertoire source.

Copié !
1PROC CAS;
2 image.loadImages /
3 path="/chemin/vers/images"
4 casout={name="input_images", replace=true};
5RUN;

Exemples

Convertit la table d'images 'input_images' en format large, en redimensionnant les images à 32x32 pixels (valeurs par défaut).

Code SAS® / CAS Code en attente de validation par la communauté
Copié !
1PROC CAS;
2 image.flattenImages /
3 TABLE="input_images"
4 casOut={name="flat_images", replace=true};
5RUN;
Résultat :
Une table 'flat_images' est créée avec une ligne par image et une colonne par pixel.

Convertit les images en redimensionnant à 100x100, en regroupant les canaux de couleur contigus et en transposant le résultat.

Code SAS® / CAS Code en attente de validation par la communauté
Copié !
1PROC CAS;
2 image.flattenImages /
3 TABLE={name="input_images"}
4 width=100
5 height=100
6 groupChannels=true
7 transpose=true
8 casOut={name="flat_images_processed", replace=true};
9RUN;
Résultat :
Une table 'flat_images_processed' contenant les vecteurs d'images transformés selon les spécifications.

FAQ

Quelle est la fonction principale de l'action flattenImages ?
Comment définir les dimensions (hauteur et largeur) des images en sortie ?
À quoi sert le paramètre 'groupChannels' ?
Est-il possible de transposer les images avant le traitement ?
Comment spécifier la table de sortie pour les résultats ?
Comment conserver certaines variables de la table d'entrée dans la table de sortie ?
Comment spécifier le nombre de canaux pour les images de sortie ?