Веб-камера вместо мыши

shoot

Часть 1

Компьютерная мышь была изобретена в 1968 году. Это был огромный квадратный «утюг» на колесиках и представлял собой чисто лабораторную разработку. В серию компьютерные мыши пошли только в 1981 году, и стоили они как автомобиль. Изначально разработанная как дополнительное устройство ввода, компьютерная мышь постепенно стала практически самым важным устройством. Задумайтесь, ведь без клавиатуры вполне можно обойтись – все делается мышью. А теперь представьте, что вы не можете взять ее в руку или вообще не можете пользоваться руками. В таком случае компьютер для вас становится недоступен и единственное окно в мир закрыто. К счастью, уже давно ведутся разработки по активному использованию веб-камер в качестве дополнительного устройства ввода и управления. Для людей с ограниченными возможностями камера может заменить и мышь, и клавиатуру.

Алгоритм распознавания лиц уже относительно давно используется в цифровой фото- и видеоаппаратуре и в целом достаточно точен. В Интернете можно найти исходники кода для самостоятельного использования, если вы – программист. Исходя из этого, написать программу, которая, получая данные от веб-камеры, управляла бы курсором мыши, не представляет сложности. Главная трудность в том, чтобы максимально приблизить результат к естественному управлению указателем мыши и учесть все физические особенности среднестатистического человека. Протестировав несколько специализированных программ, я обнаружил две основные проблемы – это точность позиционирования курсора и способ имитации «клика» левой клавишей мыши. Первая проблема, видимо, возникает из-за того, что человеческая голова не такой точный инструмент, как рука. В обычной жизни нам нет необходимости аккуратно двигать головой в пространстве, поворачивая и наклоняя ее по миллиметру. Самые простые программы однозначно связывают точку на изображении и курсор мыши. С учетом задержки в обработке видео и, соответственно, опаздывающей реакции компьютера малейшее движение головы отправляет указатель на пол-экрана в сторону. Поэтому здесь нужна определенная сноровка для комфортной работы. Более сложные разработки учитывают эти особенности, компенсируют мелкие движения в пределах определенного диапазона, имитируют инерционное движение, плавно замедляя курсор.

Вторая проблема – это имитация нажатия на кнопку мыши. Самый простой вариант – это автоматическое постоянное «кликанье» через равные промежутки времени. Теоретически этого достаточно, однако есть вероятность, что сигнал о нажатии кнопки совпадет с моментом, когда курсор находится не там, где вы хотели. Более продвинутые системы учитывают скорость передвижения указателя и «кликают», когда он останавливается. Еще более сложные разработки используют интеллектуальное распознавание мимики, благодаря чему «кликать» можно глазами или ртом.

В странах, где индустрия обеспечения жизни лиц с ограниченными возможностями более развита, недорого продаются готовые программно-аппаратные наборы со специальной веб-камерой и даже с инфракрасным сканером, которые позволяют максимально точно получить антропометрические данные. В качестве альтернативного решения можно использовать универсальные программы, в большинстве своем бесплатные, работающие от любой имеющейся веб-камеры, подключенной к компьютеру. Хотя тут кроется еще одна сложность – не все разработки могут корректно работать с действительно любой камерой. Плюс в бесплатных программах, как правило, достаточно скудный набор функций. В качестве примера мы рассмотрим три бесплатных продукта и один платный. По сути, это практически все, что можно найти в Интернете из широко распространяемого программного обеспечения. В качестве аппаратной составляющей использовался бюджетный ноутбук ASUS со встроенной камерой. Тесты проводились над бесплатными Camera Mouse, HeadMouse и eViacam. KAR Disability – платная программа. С нее и начнем.

ЧИТАЙТЕ ТАК ЖЕ:  Илон Маск объявил об успешном вживлении чипа в мозг человека

С KAR Disability совершено неожиданно случилась интересная история. На официальном сайте отсутствуют какие-либо ссылки для скачивания пробной версии. К счастью, скачать дистрибутив можно в каталоге Softkey.ru. При установке программа сразу требует лицензионный код и без него устанавливаться отказывается. Общение с разработчиком, месье Александром Хоффманном, обнаружило, что у продукта действительно отсутствует демоверсия. Учитывая то, что программа предназначена для лиц с ограниченными возможностями, чья платежеспособность, по крайней мере у нас в стране, также ограничена, – это весьма странно. Однако в результате переписки господин Хоффманн согласился с моими доводами и пообещал постараться оперативно решить этот вопрос, за что ему большое спасибо. В результате у меня есть полнофункциональная версия, любезно и совершенно безвозмездно предоставленная автором, про которую я готов подробно рассказать, чтобы у заинтересованных потенциальных покупателей была возможность принять решение о покупке, хотя бы на основе этого обзора.

Интерфейс KAR Disability очень прост. Помимо стандартного для этого софта окна с изображением с камеры есть кнопка настроек, кнопка центрирования курсора и сворачивания окна. Два чек-бокса («галки») включают-выключают собственно функцию управления мышью через камеру и возможность имитировать «клики». В настройках камеры доступны, во-первых, системные настройки, то есть исходящие непосредственно от используемого драйвера конкретного устройства. Во-вторых, там вы найдете управление чувствительностью. От чувствительности, грубо говоря, зависит, насколько сильно надо крутить головой, чтобы сдвинуть курсор мыши или, наоборот, можно настроить программу так, чтобы указатель не дергался от малейшего движения человека. В принципе настройки по умолчанию вполне адекватные и изменять их нет необходимости.

В отношении качества обработки сигнала с камеры — KAR Disability мне очень понравилась. Установить указатель даже на мелкий объект (кнопка, пункт меню) и зафиксировать его на нем, чтобы произошел «клик», достаточно просто. Нет ощущения, что вы стараетесь управлять курсором силой мысли, как в других программах, а он не слушается – все происходит естественно. Кнопка центрирования указателя мне показалась не особо полезной. Когда курсор начинает рассинхронизировываться с головой (это естественный процесс), то проще придвинуть его к краю и сдвинуть голову на нужный угол, чтобы по возвращении указатель оказался примерно в центре. Конечно, для такого способа управления нужна сноровка, так же как было и для ручной мыши, во времена ее появления. Просто руками пользоваться удобнее и привычнее. Хотя мы также поднимаем ее и передвигаем в сторону, когда указатель «уехал» за пределы возможности кисти руки.

Клики KAR Disability имитирует, я так понимаю, одним из самых популярных у разработчиков аналогичных программ способом. Он и прост в реализации, и удобен в использовании. «Клик» производится автоматически тогда, когда курсор останавливается на месте. Единственное, что осталось непонятым, – это почему «галка», отвечающая за эти клики по умолчанию, всегда выключена при запуске программы. Но, возможно, я что-то не так понял. В остальном нареканий нет, однако для полноты картины необходимо также подробно рассмотреть и другие программы для управления мышью с помощью веб-камеры.

ЧИТАЙТЕ ТАК ЖЕ:  Разница — шесть лет, но он считает ее мамой. Как солигорчанка стала семьей для инвалида с ДЦП

https://www.youtube.com/watch?v=l1aB-ONrx34

Часть 2

В первой части подробно была рассмотрена платная программа KAR Disability, которую можно приобрести в каталоге Softkey. Отсутствие демоверсии и наличие завышенной, на мой взгляд, цены сильно затрудняет принятие решения о покупке. Тем не менее радует то, что программа действительно не требовательна к аппаратному обеспечению. Я надеюсь, что обзор ее возможностей, написанный по результатам тестирования полнофункциональной версии, любезно предоставленной ее разработчиком, господином Хоффманном, поможет пользователям хотя бы заочно ознакомиться с этой программой. Однако в Интернете существуют и бесплатные аналоги, отличающиеся по качеству и возможностям. Им и посвящена вторая часть обзора.

Следующей программой, которую очень хотелось посмотреть, была HeadMouse. Заявленная возможность использовать мимику для управления нажатием кнопок мыши выгодно отличает эту программу от других разработок. Однако чуда не случилось. Ни одна из версий HeadMouse не «увидела» встроенную камеру и работать отказалась. Причем в недрах Интернета я нашел страницу испанского каталонского университета, кафедра робототехники которого занимается проблемой распознавания изображения с камеры. И среди результатов тестирования была таблица с анализом опытов как раз над HeadMouse третьей версии. Из этих данных стало понятно, что программа принципиально не работает с камерами, интегрированными в ноутбук, – только с отдельно подключаемыми через USB устройствами.

Вторым претендентом стала также бесплатная разработка — Camera Mouse. Судя по официальному сайту программы, это весьма «раскрученный» проект, для которого различные программисты пишут дополнения, расширения и плагины. Поэтому в плане возможностей, настроек и различных дополнительных функций Camera Mouse наиболее развита. Она предоставляет различные способы включения и отключения использования камеры, автоматический режим позиционирования точки отслеживания, варианты переключения режимов программы, в том числе и без использования клавиатуры. Под точкой отслеживания подразумевается небольшая область на изображении, за передвижением которой программа следит и производит сопряжение ее с курсором. Разработчики рекомендуют отметить внутренний угол глаза, мне удобнее было использовать нос. Но в принципе этот метод позволяет управлять мышью вообще любым предметом, двигающимся перед камерой (это я тоже проверил). Таким образом, похоже, что Camera Mouse вообще не распознает ни голову, ни лицо, а просто следит за объектом, «видимым» ею через веб-камеру.

https://youtu.be/4FhxDj2udzU

Помимо самой программы на официальном сайте вы найдете множество дополнительных разработок, призванных облегчить использование мыши через камеру, а также ссылки на дружественные проекты. Там есть интересные экранные клавиатуры (только с латиницей), модификаторы, помогающие имитировать двойной клик, drag-n-drop, скролл и другие операции с мышью. Есть несложные игры, основанные на использовании веб-камеры. Однако лично мне показались все эти дополнения слишком сложными. Хотя, конечно, если нет возможности пользоваться руками, то любой альтернативный вариант будет лучше, чем ничего. Второе, что сразу обращает на себя внимание, – «дерганость» курсора. Это как раз тот случай, когда точно установить указатель очень сложно, так как он двигается и дрожит от малейшего поворота головы. В программе есть функция смягчения движения, но она, как написано в самой программе, делает движения курсора более плавными за счет потери точности позиционирования. «Клики» в программе имитируются путем передачи непрерывного сигнала нажатия клавиши мыши через равные промежутки времени, когда курсор неподвижен.

ЧИТАЙТЕ ТАК ЖЕ:  Паралич побеждён: помог искусственный спинной мозг

И, наконец, последняя программа – eViacam. Она очень похожа на KAR Disability и по интерфейсу, и по работе. Курсор позиционируется также достаточно точно, «клик» производится либо при остановке курсора, либо можно включить непрерывное «кликанье». При использовании программы на экране постоянно присутствует очень полезная панель с крупными кнопками, позволяющая переключать режимы «клика» (двойной, перетаскивание и так далее). Однако оказалось, что у eViacam используется какой-то особый алгоритм распознавания. На картинке это выглядит как большая рамка вокруг вашей головы, без видимой связи с ней, как у других программ. Субъективно отличие состоит в том, что другие программы все-таки «видят» лицо. eViacam же постоянно сбивается и теряет голову, в прямом смысле этого слова. Рамка уползает в сторону, и приходится останавливаться и давать возможность программе исправиться. Возможно, именно по этой причине разработчики сделали мастер настройки, который просит вас покрутить головой в указанных направлениях, чтобы программа лучше распознала объект слежения. Но и это не сильно помогает.

В начале работы над обзором, пока я ждал ответа от автора KAR Disability, именно eViacam я планировал отдать предпочтение. На втором месте была Camera Mouse. Но, проведя более подробные тесты, пришлось изменить мнение. KAR Disability стала безусловным лидером, Camera Mouse так и осталась на втором месте, а eViacam пришлось опустить на третье, так как пользоваться ею очень неудобно из-за несовершенства алгоритма распознавания. Хотя во всем остальном она ничем не уступает KAR Disability и даже превосходит. HeadMouse, как вы понимаете, пришлось снять с соревнований и дисквалифицировать без оглашения результата. Исходя их всего вышеописанного, я все-таки могу порекомендовать KAR Disability для использования. Она проста и надежна, хоть в ней и отсутствуют какие-либо дополнительные возможности, как в других разработках. Остальные программы можно использовать в качестве полноценной альтернативы. В любом случае лучше их все протестировать на конкретном оборудовании. Вполне возможно, что с другой веб-камерой программы ведут себя иначе.

И последнее, о чем хотелось сказать, это о цене на лицензию для KAR Disability. Конечно, как программа она субъективно действительно лучше рассмотренных бесплатных аналогов. Однако выставленная цена, в 2-3 раза превышающая среднее пособие по инвалидности в России, перечеркивает все ее достоинства. Понятно, что пользоваться компьютером проще, если рядом есть заботящийся человек, который поможет нажать нужную клавишу и купит необходимое программное обеспечение. Однако хочется пожелать разработчику KAR Disability пересмотреть ценовую политику, о чем непременно будет упомянуто в письме, уведомляющем (по его просьбе) о публикации данной статьи. Надеюсь, он прислушается.

https://youtu.be/5nAOiB9TrW0

Иван Афанасьев

Источник: softkey.info

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *