2012-09-12 15 views
5

Sto affrontando un problema con un gioco in Flash e non so se quello che voglio rendere possibile o no.Gioco di disegno Flash AS3

Sto provando a creare un gioco per bambini in Flash, utilizzando l'AS3, in cui il bambino deve disegnare una forma simile a quella attualmente sul palco. Ad esempio, c'è una lettera "a" e il bambino deve disegnare qualcosa di simile ad esso.

La mia domanda è se c'è un modo per verificare se la forma disegnata dal bambino è simile alla forma sul palco e come posso farlo.

+1

Vedere la prima teoria di riconoscimento del modello su http://en.wikipedia.org/wiki/Pattern_recognition – Lunik

risposta

0

Sì, è possibile.

Probabilmente si desidera tenere traccia delle coordinate x, y del mouse (se si usa il mouse per disegnare), quindi tradurre i valori nella forma a cui è abbinato.

Quindi avere una sorta di controllo degli errori. Per esempio confronta la dimensione dell'area della forma disegnata dal giocatore con la forma data e altre cose.

Un altro potrebbe essere angoli tra le linee tracciate e la media di essi. Quante linee sono state disegnate, ecc. Sarebbe carino, credo.

È possibile ottenere questo semplicemente controllando i colori dei pixel e definire dove c'era un disegno e dove non c'è (cioè sfondo bianco).

Spero che questo aiuti.

2

Vorrei prendere le due immagini e ridurle a una risoluzione molto inferiore ... come una griglia di 16 x 16, o giù di lì. Segna ogni punto della griglia come attivo o disattivo (disegnato o non disegnato).

Quindi sovrapponi uno sull'altro e osserva quanti punti sono impostati in uno e non in un altro. Se è superiore a una soglia, contrassegnala come non corrispondente.

È possibile migliorare l'algoritmo ridimensionando l'immagine disegnata. Trova i pixel più in alto e quelli più in basso in entrambi, e ridimensiona l'immagine disegnata in modo che corrisponda alla prima immagine. Potresti fare lo stesso con la larghezza. In questo modo un giocatore non sarebbe penalizzato per aver disegnato una buona, ma più piccola, versione dell'immagine.

Un altro miglioramento sarebbe fare paragoni multipli, spostando l'immagine disegnata da sinistra a destra, su e giù, prendendo la corrispondenza "migliore". In questo modo non sarai penalizzato per aver pareggiato qualcosa dal centro.

È tutto un po 'hacky, ma penso che sia probabilmente più utile seguire questa strada piuttosto che cercare di incorporare la logica per analizzare i tratti e altri algoritmi basati su OCR o gesti.

Problemi correlati