Intelligence artificielle (reconnaissance des formes)

Soyez le premier à donner votre avis sur cette source.

Vue 118 fois - Téléchargée 16 fois

Description

reconnaissance des formes :

1 - description :
Application utilisant les réseaux de neurones pour apprendre les formes créées.

le zip contient 2 versions de l'applications:
- une fonctionnant avec un module cython permettant un apprentissage
plus rapide mais nécessitant sa compilation.
- une fonctionnant sans le module cython.


2 - outils nécessaires pour faire fonctionner la version de l'application n'utilisant pas
le module cython :
Sous windows :
- version minimum de Python installée : 3.6
- modules Python intallés : Dill

Sous linux :
- version minimum de Python installée : 3.6
- paquets supplémentaires nécessaires :
python3-dev python3-tk python3-pip
- modules Python intallés : setuptools Dill


3 - outils nécessaires pour faire fonctionner la version de l'application utilisant
le module cython :
Sous windows :
- version minimum de Python installée : 3.6
- modules Python intallés : Dill, Cython
- compilateur C nécessaire pour la création du module Cython : mingw
- vérifier d'avoir Python et Mingw de même architecture :
-> si Python en 32bits alors Mingw en 32bits
-> si Python en 64bits alors Mingw en 64bits

Sous linux :
- version minimum de Python installée : 3.6
- packages supplémentaires nécessaires :
build-essential python3-dev python3-tk python3-pip
- modules Python intallés : setuptools Dill Cython


compilation du module Cython :
Sous windows :
- ouvrir l'invite de commande
- tapez : cd "répertoire du dossier de l'application"
- tapez : gcc -c learning_loop.c
- tapez : gcc -shared -o learning_loop.dll learning_loop.o
- tapez : py setup.py build_ext --inplace --compiler=mingw32

Sous linux :
- ouvrir un terminal
- tapez : cd "répertoire du dossier de l'application"
- tapez : gcc -c learning_loop.c
- tapez : gcc -shared -o liblearning_loop.a learning_loop.o
- tapez : python3 setup.py build_ext --inplace


4 - Lancement de l'application :
Sous windows :
- ouvrir l'invite de commande
- tapez : py Main.pyw

Sous linux :
- ouvrir un terminal
- tapez : python3 Main.pyw


5 - Fonctionnement de l'application :
- cadre "forme déssinée" :
- clique gauche de la souris -> créer un pixel
- clique droit de la souris -> éffacer un pixel précédemment créé
- tour de la molette -> changer le nom de la forme a corriger
- clique sur la molette -> corriger la forme sélectionnée

- cadre "forme reconnue" :
- Affiche la forme reconnue.

- Bouton "corriger" :
- corrige la forme dessiné dans le cadre "forme déssinée

- Bouton "apprentissage automatique" :
- apprend toute les formes créées.

- entrée "maximum d'itérations" :
- nombre maximum de corrections effectuées lors d'un apprentissage
automatique du réseau de neurones. Doit rester bas de préférence
lors d'un apprentissage d'une grande quantité de formes créées pour
ne pas paralyser l'application.

- entrée "valeur de correction" :
- valeur utilisée pour chaque correction de neurones lors de
l'apprentissage du réseau de neurones. doit être positive et rester
basse de préference pour un apprentissage rapide.

- Checkbox "Utiliser Cython pour l'apprentissage" :
- si cochée -> utilise le module Cython pour accélerer le temps
d'apprentissage lors d'un apprentissage automatique du réseau de
neurones.


6 - Suivis des versions :
- 14/08/19 :
v0.1 : code prêt à l'emploi mais pas encore commenté.


7 - Autres détails :
Le code a été organisé en suivant le design pattern : "model view presenter".

Si jamais vous rencontrez un problème avec l'application, ou si vous avez des
suggestions : n'hésitez pas à me le dire dans les commentaires.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.