Воплощение визуального представления с помощью изученного ввода от пользователя

Иллюстрации

Показать все

Изобретение относится к области визуализации визуального представления пользователя. Технический результат - обеспечение визуального представления пользователя посредством выполнения анимаций, основанных на истории вводов от пользователя. Способ применения анимации к визуальному представлению содержит: выбор первой анимации из множества сохраненных анимаций на основании первого изображения, указывающего пользователя, находящегося в настоящее время в физическом пространстве для захвата; применение упомянутой первой анимации к визуальному представлению пользователя на устройстве отображения; обновление по меньшей мере одной анимации из упомянутого множества сохраненных анимаций на основании характеристик пользователя, идентифицированного на основании первого изображения; в ответ на определение из второго изображения физического пространства для захвата, что пользователь не находится в упомянутом физическом пространстве для захвата, выбор второй анимации из упомянутого множества сохраненных анимаций на основании предыдущего изображения; применение упомянутой второй анимации к визуальному представлению пользователя на устройстве отображения. 3 н. и 15 з.п. ф-лы, 12 ил.

Реферат

ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ

[0001] Различные приложения изображают визуальное представление, которое соответствует пользователю, где пользователь выполняет управление через некоторые действия, такие как выбор кнопок на удаленном или перемещающимся контроллере некоторым способом. Визуальное представление является компьютерным представлением, которое обычно принимает форму двумерной (2D) или трехмерной (3D) модели и обрабатывается в различных приложениях, таких как компьютерные игры, видеоигры, чаты, форумы, сообщества, службы передачи мгновенных сообщений и т.п. Визуальное представление может быть в форме аватара, выдуманного персонажа, анимированного изображения или животного, курсора, руки или подобного. Многие компьютерные приложения, такие как компьютерные игры, мультимедийные приложения, офисные приложения или подобные предоставляют выбор предварительно определенных анимированных персонажей, которые могут быть выбраны для использования в приложении в качестве аватара пользователя. Как правило, анимации, выполненные аватаром, выбираются из библиотеки анимаций. Пользователи могут выбирать для своих аватаров выполнение конкретных анимаций из этой библиотеки нажатием кнопок или клавиш удалено, например.

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

[0002] В настоящем описании раскрыты способы для интеллектуального обучения аватара для выполнения анимаций с помощью изучения вводов от пользователя. В течение времени аватар в виртуальном пространстве может казаться отражением пользователя в виртуальном пространстве, включающим в себя аспекты отображения признаков пользователя, поведений, тенденций, образцов голоса и т.д. Например, система может иметь устройство захвата, которое захватывает данные о пользователе в физическом пространстве. Система может идентифицировать характеристики пользователя, тенденции, образцы голоса, поведения, жесты и т.д. В течение времени система может изучать тенденции пользователя и интеллектуально применять анимации к аватару пользователя таким образом, что аватар ведет себя и отвечает в соответствии с идентифицированными поведениями пользователя. Таким образом, обучение аватара анимации для выполнения может содержать изучение вводов от пользователя и формирование аватара для того, чтобы напоминать пользователя.

[0003] Для этого система может визуализировать аватар, который напоминает пользователя, присутствует или нет пользователь в физическом пространстве. В примерном варианте осуществления, анимации, примененные к аватару, могут быть анимациями, выбранными из библиотеки предварительно упакованных анимаций, таких как те, которые идут с программой, приложением или системой, например. Выбранные анимации могут быть теми, которые соответствуют вводам от пользователя, изученным системой. В другом примерном варианте осуществления анимации в библиотеке могут быть анимациями, введенными и записанными пользователем в словарь анимации аватара. Например, система или пользователь могут повторно программировать анимацию для отражения фактических движений пользователя или поведений, захваченных устройством захвата, например. Таким образом, анимации могут быть добавлены к или переписаны в библиотеке анимаций аватара.

[0004] Этот раздел описания сущности изобретения предоставляется для ввода выбора понятий в упрощенной форме, которые дополнительно описываются ниже в подробном описании. Этот раздел описания сущности изобретения не предназначается для идентификации ключевых признаков или существенных признаков заявленной сущности изобретения, и при этом он не предназначается для использования в качестве ограничения области заявленной сущности изобретения. Кроме того, заявленная сущность изобретения не ограничивается реализациями, которые решают любые или все недостатки, отмеченные в любой части этого описания.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

[0005] Системы, способы и считываемый компьютером носитель для изменения визуального представления в соответствии с этим описанием дополнительно описаны с ссылкой на сопроводительные чертежи, на которых:

[0006] Фиг. 1 иллюстрирует примерный вариант осуществления системы отслеживания, анализа и распознавания цели с пользователем, играющим в игру.

[0007] Фиг. 2 иллюстрирует примерный вариант осуществления устройства захвата, которое может использоваться в системе отслеживания, анализа и распознавания цели и способах формирования цепочки и смешивания анимации.

[0008] Фиг. 3 иллюстрирует примерный вариант осуществления вычислительной среды, в которой описанные в настоящем описании способы анимации могут быть воплощены.

[0009] Фиг. 4 иллюстрирует другой примерный вариант осуществления вычислительной среды, в которой описанные в настоящем описании способы анимации могут быть воплощены

[0010] Фиг. 5A иллюстрируют скелетное отображение пользователя, которое генерируется из изображения глубины.

[0011] Фиг. 5B иллюстрирует дополнительные подробности архитектуры устройства распознавания жестов, показанного на Фиг. 2.

[0012] Фиг.6A и 6B изображают примерную систему отслеживания, анализа и распознавания цели и примерные варианты осуществления для отображения аватара пользователя на основании истории вводов от этого пользователя.

[0013] Фиг. 7A изображает двух пользователей, взаимодействующих друг с другом удаленно с помощью соответствующих им систем отслеживания, анализа и распознавания цели. Фиг. 7B изображает первого пользователя, взаимодействующего с аватаром второго пользователя, причем второй пользователь отсутствует на сцене.

[0014] Фиг. 8 изображает примерную блок-схему для способа сбора данных поведения относительно вводов от пользователя.

[0015] Фиг. 9 изображает примерную блок-схему для способа интеллектуального применения анимаций к аватару пользователя.

ПОДРОБНОЕ ОПИСАНИЕ ИЛЛЮСТРАТИВНЫХ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ

[0016] В настоящем описании описываются способы для обработки визуального представления пользователя, такого как аватар, который ведет себя в соответствии с пользователем. Например, описываются системы и способы, которые содержат интеллектуально обучаемый аватар для выполнения анимаций посредством изучения тенденций пользователя с помощью вводов от пользователя. Визуальное представление пользователя может быть в форме аватара, курсора на экране, руки или любого другого виртуального объекта, который соответствует пользователю в физическом пространстве. Вычислительная система может моделировать и отображать визуальное представление пользователя, захватывая данные из физического пространства. Например, система может содержать устройство захвата, которое захватывает данные изображения сцены, и монитор, который отображает визуальное представление, которое соответствует пользователю на сцене. Может быть желательно инициализировать и/или настроить визуальное представление на основании физических характеристик пользователя. Например, устройство захвата может идентифицировать физические признаки пользователя и настраивать аватар пользователя на основании идентифицированных признаков, таких как форма глаза, форма носа, одежда, аксессуары.

[0017] Для генерирования модели, представляющей пользователя в физическом пространстве, устройство захвата может захватывать изображение глубины сцены и просматривать цели или объекты на сцене. В одном варианте осуществления устройство захвата может определять, соответствуют ли одна или более целей, или объектов, на сцене человеку-цели, такой как пользователь. Для определения, соответствует ли цель или объект на сцене человеку-цели, каждая из целей может быть изучена и сравнена с образцом модели человеческого тела. Каждая цель или объект, которые соответствуют модели человеческого тела, могут затем быть сканированы для генерирования скелетной модели, ассоциированной с ней. Например, цель, идентифицированная как человек, может быть сканирована для генерирования скелетной модели, ассоциированной с ней. Модель пользователя, такая как скелетная модель или контур, может представлять тип тела пользователя, костную структуру, рост, вес или подобное. Модель может затем быть выдана вычислительной среде для вычисления модели и ссылки на аватар, ассоциированный с моделью.

[0018] Система может отслеживать пользователя и любое передвижение в физическом пространстве и идентифицировать характеристики пользователя, которые могут быть применены к визуальному представлению пользователя. Идентифицированные характеристики могут быть указывающими поведения пользователя. Например, система может идентифицировать физические характеристики пользователя, тенденции, образцы голоса, жесты и т.д. Система может продолжать отслеживать пользователя во времени и применять модификации или обновления к аватару пользователя на основании истории данных отслеживания. Например, устройство захвата может продолжать идентифицировать поведения и особенности, эмоции, образцы речи или подобное, пользователя и применять их к аватару пользователя. Верность воспроизведения визуализированного аватара относительно подобия аватара к аватару, увеличивается с течением времени поскольку система собирает данные истории для этого пользователя.

[0019] Система, способы и компоненты создания аватара и настройки, описанные в настоящем описании, могут быть воплощены в мультимедийной консоли, такой как игровая консоль или в любом другом вычислительном устройстве, в котором желательно отображать визуальное представление цели, включающей в себя посредством примера и без какого-либо намеченного ограничения, спутниковые приемники, телевизионные приставки, аркадные игры, персональные компьютеры (PC), портативные телефоны, персональные цифровые ассистенты (PDA) и другие переносные устройства.

[0020] Фиг.1A и 1B иллюстрируют вариант осуществления примерной конфигурации системы 10 отслеживания, анализа и распознавания цели, которая может использовать способы, отслеживающие историю вводов от пользователя для генерирования аватара, который напоминает пользователя. В примерном варианте осуществления пользователь 18 играет в игру бокс. В примерном варианте осуществления система 10 может распознать, проанализировать и/или отследить человека-цель, такую как пользователь 18. Система 10 может собирать информацию, относящуюся к жестам пользователя в физическом пространстве, так же как физические свойства пользователя и характеристики поведения.

[0021] Как показано на Фиг. 1A, система 10 отслеживания, анализа и распознавания цели может включать в себя вычислительную среду 12. Вычислительная среда 12 может быть компьютером, игровой системой или консолью, или подобным. Согласно примерному варианту осуществления, вычислительная среда 12 может включать в себя компоненты аппаратного обеспечения и/или компоненты программного обеспечения таким образом, что вычислительная среда 12 может использоваться для выполнения приложений, таких как игровые приложения, неигровые приложения или подобные.

[0022] Как показано на Фиг. 1A, система 10 отслеживания, анализа и распознавания цели может дополнительно включать в себя устройство 20 захвата. Устройство 20 захвата может быть, например, камерой, которая может быть использована для визуального контроля одного или более пользователей, таких как пользователь 18, таким образом, что жесты, выполненные одним или более пользователями, могут быть захвачены, проанализированы и отслежены для выполнения одного или более элементов управления, или действий в приложении, как описано более подробно ниже.

[0023] Согласно одному варианту осуществления, система 10 отслеживания, анализа и распознавания цели может быть соединена с аудиовизуальным устройством 16, таким как телевизор, монитор, телевизор с высоким разрешением (HDTV) или подобным, которое может выдавать визуальные представления игры или приложения и/или аудио пользователю, такому как пользователь 18. Например, вычислительная среда 12 может включать в себя видео адаптер, такой как графическая карта, и/или аудио адаптер, такой как звуковая карта, которая может обеспечивать аудиовизуальные сигналы, ассоциированные с игровым приложением, неигровым приложением или подобным. Аудиовизуальное устройство 16 может принимать аудиовизуальные сигналы от вычислительной среды 12 и может затем выводить визуальные представления игры или приложения и/или аудио, ассоциированное с аудиовизуальными сигналами пользователю 18. Согласно одному варианту осуществления аудиовизуальное устройство 16 может быть подсоединено к вычислительной среде 12 с помощью, например, кабеля S-видео, коаксиального кабеля, кабеля HDMI, кабеля DVI, кабеля VGA или подобного.

[0024] Как показано на Фиг. 1, система 10 отслеживания, анализа и распознавания цели может использоваться для распознавания, анализа и/или отслеживания человека-цели, такого как пользователь 18. Движением визуального представления можно управлять сопоставлением движения визуального представления с движением пользователя в физическом пространстве. Движение в физическом пространстве может быть жестом, который соответствует элементу управления в системе или пространстве приложения, таком как виртуальное пространство и/или игровое пространство. Например, пользователь 18 может быть отслежен, используя устройство 20 захвата таким образом, что движения пользователя 18 могут интерпретироваться в качестве средства управления, которое может использоваться для воздействия на приложение, выполняемое вычислительной средой 12. Вычислительная среда может определять, какие элементы управления выполнять в приложении в вычислительной среде, на основании, например, жеста пользователя, распознанного и сопоставленного модели пользователя. Таким образом, пользователь может управлять движением аватара, делая жесты в физическом пространстве.

[0025] Захваченное движение может быть любым движением в физическом пространстве, которое захвачено устройством захвата, таким как камера. Захваченное движение может включать в себя движение цели в физическом пространстве, такой как пользователь или объект. Захваченное движение может включать в себя жест, который преобразуется в управление в операционной системе или приложении. Движение может быть динамичным, таким как движение бега, или движение может быть статическим, таким как пользователь, который находится в позе с небольшим движением или без движения.

[0026] Система 10 может преобразовать ввод в устройство 20 захвата в анимацию, при этом ввод является представляющим движение пользователя, так что анимация возбуждается посредством этого ввода. Таким образом, движения пользователя могут ставиться в соответствие аватару 40 таким образом, что движения пользователя в физическом пространстве выполняются аватаром 40. Движения пользователя могут быть жестами, которые применимы к средству управления в приложении. Как показано на Фиг. 1A и 1B, в примерном варианте осуществления выполнение приложения в вычислительной среде 12 может быть игрой в бокс, в которую может играть пользователь 18.

[0027] Устройство 20 захвата может захватывать данные, представляющие поведения пользователя. Например, устройство захвата может захватывать характеристики, которые являются указывающими поведения пользователя. Такие характеристики могут включать в себя позицию тела пользователя, выражения лица, голосовые команды, образцы речи, жесты или подобное. Вычислительная среда 12 может анализировать захваченные данные и коррелировать поведения пользователя с контекстными обстоятельствами, такими как условия среды пользователя, статус системы или приложения, успех/результат пользователя в приложении, активный или не активный статус пользователя или любое другое обнаруженное обстоятельство. Таким образом, система может изучать тенденции поведения пользователя, например, когда пользователь реагирует на различные ситуации.

[0028] Вычислительная среда 12 может использовать аудиовизуальное устройство 16 для обеспечения визуального представления аватара 40 игрока, которым пользователь 18 может управлять с помощью его или ее движений. Аватар 40 игрока может иметь характеристики пользователя, идентифицированные устройством 20 захвата, или система 10 может использовать свойства известного боксера или изобразить телосложение профессионального боксера для визуального представления, которое соответствует движениям пользователя. Согласно примерному варианту осуществления, вычислительная среда 12 и устройство 20 захвата системы 10 распознавания, анализа и отслеживания цели могут использоваться для распознавания и анализа удара пользователя 18 в физическом пространстве таким образом, что удар может интерпретироваться в качестве элемента (средства) управления в игре аватаром 40 игрока в пространстве игры. Например, как показано на Фиг. 1B, пользователь 18 может нанести удар в физическом пространстве для побуждения аватара 40 игрока нанести удар в пространстве игры. Вычислительная среда 12 может также использовать аудиовизуальное устройство 16 для выдачи визуального представления боксирующего противника 38 пользователю 18.

[0029] Другие движения пользователя 18 могут также интерпретироваться в качестве других элементов управления или действий, таких как элементы управления для подпрыгивания, раскачивания, перемещения, блокировки, атаки или проведения множества ударов различной силы. Кроме того, некоторые движения могут интерпретироваться в качестве элементов управления, которые могут соответствовать действиям, отличным от управления аватаром 40 игрока. Например, игрок может использовать движения для завершения, остановки или сохранения игры, выбора уровня, просмотра лучших результатов, общения с другом и т.д. Дополнительно полный диапазон движений пользователя 18 может быть доступным, использоваться и анализироваться любым подходящим способом для взаимодействия с приложением.

[0030] Множественные пользователи могут взаимодействовать друг с другом из удаленных местоположений. Например, визуальное представление боксирующего противника 38 может быть представлением другого пользователя, такого как второй пользователь в этом физическом пространстве, с пользователем 18 или сетевым пользователем во втором физическом пространстве. Альтернативно, система может визуализировать аватар, ассоциированный с пользователем, присутствует ли пользователь в физическом пространстве или взаимодействует с системой/приложением. Например, аватар первого пользователя может взаимодействовать с аватаром второго пользователя. Первый пользователь может присутствовать в физическом пространстве, управляя жестами и движениями аватара первого пользователя. Однако, второй пользователь, ассоциированный с аватаром второго пользователя, может не присутствовать в физическом пространстве. Используя историю вводов вторым пользователем, система может интеллектуально применять анимации к аватару второго пользователя таким образом, что аватар напоминает поведения, изученные из вводов от второго пользователя. Аватар второго пользователя может напоминать второго пользователя посредством близкого отражения тенденций второго пользователя, привычек и других характеристик, применимых к приложению. Первый пользователь поэтому может взаимодействовать в виртуальном мире с аватаром второго пользователя, который может быть подобным случаю, когда второй пользователь физически присутствует и управляет аватаром второго пользователя.

[0031] В примерных вариантах осуществления человек-цель, такой как пользователь 18, может быть объектом. В таких вариантах осуществления пользователь электронной игры может держать объект таким образом, что движения игрока и объекта могут использоваться для настройки и/или управления параметрами игры. Например, движение игрока, держащего ракетку, может быть отслежено и использовано для управления ракеткой на экране в электронной спортивной игре. В другом примерном варианте осуществления движение игрока, держащего объект, может быть отслежено и использовано для управления оружием на экране в электронной боевой игре. Жесты пользователя или движение могут интерпретироваться как элементы управления, которые могут соответствовать действиям, отличным от управления аватаром 40 игрока. Например, игрок может использовать движения для завершения игры, чтобы сделать паузу или сохранить игру, выбрать уровень, посмотреть таблицу результатов, общаться с другом и т.д. Фактически любой управляемый аспект операционной системы и/или приложения может управляться движениями цели, такой как пользователь 18.

[0032] Согласно другим примерным вариантам осуществления, система 10 отслеживания, анализа и распознавания цели может интерпретировать движения цели для управления аспектами операционной системы и/или приложения, которые находятся вне игрового пространства. Жест пользователя может быть элементом управления, применимым к операционной системе, неигровым аспектам игры или неигровому приложению. Жесты пользователя могут интерпретироваться в качестве манипуляции объектом, такой как управление пользовательским интерфейсом. Например, рассмотрим пользовательский интерфейс, имеющий интерфейс в виде лепестков или интерфейс с закладками, выстроенными вертикально слева направо, когда выбор каждого лепестка или закладки открывают опции для различных элементов управления в приложении или системе. Система может идентифицировать жест рукой пользователя для перемещения закладки, когда рука пользователя в физическом пространстве виртуально накладывается на закладку в пространстве приложения. Жест, включающий в себя паузу, движение захвата и затем движение руки налево, может интерпретироваться как выбор закладки и затем ее перемещение ее в другую сторону для открытия следующей закладки. Точно так же система может изучать поведения пользователя из вводов от пользователя в течение выполнения любого типа приложения. Система может анимировать аватар пользователя для поведения в соответствии с изученными вводами в этом приложении или любом другом приложении.

[0033] Фиг. 2 иллюстрирует примерный вариант осуществления устройства 20 захвата, которое может использоваться для распознания цели, анализа и отслеживания, когда цель может быть пользователем или объектом. Согласно примерному варианту осуществления, устройство 20 захвата может быть сконфигурировано для захвата видео с информацией глубины, включающей в себя изображение глубины, которое может включать в себя значения глубины, с помощью любого подходящего способа, включающего в себя, например, время прохождения, структурированный свет, стерео изображение или подобное. Согласно одному варианту осуществления, устройство 20 захвата может организовывать вычисленную информацию глубины в "уровни Z" или уровни, которые могут быть перпендикулярными Оси Z, проходящей от камеры глубины вдоль ее луча обзора.

[0034] Как показано на Фиг. 2, устройство 20 захвата может включать в себя компонент 22 камеры изображения. Согласно примерному варианту осуществления, компонент 22 камеры изображения может быть камерой глубины, которая может захватывать изображение глубины сцены. Изображение глубины может включать в себя двумерную (2-D) пиксельную область захваченной сцены, где каждый пиксель в 2-D пиксельной области может представлять значение глубины, такое как длина или расстояние в, например, сантиметрах, миллиметрах или подобном, от объекта в захваченной сцене от камеры.

[0035] Как показано на Фиг. 2, согласно примерному варианту осуществления, компонент 22 камеры изображения может включать в себя компонент 24 ИК света, трехмерную (3-D) камеру 26 и камеру 28 RGB, которые могут использоваться для захвата изображения глубины сцены. Например, при анализе времени прохождения, компонент 24 ИК света от устройства 20 захвата может испускать инфракрасный свет на сцену и может затем использовать датчики (не показаны) для обнаружения обратнорассеянного света от поверхности одной или более целей и объектов в сцене, используя, например, 3-D камеры 26 и/или камеры 28 RGB. В некоторых вариантах осуществления, пульсирующий инфракрасный свет может использоваться таким образом, что время между выходящим импульсом света и соответствующим входящим импульсом света может быть измерено и использовано для определения физического расстояния от устройства 20 захвата до конкретного местоположения на целях или объектах на сцене. Дополнительно в других примерных вариантах осуществления, фаза выходящей волны света может быть сравнима с фазой входящей волны света для определения смещения фазы. Смещение фазы может затем использоваться для определения физического расстояния от устройства 20 захвата до конкретного местоположения на целях или объектах.

[0036] Согласно другому примерному варианту осуществления, анализ времени прохождения может быть использован для косвенного определения физического расстояния от устройства 20 захвата до конкретного местоположения на целях или объектах, посредством анализа интенсивности отраженного пучка света в течение периода времени с помощью различных способов, включающих в себя, например, изображение импульса света с помощью затвора.

[0037] В другом примерном варианте осуществления устройство 20 захвата может использовать структурированный свет для захвата информации глубины. При таком анализе шаблонный свет (т.е., свет, отображаемый в качестве известного шаблона, такого как сеточный шаблон или шаблон полосы), может быть спроецирован на сцену с помощью, например, компонента 24 ИК света. После ударения о поверхность одна или более целей или объектов на сцене, шаблон может стать деформированным в ответ. Такая деформация шаблона может быть захвачена, например, 3-D камерой 26 и/или камерой 28 RGB и может затем быть проанализирована для определения физического расстояния от устройства 20 захвата до конкретного местоположения на целях или объектах.

[0038] Согласно другому варианту осуществления, устройство 20 захвата может включать в себя две или больше физически отделенные камеры, которые могут просматривать сцену с различных углов, получать визуальные стерео данные, которые могут быть разрешены для генерирования информации глубины.

[0039] Устройство 20 захвата может дополнительно включать в себя микрофон 30 или множество микрофонов. Микрофон 30 может включать в себя преобразователь или датчик, который может принимать и преобразовывать звук в электрический сигнал. Согласно одному варианту осуществления, микрофон 30 может использоваться для уменьшения обратной связи между устройством захвата 20 и вычислительной средой 12 в системе 10 распознавания, анализа и отслеживания цели. Дополнительно микрофон 30 может использоваться для приема аудио сигналов, которые могут также быть выданы пользователем для управления приложениями, такими как игровые приложения, неигровые приложения или подобными, которые могут быть выполнены вычислительной средой 12.

[0040] В примерном варианте осуществления устройство 20 захвата может дополнительно включать в себя процессор 32, который может быть оперативно подсоединен к компоненту 22 камеры изображения. Процессор 32 может включать в себя стандартизированный процессор, специализированный процессор, микропроцессор или подобный, который может выполнять команды, которые могут включать в себя команды для приема изображения глубины, определения того, может ли подходящая цель быть включена в изображение глубины, преобразования подходящей цели в скелетное представление или модель цели или любую другую подходящую команду.

[0041] Устройство 20 захвата может дополнительно включать в себя компонент 34 памяти, который может хранить команды, которые могут быть выполнены процессором 32, изображения или кадры изображений, захваченные 3-D камерой 26 или камерой 28 RGB или любую другую подходящую информацию, изображения или подобное. Согласно примерному варианту осуществления, компонент 34 памяти может включать в себя оперативно запоминающее устройство (RAM), постоянное запоминающее устройство (ROM), кэш, флэш-память, жесткий диск или любой другой подходящий компонент хранения. Как показано на Фиг. 2, в одном варианте осуществления компонент 34 памяти может быть отдельным компонентом, подсоединенным к компоненту 22 захвата изображения и процессору 32. Согласно другому варианту осуществления компонент 34 памяти может быть объединен с процессором 32 и/или компонентом 22 захвата изображения.

[0042] Как показано на Фиг. 2, устройство 20 захвата может быть подсоединено к вычислительной среде 12 с помощью коммуникационной линии 36 связи. Коммуникационная линия 36 связи может быть проводным соединением, включающим в себя, например, соединения USB, соединения типа Firewire, кабельные соединения Ethernet или подобные, или беспроводным соединением, таким как беспроводным соединением согласно 802.11b, g, a или n. Согласно одному варианту осуществления, вычислительная среда 12 может выдавать сигнал часов на устройство 20 захвата, который может использоваться для определения того, когда захватить, например, сцену с помощью коммуникационной линии 36 связи.

[0043] Дополнительно устройство 20 захвата может выдавать информацию глубины и изображений, захваченных, например, 3-D камерой 26 и/или камерой 28 RGB 28, и скелетную модель, которая может генерироваться устройством 20 захвата для вычислительной среды 12, с помощью коммуникационной линии 36 связи. Вычислительная среда 12 может затем использовать скелетную модель, информацию глубины и захваченные изображения для, например, управления приложением, таким как игровое приложение или процессор обработки текста. Например, как показано, на Фиг. 2, вычислительная среда 12 может включать в себя библиотеку 192 жестов.

[0044] Как показано на Фиг. 2, вычислительная среда 12 может включать в себя библиотеку 192 жестов и механизм 190 распознавания жестов. Механизм 190 распознавания жестов может включать в себя коллекцию фильтров 191 жестов. Каждый фильтр 191 может содержать информацию, определяющую жест из параметров или метаданных, для данного жеста. Например, бросок, который содержит движение одной из рук из-за задней части тела мимо передней части тела, может быть реализован в качестве фильтра 191 жеста, содержащего информацию, представляющую движение одной из рук пользователя из-за задней части тела мимо передней части тела, как это движение было захвачено камерой глубины. Затем для этого жеста могут быть установлены параметры. Когда жест является броском, параметр может быть предельной скоростью, которую рука должна достигнуть, расстоянием, которое рука должна пройти (или абсолютным или относительным размером пользователя в целом), и оценкой достоверности посредством механизма устройства распознавания, что жест произошел. Эти параметры для жеста могут варьироваться между приложениями, между контекстами одного приложения или в пределах одного контекста одного приложения в течение времени.

[0045] Данные, захваченные камерами 26, 28 и устройством 20 в форме скелетной модели и движений, ассоциированных с ней, могут сравниваться с фильтрами 191 жестов в библиотеке 190 жестов для идентификации, когда пользователь (как представлен скелетной моделью) выполнил один или более жестов. Таким образом, вводы в фильтр, такой как фильтр 191, могут содержать данные, такие как данные присоединения о присоединенной позиции пользователя, в качестве углов, сформированных костями, которые пересекаются в суставе, данных цвета RGB из сцены и скорости изменения аспекта пользователя. Как упомянуто, параметры могут быть установлены для жеста. Выводы из фильтра 191 могут содержать параметры, такие как достоверность, что заданный жест выполнен, скорость, с которой выполняется движение жеста, и время, за которое происходит жест.

[0046] Вычислительная среда 12 может включать в себя процессор 195, который может обрабатывать изображение глубины для определения того, какие цели находятся на сцене, такие как пользователь 18 или объект в комнате. Это может быть сделано, например, посредством группирования пикселей изображения глубины, которое совместно использует аналогичное значение расстояния. Изображение также может быть проанализировано для формирования скелетного представления пользователя, когда идентифицируются признаки, такие как суставы и ткани, которые находятся между суставами. Здесь существуют способы скелетного сопоставления для захвата человека камерой глубины, и от этого определяются различные точки на скелете этого пользователя, суставы руки, запястья, локти, колени, нос, лодыжки, плечи и, где таз переходит в позвоночник. Другие способы включают в себя преобразование изображения в представление модели человеческого тела и преобразование изображения в представление сетчатой модели человека.

[0047] В варианте осуществления обработка выполняется непосредственно на устройстве 20 захвата и предварительные данные изображения значений глубины и цвета (когда устройство 20 захвата содержит 3D камеру 26) передаются в вычислительную среду 12 по линии 36 связи. В другом варианте осуществления выполняется обработка процессором 32, подсоединенным к камере 402, и затем проанализированные данные изображения посылаются в вычислительную среду 12. В еще одном варианте осуществления как необработанные данные изображения, так и структурно проанализированные данные изображения посылаются в вычислительную среду 12. Вычислительная среда 12 может принимать структурно проанализированные данные изображения, но она может также принимать необработанные данные для выполнения текущего процесса или приложения. Например, если изображение сцены передается по компьютерной сети другому пользователю, вычислительная среда 12 может передавать необработанные данные для обработки посредством другой вычислительной среды.

[0048] Вычислительная среда 12 может использовать библиотеку 192 жестов для интерпретации перемещения скелетной модели и управления приложением на основании этих перемещений. Вычислительная среда 12 может моделировать и отображать представление пользователя, например, в форме аватара или указателя на дисплее, таком как устройство 193 отображения. Устройство 193 отображения может включать в себя монитор компьютера, телевизионный экран или любое подходящее устройство отображения. Например, управляемая камерой компьютерная система может захватывать пользовательские данные изображения и отображать пользовательскую обратную связь на телевизионном экране, которая соответствует жестам пользователя. Пользовательская обратная связь может быть отображена в качестве аватара на экране, таком, как показан на Фиг. 1. Движение аватара может непосредственно управляться посредством сопоставления перемещения аватара с перемещениями пользователя. Жесты пользователя могут интерпретироваться для управления некоторыми аспектами приложения.

[0049] Согласно примерному варианту осуществления целью может быть человек-цель в любой позиции, такой как положение стоя или положение сидя, человек-цель с объектом, два или более человека-цели, одна или более части одного или более людей-целей или подобным, которые могут сканироваться, отслеживаться, моделироваться и/или оцениваться для генерирования виртуального экрана, сравнения пользователя с одним или более сохраненными профилями и/или сохранения информации 198 профиля о цели в вычислительной среде, такой как вычислительная среда 12. Информация 198 профиля может быть в форме профилей пользователя, персональных профилей, профилей приложения, профилей системы или любого другого подходящего способа для хранения данных для более позднего доступа. Информация 198 профиля может быть доступной с помощью приложения или может быть доступной по всей системе, например. Информация 198 профиля может включать в себя таблицы поиска для загрузки специфичной для пользователя информации профиля. Виртуальный экран может взаимодействовать с приложением, которое может выполняться вычислительной средой 12, описанной выше с ссылкой на Фиг. 1.

[0050] Согласно примерным вариантам осуществления таблицы поиска могут включать в себя специфичную для пользователя информацию профиля. В одн