Idées de choses à faire par Max

  • Essayer d'implémenter un petit réseau de neurones convolutif pas trop compliqué.
  • Essayer de reconnaître les coordonnées de la position du sémaphore (un quadrilatère entourant le sémaphore sur l'image) en plus de sa valeur.
  • Essayer de reconnaître la forme du sémaphore plutôt que l'associé à un symbole : Reconnaître la position du régulateur et des 2 indicateurs. Les buts étant de pouvoir changer l'alphabet sans réapprendre, et de pouvoir dessiner un sémaphore schématique tel que reconnu par l'IA.
  • Essayer de reconnaître plusieurs sémaphores simultanément. Le but est de pouvoir choisir lequel on veut pouvoir imiter.

Idée directrice

Réaliser 2 apprentissages indépendants pour faciliter l'apprentissage et ajouter du filtrage intermédiaire. Je propose de réaliser un premier apprentissage qui reconnaîtrait la position d'un sémaphore dans une image. Il retournerait ses coordonnées. Le second apprentissage reconnaîtrait la forme d'un sémaphore dans un cadre particulier.

Je vois plusieurs avantages :

  • Nous savons que dans une vidéo, un sémaphore ne peut pas se promener d'un bout à l'autre d'une frame de manière discontinue. On peut donc facilement filtrer les faux positifs de détection d'un sémaphore du premier apprentissage qui se déplaceraient de manière discontinue.
  • Une fois la première reconnaissance réalisé il est facile de recadrer l'image en entrée et la présenter dans un format particulier au second apprentissage (ex: 40px x 40px).
  • Il est plus facile d'apprendre à détecter plusieurs positions de sémaphore simultanés que de reconnaitre la forme de plusieurs sémaphore simultanément.
  • Si nous reconnaissons plusieurs sémaphores simultanément, nous pourrons lancer un traitement de reconnaissance de leur forme pour chaque détection indépendament.
  • Un filtrage intelligent pourrait comprendre qu'un sémaphore est occulté par un obstacle mouvant avant d'etre de nouveau visible.

Petit réseau convolutif

  • En entré, il faudrait une première couche identique, et une deuxième couche qui n'est pas relié à tous les neurones de la première couche, mais uniquement à un ensemble représentant une tuile. Il faut donc modifier l'algo actuel qui relie toujours tous les neurones de la couche N-1 à tous les neurones de la couche N.
  • Comment paver l'image de tuiles ? Est ce que les tuiles doivent se chevaucher ? Il serait interessant de variabiliser la taille des tuiles et leur chevauchement.

Reconnaître les coordonnées du sémaphore

  • Il faut lors de la génération des images ajouter une méta information dans l'image indiquant dans les coordonnées d'un quadrilataire inscrivant le sémaphore.
  • Quels types de coordonnées ? Les coordonées de 2 angles opposés ? les coordonées d'un angle et 2 distances ? autre ?
  • Comment modifier la sortie du réseau de neurones pour reconnaître le couple (position du sémaphore, valeur) ?

Reconnaître la forme du sémaphore

  • Plutôt que de tagger l'image avec un symbole, il faudrait la tagger avec la forme du sémaphore.
  • Quels informations pour coder la forme ? Les 3 Angles absolue du régulateur et des indicateurs ?
  • Comment modifier la sortie du réseau de neurones pour reconnaître le couple (position du sémaphore, forme du sémaphore) ?

Reconnaître plusieurs sémaphores

  • Comment modifier la sortie du réseau de neurones pour reconnaître plusieurs couples (position, forme) ?
  • idees_de_choses_a_faire_par_max.txt
  • Dernière modification: 2019/09/30 20:45
  • par serge