2011-11-02 13 views
5

Estoy trabajando en un juego para Android que utiliza gestos como entrada. Tengo una demostración en funcionamiento, pero el reconocimiento de gestos parece demasiado liberal (por ejemplo, hay muchos falsos positivos), y como estoy considerando una biblioteca de gestos de aproximadamente 30, este será un problema mayor cuando añado en nuevos gestos.Android Score de predicción de gestos Rango

La documentación oficial está aquí:

http://developer.android.com/resources/articles/gestures.html

Dice:

En este ejemplo, la primera predicción se toma en cuenta sólo si es la puntuación es superior a 1,0. El límite que usa está completamente arriba de , pero sepa que los puntajes inferiores a 1.0 suelen ser partidos pobres.

Bien, eso es genial, pero ¿cuál es el rango de valores de prediction.score? Ni esta página ni los javadocs parecen proporcionar un rango de valores. ¿Alguien aquí lo sabe? Tendré que ajustar los valores de todos modos, pero sería bueno tener un punto de referencia para mis conjeturas, y esto parece una extraña supervisión de la documentación.

+0

No sé si esto puede ayudarlo, pero Cyanogenmod implementa gestos en diferentes lugares del sistema operativo (pantalla de bloqueo, sms, etc.) y le permite al usuario establecer una sensibilidad del 1 al 12. – rciovati

Respuesta

4

No hay un límite superior en el rango de prediction.score. Una buena forma de hacer coincidir un gesto suele ser ordenar las predicciones disminuyendo la puntuación, y si el primer gesto tiene una puntuación> 1, tiene una buena coincidencia.

+0

Gracias por la respuesta. El problema es encontrar una buena coincidencia menos que las coincidencias que se aplican con demasiada liberalidad. Por ejemplo, tengo un gesto bastante distinto que implica mover hacia la derecha, girar alrededor y hacia abajo, y luego volver a la esquina superior izquierda en diagonal. Obtengo puntuaciones de predicción superiores a 1.0, simplemente para garabatos y, a veces, para un simple deslizamiento de izquierda a derecha. ¿Cuál es el procedimiento recomendado para hacer que las coincidencias se apliquen más estrechamente, en lugar de más ampliamente? – polyclef

2

Me encontré con un desafío similar recientemente y escribí mi experiencia y conclusiones en this question. Para mí, se redujo a la experimentación con SEQUENCE_SENSITIVE y ORIENTATION_INVARIANT. Espero eso ayude.

0

Lo mejor que puedo decir es que cuanto más complicado sea el gesto, más alto será el puntaje posible. Por ejemplo, una línea recta directamente a la izquierda nunca puede obtener un puntaje de gesto coincidente de más de 1,8, sin embargo, un gesto con una marca de verificación puede obtener puntajes en la parte superior de la adolescencia si las partes proporcionales son perfectas, etc. Mi suposición sea ​​que cuanto más complicado es el gesto, mayor es la confianza que puede tener en la predicción.

Evaluaría qué puntajes son apropiados por gesto. Si el gesto es una línea recta, solo puede buscar una puntuación de ~ 1.2 o superior, pero si está dibujando una estrella o una caja o algo así, tal vez requiera una puntuación más alta para reducir los falsos positivos. De cualquier forma, evalúe por gesto qué puntaje es apropiado para el punto de corte.