СЛЕЖЕНИЕ ЗА ВЗГЛЯДОМ НА ОСНОВЕ АДАПТИВНОГО ГОМОГРАФИЧЕСКОГО СОПОСТАВЛЕНИЯ
EYE GAZE TRACKING BASED UPON ADAPTIVE HOMOGRAPHY MAPPING

УРОВЕНЬ ТЕХНИКИ
[0001] По мере совершенствования компьютеров, включающих в себя мобильные устройства, карманные устройства, и технологий предшествующего уровня техники, таких как дисплеи, механизмы человеческого ввода аналогично улучшаются. Естественные пользовательские интерфейсы, к примеру, на основе распознавания речи, слежения за положением головы и скелета и обнаружения жестов, становятся более широко распространенными, так что они дополняют или в некоторых случаях заменяют клавиатуру, указательное устройство (мышь или стилус) и/или распознанный почерк/рукописный ввод. Обнаружение взгляда (слежение за движениями глаз) представляет собой еще одну технологию на основе естественного пользовательского интерфейса.
[0002] Один тип технологии слежения за движениями глаз упоминается в качестве слежения за движениями глаз на основе сложного отношения (CR). Эта технология использует инвариантность проективности на плоскость для того, чтобы обеспечивать удаленную оценку взгляда объекта с использованием одной камеры в некалиброванной компоновке. В общем, инфракрасный свет проецируется в направлении пользователя, при этом роговичные отражения из глаза пользователя (блески) опознаются посредством камеры и обрабатываются таким образом, чтобы следить за взглядом.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0003] Данная сущность изобретения предоставлена для того, чтобы представлять в упрощенной форме выбор характерных концепций, которые дополнительно описаны ниже в подробном описании. Эта сущность не предназначена для того, чтобы идентифицировать ключевые признаки или важнейшие признаки заявляемого предмета изобретения, а также не предназначена для использования таким способом, который ограничивает область применения заявляемого предмета изобретения.
[0004] В результате допущений с упрощением, производительность известных модулей слежения за взглядом на основе CR существенно снижается по мере того, как объект движется от начальной (фиксированной) позиции калибровки. Одновременно, непрактично реализовывать систему, в которой объект должен калибровать слежение за движениями глаз в каждом из множества возможных положений головы по оси X, Y и Z, которые возникают при использовании в реальном мире. Таким образом, требуется улучшенная технология для модулей слежения за взглядом на основе CR (и на другой основе).
[0005] Вкратце, различные аспекты предмета изобретения, описанного в данном документе, направлены на адаптивное гомографическое сопоставление для достижения обнаружения взгляда. В одном или более аспектов, по меньшей мере, четыре источника света формируют роговичные отражения в качестве блесков от глаза объекта, и камера выполнена с возможностью захватывать текущее изображение, содержащее эти блески. Модель адаптивного гомографического сопоставления, распознаваемая через переменные, включающие в себя переменные, представляющие местоположения головы относительно позиции калибровки и/или направлений взгляда, выполнена с возможностью сопоставлять данные признаков, соответствующие блескам, связанные со зрачком данные и/или данные взгляда для того, чтобы выводить информацию взгляда, указывающую то, куда в данный момент смотрит глаз объекта.
[0006] Один или более аспектов направлены на использование модели адаптивного гомографического сопоставления для обнаружения взгляда, при этом модель адаптивного гомографического сопоставления обучается с возможностью компенсировать пространственно варьирующиеся ошибки обнаружения взгляда и зависимые от позы головы ошибки относительно позиции калибровки. Текущие данные блесков и связанные со зрачком данные захватываются в изображении и обрабатываются из изображения в качестве признаков, предоставленных в модель адаптивного гомографического сопоставления. Данные принимаются из модели адаптивного гомографического сопоставления на основе признаков, которые соответствуют текущей информации взгляда.
[0007] Один или более аспектов направлены на захват изображения, включающего в себя глаз объекта, из которого извлекаются данные блесков и связанные со зрачком данные в качестве признаков, и использование функций в качестве ввода в модель адаптивного гомографического сопоставления, чтобы определять направление взгляда. Модель адаптивного гомографического сопоставления может быть получена посредством использования, по меньшей мере, некоторых моделированных данных, соответствующих прогнозным значениям коррекции смещения при различных положениях головы. Модель адаптивного гомографического сопоставления может распознаваться посредством получения первой предикторной переменной, содержащей вектор движения, соответствующий относительному положению головы, и получения второй предикторной переменной, соответствующей направлению взгляда. Распознавание может включать в себя минимизацию целевой функции на основе данных, соответствующих множеству положений головы и направлений взгляда. В общем, модель адаптивного гомографического сопоставления использует масштабирование и перемещение в пространстве для прогнозирования и гомографию для коррекции.
[0008] Другие преимущества могут становиться очевидными из нижеприведенного подробного описания при рассмотрении совместно с чертежами.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0009] Настоящее изобретение проиллюстрировано в качестве примера, а не ограничения, на прилагаемых чертежах, на которых аналогичные ссылки обозначают аналогичные элементы и на которых:
[0010] Фиг. 1 является блок-схемой, иллюстрирующей примерные компоненты, включающие в себя распознаваемую модель адаптивного гомографического сопоставления, которая может использоваться при обнаружении взгляда, согласно одной или более примерных реализаций.
[0011] Фиг. 2 является представлением того, как блеск захватывается для использования при обнаружении взгляда для использования в качестве признака в распознаваемой модели адаптивного гомографического преобразования для обнаружения взгляда, согласно одной или более примерных реализаций.
[0012] Фиг. 3 является представлением того, как блески и связанные со зрачком данные (например, центр зрачка) используются для того, чтобы получать информацию взгляда из распознаваемой модели адаптивного гомографического сопоставления, согласно одной или более примерных реализаций.
[0013] Фиг. 4 является представлением того, как преобразования на основе сложного отношения могут использоваться для того, чтобы обучать модель адаптивного гомографического сопоставления, согласно одной или более примерных реализаций.
[0014] Фиг. 5 является представлением обучения модели адаптивного гомографического сопоставления при различных положениях головы, согласно одной или более примерных реализаций.
[0015] Фиг. 6A и 6B и 7A и 7B являются примерными представлениями того, как моделированные обучающие данные могут быть основаны на сглаженных варьированиях масштабирования и перемещениях в пространстве вследствие движения головы, согласно одной или более примерных реализаций.
[0016] Фиг. 8 является блок-схемой последовательности операций способа, иллюстрирующей примерные этапы, которые могут осуществляться для того, чтобы получать информацию взгляда из распознаваемой модели адаптивного гомографического сопоставления, согласно одной или более примерных реализаций.
[0017] Фиг. 9 является блок-схемой, представляющей примерную неограничивающую вычислительную систему или операционное окружение, в форме мобильного и/или карманного вычислительного устройства и/или устройства связи, в котором могут реализовываться или более аспектов различных вариантов осуществления, описанных в данном документе.
ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ
[0018] Различные аспекты технологии, описанной в данном документе, в общем, направлены на адаптивное гомографическое сопоставление для достижения прогнозирования взгляда с большей точностью в позиции калибровки и большей надежностью для движений головы. Это достигается с помощью технологии на основе распознавания для одновременной компенсации пространственно варьирующихся ошибок обнаружения взгляда и зависимых от позы головы ошибок в унифицированной инфраструктуре. В одном или более аспектов, модель адаптивной гомографии может обучаться оффлайн с использованием моделированных данных, значительно сокращая время и усилия при сборе данных; другими словами, объект не должен обязательно выполнять калибровку при множестве различных возможных положений головы. Например, члены масштабирования и члены перемещения в пространстве для x, y изменяются плавно на практике, и в силу этого моделированные данные могут включать в себя прогнозирования в отношении того, как гомография для коррекции смещения изменяется при новом положении головы, для использования в качестве (по меньшей мере, части) экспериментально полученных данных.
[0019] Следует понимать, что адаптивное гомографическое сопоставление основано на предикторных переменных, захватывающих движение головы относительно позиции калибровки и позиции взгляда на экране. Экспериментально полученные данные для обучения адаптивного гомографического сопоставления могут собираться через последовательность независимой от объекта калибровки при различных положениях головы, включающей в себя использование моделируемых/моделированных данных в позициях.
[0020] В ходе онлайновой работы, обученная модель используется для того, чтобы адаптивно корректировать смещение, обусловленное пространственно варьирующимися ошибками обнаружения взгляда и зависимыми от позы головы ошибками. На практике, эта работа в режиме реального времени является более точной и более надежной по отношению к движению головы, чем другие известные технологии на основе взгляда.
[0021] С этой целью, подход с адаптацией на основе распознавания одновременно компенсирует пространственно варьирующиеся ошибки и ошибки, обусловленные движениями головы, посредством использования преобразования блеска, например, расстояния между блесками и/или варьирования размера шаблона блесков с учетом геометрического преобразования между шаблонами блесков. Результирующая модель компенсирует не только варьирования глубины объекта, но и движения параллельно плоскости экрана. Следует отметить, что хотя функция адаптации может получаться посредством процесса распознавания, обученного на моделированных данных, тем не менее, любые априорные знания относительно установки системы (если имеются) могут быть легко включены в систему.
[0022] Следует понимать, что любой из примеров в данном документе является неограничивающим. Например, хотя примерно проиллюстрированы четыре источника света и камера, любое число камер и источников света (которые предоставляют подходящий шаблон блесков) может позиционироваться любым из множества способов. Кроме того, алгоритмы и т.п., используемые для того, чтобы обнаруживать взгляд, являются только примерами, и технология, описанная в данном документе, является независимой и не ограничена какой-либо конкретной технологией и дополнительно может быть адаптирована по мере того, как разрабатываются новые алгоритмы. В связи с этим, настоящее изобретение не ограничено конкретными вариантами осуществления, аспектами, принципами, структурами, функциональностями или примерами, описанными в данном документе. Наоборот, любые из вариантов осуществления, аспектов, принципов, структур, функциональностей или примеров, описанных в данном документе, являются неограничивающими, и настоящее изобретение, в общем, может использоваться различными способами, которые предоставляют выгоду и преимущества при обнаружении взгляда.
[0023] Фиг. 1 является общей блок-схемой, иллюстрирующей примерные компоненты, которые могут использоваться для того, чтобы выполнять обнаружение взгляда. На фиг. 1, показаны вычислительное устройство 102 и дисплей 104. Дисплей 104 может представлять собой внешний дисплей, соединенный с вычислительным устройством, или дисплей, включенный в компьютерное устройство, например, в его корпус.
[0024] Как показано на фиг. 1, проиллюстрировано множество источников 106(1)-106(m) инфракрасного света, вместе с одной или более инфракрасных светочувствительных камер 108(1)-108(n). Следует отметить, что для обнаружения взгляда на основе сложного отношения, одной камеры типично достаточно, тем не менее, если присутствуют, изображения из нескольких камер могут обрабатываться и комбинироваться каким-либо образом (например, усредняться), к примеру, для того, чтобы уменьшать эффекты шума.
[0025] Источники света могут представлять собой отдельные источники света, к примеру, лазерные светоизлучающие диоды (светодиоды) и/или светодиоды и т.п., которые проецируют через оптический элемент, который дифрагирует/отражает свет, в силу этого предоставляя множество источников света. Следует отметить, что любые из инфракрасных светочувствительных камер могут комбинироваться с камерами для съемки в видимом диапазоне. Дополнительно следует отметить, что камера (или камеры) могут присоединяться к устройству, например, встраиваться по краю (например, камера 208 по фиг. 2 представлена посредством X в кружке) или физически соединяться с устройством, либо могут быть внешними для устройства (например, камера 408 по фиг. 4), либо как комбинация означенного.
[0026] Как следует понимать при слежении за движениями глаз на основе сложного отношения, по меньшей мере, четыре источника света требуются для того, чтобы предоставлять блески, чтобы вычислять гомографию, и эти источники света размещаются таким образом, что имеются, по меньшей мере, три различных направления между любым из них и другими, что обеспечивает четырехугольник, например, прямоугольный шаблон источников 222-225, как показано на фиг. 2, представляет собой типичную компоновку. Несмотря на это, другие компоновки, включающие в себя большее число источников света, являются осуществимыми и, например, позволяют обеспечивать такие преимущества, как предоставление, по меньшей мере, четырех блесков, когда один из других блесков не обнаруживается.
[0027] Контроллер 110 может использоваться для того, чтобы управлять работой источников 106(1)-106(m) инфракрасного света и/или инфракрасных светочувствительных камер 108(1)-108(n), хотя в одной или более реализаций источники света и камеры могут быть "всегда включены", в силу чего не требуются "контроллеры", за исключением источника питания, предположительно с возможностями включения-выключения. Следует отметить, что инфракрасный свет используется, поскольку он является незаметным для людей, тем не менее, в определенных ситуациях может быть желательным использовать свет в видимом диапазоне спектра, к примеру, при использовании для глаз объекта, носящего контактные линзы, которые блокируют конкретную длину волны света в видимом диапазоне спектра. Таким образом, при использовании в данном документе, "источник света" не ограничен длинами волн в инфракрасном диапазоне спектра.
В общем, одна или более камер 108(1)-108(n) захватывают изображения, которые подаются в компонент 112 обработки изображений, включающий в себя детектор 114 взгляда, который соединяется с или включает корректор 116 смещения взгляда вместе с положением головы; как описано в данном документе, корректор смещения включает в себя обученный компонент адаптивного гомографического сопоставления. Компонент 112 обработки изображений предоставляет обработку вывода 118 обнаружения взгляда, к примеру, координат взгляда, представляющих то, куда пользователь в данный момент смотрит в данном кадре, и т.п. Такой вывод 118 может быть буферизован, к примеру, для использования с другим вводом (например, щелчками кнопкой мыши или жестами), может быть использован посредством операционной системы (например, чтобы двигать курсор), может использоваться посредством приложения (например, чтобы выделять пункт меню) и т.п. В общем, текущая информация взгляда может использоваться, чтобы предпринимать действие относительно изменения состояния пользовательского интерфейса. Обнаружение взгляда может использоваться для других изменений состояния, например, чтобы включать дисплей в активное состояние из состояния ожидания или отключения (или наоборот), возможно в комбинации с другим обнаружением (например, жестов), к примеру, шаблоном мигания глаз.
[0028] Относительно детектора 114 взгляда, любые существующие или разработанные в будущем технологии (к примеру, технология на основе сложного отношения) могут использоваться для того, чтобы преобразовывать опознанные блески, данные зрачка и любые другие захваченные признаки в вывод 118 информации взгляда. Решения в отношении одной или более технологий могут комбинироваться (например, усредняться), чтобы предоставлять конечный вывод. Как описано в данном документе, корректор 116 смещения взгляда вместе с положением головы предоставляет алгоритм 114 обнаружения взгляда с коррекцией смещения, который является более точным и надежным, чем другие технологии коррекции смещения.
[0029] В общем, удаленные системы слежения за взглядом работают с использованием источников инфракрасного света таким образом, чтобы формировать роговичные отражения, называемые в качестве блесков, которые захватываются в качестве части изображений глаз объекта. Захваченные изображения обрабатываются для того, чтобы извлекать информативные признаки, которые являются инвариантными к подсветке и точке обзора, такие как центр зрачка, роговичные отражения (например, указывающие позицию глазного яблока) и/или контур лимба.
[0030] Следует отметить, что на фиг. 2, принцип блесков, отражаемых от источника 225 инфракрасного света, показан как захват посредством камеры 208 в то время, когда пользователь смотрит на текущее местоположение 226 взгляда на экране. Можно легко принимать во внимание, что блески от других источников света 222-224 аналогично захватываются одновременно (хотя только один такой набор стрелок в глаз, отражаемых в камеру, показан на фиг. 2).
p
[0031] Следует понимать, что положение головы объекта 228 и местоположение 226 взгляда оказывает влияние на позиции и размеры блесков , которые захватываются. Эта информация, вместе с другой информацией, такой как центр u зрачка, соответствует данным 304 признаков, извлеченным из изображения 302, которые подаются в распознаваемый корректор 116 смещения взгляда вместе с положением головы. Из него, информация 310 взгляда, такая как экранные координаты, получается и предоставляется в программу 312.
[0032] Как описано в данном документе, способы на основе гомографии для коррекции смещения при оценке взгляда в некоторых случаях позволяют повышать точность и/или надежность оценки взгляда. Способ на основе гомографии для коррекции смещения может реализовывать гомографическое преобразование для коррекции смещения. Гомографическое преобразование для коррекции смещения может вычисляться посредством решения проблемы совмещения наборов точек из прогнозных точек взгляда посредством базового способа на основе сложного отношения с экспериментально полученными целевыми показателями на экране в течение фазы обучения для калибровки.
[0033] В целом, способы на основе гомографии, в общем, хорошо работают в позиции калибровки, поскольку они эффективно моделируют смещения по оптической и зрительной оси, как, в общем, представлено на фиг. 4. Тем не менее, вследствие ошибки модели из допущения планарности для центра зрачка и плоскости, сформированной посредством блесков, возникают пространственно варьирующиеся ошибки. Для точного прогнозирования, гомографическое сопоставление для коррекции смещения должно зависеть от направления взгляда объекта.
[0034] Производительность способов на основе гомографии значительно ухудшается, когда объект движется от позиции калибровки, поскольку оптимальная гомография для коррекции смещения является функцией от положений головы. Один или более аспектов, описанных в данном документе, направлены на адаптивное гомографическое сопоставление, которое направлено на "прогнозирование" того, как гомография для коррекции смещения изменяется при новом положении головы, так что производительность модуля слежения за взглядом должна быть такой, как если оно калибровано при этом новом положении головы. Описана схема для того, чтобы прогнозировать варьирование гомографии для коррекции смещения, вычисленной в позиции калибровки, на основе относительных изменений между текущим положением головы и позицией калибровки и текущим направлением взгляда.
P
p
P
[0035] Относительно сложного отношения гомографического сопоставления с коррекцией смещения на основе гомографии, как, в общем, показано на фиг. 4, следует обозначить  в качестве точечных источников света, расположенных в четырех углах экрана , в качестве соответствующих роговичных отражений, и  в качестве изображений .  является центром зрачка в трехмерном пространстве, и  является его проекцией в изображении. Хотя четыре точечных источника света показаны в углах экрана, несколько источников света с множеством различных конструкций, чисел, размещений могут использоваться надлежащим образом, и свет из четырех углов показан здесь для примерных целей. Способ на основе сложного отношения предполагает, каждая группа  является компланарной, что обозначается в качестве плоскости, соответственно. Преобразование между плоскостями  может описываться через гомографии. При таком допущении, что центр  зрачка лежит в  прогнозирование точек фиксации взгляда задается следующим образом:
(1)
где  преобразует плоскость  в плоскость ,  преобразует плоскость  в плоскость , и  является комбинированным преобразованием  и . Тем не менее, поскольку эти допущения с упрощением не являются допустимыми на практике, наблюдается большое смещение при оценке взгляда.
[0036] Технологии на основе гомографии применяют другое гомографическое преобразование для того, чтобы корректировать это смещение при оценке взгляда. В одной технологии, блески в изображениях сначала преобразуются на нормализованное пространство (например, унитарный квадрат ), при этом гомография для коррекции смещения используется для того, чтобы преобразовывать оцененные точки взгляда в нормализованном пространстве в ожидаемые точки взгляда в экранном пространстве . Прогнозирование точек фиксации взгляда посредством прогнозирования на основе гомографии задается следующим образом:
(2)
V
где  преобразует пространство изображений в нормализованное пространство, и  преобразует нормализованное пространство в экранное пространство. Если обозначить  в качестве индекса для целевой позиции на экране,  в качестве набора целевого индекса, и  в качестве целевой позиции в экранном пространстве, цель зависимой от объекта калибровки состоит в том, чтобы находить оптимальную гомографию  для коррекции смещения, которая минимизирует ошибки повторного проецирования:
где  является двумерной позицией центра зрачка в изображении при просмотре на цель .
[0037] В данном документе описано адаптивное гомографическое сопоставление, которое моделирует варьирование гомографии  для коррекции смещения с использованием другого гомографического сопоставления . Точка фиксации взгляда посредством адаптивной гомографии задается следующим образом:
(4)
Следует отметить, что в уравнении (4), гомография  для коррекции смещения вычисляется посредством идентичного процесса минимизации в уравнении (3) при калибровке и остается неизменной для идентичного объекта. Напротив, адаптивное гомографическое сопоставление  должно варьироваться адаптивно к текущему положению головы относительно позиции калибровки, а также направления взгляда. В одном или более аспектов, адаптивная гомография описывается в данном документе в качестве проблемы регрессии. Иными словами, с учетом предикторных переменных, описывающих относительное положение головы и направление взгляда, система хочет прогнозировать значения в .
[0038] Могут использоваться различные типы предикторных переменных, включающие в себя, без ограничения, движение (соответствующее положению головы) и направление взгляда, . Во-первых, движения головы относительно позиции калибровки захватываются с использованием геометрического преобразования между четырехугольником блесков, сохраненных в позиции калибровки, и четырехугольником текущих блесков. На практике, аффинное преобразование или преобразование подобия может использоваться для того, чтобы кодировать относительное движение. Например, когда объект движется к экрану после калибровки, член масштаба преобразования больше единицы. В целом, гомографическое преобразование представляет собой другую подходящую технологию, в общем, описанную выше относительно коррекции смещения.
[0039] Первый тип предикторной переменной получается посредством векторизации параметров движения. Имеется шестимерный вектор для  при использовании аффинного преобразования или четырехмерный вектор для  при использовании преобразования подобия. Дополнительно, для кодирования направления взгляда для пространственно варьирующегося преобразования, связанные со зрачком данные используются в качестве одного из признаков, например, позиции центра зрачка в нормализованном пространстве , где  является позицией центра зрачка при просмотре на центр экрана.
[0040] За счет этих предикторных переменных, адаптивная гомография может моделироваться в качестве полиномиальной регрессии степени два (т.е. квадратичной регрессии):
(5)
В квадратичной регрессии, значения адаптивной гомографии являются линейными с предикторными переменными, которые содержат постоянный член, линейные члены, квадратичные члены, а также члены, характеризующие взаимодействие.
[0041] Компенсация ошибки на предмет варьирования глубины может осуществляться посредством адаптивного масштабирования векторов коррекции перемещения в пространстве с использованием относительного размера четырехугольников блесков в позиции калибровки и текущей позиции. В одной или более реализаций, технология, описанная в данном документе, рассматривает более обширный набор преобразований, чем масштабирование для прогнозирования, и использует гомографию (вместо только перемещения в пространстве) для коррекции. Значения оптимальных гомографий для коррекции смещения зависят от перемещений головы.
[0042] Следует отметить, что вместо инструктирования объекту калибровать взгляд при каждом возможном положении головы, в одной или более реализаций, компенсация ошибки может достигаться посредством сначала распознавания адаптации через данные для моделирования и затем прогнозирования текущего вектора перемещения в пространстве с использованием этих моделированных обучающих данных для распознавания адаптации. Использование этой технологии позволяет существенно сокращать время и усилия на калибровку объекта, а также повышать скорость вычислений. Помимо этого, использование моделирования обеспечивает возможность использования более сложной модели, чем просто перемещение в пространстве для прогнозирования.
0
n
0
n
[0043] Фиг. 5 обобщает полный процесс одной реализации. В ходе обучения каждое из различных преобразований (например, аффинных преобразований A) для положений H-H головы и позиции взгляда известно и может представляться как . Соответствующие положения головы, показанные на фиг. 5 в качестве H-H, известны в ходе обучения, так что может распознаваться Y, . Следует отметить, что экспериментально полученные обучающие данные могут представлять собой моделированные данные, по меньшей мере, частично.
[0044] Таким образом, как описано выше, операция обучения получает данные, которые используются для того, чтобы распознавать функцию  регрессии (полином степени 2). Эти распознаваемые положения головы и/или функция регрессии на основе обученных данных могут сохраняться любым надлежащим способом и быть доступными для системы слежения за взглядом по фиг. 1, к примеру, в локальном хранилище и/или облачном хранилище.
A
.
[0045] В ходе использования текущим пользователем, который может находиться в приложении, онлайновом окружении, в базовой операционной системе вычислительного устройства и т.д., аффинное совмещение текущего набора блесков, соответствующих захваченным позициям блеска, получается через захват изображенийПосле того, как оно получается вместе с направлением g взгляда, использование регрессии:  с  предоставляет гомографию для коррекции смещения: .
[0046] Относительно распознавания гомографической адаптации, следует обозначить u в качестве положения головы в трех измерениях, и U в качестве набора дискретизированных положений головы. Подходящая целевая функция задается следующим образом:
(6)
где  (уравнение (5)) является квадратичной моделью регрессии для адаптивной гомографии. Цель распознавания адаптивной гомографии состоит в том, чтобы находить матрицу коэффициентов, которые минимизируют ошибки повторного проецирования посредством суммирования квадратических ошибок между прогнозными позициями взгляда и экспериментально полученными позициями взгляда на экране, когда моделированные объекты расположены при дискретизированных положениях головы.
[0047] Чтобы минимизировать целевую функцию, заданную в уравнении (6), может использоваться двухэтапный подход. Во-первых, функция прогнозирования может оцениваться посредством минимизации алгебраической ошибки. При каждом положении u головы, вычисляется оптимальная гомография  для коррекции смещения посредством выполнения зависимой от объекта калибровки в позиции u. В идеале, вплоть до коэффициента масштабирования, . Процесс в силу этого позволяет минимизировать алгебраические ошибки между прогнозированием  и разностью гомографии  для коррекции смещения (причем последний элемент нормализован к 1), где  является гомографией для коррекции смещения, вычисленной в позиции калибровки по умолчанию. Минимизация алгебраических ошибок в силу этого может быть сформулирована следующим образом:
где  является оцененной матрицей коэффициентов после минимизации алгебраических ошибок.
[0048] Во-вторых, для того чтобы минимизировать ошибки повторного проецирования в уравнении (6), процесс может начинаться с начального решения с использованием  и выполнять нелинейную оптимизацию методом наименьших квадратов с использованием алгоритма Левенберга-Марквардта.
u
[0049] Если обратиться к одной примерной реализации процесса калибровки, используется набор объектов для обучения, каждого из которых просят чтобы смотреть на регулярный сетчатый шаблон , который равномерно распределен по экрану. В одном сценарии обучения, использована равномерно распределенная сетка 5x5 на экране. Для сбора обучающих данных, задается плоскость экрана в качестве плоскости x-y и глубина от экрана в качестве оси z- в системе мировых координат. Типичное рабочее пространство перед экраном может быть дискретизировано с использованием сетки 5×5×5 с диапазонами от -200 мм до 200 мм, с центрированием в позиции [0, 0, 600] мм. При каждом положении  головы, выполняется зависимая от объекта калибровка в уравнении (3), например, с использованием шаблона калибровки n×n (например, 5×5) на экране. Чтобы учитывать объекты с различными параметрами глаза, случайно дискретизируется некоторое число (например, пятьдесят) виртуальных объектов с использованием гауссовых распределений со средними типичных параметров глаза и среднеквадратическими отклонениями в десять процентов от значений параметра. Например, типичный размер радиуса роговицы составляет 7,8 мм. Процесс затем извлекает случайные выборки с использованием гауссова распределения со средним значением в 7,8 и среднеквадратическим отклонением в 0,78.
c
[0050] Например, начиная с типичных параметров глаза (радиус R роговицы=7,8 мм, расстояние от центра роговицы до центра зрачка K=4,2 мм, горизонтальное и вертикальное угловое отклонение составляет 5,0 градусов и 1,5 градуса), процесс варьирует значение каждого параметра глаза с [-30, 30]% исходных значений.
[0051] Вместо или в дополнение к фактическим данным объектов, могут использоваться моделированные данные. Например, фиг. 6A и 6B показывают графики значений оптимальной гомографии для коррекции смещения, вычисленных при различных положениях головы вдоль оси глубины для масштабирования на x, y. Фиг. 7A и 7B показывают аналогичные графики для перемещения в пространстве на x, y. Следует отметить, что последний элемент каждой гомографии нормализован к единице. Как можно видеть, графики являются сглаженными. Таким образом, оптимальные значения могут прогнозироваться в качестве моделированных данных для проверки экспериментально полученными данными.
[0052] Следует отметить, что использование моделированных данных вместо фактических калибровочных данных для объекта не ограничено технологией на основе сложного отношения. Другие решения для обнаружения взгляда, к примеру, способы на основе модели (которые оценивают трехмерный вектор взгляда и вычисляют двумерные интересующие точки посредством пересечения трехмерных лучей с двумерной плоскостью экрана), также могут использовать моделирование для калибровки.
[0053] Фиг. 8 является обобщенной блок-схемой последовательности операций способа, показывающей примерные этапы при фактическом использовании распознаваемой модели адаптивной гомографии. Этап 802 захватывает изображение, которое обрабатывается (этап 804) в данные блесков и связанные со зрачком данные для использования в качестве признаков (этап 808). Обученная модель использует данные признаков для того, чтобы определять данные коррекции положения головы, используемые для того, чтобы вычислять скорректированную информацию взгляда, например, координаты (или общий идентификатор сетки), в которых глаз объекта смотрит на экран, которая может выводиться в буфер и т.п. для потребления посредством операционного окружения системы слежения за взглядом, к примеру, приложения, онлайнового окружения, операционной системы и т.д. Результаты информации взгляда могут использоваться во множестве различных сценариев, в том числе для взаимодействий с естественным пользовательским интерфейсом, определения привлечения внимания для интерпретации пользовательского интереса и т.д. Этап 810 повторяет процесс для другого кадра; частота кадров или некоторая операция сглаживания может использоваться для того, чтобы предотвращать слишком большой разброс. В ответ на изменения координат взгляда, система слежения за взглядом может инициировать другое действие или ответ системы слежения за взглядом в зависимости от изменения взгляда пользователя, например, активировать или прекращать, или инициировать другое взаимодействие с естественным пользовательским интерфейсом, указывать другое определение привлечения внимания для интерпретации пользовательского интереса и т.д.
[0054] Адаптивная гомография, к примеру, как описано в технологии, описанной выше, предоставляет точность за рамками известных способов на основе гомографии, поскольку помимо коррекции смещений из движения головы, адаптивная гомография также учитывает пространственно варьирующиеся ошибки обнаружения взгляда, прогнозированные посредством позиции зрачка в нормализованном пространстве .
[0055] Вышеуказанная технология может комбинироваться с другими технологиями слежения за взглядом. Например, технология, описанная в данном документе, может комбинироваться в системе с другой технологией на основе двух глаз, к примеру, описанной в находящейся одновременно на рассмотрении заявке на патент (США), озаглавленной "EYE GAZE TRACKING USING BINOCULAR FIXATION CONSTRAINTS", поданной одновременно с данной заявкой, адвокатская выписка № 340834.01.
[0056] Как можно видеть, предусмотрена система, содержащая, по меньшей мере, четыре источника света и камеру, при этом источники света выполнены с возможностью формировать роговичные отражения в качестве блесков от глаза объекта, и камера выполнена с возможностью захватывать текущее изображение, содержащее блески. Модель адаптивного гомографического сопоставления, распознаваемая через переменные, включающие в себя переменные, представляющие местоположения головы относительно позиции калибровки и/или направлений взгляда, выполнена с возможностью сопоставлять данные признаков, соответствующие блескам, связанные со зрачком данные и/или данные взгляда для того, чтобы выводить информацию взгляда, указывающую то, куда в данный момент смотрит глаз объекта.
[0057] В одном или более аспектов, переменные, представляющие местоположения головы относительно позиции калибровки и позиций взгляда, могут быть основаны, по меньшей мере, частично на моделированных данных. Моделированные данные могут использоваться для того, чтобы представлять экспериментально полученные данные для обучения адаптивного гомографического сопоставления посредством калибровки таким образом, чтобы получать предикторные переменные при различных положениях головы. Экспериментально полученные данные моделируют адаптивную гомографию в качестве полиномиальной регрессии.
[0058] В одном или более аспектов, переменные, представляющие местоположения головы относительно позиции калибровки, соответствуют относительным движениям головы между различными положениями головы, кодированными посредством аффинных преобразований, преобразований подобия или гомографических преобразований. Переменные, представляющие направления взгляда, кодируются посредством связанных со зрачком данных.
[0059] Один или более аспектов направлены на использование модели адаптивного гомографического сопоставления для обнаружения взгляда, при этом модель адаптивного гомографического сопоставления обучается с возможностью компенсировать пространственно варьирующиеся ошибки обнаружения взгляда и зависимые от позы головы ошибки относительно позиции калибровки. Текущие данные блесков и связанные со зрачком данные захватываются в изображении и обрабатываются из изображения в качестве признаков, предоставленных в модель адаптивного гомографического сопоставления. Данные принимаются из модели адаптивного гомографического сопоставления на основе признаков, которые соответствуют текущей информации взгляда.
[0060] Один или более аспектов направлены на распознавание модели адаптивного гомографического сопоставления, включающее в себя использование множества наборов позиционных данных и связанных со зрачком данных в качестве предикторных переменных для моделирования адаптивной гомографии в качестве квадратичной регрессии. Использование множества наборов позиционных данных и позиции зрачка данные может содержать использование, по меньшей мере, некоторых моделированных данных, например, посредством прогнозирования значений коррекции смещения при различном масштабировании и/или перемещениях в пространстве положения головы.
[0061] Один или более аспектов направлены на захват изображения, включающего в себя глаз объекта, из которого извлекаются данные блесков и связанные со зрачком данные в качестве признаков, и использование функций в качестве ввода в модель адаптивного гомографического сопоставления, чтобы определять направление взгляда. Модель адаптивного гомографического сопоставления может распознаваться посредством использования, по меньшей мере, некоторых моделированных данных, соответствующих прогнозным значениям коррекции смещения при различных положениях головы. Модель адаптивного гомографического сопоставления может распознаваться посредством получения первой предикторной переменной, содержащей вектор движения, соответствующий относительному положению головы, и получения второй предикторной переменной, соответствующей направлению взгляда. Распознавание может включать в себя минимизацию целевой функции на основе данных, соответствующих множеству положений головы и направлений взгляда. В общем, модель адаптивного гомографического сопоставления использует масштабирование и перемещение в пространстве для прогнозирования и гомографию для коррекции.
ПРИМЕРНОЕ ОПЕРАЦИОННОЕ ОКРУЖЕНИЕ
[0062] Фиг. 9 иллюстрирует пример подходящего мобильного устройства 900, в котором могут быть реализованы аспекты предмета изобретения, описанные в данном документе. Мобильное устройство 900 является только одним примером устройства и не имеет намерение налагать какие-либо ограничения на объем использования или на функциональность аспектов предмета изобретения, описанных в данном документе. Мобильное устройство 900 не должно интерпретироваться как имеющее какую-либо зависимость или требование, связанное с любым или комбинацией компонентов, проиллюстрированных в примерном мобильном устройстве 900. Мобильное устройство может содержать карманное устройство, к примеру, смартфон, планшетный компьютер, переносной компьютер и т.д. Персональный компьютер альтернативно может использоваться, например, с камерой(ами) и источниками света, смонтированными в дисплее.
[0063] Примерное мобильное устройство 900 может носиться на очках, защитных очках или шляпах, либо другие носимые устройства, такие как устройства в форме наручных часов, включающие в себя внешние компьютеры, представляют собой подходящие окружения. Следует отметить, что хотя очки и шляпы носятся на голове, они могут носиться в различных позициях относительно головы, и в силу этого коррекция смещения положения головы может быть надлежащей.
[0064] Со ссылкой на фиг. 9, примерное устройство для реализации аспектов предмета изобретения, описанных в данном документе, включает в себя мобильное устройство 900. В некоторых вариантах осуществления, мобильное устройство 900 содержит сотовый телефон, карманное устройство, которое обеспечивает возможность голосовой связи с другими, некоторое другое устройство голосовой связи и т.п. В этих вариантах осуществления, мобильное устройство 900 может быть оснащено камерой для съемки изображений, хотя это может быть необязательным в других вариантах осуществления. В других вариантах осуществления, мобильное устройство 900 может содержать персональное цифровое устройство (PDA), карманное игровое устройство, ноутбук, принтер, устройство, включающее в себя абонентскую приставку, мультимедийный центр или другое устройство, другие мобильные устройства и т.п. В еще одних других вариантах осуществления, мобильное устройство 900 может содержать устройства, которые, в общем, считаются немобильными, такие как персональные компьютеры, серверы и т.п.
[0065] Компоненты мобильного устройства 900 могут включать в себя, но не только, модуль 905 обработки, системное запоминающее устройство 910 и шину 915, которая соединяет различные системные компоненты, включающие в себя системное запоминающее устройство 910, с модулем 905 обработки. Шина 915 может включать в себя любую из нескольких типов шинных структур, включающих в себя шину запоминающего устройства, контроллер запоминающего устройства, периферийную шину и локальную шину с использованием любой из множества шинных архитектур и т.п. Шина 915 обеспечивает возможность передачи данных между различными компонентами мобильного устройства 900.
[0066] Мобильное устройство 900 может включать в себя множество компьютерночитаемых/машиночитаемых носителей. Такие носители могут представлять собой любые доступные носители, к которым может осуществляться доступ посредством мобильного устройства 900, и включают в себя как энергозависимые и энергонезависимые носители, так съемные и стационарные носители. В качестве примера, а не ограничения, машиночитаемые носители могут содержать компьютерные носители хранения данных и среды связи. Компьютерные носители хранения данных включают в себя энергозависимые и энергонезависимые, съемные и несъемные носители, реализованные любым способом или технологией для хранения информации, такой как машиночитаемые инструкции, структуры данных, программные модули или другие данные. Компьютерные носители хранения данных включают в себя, но не только, RAM, ROM, EEPROM, флэш-память или другую технологию запоминающих устройств, CD-ROM, универсальные цифровые диски (DVD) или другое устройство хранения данных на оптических дисках, магнитные кассеты, магнитную ленту, устройство хранения данных на магнитных дисках или другие магнитные устройства хранения данных либо любой другой носитель, который может использоваться для того, чтобы сохранять требуемую информацию, и к которому может осуществляться доступ посредством мобильного устройства 900.
[0067] Среды связи типично осуществляют машиночитаемые инструкции, структуры данных, программные модули или другие данные в модулированном сигнале данных, таком как несущая или другой транспортный механизм, и включают в себя любые среды доставки информации. Термин "модулированный сигнал данных" означает сигнал, который имеет одну или более характеристик, заданных или измененных таким образом, чтобы кодировать информацию в сигнале. В качестве примера, а не ограничения, среды связи включают в себя проводные среды, такие как проводная сеть или прямое проводное соединение, и беспроводные среды, такие как акустические, радиочастотные (RF), Bluetooth, беспроводной USB-интерфейс, инфракрасные, Wi-Fi, WiMAX и другие беспроводные среды. Комбинации любых из вышеприведенных элементов также должны быть включены в объем машиночитаемых носителей.
[0068] Системное запоминающее устройство 910 включает в себя компьютерные носители хранения данных в форме энергозависимого и/или энергонезависимого запоминающего устройства и может включать в себя постоянное запоминающее устройство (ROM) и оперативное запоминающее устройство (RAM). На мобильном устройстве, таком как сотовый телефон, код 920 операционной системы иногда включается в ROM, хотя в других вариантах осуществления, это необязательно. Аналогично, прикладные программы 925 зачастую размещаются в RAM, хотя также в других вариантах осуществления, прикладные программы могут быть размещены в ROM или в другом машиночитаемом запоминающем устройстве. Неупорядоченный массив 930 данных предоставляет запоминающее устройство для состояния, ассоциированного с операционной системой 920 и прикладными программами 925. Например, операционная система 920 и прикладные программы 925 могут сохранять переменные и структуры данных в неупорядоченном массиве 930 данных в ходе своей работы.
[0069] Мобильное устройство 900 также может включать в себя другое съемное/стационарное, энергозависимое/энергонезависимое запоминающее устройство. В качестве примера, фиг. 9 иллюстрирует флэш-карту 935, накопитель 936 на жестких дисках и карту 937 памяти в формате Memory Stick. Накопитель 936 на жестких дисках может быть миниатюризирован, например, таким образом, что он помещается в гнездо памяти. Мобильное устройство 900 может взаимодействовать с этими типами энергонезависимого съемного запоминающего устройства через интерфейс 931 съемного запоминающего устройства или может быть соединено через универсальную последовательную шину (USB), IEEE 9394, одно или более из проводного порта(ов) 940 или антенн 965. В этих вариантах осуществления, съемные запоминающие устройства 935-937 могут взаимодействовать с мобильным устройством через модуль(и) 932 связи. В некоторых вариантах осуществления, не все эти типы запоминающего устройства могут быть включены в одно мобильное устройство. В других вариантах осуществления, один или более из этих и других типов съемного запоминающего устройства могут быть включены в одно мобильное устройство.
[0070] В некоторых вариантах осуществления, накопитель 936 на жестких дисках может подключаться таким образом, чтобы на более постоянной основе присоединяться к мобильному устройству 900. Например, накопитель 936 на жестких дисках может подключаться к такому интерфейсу, как параллельный интерфейс ATA (PATA), последовательный интерфейс ATA (SATA) и т.п., который может подключаться к шине 915. В таких вариантах осуществления, вынимание жесткого диска может заключать в себе снятие крышки покрытия мобильного устройства 900 и развинчивание винтов или другого крепежа, который соединяет жесткий диск 936 с опорными конструкциями в мобильном устройстве 900.
[0071] Съемные запоминающие устройства 935-937 и их ассоциированные компьютерные носители хранения данных, поясненные выше и проиллюстрированные на фиг. 9, обеспечивают хранение машиночитаемых инструкций, программных модулей, структур данных и других данных для мобильного устройства 900. Например, съемное запоминающее устройство или устройства 935-937 могут сохранять изображения, снятые посредством мобильного устройства 900, голосовые записи, контактную информацию, программы, данные для программ и т.д.
[0072] Пользователь может вводить команды и информацию в мобильное устройство 900 через устройства ввода, такие как клавишная панель 941 и микрофон 942. В некоторых вариантах осуществления, дисплей 943 может представлять собой сенсорный экран и может обеспечивать возможность пользователю вводить команды и информацию на нем. Клавишная панель 941 и дисплей 943 могут подключаться к модулю 905 обработки через интерфейс 950 пользовательского ввода, который соединяется с шиной 915, но также могут подключаться посредством других интерфейсных и шинных структур, таких как модуль(и) 932 связи и проводной порт(ы) 940. Обнаружение 952 движения может использоваться для того, чтобы определять жесты, выполненные с помощью устройства 900.
[0073] Как описано в данном документе, блески глаз и другие связанные с глазом данные могут захватываться и обрабатываться для ввода. Обработка может выполняться в программной, в аппаратной логике либо в комбинации программной и аппаратной логики.
[0074] Пользователь может обмениваться данными с другими пользователями, например, через говорение в микрофон 942 и через текстовые сообщения, которые вводятся на клавишной панели 941 или сенсорном дисплее 943. Аудиомодуль 955 может предоставлять электрические сигналы для того, чтобы активировать динамик 944, а также принимать и оцифровывать аудиосигналы, принятые из микрофона 942.
[0075] Мобильное устройство 900 может включать в себя видеомодуль 960, который предоставляет сигналы для того, чтобы активировать камеру 961. Видеомодуль 960 также может принимать изображения, полученные посредством камеры 961, и предоставлять эти изображения в модуль 905 обработки и/или запоминающее устройство, включенное в мобильное устройство 900. Изображения, полученные посредством камеры 961, могут содержать видео, одно или более изображений, которые не формируют видео, или некоторую комбинацию вышеозначенного.
[0076] Модуль(и) 932 связи может предоставлять сигналы в и принимать сигналы из одной или более антенн 965. Одна из антенн 965 может передавать и принимать сообщения для сотовой телефонной сети. Другая антенна может передавать и принимать Bluetooth-сообщения. Еще одна другая антенна (или совместно используемая антенна) может передавать и принимать сетевые сообщения через беспроводной сетевой Ethernet-стандарт.
[0077] Еще дополнительно, антенна предоставляет информацию на основе местоположения, например, GPS-сигналы, в GPS-интерфейс и механизм 972. В свою очередь, GPS-механизм 972 делает доступным соответствующие GPS-данные (например, время и координаты) для обработки.
[0078] В некоторых вариантах осуществления, одна антенна может использоваться для того, чтобы передавать и/или принимать сообщения более чем для одного типа сети. Например, одна антенна может передавать и принимать голосовые и пакетные сообщения.
[0079] При работе в сетевом окружении, мобильное устройство 900 может подключаться к одному или более удаленных устройств. Удаленные устройства могут включать в себя персональный компьютер, сервер, маршрутизатор, сетевой PC, сотовый телефон, устройство воспроизведения мультимедиа, равноправное устройство либо другой общий сетевой узел и типично включают в себя множество или все элементы, описанные выше относительно мобильного устройства 900.
[0080] Аспекты предмета изобретения, описанные в данном документе, могут работать во множестве других вычислительных системных окружений или конфигураций специального назначения или общего назначения. Примеры хорошо известных вычислительных систем, окружений и/или конфигураций, которые могут быть подходящими для использования с аспектами предмета изобретения, описанными в данном документе, включают в себя, но не только, персональные компьютеры, серверные компьютеры, карманные или дорожные устройства, многопроцессорные системы, микроконтроллерные системы, абонентские приставки, программируемую бытовую электронную аппаратуру, сетевые PC, миникомпьютеры, мэйнфреймы, распределенные вычислительные окружения, которые включают в себя любые из вышеприведенных систем или устройств, и т.п.
[0081] Аспекты предмета изобретения, описанные в данном документе, могут быть описаны в общем контексте машиноисполняемых инструкций, таких как программные модули, выполняемые посредством мобильного устройства. В общем, программные модули включают в себя процедуры, программы, объекты, компоненты, структуры данных и т.д., которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Аспекты предмета изобретения, описанные в данном документе, также могут быть осуществлены на практике в распределенных вычислительных окружениях, в которых задачи выполняются посредством удаленных устройств обработки, которые связаны через сеть связи. В распределенном вычислительном окружении, программные модули могут быть размещены как на локальных, так и на удаленных компьютерных носителях хранения данных, включающих в себя запоминающие устройства.
[0082] Кроме того, хотя термин "сервер" может использоваться в данном документе, следует признавать, что этот термин также может охватывать клиент, набор из одного или более процессов, распределенных по одному или более компьютеров, одно или более автономных устройств хранения данных, набор из одного или более других устройств, комбинацию одного или более из вышеозначенного и т.п.
ЗАКЛЮЧЕНИЕ
[0083] Хотя изобретение допускает различные модификации и альтернативные конструкции, его конкретные проиллюстрированные варианты осуществления показаны на чертежах и подробно описаны выше. Тем не менее, следует принимать во внимание, что отсутствует намерение ограничивать изобретение конкретными раскрытыми формами, а наоборот, намерение состоит в том, чтобы охватывать все модификации, альтернативные конструкции и эквиваленты, попадающие в пределы сущности и объем изобретения.
[0084] В дополнение к различным вариантам осуществления, описанным в данном документе, следует понимать, что могут использоваться другие аналогичные варианты осуществления, либо модификации и добавления могут вноситься в описанный вариант(ы) осуществления для выполнения идентичной или эквивалентной функции соответствующего варианта(ов) осуществления без отступления от них. Еще дополнительно, несколько кристаллов обработки или несколько устройств могут совместно использовать выполнение одной или более функций, описанных в данном документе, и аналогично, хранение может осуществляться через множество устройств. Соответственно, изобретение не должно быть ограничено одним вариантом осуществления, а вместо этого, должно истолковываться согласно охвату, сущности и объему в соответствии с прилагаемой формулой изобретения.