Править Аффинная инвариантность, по-видимому, требует этой версии кривизны.
http://en.wikipedia.org/wiki/Affine_curvature#Affine_curvature
Предположим, это то, что я имею в виду. (Хотя нормальная кривизна, я думаю, инвариантна к поворотам, которые могут быть достаточно хорошими).
Редактировать версию кривизны в инвариантном масштабе смотрите здесь
/math/1329/what-is-the-form-of-curvature-that-is-invariant-under-rotations-and-uniform- Скали
Проблемы распознавания жестов являются подклассом проблем распознавания, а проблемы распознавания - это, в основном, проблемы сравнения моделей.
Вы пытаетесь приспособить свой жест к некоторой коллекции жестов, лучший жест побеждает.
Я бы записал ваш жест несколько раз и попытался бы согласовать ваши тренировочные данные с чем-то вроде b-сплайна (кривой). Возможно, вы хотите, чтобы ваши жесты были инвариантны к аффинным преобразованиям (вращение, масштабирование, перемещение), поэтому сохраняйте кривую в виде таблицы значений кривизны (вряд ли она будет иметь хорошую замкнутую форму), в отличие от декартовых координат элемента управления точки.
Это модель жеста. Допустим, у вас есть несколько.
Чтобы сравнить их, начните с подгонки ваших входных данных, а затем оцените кривизну x количество раз, где x дает хороший компромисс между точностью и производительностью.
Теперь выполните итерацию по моделям и вычтите значения кривизны (оцениваемые в одной и той же точке вдоль соответствующих кривых с точки зрения длины дуги) и возведите в квадрат разницу. Полученное значение называется остаточным. Суммируйте все остатки. Модель с наименьшими остатками подходит лучше всего и является вашим наиболее вероятным жестом.
Сравните мой ответ с @ Olie's. Они в основном одинаковы, хотя мы выбираем разные модели для жеста (построение таблицы кривизны со знаком и запись изменения угла касательной практически одинаковы, я предполагаю, что данные генерируются сглаженным кривая с шумом, хотя), главное отличие в том, что @Olie включает скорость.
Выбор параметров для включения в модель зависит от ситуации и требований к производительности. Имейте в виду, что добавление параметров в вашу модель увеличивает размерность.