Простая веб-мышь

Объект:- Как я могу реализовать веб-камеру с помощью видимого света.

Подробности:- там будет веб-камера, видящая мою правую руку в видимом свете, следующим образом https://stackru.com/images/56f56ca7125a621fe998306e1690fc9bcf3a6377.jpg:-

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

Предположим, у меня есть магическая система машинного обучения для этого. (Я могу принять все виды ограничений, таких как, постоянное положение камеры, постоянное перемещение мыши в ограниченном прямоугольнике и т. Д...)

На этапе обучения. На этапе обучения я буду использовать свою обычную мышь, как обычно, и генерирую большое количество данных. Данные будут состоять из большого количества изображений в качестве входных данных и, щелчка мыши, в качестве выходных данных. Я гибок во всем, как, например, я могу добавить два микрофона, чтобы определять звук щелчков, чтобы убедиться, что есть щелчок. (Но звук щелчка мыши от реальной мыши отличается от звука, когда я нажимаю пальцем на стол, чтобы имитировать щелчок мыши с моей невидимой мышью, но наличие звука будет гарантировать, что есть щелчок. И два микрофона удостоверится, что это щелчок левой или правой кнопкой мыши.) Теперь со всеми этими данными моя система узнает связь между изображением мои действия руки и мыши. (может быть, не очень точный в этой первой версии).

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

Пожалуйста, помогите мне, как мне это построить, я имею средние знания по компьютерному зрению и машинному обучению.

1 ответ

Не пытайтесь использовать алгоритм ML для изучения связи между изображениями и действиями мыши. Лучше определить несколько ключевых точек в вашей руке на тренировочных изображениях (например, центр вашей руки или кончик пальца). Чем обучить регрессора для поиска такой ключевой точки в изображении. Пример, где сходная задача решена (поиск ключевых точек лица, например, кончика глаза или носа): http://danielnouri.org/notes/2014/12/17/using-convolutional-neural-nets-to-detect-facial-keypoints-tutorial/

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

Наконец, вы используете свой обученный регрессор в "боевом режиме" - он распознает ключевые точки на изображении и необходимые действия выполняются в кодированном виде.