Vision par ordinateur
OCR Sudoku Solver
De la photographie d'une grille à sa résolution automatique.
PROARKHEL'origine
Le projet
Le but était de partir d'une simple photographie d'une grille de Sudoku et d'arriver à sa grille résolue. Entre les deux, l'application devait nettoyer l'image, retrouver la grille, isoler chaque case, reconnaître les chiffres puis afficher le résultat.
Ce qui rendait le projet intéressant était l'obligation de comprendre les opérations au lieu de s'appuyer sur une bibliothèque qui aurait déjà tout fait. Chaque étape influençait directement la suivante.


Ce que j'ai construit
Ma partie concernait la géométrie de l'image : rotation manuelle et automatique, homographie et interpolation bilinéaire. L'objectif était de remettre une photo prise de travers dans une forme suffisamment régulière pour que la détection des cases et la reconnaissance fonctionnent correctement.
Pour la rotation, j'ai travaillé avec une succession de shears afin de limiter la perte de qualité. L'homographie permettait ensuite de corriger la perspective, puis l'interpolation bilinéaire servait à recalculer proprement les pixels lors des redimensionnements.
Cette partie avait quelque chose de très concret : je pouvais afficher chaque image intermédiaire, comparer le résultat attendu au résultat obtenu et remonter jusqu'à l'opération qui déformait encore la grille. Le débogage devenait presque une enquête visuelle plutôt qu'une simple lecture du code.

Mon rôle
Développement de la rotation manuelle et automatique, de la transformation homographique et de l'interpolation bilinéaire afin de corriger la perspective tout en limitant la perte de qualité.
Ce que j'en retiens
J'ai compris sur ce projet à quel point une chaîne de traitement dépend de ses premières étapes. Une petite erreur de rotation ou de perspective pouvait devenir un échec de reconnaissance beaucoup plus loin dans le programme.
C'était aussi une bonne manière de relier des notions mathématiques assez abstraites à un résultat immédiatement visible sur une image.

Environnement technique