Ben tout est dans le titre : c'est un réseau de neurones artificiels de type MLP ( perceptron multi-couches ) qui permet ici de reconnaitre des formes dessinées par l'utilisateur à l'écran ( pour le moment 3 types : cercles , rectangles/carrés , et triangles ), mais qui peut être utilisé pour des lettres, chiffres...
Ce réseau n'est pas parfait à 100%, il fait des petites erreurs de temps en temps, mais c'est du au fait que je n'ai pas encore eu le temps de lui donner une base de donnée plus grande ( 256 modèles ici ) ni de le laisser apprendre plus longtemps ( mais ça vous pouvez le faire , ça fait partie des fonctionnalités du programme d'ailleurs ).
Le code n'est peut-être pas très optimisé, donc si vous avez des remarques là-dessus elles sont bienvenues...