RU2580450C2 - Системы и способы применения отслеживания модели для захвата движений - Google Patents

Системы и способы применения отслеживания модели для захвата движений Download PDF

Info

Publication number
RU2580450C2
RU2580450C2 RU2011144152/08A RU2011144152A RU2580450C2 RU 2580450 C2 RU2580450 C2 RU 2580450C2 RU 2011144152/08 A RU2011144152/08 A RU 2011144152/08A RU 2011144152 A RU2011144152 A RU 2011144152A RU 2580450 C2 RU2580450 C2 RU 2580450C2
Authority
RU
Russia
Prior art keywords
user
model
movements
motion capture
image
Prior art date
Application number
RU2011144152/08A
Other languages
English (en)
Other versions
RU2011144152A (ru
Inventor
Джеффри МАРГОЛИС
Original Assignee
МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи filed Critical МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи
Publication of RU2011144152A publication Critical patent/RU2011144152A/ru
Application granted granted Critical
Publication of RU2580450C2 publication Critical patent/RU2580450C2/ru

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • A63F13/428Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving motion or position input signals, e.g. signals representing the rotation of an input controller or a player's arm motions sensed by accelerometers or gyroscopes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • A63F13/655Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition by importing photos, e.g. of the player
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/251Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/833Hand-to-hand fighting, e.g. martial arts competition
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1087Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5546Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
    • A63F2300/5553Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history user representation in the game field, e.g. avatar
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6045Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6607Methods for processing data by generating or executing the game program for rendering three dimensional images for animating game characters, e.g. skeleton kinematics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Analysis (AREA)
  • Image Generation (AREA)

Abstract

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

Description

Уровень техники
Многие вычислительные приложения, такие как компьютерные игры, мультимедийные приложения или т.п., включают в себя аватары или персонажи, которые анимируются с использованием типовых методов захвата движений. Например, при разработке игры в гольф профессиональный игрок в гольф может быть приведен в студию, имеющую оборудование для захвата движений, включающее в себя, например, множество камер, направленных в конкретную точку в студии. Затем профессиональный игрок в гольф может быть экипирован в костюм для захвата движений, имеющий множество точечных указателей, которые могут быть сконфигурированы с камерами и могут отслеживаться камерами, так что камеры могут захватывать, например, движения при игре в гольф профессионального игрока в гольф. Движения затем могут быть применены к аватару или персонажу во время разработки игры в гольф. При завершении игры в гольф аватар или персонаж затем может анимироваться движениями профессионального игрока в гольф во время исполнения игры в гольф. К сожалению, типовые методы захвата движений являются дорогостоящими, связаны с разработкой конкретного приложения и не включают в себя движения, ассоциированные с фактическим игроком или пользователем приложения.
Сущность изобретения
В настоящем документе описаны системы и способы для захвата движений пользователя в сцене. Например, может приниматься или наблюдаться изображение, например, глубины сцены. Изображение глубины затем может анализироваться для определения, включает ли в себя изображение человеческую цель, ассоциированную с пользователем. Если изображение включает в себя человеческую цель, ассоциированную с пользователем, может генерироваться модель пользователя. Затем модель может отслеживаться в ответ на движение пользователя, так что модель может корректироваться для имитирования движения пользователя. Например, модель может представлять собой скелетную модель, имеющую суставы и кости, которые могут корректироваться в позы, соответствующие движению пользователя в физическом пространстве. Согласно примерному варианту осуществления файл захвата движений по отношению к движению пользователя затем может генерироваться в реальном времени, основываясь на отслеживаемой модели. Например, набор векторов, которые определяют суставы и кости для каждой позы скорректированной модели, может захватываться и визуализироваться в файле захвата движений.
Данный раздел «Сущность изобретения» предусматривается для введения подборки характерных принципов в упрощенном виде, которые дополнительно описываются ниже в разделе «Подробное описание». Данный раздел «Сущность изобретения» не предназначен для идентификации ключевых признаков или существенных признаков заявленного предмета изобретения и не предназначен для использования для ограничения объема заявленного предмета изобретения. Кроме того, заявленный предмет изобретения не ограничивается реализациями, которые решают какие-либо или все недостатки, отмеченные в любой части данного раскрытия.
Краткое описание чертежей
Фиг.1А и 1В изображают примерный вариант осуществления системы распознавания, анализа и отслеживания цели с пользователем, играющим в игру.
Фиг.2 изображает примерный вариант осуществления устройства захвата, которое может использоваться в системе распознавания, анализа и отслеживания цели.
Фиг.3 изображает примерный вариант осуществления вычислительной среды, которая может использоваться для интерпретации одного или нескольких жестов в системе распознавания, анализа и отслеживания цели и/или анимации аватара или экранного персонажа, отображаемых системой распознавания, анализа и отслеживания цели.
Фиг.4 изображает другой примерный вариант осуществления вычислительной среды, которая может использоваться для интерпретации одного или нескольких жестов в системе распознавания, анализа и отслеживания цели и/или анимации аватара или экранного персонажа, отображаемых системой распознавания, анализа и отслеживания цели.
Фиг.5 изображает блок-схему последовательности операций примерного способа для захвата движений человеческой цели.
Фиг.6 изображает примерный вариант осуществления изображения, которое может включать в себя человеческую цель.
Фиг.7 изображает примерный вариант осуществления модели, которая может генерироваться для человеческой цели.
Фиг.8А-8С изображают примерный вариант осуществления модели, которая может захватываться в различные моменты времени.
Фиг.9А-9С изображают примерный вариант осуществления аватара или персонажа игры, которые могут анимироваться, основываясь на модели, которая может захватываться в различные моменты времени.
Подробное описание иллюстративных вариантов осуществления
Как описано в данном документе, пользователь может управлять приложением, исполняющимся на вычислительной среде, такой как игровая консоль, компьютер или т.п., и/или может анимировать аватар или экранный персонаж посредством выполнения одного или нескольких жестов и/или движений. Согласно одному варианту осуществления жесты и/или движения могут приниматься, например, устройством захвата. Например, устройство захвата может захватывать изображение глубины сцены. В одном варианте осуществления устройство захвата может определять, соответствует ли одна или несколько целей или объектов в сцене человеческой цели, такой как пользователь. Каждая цель или объект, которая совпадает или соответствует человеческой цели, затем может сканироваться для генерирования модели, такой как скелетная модель, сеточная модель человека или т.п., ассоциированной с ними. Модель затем может быть предоставлена вычислительной среде, так что вычислительная среда может отслеживать модель, генерировать файл захвата движений отслеживаемой модели, визуализировать аватар, ассоциированный с моделью, анимировать аватар, основываясь на файле захвата движений отслеживаемой модели и/или определять, какой элемент управления выполнить в приложении, исполняющемся на вычислительной среде, основываясь, например, на отслеживаемой модели.
Фиг.1А и 1В изображают примерный вариант осуществления конфигурации системы 10 распознавания, анализа и отслеживания цели с пользователем 18, играющим в игру в бокс. В примерном варианте осуществления система 10 распознавания, анализа и отслеживания цели может использоваться для распознавания, анализа и/или отслеживания человеческой цели, такой как пользователь 18.
Как показано на фиг.1А, система 10 распознавания, анализа и отслеживания цели может включать в себя вычислительную среду 12. Вычислительная среда 12 может представлять собой компьютер, игровую систему или консоль или т.п. Согласно примерному варианту осуществления вычислительная среда 12 может включать в себя аппаратные компоненты и/или программные компоненты, так что вычислительная среда 12 может использоваться для исполнения приложений, таких как игровые приложения, неигровые приложения или т.п. В одном варианте осуществления вычислительная среда 12 может включать в себя процессор, такой как стандартизированный процессор, специализированный процессор, микропроцессор или т.п., которые могут исполнять инструкции, включающие в себя, например, инструкции для приема изображения, генерирования модели пользователя, захваченного в изображении, отслеживания модели, генерирования файла захвата движений, основываясь на отслеживаемой модели, применение файла захвата движений или любой другой подходящей инструкции, которые описаны более подробно ниже.
Как показано на фиг.1А, система 10 распознавания, анализа и отслеживания цели может дополнительно включать в себя устройство 20 захвата. Устройство 20 захвата может представлять собой, например, камеру, которая может использоваться для визуального контролирования одного или нескольких пользователей, таких как пользователь 18, так что жесты и/или движения, выполняемые одним или несколькими пользователями, могут захватываться, анализироваться и отслеживаться для выполнения одного или нескольких элементов управления или действий в приложении и/или анимации аватара или экранного персонажа, как более подробно описано ниже.
Согласно одному варианту осуществления система 10 распознавания, анализа и отслеживания цели может быть соединена с аудиовизуальным устройством 16, таким как телевизор, монитор, телевизор высокого разрешения (HDTV) или т.п., которые могут предоставлять визуальные сигналы и/или аудиоигры или приложения пользователю, такому как пользователь 18. Например, вычислительная среда 12 может включать в себя видеоадаптер, такой как графическая карта, и/или аудиоадаптер, такой как звуковая карта, которые могут обеспечивать аудиовизуальные сигналы, ассоциированные с игровым приложением, неигровым приложением или т.п. Аудиовизуальное устройство 16 может принимать аудиовизуальные сигналы от вычислительной среды 12 и может затем выводить визуальные сигналы и/или аудиоигры или приложения, ассоциированные с аудиовизуальными сигналами, пользователю 18. Согласно одному варианту осуществления аудиовизуальное устройство 16 может быть соединено с вычислительной средой 12 при помощи, например, кабеля S-Video (с раздельным видеосигналом), коаксиального кабеля, кабеля HDMI (мультимедийного интерфейса высокого разрешения), кабеля DVI (цифрового видеоинтерфейса), кабеля VGA (видеографического адаптера) или т.п.
Как показано на фиг.1А и 1В, система 10 распознавания, анализа и отслеживания цели может использоваться для распознавания, анализа и/или отслеживания человеческой цели, такой как пользователь 18. Например, пользователь 18 может отслеживаться с использованием устройства 20 захвата, так что жесты и/или движения пользователя 18 могут захватываться для анимации аватара или экранного персонажа и/или могут интерпретироваться в качестве элементов управления, которые могут использоваться для воздействия на приложение, исполняемое компьютерной средой 12. Таким образом, согласно одному варианту осуществления пользователь 18 может двигать свое тело для управления приложением и/или анимацией аватара или экранного персонажа.
Как показано на фиг.1А и 1В, в примерном варианте осуществления приложением, исполняющимся на вычислительной среде 12, может быть игра в бокс, в которую может играть пользователь 18. Например, вычислительная среда 12 может использовать аудиовизуальное устройство 16 для предоставления визуального представления соперника 38 в боксе пользователю 18. Вычислительная среда 12 также может использовать аудиовизуальное устройство 16 для предоставления визуального представления аватара 40 игрока, которым пользователь 18 может управлять при помощи своих движений. Например, как показано на фиг.1В, пользователь 18 может нанести удар в физическом пространстве, вызывая нанесение удара аватаром 40 игрока в игровом пространстве. Таким образом, согласно примерному варианту осуществления компьютерная среда 12 и устройство 20 захвата системы 10 распознавания, анализа и отслеживания цели могут использоваться для распознавания и анализа удара пользователя 18 в физическом пространстве, так что удар может интерпретироваться в качестве элемента управления игры аватаром 40 игрока в игровом пространстве, и/или движение удара может использоваться для анимации аватара 40 игрока в игровом пространстве.
Другие движения пользователя 18 также могут интерпретироваться в качестве других элементов управления или действий и/или использоваться для анимации аватара игрока, такие как элементы управления для легкого удара, качания, мелких боксерских шагов, блокирования, прямого удара по корпусу, или нанесения многочисленных разных мощных ударов. Кроме того, некоторые движения могут интерпретироваться в качестве элементов управления, которые могут соответствовать действиям кроме управления аватаром 40 игрока. Например, игрок может использовать движения для окончания, паузы или сохранения игры, выбора уровня, просмотра наивысших достижений, общения с другом и т.д. Кроме того, полный диапазон движения пользователя 18 может быть доступен, использоваться и анализироваться любым подходящим образом для взаимодействия с приложением.
В примерных вариантах осуществления человеческая цель, такая как пользователь 18, может иметь объект. В таких вариантах осуществления пользователь электронной игры может держать объект, так что движения игрока и объекта могут использоваться для корректирования и/или управления параметрами игры. Например, движение игрока, держащего ракетку, могут отслеживаться и использоваться для управления экранной ракеткой в электронной спортивной игре. В другом примерном варианте осуществления движение игрока, держащего объект, может отслеживаться и использоваться для управления экранным оружием в электронной военной игре.
Согласно другим примерным вариантам осуществления система 10 распознавания, анализа и отслеживания цели может дополнительно использоваться для интерпретации движений цели в качестве элементов управления операционной системой и/или приложением, которые находятся вне области действия игр. Например, фактически любой управляемый аспект операционной системы и/или приложения может управляться движениями цели, такой как пользователь 18.
Фиг.2 изображает примерный вариант осуществления устройства 20 захвата, которое может использоваться в системе 10 распознавания, анализа и отслеживания цели. Согласно примерному варианту осуществления устройство 20 захвата может быть выполнено с возможностью захвата видео с информацией глубины, включая изображение глубины, которое может включать в себя значения глубины посредством любого подходящего метода, включая в себя, например, метод времени пролета, структурированного света, стереоизображения или т.п. Согласно одному варианту осуществления устройство 20 захвата может организовывать информацию глубины в «Z-слоях» или слоях, которые могут быть перпендикулярны оси Z, отходящих от глубинной камеры вдоль ее линии прямой видимости.
Как показано на фиг.2, устройство 20 захвата может включать в себя компонент 22 камеры изображения. Согласно примерному варианту осуществления компонент 22 камеры изображения может представлять собой глубинную камеру, которая может захватывать изображение глубины сцены. Изображение глубины может включать в себя двумерную (2D) пиксельную область захваченной сцены, где каждый пиксель в пиксельной 2D-области может представлять значение глубины, такое как длина или расстояние, например, в сантиметрах, миллиметрах или т.п., объекта в захваченной сцене от камеры.
Как показано на фиг.2, согласно примерному варианту осуществления компонент 22 камеры изображения может включать в себя компонент 24 инфракрасного (IR) света, трехмерную (3D) камеру 26 и RGB-камеру 28, которые могут использоваться для захвата изображения глубины сцены. Например, в анализе времени пролета компонент 24 IR-света устройства 20 захвата может излучать инфракрасный свет в сцену и затем может использовать датчики (не показаны) для обнаружения света обратного рассеяния от поверхности одной или нескольких целей и объектов в сцене, используя, например, 3D-камеру 26 и/или RGB-камеру 28. В некоторых вариантах осуществления может использоваться импульсный инфракрасный свет, так что время между исходящим импульсом света и соответствующим входящим импульсом света может измеряться и использоваться для определения физического расстояния от устройства 20 захвата до конкретного расположения на целях или объектах в сцене. Кроме того, в других примерных вариантах осуществления фаза исходящей световой волны может сравниваться с фазой входящей световой волны для определения фазового сдвига. Фазовый сдвиг затем может использоваться для определения физического расстояния от устройства захвата до конкретного расположения на целях или объектах.
Согласно другому примерному варианту осуществления анализ времени пролета может использоваться для непосредственного определения физического расстояния от устройства 20 захвата до конкретного расположения на целях или объектах посредством анализа интенсивности отраженного луча света во времени посредством различных методов, включающих в себя, например, изображение импульса перекрываемого света.
В другом примерном варианте осуществления устройство 20 захвата может использовать структурированный свет для захвата информации о глубине. При таком анализе узорчатый свет (т.е. свет, отображаемый в виде известного узора, такого как сетчатый узор или полосовой узор) может проецироваться на сцену при помощи, например, компонента 24 IR-света. При падении на поверхность одной или нескольких целей или объектов в сцене узор может становиться в ответ деформированным. Такая деформация узора может захватываться, например, 3D-камерой 26 и/или RGB-камерой 28 и затем может анализироваться для определения физического расстояния от устройства захвата до конкретного расположения на целях или объектах.
Согласно другому варианту осуществления устройство 20 захвата может включать в себя две или более физически разнесенных камер, которые могут просматривать сцену с разных углов для получения визуальных стереоданных, которые могут быть разложены для генерирования информации о глубине.
Устройство 20 захвата может дополнительно включать в себя микрофон 30. Микрофон 30 может включать в себя преобразователь или датчик, который может принимать и преобразовывать звук в электрический сигнал. Согласно одному варианту осуществления микрофон 30 может использоваться для уменьшения обратной связи между устройством 20 захвата и вычислительной средой 12 в системе 10 распознавания, анализа и отслеживания цели. Кроме того, микрофон 30 может использоваться для приема аудиосигналов, которые также могут обеспечиваться пользователем для управления приложениями, такими как игровые приложения, неигровые приложения или т.п., которые могут исполняться вычислительной средой 12.
В примерном варианте осуществления устройство 20 захвата может дополнительно включать в себя процессор 32, который может находиться в действующей связи с компонентом 22 камеры изображения. Процессор 32 может включать в себя стандартный процессор, специализированный процессор, микропроцессор или т.п., который может исполнять инструкции, включающие в себя, например, инструкции для приема изображения, генерирования модели пользователя, захваченного в изображении, отслеживания модели, генерирования файла захвата движений, основываясь на отслеживаемой модели, применения файла захвата движений, или любую другую подходящую инструкцию, которые более подробно описаны ниже.
Устройство 20 захвата может дополнительно включать в себя компонент 34 памяти, который может хранить инструкции, которые могут исполняться процессором 32, изображения или кадры изображений, захваченные 3D-камерой или RGB-камерой, или любую другую подходящую информацию, изображения или т.п. Согласно примерному варианту осуществления компонент 34 памяти может включать в себя оперативное запоминающее устройство (RAM), постоянное запоминающее устройство (ROM), кэш, флэш-память, жесткий диск или любой другой подходящий компонент хранения. Как показано на фиг.2, в одном варианте осуществления компонент 34 памяти может представлять собой отдельный компонент на связи с компонентом 22 захвата изображения и процессором 32. Согласно другому варианту осуществления компонент 34 памяти может быть интегрирован в процессор 32 и/или компонент 22 захвата изображения.
Как показано на фиг.2, устройство 20 захвата может быть на связи с вычислительной средой 12 посредством линии 36 связи. Линия 36 связи может представлять собой проводное соединение, включающее в себя, например, соединение USB (универсальной последовательной шины), соединение FireWire, кабельное соединение Ethernet или т.п., и/или беспроводное соединение, такое как беспроводное соединение по стандарту 802.11b, g, a или n. Согласно одному варианту осуществления вычислительная среда 12 может подавать тактовые импульсы на устройство 20 захвата, которые могут использоваться для определения, когда захватывать, например, сцену, посредством линии 36 связи.
Кроме того, устройство 20 захвата может предоставлять информацию глубины и изображения, захваченные, например, 3D-камерой 26 и/или RGB-камерой 28, и/или скелетную модель, которая может генерироваться устройством 20 захвата, вычислительной среде 12 при помощи линии 36 связи. Вычислительная среда 12 затем может использовать модель, информацию глубины и захваченные изображения, например, для управления приложением, таким как игра или текстовой процессор, и/или анимации аватара или экранного персонажа. Например, как показано на фиг.2, вычислительная среда 12 может включать в себя библиотеку 190 жестов. Библиотека 190 жестов может включать в себя коллекцию фильтров жестов, причем каждый содержит информацию, касающуюся жеста, который может выполняться скелетной моделью (когда пользователь движется). Данные, захваченные камерами 26, 28 и устройством 20 захвата в виде скелетной модели, и движения, ассоциированные с ними, могут сравниваться с фильтрами жестов в библиотеке 190 жестов для идентификации, когда пользователь (представленный скелетной моделью) выполнил одно или несколько жестов. Эти жесты могут ассоциироваться с различными элементами управления приложением. Таким образом, вычислительная среда 12 может использовать библиотеку 190 жестов для интерпретации движений скелетной модели и управления приложением на основе движений.
Фиг.3 изображает примерный вариант осуществления вычислительной среды, которая может использоваться для интерпретации одного или нескольких жестов в системе распознавания, анализа и отслеживания цели и/или анимации аватара или экранного персонажа, отображаемых системой распознавания, анализа и отслеживания цели. Вычислительная среда, такая как вычислительная среда 12, описанная выше в отношении фиг.1А-2, может представлять собой мультимедийную консоль 100, такую как игровая консоль. Как показано на фиг.3, мультимедийная консоль 100 имеет центральный блок 101 обработки (CPU), имеющий кэш 102 уровня 1, кэш 104 уровня 2 и флэш-ROM (постоянное запоминающее устройство) 106. Кэш 102 уровня 1 и кэш 104 уровня 2 временно хранят данные и, следовательно, уменьшают количество циклов обращения к памяти, тем самым повышая скорость обработки и производительность. CPU 101 может обеспечиваться имеющим более одного ядра, и, таким образом, дополнительные кэши 102 и 104 уровня 1 и уровня 2. Флэш-ROM 106 может хранить исполняемый код, который загружается во время начальной фазы процесса начальной загрузки, когда включается питание на мультимедийной консоли 100.
Блок 108 обработки графики (GPU) и видеокодер/видеокодек (кодер/декодер) 114 образуют конвейер обработки видео для обработки графики с высокой скоростью и высоким разрешением. Данные переносятся с блока 108 обработки графики на видеокодер/видеокодек 114 по шине. Конвейер обработки видео выводит данные на порт 140 аудио/видео (A/V) для передачи на телевизор или другое устройство отображения. Контроллер 110 памяти соединен с GPU 108, чтобы способствовать доступу процессора к различным типам памяти 112, такой как, но не ограничиваясь ей, оперативное запоминающее устройство (RAM).
Мультимедийная консоль 100 включает в себя контроллер 120 ввода/вывода (I/O), контроллер 122 администрирования системы, блок 123 обработки аудио, контроллер 124 сетевого интерфейса, первый контроллер 126 USB-хоста, второй контроллер 128 USB и подузел 130 ввода-вывода (I/O) на передней панели, которые предпочтительно реализованы на модуле 118. Контроллеры 126 и 128 USB служат в качестве хостов для периферийных органов управления 142(1)-142(2), беспроводного адаптера 148 и устройства 146 внешней памяти (например, флэш-памяти, внешнего накопителя на CD/DVD, съемного носителя и т.д.). Сетевой интерфейс 124 и/или беспроводный адаптер 148 обеспечивают доступ к сети (например, Интернету, домашней сети и т.д.) и могут быть любыми из многочисленных различных компонентов проводных или беспроводных адаптеров, включая карту Ethernet, модем, модуль Bluetooth, кабельный модем и т.п.
Системная память 143 обеспечивается для хранения данных приложения, которые загружаются во время процесса начальной загрузки. Обеспечивается накопитель 144 на носителе, и он может содержать накопитель на DVD/CD, накопитель на жестком диске или другой накопитель со съемным носителем и т.д. Накопитель 144 на носителе может быть внутренним или внешним для мультимедийной консоли 100. К данным приложения может обращаться накопитель 144 на носителе для исполнения, проигрывания и т.д. посредством мультимедийной консоли 100. Накопитель 144 на носителе соединен с контроллером 120 I/O посредством шины, такой как шины Serial ATA, или другого высокоскоростного соединения (например, IEEE 1394).
Контроллер 122 администрирования системы обеспечивает многочисленные функции обслуживания, относящиеся к обеспечению доступности мультимедийной консоли 100. Блок 123 обработки аудио и аудиокодек 132 образуют соответствующий конвейер обработки аудио с обработкой с высоким качеством и стерео. Аудиоданные переносятся между блоком 123 обработки аудио и аудиокодеком 132 при помощи линии связи. Конвейер обработки аудио выводит данные на порт 140 A/V для воспроизведения внешним аудиоплеером или устройством, имеющим аудиовозможности.
Подузел 130 I/O на передней панели поддерживает функциональную возможность кнопки 150 включения питания и кнопки 152 выброса, а также любых LED (светоизлучающих диодов) или других индикаторов, установленных открыто на внешней поверхности мультимедийной консоли 100. Модуль 136 источника питания системы обеспечивает питание для компонентов мультимедийной консоли 100. Вентилятор 138 охлаждает схемы в мультимедийной консоли 100.
CPU 101, GPU 108, контроллер 110 памяти и различные другие компоненты в мультимедийной консоли 100 соединены между собой посредством одной или нескольких шин, включая последовательные и параллельные шины, шину памяти, периферийную шину и процессорную или локальную шину, используя любую из многочисленных шинных архитектур. В качестве примера такие архитектуры могут включать в себя шину межсоединения периферийных компонентов (PCI), шину PCI-Express и т.д.
Когда мультимедийная консоль 100 включается, данные приложения могут загружаться из системной памяти 143 в память 112 и/или кэши 102, 104 и исполняться на CPU 101. Приложение может представлять графический пользовательский интерфейс, который обеспечивает единообразное пользовательское впечатление при навигации к другим типам носителей, доступным на мультимедийной консоли 100. При работе приложения и/или другие носители, содержащиеся в накопителе 144 на носителе, могут запускаться или проигрываться с накопителя 144 на носителе для обеспечения дополнительных функциональных возможностей мультимедийной консоли 100.
Мультимедийная консоль 100 может работать в качестве автономной системы посредством простого подключения системы к телевизору или другому устройству отображения. В этом автономном режиме мультимедийная консоль 100 позволяет одному или нескольким пользователям взаимодействовать с системой, смотреть фильмы или слушать музыку. Однако при интеграции возможности широкополосного подключения, выполненной доступной при помощи сетевого интерфейса 124 или беспроводного адаптера 148, мультимедийная консоль 100 может дополнительно работать в качестве участника в большем сетевом сообществе.
Когда подается питание на мультимедийную консоль 100, установленное количество аппаратных ресурсов резервируется для системного использования операционной системой мультимедийной консоли. Эти ресурсы могут включать в себя резервирование памяти (например, 16 Мбайт), циклов CPU и GPU (например, 5%), пропускной способности сети (например, 8 кбит/с) и т.д. Так как эти ресурсы резервируются во время начальной загрузки системы, зарезервированные ресурсы не существуют с точки зрения приложения.
В частности, резервирование памяти предпочтительно достаточно большое, чтобы содержать ядро запуска, одновременные системные приложения и драйверы. Резервирование CPU является предпочтительно постоянным, так что если зарезервированное использование CPU не используется системными приложениями, поток простоя потребляет любые неиспользованные циклы.
Что касается резервирования GPU, упрощенные сообщения, генерируемые системными приложениями (например, всплывающие элементы), отображаются посредством использования прерывания GPU кода планирования для визуализации всплывающего элемента в наложение. Количество памяти, требуемое для наложения, зависит от размера области наложения, и наложение предпочтительно масштабируется с разрешением экрана. Когда используется полный пользовательский интерфейс одновременным системным приложением, предпочтительно использовать разрешение, независимо от разрешения приложения. Может использоваться блок масштабирования для установки данного разрешения, так что устраняется необходимость изменения частоты и причина ресинхронизации телевизора.
После того как мультимедийная консоль 100 выполнит начальную загрузку и системные ресурсы будут зарезервированы, исполняются одновременные системные приложения для обеспечения системных функциональных возможностей. Системные функциональные возможности инкапсулируются в набор системных приложений, которые исполняются в пределах зарезервированных системных ресурсов, описанных выше. Ядро операционной системы идентифицирует потоки, которыми являются потоки системных приложений по отношению к потокам игровых приложений. Системные приложения предпочтительно планируются для выполнения на CPU 101 в предварительно заданные моменты времени и интервалы, чтобы обеспечить согласованное представление системных ресурсов приложению. Планирование предназначено для минимизирования прерывания кэша для игровых приложений, выполняющихся на консоли.
Когда одновременное системное приложение требует аудио, обработка аудио планируется асинхронно игровому приложению из-за зависимости от времени. Администратор приложений мультимедийной консоли (описан ниже) управляет уровнем аудио игрового приложения (например, заглушен, ослаблен), когда активны системные приложения.
Устройства ввода (например, органы управления 142(1) и 142(2)) совместно используются игровыми приложениями и системными приложениями. Устройствам ввода не резервируются ресурсы, но должны переключаться между системными приложениями и игровыми приложениями, так что каждое имеет фокус устройства. Администратор приложений предпочтительно управляет переключением входного потока, без знания относительно знания игрового приложения, и драйвер сохраняет информацию о состоянии, касающуюся переключателей фокуса. Камеры 26, 28 и устройство 20 захвата могут определять дополнительные устройства ввода для консоли 100.
Фиг.4 изображает другой примерный вариант осуществления вычислительной среды 220, которой может быть вычислительная среда 12, показанная на фиг.1А-2, используемой для интерпретации одного или нескольких жестов в системе распознавания, анализа и отслеживания цели и/или анимации аватара или экранного персонажа, отображаемых системой распознавания, анализа и отслеживания цели. Вычислительная системная среда 220 представляет собой только один пример подходящей вычислительной среды и, как предполагается, не предлагает никакого ограничения в отношении объема использования или функциональных возможностей раскрытого в настоящее время предмета изобретения. Вычислительная среда 220 также не должна интерпретироваться как имеющая какую-либо зависимость или требование, относящееся к любому одному или комбинации компонентов, изображенных в примерной операционной среде 220. В некоторых вариантах осуществления различные описанные вычислительные элементы могут включать в себя схемы, выполненные с возможностью реализации конкретных аспектов настоящего раскрытия. Например, термин «схемы», используемый в раскрытии, может включать в себя специализированные аппаратные компоненты, выполненные с возможностью выполнения функции(-ий) программно-аппаратными средствами или переключателями. В других примерных вариантах осуществления термин «схемы» может включать в себя блок обработки общего назначения, память и т.п., конфигурируемые программными инструкциями, которые воплощают логику, осуществимую для выполнения функции(-ий). В примерных вариантах осуществления, где схемы включают в себя комбинацию аппаратных и программных средств, конструктор может написать исходный код, воплощающий логику, и исходный код может компилироваться в считываемый машиной код, который может обрабатываться блоком обработки общего назначения. Так как специалист в данной области техники может оценить, что состояние техники эволюционировало до уровня, когда существует малая разница между аппаратными средствами, программными средствами или комбинацией аппаратных/программных средств, выбор аппаратных средств по отношению к программным средствам для осуществления конкретных функций представляет собой проектное решение, оставленное на усмотрение конструктора. Более конкретно, специалист в данной области техники может оценить, что программный процесс может быть преобразован в эквивалентную аппаратную конструкцию, и аппаратная конструкция сама может быть преобразована в эквивалентный программный процесс. Таким образом, выбор аппаратной реализации по отношению к программной реализации является одним из проектных решений и остается на усмотрение конструктора.
На фиг.4 вычислительная среда 220 содержит компьютер 241, который обычно включает в себя многочисленные считываемые компьютером носители. Считываемыми компьютером носителями могут быть любые доступные носители, к которым может обращаться компьютер 241, и они включают в себя как энергозависимые, так и энергонезависимые носители, как съемные, так и несъемные носители. Системная память 222 включает в себя носители данных компьютера в виде энергозависимой и/или энергонезависимой памяти, такой как постоянное запоминающее устройство (ROM) 223 и оперативное запоминающее устройство (RAM) 260. Базовая система 224 ввода/вывода (BIOS), содержащая базовые подпрограммы, которые способствуют переносу информации между элементами в компьютере 241, например, во время запуска, обычно хранится в ROM 223. RAM 260 обычно содержит данные и/или программные модули, которые являются немедленно доступными для блока 259 обработки и/или обрабатываются им в настоящий момент. В качестве примера, а не ограничения, фиг.4 изображает операционную систему 225, прикладные программы 226, другие программные модули 227 и программные данные 228.
Компьютер 241 также может включать в себя другие съемные/несъемные, энергозависимые/энергонезависимые носители данных компьютера. Исключительно в качестве примера фиг.4 изображает накопитель 238 на жестком диске, который считывает с несъемного, энергонезависимого магнитного носителя или записывает на него, накопитель 239 на магнитных дисках, который считывает со съемного, энергонезависимого магнитного диска 254 или записывает на него, и накопитель 240 на оптическом диске, который считывает со съемного энергонезависимого оптического диска 253, такого как CD-ROM или другие оптические носители, или записывает на них. Другие съемные/несъемные, энергозависимые/энергонезависимые носители данных компьютера, которые могут использоваться в примерной операционной среде, включают в себя, но не ограничиваются ими, кассеты с магнитной лентой, карты флэш-памяти, цифровые многофункциональные диски, цифровую видеоленту, твердотельное RAM, твердотельное ROM и т.п. Накопитель 238 на жестком диске обычно соединен с системной шиной 221 посредством интерфейса несъемной памяти, такого как интерфейс 234, и накопитель 239 на магнитных дисках и накопитель 240 на оптическом диске обычно соединены с системной шиной 221 посредством интерфейса съемной памяти, такого как интерфейс 235.
Накопители и связанные с ними носители данных компьютера, описанные выше и изображенные на фиг.4, обеспечивают хранение считываемых компьютером инструкций, структур данных, программных модулей и других данных для компьютера 241. На фиг.4, например, накопитель 238 на жестком диске изображен как хранящий операционную систему 258, прикладные программы 257, другие программные модули 256 и программные данные 255. Отметьте, что эти компоненты могут или быть такими же, или отличаться от операционной системы 225, прикладных программ 226, других программных модулей 227 и программных данных 228. Операционной системе 258, прикладным программам 257, другим программным модулям 256 и программным данным 255 присвоены другие позиции в данном документе, чтобы иллюстрировать, что, как минимум, они представляют собой разные копии. Пользователь может вводить команды и информацию в компьютер 241 при помощи устройств ввода, таких как клавиатура 251 и указательное устройство 252, обычно упоминаемое как мышь, трекбол или сенсорная панель. Другие устройства ввода (не показаны) могут включать в себя микрофон, джойстик, игровой планшет, антенну спутниковой связи, сканер или т.п. Эти и другие устройства ввода часто подключаются к блоку 259 обработки при помощи интерфейса 236 ввода пользователя, который соединен с системной шиной, но могут подключаться посредством другого интерфейса и шинных структур, таких как параллельный порт, игровой порт или универсальная последовательная шина (USB). Камеры 26, 28 и устройство 20 захвата могут определять дополнительные устройства ввода для консоли 100. Монитор 242 или устройство отображения другого типа также подсоединен к системной шине 221 при помощи интерфейса, такого как видеоинтерфейс 232. В дополнение к монитору компьютеры также могут включать в себя другие периферийные устройства вывода, такие как громкоговорители 244 и принтер 243, которые могут быть подсоединены при помощи периферийного интерфейса 233 вывода.
Компьютер 241 может работать в сетевой среде, используя логические соединения с одним или несколькими удаленными компьютерами, такими как удаленный компьютер 246. Удаленным компьютером 246 может быть персональный компьютер, сервер, маршрутизатор, сетевой персональный компьютер (PC), одноранговое устройство или другой общий узел сети и обычно включает в себя многие или все из элементов, описанных выше в отношении компьютера 241, хотя только запоминающее устройство 247 памяти изображено на фиг.4. Логические соединения, изображенные на фиг.2, включают в себя локальную сеть (LAN) 245 и глобальную сеть (WAN) 249, но также могут включать в себя другие сети. Такие сетевые среды являются обычными в офисах, компьютерных сетях масштаба предприятия, интрасетях и Интернете.
Когда компьютер 241 используется в сетевой среде LAN, он соединяется с LAN 245 посредством сетевого интерфейса или адаптера 237. Когда компьютер 241 используется в сетевой среде WAN, он обычно включает в себя модем 250 или другое средство для установления связи по WAN 249, такой как Интернет. Модем 250, который может быть внутренним или внешним, может быть соединен с системной шиной 221 при помощи интерфейса 236 ввода пользователя или другого соответствующего механизма. В сетевой среде программные модули, описанные в отношении компьютера 241 или его частей, могут храниться в удаленном запоминающем устройстве памяти. В качестве примера, а не ограничения, фиг.4 изображает удаленные прикладные программы 248 как постоянно находящиеся на устройстве 247 памяти. Понятно, что показанные сетевые соединения являются примерными, и могут использоваться другие средства установления линии связи между компьютерами.
Фиг.5 изображает блок-схему последовательности операций примерного способа 300 захвата движений пользователя в сцене. Примерный способ 300 может быть реализован с использованием, например, устройства 20 захвата и/или вычислительной среды 12 системы 10 распознавания, анализа и отслеживания цели, описанной в отношении фиг.1А-4. В примерном варианте осуществления примерный способ 300 может принимать вид программного кода (т.е. инструкций), которые могут исполняться, например, устройством 20 захвата и/или вычислительной средой 12 системы 10 распознавания, анализа и отслеживания цели, описанной в отношении фиг.1А-4.
Согласно одному варианту осуществления в позиции 305 может приниматься изображение. Например, система распознавания, анализа и отслеживания цели может включать в себя устройство захвата, такое как устройство 20 захвата, описанное выше в отношении фиг.1А-2. Устройство захвата может захватывать или наблюдать сцену, которая может включать в себя одну или несколько целей. В примерном варианте осуществления устройство захвата может представлять собой глубинную камеру, выполненную с возможностью получения изображения, такого как RGB-изображение, изображение глубины или т.п. сцены, используя любой подходящий метод, такой как анализ времени пролета, анализ структурированного света, анализ стереозрения или т.п.
Например, в одном варианте осуществления изображение может включать в себя изображение глубины. Изображение глубины может представлять собой множество наблюдаемых пикселей, где каждый наблюдаемый пиксель имеет значение наблюдаемой глубины. Например, изображение глубины может включать в себя двумерную (2D) пиксельную область захваченной сцены, где каждый пиксель в 2D пиксельной области может представлять значение глубины, такое как длина или расстояние, например, в сантиметрах, миллиметрах или т.п. объекта в захваченной сцене, от устройства захвата.
Фиг.6 изображает примерный вариант осуществления изображения 400 глубины, которое может приниматься в позиции 305. Согласно примерному варианту осуществления изображение 400 глубины может представлять собой изображение или кадр сцены, захваченной, например, посредством 3D-камеры 26 и/или RGB-камеры 28 устройства 20 захвата, описанного выше в отношении фиг.2. Как показано на фиг.6, изображение 400 глубины может включать в себя человеческую цель 402, соответствующую, например, пользователю, такому как пользователь 18, описанный выше в отношении фиг.1А и 1В, и одной или нескольким нечеловеческим целям 404, таким как стенка, стол, монитор или т.п. в захваченной сцене. Как описано выше, изображение 400 глубины может включать в себя множество наблюдаемых пикселей, где каждый наблюдаемый пиксель имеет значение наблюдаемой глубины, ассоциированное с ним. Например, изображение 400 глубины может включать в себя двумерную (2D) пиксельную область захваченной сцены, где каждый пиксель в 2D-пиксельной области может представлять значение глубины, такое как длина или расстояние, например, в сантиметрах, миллиметрах или т.п. цели или объекта в захваченной сцене от устройства захвата. В одном варианте осуществления изображение 400 глубины может быть окрашено, так что разные цвета пикселей изображения глубины соответствуют и/или визуально описывают разные расстояния человеческой цели 402 и нечеловеческих целей 404 от устройства захвата. Например, согласно одному варианту осуществления пиксели, ассоциированные с целью, ближайшей к устройству захвата, могут быть окрашены оттенками красного и/или оранжевого цвета в изображении глубины, тогда как пиксели, ассоциированные с целью дальше, могут быть окрашены оттенками зеленого и/или синего цвета в изображении глубины.
Возвращаясь к фиг.5, в одном варианте осуществления при приеме изображения в позиции 305 изображение может дискретизироваться с понижением до меньшего разрешения обработки, так что изображение глубины может легче использоваться и/или более быстро обрабатываться с меньшими вычислительными затратами. Кроме того, одно или несколько значений глубины с большой дисперсией и/или шумом могут быть удалены и/или сглажены из изображения глубины; части с отсутствующей и/или удаленной информацией глубины могут быть заполнены и/или восстановлены; и/или любая другая подходящая обработка может быть выполнена над принятой информацией глубины так, что информация глубины может использоваться для генерирования модели, такой как скелетная модель, которая описывается более подробно ниже.
В позиции 310 может генерироваться модель пользователя в изображении. Например, при приеме изображения система распознавания, анализа и отслеживания цели может определить, включает ли изображение глубины человеческую цель, соответствующую, например, пользователю, такому как пользователь 18, описанный выше в отношении фиг.1А-1В, посредством заливки каждой цели или объекта в изображении глубины и сравнения каждой цели или объекта с заливкой с шаблоном, ассоциированным с моделью тела человека в различных позициях или позах. Цель или объект с заливкой, который совпадает с образцом, затем может изолироваться и сканироваться для определения значений, включающих в себя, например, измерения различных частей тела. Согласно примерному варианту осуществления модель, такая как скелетная модель, сетчатая модель или т.п., затем может генерироваться на основе сканирования. Например, согласно одному варианту осуществления значения измерения, которые могут быть определены посредством сканирования, могут сохраняться в одной или нескольких структурах данных, которые могут использоваться для определения одного или нескольких суставов в модели. Один или несколько суставов могут использоваться для определения одной или нескольких костей, которые могут соответствовать части тела человека.
Фиг.7 изображает примерный вариант осуществления модели 500, которая может генерироваться для человеческой цели, например, в позиции 310. Согласно примерному варианту осуществления модель 500 может включать в себя одну или несколько структур данных, которые могут представлять, например, человеческую цель 402, описанную выше в отношении фиг.6, в качестве трехмерной модели. Каждая часть тела может характеризоваться в виде математического вектора, определяющего суставы и кости модели 500.
Как показано на фиг.7, модель 500 может включать в себя один или несколько суставов j1-j18. Согласно примерному варианту осуществления каждый из суставов j1-j18 может предоставлять возможность одной или нескольким частям тела, определенным между ними, двигаться относительно одной или нескольких других частей тела. Например, модель, представляющая человеческую цель, может включать в себя множество жестких и/или деформируемых частей тела, которые могут определяться одним или несколькими конструктивными элементами, такими как «кости» с суставами j1-j18, расположенными в точках пересечения соседних костей. Суставы j1-18 могут давать возможность различным частям тела, ассоциированным с костями и суставами j1-j18, двигаться независимо друг от друга. Например, кость, определенная между суставами j7 и j11, показанная на фиг.7, может соответствовать предплечью, которое может двигаться независимо, например, от кости, определенной между суставами j15 и j17, которая может соответствовать задней части голени.
Как описано выше, каждая часть тела может характеризоваться в качестве математического вектора, имеющего значение X, значение Y и значение Z, определяющие суставы и кости, показанные на фиг.7. В примерном варианте осуществления точка пересечения векторов, ассоциированных с костями, показанными на фиг.7, может определять соответствующую точку, ассоциированную с суставами j1-j18.
Возвращаясь обратно к фиг.5, в позиции 315 модель затем может отслеживаться, так что модель может корректироваться на основе движения пользователя. Согласно одному варианту осуществления модель, такая как модель 500, описанная выше в отношении фиг.7, может представлять собой представление пользователя, такого как пользователь 18, описанный выше в отношении фиг.1А и 1В. Система распознавания, анализа и отслеживания цели может наблюдать или захватывать движения от пользователя, такого как пользователь 18, которые могут использоваться для корректировки модели.
Например, устройство захвата, такое как устройство 20 захвата, описанное выше в отношении фиг.1А-2, может наблюдать или захватывать многочисленные изображения, такие как изображения глубины, RGB-изображения или т.п. сцены, которые могут использоваться для корректирования модели. Согласно одному варианту осуществления каждое изображение может наблюдаться или захватываться на основе определенной частоты. Например, устройство захвата может наблюдать или захватывать новое изображение сцены каждую миллисекунду, микросекунду или т.п.
При приеме каждого изображения информация, ассоциированная с конкретным изображением, может сравниваться с информацией, ассоциированной с моделью для определения, было ли выполнено движение пользователем. Например, в одном варианте осуществления модель может растеризоваться в синтезированное изображение, такое как синтезированное изображение глубины. Пиксели в синтезированном изображении могут сравниваться с пикселями, ассоциированными с человеческой целью в каждом принятом изображении для определения, выполнило ли движение человеческая цель в принятом изображении.
Согласно примерному варианту осуществления один или несколько векторов силы могут вычисляться на основе пикселей, сравниваемых между синтезированным изображением и принятым изображением. Одна или несколько сил затем могут быть приложены к или сопоставлены с одним или несколькими принимающими силу аспектами, такими как суставы модели, для корректирования модели в позу, которая более точно соответствует позе человеческой цели или пользователя в физическом пространстве.
Согласно другому варианту осуществления модель может корректироваться для подгонки к маске или представлению человеческой цели в каждом принятом изображении, чтобы корректировать модель на основе движения пользователя. Например, при приеме каждого наблюдаемого изображения векторы, включающие в себя значения X, Y и Z, которые могут определять каждую кость и сустав, могут корректироваться на основе маски человеческой цели в каждом принятом изображении. Например, модель может двигаться по направлению X и/или направлению Y, основываясь на значениях X и Y, ассоциированных с пикселями маски человека в каждом принятом изображении. Кроме того, суставы и кости модели могут поворачиваться в направлении Z на основе значений глубины, ассоциированных с пикселями маски человеческой цели в каждом из принятых изображений.
Фиг.8А-8С изображают примерный вариант осуществления модели, корректируемой на основе движения или жестов пользователя, такого как пользователь 18, описанный выше в отношении фиг.1А и 1В. Как показано на фиг.8А-8С, модель 500, описанная выше в отношении фиг.7, может корректироваться на основе движений или жестов пользователя в различных точках, наблюдаемых и захватываемых в изображениях глубины, принятых в различные моменты времени, как описано выше. Например, как показано на фиг.8А, суставы j4, j8 и j12 и кости, определенные между ними модели 500, могут корректироваться для представления позы 502, когда пользователь поднимает свою левую руку, применяя один или несколько векторов силы или корректируя модель для подгонки к маске для человеческой цели в изображениях, принятых в различные моменты времени, как описано выше. Суставы j8 и j12 и кость, определенная между ними, могут дополнительно корректироваться в позу 504 и 506, как показано на фиг.8В-8С, когда пользователь машет посредством движения своим левым предплечьем. Таким образом, согласно примерному варианту осуществления математический вектор, определяющий суставы j4, j8 и j12 и кости, ассоциированные с предплечьем и двуглавой мышцей между ними, может включать в себя векторы со значением X, значением Y и значением Z, которые могут корректироваться так, чтобы соответствовать позам 502, 504 и 506, приложением векторов силы или подгонкой к модели в маске, как описано выше.
Ссылаясь обратно на фиг.5, в позиции 320 может генерироваться файл захвата движений отслеживаемой модели. Например, система распознавания, анализа и отслеживания цели может визуализировать и сохранять файл захвата движений, который может включать в себя одно или несколько движений, таких как махающее движение, размахивающее движение, такое как гольф-взмах, ударяющее движение, шагающее движение, бегущее движение или т.п., характерное для пользователя, такого как пользователь 18, описанный выше в отношении фиг.1А и 1В. Согласно одному варианту осуществления файл захвата движений может генерироваться в реальном времени, основываясь на информации, ассоциированной с отслеживаемой моделью. Например, в одном варианте осуществления файл захвата движений может включать в себя, например, векторы, включающие в себя значения X, Y и Z, которые могут определять суставы и кости модели, когда она отслеживается в различные моменты времени.
В одном примерном варианте осуществления пользователю может быть подсказано выполнение различных движений, которые могут быть захвачены в файле захвата движений. Например, может отображаться интерфейс, который может подсказывать пользователю, например, пройти шагом или выполнить движение гольф-взмах. Как описано выше, затем отслеживаемая модель может корректироваться на основе движений в различные моменты времени, и файл захвата движений модели для подсказанного движения может генерироваться и сохраняться.
В другом варианте осуществления файл захвата движений может захватывать отслеживаемую модель во время естественного движения пользователя посредством взаимодействия пользователя с системой распознавания, анализа и отслеживания цели. Например, файл захвата движений может генерироваться, так что файл захвата движений может естественно захватывать любое движение или передвижение пользователем во время взаимодействия с системой распознавания, анализа и отслеживания цели.
Согласно одному варианту осуществления файл захвата движений может включать в себя кадры, соответствующие, например, моментальному снимку движения пользователя в разные моменты времени. При захвате отслеживаемой модели информация, ассоциированная с моделью, включающая в себя любые движения или корректирования, примененные к ней в конкретный момент времени, может визуализироваться в кадре файла захвата движений. Информация в кадре может включать в себя, например, векторы, включающие в себя значения X, Y и Z, которые могут определять суставы и кости отслеживаемой модели, и временную метку, которая может указывать момент времени, при котором, например, пользователь выполнил движение, соответствующее позе отслеживаемой модели.
Например, как описано выше в отношении фиг.8А-8С, модель 500 может отслеживаться и корректироваться, образуя позы 502, 504 и 506, которые могут указывать, что пользователь машет своей левой рукой в конкретные моменты времени. Информация, ассоциированная с суставами и костями модели 500 для каждой из поз 502, 504 и 506, может захватываться в файл захвата движений.
Например, поза 502 модели 500, показанной на фиг.8А, может соответствовать моменту времени, когда пользователь первоначально поднимает свою левую руку. Поза 502, включающая в себя информацию, такую как значения X, Y и Z суставов и костей для позы 502, может визуализироваться, например, в первом кадре файла захвата движений, имеющего первую временную метку, ассоциированную с моментом времени, после того как пользователь поднимет свою левую руку.
Аналогично, позы 504 и 506 модели 500, показанные на фиг.8В и 8С, могут соответствовать моменту времени, когда пользователь машет своей левой рукой. Позы 504 и 506, включающие в себя информацию, такую как значения X, Y и Z суставов и костей для поз 504 и 506, могут визуализироваться, например, в соответствующем втором и третьем кадрах файла захвата движений, имеющего соответствующие вторую и третью временные метки, ассоциированные с другим моментом времени, когда пользователь машет своей левой рукой.
Согласно примерному варианту осуществления первый, второй и третий кадры, ассоциированные с позами 502, 504 и 506, могут визуализироваться в файле захвата движений в последовательном временном порядке в соответствующие первую, вторую и третью временные метки. Например, первый кадр, визуализируемый для позы 502, может иметь первую временную метку 0 секунд, когда пользователь поднимает свою левую руку, второй кадр, визуализируемый для позы 504, может иметь вторую временную метку в 1 секунду, после того как пользователь передвинет свою левую руку в направлении наружу для начала махающего движения, и третий кадр, визуализируемый для позы 506, может иметь третью временную метку в 2 секунды, когда пользователь передвинет свою левую руку в направлении внутрь для завершения махающего движения.
В позиции 325 файл захвата движений может быть применен к аватару или персонажу игры. Например, система распознавания, анализа и отслеживания цели может применить одно или несколько движений отслеживаемой модели, захваченной в файле захвата движений, к аватару или персонажу игры, так что аватар или персонаж игры может анимироваться, имитируя движения, выполняемые пользователем, таким как пользователь 18, описанный выше в отношении фиг.1А и 1В. В примерном варианте осуществления суставы и кости в модели, захваченной в файле захвата движений, могут сопоставляться с конкретными частями персонажа игры или аватара. Например, сустав, ассоциированный с правым локтем, может сопоставляться с правым локтем аватара или персонажа игры. Правый локоть затем может анимироваться, имитируя движения правого локтя, ассоциированные с моделью пользователя в каждом кадре файла захвата движений.
Согласно примерному варианту осуществления система распознавания, анализа и отслеживания цели может применить одно или несколько движений, когда движения захватываются в файл захвата движений. Таким образом, когда кадр визуализируется в файле захвата движений, движения, захваченные в кадре, могут применяться к аватару или персонажу игры, так что аватар или персонаж игры могут анимироваться, немедленно имитируя движения, захваченные в кадре.
В другом варианте осуществления система распознавания, анализа и отслеживания цели может применять одно или несколько движений, после того как движения могут быть захвачены в файле захвата движений. Например, движение, такое как шагающее движение, может выполняться пользователем и захватываться и сохраняться в файле захвата движений. Движение, такое как шагающее движение, затем может применяться к аватару или персонажу игры каждый раз, например, когда пользователь впоследствии выполняет жест, распознаваемый в качестве элемента управления, ассоциированного с движением, таким как шагающее движение пользователя. Например, когда пользователь поднимает свою левую ногу, может инициироваться команда, которая вызывает ходьбу аватара. Аватар затем может начать ходьбу и может анимироваться на основе шагающего движения, ассоциированного с пользователем и сохраненного в файле захвата движений.
Фиг.9А-9С изображают примерный вариант осуществления аватара или персонажа 600 игры, которые могут анимироваться на основе файла захвата движений, например, в позиции 325. Как показано на фиг.9А-9С, аватар или персонаж 600 игры могут анимироваться для имитации махающего движения, захваченного для отслеживаемой модели 500, описанной выше в отношении фиг.8А-8С. Например, суставы j4, j8 и j12 и кости, определенные между ними, модели 500, показанной на фиг.8А-8С, могут сопоставляться с суставом j4' левого плеча, суставом j8' левого локтя и суставом j12' левого запястья и соответствующими костями аватара или персонажа 600 игры, как показано на фиг.9А-9С. Аватар или персонаж 600 игры затем может анимироваться в позы 602, 604 и 606, которые имитируют позы 502, 504 и 506 модели 500, показанной на фиг.8А-8С в соответствующие первую, вторую и третью временные метки в файле захвата движений.
Таким образом, в примерном варианте осуществления визуальный внешний вид экранного персонажа может изменяться под действием файла захвата движений. Например, играющий в игру, такой как пользователь 18, описанный выше в отношении фиг.1А-1В, играющий в электронную игру на игровой консоли, может отслеживаться игровой консолью, как описано в данном документе. Когда играющий в игру взмахивает рукой, игровая консоль может отслеживать это движение, затем в ответ на отслеживаемое движение корректировать модель, такую как скелетная модель, сетчатая модель или т.п., ассоциированные с пользователем соответствующим образом. Как описано выше, отслеживаемая модель может дополнительно захватываться в файле захвата движений. Файл захвата движений затем может применяться к экранному персонажу, так что экранный персонаж может анимироваться для имитации фактического движения пользователя, взмахивающего своей рукой. Согласно примерным вариантам осуществления экранный персонаж может анимироваться для взмаха, например, клюшкой для игры в гольф, битой, или нанесения удара в игре, точь-в-точь как пользователь взмахивает своей рукой.
Необходимо понять, что конфигурации и/или подходы, описанные в данном документе, являются примерными по своей сущности и что эти конкретные варианты осуществления или примеры не должны рассматриваться ограничивающими. Конкретные подпрограммы или способы, описанные в данном документе, могут представлять одну или несколько из любого количества стратегий обработки. По существу, различные изображенные действия могут выполняться в изображенной последовательности, в других последовательностях, параллельно или т.п. Аналогично порядок вышеупомянутых процессов может быть изменен.
Предмет изобретения настоящего раскрытия включает в себя все новые и неочевидные комбинации и субкомбинации различных процессов, систем и конфигураций и других признаков, функций, действий и/или свойств, описанных в данном документе, а также в любом и во всех его эквивалентах.

Claims (15)

1. Система (10) для визуализации модели (500) пользователя (18), причем система (10) содержит:
интерфейс (236) ввода, выполненный с возможностью приема (305) изображения (400) глубины сцены от устройства (20) захвата, имеющего компонент (22) камеры; и
вычислительное устройство (12) для оперативной связи с интерфейсом (236) ввода, при этом вычислительное устройство (12) содержит процессор (101, 259), осуществленный с возможностью выполнения последовательности этапов с а) по d), на которых:
а) генерируют (310) модель (500), связанную с пользователем (18), захваченным в изображении (400) глубины, при этом генерирование дополнительно включает в себя:
определение объекта (402), захваченного в изображении (400) глубины, посредством изменения значения цвета пикселя объекта (402, 404) с первого значения на второе значение так, что цвет объекта (402, 404) отличается от части изображения (400) глубины, смежной с объектом (402, 404), независимо от значения глубины объекта (402, 404) или значения глубины части изображения (400) глубины, смежной с объектом (402, 404),
сравнение объекта (402, 404) с шаблоном, связанным с моделью тела пользователя (18),
отделение объекта (402) в ответ на определение, что объект (402, 404) связан с шаблоном,
измерение различных частей тела пользователя (18) отделенного объекта (402),
генерирование и сохранение значений измерения в структуре данных, содержащей один или более векторов, каждый вектор задает по меньшей мере один узел (j1-j18, j4′, j8′, j12′) или кость, соответствующие отделенному объекту (402), упомянутые по меньшей мере один узел (j1-j18, j4′, j8′, j12′) или кость определяются по меньшей мере частично на основе измерения и соответствуют некоторой части тела пользователя (18), и
задание характеристики модели (500) на основе структуры данных;
b) отслеживают (315) и корректируют модель (500) в ответ на перемещения пользователя (18),
c) генерируют (320) файл захвата движения для перемещений пользователя (18) в реальном времени на основе значений измерения отслеживаемой модели (500); и
d) применяют (325) перемещения пользователя (18) в реальном времени к отслеживаемой модели (500), хранимой в файле захвата движения аватара (40, 600), при этом визуальное представление аватара (40, 600), представляющего пользователя (18), управляется перемещениями пользователя для подражания перемещениям пользователя (18).
2. Система (10) по п. 1, при этом процессор (101, 259) осуществлен с возможностью применения (325) файла захвата движения к аватару (40, 600) посредством отображения узлов (j1-j18, j4′, j8′, j12′) и костей модели (500) на конкретные части аватара (40, 600) и анимации упомянутых конкретных частей аватара (40, 600) для подражания перемещениям пользователя (18), применяемым к узлам (j1-j18, j4′, j8′, j12′) и костям отслеживаемой модели (500).
3. Система (10) по п. 1 или 2, в которой вычислительное устройство (12) дополнительно содержит библиотеку (190) жестов, хранимую на нем, и при этом процессор (101, 259) осуществлен с возможностью сравнения одного или более перемещений, применяемых к отслеживаемой модели (500), с библиотекой (190) жестов для определения, применять ли файл захвата движения к аватару (40, 600).
4. Система (10) по п. 1, при этом система (10) является устройством для захвата движений пользователя (18) в сцене, при этом вычислительное устройство (12) и устройство (20) захвата объединены упомянутым устройством, при этом вычислительное устройство (12) содержит процессор (32), который осуществлен с возможностью исполнения исполняемых компьютером инструкций, содержащих инструкций для выполнения упомянутых этапов с а) по d).
5. Система (10) по п. 4, при этом перемещения пользователя (18) отслеживаемой модели (500), хранимой в файле захвата движения, представляют собой одно или более движений одной или более частями тела, связанными с пользователем (18) в физическом пространстве.
6. Система (10) по п. 1, при этом генерирование (320) файла захвата движения для перемещений пользователя в реальном времени на основе отслеживаемой модели (500) содержит инструкции для:
захвата первой позы (502, 504, 506) отслеживаемой модели (500) в ответ на перемещения пользователя (18); и
визуализации первого кадра во время первой временной метки в файле захвата движения, который включает в себя упомянутую первую позу (502, 504, 506) отслеживаемой модели (500).
7. Система (10) по п. 1, при этом генерирование (320) файла захвата движения для перемещений пользователя (18) в реальном времени на основе отслеживаемой модели (500) содержит инструкции для:
захвата второй позы (502, 504, 506) отслеживаемой модели (500) в ответ на перемещения пользователя (18); и
визуализации второго кадра во время второй временной метки в файле захвата движения, который включает в себя упомянутую вторую позу (502, 504, 506) отслеживаемой модели (500).
8. Система (10) по п. 7, при этом упомянутый первый кадр и упомянутый второй кадр визуализируются в файле захвата движения в последовательном порядке во времени, соответствующем упомянутой первой временной метке и упомянутой второй временной метке.
9. Система (10) по п. 8, при этом модель (500) содержит скелетную модель, имеющую узлы (j1-j18, j4′, j8′, j12′) и кости.
10. Система (10) по п. 9, при этом упомянутый первый кадр содержит первый набор векторов, которые задают узлы (j1-j18, j4′, j8′, j12′) и кости в упомянутой первой позе (502, 504, 506), и при этом упомянутый второй кадр содержит второй набор векторов, которые задают узлы (j1-j18, j4′, j8′, j12′) и кости в упомянутой второй позе (502, 504, 506).
11. Способ (300) для захвата движений пользователя (18) в сцене, причем способ (300) содержит последовательность этапов с а) по е), на которых:
a) принимают (305) изображение (400) глубины сцены от устройства (20) захвата, имеющего компонент (22) камеры;
b) генерируют (310) модель (500), связанную с пользователем, захваченным в изображении (400), при этом генерирование дополнительно включает в себя:
определение объекта (402), захваченного в изображении (400) глубины, посредством изменения значения цвета пикселя объекта (402, 404) с первого значения на второе значение так, что цвет объекта (402, 404) отличается от части изображения (400) глубины, смежной с объектом (402, 404), независимо от значения глубины объекта (402, 404) или значения глубины части изображения (400) глубины, смежной с объектом (402, 404),
сравнение объекта (402, 404) с шаблоном, связанным с моделью тела пользователя (18),
отделение объекта (402) в ответ на определение, что объект (402, 404) связан с шаблоном,
измерение различных частей тела пользователя (18) отделенного объекта (402),
генерирование и сохранение значений измерения в структуре данных, содержащей один или более векторов, каждый вектор задает по меньшей мере один узел (j1-j18, j4′, j8′, j12′) или кость, соответствующие отделенному объекту (402), упомянутые по меньшей мере один узел (j1-j18, j4′, j8′, j12′) или кость определяются по меньшей мере частично на основе измерения и соответствуют некоторой части тела пользователя (18), и
задание характеристики модели (500) на основе структуры данных;
c) отслеживают (315) и корректируют модель (500), и
d) генерируют (320) файл захвата движения для перемещений пользователя (18) на основе значений измерения корректируемой модели (500); и
e) применяют (325) перемещения пользователя (18) к отслеживаемой модели (500), хранимой в файле захвата движения, относительно аватара (40, 600), при этом визуальное представление аватара (40, 600), представленного пользователю (18), управляется перемещениями пользователя (18) для подражания перемещениям пользователя (18).
12. Способ (300) по п. 11, при этом перемещения пользователя (18) относительно отслеживаемой модели (500), хранимой в файле захвата движения, содержат одно или более движений одной или более частей тела, связанных с пользователем в физическом пространстве.
13. Способ (300) по п. 11 или 12, при этом инструкции для генерирования (320) файла захвата движения перемещений пользователя (18) на основе корректируемой модели (500) дополнительно содержат инструкции для:
захвата позы (502, 504, 506) корректируемой модели (500); и
визуализации кадра в файле захвата движения, который включает в себя позу (502, 504, 506) корректируемой модели (500).
14. Способ (300) по п. 13, при этом модель (500) содержит скелетную модель, имеющую узлы (j1-j18, j4′, j8′, j12′) и кости, и при этом кадр содержит набор векторов, которые задают узлы (j1-j18, j4′, j8′, j12′) и кости в упомянутой позе (502, 504, 506).
15. Считываемый компьютером носитель (34, 112, 143, 222, 253, 254) данных, имеющий хранимые на нем исполняемые компьютером инструкции, которые при исполнении процессором (32), побуждают процессор (32) выполнять способ (300) по любому из пп. 11-14.
RU2011144152/08A 2009-05-01 2010-04-26 Системы и способы применения отслеживания модели для захвата движений RU2580450C2 (ru)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US17495009P 2009-05-01 2009-05-01
US61/174,950 2009-05-01
US12/485,730 US20100277470A1 (en) 2009-05-01 2009-06-16 Systems And Methods For Applying Model Tracking To Motion Capture
US12/485,730 2009-06-16
PCT/US2010/032366 WO2010126816A2 (en) 2009-05-01 2010-04-26 Systems and methods for applying model tracking to motion capture

Publications (2)

Publication Number Publication Date
RU2011144152A RU2011144152A (ru) 2013-05-10
RU2580450C2 true RU2580450C2 (ru) 2016-04-10

Family

ID=43030045

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2011144152/08A RU2580450C2 (ru) 2009-05-01 2010-04-26 Системы и способы применения отслеживания модели для захвата движений

Country Status (10)

Country Link
US (2) US20100277470A1 (ru)
EP (1) EP2424631A4 (ru)
JP (1) JP5739872B2 (ru)
KR (1) KR101625259B1 (ru)
CN (1) CN102413885B (ru)
BR (1) BRPI1015282A2 (ru)
CA (1) CA2757173C (ru)
IL (1) IL215294A (ru)
RU (1) RU2580450C2 (ru)
WO (1) WO2010126816A2 (ru)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2745429C2 (ru) * 2016-05-17 2021-03-25 Харшавардана Нараяна КИККЕРИ Отслеживание множества суставов с использованием комбинации встроенных датчиков и внешнего датчика

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8294767B2 (en) 2009-01-30 2012-10-23 Microsoft Corporation Body scan
US8202161B2 (en) * 2009-10-23 2012-06-19 Disney Enterprises, Inc. Virtual game instructor
TWI439960B (zh) 2010-04-07 2014-06-01 Apple Inc 虛擬使用者編輯環境
KR101858531B1 (ko) 2011-01-06 2018-05-17 삼성전자주식회사 모션에 의해 제어되는 디스플레이 장치 및 그 모션 제어 방법
KR20120080072A (ko) * 2011-01-06 2012-07-16 삼성전자주식회사 모션에 의해 제어되는 디스플레이 장치 및 그 모션 제어 방법
KR101795574B1 (ko) 2011-01-06 2017-11-13 삼성전자주식회사 모션에 의해 제어되는 전자기기 및 그 제어 방법
KR101758058B1 (ko) 2011-01-20 2017-07-17 삼성전자주식회사 깊이 정보를 이용한 카메라 모션 추정 방법 및 장치, 증강 현실 시스템
US8740702B2 (en) * 2011-05-31 2014-06-03 Microsoft Corporation Action trigger gesturing
US9594430B2 (en) * 2011-06-01 2017-03-14 Microsoft Technology Licensing, Llc Three-dimensional foreground selection for vision system
JP6074170B2 (ja) * 2011-06-23 2017-02-01 インテル・コーポレーション 近距離動作のトラッキングのシステムおよび方法
KR101695638B1 (ko) * 2011-07-18 2017-01-13 한국전자통신연구원 인터렉티브 컨텐츠의 제어 방법 및 이를 이용한 사용자 인터페이스 장치
US20130093751A1 (en) * 2011-10-12 2013-04-18 Microsoft Corporation Gesture bank to improve skeletal tracking
US9628843B2 (en) * 2011-11-21 2017-04-18 Microsoft Technology Licensing, Llc Methods for controlling electronic devices using gestures
US20140018169A1 (en) * 2012-07-16 2014-01-16 Zhong Yuan Ran Self as Avatar Gaming with Video Projecting Device
KR20140116740A (ko) * 2013-03-25 2014-10-06 삼성전자주식회사 안무 영상을 표시하는 디스플레이 장치 및 표시 방법
US9348411B2 (en) 2013-05-24 2016-05-24 Microsoft Technology Licensing, Llc Object display with visual verisimilitude
US9140554B2 (en) * 2014-01-24 2015-09-22 Microsoft Technology Licensing, Llc Audio navigation assistance
US9649558B2 (en) * 2014-03-14 2017-05-16 Sony Interactive Entertainment Inc. Gaming device with rotatably placed cameras
US10083233B2 (en) * 2014-09-09 2018-09-25 Microsoft Technology Licensing, Llc Video processing for motor task analysis
US10110881B2 (en) 2014-10-30 2018-10-23 Microsoft Technology Licensing, Llc Model fitting from raw time-of-flight images
US10048765B2 (en) 2015-09-25 2018-08-14 Apple Inc. Multi media computing or entertainment system for responding to user presence and activity
JP6569452B2 (ja) 2015-10-08 2019-09-04 富士通株式会社 画像生成システム、画像生成プログラム及び画像生成方法
US9854156B1 (en) 2016-06-12 2017-12-26 Apple Inc. User interface for camera effects
EP3493011B1 (en) * 2016-07-29 2022-09-14 NEC Solution Innovators, Ltd. Mobile body control system, control signal transmission system, mobile body control method, program, and recording medium
JP6744033B2 (ja) 2016-07-29 2020-08-19 Necソリューションイノベータ株式会社 移動体操縦システム、操縦シグナル送信システム、移動体操縦方法、プログラム、および記録媒体
WO2018057272A1 (en) 2016-09-23 2018-03-29 Apple Inc. Avatar creation and editing
EP3324365A1 (en) * 2016-11-22 2018-05-23 Dassault Systèmes Computer-implemented method for simulating a body taking a posture, in particular to look at a target
US20180225858A1 (en) * 2017-02-03 2018-08-09 Sony Corporation Apparatus and method to generate realistic rigged three dimensional (3d) model animation for view-point transform
JP6827875B2 (ja) * 2017-04-19 2021-02-10 株式会社日立製作所 姿勢推定システム、距離画像カメラ、及び姿勢推定装置
DK180859B1 (en) 2017-06-04 2022-05-23 Apple Inc USER INTERFACE CAMERA EFFECTS
DE102017216000A1 (de) * 2017-09-11 2019-03-14 Conti Temic Microelectronic Gmbh Gestensteuerung zur Kommunikation mit einem autonomen Fahrzeug auf Basis einer einfachen 2D Kamera
KR102572675B1 (ko) 2017-11-22 2023-08-30 삼성전자주식회사 사용자 인터페이스를 적응적으로 구성하기 위한 장치 및 방법
KR102439783B1 (ko) * 2017-12-04 2022-09-02 한국전자통신연구원 인체 자세 및 행동 모니터링 장치 및 방법
US12033296B2 (en) 2018-05-07 2024-07-09 Apple Inc. Avatar creation user interface
US11722764B2 (en) 2018-05-07 2023-08-08 Apple Inc. Creative camera
US10375313B1 (en) 2018-05-07 2019-08-06 Apple Inc. Creative camera
DK180078B1 (en) 2018-05-07 2020-03-31 Apple Inc. USER INTERFACE FOR AVATAR CREATION
DK201870623A1 (en) 2018-09-11 2020-04-15 Apple Inc. USER INTERFACES FOR SIMULATED DEPTH EFFECTS
US11770601B2 (en) 2019-05-06 2023-09-26 Apple Inc. User interfaces for capturing and managing visual media
US10645294B1 (en) 2019-05-06 2020-05-05 Apple Inc. User interfaces for capturing and managing visual media
US11128792B2 (en) 2018-09-28 2021-09-21 Apple Inc. Capturing and displaying images with multiple focal planes
US11321857B2 (en) 2018-09-28 2022-05-03 Apple Inc. Displaying and editing images with depth information
US11107261B2 (en) 2019-01-18 2021-08-31 Apple Inc. Virtual avatar animation based on facial feature movement
US10984575B2 (en) * 2019-02-06 2021-04-20 Snap Inc. Body pose estimation
JP6722316B1 (ja) * 2019-03-05 2020-07-15 株式会社コロプラ 配信プログラム、配信方法、コンピュータ、および視聴端末
US11706521B2 (en) 2019-05-06 2023-07-18 Apple Inc. User interfaces for capturing and managing visual media
CN110415321B (zh) * 2019-07-06 2023-07-25 深圳市山水原创动漫文化有限公司 一种动画动作处理方法及其系统
CN111290577B (zh) * 2020-01-22 2024-03-22 北京明略软件系统有限公司 一种非接触式输入方法及装置
US11645873B1 (en) * 2020-03-20 2023-05-09 18Birdies Llc Systems, media, and methods providing a golf swing coach
US11921998B2 (en) 2020-05-11 2024-03-05 Apple Inc. Editing features of an avatar
DK181103B1 (en) 2020-05-11 2022-12-15 Apple Inc User interfaces related to time
KR102212035B1 (ko) * 2020-05-27 2021-02-04 (주)프렌즈몬 제스처 인식 기반 원격 교육서비스 시스템 및 방법
US11039074B1 (en) 2020-06-01 2021-06-15 Apple Inc. User interfaces for managing media
EP4173257A1 (en) 2020-06-30 2023-05-03 Snap Inc. Skeletal tracking for real-time virtual effects
US11212449B1 (en) 2020-09-25 2021-12-28 Apple Inc. User interfaces for media capture and management
US11539876B2 (en) 2021-04-30 2022-12-27 Apple Inc. User interfaces for altering visual media
US11778339B2 (en) 2021-04-30 2023-10-03 Apple Inc. User interfaces for altering visual media
US12112024B2 (en) 2021-06-01 2024-10-08 Apple Inc. User interfaces for managing media styles
US11776190B2 (en) 2021-06-04 2023-10-03 Apple Inc. Techniques for managing an avatar on a lock screen
CN114359469B (zh) * 2022-01-07 2023-06-09 腾讯科技(深圳)有限公司 生成主控对象投影的方法、装置、设备及介质
KR102612512B1 (ko) * 2023-07-07 2023-12-11 주식회사 위시 모션 캡쳐 시스템에서의 모션 스킬 발현 장치 및 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6075895A (en) * 1997-06-20 2000-06-13 Holoplex Methods and apparatus for gesture recognition based on templates
JP2002058045A (ja) * 2000-08-08 2002-02-22 Komatsu Ltd 現実の物体をバーチャル3次元空間に登場させるためのシステム及び方法
RU2298294C2 (ru) * 2001-06-05 2007-04-27 Риэктрикс Системз, Инк. Интерактивная видеодисплейная система

Family Cites Families (102)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4288078A (en) * 1979-11-20 1981-09-08 Lugo Julio I Game apparatus
US4600919A (en) * 1982-08-03 1986-07-15 New York Institute Of Technology Three dimensional animation
US4695953A (en) * 1983-08-25 1987-09-22 Blair Preston E TV animation interactively controlled by the viewer
US4630910A (en) * 1984-02-16 1986-12-23 Robotic Vision Systems, Inc. Method of measuring in three-dimensions at high speed
US4627620A (en) * 1984-12-26 1986-12-09 Yang John P Electronic athlete trainer for improving skills in reflex, speed and accuracy
US4645458A (en) * 1985-04-15 1987-02-24 Harald Phillip Athletic evaluation and training apparatus
US4702475A (en) * 1985-08-16 1987-10-27 Innovating Training Products, Inc. Sports technique and reaction training system
US4843568A (en) * 1986-04-11 1989-06-27 Krueger Myron W Real time perception of and response to the actions of an unencumbered participant/user
US4711543A (en) * 1986-04-14 1987-12-08 Blair Preston E TV animation interactively controlled by the viewer
US4796997A (en) * 1986-05-27 1989-01-10 Synthetic Vision Systems, Inc. Method and system for high-speed, 3-D imaging of an object at a vision station
US5184295A (en) * 1986-05-30 1993-02-02 Mann Ralph V System and method for teaching physical skills
US4751642A (en) * 1986-08-29 1988-06-14 Silva John M Interactive sports simulation system with physiological sensing and psychological conditioning
US4809065A (en) * 1986-12-01 1989-02-28 Kabushiki Kaisha Toshiba Interactive system and related method for displaying data to produce a three-dimensional image of an object
US4817950A (en) * 1987-05-08 1989-04-04 Goo Paul E Video game control unit and attitude sensor
US5239464A (en) * 1988-08-04 1993-08-24 Blair Preston E Interactive video system providing repeated switching of multiple tracks of actions sequences
US5239463A (en) * 1988-08-04 1993-08-24 Blair Preston E Method and apparatus for player interaction with animated characters and objects
US4901362A (en) * 1988-08-08 1990-02-13 Raytheon Company Method of recognizing patterns
US4893183A (en) * 1988-08-11 1990-01-09 Carnegie-Mellon University Robotic vision system
JPH02199526A (ja) * 1988-10-14 1990-08-07 David G Capper 制御インターフェース装置
US4925189A (en) * 1989-01-13 1990-05-15 Braeunig Thomas F Body-mounted video game exercise device
US5229756A (en) * 1989-02-07 1993-07-20 Yamaha Corporation Image control apparatus
US5469740A (en) * 1989-07-14 1995-11-28 Impulse Technology, Inc. Interactive video testing and training system
JPH03103822U (ru) * 1990-02-13 1991-10-29
US5101444A (en) * 1990-05-18 1992-03-31 Panacea, Inc. Method and apparatus for high speed object location
US5148154A (en) * 1990-12-04 1992-09-15 Sony Corporation Of America Multi-dimensional user interface
US5534917A (en) * 1991-05-09 1996-07-09 Very Vivid, Inc. Video image based control system
US5417210A (en) * 1992-05-27 1995-05-23 International Business Machines Corporation System and method for augmentation of endoscopic surgery
US5295491A (en) * 1991-09-26 1994-03-22 Sam Technology, Inc. Non-invasive human neurocognitive performance capability testing method and system
US5320538A (en) * 1992-09-23 1994-06-14 Hughes Training, Inc. Interactive aircraft training system and method
US5495576A (en) * 1993-01-11 1996-02-27 Ritchey; Kurtis J. Panoramic image based virtual reality/telepresence audio-visual system and method
US5690582A (en) * 1993-02-02 1997-11-25 Tectrix Fitness Equipment, Inc. Interactive exercise apparatus
US5405152A (en) * 1993-06-08 1995-04-11 The Walt Disney Company Method and apparatus for an interactive video game with physical feedback
US5454043A (en) * 1993-07-30 1995-09-26 Mitsubishi Electric Research Laboratories, Inc. Dynamic and static hand gesture recognition through low-level image analysis
US5423554A (en) * 1993-09-24 1995-06-13 Metamedia Ventures, Inc. Virtual reality game method and apparatus
JP3419050B2 (ja) * 1993-11-19 2003-06-23 株式会社日立製作所 入力装置
US5347306A (en) * 1993-12-17 1994-09-13 Mitsubishi Electric Research Laboratories, Inc. Animated electronic meeting place
JP2552427B2 (ja) * 1993-12-28 1996-11-13 コナミ株式会社 テレビ遊戯システム
US5577981A (en) * 1994-01-19 1996-11-26 Jarvik; Robert Virtual reality exercise machine and computer controlled video system
US5580249A (en) * 1994-02-14 1996-12-03 Sarcos Group Apparatus for simulating mobility of a human
US5597309A (en) * 1994-03-28 1997-01-28 Riess; Thomas Method and apparatus for treatment of gait problems associated with parkinson's disease
US5385519A (en) * 1994-04-19 1995-01-31 Hsu; Chi-Hsueh Running machine
US5524637A (en) * 1994-06-29 1996-06-11 Erickson; Jon W. Interactive system for measuring physiological exertion
US5563988A (en) * 1994-08-01 1996-10-08 Massachusetts Institute Of Technology Method and system for facilitating wireless, full-body, real-time user interaction with a digitally represented visual environment
US5516105A (en) * 1994-10-06 1996-05-14 Exergame, Inc. Acceleration activated joystick
US5638300A (en) * 1994-12-05 1997-06-10 Johnson; Lee E. Golf swing analysis system
JPH08161292A (ja) * 1994-12-09 1996-06-21 Matsushita Electric Ind Co Ltd 混雑度検知方法およびそのシステム
US5594469A (en) * 1995-02-21 1997-01-14 Mitsubishi Electric Information Technology Center America Inc. Hand gesture machine control system
US5682229A (en) * 1995-04-14 1997-10-28 Schwartz Electro-Optics, Inc. Laser range camera
US5682196A (en) * 1995-06-22 1997-10-28 Actv, Inc. Three-dimensional (3D) video presentation system providing interactive 3D presentation with personalized audio responses for multiple viewers
IL114278A (en) * 1995-06-22 2010-06-16 Microsoft Internat Holdings B Camera and method
EP0835460B1 (en) * 1995-06-22 2006-03-08 3DV Systems Ltd. Improved optical ranging camera
US5641288A (en) * 1996-01-11 1997-06-24 Zaenglein, Jr.; William G. Shooting simulating process and training device using a virtual reality display screen
EP0849697B1 (en) * 1996-12-20 2003-02-12 Hitachi Europe Limited A hand gesture recognition system and method
US6072494A (en) * 1997-10-15 2000-06-06 Electric Planet, Inc. Method and apparatus for real-time gesture recognition
US6950534B2 (en) * 1998-08-10 2005-09-27 Cybernet Systems Corporation Gesture-controlled interfaces for self-service machines and other applications
US6501515B1 (en) * 1998-10-13 2002-12-31 Sony Corporation Remote control system
WO2001018563A1 (en) * 1999-09-08 2001-03-15 3Dv Systems, Ltd. 3d imaging system
US6512838B1 (en) * 1999-09-22 2003-01-28 Canesta, Inc. Methods for enhancing performance and data acquired from three-dimensional image systems
US7006236B2 (en) * 2002-05-22 2006-02-28 Canesta, Inc. Method and apparatus for approximating depth of an object's placement onto a monitored region with applications to virtual interface devices
US7050177B2 (en) * 2002-05-22 2006-05-23 Canesta, Inc. Method and apparatus for approximating depth of an object's placement onto a monitored region with applications to virtual interface devices
KR100361462B1 (ko) * 1999-11-11 2002-11-21 황병익 모션 캡쳐 데이터 획득 방법
DE19960180B4 (de) * 1999-12-14 2006-03-09 Rheinmetall W & M Gmbh Verfahren zur Herstellung eines Sprenggeschosses
US6674877B1 (en) * 2000-02-03 2004-01-06 Microsoft Corporation System and method for visually tracking occluded objects in real time
US6663491B2 (en) * 2000-02-18 2003-12-16 Namco Ltd. Game apparatus, storage medium and computer program that adjust tempo of sound
US7227526B2 (en) * 2000-07-24 2007-06-05 Gesturetek, Inc. Video-based image control system
JP3725460B2 (ja) * 2000-10-06 2005-12-14 株式会社ソニー・コンピュータエンタテインメント 画像処理装置、画像処理方法、記録媒体、コンピュータプログラム、半導体デバイス
US6539931B2 (en) * 2001-04-16 2003-04-01 Koninklijke Philips Electronics N.V. Ball throwing assistant
WO2003071410A2 (en) * 2002-02-15 2003-08-28 Canesta, Inc. Gesture recognition system using depth perceptive sensors
US7310431B2 (en) * 2002-04-10 2007-12-18 Canesta, Inc. Optical methods for remotely measuring objects
US7646372B2 (en) * 2003-09-15 2010-01-12 Sony Computer Entertainment Inc. Methods and systems for enabling direction detection when interfacing with a computer program
US7623115B2 (en) * 2002-07-27 2009-11-24 Sony Computer Entertainment Inc. Method and apparatus for light input device
US7883415B2 (en) * 2003-09-15 2011-02-08 Sony Computer Entertainment Inc. Method and apparatus for adjusting a view of a scene being displayed according to tracked head motion
US7151530B2 (en) * 2002-08-20 2006-12-19 Canesta, Inc. System and method for determining an input selected by a user through a virtual interface
US9177387B2 (en) * 2003-02-11 2015-11-03 Sony Computer Entertainment Inc. Method and apparatus for real time motion capture
US7372977B2 (en) * 2003-05-29 2008-05-13 Honda Motor Co., Ltd. Visual tracking using depth data
US7874917B2 (en) * 2003-09-15 2011-01-25 Sony Computer Entertainment Inc. Methods and systems for enabling depth and direction detection when interfacing with a computer program
JP3847753B2 (ja) * 2004-01-30 2006-11-22 株式会社ソニー・コンピュータエンタテインメント 画像処理装置、画像処理方法、記録媒体、コンピュータプログラム、半導体デバイス
US20050215319A1 (en) * 2004-03-23 2005-09-29 Harmonix Music Systems, Inc. Method and apparatus for controlling a three-dimensional character in a three-dimensional gaming environment
US7308112B2 (en) * 2004-05-14 2007-12-11 Honda Motor Co., Ltd. Sign based human-machine interaction
US7991220B2 (en) * 2004-09-01 2011-08-02 Sony Computer Entertainment Inc. Augmented reality game system using identification information to display a virtual object in association with a position of a real object
EP1645944B1 (en) * 2004-10-05 2012-08-15 Sony France S.A. A content-management interface
JP4449723B2 (ja) * 2004-12-08 2010-04-14 ソニー株式会社 画像処理装置、画像処理方法、およびプログラム
US8009871B2 (en) * 2005-02-08 2011-08-30 Microsoft Corporation Method and system to segment depth images and to detect shapes in three-dimensionally acquired data
KR100688743B1 (ko) * 2005-03-11 2007-03-02 삼성전기주식회사 멀티 레이어 커패시터 내장형의 인쇄회로기판의 제조방법
US7317836B2 (en) * 2005-03-17 2008-01-08 Honda Motor Co., Ltd. Pose estimation based on critical point analysis
GB2431717A (en) * 2005-10-31 2007-05-02 Sony Uk Ltd Scene analysis
JP4917615B2 (ja) * 2006-02-27 2012-04-18 プライム センス リミティド スペックルの無相関を使用した距離マッピング(rangemapping)
EP2016562A4 (en) * 2006-05-07 2010-01-06 Sony Computer Entertainment Inc METHOD FOR IMPLEMENTING AFFECTIVE PROPERTIES IN A COMPUTER GENERATED AVATAR DURING A COMPUTER GAME
US7721207B2 (en) * 2006-05-31 2010-05-18 Sony Ericsson Mobile Communications Ab Camera based control
JP2008033840A (ja) 2006-07-31 2008-02-14 Xing Inc 動画表示装置、動画表示方法、及びコンピュータプログラム
US8395658B2 (en) * 2006-09-07 2013-03-12 Sony Computer Entertainment Inc. Touch screen-like user interface that does not require actual touching
WO2008061023A2 (en) * 2006-11-10 2008-05-22 Mtv Networks Electronic game that detects and incorporates a user's foot movement
US20080134102A1 (en) * 2006-12-05 2008-06-05 Sony Ericsson Mobile Communications Ab Method and system for detecting movement of an object
US8351646B2 (en) * 2006-12-21 2013-01-08 Honda Motor Co., Ltd. Human pose estimation and tracking using label assignment
GB0703974D0 (en) * 2007-03-01 2007-04-11 Sony Comp Entertainment Europe Entertainment device
WO2008109299A2 (en) * 2007-03-01 2008-09-12 Sony Computer Entertainment America Inc. System and method for communicating with a virtual world
US7970176B2 (en) * 2007-10-02 2011-06-28 Omek Interactive, Inc. Method and system for gesture classification
US20090221368A1 (en) * 2007-11-28 2009-09-03 Ailive Inc., Method and system for creating a shared game space for a networked game
GB2455316B (en) * 2007-12-04 2012-08-15 Sony Corp Image processing apparatus and method
WO2009086088A1 (en) * 2007-12-21 2009-07-09 Honda Motor Co., Ltd. Controlled human pose estimation from depth image streams
US8149210B2 (en) * 2007-12-31 2012-04-03 Microsoft International Holdings B.V. Pointing device and method
CN101520902A (zh) * 2009-02-24 2009-09-02 上海大学 低成本动作捕捉与演示系统及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6075895A (en) * 1997-06-20 2000-06-13 Holoplex Methods and apparatus for gesture recognition based on templates
JP2002058045A (ja) * 2000-08-08 2002-02-22 Komatsu Ltd 現実の物体をバーチャル3次元空間に登場させるためのシステム及び方法
RU2298294C2 (ru) * 2001-06-05 2007-04-27 Риэктрикс Системз, Инк. Интерактивная видеодисплейная система

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2745429C2 (ru) * 2016-05-17 2021-03-25 Харшавардана Нараяна КИККЕРИ Отслеживание множества суставов с использованием комбинации встроенных датчиков и внешнего датчика

Also Published As

Publication number Publication date
KR101625259B1 (ko) 2016-05-27
US20100277470A1 (en) 2010-11-04
IL215294A (en) 2016-05-31
RU2011144152A (ru) 2013-05-10
CA2757173A1 (en) 2010-11-04
WO2010126816A2 (en) 2010-11-04
EP2424631A2 (en) 2012-03-07
BRPI1015282A2 (pt) 2018-02-20
IL215294A0 (en) 2011-12-29
CN102413885A (zh) 2012-04-11
US20120127176A1 (en) 2012-05-24
EP2424631A4 (en) 2013-05-22
CA2757173C (en) 2017-05-23
CN102413885B (zh) 2013-07-10
WO2010126816A3 (en) 2011-03-03
JP5739872B2 (ja) 2015-06-24
KR20120020106A (ko) 2012-03-07
JP2012525643A (ja) 2012-10-22

Similar Documents

Publication Publication Date Title
RU2580450C2 (ru) Системы и способы применения отслеживания модели для захвата движений
US8660310B2 (en) Systems and methods for tracking a model
US8803889B2 (en) Systems and methods for applying animations or motions to a character
US9607213B2 (en) Body scan
US9182814B2 (en) Systems and methods for estimating a non-visible or occluded body part
RU2555228C2 (ru) Манипулирование виртуальным объектом
US20100302253A1 (en) Real time retargeting of skeletal data to game avatar
US20100302247A1 (en) Target digitization, extraction, and tracking
US20110109617A1 (en) Visualizing Depth

Legal Events

Date Code Title Description
HZ9A Changing address for correspondence with an applicant
MM4A The patent is invalid due to non-payment of fees

Effective date: 20180427