Ceci est une ancienne révision du document !
Table des matières
YOLO with my own dataset
Cette page teste YOLO de MASK R-CNN vs YOLO vs Deeplab Xception
YOLO avec mes propres images
Nos images sont des images du sémaphore
Nous allons créer 27 classes des 27 lettres possibles.
Quel YOLO ?
- pjreddie/darknet les sources de YOLO darknet
- Détection avec YOLO v2 pour construire le dataset. L'auteur colle son logo dans des images du monde réel.
Implementations possibles
- Darknet Implémentation “officielle”
- AlexeyAB/darknet Fork du précédent, bien pour sa doc
- Darkflow Plus rapide que darknet mais pas de YOLO V3. C'est très bien pour commencer !
Création du set d'apprentissage
C'est la partie la plus facile pour un pro de l'image et de la couleur: c'est moi –> applaudissement !!
Création de 27 images pour 27 classes d'objets avec un canal alpha
Avec Blender et par un homo-sapiens Taille 40×40 Images en violet sur alpha, avec un sémaphore qui occupe toute l'image. Exemple pour le a: Les images sorties de Blender n'ont pas de canal alpha: passage dans Gimp pour faire un couleur (blanc) vers alpha. Il ne doit donc pas y avoir de blanc (ou de gris) dans la couleur du sémaphore !
70.000 images créées avec OpenCV
Images: 1024×1024
En insérant une des images ci-dessus sur un shot d'une video, avec variation taille position flou du sémaphore,
et en créant un fichier image.txt pour chaque image.png dans le même dossier, exemple:
shot_68000_n.txt pour shot_68000_n.png
Pour chaque fichier *.txt
<object-class> <x> <y> <width> <height>
Avec:
<object-class> - entier de 0 à 26 <x> <y> <width> <height> valeurs relatives de 0 à 1
320 * 320 avec un a
centre du a: absolute_x = 130, absolute_y = 140 absolute_height = 200 hauteur du a absolute_width = 200 largeur du a
0 (130/320)=0,40625 (140/320)=0,43752 (200/320)=0,625 (200/320)=0,625
ligne à écrire dans a.txt
0 0,40625 0,43752 0,625 0,625
Exemple
DARKFLOW
Avec ou sans GPU
- Détection d'objet avec YOLO implémentations et comment les utiliser avec ses propres données: darkflow sur GitHub
Dépendances
Sur debian 10 buster Requis:
- python 3.7
- tensorflow 1.0
- opencv 3
sudo pip3 install tensorflow sudo pip3 install numpy sudo pip3 install opencv sudo pip3 install pytest
Version:
- tensorflow 1.13.1
- opencv 4.0.0
Bazar
Chemins relatifs depuis le dossier root des sources:
Dans le fichier flow, corriger python en python3
#! /usr/bin/env python3