Способ управления устройством с помощью жестов и 3d-сенсор для его осуществления
Иллюстрации
Показать всеИзобретение относится к области бесконтактного взаимодействия пользователей с управляемыми устройствами. Технический результат заключается в увеличении разнообразия воспринимаемых жестов, включая одновременное восприятие крупных и мелких жестов, улучшении селективности распознавания жестов, минимизации времени, затрачиваемого на распознавание жеста и выдачу команды устройству. Такой результат достигается за счет того, что в окружающем пользователя пространстве выделяют сенсорную область, с каждой сенсорной областью ассоциируют один или несколько ожидаемых жестов и с каждой комбинацией сенсорной области и жеста ассоциируют одну команду, определяют положение глаз пользователя, положение его головы и положение его руки, определяют условную линию взгляда, исходящую из органа зрения пользователя и направленную в видимую пользователем точку окружающего пространства, проверяют, направлена ли условная линия взгляда на сенсорную область, анализируют подаваемый рукой пользователя жест и в случае, если жест подают одновременно с наведением условной линии взгляда на сенсорную область, то на управляемое устройство выдают команду, ассоциированную с данной комбинацией сенсорной области и поданного жеста. Для выполнения способа предлагается 3D-сенсор. 2 н. и 26 з.п. ф-лы, 5 ил.
Реферат
Область техники
Изобретение относится к области бесконтактного взаимодействия пользователей с управляемыми устройствами, а именно к управлению устройством, оснащенным 3D-сенсором, при помощи подаваемых пользователем жестов.
Уровень техники
Известны способы управления устройствами, позволяющие интерпретировать жесты оператора или пользователя как команды для управляемых устройств. Наибольшие возможности для управления жестами предоставляет бесконтактное трехмерное восприятие положения тела пользователя и движений частей его тела, таких как голова, детали лица, глаза, руки и ноги. Указанное трехмерное восприятие и выдачу управляющих команд на устройство, как правило, осуществляют при помощи 3D-сенсора или совокупности устройств, выполняющей функции 3D-сенсора.
Воспринимаемые 3D-сенсором движения пользователя интерпретируются как команда лишь в случае, если в упомянутых движениях удается распознать ожидаемое движение, так называемый командный жест.
Известные способы управления устройствами посредством жестов, как правило, ограничены в быстродействии и в разрешающей способности воспринимающей 3D-сцену аппаратуры, что в свою очередь ограничивает способность различать мелкие движения и мелкие части тела.
Поэтому известные способы управления позволяют реализовать управление мелкими движениями или мимикой лица только непосредственно вблизи 3D-сенсора, но при этом крупные движения, например движения рук и ног, остаются вне захватываемого кадра.
На средней и большой дистанции от 3D-сенсора - наоборот, крупные движения пользователя различимы, а мелкие, такие как движения пальцев, оказываются уже за пределом возможностей сенсора.
Другой недостаток известных способов - ограниченная селективность распознавания командных жестов. Под селективностью здесь подразумевается способность уверенно отличать один командный жест от другого, а также любой командный жест от прочих движений пользователя, не являющихся командными жестами.
При недостаточной селективности, 3D-сенсор способен неверно интерпретировать или не распознать командный жест, или же принять за командный жест непроизвольное движение пользователя.
Недостаток селективности в известных способах компенсируют путем введения специальных правил подачи командных жестов, например, пользователь вынужден перед подачей команды принять заранее определенную позу или делать определенное движение в течение нескольких секунд, чтобы привести 3D-сенсор в состояние ожидания командного жеста.
Другой способ компенсации недостатка селективности известных способов заключается в том, что пользователя ограничивают в скорости жестикуляции и вынуждают использовать только простейшие акцентированные, замедленные, легко узнаваемые и надежно отличимые один от другого жесты, а также избегать лишних движений.
Как требование дополнительных подготовительных движений, так и ограничения на движения причиняют пользователям определенные неудобства и требуют предварительного обучения обращению с 3D-сенсором.
Аналоги изобретения
Известна заявка на патент США №2010118123 "Карта глубин с использованием проецируемых образцов". Получаемая 3D-карта может быть использована для обеспечения пользовательского интерфейса, основанного на жестах, вместо использования элементов с тактильным интерфейсом, таких как мышь, джойстик и прочих устройств.
Согласно осуществлению изобретения, раскрытому в заявке, для создания 3D-карты объекта используется система, включающая осветительную установку, устройство захвата изображения и процессор. Осветительное устройство состоит из транспаранта с фиксированным образцом пятен и источника света, который сконфигурирован для освещения транспаранта и проецирования образца пятен на объект. Объектом является все тело или часть тела человека, такая как кисть руки. Устройство захвата изображения сконфигурировано для захвата изображения образца, содержащего проекцию образца на объект. Для обработки захваченного изображения и для создания трехмерной карты объекта устройство захвата изображения соединено с процессором.
Согласно одному из вариантов, устройство, формирующее изображение, проецирует образец пятен.
Процессор вычисляет 3D-координаты точки на поверхности объекта способом триангуляции, основанным на поперечном перемещении пятен в изображении образца, проецируемого на объект, относительно эталонного изображения.
Источник света представляет собой, например, точечный источник, такой как лазер. Оптическое излучение может быть любым, включая инфракрасный (далее в тексте - ИК) и ультрафиолетовый свет, а также видимое излучение. Транспарант зафиксирован в корпусе осветительного устройства и содержит образец пятен.
Устройство захвата изображения содержит оптический объектив, который фокусирует изображение на сенсор с набором элементов, таких как CCD или CMOS. Устройство захвата изображения может содержать полосовой фильтр, чтобы сенсор принимал только свет в полосе излучения источника света.
Работает система следующим образом. Источник света просвечивает транспарант оптическим излучением, проецируя изображение образца пятен на объект. Сенсор получает изображение объекта и передает его процессору, который формирует 3D-карту объекта и может, например, передать ее на дисплей.
Недостатком способа формирования 3D-карты путем проекции пятен является уменьшенное разрешение получаемой 3D-карты по сравнению с разрешением используемой светочувствительной матрицы.
Известна заявка на патент США №20100020078, в которой раскрываются система и метод для создания трехмерной карты объекта.
Система содержит устройство изображения, которое генерирует и проецирует множество лучей на объект и захватывает изображение, отраженное объектом.
Процессор изображения обрабатывает данные изображения, генерируемые устройством изображения, для воссоздания 3D-карты объекта. Термин 3D-карта относится к множеству 3D-координат, представляющих воспринимаемую системой поверхность объекта. Процессор изображения вычисляет 3D-координаты точек на поверхности объекта, определяя различие в интенсивности освещения. Процессор изображения может быть отдельным устройством или микросхемой в корпусе устройства изображения. 3D-карта, получаемая процессором изображения, может быть использована для различных назначений. Например, карта может быть направлена на выходное устройство, такое как дисплей. Если объект это тело или часть тела, например, кисть руки, система может быть использована для обеспечения основанного на жестах пользовательского интерфейса, для интерактивного управления приложением, вместо элементов с тактильным интерфейсом, таких как мышь или джойстик.
Устройство изображения содержит осветительную установку с двумя источниками света, которые одновременно или последовательно проецируют освещение на объект. Источники света могут излучать как когерентное, так и некогерентное излучение с любой длиной волны, включая ИК и ультрафиолетовое излучение.
Устройство захвата изображения получает излучение, которое отражается от объекта. Устройство захвата изображения содержит оптический объектив, который фокусирует изображение на сенсор, содержащий массив чувствительных элементов CCD или CMOS. Устройство захвата изображения может также содержать один или более полосовых фильтров, подобранных и расположенных так, что сенсор получает свет только в полосе пропускания, отфильтровывая внешнюю засветку, которая может снижать контрастность изображения проецируемого образца. Для составления 3D-карты процессор изображения определяет расстояние (z координату) различных точек (x,y) на объекте, основываясь на разнице в излучаемом и отраженном свете. Для этого необходимо, чтобы освещение источников отличалось.
Процессор изображения определяет яркость точки на объекте, освещаемой первым и вторым лучами. Координаты x и y соответствуют координатам пикселя на изображении. Z координата определяется процессором изображения путем сравнения интенсивности отраженных лучей.
Известна заявка на патент США №2010199228 "Набор текста жестами". Согласно описанию, система состоит из вычислительного средства и устройства захвата. Вычислительное средство может быть компьютером, игровой системой, консолью или подобным и может включать аппаратные и/или программные компоненты.
Согласно одному из вариантов изобретения, система может быть подключена к аудиовизуальному устройству, такому как телевизор, монитор, телевидение высокой четкости (HDTV), или к чему-то подобному. Например, вычислительное средство может включать видеоадаптер, такой как видеокарта и/или аудиокарта, такая как звуковая карта, которая может обеспечить аудиовизуальный сигнал. Аудиовизуальное устройство может быть подключено к вычислительному средству через, например, S-видеокабель, коаксиальный кабель, кабель HDMI, VGA кабель или подобное.
Устройство захвата может включать ИК-источник, трехмерную камеру и RGB камеру. Например, используя технологию "time-of-flight", можно замерить время между исходящим светом от ИК-источника и входящим светом и определить расстояние от устройства захвата до объекта в сцене.
Особенностью применения упомянутой технологии "time-of-flight" для определения расстояния от устройства захвата до объекта, то есть глубины, является хорошая точность определения больших значений глубины, но значительная погрешность в определении малых значений глубины, что лишает этот способ универсальности.
Согласно другому варианту изобретения, может быть использован структурированный свет для получения информации глубины. Образец сетки или полосы может быть спроецирован на сцену с помощью, например, ИК-источника. Попадая на объект, образец деформируется и захватывается 3D-камерой или RGB камерой. А затем может анализироваться для определения физического расстояния от устройства захвата до объекта.
Устройство захвата может дополнительно включать процессор, который может быть связан с компонентом камеры. Процессор может содержать, например, инструкции для получения глубины изображения, выполнять преобразование объекта в его скелетное представление. Также устройство захвата может дополнительно включать компонент памяти. Он может быть как интегрированным в процессор, так и быть отдельным компонентом.
Устройство захвата связано с вычислительным средством через канал связи. Это может быть проводная связь (например, USB соединение, Firewire соединение, кабельное Ethernet соединение) или беспроводное соединение.
Устройство захвата генерирует модель скелета и передает по каналу связи вычислительному средству, которое получает данные глубины для распознавания жеста пользователя для управления приложением.
Вычислительное средство может включать распознаватель жестов. Захваченные данные могут сравниваться с жестами в распознавателе, для управления приложениями.
Известен дисплей для определения жестов из заявки РСТ WO 2011011029. Система включает панель с поверхностью для отображения изображений и трехмерный оптический сенсор. Панель может быть жидкокристаллическим дисплеем, плазменным дисплеем электроннолучевой трубкой (CRT), OLED или проекционным дисплеем, например, DLP. Трехмерный оптический сенсор захватывает свет, отраженный от объекта. Источник света, освещающий объект, может быть, например, ИК или лазерным источником. Объектом может быть кисть руки пользователя или палец. Источник света может излучать структурированный свет, который проецирует на объект, например, сетку. Сенсор может также работать, например, по технологии "time-of-flight". По одному из вариантов изобретения трехмерный оптический сенсор может быть встроен в панель отображения, по другому - может быть внешним. Если кисть руки и пальцы пользователя находятся в поле обзора трехмерного оптического сенсора, свет от источника света отражается от объектов и просматривается сенсором, генерирующим данные, которые направляются контроллеру. Данные могут включать, например, координаты x, y, z пальцев и кистей рук пользователя. Если, например, пользователь хочет увеличить объект на дисплее, он должен сжать кулак и переместить его в z-направлении. Когда объект будет увеличен до желаемого размера, пользователь может открыть свой кулак, предотвращая дальнейшее увеличение объекта.
Трехмерный оптический сенсор может определить жест. Например, пользователь может переместить руку справа налево перед дисплеем, перелистывая страницы книги, отображенной на дисплее. Трехмерный оптический сенсор может генерировать данные, которые получит вычислительная система. Контроллер вычислительной системы может определить различные положения руки.
Заявка РСТ WO 2011011029 содержит также описание модуля оптического сенсора, который включает источник света и трехмерный оптический сенсор. Модуль оптического сенсора может захватывать данные, такие как высота, ширина и глубина объекта. Модуль оптического сенсора может соединяться с вычислительным устройством через порт связи для передачи захваченной информации. Например, порт связи может быть портом шины USB или IEEE1394 портом. Порт связи может быть частью контроллера ввода-вывода вычислительного устройства. Контроллер ввода-вывода может быть соединен с машиночитаемым носителем и с контроллером. Контроллер может получать данные, захваченные трехмерным оптическим сенсором, через порт связи контроллера ввода-вывода. Контроллер может определить расстояние от модуля оптического сенсора до объекта и от объекта до дисплея, основываясь на расстоянии от объекта до модуля трехмерного оптического сенсора.
Заявка РСТ WO 2011011029 наиболее близка к предлагаемому изобретению и принята за прототип.
Недостатком прототипа и прочих известных способов управления устройствами, основанных на распознавании жестов пользователя, является постоянное ожидание подачи жеста пользователем. Вычислительный блок пытается распознать управляющий жест в каждом движении пользователя. Воспринятое камерой движение пользователя сравнивают с каждым из ожидаемых вычислительным блоком жестов. Нагрузка на процессор вычислительного блока кратна количеству одновременно ожидаемых жестов, поэтому, в силу ограниченной производительности процессора, ограничено и разнообразие возможных команд.
Недостатком прототипа и прочих известных устройств для распознавания жестов является передача изображения, исходного или частично обработанного, например скелетизированного, на вычислительное устройство по внешним интерфейсам, таким как S-video кабель, коаксиальный кабель, USB кабель и тому подобным. Большой объем передаваемых данных и ограниченная пропускная способность внешнего интерфейса ограничивают скорость реакции системы на жесты пользователя.
В известных системах для определения жестов не удается осуществить распознавание одним техническим устройством одновременно и крупных жестов, такие как движения ног, рук, включая движение плеча и предплечья, и мелких жестов, включая движение отдельных фаланг пальцев. Указанная проблема связана, в основном, с низким разрешением воспринимаемого 3D-изображения, с ограниченной точностью определения координат и с недостаточным быстродействием системы в целом. Практически, известные системы могут распознавать мелкие жесты с малого расстояния, когда, например, большая часть захваченного кадра содержит крупное изображение кисти руки, или распознавать только крупные жесты, когда в кадр помещается пользователь целиком.
В общем случае, такое разделение является недостатком, который сужает функциональные возможности систем управления, основанных на распознавании жестов и накладывает на пользователя ограничения по месту подачи команд и разнообразию одновременно ожидаемых жестов.
Раскрытие изобретения
Задачей, на решение которой направлено заявленное изобретение, является увеличение разнообразия воспринимаемых жестов, включая одновременное восприятие крупных и мелких жестов, улучшение селективности распознавания жестов, а также минимизация времени, затрачиваемого на распознавание жеста и выдачу команды устройству.
Другой задачей является создание 3D-ceнcopa с улучшенными характеристиками разрешения и быстродействия, достаточными для одновременного восприятия крупных и мелких жестов, включая жесты руками, ногами, туловищем, головой, пальцами рук, подаваемых пользователем в произвольном, удобном для него темпе.
Сущность изобретения заключается в том, что предложен способ управления устройством с помощью жестов, позволяющий расширить возможности машинного распознавания жестов, а именно улучшить селективность распознавания жестов, уменьшить время отклика системы на подаваемые команды, увеличить допустимое количество жестов в жестовом интерфейсе, допустить подачу с одной дистанции жестов руками и жестов пальцами, а также уменьшить время, затрачиваемое на распознавание жеста и выдачу команды устройству. Предложен также 3D-сенсор с улучшенными характеристиками разрешения и быстродействия, позволяющий осуществить указанный способ.
Предложенный способ управления устройством с помощью жестов, подаваемых пользователем, заключается в том, что захватывают трехмерное изображение, распознают жест и выдают на управляемое устройство соответствующую жесту команду, при этом в окружающем пользователя пространстве выделяют, по меньшей мере, одну сенсорную область, с каждой сенсорной областью ассоциируют, по меньшей мере, один ожидаемый жест и с каждой комбинацией сенсорной области и жеста ассоциируют одну команду, определяют положение глаз пользователя, положение его головы и положение его руки, определяют условную линию взгляда, исходящую из органа зрения пользователя и направленную в видимую пользователем точку окружающего пространства, проверяют, направлена ли условная линия взгляда на сенсорную область, анализируют подаваемый рукой пользователя жест и в случае, если жест подают одновременно с наведением условной линии взгляда на сенсорную область, то на управляемое устройство выдают команду, ассоциированную с данной комбинацией сенсорной области и поданного жеста.
Предложенный 3D-сенсор для управления устройством с помощью жестов включает в себя вычислительный блок, ИК-проектор и ИК-камеру, причем ИК-проектор и ИК-камера соединены с локальной шиной вычислительного блока, а вычислительный блок сконфигурирован для создания ИК-проектором модулированной подсветки, анализа изображения, полученного с ИК-камеры, вычисления условной линии взгляда пользователя, вычисления сенсорной области, на которую направлена условная линия взгляда пользователя, распознавания жеста пользователя и выдачи команды для управляемого устройства.
Краткое описание чертежей
На фиг.1(а,б,в) изображены плоские сенсорные области прямоугольной формы.
На фиг.1,а изображены две раздельные сенсорные области.
На фиг.1,б изображены три смежные сенсорные области.
На фиг.1,в изображены две частично перекрывающиеся сенсорные области.
На фиг.2(а,б) изображены примеры возможного расположения сенсорных областей, связанных с дисплеем.
На фиг.2,а изображен дисплей с сенсорными областями, внешними по отношению к дисплею и внутренними по отношению к дисплею.
На фиг.2,б изображены сенсорные области, пересекающие границы дисплея.
На фиг.3(а,б,в) изображена условная линия взгляда, определенная тремя различными способами.
На фиг.3,a изображена условная линия взгляда, определенная по углам наклона и поворота лица пользователя.
На фиг.3,б изображена условная линия взгляда, определенная как луч, пересекающий точку, связанную с кистью руки пользователя.
На фиг.3,в изображена условная линия взгляда, определенная как луч, направление которого вычислено по положению зрачков и/или контуров радужных оболочек глаз пользователя.
На фиг.4 изображена сенсорная поверхность, расположенная в плоскости дисплея, закрепленного на стене.
На фиг.5(а,б) изображен 3D-сенсор.
На фиг.5,а изображена принципиальная схема 3D-сенсора.
На фиг.5,б условно изображен 3D-сенсор в одном корпусе с камерами и проектором.
Осуществление изобретения
Осуществление изобретения достигается следующим образом: при получении данных, свидетельствующих о подаче жеста пользователем, соответствующую жесту заранее предопределенную команду на управляемое устройство выдают только тогда, когда пользователь смотрит в направлении заранее определенной области пространства, с которой ассоциирован поданный жест.
Сенсорная область
Упомянутая заранее определенная область пространства далее в описании, а также в формуле изобретения, именуется сенсорной областью, поскольку назначение упомянутой заданной области - "почувствовать", что пользователь на нее смотрит. Сенсорная область, в общем случае, может быть объемной или двумерной. В большинстве случаев удобнее использовать двумерную плоскую сенсорную область, например, прямоугольной формы (см. фиг.1 и 2). Одновременно могут быть заданы одна сенсорная область или несколько раздельных сенсорных областей, как, например, раздельные сенсорные области 1 и 2 на фиг.1,а; смежных сенсорных областей, как, например, смежные сенсорные области 1, 2 и 3 на фиг.1,б или взаимно перекрывающихся сенсорных областей, как, например, перекрывающиеся сенсорные области 1 и 4 на фиг.1,в.
Задать сенсорную область - означает установить диапазон координат, все точки внутри которого принадлежат сенсорной области.
Ассоциация жеста с сенсорной областью
Еще одним условием выдачи команды на устройство является то, что поданный пользователем жест заранее поставлен в соответствие рассматриваемой сенсорной области, иначе говоря, ассоциирован с нею. С каждой сенсорной областью могут быть ассоциированы один или несколько жестов. Назначение предварительной ассоциации жестов с сенсорной областью - разрешить 3D-сенсору выдавать команды только в ответ на некоторые, заранее заданные жесты и таким образом ограничить число жестов, одновременно ожидаемых 3D-сенсором. В простейшем случае, с одной сенсорной областью ассоциирован единственный жест, что позволяет снизить требования к точности распознавания жеста и увеличить практическое быстродействие 3D-сенсора.
Перекрытие временных интервалов жеста и взгляда
Время подачи жеста, как правило, ограничено и невелико, поскольку продолжительная жестикуляция утомительна для пользователя. Продолжительность взгляда на сенсорную область может варьироваться и, в том числе, превышать продолжительность жеста.
Если временные интервалы жеста и взгляда имеют общий участок, то жест и взгляд считают одновременными.
В другом варианте выполнения предлагаемого способа, жест и взгляд считают одновременными, если некоторые участки временных интервалов жеста и взгляда укладываются в заранее установленный общий временной интервал.
Определение направления взгляда
Для определения направления взгляда предлагается использовать условную линию взгляда, которая в достаточной, для целей управления устройствами, мере совпадает с действительной линией взгляда пользователя.
Линия взгляда - это отрезок прямой линии, который берет начало в органе зрения пользователя и заканчивается на предмете, на который пользователь в данный момент времени смотрит.
В каждый момент пользователь способен отчетливо видеть некоторую область пространства вокруг точки, на которой сосредоточено его внимание. Указанная точка далее для краткости именуется истинной точкой внимания. Для осуществления предлагаемого изобретения, вместо истинной точки внимания допустимо использовать условную точку внимания, то есть найденную с некоторой погрешностью точку, также находящуюся в пределах упомянутой видимой пользователем области.
Условную точку внимания определяют как точку пересечения условной линии взгляда с поверхностью сенсорной области.
Условную линию взгляда можно определять различными способами. Частные примеры способов определения условной линии взгляда описаны ниже.
Определение положения органа зрения
Чтобы определить пространственное положение условной линии взгляда, необходимо прежде всего определить положение органа зрения пользователя. Известно, что степень бинокулярности зрения у разных людей может быть различной: у пользователя может функционировать один глаз или оба, причем во втором случае один глаз может функционально доминировать над другим глазом. В упомянутых случаях будет естественным считать положением органа зрения центр доминирующего глаза.
Если у пользователя доминирование одного из глаз не выражено, то есть глаза функционально равнозначны, то положением органа зрения можно считать середину отрезка 8, соединяющего центры глаз (см. фиг.3,в). В некоторых случаях может оказаться удобным считать положением органа зрения некую точку на отрезке 8, соединяющем центры глаз, занимающую промежуточное положение между концом и серединой отрезка, то есть смещенную в сторону одного из глаз. Целесообразно выбрать один из описанных вариантов расположения органа зрения до начала управления прибором. Выбор варианта можно осуществить автоматически, например, путем калибровки 3D-сенсора, или установить принудительно, путем ручной настройки 3D-сенсора. Целью такой настройки является комфорт пользователя и минимизация ошибок при управлении устройством.
Вышеописанные варианты определения положения органа зрения не исчерпывают всех возможных вариантов, но являются наиболее естественными и удобными.
Нахождение положения органа зрения
Различные способы нахождения глаз на изображении известны в существующем уровне техники. Задача нахождения глаз решается, например, в патентах RU 2382408, US 7620217, US 7876931.
На захваченном изображении находят глаза пользователя, вычисляют 3D-координаты центров глаз и вычисляют 3D-координаты органа зрения. А в случаях, когда зрачки или ирисы пользователя по какой-либо причине не видны или не находятся 3D-сенсором, центром глаза можно считать середину глазницы или середину линзы очков.
Определение направления условной линии взгляда
Использование условной линии взгляда вместо поиска истинного направления взгляда обусловлено следующими обстоятельствами.
Во-первых, истинное направление взгляда бывает трудно определить: нет уверенности, что глаза направлены в ту же точку, что и внимание, а кроме того, левый и правый глаза не у всех и не все время направлены в одну точку.
Во-вторых, известны только косвенные способы определения, куда направлен взгляд, и в данном смысле, любой из этих способов определяет именно условное направление взгляда.
В-третьих, нет необходимости в собственно взгляде. Достаточно определить, куда бы человек хотел посмотреть во время подачи команды.
Таким образом, возможно применение предлагаемого способа в том числе и незрячими пользователями.
В зависимости от поставленной цели можно выбирать наиболее простой способ определения условной линии взгляда, что снижает требования к быстродействию аппаратуры и позволяет применять более дешевые аппаратные решения.
Варианты способов определения направления условной линии взгляда
В одном из вариантов предлагаемого способа направление условной линии взгляда определяют по углам наклона и поворота лица пользователя (см. фиг.3,а). Для этого на захваченном изображении находят лицо, находят глаза и подбородок. Трехмерные координаты трех точек, а именно центров глаз и подбородка, задают плоскость 7, проходящую через указанные три точки.
В первом приближении, условной линией взгляда 6 считают перпендикуляр к этой плоскости, проведенный через точку, принятую за положение органа зрения. В действительности, пользователь может, к примеру, иметь привычку смотреть слегка искоса или исподлобья. Для того, чтобы учесть эти персональные особенности пользователя, можно скорректировать углы направления условной линии взгляда путем калибровки 3D-сенсора и предоставить пользователю возможность управлять устройством в привычной и комфортной для него манере.
В другом предлагаемом варианте (см. фиг.3,б) за условную линию взгляда 6 принимают луч, пересекающий точку, связанную с кистью руки пользователя. Например, это может быть крайняя верхняя точка кисти руки или крайняя верхняя точка удлиненного предмета в руке пользователя. Преимуществом данного варианта является быстродействие, поскольку для нахождения линии взгляда достаточно найти положение органа зрения и положение руки пользователя. Две найденные точки задают прямую, которую в данном варианте предлагаемого способа считают линией взгляда. Данный вариант может оказаться и наиболее комфортным для пользователя, поскольку избавляет его от необходимости двигать головой и даже перемещать точку внимания на сенсорную область. Достаточно держать сенсорную область 1 в поле зрения и указать на нее рукой, держа кисть на уровне глаз.
В третьем варианте (см. фиг.3,в) направление взгляда вычисляют по положению зрачков и/или контуров радужных оболочек глаз пользователя, и условную линию взгляда 6 определяют как луч, направленный в вычисленном направлении взгляда.
Для достижения наибольшей точности в определении направления условной линии взгляда можно использовать комбинацию двух или трех указанных вариантов, а также автоматически переходить от одного варианта определения направления условной линии взгляда к другому варианту, в зависимости от текущих изменений условий съемки. Предпочтительный вариант определения направления условной линии взгляда может быть выбран заранее путем ручной или автоматической настройки 3D-сенсора или управляемого устройства, частью которого является 3D-сенсор.
Множество сенсорных областей
По сравнению с единственной сенсорной областью, использование нескольких сенсорных областей позволяет уменьшить количество одновременно ожидаемых 3D-сенсором жестов, что в свою очередь позволяет снизить вероятность ложных срабатываний из-за непроизвольно выданных команд или ошибок классификации схожих жестов. Схожие жесты, которые легко принять один за другой, достаточно отнести к различным, отстоящим одна от другой сенсорным областям, чтобы исключить саму необходимость выбора между этими жестами. В результате смягчаются требования к аккуратности исполнения жеста, к амплитуде движений, к паузам между жестами. С другой стороны, в разных сенсорных областях одному и тому же жесту могут соответствовать различные команды, и при небольшом наборе распознаваемых 3D-сенсором жестов, в крайнем случае с использованием даже одного единственного жеста, можно реализовать обширное меню команд за счет множества сенсорных областей.
Визуализация сенсорной области
В некоторых вариантах выполнения предлагаемого способа, сенсорная область может быть визуализирована. Это позволяет пользователю более точно направить условную линию взгляда на сенсорную область. Наиболее просто визуализировать сенсорную область, расположенную вблизи реальной поверхности, например стены, окна, экрана телевизора. Визуализацию осуществляют с помощью индикации контуров, углов или всей площади сенсорной области световыми приборами, такими как лампы, светодиоды, лазер, а также дисплей или проектор. В другом варианте сенсорную область связывают с подвижным предметом, таким как, например, робот-пылесос. В этом случае сенсорную область перемещают по мере передвижения предмета-носителя сенсорной области.
Сенсорные области, связанные с дисплеем
Вариант визуализации сенсорной области при помощи дисплея осуществляют следующим образом (см. фиг.2). Сенсорную область выделяют в плоскости, совпадающей с поверхностью дисплея. Сенсорные области могут быть расположены в пределах дисплея 5, как, например, сенсорные области 3 и 4 на фиг.2,а, на границах или углах дисплея 5, как, например, сенсорные области 1 на фиг.2,б, а также вне дисплея 5, то есть в стороне, сверху или снизу от границ дисплея 5, как, например, сенсорные области 1 на фиг.2,в.
С помощью дисплея также визуализируют реакцию устройства на команды пользователя. В зависимости от состояния управляемого устройства, на дисплей может быть выведено визуальное обозначение сенсорных областей, сообщения для пользователя, меню или изображение каких-либо прочих объектов.
3D-сенсор
Для определения координат частей тела пользователя, вычисления условной линии взгляда пользователя, вычисления сенсорной области, на которую направлена условная линия взгляда пользователя, распознавания жеста и выдачи команды для управляемого устройства предлагается использовать 3D-сенсор, включающий в себя вычислительный блок, ИК-проектор и ИК-камеру. Новым в 3D-сенсоре является то, что ИК-проектор и ИК-камера соединены с локальной шиной вычислительного блока, а вычислительный блок сконфигурирован для создания ИК-проектором модулированной подсветки, анализа изображения, полученного с ИК-камеры, вычисления условной линии взгляда пользователя, вычисления сенсорной области, на которую направлена условная линия взгляда пользователя, распознавания жеста и выдачи команды для управляемого устройства.
Анализ изображения
В части анализа изображения, полученного с ИК-камеры, вычислительный блок сконфигурирован для фильтрации изображения, получения карты свернутых фаз, преобразования ее в карту развернутых фаз, вычисления карты глубин, вычисления 3D-координат частей тела пользователя.
Преимущества локальной шины
Соединение ИК-проектора и ИК-камеры с вычислительным блоком посредством локальной шины дает существенный выигрыш в скорости передачи данных между вычислительным блоком, ИК-проектором и ИК-камерой, по сравнению с используемым в известных 3D-устройствах соединением посредством внешнего интерфейса (USB и ему подобных). Это позволяет в целом ускорить отклик управляемого устройства на управляющий жест пользователя.
Преимущества общего корпуса
Чтобы сделать возможным использование только локальной шины вычислительного блока для соединения элементов 3D-сенсора, упомянутые элементы расположены в одном общем корпусе 9 (см. фиг.3,б и фиг.5,б).
Кроме того, совмещение всех компонентов 3D-сенсора в едином корпусе делает его мобильным, поскольку облегчает возможность, при желании, использовать 3D-сенсор поочередно с различными управляемыми устройствами.
Цветная видеокамера
В наиболее универсальном варианте исполнения, 3D-сенсор дополнительно включает в себя цветную видеокамеру, что расширяет возможности применения 3D-сенсора в мультимедийных приложениях.
В другом варианте, компоненты 3D-сенсора, например, цветная видеокамера, могут быть размещены вне общего корпуса.
Интерфейс для соединения с дисплеем
В одном из вариантов 3D-сенсора с цветной видеокамерой, вычислительный блок 3D-сенсора снабжен интерфейсом для передачи видеосигнала на дисплей. Дисплей может быть элементом управляемого устройства, такого как телевизор, бытовой прибор с небольшим жидкокристаллическим дисплеем или отдельным устройством вывода информации, таким как компьютерный монитор.
Наибольшие преимущества соединения 3D-сенсора с дисплеем могут быть получены при условии, что в плоскости дисплея заданы сенсорные области, связанные с дисплеем. Для того, чтобы знать взаимное расположение сенсорных областей и дисплея, должно быть известно взаимное расположение дисплея и 3D-сенсора, для чего можно либо выложить дисплей и 3D-сенсор в одном корпусе, либо предусмотреть постоянное место для точного разъемного крепления 3D-сенсора на корпусе или вблизи корпуса дисплея, например выполнить корпус дисплея с нишей в форме 3D-сенсора. Возможен и вариант размещения 3D-сенсора отдельно от дисплея, в этом случае требуется обеспечить неподвижность обоих устройств во время сеанса управления и перед сеансом управления получить данные об их взаимном положении путем проведения калибровки. Таким образом, один из вариантов исполнения 3D-сенсора предусматривает его размещение в едином корпусе с дисплеем, а в другом варианте 3D-сенсор и дисп