O software Kinect aprende com a experiência

A camada de software do Kinect é o componente essencial para dar significado ao que o hardware detecta. Quando você liga o Kinect pela primeira vez, ele lê o layout da sua sala e configura o espaço de jogo no qual você estará se movendo. Então, o Kinect detecta e rastreia 48 pontos do corpo de cada jogador, mapeando-os para uma reprodução digital da forma e da estrutura do esqueleto desse jogador, incluindo detalhes faciais.

Configuração do sensor de movimento para um jogador
Microsoft / Divulgação

Configuração do sensor de movimento para um jogador
 

Em uma entrevista para a "Scientifc American", Alex Kipman, diretor de incubação para Xbox 360 da Microsoft, explica que a técnica para desenvolver o software Kinect: "Cada simples movimento do corpo é uma entrada", que cria combinações de ações aparentemente sem fim. Sabendo disso, os desenvolvedores decidiram não programar essa combinação aparentemente sem fim em ações e reações pré-estabelecidas no software. Em vez disso, ela ensinaria ao sistema como reagir baseado em como os humanos aprendem: classificando os gestos das pessoas no mundo real.

Para começar o processo de ensino, os desenvolvedores do Kinect reuniram quantidades massivas de dados de captura de movimento em cenários da vida real. Em seguida, processaram esses dados usando uma máquina de aprendizado de algoritmo de Jamie Shotton, um pesquisador do Microsoft Research Cambridge, na Inglaterra. No final, os desenvolvedores foram capazes de mapear os dados para modelos representando pessoas de diferentes idades, tipos de corpos, gênero e vestuário.Com os dados selecionados, os desenvolvedores conseguiram ensinar o sistema a classificar movimentos do esqueleto de cada modelo, enfatizando as juntas e as distâncias entre essas juntas. Um artigo na "Popular Science" descreve que os quatro passos do cérebro do Kinect vasculham o caminho 30 vezes por segundo para ler e responder a seus movimentos.

O software Kinect vai mais além do que simplesmente detectar e reagir ao que ele vê. O Kinect também pode distinguir jogadores e seus movimentos mesmo se eles estiverem parcialmente escondidos. O Kinect extrapola o que o resto do seu corpo está fazendo desde que ele possa detectar algumas partes dele. Isso permite aos jogadores pular na frente uns dos outros durante o jogo ou ficar de pé atrás de peças de mobília na sala.