Reconnaissance de caractères (ocr)

Description

Bonjour, voici maintenant une source dans un domaine que je n'ai pas encore testé, la reconnaissance de caractères. Mais qu'est-ce que c'est ? C'est le fait de reconnaître un caractère depuis une image. Par exemple, vous avez une image bitmap qui contient un gros caractère (genre 'A', 'B', 'c', ...). OK, mais pour obtenir le caractère dans une variable Char, vous n'allez pas faire un transtypage ^^. Il faut déployer certaines techniques pour arriver à reconnaître des caractères.
Celle que je vous propose ici est celle à laquelle on pense en premier. Voici le principe :

1. On crée des modèles de référence qui contiennent les informations de reconnaissance de chaque caractère.
2. Le gars dessine son caractère.
3. On convertit son dessin en un modèle.
4. On compare ce modèle avec chaque modèle de référence.
5. On prend celui qui ressemble le plus.
6. Et voilà, on a reconnu son caractère !

C'est cette technique que vous trouverez dans le zip, avec de nombreuses explications.
Les composants visuels Tangent sont utilisés dans cette application et sont créés dynamiquement (pas besoin d'installer ces composants, lancez juste l'application et compilez, ils seront créés tous seuls !).

Note : si votre caractère est vraiment très mal fait, le logiciel ne le reconnaîtra pas. Les modèles de référence sont basés sur des caractères en Arial, donc pensez en Arial, ne faites pas de la calligraphie ! Et si ça ne fonctionne pas au début, vous pouvez aller voir dans Modèles => Voir un modèle pour voir la forme des caractères Arial tels qu'ils sont enregistrés dans les modèles de référence.

De plus, cette application prend en charge le centrage du caractère. Par exemple, si vous dessinez votre caractère un petit peu trop à gauche, le logiciel le remettra droit (si vous n'avez pas désactivé l'option dans les menus) pour minimiser les dégats.

Ce logiciel convertit caractère après caractère. Vous pouvez vous amuser à faire des phrases avec, en vous rappellant que une image vide représente un espace.

Dernier point pour cette description, comment le logiciel fait-il pour comparer des modèles ? Il se base sur un algorithme de points, c'est-à-dire qu'il commence à 0, et gagne ou perd un certain nombre de points selon la ressemblance du comparant avec le comparé. Vous pouvez voir les points de chaque caractère dans la fenêtre secondaire. Le caractère qui a le plus grand nombre de points est adopté. Si tous les caractères ont 0 points, le caractère n'est pas reconnu (sauf si le logiciel a su que l'image était vide, donc espace).

Source / Exemple :


// In the zip !

Conclusion :


Alors voilà, tous commentaires, remarques, critiques, conseils, etc ...

Cordialement, Bacterius !

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.