Как легко сравнить 2 линии, сделанные из точек в пространстве? - PullRequest
0 голосов
/ 04 марта 2019

Я бы хотел сравнить упорядоченные точки в пространстве, чтобы распознать жест.Я записываю положение руки пользователя, когда он перемещает ее в пространстве.Я только хочу создать простое доказательство концепции.Похоже, ИИ - лучший способ получить конечный продукт, но прежде чем я углублюсь в это, есть ли хороший алгоритм для сравнения двух линий, состоящих из точек в пространстве?В идеале, если это даст мне процент сходства.

Проблемы, с которыми я сталкиваюсь при наивной реализации вычисления расстояний между каждой парой точек, состоит в том, что точки не обязательно выровнены.Пользователь может начать несколько пунктов рано или слишком поздно, и идеальное выравнивание нарушено.Любые советы?

1 Ответ

0 голосов
/ 07 марта 2019

Мое решение - просто грубая сила.Я сделал регулярное линейное сравнение.Затем я провожу его через переменную длину массива (исключая первые несколько точек, если игрок начинает жест слишком рано), сравнивая только до самого короткого массива.После этого происходит второй цикл проверки расстояния между повернутыми вариациями записанного жеста.Производительность, конечно, ужасна, но благодаря некоторой оптимизации она вполне пригодна для использования.Например, не проверять остальную часть массива, если он уже слишком далеко.Это также очень легко нарезается.

...