[PYTHON] Génération d'ensembles de données

Jusqu'à présent, dans la formation, j'apprenais de l'état où le jeu de données était fourni, j'ai donc décidé de créer le jeu de données moi-même. J'ai collecté des images d'hommes et de femmes, alors j'ai créé un ensemble de données à partir d'eux!

Environnement d'exécution

MacOS、Python3.6(anaconda)、VSCode

Comment transformer une image en ensemble de données

Il s'agit d'un article auquel j'ai fait référence lors de la création de l'ensemble de données cette fois.

[Comment créer un ensemble de données à partir d'une image originale](https://intellectual-curiosity.tokyo/2019/07/02/%E3%82%AA%E3%83%AA%E3%82%B8%E3% 83% 8A% E3% 83% AB% E3% 81% AE% E7% 94% BB% E5% 83% 8F% E3% 81% 8B% E3% 82% 89% E3% 83% 87% E3% 83% BC% E3% 82% BF% E3% 82% BB% E3% 83% 83% E3% 83% 88% E3% 82% 92% E4% BD% 9C% E6% 88% 90% E3% 81% 99% E3% 82% 8B% E6% 96% B9 /)

Cette fois, j'ai utilisé 4 dossiers d'images. Deux hommes et deux femmes.

Pour décrire le flux de création de cet ensemble de données en mots (1) Retirez les fichiers du dossier d'image un par un et mettez-les en niveaux de gris. (2) Obtenez le numéro d'index du dossier que vous avez extrait lors de l'extraction. ③ Changez l'image en niveaux de gris à votre taille préférée ④ ** Stocker dans la liste dans l'ordre de [image, numéro d'index du dossier contenant l'image] **

Point bouché

Lorsque je voulais récupérer les valeurs répertoriées dans (4), j'ai été surpris car je ne savais pas que si je préparais deux variables dans l'instruction for, je pourrais récupérer les données en en sautant une.

for feature, label in training_data:

De plus, je le laisserai comme note d'ici.

os.listdir(A)

Vous pouvez afficher la liste des fichiers en A.

os.path.join(A, B)

Vous pouvez générer un chemin qui combine A et B.

cv2.imread('données d'image')

Vous pouvez convertir les données d'image en un tableau.

enumerate(Nom de variable)

Lors de la récupération avec l'instruction for, elle peut être récupérée avec ** "élément de numéro d'index" **

try:
Expression conditionnelle
except:
   pass 

** Écrire une expression conditionnelle dans try + write pass in except = Passer même si l'expression conditionnelle de try vient **

Enfin, je ne pouvais pas écrire en japonais avec matplotlib. Affichage japonais de matplotlib sur Mac En référence à cet article, j'ai pu écrire en japonais.

import matplotlib as mpl
matplotlib.rcParams[‘font.family] = ‘AppleGothic’

Si vous écrivez ce code, vous pouvez l'écrire en japonais!

Défis futurs

Cette fois, je voulais vraiment découper uniquement les images des visages d'hommes et de femmes, mais je n'ai pas compris, donc pour le moment, j'ai créé un jeu de données avec les mêmes données.

Donc, je voudrais enquêter à nouveau pour créer un ensemble de données avec le processus de découpage uniquement du visage.

Résumé

Pour le moment, lorsque j'ai vérifié si les ensembles de données étaient séparés, cela fonctionnait. Quand je l'ai fait moi-même de cette façon, j'ai été impressionné de créer un ensemble de données comme celui-ci, et il y avait de nombreux endroits pour étudier.

Recommended Posts

Génération d'ensembles de données
Ensemble de données "Moving MNIST"
Génération artificielle de données avec numpy
Ensemble de données artificielles (fonction sinus)
Génération de données factices Python (édition d'adresse)
Définir la notation d'inclusion
Génération de données factices en forme de vent dans le processus de Markov
Le traitement des données
Analyse des données avant la génération de fonctionnalités titanesques de Kaggle
Examen de mathématiques, partie 1 (définition des questions et génération de données)