2011-03-16 2 views
0

Salut tout le monde, J'essaie de créer un programme en Java capable de lire les numéros de l'écran et de reconnaître les images à l'écran. Je me demandais comment je peux y parvenir? La police des nombres sera toujours la même. Je n'ai jamais programmé quelque chose comme ça, mais mon idée de comment ça fonctionne est de faire une capture d'écran du programme, puis de superposer l'image des nombres avec la section de l'image et de vérifier s'ils correspondent, en répétant cela . Si c'est la bonne façon de le faire, comment pourrais-je le mettre dans le code.Reconnaissance optique des caractères

Merci d'avance pour toute aide.

Répondre

0

Vous pouvez toujours former un réseau de neurones pour le faire pour vous. Ils peuvent devenir assez précis parfois. Si vous utilisez quelque chose comme Matlab, il a déjà des capacités pour ça. Apparemment, il existe une bibliothèque de réseau de neurones pour Java (http://neuroph.sourceforge.net/), bien que je ne l'ai jamais utilisée personnellement.

Voici un tutoriel sur l'utilisation neuroph: http://www.certpal.com/blogs/2010/04/java-neural-networks-and-neuroph-a-tutorial/

0

Vous pouvez utiliser un réseau de neurones, soutenir machine à vecteur, ou une autre construction apprentissage machine pour cela. Mais il ne fera pas tout le travail. Si vous faites une capture d'écran, il vous restera une très grande image dont vous aurez besoin pour trouver les caractères individuels. Vous devez également tenir compte du fait que la caméra ne peut pas être pointée directement sur le texte que vous voulez lire. Vous devrez probablement utiliser une série d'algorithmes pour verrouiller les bonnes parties de l'image, puis la sous-échantillonner de façon à ce que la taille devienne neutre.

Voici une simple applet Java que j'ai écrite pour cela.

http://www.heatonresearch.com/articles/42/page1.html

Il vous permet de dessiner sur une surface relativement importante et se verrouille sur votre personnage. Ensuite, il le reconnaît. J'utilise l'alphabet, mais les chiffres devraient être plus faciles. Le code source Java complet est inclus.

0

Une approche plus simple pourrait être d'utiliser la correspondance de modèle. Si les polices sont identiques, et/ou la taille (en pixels) est connue, alors la simple correspondance de modèle peut faire le travail pour vous. Si la taille de l'entrée est inconnue, vous devrez peut-être créer des copies d'images à différentes échelles et faire la correspondance à chaque échelle. Un avec la valeur extrême (le plus haut ou le plus bas selon la méthode que vous suivez pour la correspondance de modèle) est votre résultat. Follow this link for details

Questions connexes