7
votes

Reconnaissance de l'écriture de Cocos2D .... Comment ...?

J'essaie de faire une partie dans laquelle je lie pour mettre en œuvre la reconnaissance de l'écriture manuscrite,

Ce que je veux exactement, c'est que lorsque l'utilisateur glisse son doigt sur l'écran, une ligne doit être créée partout où il glisse le doigt et quand il soumet son doigt, je veux vérifier que l'image qu'il a créée correspond à n'importe quel alphabet (A , b, c ... z) et si oui alors à quel alphabet.

J'ai essayé de dessiner les lignes à l'aide de CGSPRITES, mais il conduit à une énorme goutte FPS et à une collision ultérieure de l'application si l'utilisateur empêche de glisser son doigt, mais je n'ai aucune idée de la reconnaissance.

Quelqu'un peut-il s'il vous plaît jusqu'à moi si cela est de toute façon possible, si oui pouvez-vous me fournir une idée de la manière de vous approcher.

Merci d'avance


2 commentaires

Heh ... c'est délicat. Vous êtes pour certains travaux. Du bon côté, pensez-vous que les scribblyenaudtes? J'achèterais ça :) ne voudrait pas le coder si lol. Ma meilleure estimation est que cela impliquerait beaucoup de mathématiques. Compter des coins, comptant les courbes. Vérification de votre commande une courbe et un angle relier dans, et quel angle (vecteur?) Le coin se passe ... etc.


Premièrement, l'accident - Avez-vous été testé pour voir combien de sprites vous dessinez? Ils poussent probablement de façon exponentielle lorsque vous vous glissez votre doigt! Deuxièmement, j'ai fait du travail dans la souris de base (ou la souris de la souris) gestuelle / reconnaissance de modèle il y a quelques années, a obtenu des trucs de base en utilisant des filets de neurones, mais c'était un monde réel de blessures - si j'étais dans votre position Recherchez une bonne bibliothèque établie ou recherchez un nouveau projet - bonne chance!


3 Réponses :


1
votes

Pour le dessin de la ligne, je suggérerais d'utiliser les appels OpenGL de base pour dessiner la ligne. Stockez les points Toutefois que vous souhaitiez avec chaque événement Touch Motionné, puis dans la fonction de tirage pour votre nœud, vous devez configurer OpenGL State pour répondre à vos besoins de dessin de ligne ...

ccDrawLine(pA, pB);


0 commentaires

0
votes

Je peux penser à trois solutions différentes.

  1. Utilisez une bibliothèque existante. Peut-être que vous ne trouverez pas l'un écrit dans l'objectif-c, mais que l'utilisation de toute bibliothèque C ou C ++ devrait également être facile. Par exemple, vous pouvez utiliser Amelia ou Toolkit LIPI .
  2. Écrivez un reconnaissance de gestes personnalisée pour les différentes lettres
  3. implémentez-le vous-même. Vous pouvez utiliser des réseaux de neurones ou supportez des machines vectorielles. Vous pouvez les former avec certains des jeux de données gratuits sur le net. Les modèles Markov sont également couramment utilisés pour résoudre ce problème. Cependant, sauf si vous voulez apprendre beaucoup de théorie et avoir une bonne connaissance des mathématiques, je ne recommanderais pas cette approche.

0 commentaires

1
votes

Pour dessiner la ligne, vous pouvez également utiliser CCCCON Définissez un CCCCBON et gardez une référence à elle Vous devez utiliser une image appropriée pour le ruban

CCCCONBON * LINE = [CCCCCONBON RUBONWITHWIIDHIID: Image: Longueur: Couleur: Fade:];

Puis dans votre gestionnaire tactile lorsque touch Déplace Ajoutez de nouveaux points à Ccrcbon

[ligne addpointat: largeur:];


0 commentaires