Бесконтактные интерфейсы: компьютер под управлением взгляда
В последние годы на рынке появилось множество относительно дешевых бесконтактных устройств ввода, управляемых взглядом. Ориентированные главным образом на людей с ограниченными возможностями, они тем не менее нашли применение в играх, смартфонах, цифровых фотоаппаратах и прочей бытовой технике и весьма вероятно, что со временем смогут стать популярными и в повседневной жизни обитателей офисов.
Зародившись в недрах военных лабораторий, бесконтактные интерфейсы наконец-то вырвались на оперативный простор потребительского рынка, потеснив мышь и отчасти клавиатуру. Однако подавляющее большинство пользователей даже не подозревает о наличии подобных устройств в открытой продаже. Между тем их цена стремительно падает, составляя в среднем 100 долл., что сопоставимо со стоимостью хорошей клавиатуры.
А ведь какой-то десяток лет назад на этой теме висел ярлык секретности и, хотя гражданские институты разных стран раскрутили ее независимо от военных, в открытой печати принципы работы бесконтактных интерфейсов описаны очень поверхностно — с ошибками, белыми пятнами и недоговоренностями, с которыми приходится сталкиваться каждому, кто пытается реализовать подобное устройство самостоятельно. Немного забегая вперед, отметим, что для этого потребуется Web-камера среднего класса и умение программировать на любом языке программирования...

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

Система управления взглядом должна уметь с максимальной точностью определять центры глаза и зрачка
Смещение зрачка относительно центра глаза достаточно просто регистрируется видеокамерой с любым (разумным) линейным разрешением и легко обрабатывается, а вот определить ориентацию головы алгоритмическим путем не так-то просто. Создатели первых систем наведения, используемых в реактивных истребителях, нашли весьма элегантное решение проблемы, вмонтировав видеокамеру непосредственно в шлем, одетый на пилота, в результате чего при повороте головы относительное положение камеры остается неизменным, поскольку камера поворачивается вместе с самой головой. А дальше, как говорится, дело техники. Закрепляется еще одна камера под самолетом и синхронизируется ее движение с движением шлема. Зная расстояние от глаза до камеры и определив относительное смещение зрачка, вычисляется угол направления взгляда через простые тригонометрические функции (которые в процессорах первых поколений были представлены в виде предвычисленных таблиц, так как сопроцессоры тогда были довольно дорогим удовольствием).
Снимаем изображение с камеры под самолетом и находим объект, находящийся на заданном угловом расстоянии относительно оптической оси, после чего увеличиваем его и обрамляем прямоугольником, захватывая цель и автоматически отслеживая ее перемещение. После чего пилоту остается нажать большую красную кнопку типа гашетки, и ракета со свистом накроет цель по полной программе. Просто, быстро, удобно, надежно, а главное, руки свободы (в смысле заняты управлением самолетом). До этого момента экипаж самолетов подобного класса состоял как минимум из двух человек — один крутил штурвал, другой — стрелял по врагам, что увеличивало габариты кабины и отрицательно влияло на ТТХ всего летательного аппарата, которому в боевых условиях приходилось не только летать, но и падать.
Ну, самолеты — это понятно. А вот компьютеру подобная техника зачем... Действительно, большинство пользователей крайне скептически относятся к бесконтактным интерфейсам типа голосового управления и прочих «извращенных» инноваций. Они эффектно смотрятся на выставках, но при попытке практического применения открывается множество недостатков: низкая точность, ненадежность, большое количество ложных срабатываний и т. д. Все это дискредитирует саму идею бесконтактных интерфейсов, и публика, наигравшись с сырыми образцами, в спешке выброшенными на рынок, быстро утрачивает к ним всякий интерес. Между тем управлять чем-либо взглядом — не только быстро, удобно, но еще и чрезвычайно надежно. В правильно спроектированной и должным образом реализованной системе процент ложных срабатываний стремится к нулю.
Компьютер, управляемый взглядом
Заставить компьютер слушаться взгляда — намного сложнее, чем самолет. Поскольку, во-первых, требуется обеспечить более высокую точность позиционирования курсора, а во-вторых, в системе «голова – камера – монитор» все компоненты могут занимать различные положения. Человек откинулся в кресле, повернул монитор под другим углом, переставил камеру и... вся телеметрия идет коту под хвост, требуя перекалибровки.
На самом деле все эти трудности вполне преодолимы. Начнем с того, что монитор представляет собой плоскость, пространственное положение которой известно системе. Причем эта плоскость находится очень близко к человеку, настолько близко, что вступает в игру такое явление, как параллакс — человек имеет два глаза, разнесенных приблизительно на 10 см относительно друг друга, уставившихся в монитор, расположенный где-то в полуметре. Допустим, центр поля зрения расположен строго посередине монитора. Тогда нетрудно рассчитать, что левый зрачок будет смотреть под углом 6 градусов относительно линии, перпендикулярной плоскости монитора, а правый — под углом минус 6 градусов, что в совокупности нам дает 12 градусов. Весьма весомая величина, которую нетрудно измерять даже камерой низкого разрешения.

Использование эффекта параллакса для определения точки, на которую направлен взгляд, фиксируемый жестко закрепленной на мониторе видеокамерой
Напротив, при взгляде на бесконечно удаленный объект (каким, например, является танк с высоты полета истребителя) разница углов зрения стремится к нулю и параллакс в бортовых системах наведения — плохой помощник. При управлении же компьютером он превращается в основное средство, нивелирующее положение головы, ведь направление взгляда в этом случае определяется через разницу смещений зрачков относительно центра взгляда, которое остается постоянным при любой ориентации головы, правда, чрезвычайно чувствительным к изменению расстояния между головой и монитором. Но расстояние до головы (в отличии от ее пространственной ориентации) определяется по угловому промежутку между глазами. При приближении к монитору количество пикселей между ними будет возрастать, а при удалении – уменьшаться.
Измеряя линейное расстояние между глазами на снимке и смещение зрачков относительно центра, получаем самокалибрующуюся систему, не требующую облачения пользователя в шлем. Камера в этом случае закрепляется около монитора (сверху или сбоку — без разницы). Вращаясь вместе с монитором, она представляет единую систему, что позволяет выполнять все расчеты в абсолютной системе координат, привязанной к плоскости монитора. Естественно, необходимо учитывать геометрические размеры и текущее разрешение монитора, но это уже детали.
NaturalPoint trackIRT компании Today Eye Control Technologies, Inc. — популярное средство управления компьютера взглядом, основанное на параллаксе (сама фирма не разглашает технических деталей, но все секреты легко вскрываются дизассемблером)
Кстати говоря, LCD-мониторы в этом смысле более предпочтительны, поскольку лишены геометрических искажений и, что самое главное, размер изображения всегда совпадет с размером экрана. В CRT-мониторах последнее условие выполняется далеко не всегда, и, подкручивая ручки настройки, пользователь может варьировать размер изображения, ужимая или растягивая его как по горизонтали, так и по вертикали, причем ни видеокарта, ни операционная система об этом не имеют никакого представления и определяют эффективный размер экрана исключительно на основе заводских установок данного монитора, которые в общем случае не совпадают с реальными.
Типы систем управления взглядом
Самые совершенные и соответственно самые дорогие системы управления взглядом представляют собой камеру, закрепленную на голове (чуть ниже уровня глаз) и снабженную датчиками пространственного положения, за счет которых обеспечивается свобода перемещения человека относительно монитора (он может не только сидеть, но и ходить), а также высокая точность позиционирования, достигающая нескольких пикселей, что позволяет рисовать картинки, работать с картографическими приложениями и программами видеонаблюдения, быстро выхватывая взглядом подозрительных людей из толпы.
Основным минусом подобных систем (помимо высокой стоимости) является низкая «помехоустойчивость». Даже если оператор полностью сосредоточен, глаз все равно совершает множество хаотичных движений, непроизвольно бегая по всему полю зрения, причем в момент нервного напряжения или повышенной усталости интенсивность хаотичных блужданий резко возрастает. А поскольку «скорострельность» видеокамеры не бесконечна, система «усредняет» блуждание глаза и теряет управляемость, будучи не в состоянии отфильтровать сознательные перемещения от бессознательных.
Над решением этой проблемы ломают голову тысячи инженеров и ученых. Исследовательскому коллективу Фраунгоферского института в Германии (Fraunhofer's Institute Industrial Engineering team) как будто бы удалось создать фильтр, основанный на сложных психофизических моделях и отсеивающий большое количество помех (statistical average filter). Однако практические перспективы его применения до сих пор неясны, а описание самих алгоритмов фильтрации недоступно, так что широкой публике остается только гадать, как, собственно говоря, все происходит. В распространенном пресс-релизе упоминается всего лишь тот факт, что цвет кнопки, на которую направлен взгляд, дважды изменяется для получения подтверждения от пользователя (подробности смотри в новостном блоге http://blog.digitalhomemag.com/page/digitalhome?entry=eye_controlled_interaction_for_your). И это не самое лучшее решение, так как «мелькание» ошибочно распознанной кнопки тут же привлечет внимание пользователя, немедленно переводящего на нее взгляд. Даже небольшое количество ошибок вызовет сильное «мельтешение» всего экрана, приводящее к быстрой утомляемости и, как следствие, снижению точности наведения.

Фраунгоферский институт в Германии, в котором работает исследовательский коллектив по созданию бесконтактных интерфейсов, управляемых взглядом
Более дешевые системы используют камеру, закрепленную на мониторе и работающую по принципу параллакса. Точность наведения падает до десятков пикселей, и для работы, к примеру, в Photoshop'е они уже непригодны. Зато уверенно двигают мышку по кнопкам, меню и другим элементам управления. Пользователь может бродить по Сети, не отрываясь от чашки кофе, переворачивать страницы электронных книг, раскладывать пасьянс и даже играть в динамичные игры, правда, с последними система справляется уже на пределе, особенно если игрок нервно дергает головой во время игры.

Авиационный симулятор, поддерживающий систему управления взглядом типа NaturalPoint trackIRT
Есть и другие недостатки. Одновременная работа с несколькими мониторами, как правило, не поддерживается. Свобода передвижений пользователя весьма ограничена — даже небольшое (?) отклонение в кресле дезориентирует систему. Наконец, перед началом первого сеанса работы с системой каждый пользователь должен выполнять калибровку под себя, в процессе которой система зажигает в различных частях монитора мерцающие перекрестья, на которых необходимо сфокусировать взгляд, что занимает порядка 10 с. Вроде бы мелочь, но на персональных компьютерах коллективного использования здорово напрягает. Впрочем, все эти недостатки с лихвой перекрывает низкая цена. На Западе весьма популярен программно-аппаратный комплекс NaturalPoint trackIRT компании Today Eye Control Technologiesстоимостью 99 долл. за базовый комплект, позволяющий перемещать «мышиный» курсор взглядом (подробнее о комплексе на www.naturalpoint.com/trackir/ и www.naturalpoint.com/smartnav/corporate/press/03_20_01.html).
Комфорт и удобство
Бесконтактные интерфейсы стремительно развиваются, захватывая все новые и новые сферы рынка. Такого поворота событий не могли представить себе даже фантасты, мечтающие о голосовом управлении. Однако голосовой интерфейс и настольный компьютер — вещи несовместимые. Во-первых, бесшумные средства ввода более предпочтительны как в офисе, так и дома. Во-вторых, голосовой ввод представляет собой прямую разновидность командной строки, совершенно не вписывающейся в общепринятую оконную концепцию взаимодействия с компьютером, когда намного проще ткнуть в нужный пункт меню, чем озвучить его словами. В-третьих, голосовые системы управления изначально подвержены большому количеству ошибок, возникающих как вследствие нечеткой дикции оператора, так и посторонних помех. Попытки разместить несколько машин с голосовым интерфейсом в одном офисе до сих пор заканчивались неизбежным провалом.
Широкое внедрение систем управления взглядом не только повышает производительность труда, но и позволяет сократить количество производственных травм. В том, что будущее за бесконтактными интерфейсами, — можно не сомневаться!
Управление фокусом в фотоаппаратах
Большинство начинающих фотолюбителей, сменив «мыльницу» на цифровую или пленочную камеру среднего класса, тут же начинают гнать брак. Поскольку в отличие от «мыльницы», обладающей большой глубиной резкости, «нормальные» камеры требуют наводки на фокус, которая практически во всех моделях осуществляется автоматически. Причем если в моделях пятилетней давности было, как правило, всего три точки фокусировки, то теперь их количество зачастую достигает нескольких десятков, что позволяет встроенному процессору в 90% случаев угадать замысел фотографа, фокусируясь на объекте съемки, даже если он смещен относительно центра кадра.
Проблема однако в том, что в сложных сюжетах (а их, по статистике, не менее 10%) электроника «промахивается» и бьет мимо цели. Быть может, фотограф хотел снять девушку, перекрываемую слегка размытыми ветвями переднего плана. Как объяснить автоматике, что наводить фокус нужно не на ветки, а на девушку.
До сих пор приходилось либо переводить аппарат в режим ручной фокусировки (но далеко не на всех моделях он есть), либо отключать «лишние» точки фокусировки, оставив лишь одну (как правило, ту, что в центре), наводить на резкость, делать «lock» (то есть «захват») и перемещать фотоаппарат, компонуя кадровое пространство по своему замыслу. Технически прием простой, но требующий времени. В постановочной или пейзажной фотографии с этим недостатком можно и смириться, поскольку всегда есть возможность переснять объект. А вот репортажная и спортивная съемка требуют огромной оперативности и счет идет на доли секунды. И тут как раз управление взглядом очень помогает.
Некоторые производители уже выбросили на рынок модели, где выбор необходимой точки фокусировки осуществляется взглядом (например, Canon EOS-3 с функцией Eye Controlled Focus). Куда смотрит фотограф при нажатии кнопки затвора, туда и фокусируется фотоаппарат. Просто, быстро, удобно! Но есть существенный недостаток — достаточно высокая цена, сопоставимая со стоимостью фотоаппарата среднего класса, поэтому технология Eye Controlled Focus до сих пор остается прерогативой профессиональной техники. Впрочем, как показывает практика, высокие технологии с течением времени «приземляются».
Более подробную информацию о принципах действия Eye Controlled Focus можно найти на официальном сайте фирмы Canon — www.usa.canon.com/consumer/controller?act=CanonAdvantageTopicDtlAct&fcategoryid=111&id=2649.
 |
|
Крис Касперски
|
|
Специалист по компьютерной безопасности и сжатию
цифрового аудио/видео, системный программист,
участвующий во многих проектах (большей частью
под NDA) по анализу вредоносного программного
обеспечения, поиску “закладок”, разработке систем
защиты информации от несанкционированного досту-
па/копирования информации как в качестве рядового
сотрудника, так и руководителя отдела. В настоящее
время работает в компании Endeavor Security, Inc, а так
же занимается преподавательской деятельностью.
|
|
Keywords: zPOSTz zTECHNOLOGYz z10139z
Для Авторов: edit delete
Автор: Крис Касперски Дата: 30.09.2009 15:14:36©
|