BR112012000391B1 - método, meio legível por computador para executar o método e sistema para aplicar atributos inidcativos de um temperamento do usuário a uma representação visual - Google Patents

método, meio legível por computador para executar o método e sistema para aplicar atributos inidcativos de um temperamento do usuário a uma representação visual Download PDF

Info

Publication number
BR112012000391B1
BR112012000391B1 BR112012000391A BR112012000391A BR112012000391B1 BR 112012000391 B1 BR112012000391 B1 BR 112012000391B1 BR 112012000391 A BR112012000391 A BR 112012000391A BR 112012000391 A BR112012000391 A BR 112012000391A BR 112012000391 B1 BR112012000391 B1 BR 112012000391B1
Authority
BR
Brazil
Prior art keywords
user
temperament
visual representation
gesture
attributes
Prior art date
Application number
BR112012000391A
Other languages
English (en)
Other versions
BR112012000391A2 (pt
Inventor
Kipman Alex
Wilson Andrew
Stone Perez Kathryn
D Burton Nicholas
Original Assignee
Microsoft Corp
Microsoft Technology Licensing Llc
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 Microsoft Corp, Microsoft Technology Licensing Llc filed Critical Microsoft Corp
Publication of BR112012000391A2 publication Critical patent/BR112012000391A2/pt
Publication of BR112012000391B1 publication Critical patent/BR112012000391B1/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites
    • 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/20Input arrangements for video game devices
    • A63F13/23Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console
    • 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
    • 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

"expressão de representação visual baseada na expressão do jogador" a presente invenção se refere às técnicas de reconhecimento facial e de reconhecimento de gesto/postura corporal, em que um sistema pode transmitir naturalmente as emoções e atitudes de um usuário através da representação visual do usuário. as técnicas podem compreender personalizar uma representação visual de um usuário com base nas características detectáveis, deduzir um temperamento do usuário a partir das características detectáveis e aplicar atributos indicativos do temperamento à representação visual em tempo real. as técnicas também podem compreender processar alterações nas características do usuário no espaço físico e atualizar a representação visual em tempo real. por exemplo, o sistema pode rastrear as expressões faciais e movimentos corporais do usuário para identificar um temperamento e, então, aplicar atributos indicativos deste temperamento à representação visual.; deste modo, uma representação visual de um usuário, tal como, um avatar ou personagem imaginário, pode refletir as expressões e humores do usuário em tempo

Description

Relatório Descritivo da Patente de Invenção para “MÉTODO, MEIO LEGÍVEL POR COMPUTADOR PARA EXECUTAR O MÉTODO E SISTEMA PARA APLICAR ATRIBUTOS INIDCATIVOS DE UM TEMPERAMENTO DO USUÁRIO A UMA REPRESENTAÇÃO VISUAL”
Antecedentes da Invenção [0001] Frequentemente, diversos aplicativos irão exibir uma representação visual que corresponde a um usuário que o usurário controla através de determinadas ações, tal como, selecionar botões em um controlador remoto ou móvel de uma maneira determinada. A representação visual pode ser sob a forma de um avatar, um personagem imaginário, uma imagem de desenho animado ou animal, um cursor, uma mão, ou similar. A representação visual é uma representação de computador que corresponde a um usuário que tipicamente adota a forma de um modelo bidimensional (2D) ou tridimensional (3D) em diversos aplicativos, tais como, jogos de computador, vídeo games, chats, fóruns, comunidades, serviços de mensagem instantânea, e similares. Muitos aplicativos de computação, tais como, jogos de computador, aplicativos multimídia, aplicativos office, ou similar, proporcionam uma seleção de personagens animados predefinidos que podem ser selecionados para uso no aplicativo como o avatar do usuário. Alguns sistemas podem incorporar uma câmera que tem a capacidade de tirar uma foto de um usuário e identificar os atributos a partir deste quadro de dados. Entretanto, estes sistemas requerem uma captura de um atributo do usuário, processamento da imagem e, então, aplicação ao personagem em um ambiente em tempo não real, e os atributos aplicados são baixa fidelidade, geralmente, baseada em um único instantâneo do usuário. Sumário da Invenção [0002] Pode ser desejável personalizar um a representação visual de um usuário com base nas características detectadas do usuário e
Petição 870190075890, de 07/08/2019, pág. 4/79
2/69 pode ser desejável aplicar as características à representação visual em tempo real. Também, pode ser desejável que os processos de sistema alterem para as características do usuário no espaço físico e possam atualizar a representação visual em tempo real. Destas características, pode ser desejável que o sistema identifique um temperamento do usuário e aplique atributos indicativos do temperamento à representação visual do usuário.
[0003] São descritas no presente documento as técnicas para proporcionar uma representação visual de um usuário, tal como, um avatar ou personagem imaginário, que pode refletir o temperamento do usuário em tempo real. Usando o reconhecimento facial e técnicas de reconhecimento de gesto/postura corporal, o sistema pode deduzir um temperamento do usuário. O sistema pode transmitir naturalmente as emoções e atitudes de um usuário através das aplicações de atributos do temperamento do usuário para a representação visual do usuário. Também são descritas as técnicas para rastrear o usuário no espaço físico ao longo do tempo e aplicar modificações ou atualizações à representação visual em tempo real. Por exemplo, o sistema pode rastrear as expressões faciais e movimentos corporais de um usuário para identificar um temperamento e, então, aplicar atributos indicativos deste temperamento à representação visual. O sistema pode usar quaisquer características detectáveis para avaliar o temperamento do usuário para aplicação à representação visual.
[0004] Este Sumário é proporcionado para introduzir uma seleção de conceitos de uma forma simplificada que será adicionalmente descrita abaixo na Descrição Detalhada. Este Sumário não se destina a identificar recursos chave ou recursos essenciais do assunto em questão reivindicado, nem se destina a ser usado para limitar o escopo do assunto em questão reivindicado. Além disso, o assunto em questão reivindicado não se limita às implementações que solucionam alguma
Petição 870190075890, de 07/08/2019, pág. 5/79
3/69 ou todas as desvantagens notadas em qualquer parte desta descrição. Breve Descrição dos Desenhos [0005] Os sistemas, métodos e meios legíveis por computador para modificar uma representação visual de acordo com este relatório descritivo são adicionalmente descritos com referência ais desenhos em anexo, em que:
[0006] A Figura 1 ilustra uma modalidade exemplificativa de um sistema de reconhecimento, análise e rastreamento alvo com um usuário jogando um jogo.
[0007] A Figura 2 ilustra uma modalidade exemplificativa de um dispositivo de captura que pode ser usado em um sistema de reconhecimento, análise e rastreamento alvo e que incorpora técnicas de combinação de encadeamento e animação.
[0008] A Figura 3 ilustra uma modalidade exemplificativa de um ambiente computacional no qual as técnicas de animação descritas no presente documento podem ser incorporadas.
[0009] A Figura 4 ilustra outra modalidade exemplificativa de um ambiente computacional no qual as técnicas de animação descritas no presente documento podem ser incorporadas.
[00010] A Figura 5A ilustra um mapeamento de esqueleto de um usuário que foi gerado a partir de uma imagem de profundidade.
[00011] A Figura 5B ilustra detalhes adicionais da arquitetura de reconhecimento de gesto mostrada na Figura 2.
[00012] A Figura 6 mostra um sistema de reconhecimento, análise e rastreamento alvo exemplificative e uma modalidade exemplificativa de um usuário no espaço físico e uma exibição da representação visual do usuário.
[00013] A Figura 7 mostra um fluxograma exemplificative para um método de aplicação de atributos indicativos de um temperamento do usuário em uma representação visual.
Petição 870190075890, de 07/08/2019, pág. 6/79
4/69 [00014] A Figura 8 mostra uma tabela de pesquisa exemplificativa para deduzir um temperamento do usuário.
[00015] A Figura 9 mostra outro sistema de reconhecimento, análise e rastreamento alvo exemplificativo e modalidades exemplificativas do usuário no espaço físico e modalidades exemplificativas da exibição da representação visual do usuário.
Descrição Detalhada das Modalidades ilustrativas [00016] São descritas no presente documento técnicas para proporcionar uma representação visual de um usuário, tal como, um avatar, que pode refletir o temperamento do usuário. A representação visual do usuário pode ser sob a forma de um personagem, uma animação, um avatar, um cursor na tela, uma mão, ou qualquer outra representação virtual que corresponda ao usuário no espaço físico. Usando o reconhecimento facial e as técnicas de reconhecimento de gesto/postura corporal, um sistema pode transmitir naturalmente as emoções e atitudes de um usuário através da representação visual do usuário. Por exemplo, um dispositivo de captura pode identificar os atributos de um usuário e personalizar a representação visual do usuário com base nestes recursos identificados, tais como, emoções, expressões e humores. Em uma modalidade exemplificativa, o sistema gera e usa aspectos de um modelo de esqueleto ou malha de uma pessoa com base nos dados de imagem capturados pelo dispositivo de captura, e usa técnicas de reconhecimento corporal para determinar o temperamento do usuário.
[00017] Também são descritas técnicas para exibição da representação visual em tempo real e aplicação de atributos indicativos de um temperamento do usuário à representação visual em tempo real. O sistema pode rastrear o usuário no espaço físico ao longo do tempo e aplicar modificações ou atualizações à representação visual em tempo real. O sistema pode rastrear características detectáveis, tais como, as ca
Petição 870190075890, de 07/08/2019, pág. 7/79
5/69 racterísticas, gestos do usuário, um status de aplicativo, etc., para deduzir um temperamento do usuário. As características do usuário, tais como, por exemplo, as expressões faciais e movimentos corporais, podem ser usadas para deduzir um temperamento e, então, os atributos deste temperamento podem ser aplicados à representação visual, de modo que a representação visual reflita o temperamento do usuário. Por exemplo, o dispositivo de captura pode identificar comportamentos e maneirismos, emoções, padrões de fala, dados de histórico, ou similar, de um usuário para determinar o temperamento do usuário e aplicar este à representação visual do usuário. O sistema pode usar quaisquer atributos detectáveis para avaliar o temperamento do usuário para aplicação na representação visual.
[00018] Para gerar um modelo representativo de um alvo ou objeto em um espaço físico, um dispositivo de captura pode capturar uma imagem de profundidade da cena e varrer alvos ou objetos na cena. Um alvo pode ser um alvo humano, tal como, um usuário, no espaço físico. Deste modo, conforme usado no presente documento, entende-se que o alvo e o usuário podem ser usados de maneira intercambiável. Em uma modalidade, o dispositivo de captura pode determinar se um ou mais alvos ou objetos na cena correspondem a um alvo humano, tal como, o usuário. Para determinar se um alvo ou objeto na cena corresponde a um alvo humano, cada um dos alvos pode ser preenchido por inundação e comparado a um padrão de um modelo de corpo humano. Cada alvo ou objeto que corresponde ao modelo de corpo humano, então, pode ser varrido para gerar um modelo de esqueleto associado a este. Por exemplo, um alvo identificado como um humano pode ser varrido para gerar um modelo de esqueleto associado a este. O modelo de esqueleto, então, pode ser proporcionado para o ambiente computacional para rastrear o modelo de esqueleto e proporcionar uma represen
Petição 870190075890, de 07/08/2019, pág. 8/79
6/69 tação visual associada ao modelo de esqueleto. O ambiente computacional pode determinar quais controles realizar em um aplicativo que executa no ambiente de computador com base, por exemplo, em gestos do usuário que foram reconhecidos e mapeados no modelo de esqueleto. Deste modo, a realimentação de usuário pode ser exibida, tal como, através de um avatar em uma tela, e o usuário pode controlar este movimento do avatar ao efetuar gestos no espaço físico.
[00019] O movimento da representação visual pode ser controlado mapeando-se o movimento da representação visual no movimento do usuário no espaço físico. Por exemplo, o alvo pode ser um usuário humano que está se movimentando ou gesticulando no espaço físico. A representação visual do alvo pode ser um avatar exibido em uma tela, e o movimento do avatar pode corresponder ao movimento do usuário. O movimento no espaço físico pode ser convertido em um controle em um espaço de sistema ou aplicativo, tal como, um espaço virtual e/ou um espaço de jogos. Por exemplo, os movimentos de um usuário podem ser rastreados, modelados e exibidos, e os gestos do usuário podem controlar determinados aspectos de um sistema de operação ou aplicativo de execução. Os gestos do usuário podem ser convertidos em um controle no espaço de sistema ou aplicativo para aplicar atributos indicativos de um temperamento em uma representação visual.
[00020] O movimento capturado pode ser qualquer movimento no espaço físico que é capturado pelo dispositivo de captura, tal como, uma câmera. O movimento capturado pode incluir o movimento de um alvo no espaço físico, tal como, um usuário ou um objeto. O movimento capturado pode incluir um gesto que se converte em um controle em um sistema ou aplicativo de operação. O movimento pode ser dinâmico, tal como, um movimento de corrida, ou o movimento pode ser estático, tal como, um usuário que é posado com pouco movimento.
Petição 870190075890, de 07/08/2019, pág. 9/79
7/69 [00021] O sistema, métodos e componentes de reconhecimento facial e corporal para transmitir as atitudes e movimentos do usuário descritos no presente documento podem ser incorporados em um console multimídia, tal como, um console de jogos, ou qualquer outro dispositivo de computação no qual se deseja exibir uma representação visual de um alvo, que inclui, por meio de exemplo e sem nenhuma limitação pretendida, receptores de satélite, decodificadores de sinais, jogos arcade, computadores pessoais (PCs), telefones portáteis, assistentes pessoais digitais (PDAs), e outros dispositivos de mão.
[00022] A Figura 1 ilustra uma modalidade exemplificativa de uma configuração de um sistema de reconhecimento, análise e rastreamento alvo 10 que pode empregar técnicas para aplicar características do usuário a uma representação visual. Na modalidade exemplificativa, um usuário 18 está jogando um jogo de boxe. Em uma modalidade exemplificativa, o sistema 10 pode reconhecer, analisar, e/ou rastrear um alvo humano, tal como, o usuário 18. O sistema 10 pode reunir informações relacionadas aos movimentos, expressões faciais, linguagem corporal, emoções do usuário, etc., no espaço físico. Por exemplo, o sistema pode identificar e varrer o alvo humano 18. O sistema 10 pode usar técnicas de reconhecimento de postura corporal para identificar o temperamento do alvo humano 18. Por exemplo, se o usuário 18 anda encurvado, dobra suas mãos ao longo de seu peito, e move sua cabeça para o lado com movimento letárgico, o sistema 10 pode identificar as partes de corpo do usuário 18 e como elas se movem. O sistema 10 pode comparar os movimentos a uma biblioteca de emoções, humores, atitudes, expressões, etc., para interpretar o temperamento do usuário.
[00023] Conforme mostrado na Figura 1, o sistema de reconhecimento, análise e rastreamento alvo 10 pode incluir um ambiente computacional 12. O ambiente computacional 12 pode ser um computador,
Petição 870190075890, de 07/08/2019, pág. 10/79
8/69 um sistema ou console de jogos, ou similar. De acordo com uma modalidade exemplificativa, o ambiente computacional 12 pode incluir componentes de hardware e/ou componentes de software, de modo que o ambiente computacional 12 possa ser usado para executar aplicativos, tais como, aplicativos de jogos, aplicativos de não jogos, ou similar.
[00024] Conforme mostrado na Figura 1, o sistema de reconhecimento, análise e rastreamento alvo 10 pode incluir adicionalmente um dispositivo de captura 20. O dispositivo de captura 20 pode ser, por exemplo, uma câmera que pode ser usada para monitorar visualmente um ou mais usuários, tal como, o usuário 18, de modo que os gestos realizados por um ou mais usuários possam ser capturados, analisados e rastreados para realizar um ou mais controles ou ações dentro de um aplicativo, conforme será descrito em mais detalhes abaixo.
[00025] De acordo com uma modalidade, o sistema de reconhecimento, análise e rastreamento alvo 10 pode ser conectado a um dispositivo audiovisual 16, tal como, uma televisão, um monitor, uma televisão de alta definição (HDTV), ou similar, que pode proporcionar aplicativos de jogos, visuais e/ou de áudio para um usuário, tal como, o usuário 18. Por exemplo, o ambiente computacional 12 pode incluir um adaptador de vídeo, tal como, uma placa gráfica e/ou um adaptador de áudio, tal como, uma placa de som que pode proporcionar sinais audiovisuais associados ao aplicativo de jogos, aplicativo de não jogos, ou similar. O dispositivo audiovisual 16 pode receber os sinais audiovisuais a partir do ambiente computacional 12 e, então, pode emitir os aplicativos de jogos, visuais e/ou de áudio com os sinais audiovisuais para o usuário 18. De acordo com uma modalidade, o dispositivo audiovisual 16 pode ser conectado ao ambiente computacional 12, por exemplo, através de um cabo S-Vídeo, um cabo coaxial, um cabo HDMI, um cabo DVI, um cabo VGA, ou similar.
Petição 870190075890, de 07/08/2019, pág. 11/79
9/69 [00026] Conforme mostrado na Figura 1, o sistema de reconhecimento, análise e rastreamento alvo 10 pode ser usado para reconhecer, analisar e/ou rastrear um alvo humano, tal como, o usuário 18. Por exemplo, o usuário 18 pode ser rastreado usando o dispositivo de captura 20, de modo que os movimentos do usuário 18 possam ser interpretados como controles que podem ser usados para afetar o aplicativo que é executado pelo ambiente de computador 12. Deste modo, de acordo com uma modalidade, o usuário 18 pode mover seu corpo para controlar o aplicativo. O sistema 10 pode rastrear o corpo do usuário e os movimentos efetuados pelo corpo do usuário, que incluem os gestos que controlam os aspectos do sistema, tais como, aplicativo, sistema de operação, ou similar. O sistema pode comparar a postura de corpo do usuário, expressões faciais, expressões e tom vocal, contemplações direcionadas, etc., para determinar um temperamento ou atitude do usuário e aplicar características deste temperamento ou atitude ao avatar.
[00027] O sistema 10 pode converter uma entrada em um dispositivo de captura 20 em uma animação, sendo que a entrada é representativa do movimento de um usuário, de modo que a animação seja acionada por esta entrada. Deste modo, os movimentos do usuário podem mapear em uma representação visual 40, de modo que os movimentos do usuário no espaço físico sejam realizados pelo avatar 40. Os movimentos do usuário podem ser gestos que são aplicáveis a um controle em um aplicativo. Conforme mostrado na Figura 1, em uma modalidade exemplificativa, o aplicativo que executa no ambiente computacional 12 pode ser um jogo de boxe que o usuário 18 pode estar jogando.
[00028] O ambiente computacional 12 pode usar o dispositivo audiovisual 16 para proporcionar uma representação visual de um avatar de jogador 40 que o usuário 18 pode controlar com seus movimentos. Por exemplo, o usuário 18 pode arremessar um soco no espaço físico para fazer com que o avatar de jogador 40 arremesse um soco no espaço de
Petição 870190075890, de 07/08/2019, pág. 12/79
10/69 jogo. O avatar de jogador 40 pode ter as características do usuário identificadas pelo dispositivo de captura 20, ou o sistema 10 pode usar os atributos de um boxeador bem conhecido ou retratar o físico de um boxeador profissional para a representação visual que mapeia os movimentos do usuário. O sistema 10 pode rastrear o usuário e modificar as características do avatar do usuário com base nos atributos detectáveis do usuário no espaço físico. O ambiente computacional 12 também pode usar o dispositivo audiovisual 16 para proporcionar uma representação visual de um boxeador oponente 38 ao usuário 18. De acordo com uma modalidade exemplificativa, o ambiente de computador 12 e o dispositivo de captura 20 do sistema de reconhecimento, análise e rastreamento alvo 10 podem ser usados para reconhecer e analisar o soco do usuário 18 no espaço físico, de modo que o soco possa ser interpretado como um controle de jogo do avatar de jogador 40 no espaço de jogo. Múltiplos usuários podem interagir uns com os outros a partir de localizações remotas. Por exemplo, a representação visual do boxeador oponente 38 pode ser representativa de outro usuário, tal como, um segundo usuário no espaço físico com o usuário 18 ou um usuário em rede em um segundo espaço físico.
[00029] Outros movimentos pelo usuário 18 também podem ser interpretados como outros controles ou ações, tais como, controles para bob, weave, shuffle, block, jab, ou arremessar uma variedade de socos de intensidade diferentes. Além disso, alguns movimentos podem ser interpretados como controles que podem corresponder às ações diferentes do controle do avatar de jogador 40. Por exemplo, o jogador pode usar movimentos para finalizar, pausar ou salvar um jogo, selecionar um nível, visualizar pontuações altas, se comunicar com um amigo, etc. De maneira adicional, uma faixa completa de movimento do usuário 18 pode ser disponível, usada e analisada de qualquer maneira adequada para interagir com um aplicativo.
Petição 870190075890, de 07/08/2019, pág. 13/79
11/69 [00030] Nas modalidades exemplificativas, o alvo humano, tal como, o usuário 18 pode ter um objeto. Em tais modalidades, o usuário de um jogo eletrônico pode estar segurando o objeto, de modo que os movimentos do jogador e do objeto possam ser usados para ajustar e/ou controlar parâmetros do jogo. Por exemplo, o movimento de um jogador que segura uma raquete pode ser rastreado e utilizado para controlar uma raquete na tela em um jogo de esporte eletrônico. Em outra modalidade exemplificativa, o movimento de um jogador que segura um objeto pode ser rastreado e utilizado para controlar uma arma na tela em um jogo de combate eletrônico.
[00031] Os gestos ou movimentos do usuário podem ser interpretados como controles que podem corresponder às ações diferentes do controle do avatar de jogador 40. Por exemplo, o jogador pode usar movimentos para finalizar, pausar ou salvar um jogo, selecionar um nível, visualizar pontuações altas, se comunicar com um amigo, etc. O jogador pode usar movimentos para aplicar atributos indicativos de um temperamento para a representação visual do usuário. De maneira virtual, qualquer aspecto controlável de um sistema de operação e/ou aplicativo pode ser controlado por movimentos do alvo, tal como, o usuário 18. De acordo com outras modalidades exemplificativas, o sistema de reconhecimento, análise e rastreamento alvo 10 pode interpretar movimentos alvos para controlar os aspectos de um sistema de operação e/ou aplicativo que se encontram fora do âmbito de jogos.
[00032] Um aplicativo de um atributo do usuário a uma representação visual ou a detecção de determinadas emoções ou atitudes do usuário pode ser um aspecto do sistema de operação e/ou aplicativo que pode ser controlado ou reconhecido a partir dos gestos de usuário. Por exemplo, um gesto para as mãos do usuário dobradas ao longo de seu peito pode ser um gesto reconhecido como um humor de frustração. O reconhecimento do sistema de um gesto que indica que o usuário está
Petição 870190075890, de 07/08/2019, pág. 14/79
12/69 frustrado, junto com uma expressão do usuário, tal como, um franzimento de sobrancelha, pode resultar em uma representação visual que reflete um temperamento frustrado.
[00033] Os gestos do usuário podem ser controles aplicáveis a um sistema de operação, aspectos de não jogo ou um aplicativo de não jogo. Os gestos do usuário podem ser interpretados como manipulação de objeto, tal como, o controle de uma interface de usuário. Por exemplo, considerando-se uma interface de usuário que tem lâminas ou uma interface compensada verticalmente alinhada da esquerda para direita, onde a seleção de cada lâmina ou aba abre as opções para diversos controles dentro do aplicativo ou do sistema. O sistema pode identificar o gesto de mão do usuário para o movimento de uma aba, onde a mão do usuário no espaço físico é virtualmente alinhada a uma aba no espaço de aplicativo. O gesto, que inclui uma pausa, um movimento de agarramento e, então, um movimento rápido da mão para a esquerda, pode ser interpretado como uma seleção de uma aba e que, então, move esta para fora do caminho para abrir a próxima aba.
[00034] A Figura 2 ilustra uma modalidade exemplificativa de um dispositivo de captura 20 que pode ser usado para o reconhecimento, análise e rastreamento alvo, onde o alvo pode ser um usuário ou um objeto. De acordo com uma modalidade exemplificativa, o dispositivo de captura 20 pode ser configurado para capturar vídeo com informações de profundidade que incluem uma imagem de profundidade que pode incluir valores de profundidade através de qualquer técnica que inclui, por exemplo, tempo de voo, luz estruturada, imagem estéreo, ou similar. De acordo com uma modalidade, o dispositivo de captura 20 pode organizar as informações de profundidade calculadas em camadas Z ou camadas que podem ser perpendiculares a um eixo geométrico Z que se estende a partir da câmera de profundidade ao longo de sua linha de visão.
Petição 870190075890, de 07/08/2019, pág. 15/79
13/69 [00035] Conforme mostrado na Figura 2, o dispositivo de captura 20 pode incluir um componente de câmera de imagem 22. De acordo com uma modalidade exemplificativa, o componente de câmera de imagem 22 pode ser uma câmera de profundidade que pode capturar a imagem de profundidade de uma cena. A imagem de profundidade pode incluir uma área de pixel bidimensional (2-D) da cena capturada onde cada pixel na área de pixel 2-D pode representar um valor de profundidade, tal como, um comprimento ou distância, por exemplo, em centímetros, milímetros, ou similar, de um objeto na cena capturada a partir da câmera.
[00036] Conforme mostrado na Figura 2, de acordo com uma modalidade exemplificativa, o componente de câmera de imagem 22 pode incluir um componente de luz IR 24, uma câmera tridimensional (3-D) 26, e uma câmera RGB 28 que pode ser usada para capturar a imagem de profundidade de uma cena. Por exemplo, na análise de tempo de voo, o componente de luz IR 24 do dispositivo de captura 20 pode emitir uma luz infravermelha sobre a cena e, então, pode usar sensores (não mostrados) para detectar a luz de difusão retrógada a partir da superfície de um ou mais alvos e objetos na cena usando, por exemplo, a câmera 3-D 26 e/ou a câmera RGB 28. Em algumas modalidades, a luz infravermelha pulsada pode ser usada, de modo que o tempo entre um pulso de luz de saída e um pulso de luz de entrada correspondente possa ser medido e usado para determinar uma distância física a partir do dispositivo de captura 20 até uma localização particular nos alvos ou objetos na cena. De maneira adicional, em outras modalidades exemplificativas, a fase da onda de luz de saída pode ser comparada à fase da onda de luz de entrada para determinar um deslocamento de fase. O deslocamento de fase, então, pode ser usado para determinar uma distância física a partir do dispositivo de captura 20 até uma localização particular nos alvos ou objetos.
Petição 870190075890, de 07/08/2019, pág. 16/79
14/69 [00037] De acordo com outra modalidade exemplificativa, a análise de tempo de voo pode ser usada para determinar indiretamente uma distância física a partir do dispositivo de captura 20 até uma localização particular nos alvos ou objetos ao analisar a intensidade do feixe de luz refletido ao longo do tempo através de diversas técnicas que incluem, por exemplo, formação de imagem de pulso de luz obturada.
[00038] Em outra modalidade exemplificativa, o dispositivo de captura 20 pode usar uma luz estruturada para capturar informações de profundidade. Em tal análise, a luz padronizada (isto é, a luz exibida como um padrão conhecido, tal como, padrão de grade ou um padrão de faixa) pode ser projetada sobre a cena, por exemplo, através do componente de luz IR 24. Mediante o golpe na superfície de um ou mais alvos ou objetos na cena, o padrão pode se tornar deformado em resposta. Tal deformação do padrão pode ser capturada, por exemplo, pela câmera3-D 26 e/ou câmera RGB 28 e, então, pode ser analisada para determinar uma distância física a partir do dispositivo de captura 20 até uma localização particular nos alvos ou objetos.
[00039] De acordo com outra modalidade, o dispositivo de captura 20 pode incluir duas ou mais câmeras fisicamente separadas que podem visualizar uma cena a partir de ângulos diferentes, para obter dados estéreos visuais que podem ser resolvidos para gerar informações de profundidade.
[00040] O dispositivo de captura 20 pode incluir adicionalmente um microfone 30 ou um conjunto de microfones. O microfone 30 pode incluir um transdutor ou sensor que pode receber e converter o som em um sinal elétrico. De acordo com uma modalidade, o microfone 30 pode ser usado para reduzir a realimentação entre o dispositivo de captura 20 e o ambiente computacional 12 no sistema de reconhecimento, análise e rastreamento alvo 10. De maneira adicional, o microfone 30 pode ser
Petição 870190075890, de 07/08/2019, pág. 17/79
15/69 usado para receber sinais de áudio que também podem ser proporcionados pelo usuário para controlar aplicativos, tais como, aplicativos de jogos, aplicativos de não jogos, ou similar, que podem ser executados pelo ambiente computacional 12.
[00041 ] Em uma modalidade exemplificativa, o dispositivo de captura 20 pode incluir adicionalmente um processador 32 que pode ficar em comunicação operativa com o componente de câmera de imagem 22. O processador 32 pode incluir um processador padronizado, um processador especializado, um microprocessador, ou similar que pode executar instruções que podem incluir instruções para receber uma imagem de profundidade, determinar se um alvo adequado pode ser incluído na imagem de profundidade, converter o alvo adequado em uma representação ou modelo de esqueleto do alvo, ou qualquer outra instrução adequada.
[00042] O dispositivo de captura 20 pode incluir adicionalmente um componente de memória 34 que pode armazenar as instruções que podem ser executadas pelo processador 32, imagens ou quadros de imagens capturadas pela câmera 3-d 26 ou câmera RGB 28, ou quaisquer outras informações, imagens adequadas, ou similares. De acordo com uma modalidade exemplificativa, o componente de memória 34 pode incluir memória de acesso aleatório (RAM), memória somente leitura (ROM), cache, memória Flash, um disco rígido, ou qualquer outro componente de armazenamento adequado. Conforme mostrado na Figura 2, em uma modalidade, o componente de memória 34 pode ser um componente separado em comunicação com o componente de captura de imagem 22 e o processador 32. De acordo com outra modalidade, o componente de memória 34 pode ser integrado no processador 32 e/ou no componente de captura de imagem 22.
[00043] Conforme mostrado na Figura 2, o dispositivo de captura 20 pode ficar em comunicação com o ambiente computacional 12 através
Petição 870190075890, de 07/08/2019, pág. 18/79
16/69 de um vínculo de comunicação 36. O vínculo de comunicação 36 pode ser uma conexão com fio que inclui, por exemplo, uma conexão USB, uma conexão Firewire, uma conexão de cabo Ethernet, ou similar e/ou uma conexão sem fio, tal como, uma conexão sem fio 802.1 lb, g, a ou n. De acordo com uma modalidade, o ambiente computacional 12 pode proporcionar um clock para o dispositivo de captura 20 que pode ser usado para determinar quando capturar, por exemplo, uma cena através do vínculo de comunicação 36.
[00044] De maneira adicional, o dispositivo de captura 20 pode proporcionar as informações e imagens de profundidade capturadas, por exemplo, pela câmera 3-D 26 e/ou câmera RGB 28, e um modelo de esqueleto que pode ser gerado pelo dispositivo de captura 20 para o ambiente computacional 12 através do vínculo de comunicação 36. O ambiente computacional 12, então, pode usar o modelo de esqueleto, informações de profundidade, e imagens capturadas, por exemplo, para controlar um aplicativo, tal como, um jogo ou processador de texto. Por exemplo, conforme mostrado na Figura 2, o ambiente computacional 12 pode incluir uma biblioteca de gestos 190.
[00045] Conforme mostrado na Figura 2, o ambiente computacional 12 pode incluir uma biblioteca de gestos 190 e um mecanismo de reconhecimento de gestos 192. O mecanismo de reconhecimento de gestos 192 pode incluir uma coleção de filtros de gestos 191. Um filtro pode compreender código e dados associados que podem reconhecer gestos ou, de outro modo, a profundidade de processo, RGB ou dados de esqueleto. Cada filtro 191 pode compreender informações que definem um gesto junto com parâmetros ou metadados para este gesto. Por exemplo, um arremesso, que compreende o movimento de uma das mãos a partir da parte de trás do corpo além da parte da frente do corpo, pode ser implementado como um filtro de gesto 191 que compreende informações que representam o movimento de uma das mãos do usuário a
Petição 870190075890, de 07/08/2019, pág. 19/79
17/69 partir da parte de trás do corpo além da parte da frente do corpo, à medida que este movimento pode ser capturado por uma câmera de profundidade. Os parâmetros, então, podem ser ajustados para este gesto. Onde o gesto for um arremesso, um parâmetro pode ser uma velocidade limite que a mão precisa alcançar, uma distância que a mão deve se deslocar (absoluta ou relativa ao tamanho do usuário como um todo), e uma classificação de confiança através do mecanismo de reconhecimento que o gesto ocorreu. Estes parâmetros para o gesto podem variar entre os aplicativos, entre os contextos de um único aplicativo ou dentro de um contexto de um aplicativo ao longo do tempo.
[00046] Embora se contemple que o mecanismo de reconhecimento de gestos pode incluir uma coleção de filtros de gestos, onde um filtro pode compreender código ou, de outro modo, representar um componente para processar profundidade, RGB, ou dados de esqueleto, o uso de um filtro não se destina a limitar a análise a um filtro. O filtro é uma representação de um componente ou seção exemplificativa de código que analisa dados de uma cena recebida por um sistema, e compara estes dados com as informações de base que representam um gesto. Como um resultado da análise, o sistema pode produzir uma saída correspondente se os dados de entrada corresponderem ao gesto. As informações de base que representam o gesto podem ser ajustadas para corresponderem ao atributo recorrente no histórico de dados representativo do movimento de captura do usuário. As informações de base, por exemplo, podem fazer parte de um filtro de gesto, conforme descrito acima. Porém, qualquer maneira adequada para analisar os dados de entrada e dados de gesto é contemplada.
[00047] Um gesto pode ser reconhecido como um gesto de identidade de temperamento. Em uma modalidade exemplificativa, o movimento no espaço físico pode ser representativo de um gesto reconhecido como uma solicitação para aplicar atributos de um temperamento
Petição 870190075890, de 07/08/2019, pág. 20/79
18/69 particular à representação visual de um alvo. Uma pluralidade de gestos pode representar um gesto de identidade de temperamento particular. Deste modo, um usuário pode controlar a forma da representação visual ao efetuar um gesto no espaço físico que é reconhecido como um gesto de identidade de temperamento. Por exemplo, conforme descrito acima, o movimento do usuário pode ser comparado a um filtro de gesto, tal como, filtro de gesto 191 a partir da Figura 2. O filtro de gesto 191 pode compreender informações para um gesto de identidade de temperamento a partir dos gestos de identidade de temperamento 196 na biblioteca de gestos 190.
[00048] Uma pluralidade de gestos de identidade de temperamento pode representar um temperamento que tem atributos a serem aplicados a uma representação visual na tela. Por exemplo, um gesto de identificação excitado pode ser reconhecido a partir da identidade de um movimento do usuário que compreende um movimento de salto para cima e para baixo com os braços do usuário elevados no ar. O resultado pode ser a aplicação de atributos, diretamente mapeado no movimento e/ou animações do usuário além movimento do usuário na representação visual do usuário.
[00049] Os dados capturados pelas câmeras 26, 28 e o dispositivo 20 sob a forma do modelo de esqueleto e movimentos associados a este podem ser comparados aos filtros de gestos 191 na biblioteca de gesto 190 para identificar quando um usuário (conforme representado pelo modelo de esqueleto) realizou um ou mais gestos. Deste modo, as entradas em um filtro, tal como, o filtro 191 podem compreender itens, tais como, dados de junta sobre uma posição de junta do usuário, como os ângulos formados pelos ossos que se encontram na junta, os dados de cor RGB a partir da cena, e a taxa de alteração de um aspecto do usuário. Conforme mencionado, os parâmetros podem ser ajustados para o gesto. As saídas de um filtro 191 podem compreender itens, tais
Petição 870190075890, de 07/08/2019, pág. 21/79
19/69 como, a confiança que um determinado gesto é efetuado, a velocidade na qual um movimento de gesto é efetuado e um tempo no qual o gesto ocorre.
[00050] O ambiente computacional 12 pode incluir um processador 195 que pode processar a imagem de profundidade para determine quais alvos se encontram em uma cena, tal como, um usuário 18 ou um objeto no ambiente. Isto pode ser efetuado, por exemplo, através do agrupamento de pixels da imagem de profundidade que compartilha um valor de distância similar. A imagem também pode ser analisada para produzir uma representação de esqueleto do usuário, onde atributos, tais como, juntas e tecidos que passam entre as juntas são identificados. Existem técnicas de mapeamento de esqueleto para capturar uma pessoa com uma câmera de profundidade e partir disto determinar diversos pontos neste esqueleto do usuário, juntas das mãos, pulsos, cotovelos, joelhos, nariz, tornozelos, ombros, e onde a pélvis encontra a coluna. Outras técnicas incluem transformar a imagem em uma representação de modelo de corpo da pessoa e transformar a imagem em uma representação de modelo de malha da pessoa.
[00051] Em uma modalidade, o processamento é realizado no próprio dispositivo de captura 20, e os valores de dados de imagem brutos de profundidade e cor (onde o dispositivo de captura 20 compreende uma câmera 3D 26) são transmitidos para o ambiente computacional 12 através do vínculo 36. Em outra modalidade, o processamento é realizado por um processador 32 acoplado à câmera 402 e, então, os dados de imagem analisados são enviados para o ambiente computacional 12. Ainda em outra modalidade, tantos os dados de imagem brutos como os dados de imagem analisados são enviados para o ambiente computacional 12. O ambiente computacional 12 pode receber os dados de imagem analisados, porém, ainda pode receber os dados brutos para executar o processo ou aplicação atual. Por exemplo, se uma imagem
Petição 870190075890, de 07/08/2019, pág. 22/79
20/69 da cena for transmitida através de uma rede de computador para outro usuário, o ambiente computacional 12 pode transmitir os dados brutos para processamento por outro ambiente computacional.
[00052] O ambiente computacional 12 pode usar a biblioteca de gestos 190 para interpretar os movimentos do modelo de esqueleto e controlar um aplicativo com base nos movimentos. O ambiente computacional 12 pode modelar e exibir uma representação de um usuário, tal como, sob a forma de um avatar ou um ponteiro em uma tela, tal como, em um dispositivo de exibição 193. O dispositivo de exibição 193 pode incluir um monitor de computador, uma tela de televisão, ou qualquer dispositivo de exibição adequado. Por exemplo, um sistema de computador controlado por câmera pode capturar os dados de imagem de usuário e exibir a realimentação de usuário em uma tela de televisão que mapeia os gestos do usuário. A realimentação de usuário pode ser exibida como um avatar em uma tela, tal como, conforme mostrado na Figuras 1A e 1 Β. O movimento do avatar pode ser diretamente controlado ao mapear o movimento do avatar naqueles movimentos do usuário. Os gestos do usuário podem ser interpretados controlando-se determinados aspectos do aplicativo.
[00053] Conforme descrito acima, pode ser desejável aplicar atributos de um temperamento em uma representação visual do alvo. Por exemplo, um usuário pode desejar efetuar a representação visual do usuário com uma dança na tela que indica a felicidade do usuário. O usuário pode iniciar a aplicação de tais atributos ao realizar um gesto de identidade de temperamento particular.
[00054] De acordo com uma modalidade exemplificativa, o alvo pode ser um alvo humano em qualquer posição, tal como, em pé ou sentado, um alvo humano com um objeto, dois ou mais alvos humanos, um ou mais apêndices de um ou mais alvos humanos, ou similares, que podem ser varridos, rastreados, modelados e/ou avaliados para gerar uma tela
Petição 870190075890, de 07/08/2019, pág. 23/79
21/69 virtual, comparar o usuário com um ou mais perfis armazenados e/ou armazenar informações de perfil 198 sobre o alvo em um ambiente computacional, tal como, o ambiente computacional 12. As informações de perfil 198 podem ser sob a forma de perfis de usuário, perfis pessoais, perfis de aplicativo, perfis de sistema, ou qualquer outro método adequado para armazenar dados para acesso posterior. As informações de perfil 198 podem ser acessíveis através de um aplicativo ou ser amplamente disponíveis no sistema, por exemplo. As informações de perfil 198 podem incluir tabelas de pesquisa para carregar informações de perfil de usuário específicas. A tela virtual pode interagir com um aplicativo que pode ser executado pelo ambiente computacional 12 descrito acima em relação às Figuras 1A-1B.
[00055] De acordo com as modalidades exemplificativas, as tabelas de pesquisa podem incluir informações de perfil específicas de usuário. Em uma modalidade, o ambiente computacional, tal como, o ambiente computacional 12 pode incluir dados de perfil armazenados 198 sobre um ou mais usuários nas tabelas de pesquisa. Os dados de perfil armazenados 198 podem incluir, entre outras coisas, os tamanhos de corpo varridos ou estimados alvos, modelos de esqueleto, modelos de corpo, amostras de voz ou senhas, as idades alvos, gestos anteriores, limitações alvos e uso padrão através do alvo do sistema, tal como, por exemplo, uma tendência a sentar, direção à esquerda ou direita, ou uma tendência a permanecer muito próximo ao dispositivo de captura. Estas informações podem ser usadas para determinar se existe uma correspondência entre um alvo em uma cena de captura e um ou mais perfis de usuário 198 que, em uma modalidade, podem permitir que o sistema adapte a tele virtual ao usuário, ou adapte outros elementos da experiência de computação ou jogos de acordo com o perfil 198.
[00056] Um ou mais perfis pessoais 198 podem ser armazenados no ambiente de computador 12 e usados em inúmeras sessões de usuário,
Petição 870190075890, de 07/08/2019, pág. 24/79
22/69 ou um ou mais perfis pessoais podem ser criados apenas para uma única sessão. Os usuários podem ter a opção de estabelecer um perfil onde eles podem proporcionar informações para o sistema, tais como, uma varredura de voz ou corpo, idade, preferências pessoais, direção à direita ou esquerda, um avatar, um nome, ou similar. Os perfis pessoais também podem ser proporcionados para convidados que não proporcionam nenhuma informação para o sistema além do escalonamento no espaço de captura. Um perfil pessoal temporário pode ser estabelecido para um ou mais convidados. No final de uma sessão de convidado, o perfil pessoal de convidado pode ser armazenado ou excluído.
[00057] A biblioteca de gestos 190, o mecanismo de reconhecimento de gestos 192, e o perfil 198 podem ser implementados em hardware, software ou uma combinação de ambos. Por exemplo, a biblioteca de gestos 190 e o mecanismo de reconhecimento de gestos 192 podem ser implementados como o software que executa em um processador, tal como, o processador 195 do ambiente computacional 12 (ou na unidade de processamento 101 da Figura 3 ou unidade de processamento 259 da Figura 4).
[00058] Enfatiza-se que os diagramas de bloco mostrados nas Figuras 2 e Figuras 3-4 descritas abaixo são exemplificativos e não destinados a implicar uma implementação específica. Deste modo, o processador 195 ou 32 na Figura 1, a unidade de processamento 101 da Figura 3 e a unidade de processamento 259 da Figura 4, podem ser implementados como um único processador ou múltiplos processadores. Múltiplos processadores podem ser distribuídos ou centralmente localizados. Por exemplo, a biblioteca de gestos 190 pode ser implementada como o software que executa no processador 32 do dispositivo de captura ou pode ser implementada como o software que executa no processador 195 no ambiente computacional 12. Quaisquer combinações de proces
Petição 870190075890, de 07/08/2019, pág. 25/79
23/69 sadores que são adequadas para realizar as técnicas descritas no presente documento são contempladas. Múltiplos processadores podem se comunicar de maneira sem fio, através de fio rígido ou uma combinação destes.
[00059] Além disso, conforme usado no presente documento, um ambiente computacional 12 pode se referir a um único dispositivo de computação ou a um sistema de computação. O ambiente computacional pode incluir componentes de não computação. O ambiente computacional pode incluir um dispositivo de exibição, tal como, o dispositivo de exibição 193 mostrado na Figura 2. Um dispositivo de exibição pode ser totalmente separado, porém, acoplado ao ambiente computacional ou o dispositivo de exibição pode ser o dispositivo de computação que processa e exibe, por exemplo. Deste modo, um sistema de computação, dispositivo de computação, ambiente computacional, computador, processador, ou outro componente de computação pode ser usado de maneira intercambiável.
[00060] A biblioteca de gestos e parâmetros de filtro podem ser ajustados para uma aplicação ou um contexto de uma aplicação através de uma ferramenta de gesto. Um contexto pode ser um contexto cultural, e este pode ser um contexto ambiental. Um contexto cultural se refere à cultura de um usuário que usa um sistema. Diferentes culturas podem usar gestos similares para conferirem sentidos acentuadamente diferentes. Por exemplo, um usuário americano que deseja falar para outro usuário olhar ou usar seus olhos pode colocar seu dedo indicador em sua cabeça próximo ao lado distai de seu olho. Entretanto, para um usuário italiano, este gesto pode ser interpretado como uma referência à máfia.
[00061] De maneira similar, podem existir diferentes contextos entre diferentes ambientes de um único aplicativo. Adota-se um jogo de atira
Petição 870190075890, de 07/08/2019, pág. 26/79
24/69 dor de primeiro usuário que envolve operar um veículo a motor. Enquanto o usuário está a pé, apontando com os dedos em direção ao solo e estendendo a mão em frente e longe do corpo pode representar um gesto de soco. Enquanto o usuário se encontra no contexto de direção, este mesmo movimento pode representar um gesto de mudança de engrenagem. Em relação às modificações na representação visual, diferentes gestos podem acionar diferentes modificações que dependem do ambiente. Um gesto de disparo de modificação diferente pode ser usado para entrada em um modo de modificação de aplicação específica versus um modo de modificação de sistema amplo. Cada modo de modificação pode ser empacotado com um conjunto independente de gestos que corresponde ao modo de modificação, lançado como um resultado do gesto de disparo de modificação. Por exemplo, em um jogo de boliche, um movimento de braço oscilante pode ser um gesto identificado como balançar uma bola para liberar uma pista de boliche virtual. Entretanto, em outro aplicativo, o movimento de braço oscilante pode ser um gesto identificado como uma solicitação para alongar o braço do avatar do usuário exibido na tela, também podem existir ou mais ambientes de menu, onde o usuário pode salvar seu jogo, selecionar entre seu equipamento de personagem ou realizar ações similares que não compreendem jogo direto. Neste ambiente, este mesmo gesto pode ser um terceiro sentido, tal como, selecionar, tal como, selecionar algo ou avançar até outra tela.
[00062] Os gestos podem ser agrupados em pacotes de gênero de gestos complementares que provavelmente serão usados por um aplicativo naquele gênero. Os gestos complementares - complementares como aqueles que são usados entre si, ou complementares à medida que uma alteração em um parâmetro de um irá alterar um parâmetro de outro - podem ser agrupados em pacotes de gênero. Estes pacotes podem ser proporcionados para um aplicativo, que pode selecionar pelo
Petição 870190075890, de 07/08/2019, pág. 27/79
25/69 menos um. O aplicativo pode ajustar ou modificar o parâmetro de um gesto ou filtro de gesto 191 para se adequar melhor aos aspectos exclusivos do aplicativo. Quando este parâmetro for ajustado, um segundo parâmetro complementar (no sentido interdependente) do gesto ou um segundo gesto também é ajustado, de modo que os parâmetros permaneçam complementares. Os pacotes de gênero para vídeo games podem incluir gêneros, tais como, tiro, ação, direção e esportes de primeiro usuário.
[00063] A Figura 3 ilustra uma modalidade exemplificativa de um ambiente computacional que pode ser usado para interpretar um ou mais gestos no sistema de reconhecimento, análise e rastreamento alvo. O ambiente computacional, tal como, o ambiente computacional 12 descrito acima em relação às Figuras 1A-2 pode ser um console multimídia 100, tal como, um console de jogos. Conforme mostrado na Figura 3, o console multimídia 100 tem uma unidade de processamento central (CPU) 101 que tem um cache de nível 1 102, um cache de nível 2 104, e uma ROM flash (Memória Somente Leitura) 106. O cache de nível 1 102 e um cache de nível 2 104 armazenam dados temporariamente e, portanto, reduzem o número de ciclos de acesso de memória aprimorando, deste modo, a velocidade e a taxa de transferência de processamento. A CPU 101 pode ser proporcionada tendo mais de um núcleo e, deste modo, os caches de nível 1 e nível 2 adicionais 102 e 104. A ROM flash 106 pode armazenar código executável que é carregado durante uma fase inicial de um processo de inicialização quando o console multimídia 100 for LIGADO.
[00064] Uma unidade de processamento gráfico (GPU) 108 e um codificador de vídeo/codec de vídeo (codificador/decodificador) 114 formam um encadeamento de processamento de vídeo para processamento gráfico de alta velocidade e alta resolução. Os dados são trans
Petição 870190075890, de 07/08/2019, pág. 28/79
26/69 portados a partir da unidade de processamento gráfico 108 até o codificador de vídeo/codec de vídeo 114 através de um barramento. O encadeamento de processamento de vídeo emite dados para uma porta A/V (áudio/vídeo) 140 para transmissão em uma televisão ou outra tela. Um controlador de memória 110 é conectado à GPU 108 para facilitar o acesso de processador a diversos tipos de memória 112, tal como, porém, não limitado a uma RAM (Memória de Acesso Aleatório).
[00065] O console multimídia 100 inclui um controlador de I/O 120, um controlador de gerenciamento de sistema 122, uma unidade de processamento de áudio 123, um controlador de interface de rede 124, um primeiro controlador host USB 126, um segundo controlador host USB 128 e uma sub-montagem de I/O de painel anterior 130 que são preferencialmente implementados em um módulo 118. Os controladores USB 126 e 128 servem como hosts para controladores periféricos 142(1)142(2), um adaptador sem fio 148, e um dispositivo de memória externo 146 (por exemplo, memória flash, unidade de CD/DVD ROM externa, mídia removível, etc.). A interface de rede 124 e/ou adaptador sem fio 148 proporciona acesso a uma rede (por exemplo, a Internet, rede doméstica, etc.) e pode ser qualquer um entre uma ampla variedade de diversos componentes de adaptador com fio e sem fio que incluem uma placa Ethernet, um modem, um módulo Bluetooth, um modem a cabo, e similares.
[00066] A memória de sistema 143 é proporcionada para armazenar dados de aplicativo que são carregados durante o processo de inicialização. Uma unidade de mídia 144 é proporcionada e pode compreender uma unidade de DVD/CD, disco rígido, ou outra unidade de mídia removível, etc. A unidade de mídia 144 pode ser interna ou externa ao console multimídia 100. Os dados de aplicativo podem ser acessados através da unidade de mídia 144 para execução, reprodução, etc. através
Petição 870190075890, de 07/08/2019, pág. 29/79
27/69 do console multimídia 100. A unidade de mídia 144 é conectada ao controlador de I/O 120 através de um barramento, tal como, um barramento Serial ATA ou outra conexão de alta velocidade (por exemplo, IEEE 1394).
[00067] O controlador de gerenciamento de sistema 122 proporciona uma variedade de funções de serviço relacionada à asseguração de disponibilidade do console multimídia 100. A unidade de processamento de áudio 123 e um codec de áudio 132 formam um encadeamento de processamento de áudio correspondente com processamento de alta fidelidade e estéreo. Os dados de áudio são transportados entre a unidade de processamento de áudio 123 e o codec de áudio 132 através de um vínculo de comunicação. O encadeamento de processamento de áudio emite dados para a porta A/V 140 para a reprodução através de um reprodutor ou dispositivo de áudio externo que tem capacidades de áudio.
[00068] A sub-montagem de I/O de painel anterior 130 suporta a funcionalidade do botão de energia 150 e o botão de ejeção 152, assim como, quaisquer LEDs (diodos emissores de luz) ou outros indicadores expostos na superfície externa do console multimídia 100. Um módulo de fornecimento de energia de sistema 136 proporciona energia aos componentes do console multimídia 100. Um ventilador 138 resfria o conjunto de circuitos dentro do console multimídia 100.
[00069] A CPU 101, GPU 108, o controlador de memória 110, e diversos outros componentes dentro do console multimídia 100 são interconectados através de um ou mais barramentos que incluem barramentos seriais e paralelos, um barramento de memória, um barramento periférico e um barramento processador ou local que usa qualquer uma entre uma variedade de arquiteturas de barramento. Por meio de exemplo, tais arquiteturas podem incluir um barramento de Interconectores de Componentes Periféricos (PCI), barramento PCI-Express, etc.
Petição 870190075890, de 07/08/2019, pág. 30/79
28/69 [00070] Quando o console multimídia 100 for LIGADO, os dados de aplicativo podem ser carregados a partir da memória de sistema 143 na memória 112 e/ou caches 102, 104 e executados na CPU 101. O aplicativo pode apresentar uma interface gráfica de usuário que proporciona uma experiência de usuário coerente ao navegar em diferentes tipos de mídia no console multimídia 100. Em operação, os aplicativos e/ou outras mídias contidas na unidade de mídia 144 podem ser lançados ou executadas a partir da unidade de mídia 144 para proporcionar funcionalidades adicionais ao console multimídia 100.
[00071] O console multimídia 100 pode ser operado como um sistema autônomo simplesmente ao conectar o sistema a uma televisão ou outra tela. Neste modo autônomo, o console multimídia 100 permite que um ou mais usuários interajam com o sistema, assistam filmes ou ouçam música. Entretanto, com a integração da conectividade de banda larga disponível através da interface de rede 124 ou do adaptador sem fio 148, o console multimídia 100 pode ser adicionalmente operado como um participante em uma comunidade de rede maior.
[00072] Quando o console multimídia 100 for LIGADO, uma quantidade ajustada de recursos de hardware é reservada para uso de sistema pelo sistema de operação de console multimídia. Estes recursos podem incluir uma reserva de memória (por exemplo, 16MB), ciclos de CPU e GPU (por exemplo, 5%), largura de banda de rede (por exemplo, 8 kbs.), etc. Devido ao fato destes recursos serem reservados em um tempo de inicialização de sistema, os recursos reservados não existem a partir da exibição do aplicativo.
[00073] Em particular, a reserva de memória é preferencialmente grande o bastante para conter o kernel de inicialização, aplicativos e drivers de sistema simultâneos. A reserva de CPU é preferencialmente constante, de modo que se o uso de CPU reservado não for usado pelos
Petição 870190075890, de 07/08/2019, pág. 31/79
29/69 aplicativos de sistema, um segmento ocioso irá consumir quaisquer ciclos não usados.
[00074] Em relação à reserva de GPU, as mensagens leves geradas pelos aplicativos de sistema (por exemplo, pop-ups) são exibidas ao usar uma interrupção de GPU para programar o código para proporcionar pop-up em uma sobreposição. A quantidade de memória requerida para uma sobreposição depende do tamanho de área de sobreposição e a sobreposição preferencialmente dimensiona com resolução de tela. Onde uma interface de usuário completa for usada pelo aplicativo de sistema simultâneo, é preferível usar uma resolução independente da resolução de aplicativo. Um lacrador pode ser usado para ajustar esta resolução, de modo que a necessidade de alterar a frequência e causar uma TV ressincronização seja eliminada.
[00075] Após o console multimídia 100 inicializar e os recursos de sistema serem reservados, os aplicativos de sistema simultâneos executam para proporcionar funcionalidades de sistema. As funcionalidades de sistema são encapsuladas em um conjunto de aplicativos de sistema que executam dentro dos recursos de sistema reservados descritos acima. O kernel de sistema de operação identifica cadeias que são cadeias de aplicativo de sistema versus cadeias de aplicativo de jogos. Os aplicativos de sistema são preferencialmente programados para funcionarem na CPU 101 em tempos e intervalos predeterminados a fim de proporcionar uma exibição de recurso de sistema coerente para o aplicativo. A programação serve para minimizara interrupção de cache para o aplicativo de jogos que executam no console.
[00076] Quando um aplicativo de sistema simultâneo requer áudio, o processamento de áudio é programado de maneira assíncrona no aplicativo de jogos devido à sensibilidade ao tempo. Um gerenciador de aplicativo de console multimídia (descrito abaixo) controla o nível de áudio de aplicativo de jogos (por exemplo, mudo, atenuado) quando os
Petição 870190075890, de 07/08/2019, pág. 32/79
30/69 aplicativos de sistema estiverem ativos.
[00077] Os dispositivos de entrada (por exemplo, controladores 142(1) e 142(2)) são compartilhados pelos aplicativos de jogos e aplicativos de sistema. Os dispositivos de entrada não são recursos reservados, porém, devem ser comutados entre os aplicativos de sistema e o aplicativo de jogos, de modo que cada um tenha um foco do dispositivo. O gerenciador de aplicativo controla preferencialmente a comutação do fluxo de entrada, sem o conhecimento do aplicativo de jogos e um driver mantém as informações de estado que se referem às comutações de foco. As câmeras 26, 28 e o dispositivo de captura 20 podem definir os dispositivos de entrada adicionais para o console 100.
[00078] A Figura 4 ilustra outra modalidade exemplificativa de um ambiente computacional 220 que pode ser o ambiente computacional 12 mostrado nas Figuras 1A-2 usado para interpretar um ou mais gestos em um sistema de reconhecimento, análise e rastreamento alvo. O ambiente de sistema de computação 220 é apenas um exemplo de um ambiente computacional adequado e não tem intenção de deduzir nenhuma limitação ao escopo de uso ou funcionalidade do assunto em questão presentemente descrito. Nem o ambiente computacional 220 deve ser interpretado tendo qualquer dependência ou requisito que se refere a qualquer um ou combinação de componentes ilustrados no ambiente de operação exemplificativo 220. Em algumas modalidades, os diversos elementos de computação mostrados podem incluir o conjunto de circuitos configurado para evidenciar os aspectos específicos da presente descrição. Por exemplo, o termo conjunto de circuitos usado na descrição pode incluir componentes de hardware especializados configurados para realizar funções através de firmware ou comutadores. Em outras modalidades exemplificativas, o termo conjunto de circuitos pode incluir uma unidade de processamento de propósito geral, memória,
Petição 870190075890, de 07/08/2019, pág. 33/79
31/69 etc., configurado por instruções de software que incorporam lógica operável para realizar funções. Nas modalidades exemplificativas onde o conjunto de circuitos inclui uma combinação de hardware e software, um implementador pode gravar código-fonte que incorpora lógica e o código-fonte pode ser compilado em código legível por máquina que pode ser processado pela unidade de processamento de propósito geral. Uma vez que alguém versado na técnica pode avaliar que o estado da técnica se desenvolveu até um ponto em que existe pouca diferença entre hardware, software, ou uma combinação de hardware/software, a seleção de hardware versus software para efetuar funções específicas é uma escolha de projeto deixada para um implementador. Mais especificamente, alguém versado na técnica pode avaliar que um processo de software pode ser transformado em uma estrutura de hardware equivalente, e uma estrutura de hardware pode ser transformada em um processo de software equivalente. Deste modo, a seleção de uma implementação de hardware versus uma implementação de software é uma escolha de projeto deixada para o implementador.
[00079] Na Figura 4, o ambiente computacional 220 compreende um computador 241, que inclui tipicamente uma variedade de meios legíveis por computador. Os meios legíveis por computador podem ser qualquer meio disponível que pode ser acessado pelo computador 241 e inclui tanto meio volátil como meio não volátil, meio removível como meio não removível. A memória de sistema 222 inclui meio de armazenamento por computador sob a forma de memória volátil e/ou não volátil, tal como, memória somente leitura (ROM) 223 e memória de acesso aleatório (RAM) 260. Um sistema de entrada/saída básico 224 (BIOS), que contém as rotinas básicas que ajudam a transferir informações entre os elementos no computador 241, tal como, durante a inicialização, é tipicamente armazenado em ROM 223. A RAM 260 contém tipica
Petição 870190075890, de 07/08/2019, pág. 34/79
32/69 mente módulos de dados e/ou programa que são imediatamente acessíveis e/ou presentemente operados pela unidade de processamento 259. Por meio de exemplo, e sem limitação, a Figura 4 ilustra o sistema de operação 225, os programas de aplicativo 226, outros módulos de programa 227 e dados de programa 228.
[00080] O computador 241 também pode incluir outros meios de armazenamento por computador removíveis/não removíveis, voláteis/não voláteis. Apenas por meio de exemplo, a Figura 4 ilustra uma unidade de disco rígido 238 que lê e grava no meio magnético não removível, não volátil, uma unidade de disco magnético 239 que lê ou grava em um disco magnético removível, não volátil 254, e uma unidade de disco óptico 240 que lê ou grava em um disco óptico removível, não volátil 253, tal como, um CD ROM ou outro meio óptico. Outros meios de armazenamento por computador removíveis/não removíveis, voláteis/não voláteis que podem ser usados no ambiente de operação exemplificativo incluem, porém, não se limitam a, cassetes de fita magnética, cartões de memória flash, discos versáteis digitais, fita de vídeo digital, RAM em estado sólido, ROM em estado sólido, e similares. A unidade de disco rígido 238 é tipicamente conectada ao barramento de sistema 221 através de uma interface de memória não removível, tal como, a interface 234, e a unidade de disco magnético 239 e a unidade de disco óptico 240 são tipicamente conectadas ao barramento de sistema 221 através de uma interface de memória removível, tal como, a interface 235.
[00081] As unidades e seus meios de armazenamento por computador associados discutidos acima e ilustrados na Figura 4, proporcionam armazenamento de instruções legíveis por computador, estruturas de dados, módulos de programa e outros dados para o computador 241. Na Figura 4, por exemplo, a unidade de disco rígido 238 é ilustrada como o sistema de operação de armazenamento 258, programas de aplicativo 257, outros módulos de programa 256 e dados de programa
Petição 870190075890, de 07/08/2019, pág. 35/79
33/69
255. Note que estes componentes podem ser iguais ou diferentes do sistema de operação 225, programas de aplicativo 226, outros módulos de programa 227, e dados de programa 228. Ao sistema de operação 258, programas de aplicativo 257, outros módulos de programa 256 e dados de programa 255 são fornecidos números diferentes para ilustrar que, no mínimo, eles são cópias diferentes. Um usuário pode lançar comandos e informações no computador 241 através de dispositivos de entrada, tais como, um teclado 251 e dispositivo apontador 252, comumente referido como um mouse, trackball ou teclado sensível ao toque. Outros dispositivos de entrada (não mostrados) podem incluir um microfone, joystick, controle de jogo (game pad), antena parabólica, scanner, ou similar. Estes e outros dispositivos de entrada muitas vezes são conectados à unidade de processamento 259 através de uma interface de entrada de usuário 236 que é acoplada ao barramento de sistema, porém, podem ser conectados por outras estruturas de interface e barramento, tal como, uma porta paralela, porta de jogos ou um barramento serial universal (USB). As câmeras 26, 28 e o dispositivo de captura 20 podem definir os dispositivos de entrada adicionais para o console 100. Um monitor 242 ou outro tipo de dispositivo de exibição também é conectado ao barramento de sistema 221 através de uma interface, tal como, uma interface de vídeo 232. Além do monitor, os computadores também podem incluir outros dispositivos de saída periféricos, tais como, os alto-falantes 244 e a impressora 243, que podem ser conectados através de uma interface periférica de saída 233.
[00082] O computador 241 pode operar em um ambiente em rede que usa conexões lógicas em um ou mais computadores remotos, tal como, um computador remoto 246. O computador remoto 246 pode ser um computador pessoal, um servidor, um roteador, um PC de rede, um dispositivo ponto a ponto ou outro nó de rede comum e inclui, tipicamente, muitos ou todos os elementos descritos acima em relação ao
Petição 870190075890, de 07/08/2019, pág. 36/79
34/69 computador 241, embora apenas um dispositivo de armazenamento de memória 247 tenha sido ilustrado na Figura 4. As conexões lógicas mostradas na Figura 2 incluem uma rede de área local (LAN) 245 e uma rede de longa distância (WAN) 249, mas, também, pode incluir outras redes. Tais ambientes em rede são comuns em escritórios, redes de computador que abrangem toda a empresa, intranets e a Internet.
[00083] Quando usando em um ambiente em rede LAN, o computador 241 é conectado à LAN 245 através de uma interface ou adaptador de rede 237. Quando usado em um ambiente em rede WAN, o computador 241 inclui tipicamente um modem 250 ou outros meios para estabelecer comunicações através da WAN 249, tal como, a Internet. O modem 250, que pode ser interno ou externo, pode ser conectado ao barramento de sistema 221 através da interface de entrada de usuário 236, ou outro mecanismo apropriado. Em um ambiente em rede, os módulos de programa mostrados em relação ao computador 241, ou porções destes, podem ser armazenados no dispositivo de armazenamento de memória remoto. Por meio de exemplo, e sem limitação, a Figura 4 ilustra programas de aplicativo remotos 248 que se situam no dispositivo de memória 247. Será avaliado que as conexões de rede mostradas são exemplificativas e outros meios para estabelecer um vínculo de comunicações entre os computadores podem ser usados.
[00084] O meio de armazenamento legível por computador pode compreender instruções legíveis por computador para modificar uma representação visual. As instruções podem compreender instruções para renderizar a representação visual, receber dados de uma cena, em que os dados incluem dados representativos de um gesto de identidade de temperamento do usuário in a espaço físico, e modificar a representação visual com base no gesto de identidade de temperamento do usuário, em que o gesto de identidade de temperamento é um gesto que
Petição 870190075890, de 07/08/2019, pág. 37/79
35/69 mapeia um controle para aplicar atributos indicativos de um temperamento à representação visual do usuário.
[00085] A Figura 5 A mostra um mapeamento de esqueleto exemplificative de um usuário que pode ser gerado a partir de dados de imagem capturados pelo dispositivo de captura 20. Nesta modalidade, uma variedade de juntas e ossos é identificada: cada mão 502, cada antebraço 504, cada cotovelo 506, cada bíceps 508, cada ombro 510, cada quadril 512, cada coxa 514, cada joelho 516, cada perna dianteira 518, cada pé 520, a cabeça 522, o torso 524, a parte superior 526 e inferior 528 da coluna, e a cintura 530. Onde mais pontos forem rastreados, atributos adicionais podem ser identificados, tais como, os ossos e juntas dos dedos ou dedos dos pés, ou atributos individuais da face, tais como, o nariz e os olhos.
[00086] Ao mover seu corpo, um usuário pode criar gestos. Um gesto compreende um movimento ou pose através de um usuário que pode ser capturado como dados de imagem e analisados para sentido. Um gesto pode ser dinâmico, que compreende um movimento, tal como, imitar o arremesso de uma bola. Um gesto pode ser uma pose estática, tal como, manter os antebraços 504 de alguém cruzados na frente de seu torso 524. Um gesto também pode incorporar suportes, tal como, ao balançar uma espada falsa. Um gesto pode compreender mais de uma parte de corpo, tal como, bater palmas 502, ou um movimento sutil, tal como, franzir os lábios.
[00087] Um gesto do usuário pode ser usado para entrada em um contexto de computação geral. Por exemplo, diversos movimentos das mãos 502 ou outras partes de corpo podem corresponder às tarefas de sistema comuns, tais como, navegar para cima e para baixo em uma lista hierárquica, abrir um arquivo, fechar um arquivo, e salvar um arquivo. Por exemplo, um usuário pode manter sua mão com os dedos
Petição 870190075890, de 07/08/2019, pág. 38/79
36/69 apontando para cima e a palma fazendo face com o dispositivo de captura 20. Ele pode, então, fechar seus dedos em direção à palma para efetuar um sinal de aviso, e este pode ser um gesto que indica que a janela focalizada em um ambiente computacional de interface de usuário baseado em janela deve ser fechada. Os gestos também podem ser usados em um contexto específico de vídeo game, dependendo do jogo. Por exemplo, com um jogo de direção, diversos movimentos das mãos 502 e pés 520 podem corresponder à condução de um veículo em uma direção, mudança de engrenagens, aceleração e frenagem. Deste modo, um gesto pode indicar uma ampla variedade de movimentos que mapeiam em uma representação de usuário exibida, e em uma ampla variedade de aplicações, tais vídeo games, editores de texto, processamento de texto, gerenciamento de dados, etc.
[00088] Um usuário pode gerar um gesto que corresponde a andar ou correr, ao andar ou correr no lugar no espaço físico. Por exemplo, o usuário pode levantar e descer alternadamente cada perna 512-520 para imitar a caminhada sem se mover. O sistema pode analisar este gesto ao analisar cada quadril 512 e cada coxa 514. Um passo pode ser reconhecido quando um ângulo de quadril-coxa (conforme medido em relação a uma linha vertical, em que uma perna em pé tem um ângulo de quadril-coxa de 0o, e uma perna horizontalmente estendida para frente tem um ângulo de quadril-coxa de 90°) excede um determinado limite em relação à outra coxa. Uma caminhada ou corrida pode ser reconhecida após algum número de passos consecutivos através de pernas alternadas. O tempo entre os dois passos mais recentes pode ser considerado como um período. Após algum número de períodos onde este ângulo limite não é encontrado, o sistema pode determinar que o gesto de caminhada ou corrida parou.
[00089] Dado um gesto de caminhada ou corrida, um aplicativo pode ajustar valores para parâmetros associados a este gesto. Estes
Petição 870190075890, de 07/08/2019, pág. 39/79
37/69 parâmetros podem incluir o ângulo limite acima, o número de passos requerido para iniciar um gesto de caminhada ou corrida, inúmeros períodos onde nenhum passo ocorre para finalizar o gesto e um período limite que determina se o gesto é uma caminhada ou uma corrida. Um período rápido pode corresponder a uma corrida, à medida que o usuário irá mover suas pernas rapidamente, e um período mais lento pode corresponder a uma caminhada.
[00090] Um gesto pode ser associado a princípio a um conjunto de parâmetros padrão em que o aplicativo pode passar por cima de seus próprios parâmetros. Neste cenário, um aplicativo não é forçado a proporcionar parâmetros, porém, em vez disso, pode usar um conjunto de parâmetros padrão que permite que o gesto seja reconhecido na ausência de parâmetros de aplicativos definidos.
As informações relacionadas ao gesto podem ser armazenadas para propósitos de animação predefinida.
[00091] Existe uma variedade de saídas que podem ser associadas ao gesto. Pode existir uma linha de base sim ou não se um gesto estiver ocorrendo. Também pode existir um nível de confiança, que corresponde à probabilidade de que o movimento rastreado do usuário corresponde ao gesto. Esta pode ser uma escala linear que varia ao longo de números de ponto de flutuação entre 0 e 1, inclusive. Onde um aplicativo que recebe estas informações de gesto não pode aceitar falsospositivos como entrada, este pode usar apenas aqueles gestos reconhecidos que têm um alto nível de confiança, tal como, pelo menos 95. Onde um aplicativo deve reconhecer cada instância do gesto, mesmo ao custo de falsos-positivos, este pode usar gestos que têm pelo menos um nível de confiança muito mais baixo, tal como, aquele meramente maior que 2. O gesto pode ter uma saída para o tempo entre os dois passos mais recentes, e onde apenas um primeiro passo foi registrado, este pode ser ajustado em um valor reservado, tal como, -1 (uma vez
Petição 870190075890, de 07/08/2019, pág. 40/79
38/69 que o tempo entre qualquer um dos dois passos deve ser positivo). O gesto também pode ter uma saída para o ângulo de coxa mais alto alcançado durante o passo mais recente.
[00092] Outro gesto exemplificativo é um salto de elevação de calcanhar. Neste, um usuário pode criar um gesto ao elevar seus calcanhares fora do solo, porém, mantendo seus dedos plantados.
[00093] De maneira alternativa, o usuário pode saltar no ar onde seus pés 520 saem totalmente do solo. O sistema pode analisar o esqueleto para este gesto ao analisar a relação de ângulo dos ombros 510, quadris 512 e joelhos 516 para ver se eles estão em uma posição de alinhamento igual à posição ereta. Então, estes pontos de coluna superior 526 e inferior 528 podem ser monitorados para qualquer aceleração ascendente. Uma combinação suficiente de aceleração pode acionar um gesto de salto. Uma combinação suficiente de aceleração com um gesto particular pode satisfazer os parâmetros de um ponto de transição.
[00094] Dado este gesto de salto de elevação de calcanhar, um aplicativo pode ajustar valores para os parâmetros associados a este gesto. Os parâmetros podem incluir o limite de aceleração acima, que determine quão rápido alguma combinação dos ombros 510, quadris 512 e joelhos 516 do usuário deve se mover para cima para acionar o gesto, assim como, um ângulo máximo de alinhamento entre os ombros 510, quadris 512 e joelhos 516 em que um salto ainda pode ser acionado. As saídas podem compreender um nível de confiança, assim como, o ângulo de corpo do usuário no momento do salto.
[00095] Ajustar os parâmetros para um gesto baseado nas particularidades do aplicativo que irá receber o gesto é importante na identificação dos gestos de maneira precisa. A identificação de maneira adequada dos gestos e da intenção de um usuário ajuda muito na criação de uma experiência de usuário positiva.
Petição 870190075890, de 07/08/2019, pág. 41/79
39/69 [00096] Um aplicativo pode ajustar valores para os parâmetros associados a diversos pontos de transição para identificar os pontos nos quais usar as animações predefinidas. Os pontos de transição podem ser definidos por diversos parâmetros, tal como, a identificação de um gesto particular, uma velocidade, um ângulo de um alvo ou objeto, ou uma combinação destes. Se um ponto de transição for definido pelo menos em parte pela identificação de um gesto particular, então, a identificação de maneira adequada dos gestos ajuda a aumentar o nível de confiança de que os parâmetros de um ponto de transição foram atendidos.
[00097] Outro parâmetro para um gesto pode ser uma distância movida. Onde um gesto do usuário controla as ações de uma representação visual em um ambiente virtual, este avatar pode ser o comprimento do braço a partir de uma bola. Se o usuário deseja interagir com a bola e agarrá-la, isto pode requerer que o usuário estenda seu braço 502510 até o comprimento total enquanto faz o gesto de agarramento. Nesta situação, um gesto de agarramento similar onde o usuário apenas estende parcialmente seu braço 502-510 pode não obter o resultado de interagir com a bola. Igualmente, um parâmetro de um ponto de transição pode ser a identificação do gesto de agarramento, onde se o usuário estender apenas parcialmente seu braço 502-510, deste modo, não atinge o resultado de interação com a bola, o gesto do usuário também não irá atender os parâmetros do ponto de transição.
[00098] Um gesto ou uma porção deste pode ter como um parâmetro um volume de espaço no qual este deve ocorrer. Este volume de espaço pode ser tipicamente expresso em relação ao corpo onde um gesto compreende o movimento de corpo. Por exemplo, um gesto de arremesso de futebol americano para um usuário destro pode ser reconhecido apenas no volume de espaço não mais baixo que o ombro direito 510a, e no mesmo lado da cabeça 522 que o braço de arremesso 502a
Petição 870190075890, de 07/08/2019, pág. 42/79
40/69
310a. Pode não ser necessário definir todos os limites de um volume, tal como, com este gesto de arremesso, onde um limite externo longe do corpo é deixado indefinido, e o volume se estende indefinidamente para fora, ou até a borda da cena que está sendo monitorada.
[00099] A Figura 5B proporciona detalhes adicionais de uma modalidade exemplificativa do mecanismo de reconhecimento de gesto 192 da Figura 2. Conforme mostrado, o mecanismo de reconhecimento de gesto 190 pode compreender pelo menos um filtro 519 para determinar um gesto ou gestos. Um filtro 519 compreende informações que definem um gesto 526 (daqui por diante referido como um gesto), e pode compreender pelo menos um parâmetro 528, ou metadados, para este gesto 526. Por exemplo, um arremesso, que compreende o movimento de uma das mãos a partir da parte de trás do corpo além da parte dianteira do corpo, pode ser implementado como um gesto 526 que compreende informações que representam o movimento de uma das mãos do usuário a partir da parte de trás do corpo além da parte dianteira do corpo, à medida que este movimento pode ser capturado pela câmera de profundidade. Os parâmetros 528 podem, então, ser ajustados para este gesto 526. Onde o gesto 526 for um arremesso, um parâmetro 528 pode ser uma velocidade limite que a mão precisa alcançar, uma distância que a mão deve se deslocar (absoluta ou relativa ao tamanho do usuário como um todo), e uma classificação de confiança através do mecanismo de reconhecimento 192 que o gesto 526 ocorreu. Estes parâmetros 528 para o gesto 526 podem variar entre os aplicativos, entre os contextos de um único aplicativo ou em um contexto de um aplicativo ao longo do tempo.
[000100] Os filtros podem ser modulares ou intercambiáveis. Em uma modalidade, um filtro tem inúmeras entradas, cada uma destas entradas tem um tipo, e inúmeras saídas, cada uma destas saídas tem um tipo. Nesta situação, um primeiro filtro pode ser substituído por um segundo
Petição 870190075890, de 07/08/2019, pág. 43/79
41/69 filtro que tem o mesmo número e tipos de entradas e saídas que o primeiro filtro sem alterar nenhum outro aspecto da arquitetura de mecanismo de reconhecimento 190. Por exemplo, pode existir um primeiro filtro para o acionamento que adota como entrada, os dados de esqueleto e saídas, uma confiança de que o gesto 526 associado ao filtro está ocorrendo e um ângulo de direção. Onde alguém desejar substituir este primeiro de acionamento por um segundo filtro de acionamento - talvez porque o segundo filtro de acionamento seja mais eficiente e requeira menos recursos de processamento - algum pode efetuar isto simplesmente substituindo-se o primeiro filtro pelo segundo filtro desde que o segundo filtro tenha aquelas mesmas entradas e saídas - uma entrada de tipo de dados de esqueleto e duas saídas de tipo de confiança e tipo de ângulo.
[000101] Um filtro não precisa ter um parâmetro 528. Por exemplo, um filtro de altura de usuário que retorna a altura do usuário pode não permitir que quaisquer parâmetros possam ser ajustados. Um filtro de altura de usuário alternativo pode ter parâmetros ajustáveis - tal como, se deve-se considerar um calçado, estilo de corte de cabelo, adereços de cabeça e postura do usuário na determinação da altura do usuário. [000102] As entradas em um filtro podem compreender itens, tais como, dados de juntas sobre uma posição de junta do usuário, como ângulos formados pelos ossos que se encontram na junta, dados de cor RGB a partir da cena, e a taxa de alteração de um aspecto do usuário. As saídas a partir de um filtro podem compreender itens, tais como, a confiança de que um determinado gesto está sendo efetuado, a velocidade na qual o movimento de gesto é efetuado e um tempo no qual um movimento de gesto é efetuado.
[000103] Um contexto pode ser contexto cultural, e este pode ser um contexto ambiental. Um contexto cultural se refere à cultura de um usu
Petição 870190075890, de 07/08/2019, pág. 44/79
42/69 ário que usa um sistema. Culturas diferentes podem usar gestos similares para conferir sentidos consideravelmente diferentes. Por exemplo, um usuário americano que deseja falar para outro usuário olhar ou usar seus olhos pode colocar seu dedo indicador em sua cabeça próximo ao lado distai de seu olho. Entretanto, para um usuário italiano, este gesto pode ser interpretado como uma referência à máfia.
[000104] De maneira similar, podem existir diferentes contextos entre diferentes ambientes de um único aplicativo. Adota-se um jogo de atirador de primeiro usuário que envolve operar um veículo a motor. Enquanto o usuário está a pé, apontando com os dedos em direção ao solo e estendendo a mão em frente e longe do corpo pode representar um gesto de soco. Enquanto o usuário se encontra no contexto de direção, este mesmo movimento pode representar um gesto de mudança de engrenagem. Também podem existir um ou mais ambientes de menu, onde o usuário pode salvar este jogo, selecionar entre seu equipamento do personagem ou realizar ações similares que não compreendem jogo direto. Neste ambiente, este mesmo gesto ter um terceiro sentido, tal como, selecionar alho ou avançar até outra tela.
[000105] O mecanismo de reconhecimento de gesto 190 pode ter um mecanismo de reconhecimento de base 517 que proporciona funcionalidade a um filtro de gesto 519. Em uma modalidade, a funcionalidade que o mecanismo de reconhecimento 517 implementa inclui um arquivo de entrada ao longo do tempo que rastreia os gestos reconhecidos e outra entrada, uma implementação do Modelo Oculto de Markov (onde supõe-se que o sistema modelado seja um processo de Markov aquele onde um estado presente encapsula quaisquer informações de estado passado necessárias para determinar um estado futuro, então, nenhuma outra informação de estado passado deve ser mantida para este propósito - com parâmetros desconhecidos, e os parâmetros ocultos são determinados a partir dos dados observáveis), assim como outra
Petição 870190075890, de 07/08/2019, pág. 45/79
43/69 funcionalidade requerida para solucionar instâncias particulares de reconhecimento de gesto.
[000106] Os filtros 519 são carregados e implementados no topo do mecanismo de reconhecimento de base 517 e podem utilizar serviços proporcionados pelo mecanismo 517 para todos os filtros 519. Em uma modalidade, o mecanismo de reconhecimento de base 517 processa os dados recebidos para determinar se este atende os requisitos de qualquer filtro 519. Uma vez que estes serviços proporcionados, tal como, analisar a entrada, são proporcionados uma vez pelo mecanismo de reconhecimento de base 517 em vez de por cada filtro 519, tal serviço precisa apenas ser processado uma vez em um período de tempo oposto a uma vez por filtro 519 para este período, então, o processamento requerido para determinar os gestos é reduzido.
[000107] Um aplicativo pode usar os filtros 519 proporcionados pelo mecanismo de reconhecimento 190 ou este pode proporcionar seu próprio filtro 519, que se conecta ao mecanismo de reconhecimento de base 517. Em uma modalidade, todos os filtros 519 têm uma interface comum para permitir esta característica de conexão. Ademais, todos os filtros 519 podem utilizar os parâmetros 528, então, uma única ferramenta de gesto, conforme descrito abaixo, pode ser usada para depurar e ajustar todo o sistema de filtro 519.
[000108] Estes parâmetros 528 podem ser ajustados para um aplicativo ou um contexto de um aplicativo através de uma ferramenta de gesto 521. Em uma modalidade, a ferramenta de gesto 521 compreende uma pluralidade de controles deslizantes 523, cada controle deslizante 523 corresponde a um parâmetro 528, assim como uma representação pictórica de um corpo 524. À medida que um parâmetro 528 é ajustado com um controle deslizante correspondente 523, o corpo 524 pode demonstrar tanto as ações que podem ser reconhecidas como o gesto com
Petição 870190075890, de 07/08/2019, pág. 46/79
44/69 aqueles parâmetros 528 como as ações que não podem ser reconhecidas como o gesto com aqueles parâmetros 528, identificados como tal. Esta visualização dos parâmetros 528 de gestos proporciona um meio eficaz tanto para depurar como ajustar finamente um gesto.
[000109] A Figura 6 mostra um sistema 600 que pode compreender um dispositivo de captura 608, um dispositivo de computação 610 e um dispositivo de exibição 612. Por exemplo, o dispositivo de captura 608, o dispositivo de computação 610 e o dispositivo de exibição 612 podem compreender cada um, qualquer dispositivo adequado que realize a funcionalidade desejada, tais como, os dispositivos descritos em relação às Figuras 1-5B. Contempla-se que um único dispositivo pode realizar todas as funções no sistema 600, ou qualquer combinação de dispositivos adequada pode realizar as funções desejadas. Por exemplo, o dispositivo de computação 610 pode proporcionar a funcionalidade descrita em relação ao ambiente computacional 12 mostrado na Figura 2 ou ao computador na Figura 3. Conforme mostrado na Figura 2, o ambiente computacional 12 pode incluir o dispositivo de exibição e um processador. O dispositivo de computação 610 também pode compreender seu próprio componente de câmera ou pode ser acoplado a um dispositivo que tem um componente de câmera, tal como, o dispositivo de captura 608.
[000110] Neste exemplo, uma câmera de profundidade 608 captura uma cena em um espaço físico 601 em que um usuário 602 está presente. A câmera de profundidade 608 processa as informações de profundidade e/ou proporciona as informações de profundidade para um computador, tal como, o computador 610. As informações de profundidade podem ser interpretadas para exibição de uma representação visual do usuário 602. Por exemplo, a câmera de profundidade 608 ou, conforme mostrado, um dispositivo de computação 610 no qual a mesma é acoplada, pode emitir para uma exibição 612.
Petição 870190075890, de 07/08/2019, pág. 47/79
45/69 [000111] A representação visual de um usuário 602 no espaço físico 601 pode adotar qualquer forma, tal como, uma animação, um personagem, um avatar, ou similar. Por exemplo, a representação visual do alvo, tal como, um usuário 602, pode ser inicialmente uma massa digital de argila que o usuário 602 pode esculpir nos formatos e tamanhos desejados, ou uma representação de personagem, tal como, o macaco 604 mostrado no dispositivo de exibição 612. A representação visual pode ser uma combinação dos atributos do usuário 602 e um modelo de animação ou estoque. A representação visual pode ser um modelo de estoque dotado do sistema 600 ou aplicativo Por exemplo, o usuário 602 pode selecionar a partir de uma variedade de modelos de estoque que são proporcionados por um aplicativo de jogos. Em um aplicativo de jogo de baseball, por exemplo, as opções para representar visualmente o usuário 602 podem adotar qualquer forma, a partir de uma representação de um jogador de baseball bem conhecido até um pedaço de caramelo ou um elefante para um personagem ou símbolo imaginário, tal como, um cursor ou símbolo de mão. O modelo de estoque pode ser modificado com atributos do usuário que são detectados pelo sistema. A representação visual pode ser específica para um aplicativo, tal como, empacotado com um programa, ou a representação visual pode ser disponível através de aplicativos ou sistema amplo disponível.
[000112] A representação visual exemplificativa mostrada na Figura 6, conforme mostrado no dispositivo de exibição 612, é aquela de um personagem de macaco 603. Embora os quadros adicionais de dados de imagem possam ser capturados e exibidos, o quadro mostrado na Figura 6 é selecionado para propósitos exemplificativos. A taxa em que os quadros de dados de imagem são capturados e exibidos pode determinar o nível de continuidade do movimento exibido da representação visual. Também, nota-se que uma representação visual alternativa ou adicional pode corresponder a outro alvo no espaço físico 601, tal como,
Petição 870190075890, de 07/08/2019, pág. 48/79
46/69 outro usuário ou um objeto não humano, ou a representação visual pode ser um objeto parcial ou totalmente virtual.
[000113] O sistema 600 pode capturar informações sobre o espaço físico 601, tais como, informações de profundidade, informações de imagem, dados RGB, etc. De acordo com uma modalidade, os dados de imagem podem incluir uma imagem de profundidade ou uma imagem a partir de uma câmera de profundidade 608 e/ou câmera RGB, ou uma imagem em qualquer outro detector. Por exemplo, a câmera 608 pode processar os dados de imagem e usar estes para determinar o formato, cores e tamanho de um alvo. Cada alvo ou objeto que corresponde ao padrão humano pode ser varrido para gerar um modelo, tal como, um modelo de esqueleto, um modelo de fluxo, um modelo humano de malha, ou similar associado a este. Por exemplo, conforme descrito acima, as informações de profundidade podem ser usadas para gerar um modelo de esqueleto do usuário, tal como aquele mostrado na Figura 5A, onde o sistema identifica as partes de corpo do usuário, tais como, a cabeça e membros. Usando, por exemplo, os valores de profundidade em uma pluralidade de pixels observados que são associados a um alvo humano e a extensão de um ou mais aspectos do alvo humano, tal como, a altura, a largura da cabeça ou a largura dos ombros, ou similar, o tamanho do alvo humano pode ser determinado.
[000114] O sistema 600 pode rastrear os movimentos dos membros do usuário ao analisar os dados capturados e converter estes no modelo de esqueleto. O sistema 600, então, pode rastrear o modelo de esqueleto e mapear o movimento de cada parte de corpo em uma respectiva porção da representação visual. Por exemplo, se o usuário 602 agita seu braço, o sistema pode capturar este movimento e aplicá-lo ao braço do macaco virtual 603, de modo que o macaco virtual também agite seu braço. Ademais, o sistema 600 pode identificar um gesto a partir do movimento do usuário ao avaliar a posição do usuário em um único quadro
Petição 870190075890, de 07/08/2019, pág. 49/79
47/69 de dados de captura ou através de uma série de quadros e aplicar o gesto à representação visual.
[000115] O sistema pode usar os dados capturados, tais como, dados varridos, dados de imagem ou informações de profundidade para detectar as características. As características detectáveis podem incluir quaisquer características relacionadas ao usuário ou ao espaço físico que são detectáveis pelo sistema 600. Por exemplo, as características detectáveis podem incluir características alvo (por exemplo, atributos faciais do usuário, cor de cabelo, análise de voz, etc.), gestos (isto é, gestos realizados pelo usuário e reconhecidos pelo sistema 600), dados de histórico (dados, tais como, dados de tendência de usuário que são detectados pelo sistema e podem ser armazenados), status de aplicativo (por exemplo, falha/sucesso em um aplicativo de jogos), ou qualquer característica detectável pelo sistema que pode ser indicativa de um temperamento do usuário ou pode ser usada para deduzir um temperamento do usuário.
[000116] O sistema pode analisar uma ou mais características detectáveis para deduzir um temperamento do usuário. A dedução pode ser baseada em uma inferência ou suposição ou pode ser baseada em métodos científicos, tais como, os resultados de um estudo de temperamentos e características correlacionadas. Deste modo, a dedução pode ser baseada em uma análise simples das características típicas que indicam um temperamento particular, a identidade de um gesto que indica um temperamento específico, uma comparação dos atributos detectáveis a uma análise em profundidade de psicologia e as características que se correlacionam aos diversos temperamentos, ou similar.
[000117] As características alvo podem incluir informações que podem ser associados ao usuário particular 602, tais como, comportamentos, padrões de fala, expressões faciais, movimentos de esqueleto, palavras ditas, dados de histórico, informações de reconhecimento de voz,
Petição 870190075890, de 07/08/2019, pág. 50/79
48/69 ou similar. As características alvo podem compreender quaisquer atributos do alvo, tais como: tamanho, tipo e cor de olhos; comprimento, tipo e cor de cabelo; cor de pele; roupas e cores de roupas. Por exemplo, as cores podem ser identificadas com base em uma imagem RGB correspondente. Outras características alvo para um alvo humano podem incluir, por exemplo, altura e/ou comprimento de braço e podem ser obtidas com base, por exemplo, em uma varredura de corpo, um modelo de esqueleto, a extensão de um usuário 602 em uma área de pixel ou qualquer outro processo ou dados adequados. O sistema de computação 610 pode usar técnicas de reconhecimento corporal para interpretar os dados de imagem e pode dimensionar e conformar a representação visual do usuário 602 de acordo com o tamanho, formato e profundidade dos apêndices do usuário 602.
[000118] Conforme descrito, o sistema 600 pode identificar dados a partir do espaço físico que inclui uma indicação do temperamento do usuário. Por exemplo, o sistema 600 pode reunir informações relacionadas aos movimentos do usuário, expressões faciais, linguagem corporal, emoções, etc., no espaço físico. O sistema 10 pode usar técnicas de reconhecimento de postura corporal para auxiliar na identidade das emoções ou temperamento do alvo humano 18. Por exemplo, o sistema 600 pode analisar e rastrear um modelo de esqueleto do usuário para determinar como o usuário se move. O sistema 600 pode rastrear o corpo do usuário e os movimentos efetuados pelo corpo do usuário, incluindo gestos que controlam os aspectos do sistema, tais como, aplicativo, sistema de operação, ou similar. O sistema pode identificar a postura de corpo do usuário, expressões faciais, expressões e tom vocal, contemplações direcionadas, etc. As expressões vocais do usuário podem proporcionar uma indicação do temperamento do usuário. Por exemplo, a linguagem usada, o tom de voz, a altura, volume, e similares podem transmitir um sentido do temperamento do usuário. Por exemplo,
Petição 870190075890, de 07/08/2019, pág. 51/79
49/69 um tom rude pode ser interpretado como raiva ou agressão. Outros tons podem ser tenso, modal, respiratório, sussurrante, rangente, calmo, excitado, feliz, ou qualquer outro tom. Deste modo, as características do usuário são bons indicadores do temperamento do usuário.
[000119] O sistema pode aplicar pelo menos uma das características alvo detectadas do usuário, conforme capturadas pelo sistema 600, à representação visual do usuário. Por exemplo, o sistema pode detectar que o usuário está usando óculos e uma camisa vermelha e o sistema aplicar óculos e uma camisa vermelha ao macaco virtual 603 que, neste exemplo, é a representação visual do usuário. O sistema pode identificar que os movimentos faciais do usuário, tal como, o movimento das sobrancelhas do usuário e/ou uma expressão carrancuda ou sorridente. O sistema pode detectar palavras ditas pelo usuário e o tom de voz do usuário, ou a posição de corpo do usuário, etc. Por exemplo, o sistema pode detectar o braço direito de uma pessoa e ter a fidelidade de distinguir o braço superior, braço inferior, dedos, o dedo polegar, juntas nos dedos, etc. O sistema pode ser capaz de identificar uma cor da camisa do usuário que corresponde aos braços superior e inferior do usuário e aplicar a cor apropriadamente à representação visual. O sistema pode ser capaz de identificar um anel em um dedo ou uma tatuagem na mão do usuário, e com base no modelo do usuário gerado pelo sistema, aplicar as características alvo detectadas à representação visual para imitar os atributos do usuário no espaço físico. A representação visual pode parecer com o usuário, se mover como o usuário, ter roupas que se parecem com aquelas do usuário, etc.
[000120] Determinadas características alvo detectadas pelo sistema e usadas para deduzir p temperamento do usuário podem não ser diretamente aplicadas ao usuário, porém, modificadas para propósitos de exibição. As características do usuário podem ser modificadas para corresponderem à forma da representação visual, ao aplicativo, ao status do
Petição 870190075890, de 07/08/2019, pág. 52/79
50/69 aplicativo, etc. Determinadas características podem não mapear diretamente a representação visual do usuário, onde a representação visual é um personagem imaginário. Por exemplo, a representação de personagem do usuário, tal como, o macaco 603 mostrado no dispositivo de exibição 612, pode ser determinadas proporções de corpo, por exemplo, que são similares ao usuário 602, porém, modificada para o personagem particular. À representação de macaco 603 pode ser fornecida uma altura que é similar ao usuário 602, porém, os braços do macaco podem ser proporcionalmente mais longos que os braços do usuário. O movimento dos braços do macaco 604 pode corresponder ao movimento dos braços do usuário, conforme identificado pelo sistema, porém, o sistema pode modificar a animação dos braços do macaco para refletir o modo que os braços de um macaco deve se mover.
[000121] No exemplo mostrado na Figura 6, o usuário está sentado com a cabeça inclinada para o lado, um ombro direito repousando no joelho, e a cabeça sendo sustentada pela mão direita do usuário. As expressões faciais, posição de corpo, palavras ditas ou qualquer outra característica detectável do usuário podem ser aplicadas ao macaco virtual 603, e modificadas se apropriado. Por exemplo, o usuário está franzindo as sobrancelhas no espaço físico. O sistema detecta esta expressão facial e aplica um franzimento ao macaco, de modo que o macaco virtual também franza as sobrancelhas. Ademais, o macaco está sentado em uma posição similar ao usuário, modificada exceto para corresponder a um tipo e tamanho de corpo do macaco nesta posição. De maneira similar, o sistema pode usar as características alvo do usuário para deduzir o temperamento do usuário, porém, então, aplicar os atributos à representação visual do usuário que são indicativos do temperamento, porém, podem ou não mapear diretamente as características do usuário.
Petição 870190075890, de 07/08/2019, pág. 53/79
51/69 [000122] O sistema 600 pode comparar as características alvo detectadas com uma biblioteca de temperamentos possíveis e determinar quais atributos devem ser aplicados à representação visual do usuário. Por exemplo, conforme descrito adicionalmente abaixo em relação às Figuras 7 e 8, o computador 610 pode armazenar tabelas de pesquisa com uma compilação das informações de temperamento. As tabelas de pesquisa podem incluir informações de temperamento gerais ou específicas. As características detectadas podem ser comparadas às tabelas de pesquisa para deduzir o temperamento do usuário. A análise pode incluir uma comparação da posição de corpo detectada, expressões faciais, tom vocal e palavras, gestos, dados de histórico, ou similar.
[000123] A Figura 7 mostra um método exemplificativo de deduzir um temperamento do usuário e selecionar atributos indicativos do temperamento para uma exibição da representação visual que corresponde ao temperamento. Por exemplo, em 702, o sistema recebe dados a partir de um espaço físico que inclui um usuário. Conforme descrito acima, um dispositivo de captura pode capturar dados de uma cena, tal como, a imagem de profundidade da cena e varrer alvos na cena. O dispositivo de captura pode determinar se um ou mais alvos na cena correspondem a um alvo humano, tal como, um usuário. Cada alvo ou objeto que corresponde ao modelo de corpo humano, então, pode ser varrido para gerar um modelo de esqueleto associado a este. O modelo de esqueleto, então, pode ser proporcionado para o ambiente computacional para rastrear o modelo de esqueleto e renderizar uma representação visual associada ao modelo de esqueleto.
[000124] Em 704, o sistema pode renderizar uma representação visual do usuário. A representação visual pode ser baseada no modelo, por exemplo. A representação visual de um alvo no espaço físico 601 pode adotar qualquer forma, tal como, uma animação, um personagem, um avatar, ou similar. A representação visual pode ser inicialmente uma
Petição 870190075890, de 07/08/2019, pág. 54/79
52/69 massa digital de argila que o usuário 602 pode esculpir em formatos e tamanhos desejados, ou uma representação de personagem, tal como, o macaco 604. A representação visual pode ser diretamente modelada com base nos atributos do usuário detectados pelo dispositivo de captura ou pode ser um personagem imaginário que selecionou atributos do usuário. A representação visual pode ser uma combinação dos atributos do usuário 602 e uma animação ou modelo de estoque.
[000125] O sistema pode rastrear o usuário e detectar atributos do usuário que são indicativos do temperamento do usuário em 706. Por exemplo, o sistema pode rastrear expressões faciais e movimentos corporais do usuário para identificar um temperamento e, então, aplicar este temperamento, de modo que o avatar reflita as emoções do usuário. O sistema pode usar quaisquer atributos detectáveis para avaliar o temperamento do usuário para a aplicação à representação visual. O sistema pode analisar os atributos detectados em 708, e deduzir um temperamento do usuário. Por exemplo, um processador no sistema pode armazenar tabelas de pesquisa ou banco de dados com informações de temperamento. Os atributos detectados do usuário podem ser comparados aos atributos no banco de dados ou tabela de pesquisa que são indicativos de diversos temperamentos. Por exemplo, a tabela de pesquisa pode definir os atributos que são indicativos de um temperamento triste. Tais atributos podem ser um franzimento de sobrancelhas, lágrimas, um tom vocal baixo e calmo, e braços dobrados ao longo do peito. Se qualquer um ou todos estes atributos de um usuário no espaço físico forem detectados, o processador pode deduzir que o usuário está exibindo um temperamento triste.
[000126] As tabelas de pesquisa ou banco de dados, por exemplo, podem ser aplicáveis a um aplicativo ou podem ser de sistema amplo. Por exemplo, um aplicativo de jogos pode definir os atributos que indicam os diversos temperamentos aplicáveis ao jogo. Os temperamentos
Petição 870190075890, de 07/08/2019, pág. 55/79
53/69 definidos podem incluir temperamentos gerais e específicos e podem identificar os temperamentos comparando uma ou mais entradas (isto é, atributos detectados) aos atributos que definem cada temperamento. Também, nota-se que as referências a uma tabela de pesquisa ou banco de dados são exemplificativas, e contempla-se que as informações de temperamento relacionadas às técnicas descritas no presente documento podem ser acessadas, armazenadas, empacotadas, proporcionadas, geradas, ou similares, de qualquer maneira adequada.
[000127] De maneira alternativa ou em in combinação, o sistema pode identificar um gesto de solicitação de temperamento a partir dos dados capturados em relação ao usuário em 710. Por exemplo, o usuário pode realizar um gesto que solicita que um gesto particular seja aplicado à representação visual do usuário.
[000128] Em 712, o sistema pode selecionar atributos para aplicar à representação visual do usuário que refletem o temperamento deduzido ou identificado a partir do gesto do usuário. Os atributos aplicáveis a um temperamento particular podem se encontrar em tabelas de pesquisa ou também em um banco de dados. Os atributos selecionados podem ser os atributos do usuário detectados pelo dispositivo de captura e/ou os atributos selecionados podem ser animações que refletem o temperamento. Por exemplo, se o sistema deduz que o usuário exibe atributos indicativos de um temperamento “triste”, as tabelas de pesquisa podem indicar diversas animações que podem refletir tal temperamento. O sistema pode selecionar qualquer um destes atributos e aplicá-los à representação visual do usuário.
[000129] A aplicação dos atributos à representação visual em 714 podem ocorrer em tempo real. Deste modo, os dados capturados em relação ao humor ou emoções do usuário, junto com a análise de reconhecimento de corpo, etc., podem ser realizados em tempo real e aplicados à representação visual do usuário em tempo real. O usuário, portanto,
Petição 870190075890, de 07/08/2019, pág. 56/79
54/69 pode ver uma exibição em tempo real das emoções ou temperamento do usuário.
[000130] O sistema pode continuar a rastrear o usuário e qualquer movimento no espaço físico ao longo do tempo em 716 e aplicar as modificações ou atualizações à representação visual em 718 para refletir as alterações no temperamento. Por exemplo, as atualizações podem ser baseadas nas alterações nos atributos detectados e dados de histórico do usuário. A qualquer momento, o dispositivo de captura pode identificar comportamentos e maneirismos, emoções, padrões de fala, ou similares, de um usuário para determinar os temperamentos do usuário e aplicar estes à representação visual do usuário. As atualizações podem ser aplicadas à representação visual em tempo real. Por exemplo, pode ser desejável que o sistema capture as expressões e imitações do usuário ao longo do tempo para refletir o temperamento do usuário através da representação visual.
[000131] A Figura 8 mostra um exemplo de uma tabela de pesquisa 800 que pode ser usada para deduzir o temperamento do usuário. A tabela de pesquisa de temperamento exemplificativa 800 mostrada na Figura 8 inclui categorias de características detectáveis, tais como, uma expressão facial 802, tom vocal 804, volume vocal 806, falas 808, posição de corpo 810, gesto 812, resultados de aplicativo 814, e dados de histórico 816. Os atributos detectados ou características podem incluir qualquer atributo no espaço físico para o qual o sistema pode capturar informações através do dispositivo de captura, incluindo características alvo detectáveis, status de aplicativo, etc. As categorias na tabela de pesquisa 800 são exemplificativas, à medida que qualquer número e tipo de categorias podem fazer parte da análise de temperamento do usuário. Por exemplo, as categorias podem incluir adicionalmente uma interação detectada com outros usuários ou objetos, uma análise do tipo
Petição 870190075890, de 07/08/2019, pág. 57/79
55/69 de roupa que o usuário está usando, outros itens sobre o corpo do usuário, etc. Contempla-se que qualquer atributo ou característica detectável do usuário que pode ser capturada pelo sistema 600 de alguma maneira que pode ser usada em parte da análise da atitude ou temperamento do usuário pode ser aplicável.
[000132] Três exemplos de características detectadas são mostrados no gráfico 800 para três usuários, onde cada uma das linhas A, B e C representa as características detectadas. A primeira porção da tabela 850 representa as características detectáveis do alvo capturado na cena. A segunda porção da tabela 860 representa outras características detectáveis, tal como a identificação de um gesto que é realizado pelo usuário, o status do aplicativo e os resultados destas, e/ou os dados de histórico específicos ao usuário ou ao aplicativo. A última porção da tabela 870 representa a dedução do sistema do temperamento do usuário como um resultado de uma análise dos atributos detectáveis disponíveis. Conforme estabelecido, as categorias na tabela 800 são apenas para propósitos exemplificativos e podem ser mais ou menos inclusivas das características detectáveis adicionais.
[000133] A linha A representa uma modalidade exemplificativa das características detectadas pelo sistema. Na linha A, o sistema detecta que um primeiro usuário tem uma expressão facial que inclui um franzimento de sobrancelhas, os resultados no aplicativo são uma falha, e os dados de histórico para o primeiro usuário mostram uma tendência do usuário ao franzimento após os resultados falharem. Uma análise do sistema destes atributos detectados pode indicar que o temperamento do primeiro usuário é geralmente negativo. Os atributos detectáveis possivelmente adicionais podem proporcionar um temperamento mais específico, porém, com os dados disponíveis, o sistema deduz o temperamento geralmente negativo mais geral.
Petição 870190075890, de 07/08/2019, pág. 58/79
56/69 [000134] Em relação ao segundo usuário, com as características detectáveis estabelecidas na linha B, o sistema detecta uma expressão facial de franzimento de sobrancelhas, um tom vocal conciso, com volume, calmo, nenhuma palavra, porém, a posição de corpo do usuário compreende uma posição posterior inclinada, a cabeça caída para um lado e sustentada por uma mão. O sistema pode determinar a partir destes atributos que o temperamento do usuário é geralmente negativo ou possivelmente entediado, cansado, zangado, triste, etc. O sistema pode detectar adicionalmente, em relação ao segundo usuário, que é uma vez diferente do usuário jogar no aplicativo de jogos, que a vez diferente do usuário durou um longo tempo, e detectar, a partir de uma análise dos dados de histórico do usuário, as tendências de temperamento deste usuário sob estas circunstâncias. Com estes dados, o sistema pode determinar que o segundo temperamento do usuário não é apenas geralmente negativo, porém, especificamente entediado ou desinteressado. Por exemplo, o sistema pode identificar a tendência do segundo usuário, quando o segundo usuário não for o jogador ativo no aplicativo de jogos, a ter expressões faciais, tones, posições de corpo, etc., que correspondem a um temperamento entediado.
[000135] Contempla-se, por exemplo, que uma expressão facial de franzimento de sobrancelhas pode corresponder a muitos temperamentos. Os temperamentos e atributos exemplificativos que indicam cada um dos temperamentos particulares mostrado na Tabela 800 são apenas exemplificativos. Cada característica detectável pode ser usada para limitar o temperamento a uma atitude ou humor mais específico, ou o sistema pode simplesmente identificar uma atitude geral, tal como, geralmente negativa ou positiva.
[000136] As características detectáveis do terceiro usuário, mostras na linha C, incluem uma expressão facial sorridente, um tom feliz que também é baixo, as palavras Sim e Impressionante, e uma posição
Petição 870190075890, de 07/08/2019, pág. 59/79
57/69 de corpo que inclui braços elevados e salto para cima e para baixo. O movimento de salto para cima e para baixo também pode ser indicativo de um gesto aplicável ao aplicativo que resulta em um resultado de jogo bem sucedido para o terceiro usuário. A comparação destas características detectáveis com os dados de histórico do usuário também pode proporcionar uma indicação do temperamento provável do terceiro usuário com base nestas informações. Neste exemplo, o sistema deduz que o temperamento do usuário, com base nas características detectáveis, é aquele excitado.
[000137] O sistema pode simplesmente mapear as características reais do usuário na representação visual. Na modalidade exemplificativa onde a representação visual mapeia diretamente nos atributos detectados do usuário, o temperamento do usuário é inerentemente demonstrado pela representação visual, à medida que a representação visual reflete os atributos detectados do usuário. Entretanto, a representação visual nem sempre pode ser uma representação direta do usuário e, então, o sistema pode modificar o temperamento para corresponder à forma da representação visual. Mediante uma dedução do temperamento do usuário, o sistema pode determinar animações apropriadas para aplicar à representação visual do usuário que refletem este temperamento.
[000138] Por exemplo, a Figura 6 mostra o aplicativo das expressões faciais, posição de corpo do usuário, etc., para a representação visual 603 do usuário, modificado para representar os atributos correspondentes do personagem de macaco. O macaco está franzindo as sobrancelhas, porém, a boca do macaco pode não ser um mapeamento da boca do usuário, porém, de preferência, o sistema pode aplicar o franzimento detectado à boca do macaco virtual do modo que podería parecer se um macaco franzisse as sobrancelhas. A conversão do temperamento do usuário até a representação visual do usuário pode ocorrer de muitas
Petição 870190075890, de 07/08/2019, pág. 60/79
58/69 formas e pode compreender qualquer número de animações. Por exemplo, se a representação visual de um usuário for uma casa, a cada pode não ser animada com atributos facial. Deste modo, o sistema pode mapear o temperamento na casa ao converter o temperamento do usuário em uma nova forma. Por exemplo, se o sistema detecta que o usuário tem um temperamento triste, detectado com base nas expressões faciais ou posição de corpo do usuário, o sistema pode converter isto na casa ao exibir janelas virtuais da casa virtual arqueadas, e a animação da casa de modo que pareça inchada e, então, deixar o ar sair da porta dianteira, fornecendo uma aparência de que a casa suspirou.
[000139] Um sistema pode deduzir um temperamento que pode ser um humor ou atitude do usuário com base nas características detectáveis. Um temperamento pode incluir qualquer representação de uma resposta emocional do usuário que expresse os sentimentos ou pensamentos do usuário. Um temperamento identificado pode ser geralmente positivo ou negativo, ou este pode ser ambivalente. A atitude identificada pode ser mais específica, tal como, feliz, furioso, frustrado, entediado, triste, etc. A especificidade da atitude pode depender da biblioteca de atitudes/emoções/humores, e o sistema 600 pode identificar uma faixa de atitudes do usuário, de geral à específica. Por exemplo, o sistema pode determinar a partir dos atributos detectáveis da posição de corpo ereta do usuário e o tom vocal otimista que o usuário geralmente tem uma atitude positiva. De maneira alternativa, o sistema pode determinar, mais especificamente, que o usuário está excitado porque a posição de corpo ereta inclui saltar para cima e para baixo, braços elevados e dados de histórico do usuário indicam que estas características detectáveis indicam um temperamento excitado. Os aplicativos diferentes podem ter um banco de dados mais vasto tanto de humores e temperamentos gerais como específicos, e outros aplicativos podem dedu
Petição 870190075890, de 07/08/2019, pág. 61/79
59/69 zir temperamentos gerais, tais como, geralmente positivos ou geralmente negativos.
[000140] O número maior de atributos detectáveis pode aumentar a fidelidade de análise do sistema da atitude do usuário. Alterações em uma postura de corpo do usuário podem ser fortes indicadores de um temperamento do usuário. Uma postura do usuário pode incluir a posição do corpo do usuário, o modo que o usuário se levanta, senta, segura seu peito, e onde o usuário coloca suas pernas e pés. Por exemplo, se um usuário se inclina para trás com sua cabeça caída para um lado, onde a cabeça é sustentada pela mão do usuário, o sistema pode identificar que o temperamento do usuário é entediado ou desinteressado. Ou, por exemplo, se um usuário estiver sentado ereto com a cabeça ereta e os braços dobrados ao longo do peito, com uma expressão de lábios franzidos, o sistema pode identificar o temperamento do usuário como uma discordância, defensivo ou frustrado. Em geral, uma conotação negativa pode ser refletida no avatar do usuário. O sistema pode detectar uma alteração na postura de corpo do usuário como um resultado do enrijecimento dos músculos no pescoço ou ombros do usuário. Algumas vezes uma postura relaxada do usuário é simplesmente uma indicação que um usuário está relaxando ou talvez tem uma má postura. A posição da cabeça de um usuário pode ser uma indicação de um temperamento do usuário. O sistema pode detectar o retesamento da mandíbula ou franzimento detesta do usuário.
[000141] A Figura 9 mostra o sistema 600 mostrado na Figura 6, onde o sistema rastreia os atributos detectáveis do usuário e deduz um temperamento. O temperamento pode ser refletido na representação visual do usuário ao mapear os atributos detectáveis do usuário na representação visual. O temperamento também pode ser refletido por um aplicativo de animações que corresponde a um temperamento particular na representação visual do usuário. A Figura 9 mostra o usuário 602 em
Petição 870190075890, de 07/08/2019, pág. 62/79
60/69 três pontos no tempo no espaço físico 601, onde 901a, 901b, e 901c representam o espaço físico em três pontos distintos no tempo. Em cada ponto no tempo, o usuário 602 pode ter mudado, alterado as expressões faciais, realizado um movimento diferente e/ou movido a posição de corpo. O sistema 600 pode capturar o usuário alvo 602, no espaço físico 601, em cada ponto e capturar os atributos detectáveis do usuário em cada ponto, mostrado em 902a, 902b, e 902c. Dois exemplos da exibição resultante de uma representação visual do usuário 602 são mostrados na exibição exemplificativa 912a e exibição exemplificativa 912b. [000142] Conforme discutido acima, uma representação visual de um usuário pode ser qualquer animação, personagem, avatar, ou similar. As representações visuais exemplificativas mostradas na Figura 9 são um avatar 905 (mostrado no dispositivo de exibição 912a) ou um personagem 907 (mostrado no dispositivo de exibição 912b). O avatar 905, por exemplo, pode ser uma representação próxima do usuário no espaço físico, que mapeia a posição de corpo, cor de cabelo, roupas do usuário, etc. Um personagem 907, por exemplo, pode ser uma representação de personagem, tal como, o macaco mostrado. O personagem 907 também pode ter características do usuário capturadas pelo sistema 600. Por exemplo, as expressões faciais, roupas, etc., podem ser mapeadas na representação de personagem.
[000143] O sistema 600 pode identificar dados a partir do espaço físico que inclui uma indicação do temperamento do usuário. O sistema 600 pode aplicar o temperamento do usuário à representação visual ao aplicar os atributos indicativos do temperamento à representação visual do usuário. Ademais, o sistema 600 pode identificar um gesto a partir do movimento do usuário ao avaliar a posição do usuário em um único quadro de dados de captura ou ao longo de uma série de quadros. O sistema 600 pode usar uma combinação de informações a partir de cada quadro de dados, a partir das alterações nos dados capturados entre os
Petição 870190075890, de 07/08/2019, pág. 63/79
61/69 quadros de dados e ao longo do tempo, os gestos identificados a partir dos dados capturados, e quaisquer outras informações disponíveis, tais como, dados de voz, para identificar um temperamento ou emoção do usuário.
[000144] Em uma modalidade exemplificativa, pode-se fornecer ao avatar 905 características que são determinadas a partir da análise dos dados de imagem. O usuário 602 pode optar por uma representação visual que é mapeada nos atributos do usuário 602, onde as próprias características do usuário 602, físicas ou de outro modo, são representadas pela representação visual. A representação visual do usuário 602, também chamada de um avatar, tal como, avatar 905, pode ser inicializada com base nos atributos do usuário 602, tai como, proporções de corpo, atributos faciais, etc. Por exemplo, o modelo de esqueleto pode ser o modelo de base para a geração de uma representação visual do usuário 602, modelada após as proporções, comprimento, peso de membros do usuário 602, etc. Então, a cor de cabelo, pele, vestuário e outras características detectadas do usuário 602 podem ser mapeadas na representação visual.
[000145] O mapeamento do movimento do usuário pode não ser uma conversão direta do movimento do usuário, à medida que a representação visual pode ser adaptada à modificação. Por exemplo, a representação visual do usuário pode ser um personagem imaginário sem atributos faciais. O sistema pode refletir um temperamento do usuário de outros modos que são aplicáveis à forma da representação visual. Deste modo, os movimentos do usuário podem ser convertidos para mapear a representação visual com alguma animação adicionada para refletir a forma da representação visual. Por exemplo, na Figura 9, a representação visual do usuário mostrada no dispositivo de exibição 912b é aquela de um personagem de macaco 907. Devido ao fato de a representação
Petição 870190075890, de 07/08/2019, pág. 64/79
62/69 visual 907 do usuário 602 não ser uma representação da própria estrutura física do usuário, o movimento e/ou temperamento do usuário 602 pode ser convertido para ser coerente com a forma que a representação visual 907 adota. Neste exemplo, por exemplo, os atributos e/ou temperamentos detectados podem ser convertidos para serem coerentes com os atributos de um macaco 907.
[000146] As características do usuário que também podem ser indicativas do temperamento do usuário podem ser mapeadas na representação visual com base na análise do sistema de características detectáveis que imitam, deste modo, a aparência e/ou movimento do usuário no espaço físico. Neste exemplo, o sistema rastreia as características detectáveis do usuário no espaço físico em três pontos no tempo, 901a, 901b, e 901c. O usuário pode detectar que o usuário na posição 902a está sentado com a cabeça inclinada para um lado e sustentada por uma mão. O usuário 902a pode estar franzindo a sobrancelha e pode estar fazendo sons ou dizendo palavras que são indicativos de um temperamento entediado ou frustrado. Deste modo, o sistema pode analisar as características detectáveis ao longo do tempo, e deduzir o temperamento do usuário.
[000147] Neste exemplo, o sistema deduz um temperamento entediado do usuário. O sistema pode deduzir o temperamento do usuário a partir dos dados capturados a partir do espaço físico no ponto 901a. O sistema pode continuar a rastrear os atributos detectáveis do usuário e o espaço físico em 901b e 901c representa os exemplos do usuário em diferentes pontos no tempo. O sistema pode aplicar atributos indicativos do temperamento deduzido com base em um único quadro de dados capturados, tais como, os dados capturados a partir da cena no espaço físico 901a, ou ao longo do tempo como um resultado de múltiplos quadros de dados capturados, tais como, dados capturados a partir de todas as três cenas 901a, 90b, 901c. O sistema pode aplicar atributos
Petição 870190075890, de 07/08/2019, pág. 65/79
63/69 indicativos do temperamento deduzido com base em um único quadro e/ou ao longo do tempo. A confiança no temperamento deduzido pode aumentar com base em uma análise contínua das características detectáveis do usuário. De maneira alternativa, o sistema pode detectar ou deduzir um temperamento diferente com base nas alterações nas características detectáveis.
[000148] O sistema, em tempo real, pode exibir as características detectadas ao aplicá-las à representação visual do usuário. Deste modo, conforme mostrado na Figura 6, a representação visual 603 mostra inúmeras características detectadas do usuário (por exemplo, expressão facial, posição de corpo, etc.). De maneira similar, o sistema pode usar as características alvo do usuário para deduzir o temperamento do usuário, porém, então, aplicar os atributos à representação visual do usuário que são indicativos do temperamento, porém, que podem ou não mapear diretamente as características do usuário. Por exemplo, o sistema pode deduzir, a partir das características detectadas, que o usuário tem provavelmente um temperamento excitado e feliz. As características detectadas que indicam este temperamento podem ser características, tais como, um movimento de salto para cima e para baixo, grito de maneira excitada, uma atividade bem sucedida em um aplicativo de jogos e um sorriso. O sistema pode comparar estas características em um banco de dados, com as características que indicam diversos temperamentos, por exemplo, para deduzir o temperamento do usuário. O sistema pode aplicar as características do alvo diretamente à representação visual à medida que estas características podem ser bons exemplos de atributos que são indicativos do temperamento. Entretanto, o sistema pode aplicar de maneira alternativa ou de maneira adicional, atributos que são indicativos do temperamento, independente se os atributos aplicados são u m mapeamento direto das características do usuário ou não. Por exemplo, se o sistema deduz um temperamento feliz
Petição 870190075890, de 07/08/2019, pág. 66/79
64/69 e excitado a partir dos atributos detectáveis do usuário, o sistema pode animar a representação visual do usuário para efetuar uma dança na tela ou animar o usuário saltar para cima até o céu e agarrar uma estrela. O sistema pode aplicar outros atributos indicativos do temperamento, tais como, piscar palavras no dispositivo de exibição (por exemplo, Eu estou realmente feliz ou algo engraçado ou bobo).
[000149] Na Figura 9, a animação exemplificativa do avatar 905, que tem inúmeras características detectáveis do usuário, é a do avatar 905 que sustenta a cabeça contra a parede dizendo, Estou entediado. O usuário 602 não está realizando esta ação e pode não estar dizendo estas palavras em qualquer ponto, conforme capturado pelo sistema, porém, o sistema pode aplicar estes atributos ao usuário porque eles são indicativos de um temperamento entediado. De maneira similar, o dispositivo de exibição 912b mostra uma exibição exemplificativa da representação visual, onde o personagem de macaco 907 é mostrado arrastando seus braços e muito lentamente fazendo um som de macaco, Ooh. Ooh. Ah. Ah. Os atributos aplicados ao macaco são indicativos de um temperamento entediado. Os atributos podem ser identificados pelo sistema com base nas tabelas de pesquisa, por exemplo, e podem ser específicos ao personagem, tal como, o macaco, ou os atributos podem ser geralmente aplicáveis a muitos tipos representações visuais.
[000150] A representação 907 de avatar 905 e macaco são duas representações visuais exemplificativas diferentes que podem ser exibidas, e são mostradas nos dispositivos de exibição exemplificativos 912a e 912b. Casa representação visual 905, 907 e aplicativo de atributos indicativos do temperamento do usuário 602 podem ser baseados em um único conjunto de dados capturados, tais como, aqueles capturados em relação ao espaço físico no tempo 901a. De maneira alternativa, ambas as exibições exemplificativas de cada representação visual 905, 907 podem ser um resultado do sistema que monitora o usuário 602 ao
Petição 870190075890, de 07/08/2019, pág. 67/79
65/69 longo do tempo. O usuário pode usar os dados de captura ao longo do tempo para atualizar o temperamento do usuário, adicionar mais atributos à representação visual, aplicar atributos que são indicativos de um temperamento mais específico, ou similar.
[000151] O usuário 602 pode realizar gestos que resultam em um aplicativo de atributos indicativos de um temperamento particular na representação visual do usuário. Um gesto de identidade de temperamento pode ser um gesto que é interpretado como uma solicitação para aplicar atributos indicativos de um temperamento particular à representação visual do usuário. Por exemplo, a detecção do sistema de um temperamento “entediado” do usuário na Figura 9 pode ser um resultado do reconhecimento do sistema de um gesto do usuário no espaço físico que indica um temperamento “entediado”. O gesto pode compreender, por exemplo, a posição de corpo do usuário em 902c, onde os braços são dobrados ao longo do peito. Para diferenciar o movimento de um movimento do usuário simplesmente ao permanecer deste modo, o gesto pode compreender uma retenção dramática dos braços na posição, ou um movimento lento dos braços a ser dobrado ao longo do peito. Um mecanismo de reconhecimento de gesto, tal como, o mecanismo de reconhecimento de gesto 192 descrito em relação à Figura 5B, pode comparar o movimento do usuário com os filtros de gestos que correspondem aos gestos em uma biblioteca de gesto 190. O movimento capturado do usuário 602 pode corresponder a um a gesto de identidade de temperamento 196 na biblioteca de gestos 190, por exemplo. Deste modo, o aplicativo de tais atributos em uma representação visual pode ser um aspecto do sistema e/ou aplicativo de operação que pode ser controlado ou reconhecido a partir dos gestos do usuário.
[000152] Um gesto de identidade de temperamento pode ou não compreender características que são tipicamente associadas a um temperamento particular. Por exemplo, um gesto para um temperamento
Petição 870190075890, de 07/08/2019, pág. 68/79
66/69 “triste” pode ser um movimento de mão, onde o movimento de mão não é uma característica que uma pessoa tipicamente faz quando tem um temperamento “triste”. Entretanto, o movimento de mão pode ser um gesto que o usuário pode realizar para direcionar o sistema para aplicar atributos indicativos de um temperamento “triste” à representação visual. O usuário, portanto, pode controlar o temperamento da representação visual do usuário ao realizar os gestos no espaço físico. Um usuário pode realizar de maneira intencional ou não intencional um gesto que corresponde a um temperamento. Por exemplo, um gesto para as mãos do usuário dobradas ao longo de seu peito pode ser um gesto reconhecido como um temperamento de frustração e o usuário pode simplesmente conduzir o movimento que corresponde ao gesto porque o usuário está se sentindo frustrado.
[000153] O reconhecimento do sistema de um gesto que indica que o usuário está frustrado, junto com uma expressão do usuário, tal como, um franzimento de sobrancelha, pode resultar em uma representação visual que reflete um temperamento frustrado. De maneira alternativa, o usuário pode realizar de maneira intencional um gesto no espaço físico para fazer com que um temperamento particular seja aplicado à representação visual do usuário. Por exemplo, o usuário pode ter apenas ganhado um jogo ou efetuado algo bem sucedido em um aplicativo. Um gesto para temperamento “feliz” pode compreender um salto para cima e para baixo do usuário com o movimento de braços elevados. O usuário pode realizar o gesto de temperamento “feliz” que faz com que o sistema aplique as características alvo e/ou qualquer número de atributos “feliz” à representação visual do usuário. Por exemplo, conforme descrito acima, a representação visual do usuário pode efetuar um salto mortal, ou realizar uma dança, ou qualquer outra atividade que o sistema associe a uma expressão do temperamento de felicidade. Deste modo, embora os gestos no espaço virtual possam atuar como controles
Petição 870190075890, de 07/08/2019, pág. 69/79
67/69 de um aplicativo, tal como, um jogo eletrônico, eles também podem corresponder a uma solicitação através do usuário para o sistema refletir um temperamento particular na representação visual do usuário.
[000154] O sistema 600 pode atualizar o temperamento do usuário na representação visual do usuário ao monitorar as características detectáveis. O sistema 600 pode usar uma combinação de informações a partir de cada quadro de dados, tais como aqueles capturados a partir do usuário nos pontos 901a, 901b, 901c, a partir das alterações nos dados capturados entre os quadros de dados e ao longo do tempo, os gestos identificados a partir dos dados capturados, as características alvo e alterações no tempo das características do alvo, e quaisquer outras informações disponíveis, tais como, expressões faciais, postura corporal, dados de voz, etc., para identificar e atualizar um temperamento à medida que este é refletido pela representação visual do usuário.
[000155] As características alvo associadas a um usuário no espaço físico podem se tornar parte de um perfil. O perfil pode específico a um espaço físico particular ou um usuário, por exemplo. Os dados de avatar, que incluem atributos do usuário, podem se tornar parte do perfil do usuário. Um perfil pode ser acessado mediante a entrada de um usuário em uma cena de captura. Se um perfil corresponder a um usuário com base em uma senha, a seleção através do usuário, tamanho de corpo, reconhecimento de voz, ou similar, então, o perfil pode ser usado na determinação da representação visual do usuário.
[000156] Os dados de histórico para um usuário podem ser monitorados, armazenando informações no perfil do usuário. Por exemplo, o sistema pode detectar atributos específicos ao usuário, tais como, os comportamentos, padrões de fala, emoções, sons do usuário, ou similares. O sistema pode aplicar estes atributos à representação visual do usuário ao aplicar um temperamento à representação visual. Por exemplo,
Petição 870190075890, de 07/08/2019, pág. 70/79
68/69 se o sistema identifica o temperamento do usuário e seleciona um atributo que compreende a fala para refletir o temperamento, a voz da representação visual pode ser padronizada a partir dos padrões de fala do usuário ou ainda pode ser uma gravação da própria voz do usuário. [000157] As informações específicas de também pode incluir tendências em modos de jogo através de um ou mais usuários. Por exemplo, se um usuário tende a se comportar ou reagir de uma determinada maneira, o sistema pode rastrear as tendências do usuário para deduzir de maneira mais precisa o temperamento do usuário. Por exemplo, se o sistema detecta posições de corpo do usuário que são indicativas de temperamentos de “raiva”, e o usuário tende a se comportar de uma maneira similar toda vez que o usuário falha no aplicativo (tal como um jogo), o sistema pode rastrear estas informações. Deste modo, o sistema pode começar a rastrear as tendências do usuário e usar estas informações para estimar de maneira mais precisa o temperamento do usuário.
[000158] Deve-se entender que as configurações e/ou abordagens descritas no presente documento são exemplificativas, e que estas modalidades ou exemplos específicos não devem ser considerados limitativos. As rotinas ou métodos específicos descritos no presente documento podem representar uma ou mais entre inúmeras estratégias de processamento. Como tal, diversas ações ilustradas podem ser realizadas na sequência ilustrada, em outras sequências paralelas, ou similares. Igualmente, uma ordem dos processos descritos acima pode ser alterada.
[000159] Além disso, embora a presente descrição tenha sido descrita em conexão com os aspectos particulares, conforme ilustrados nas diversas Figuras, entende-se que outros aspectos similares podem ser usados ou modificações e adições podem ser efetuadas nos aspectos descritos para realizar a mesma função da presente descrição sem sair
Petição 870190075890, de 07/08/2019, pág. 71/79
69/69 desta. O assunto em questão da presente descrição inclui todas as combinações e sub-combinações novas e não óbvias dos diversos processos, sistemas e configurações, e outros atributos, funções, ações, e/ou propriedades descritas no presente documento, assim como qualquer e todos os equivalentes destes. Deste modo, os métodos e aparelhos das modalidades descritas, ou determinados aspectos ou porções destes, podem adotar a forma de código de programa (isto é, instruções) incorporada no meio tangível, tal como, disquetes, CD-ROMs, discos rígidos, ou qualquer outro meio de armazenamento legível por máquina. Quando o código de programa for carregado e executado por uma máquina, tal como, um computador, a máquina se torna um aparelho configurado para praticar as modalidades descritas.
[000160] Além das implementações específicas explicitamente estabelecidas no presente documento, outros aspectos e implementações serão aparentes para aqueles versados na técnica a partir da consideração do relatório descritivo descrito no presente documento. Portanto, a presente descrição não deve ser limitada a nenhum aspecto, porém, de preferência, construída em amplitude e escopo de acordo com as concretizações em anexo. Por exemplo, os diversos procedimentos descritos no presente documento podem ser implementados em hardware ou software, ou uma combinação de ambos.

Claims (13)

1. Método (700) para aplicar atributos indicativos de um temperamento do usuário a uma representação visual, o método caracterizado pelo fato de que compreende as etapas de:
renderizar (704) a representação visual de um usuário;
receber (702) dados de um espaço físico, em que os dados são representativos do usuário no espaço físico;
analisar (708) pelo menos uma característica detectável para deduzir o temperamento do usuário, em que a pelo menos uma característica detectável compreende um status de aplicativo;
selecionar (712) uma animação para aplicar à representação visual que reflete o temperamento do usuário deduzido; e aplicar (714) a animação indicativa do temperamento do usuário à representação visual.
2. Método (700), de acordo com a reivindicação 1, caracterizado pelo fato de que aplicar (714) atributos indicativos do temperamento do usuário à representação visual é realizado em tempo real em relação ao recebimento dos dados do espaço físico.
3. Método (700), de acordo com a reivindicação 1 ou 2, caracterizado pelo fato de que as pelo menos uma características detectáveis compreende ainda pelo menos uma dentre uma característica de usuário, um atributo físico de usuário, um comportamento de usuário, um padrão de fala de usuário, uma voz de usuário, um gesto ou dados de histórico.
4. Método (700), de acordo com qualquer uma das reivindicações 1 a 3, caracterizado pelo fato de que os dados são representativos de pelo menos uma das características de um usuário no espaço físico.
5. Método (700), de acordo com qualquer uma das reivindi-
Petição 870190075890, de 07/08/2019, pág. 73/79
2/3 cações 1 a 4, caracterizado pelo fato de que ainda compreende aplicar pelo menos uma das características de um usuário à representação visual.
6. Método (700), de acordo com qualquer uma das reivindicações 1 a 5, caracterizado pelo fato de que analisar (708) as características detectáveis para deduzir o temperamento do usuário compreende uma comparação de pelo menos uma das características detectáveis a uma tabela que correlaciona as características a um temperamento particular.
7. Método (700), de acordo com qualquer uma das reivindicações 1 a 6, caracterizado pelo fato de que o temperamento do usuário compreende pelo menos uma atitude geralmente negativa, geralmente positiva, ambivalente, entediada, feliz, triste, frustrada, excitada ou furiosa.
8. Método (700), de acordo com qualquer uma das reivindicações 1 a 7, caracterizado pelo fato de que ainda compreende:
rastrear (706) alterações na pelo menos uma característica detectável para deduzir alterações no temperamento do usuário; e aplicar (718) atualizações aos atributos indicativos do temperamento do usuário para corresponderem às alterações deduzidas no temperamento do usuário.
9. Método (700), de acordo com qualquer uma das reivindicações 1 a 8, caracterizado pelo fato de que ainda compreende selecionar (712) atributos indicativos do temperamento do usuário a partir de uma pluralidade de atributos que corresponde ao temperamento do usuário.
10. Meio legível por computador (222, 223, 224, 253, 254) caracterizado pelo fato de que compreende um método (700) armazenado no mesmo, o qual, quando executado por um processador (195,
Petição 870190075890, de 07/08/2019, pág. 74/79
3/3
259), faz com que o processador (195, 259) execute as etapas do método (700) conforme definido em qualquer uma das reivindicações 1 a
9.
11. Sistema (12,100) para aplicar atributos indicativos de um temperamento do usuário a uma representação visual, o sistema caracterizado pelo fato de que compreende:
um processador (195), em que o processador (195, 259) executa um método (700), em que o método (700) compreende as etapas de:
renderizar (704) a representação visual do usuário;
receber (702) dados de um espaço físico, em que os dados são representativos do usuário no espaço físico;
analisar (708) pelo menos uma característica detectável para deduzir o temperamento do usuário, em que pelo menos uma característica detectável compreende um status de aplicativo;
selecionar (712) uma animação para aplicar à representação visual que reflete o temperamento do usuário deduzido; e aplicar (714) a animação indicativa do temperamento do usuário à representação visual.
12. Sistema (12, 100), de acordo com a reivindicação 11, caracterizado pelo fato de que aplicar atributos indicativos do temperamento do usuário à representação visual é realizada em tempo real em relação ao recebimento dos dados do espaço físico.
13. Sistema (12, 100), de acordo com as reivindicações 11 ou 12, caracterizado pelo fato de que ainda compreende uma memória (112) que armazena uma tabela que proporciona características que se correlacionam a um temperamento particular.
BR112012000391A 2009-07-09 2010-07-06 método, meio legível por computador para executar o método e sistema para aplicar atributos inidcativos de um temperamento do usuário a uma representação visual BR112012000391B1 (pt)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/500,251 US8390680B2 (en) 2009-07-09 2009-07-09 Visual representation expression based on player expression
PCT/US2010/041097 WO2011005784A2 (en) 2009-07-09 2010-07-06 Visual representation expression based on player expression

Publications (2)

Publication Number Publication Date
BR112012000391A2 BR112012000391A2 (pt) 2018-02-06
BR112012000391B1 true BR112012000391B1 (pt) 2019-12-24

Family

ID=43427155

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112012000391A BR112012000391B1 (pt) 2009-07-09 2010-07-06 método, meio legível por computador para executar o método e sistema para aplicar atributos inidcativos de um temperamento do usuário a uma representação visual

Country Status (8)

Country Link
US (2) US8390680B2 (pt)
EP (2) EP2451544B1 (pt)
JP (1) JP5661763B2 (pt)
KR (1) KR101704848B1 (pt)
CN (1) CN102470273B (pt)
BR (1) BR112012000391B1 (pt)
RU (1) RU2560794C2 (pt)
WO (1) WO2011005784A2 (pt)

Families Citing this family (94)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8156054B2 (en) 2008-12-04 2012-04-10 At&T Intellectual Property I, L.P. Systems and methods for managing interactions between an individual and an entity
US10482428B2 (en) * 2009-03-10 2019-11-19 Samsung Electronics Co., Ltd. Systems and methods for presenting metaphors
US9489039B2 (en) 2009-03-27 2016-11-08 At&T Intellectual Property I, L.P. Systems and methods for presenting intermediaries
US8390680B2 (en) 2009-07-09 2013-03-05 Microsoft Corporation Visual representation expression based on player expression
US20120120029A1 (en) * 2009-07-23 2012-05-17 Mccarthy John P Display to determine gestures
CN102024448A (zh) * 2009-09-11 2011-04-20 鸿富锦精密工业(深圳)有限公司 影像调整系统及方法
KR101623007B1 (ko) * 2009-11-11 2016-05-20 엘지전자 주식회사 디스플레이 장치 및 그 제어방법
US11393133B2 (en) * 2010-06-07 2022-07-19 Affectiva, Inc. Emoji manipulation using machine learning
US20120023201A1 (en) * 2010-07-26 2012-01-26 Atlas Advisory Partners, Llc Unified Content Delivery Platform
KR20120024247A (ko) * 2010-09-06 2012-03-14 삼성전자주식회사 사용자의 제스처를 인식하여 이동 장치를 동작하는 방법 및 그 이동 장치
US10726861B2 (en) * 2010-11-15 2020-07-28 Microsoft Technology Licensing, Llc Semi-private communication in open environments
WO2012125596A2 (en) 2011-03-12 2012-09-20 Parshionikar Uday Multipurpose controller for electronic devices, facial expressions management and drowsiness detection
US8620113B2 (en) 2011-04-25 2013-12-31 Microsoft Corporation Laser diode modes
US8760395B2 (en) 2011-05-31 2014-06-24 Microsoft Corporation Gesture recognition techniques
US9013489B2 (en) 2011-06-06 2015-04-21 Microsoft Technology Licensing, Llc Generation of avatar reflecting player appearance
US8948893B2 (en) 2011-06-06 2015-02-03 International Business Machines Corporation Audio media mood visualization method and system
AU2011203028B1 (en) * 2011-06-22 2012-03-08 Microsoft Technology Licensing, Llc Fully automatic dynamic articulated model calibration
US8564684B2 (en) * 2011-08-17 2013-10-22 Digimarc Corporation Emotional illumination, and related arrangements
US9628843B2 (en) * 2011-11-21 2017-04-18 Microsoft Technology Licensing, Llc Methods for controlling electronic devices using gestures
US8635637B2 (en) 2011-12-02 2014-01-21 Microsoft Corporation User interface presenting an animated avatar performing a media reaction
US9100685B2 (en) 2011-12-09 2015-08-04 Microsoft Technology Licensing, Llc Determining audience state or interest using passive sensor data
US9931154B2 (en) 2012-01-11 2018-04-03 Biosense Webster (Israel), Ltd. Touch free operation of ablator workstation by use of depth sensors
US9625993B2 (en) * 2012-01-11 2017-04-18 Biosense Webster (Israel) Ltd. Touch free operation of devices by use of depth sensors
US10702773B2 (en) * 2012-03-30 2020-07-07 Videx, Inc. Systems and methods for providing an interactive avatar
US8898687B2 (en) 2012-04-04 2014-11-25 Microsoft Corporation Controlling a media program based on a media reaction
US9386268B2 (en) 2012-04-09 2016-07-05 Intel Corporation Communication using interactive avatars
CA2775700C (en) 2012-05-04 2013-07-23 Microsoft Corporation Determining a future portion of a currently presented media program
US9092757B2 (en) * 2012-05-09 2015-07-28 Yahoo! Inc. Methods and systems for personalizing user experience based on attitude prediction
EP2871640B1 (en) * 2012-07-09 2021-01-06 LG Electronics, Inc. Speech recognition apparatus and method
US9746990B2 (en) * 2012-09-28 2017-08-29 Intel Corporation Selectively augmenting communications transmitted by a communication device
WO2014092711A1 (en) 2012-12-13 2014-06-19 Empire Technology Development Llc Gaming scheme using general mood information
US20140215360A1 (en) * 2013-01-28 2014-07-31 Quadmanage Ltd. Systems and methods for animated clip generation
US9754154B2 (en) * 2013-02-15 2017-09-05 Microsoft Technology Licensing, Llc Identification using depth-based head-detection data
WO2014128752A1 (ja) 2013-02-19 2014-08-28 株式会社ブリリアントサービス 表示制御装置、表示制御プログラム、および表示制御方法
US9979946B2 (en) 2013-02-19 2018-05-22 Mirama Service Inc I/O device, I/O program, and I/O method
WO2014128748A1 (ja) 2013-02-19 2014-08-28 株式会社ブリリアントサービス キャリブレーション装置、キャリブレーションプログラム、およびキャリブレーション方法
JP6195893B2 (ja) 2013-02-19 2017-09-13 ミラマ サービス インク 形状認識装置、形状認識プログラム、および形状認識方法
US10171800B2 (en) 2013-02-19 2019-01-01 Mirama Service Inc. Input/output device, input/output program, and input/output method that provide visual recognition of object to add a sense of distance
US9430044B2 (en) * 2013-03-15 2016-08-30 Lutron Electronics Co., Inc. Gesture-based load control
JP6244643B2 (ja) * 2013-04-15 2017-12-13 オムロン株式会社 表情推定装置、制御方法、制御プログラム、および記録媒体
US9177410B2 (en) * 2013-08-09 2015-11-03 Ayla Mandel System and method for creating avatars or animated sequences using human body features extracted from a still image
US9355306B2 (en) * 2013-09-27 2016-05-31 Konica Minolta Laboratory U.S.A., Inc. Method and system for recognition of abnormal behavior
US9508197B2 (en) 2013-11-01 2016-11-29 Microsoft Technology Licensing, Llc Generating an avatar from real time image data
US20150123901A1 (en) * 2013-11-04 2015-05-07 Microsoft Corporation Gesture disambiguation using orientation information
US10180716B2 (en) 2013-12-20 2019-01-15 Lenovo (Singapore) Pte Ltd Providing last known browsing location cue using movement-oriented biometric data
US9633252B2 (en) * 2013-12-20 2017-04-25 Lenovo (Singapore) Pte. Ltd. Real-time detection of user intention based on kinematics analysis of movement-oriented biometric data
US10529248B2 (en) * 2014-06-19 2020-01-07 Embraer S.A. Aircraft pilot training system, method and apparatus for theory, practice and evaluation
US9600743B2 (en) 2014-06-27 2017-03-21 International Business Machines Corporation Directing field of vision based on personal interests
US9471837B2 (en) 2014-08-19 2016-10-18 International Business Machines Corporation Real-time analytics to identify visual objects of interest
US9861882B2 (en) * 2014-09-05 2018-01-09 Trigger Global Inc. Augmented reality gaming systems and methods
US9269374B1 (en) 2014-10-27 2016-02-23 Mattersight Corporation Predictive video analytics system and methods
US10110881B2 (en) * 2014-10-30 2018-10-23 Microsoft Technology Licensing, Llc Model fitting from raw time-of-flight images
US9535497B2 (en) 2014-11-20 2017-01-03 Lenovo (Singapore) Pte. Ltd. Presentation of data on an at least partially transparent display based on user focus
CN107077750A (zh) * 2014-12-11 2017-08-18 英特尔公司 化身选择机制
CN107004288B (zh) * 2014-12-23 2022-03-01 英特尔公司 非面部特征的面部动作驱动的动画
US9830728B2 (en) 2014-12-23 2017-11-28 Intel Corporation Augmented facial animation
EP3241187A4 (en) 2014-12-23 2018-11-21 Intel Corporation Sketch selection for rendering 3d model avatar
CN104657828B (zh) * 2015-02-17 2019-05-24 华为技术有限公司 数据化和数据匹配方法和代码推荐方法及相关装置
US20170069124A1 (en) * 2015-04-07 2017-03-09 Intel Corporation Avatar generation and animations
CN104767980B (zh) * 2015-04-30 2018-05-04 深圳市东方拓宇科技有限公司 一种实时情绪演示方法、系统、装置和智能终端
CN108140020A (zh) * 2015-07-30 2018-06-08 英特尔公司 情感增强型化身动画化
JP2017054241A (ja) * 2015-09-08 2017-03-16 株式会社東芝 表示制御装置、方法及びプログラム
JP6569452B2 (ja) * 2015-10-08 2019-09-04 富士通株式会社 画像生成システム、画像生成プログラム及び画像生成方法
CN105338369A (zh) * 2015-10-28 2016-02-17 北京七维视觉科技有限公司 一种在视频中实时合成动画的方法和装置
CA3042490A1 (en) 2015-11-06 2017-05-11 Mursion, Inc. Control system for virtual characters
WO2017083422A1 (en) * 2015-11-09 2017-05-18 Momeni Ali Sensor system for collecting gestural data in two-dimensional animation
US11272889B2 (en) * 2015-12-15 2022-03-15 Respiratory Motion, Inc. Evaluation of respiratory volume monitoring (RVM) to detect respiratory compromise in advance of pulse oximetry and eliminate false desaturation alarms
US10475225B2 (en) 2015-12-18 2019-11-12 Intel Corporation Avatar animation system
EP3400706B1 (en) 2016-01-05 2022-04-13 RealD Spark, LLC Gaze correction of multi-view images
US10664741B2 (en) 2016-01-14 2020-05-26 Samsung Electronics Co., Ltd. Selecting a behavior of a virtual agent
GB2548154A (en) * 2016-03-11 2017-09-13 Sony Computer Entertainment Europe Ltd Virtual reality
RU168332U1 (ru) * 2016-06-06 2017-01-30 Виталий Витальевич Аверьянов Устройство для воздействия на виртуальные объекты дополненной реальности
JP6891897B2 (ja) * 2016-10-07 2021-06-18 ソニーグループ株式会社 情報処理装置、情報処理方法、およびプログラム
US10963774B2 (en) * 2017-01-09 2021-03-30 Microsoft Technology Licensing, Llc Systems and methods for artificial intelligence interface generation, evolution, and/or adjustment
KR102037573B1 (ko) * 2017-03-09 2019-10-29 주식회사 파트너스앤코 문진 데이터 및 카메라 데이터에 기반한 진단용 데이터 처리 장치 및 그 시스템
KR102228919B1 (ko) 2017-03-30 2021-03-18 스노우 주식회사 이미지에 동적 효과를 적용하는 방법 및 장치
US10311624B2 (en) 2017-06-23 2019-06-04 Disney Enterprises, Inc. Single shot capture to animated vr avatar
US10719987B1 (en) 2017-06-28 2020-07-21 Kilburn Live, Llc Augmented reality in a virtual reality environment
US10740985B2 (en) 2017-08-08 2020-08-11 Reald Spark, Llc Adjusting a digital representation of a head region
US10916059B2 (en) * 2017-12-06 2021-02-09 Universal City Studios Llc Interactive video game system having an augmented virtual representation
JP7077603B2 (ja) 2017-12-19 2022-05-31 富士通株式会社 判定プログラム、判定方法及び画像生成装置
US11014242B2 (en) * 2018-01-26 2021-05-25 Microsoft Technology Licensing, Llc Puppeteering in augmented reality
CN110096251B (zh) * 2018-01-30 2024-02-27 钉钉控股(开曼)有限公司 交互方法及装置
US11017575B2 (en) * 2018-02-26 2021-05-25 Reald Spark, Llc Method and system for generating data to provide an animated visual representation
US20200019242A1 (en) * 2018-07-12 2020-01-16 Microsoft Technology Licensing, Llc Digital personal expression via wearable device
US10636218B2 (en) 2018-09-24 2020-04-28 Universal City Studios Llc Augmented reality for an amusement ride
US11068065B2 (en) 2018-11-28 2021-07-20 International Business Machines Corporation Non-verbal communication tracking and classification
JP2022051982A (ja) * 2019-02-15 2022-04-04 ソニーグループ株式会社 情報処理装置および情報処理方法
US11247738B2 (en) * 2019-05-24 2022-02-15 Disney Enterprises, Inc. Legged high-dexterity self-balancing capable robot actor
CN110215683A (zh) * 2019-07-11 2019-09-10 龙马智芯(珠海横琴)科技有限公司 一种角色模仿游戏的电子游戏系统
US20230053767A1 (en) * 2020-03-20 2023-02-23 Sony Group Corporation System, game console and method for adjusting a virtual environment
KR102477479B1 (ko) * 2021-12-29 2022-12-14 광주과학기술원 복수의 센서 또는 장치를 이용하여 복수 참가자의 전방향 움직임을 오류 없이 인식 및 분류하여 콘텐츠 기반의 다자 게임을 가능하게 하는 시스템 및 방법
KR102662412B1 (ko) * 2022-03-15 2024-04-30 전주대학교 산학협력단 사용자 감정 정보를 인식하는 비전기반 인공지능 인터페이스 방법 및 장치
WO2024057905A1 (ja) * 2022-09-14 2024-03-21 ソニーグループ株式会社 プログラム、情報処理方法、および情報処理装置

Family Cites Families (233)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7014A (en) * 1850-01-15 Folding bedstead
US4288078A (en) * 1979-11-20 1981-09-08 Lugo Julio I Game apparatus
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
US5239463A (en) 1988-08-04 1993-08-24 Blair Preston E Method and apparatus for player interaction with animated characters and objects
US5239464A (en) 1988-08-04 1993-08-24 Blair Preston E Interactive video system providing repeated switching of multiple tracks of actions sequences
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 (pt) 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
JPH04325180A (ja) * 1991-04-24 1992-11-13 Sanyo Electric Co Ltd 情動感応型ゲ−ム機
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
US6054991A (en) 1991-12-02 2000-04-25 Texas Instruments Incorporated Method of modeling player position and movement in a virtual reality system
EP0590101B1 (en) 1991-12-03 1999-06-23 French Sportech Corporation Interactive video testing and training system
US5875108A (en) 1991-12-23 1999-02-23 Hoffberg; Steven M. Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
JPH07325934A (ja) 1992-07-10 1995-12-12 Walt Disney Co:The 仮想世界に向上したグラフィックスを提供する方法および装置
US5999908A (en) 1992-08-06 1999-12-07 Abelow; Daniel H. Customer-based product design module
US5320538A (en) 1992-09-23 1994-06-14 Hughes Training, Inc. Interactive aircraft training system and method
IT1257294B (it) 1992-11-20 1996-01-12 Dispositivo atto a rilevare la configurazione di un'unita' fisiologicadistale,da utilizzarsi in particolare come interfaccia avanzata per macchine e calcolatori.
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
JP2799126B2 (ja) 1993-03-26 1998-09-17 株式会社ナムコ ビデオゲーム装置及びゲーム用入力装置
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
US5980256A (en) 1993-10-29 1999-11-09 Carmein; David E. E. Virtual reality system with enhanced sensory 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
JPH0844490A (ja) 1994-07-28 1996-02-16 Matsushita Electric Ind Co Ltd インターフェイス装置
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
US6714665B1 (en) 1994-09-02 2004-03-30 Sarnoff Corporation Fully automated iris recognition system utilizing wide and narrow fields of view
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
US5913727A (en) 1995-06-02 1999-06-22 Ahdoot; Ned Interactive movement and contact simulation game
WO1996041304A1 (en) 1995-06-07 1996-12-19 The Trustees Of Columbia University In The City Of New York Apparatus and methods for determining the three-dimensional shape of an object using active illumination and relative blurring in two images due to defocus
IL114278A (en) 1995-06-22 2010-06-16 Microsoft Internat Holdings B Camera and method
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
EP0886790B1 (en) 1995-06-22 2006-03-01 3DV Systems Ltd. Telecentric 3d camera and method
US5702323A (en) 1995-07-26 1997-12-30 Poulton; Craig K. Electronic exercise enhancer
US6308565B1 (en) 1995-11-06 2001-10-30 Impulse Technology Ltd. System and method for tracking and assessing movement skills in multidimensional space
US6098458A (en) 1995-11-06 2000-08-08 Impulse Technology, Ltd. Testing and training system for assessing movement and agility skills without a confining field
US6073489A (en) 1995-11-06 2000-06-13 French; Barry J. Testing and training system for assessing the ability of a player to complete a task
US6430997B1 (en) 1995-11-06 2002-08-13 Trazer Technologies, Inc. System and method for tracking and assessing movement skills in multidimensional space
WO1999044698A2 (en) 1998-03-03 1999-09-10 Arena, Inc. System and method for tracking and assessing movement skills in multidimensional space
US6176782B1 (en) 1997-12-22 2001-01-23 Philips Electronics North America Corp. Motion-based command generation technology
US5933125A (en) 1995-11-27 1999-08-03 Cae Electronics, Ltd. Method and apparatus for reducing instability in the display of a virtual environment
US5774591A (en) * 1995-12-15 1998-06-30 Xerox Corporation Apparatus and method for recognizing facial expressions and facial gestures in a sequence of images
US5641288A (en) 1996-01-11 1997-06-24 Zaenglein, Jr.; William G. Shooting simulating process and training device using a virtual reality display screen
JP2000510013A (ja) 1996-05-08 2000-08-08 リアル ヴィジョン コーポレイション 位置検出を用いたリアルタイムシミュレーション
US6173066B1 (en) 1996-05-21 2001-01-09 Cybernet Systems Corporation Pose determination and tracking by matching 3D objects to a 2D sensor
US5989157A (en) 1996-08-06 1999-11-23 Walton; Charles A. Exercising system with electronic inertial game playing
CN1168057C (zh) 1996-08-14 2004-09-22 挪拉赫梅特·挪利斯拉莫维奇·拉都包夫 追踪并显示使用者在空间的位置与取向的方法,向使用者展示虚拟环境的方法以及实现这些方法的系统
RU2107328C1 (ru) * 1996-08-14 1998-03-20 Нурахмед Нурисламович Латыпов Способ отслеживания и отображения положения и ориентации пользователя в пространстве и система для осуществления способа
JP3064928B2 (ja) 1996-09-20 2000-07-12 日本電気株式会社 被写体抽出方式
EP0849697B1 (en) 1996-12-20 2003-02-12 Hitachi Europe Limited A hand gesture recognition system and method
US6009210A (en) 1997-03-05 1999-12-28 Digital Equipment Corporation Hands-free interface to a virtual reality environment using head tracking
US6100896A (en) 1997-03-24 2000-08-08 Mitsubishi Electric Information Technology Center America, Inc. System for designing graphical multi-participant environments
US5877803A (en) 1997-04-07 1999-03-02 Tritech Mircoelectronics International, Ltd. 3-D image detector
US6215898B1 (en) 1997-04-15 2001-04-10 Interval Research Corporation Data processing system and method
JP3077745B2 (ja) 1997-07-31 2000-08-14 日本電気株式会社 データ処理方法および装置、情報記憶媒体
US6188777B1 (en) 1997-08-01 2001-02-13 Interval Research Corporation Method and apparatus for personnel detection and tracking
US6720949B1 (en) 1997-08-22 2004-04-13 Timothy R. Pryor Man machine interfaces and applications
US6289112B1 (en) 1997-08-22 2001-09-11 International Business Machines Corporation System and method for determining block direction in fingerprint images
AUPO894497A0 (en) 1997-09-02 1997-09-25 Xenotech Research Pty Ltd Image processing method and apparatus
WO1999015863A1 (en) 1997-09-24 1999-04-01 3Dv Systems, Ltd. Acoustical imaging system
EP0905644A3 (en) 1997-09-26 2004-02-25 Matsushita Electric Industrial Co., Ltd. Hand gesture recognizing device
US6141463A (en) 1997-10-10 2000-10-31 Electric Planet Interactive Method and system for estimating jointed-figure configurations
US6384819B1 (en) 1997-10-15 2002-05-07 Electric Planet, Inc. System and method for generating an animatable character
AU1099899A (en) 1997-10-15 1999-05-03 Electric Planet, Inc. Method and apparatus for performing a clean background subtraction
US6072494A (en) 1997-10-15 2000-06-06 Electric Planet, Inc. Method and apparatus for real-time gesture recognition
US6130677A (en) 1997-10-15 2000-10-10 Electric Planet, Inc. Interactive computer vision system
US6101289A (en) 1997-10-15 2000-08-08 Electric Planet, Inc. Method and apparatus for unencumbered capture of an object
US6181343B1 (en) 1997-12-23 2001-01-30 Philips Electronics North America Corp. System and method for permitting three-dimensional navigation through a virtual reality environment using camera-based gesture inputs
US6466213B2 (en) 1998-02-13 2002-10-15 Xerox Corporation Method and apparatus for creating personal autonomous avatars
US6272231B1 (en) 1998-11-06 2001-08-07 Eyematic Interfaces, Inc. Wavelet-based facial motion capture for avatar animation
US6159100A (en) 1998-04-23 2000-12-12 Smith; Michael D. Virtual reality game
US6077201A (en) 1998-06-12 2000-06-20 Cheng; Chau-Yang Exercise bicycle
US7121946B2 (en) 1998-08-10 2006-10-17 Cybernet Systems Corporation Real-time head tracking system for computer games and other applications
US6681031B2 (en) 1998-08-10 2004-01-20 Cybernet Systems Corporation Gesture-controlled interfaces for self-service machines and other applications
US7036094B1 (en) 1998-08-10 2006-04-25 Cybernet Systems Corporation Behavior recognition system
US20010008561A1 (en) 1999-08-10 2001-07-19 Paul George V. Real-time object tracking system
US6950534B2 (en) 1998-08-10 2005-09-27 Cybernet Systems Corporation Gesture-controlled interfaces for self-service machines and other applications
US6801637B2 (en) 1999-08-10 2004-10-05 Cybernet Systems Corporation Optical body tracker
IL126284A (en) 1998-09-17 2002-12-01 Netmor Ltd System and method for three dimensional positioning and tracking
EP0991011B1 (en) 1998-09-28 2007-07-25 Matsushita Electric Industrial Co., Ltd. Method and device for segmenting hand gestures
US6501515B1 (en) 1998-10-13 2002-12-31 Sony Corporation Remote control system
JP2000163178A (ja) 1998-11-26 2000-06-16 Hitachi Ltd 仮想キャラクタとのインタラクション装置、及び仮想キャラクタの映像を生成するプログラムを記憶した記憶媒体
AU1930700A (en) 1998-12-04 2000-06-26 Interval Research Corporation Background estimation and segmentation based on range and color
US6147678A (en) 1998-12-09 2000-11-14 Lucent Technologies Inc. Video hand image-three-dimensional computer interface with multiple degrees of freedom
AU1574899A (en) 1998-12-16 2000-07-03 3Dv Systems Ltd. Self gating photosurface
US6570555B1 (en) 1998-12-30 2003-05-27 Fuji Xerox Co., Ltd. Method and apparatus for embodied conversational characters with multimodal input/output in an interface device
US6363160B1 (en) 1999-01-22 2002-03-26 Intel Corporation Interface using pattern recognition and tracking
US7003134B1 (en) 1999-03-08 2006-02-21 Vulcan Patents Llc Three dimensional object pose estimation which employs dense depth information
US6299308B1 (en) 1999-04-02 2001-10-09 Cybernet Systems Corporation Low-cost non-imaging eye tracker system for computer control
US6614422B1 (en) 1999-11-04 2003-09-02 Canesta, Inc. Method and apparatus for entering data using a virtual input device
US6503195B1 (en) 1999-05-24 2003-01-07 University Of North Carolina At Chapel Hill Methods and systems for real-time structured light depth extraction and endoscope using real-time structured light depth extraction
US6476834B1 (en) 1999-05-28 2002-11-05 International Business Machines Corporation Dynamic creation of selectable items on surfaces
US6873723B1 (en) 1999-06-30 2005-03-29 Intel Corporation Segmenting three-dimensional video images using stereo
US6738066B1 (en) 1999-07-30 2004-05-18 Electric Plant, Inc. System, method and article of manufacture for detecting collisions between video images generated by a camera and an object depicted on a display
US7113918B1 (en) 1999-08-01 2006-09-26 Electric Planet, Inc. Method for video enabled electronic commerce
US7050606B2 (en) 1999-08-10 2006-05-23 Cybernet Systems Corporation Tracking and gesture recognition system particularly suited to vehicular control applications
AU5646299A (en) 1999-09-08 2001-04-10 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
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
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
US20030132950A1 (en) 2001-11-27 2003-07-17 Fahri Surucu Detecting, classifying, and interpreting input events based on stimuli in multiple sensory domains
US6690618B2 (en) 2001-04-03 2004-02-10 Canesta, Inc. Method and apparatus for approximating a source position of a sound-causing event for determining an input used in operating an electronic device
DE19960180B4 (de) 1999-12-14 2006-03-09 Rheinmetall W & M Gmbh Verfahren zur Herstellung eines Sprenggeschosses
JP2001209820A (ja) * 2000-01-25 2001-08-03 Nec Corp 感情表出装置及びプログラムを記録した機械読み取り可能な記録媒体
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
US6633294B1 (en) 2000-03-09 2003-10-14 Seth Rosenthal Method and apparatus for using captured high density motion for animation
EP1152261A1 (en) 2000-04-28 2001-11-07 CSEM Centre Suisse d'Electronique et de Microtechnique SA Device and method for spatially resolved photodetection and demodulation of modulated electromagnetic waves
US6640202B1 (en) 2000-05-25 2003-10-28 International Business Machines Corporation Elastic sensor mesh system for 3-dimensional measurement, mapping and kinematics applications
US6731799B1 (en) 2000-06-01 2004-05-04 University Of Washington Object segmentation with background extraction and moving boundary techniques
US6788809B1 (en) 2000-06-30 2004-09-07 Intel Corporation System and method for gesture recognition in three dimensions using stereo imaging and color vision
US7227526B2 (en) 2000-07-24 2007-06-05 Gesturetek, Inc. Video-based image control system
US20050206610A1 (en) 2000-09-29 2005-09-22 Gary Gerard Cordelli Computer-"reflected" (avatar) mirror
US7058204B2 (en) 2000-10-03 2006-06-06 Gesturetek, Inc. Multiple camera control system
JP3725460B2 (ja) 2000-10-06 2005-12-14 株式会社ソニー・コンピュータエンタテインメント 画像処理装置、画像処理方法、記録媒体、コンピュータプログラム、半導体デバイス
US7039676B1 (en) 2000-10-31 2006-05-02 International Business Machines Corporation Using video image analysis to automatically transmit gestures over a network in a chat or instant messaging session
US6539931B2 (en) 2001-04-16 2003-04-01 Koninklijke Philips Electronics N.V. Ball throwing assistant
JP2002331093A (ja) 2001-05-11 2002-11-19 Heiwa Corp 遊技機
US8035612B2 (en) 2002-05-28 2011-10-11 Intellectual Ventures Holding 67 Llc Self-contained interactive video display system
US7259747B2 (en) 2001-06-05 2007-08-21 Reactrix Systems, Inc. Interactive video display system
WO2003001722A2 (en) 2001-06-22 2003-01-03 Canesta, Inc. Method and system to display a virtual input device
JP3420221B2 (ja) 2001-06-29 2003-06-23 株式会社コナミコンピュータエンタテインメント東京 ゲーム装置及びプログラム
US6937742B2 (en) 2001-09-28 2005-08-30 Bellsouth Intellectual Property Corporation Gesture activated home appliance
WO2003054683A2 (en) 2001-12-07 2003-07-03 Canesta Inc. User interface for electronic devices
JP2003248841A (ja) * 2001-12-20 2003-09-05 Matsushita Electric Ind Co Ltd バーチャルテレビ通話装置
US7340077B2 (en) 2002-02-15 2008-03-04 Canesta, Inc. Gesture recognition system using depth perceptive sensors
AU2003219926A1 (en) 2002-02-26 2003-09-09 Canesta, Inc. Method and apparatus for recognizing objects
US7310431B2 (en) 2002-04-10 2007-12-18 Canesta, Inc. Optical methods for remotely measuring objects
US7607509B2 (en) 2002-04-19 2009-10-27 Iee International Electronics & Engineering S.A. Safety device for a vehicle
US7170492B2 (en) 2002-05-28 2007-01-30 Reactrix Systems, Inc. Interactive video display system
US7348963B2 (en) 2002-05-28 2008-03-25 Reactrix Systems, Inc. Interactive video display system
US7710391B2 (en) 2002-05-28 2010-05-04 Matthew Bell Processing an image utilizing a spatially varying pattern
US7489812B2 (en) 2002-06-07 2009-02-10 Dynamic Digital Depth Research Pty Ltd. Conversion and encoding techniques
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
US9682319B2 (en) 2002-07-31 2017-06-20 Sony Interactive Entertainment Inc. Combiner method for altering game gearing
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
US7386799B1 (en) 2002-11-21 2008-06-10 Forterra Systems, Inc. Cinematic techniques in avatar-centric communication during a multi-user online simulation
US7576727B2 (en) 2002-12-13 2009-08-18 Matthew Bell Interactive directed light/sound system
JP4235729B2 (ja) 2003-02-03 2009-03-11 国立大学法人静岡大学 距離画像センサ
GB0306875D0 (en) * 2003-03-25 2003-04-30 British Telecomm Apparatus and method for generating behavior in an object
DE602004006190T8 (de) 2003-03-31 2008-04-10 Honda Motor Co., Ltd. Vorrichtung, Verfahren und Programm zur Gestenerkennung
JP4355341B2 (ja) 2003-05-29 2009-10-28 本田技研工業株式会社 深度データを用いたビジュアルトラッキング
US8072470B2 (en) 2003-05-29 2011-12-06 Sony Computer Entertainment Inc. System and method for providing a real-time three-dimensional interactive environment
EP3196805A3 (en) 2003-06-12 2017-11-01 Honda Motor Co., Ltd. Target orientation estimation using depth sensing
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
KR20050033918A (ko) * 2003-10-07 2005-04-14 황후 인공지능 아바타를 이용한 전자쇼핑몰 시스템 및 방법
WO2005041579A2 (en) 2003-10-24 2005-05-06 Reactrix Systems, Inc. Method and system for processing captured image information in an interactive video display system
JP3847753B2 (ja) 2004-01-30 2006-11-22 株式会社ソニー・コンピュータエンタテインメント 画像処理装置、画像処理方法、記録媒体、コンピュータプログラム、半導体デバイス
JP2005323340A (ja) * 2004-04-07 2005-11-17 Matsushita Electric Ind Co Ltd 通信端末及び通信方法
JP4708422B2 (ja) 2004-04-15 2011-06-22 ジェスチャー テック,インコーポレイテッド 両手動作の追跡
US7308112B2 (en) 2004-05-14 2007-12-11 Honda Motor Co., Ltd. Sign based human-machine interaction
JP2005352893A (ja) * 2004-06-11 2005-12-22 Nippon Telegr & Teleph Corp <Ntt> 通信端末および通信プログラム
US7704135B2 (en) 2004-08-23 2010-04-27 Harrison Jr Shelton E Integrated game system, method, and device
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 ソニー株式会社 画像処理装置、画像処理方法、およびプログラム
KR20060070280A (ko) 2004-12-20 2006-06-23 한국전자통신연구원 손 제스처 인식을 이용한 사용자 인터페이스 장치 및 그방법
WO2006074310A2 (en) 2005-01-07 2006-07-13 Gesturetek, Inc. Creating 3d images of objects by illuminating with infrared patterns
WO2006074290A2 (en) 2005-01-07 2006-07-13 Gesturetek, Inc. Optical flow based tilt sensor
US7853041B2 (en) 2005-01-07 2010-12-14 Gesturetek, Inc. Detecting and tracking objects in images
CN101536494B (zh) 2005-02-08 2017-04-26 奥布隆工业有限公司 用于基于姿势的控制系统的系统和方法
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
KR101430761B1 (ko) 2005-05-17 2014-08-19 퀄컴 인코포레이티드 방위-감응 신호 출력
EP1752748B1 (en) 2005-08-12 2008-10-29 MESA Imaging AG Highly sensitive, fast pixel for use in an image sensor
KR100713473B1 (ko) * 2005-08-17 2007-04-30 삼성전자주식회사 휴대용 단말기에서 게임기능 구현방법
US20080026838A1 (en) 2005-08-22 2008-01-31 Dunstan James E Multi-player non-role-playing virtual world games: method for two-way interaction between participants and multi-player virtual world games
US7450736B2 (en) 2005-10-28 2008-11-11 Honda Motor Co., Ltd. Monocular tracking of 3D human motion with a coordinated mixture of factor analyzers
GB2431717A (en) 2005-10-31 2007-05-02 Sony Uk Ltd Scene analysis
TWI311067B (en) 2005-12-27 2009-06-21 Ind Tech Res Inst Method and apparatus of interactive gaming with emotion perception ability
WO2007096893A2 (en) 2006-02-27 2007-08-30 Prime Sense Ltd. Range mapping using speckle decorrelation
WO2007098560A1 (en) 2006-03-03 2007-09-07 The University Of Southern Queensland An emotion recognition system and method
JP2007256502A (ja) * 2006-03-22 2007-10-04 Yamaha Corp 演奏データ遠隔通信システムおよびその制御方法を実現するためのプログラム
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
US7701439B2 (en) 2006-07-13 2010-04-20 Northrop Grumman Corporation Gesture recognition simulation system and method
US8395658B2 (en) 2006-09-07 2013-03-12 Sony Computer Entertainment Inc. Touch screen-like user interface that does not require actual touching
JP5395323B2 (ja) 2006-09-29 2014-01-22 ブレインビジョン株式会社 固体撮像素子
US8026918B1 (en) * 2006-11-22 2011-09-27 Aol Inc. Controlling communications with proximate avatars in virtual world environment
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
US7412077B2 (en) 2006-12-29 2008-08-12 Motorola, Inc. Apparatus and methods for head pose estimation and head gesture detection
US20080215994A1 (en) * 2007-03-01 2008-09-04 Phil Harrison Virtual world avatar control, interactivity and communication interactive messaging
GB0703974D0 (en) 2007-03-01 2007-04-11 Sony Comp Entertainment Europe Entertainment device
US7729530B2 (en) 2007-03-03 2010-06-01 Sergey Antonov Method and apparatus for 3-D data input to a personal computer with a multimedia oriented operating system
CN101669090A (zh) 2007-04-26 2010-03-10 福特全球技术公司 情绪提示系统和方法
US20090002178A1 (en) * 2007-06-29 2009-01-01 Microsoft Corporation Dynamic mood sensing
US7852262B2 (en) 2007-08-16 2010-12-14 Cybernet Systems Corporation Wireless mobile indoor/outdoor tracking system
CN101422656B (zh) * 2007-10-29 2012-03-14 英属维京群岛速位互动股份有限公司 可感应人体动作的电子游戏操控装置
US9292092B2 (en) 2007-10-30 2016-03-22 Hewlett-Packard Development Company, L.P. Interactive display system with collaborative gesture detection
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
KR100884467B1 (ko) * 2007-12-17 2009-02-20 에스케이 텔레콤주식회사 고속 커뮤니케이션 방법과 이를 위한 단말기
US8149210B2 (en) 2007-12-31 2012-04-03 Microsoft International Holdings B.V. Pointing device and method
CN101254344B (zh) 2008-04-18 2010-06-16 李刚 场地方位与显示屏点阵按比例相对应的游戏装置和方法
CN201254344Y (zh) 2008-08-20 2009-06-10 中国农业科学院草原研究所 植物标本及种子存贮器
US20100123776A1 (en) * 2008-11-18 2010-05-20 Kimberly-Clark Worldwide, Inc. System and method for observing an individual's reaction to their environment
US8806337B2 (en) * 2009-04-28 2014-08-12 International Business Machines Corporation System and method for representation of avatars via personal and group perception, and conditional manifestation of attributes
US8390680B2 (en) 2009-07-09 2013-03-05 Microsoft Corporation Visual representation expression based on player expression

Also Published As

Publication number Publication date
BR112012000391A2 (pt) 2018-02-06
CN102470273B (zh) 2013-07-24
EP3561647A1 (en) 2019-10-30
US9519989B2 (en) 2016-12-13
EP3561647B1 (en) 2020-11-18
RU2560794C2 (ru) 2015-08-20
KR20120049218A (ko) 2012-05-16
WO2011005784A2 (en) 2011-01-13
EP2451544A4 (en) 2016-06-08
US20130187929A1 (en) 2013-07-25
JP2012533120A (ja) 2012-12-20
US8390680B2 (en) 2013-03-05
JP5661763B2 (ja) 2015-01-28
US20110007142A1 (en) 2011-01-13
WO2011005784A3 (en) 2011-05-05
RU2011154346A (ru) 2013-07-10
CN102470273A (zh) 2012-05-23
KR101704848B1 (ko) 2017-02-08
EP2451544B1 (en) 2019-08-21
EP2451544A2 (en) 2012-05-16

Similar Documents

Publication Publication Date Title
US9519989B2 (en) Visual representation expression based on player expression
JP5632474B2 (ja) ユーザーから学習した入力を介し視覚表示を実写のようにする方法及びシステム
JP5782440B2 (ja) 視覚表示の自動生成方法及びシステム
US9824480B2 (en) Chaining animations
US20100302138A1 (en) Methods and systems for defining or modifying a visual representation
JP5775514B2 (ja) ジェスチャー・ショートカット

Legal Events

Date Code Title Description
B25A Requested transfer of rights approved

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC (US)

B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06T Formal requirements before examination [chapter 6.20 patent gazette]
B15K Others concerning applications: alteration of classification

Free format text: AS CLASSIFICACOES ANTERIORES ERAM: A63F 13/00 , A63F 13/06

Ipc: A63F 13/213 (2014.01), A63F 13/23 (2014.01), A63F

B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 06/07/2010, OBSERVADAS AS CONDICOES LEGAIS.