Sie sind auf Seite 1von 9

Universidade Federal de Goiás

Curso: Ciências da Computação


Disciplina: Multimídia 2014-2
Alunos: Deuslírio Júnior, Luma Wanderley e Murillo Vieira

Tema: Manipulação de televisão com uso do Kinect 1.0

1 - Contextualização do trabalho
Os primeiros televisores com controle por voz, gestos e reconhecimento facial
começaram a serem comercializados e vem se popularizando desde 2011,
proporcionando uma alternativa do uso do controle remoto. Atualmente, um televisor
com detecção de gestos é muito caro, custando a partir de R$5000,00.
Nesse trabalho faremos uma automação residencial, da qual utilizaremos um
televisor comum que poderá ser controlado por gestos. Na internet é possível encontrar
diversos vídeos que mostram esse tipo de automação, entretanto uma documentação
mais técnica não foi encontrada.

2 - Execução da Aplicação
Primeiramente vamos descrever como nosso sistema funciona. O Kinect faz a
captura da imagem que é enviada para o software chamado FAAST (Flexible Action
and Articulated Skeleton Toolkit) instalado no computador. O FAAST faz a detecção
automática das articulações do esqueleto humano, conseguindo rastrear os
movimentos dessas articulações. Utilizando esse mesmo software, temos a
possibilidade de programar um gesto, onde podemos configurar as posições de cada
articulação, fazer comparações de distância, rotação, inclinação dentre outras
propriedades, como entrada do gesto e retornando um evento como um clique do
mouse ou teclado. O arduino está configurado para assim que um evento esperado
ocorrer, um sinal infravermelho reconhecido pela televisão (por exemplo o sinal de ligar
o televisor) é emitido, fazendo a televisão executar uma ação.

Figura 01:​ Esquema de funcionamento


Figura 02:​ Circuito do Arduino Uno

Figura 03:​ Sinais sendo emitidos


Pensando que os gestos para comandar a TV na maioria das vezes será vindo
de alguém sentado, tentamos definir comandos, que só são executados utilizando os
membros superiores e que não sejam confundidos com movimentos normais, então foi
definido que cada comando devera ser feito movendo rapidamente a mão para algum
lado específico.

Figura 04:​ Direção dos movimentos.

A mão direita comanda a passagem de canais e o volume, a mão esquerda por


sua vez comanda ações como ligar, acessar os métodos de entrada, e desativar o som.
Figura 05:​ Interface FAAST

Figura 06:​ Monitoração do esqueleto e detecção gestos


3 - Testes realizados com a aplicação

3.1 - Testes realizados


Os gestos se baseiam em movimentar a mão em alguma direção a 3,5 m/s, foi
realizado dezenas de testes e o sensor junto com o software FAAST conseguiu
reconhecê-los sempre, mas com alguns adendos:
Primeiro, não podemos estar muito próximos, distância abaixo de 1 metro do
sensor, já começa a perder facilmente os pontos do corpo, além de não conseguir
medir muito bem a velocidade do movimento, o que fez com que o comando fosse
acionado fazendo um gesto que seria normal.
Segundo, apesar de reconhecer mais de um usuário, o sistema aceita comando
de apenas um, o que está a mais tempo na sua visão por exemplo:
- O usuário azul entra, nesse momento ele tem o poder de ter os gestos
reconhecidos
- O usuário verde entra, o reconhecimento dos gestos continua com o azul
- O usuário azul sai, o reconhecimento de gestos passa para o usuário
verde
- Se o usuário azul voltar, o poder de reconhecimento de gestos estará
com o usuário verde e não mudará enquanto ele estiver sendo
reconhecido.

Figura 07: ​Dois usuários reconhecidos.


3.2 - Descrição/justificativa dos acertos
Usando pontos na silhueta detectada podemos programar para que quando
algum evento ocorra com determinado ponto, seja disparado outro evento ligado mais
precisamente com o computador onde está sendo rodado o programa + sensor. Por
exemplo, quando dizemos que, se a mão direita se mover para a esquerda à uma
velocidade de 3.5 m/s então clique “Enter”, na verdade estamos dizendo que se o
ponto na silhueta que representa a mão direita se mover até um ponto final devemos
pegar o ponto final subtrair pelo ponto inicial de deslocamento do item “mão direita” e
analisar levando o tempo que demorou para percorrer essa distância, assim teremos o
deslocamento em razão do tempo.

3.3 - Descrição/justificativa dos falsos positivos

O maior problema do Sensor Kinect mostrou ser os falsos positivos, muitas


vezes ele reconheceu silhuetas que não existiam como nos casos a seguir:

Figura 08:​ Fogão detectado como usuário


O caso da figura 08 foi testado 30 vezes e em 6 delas o fogão foi reconhecimento como
usuário, ou seja 20% das tentativas
Figura 09:​ Falsa detecção de usuário

No caso da figura 09 podemos ver que o sensor reconheceu 3 usuários, o


usuário 1, em azul que é o único usuário verdadeiro, o usuário 2, que na verdade era
um ventilador em verde, e o usuário 3 em amarelo foi reconhecido pois este teste não
foi feito em fundo plano e as paredes que se encontravam ao fundo, se tornaram um
possível usuário.
O caso do ventilador, foi mais crítico porque como podemos ver, ele define
pontos de comando ao objeto, e consequentemente passa a receber qualquer gesto
proveniente dele,como se fosse realmente um comando vindo de um usuário.
Por utilizarmos a primeira versão do Kinect que foi desenvolvida primordialmente
apenas para o console Xbox 360, isso faz com que os softwares que temos sejam um
pouco limitados, a versão 2.0 do equipamento pareceu ser mais inteligente, porém não
existem muitos dados para darem apoio a novos desenvolvedores.

O caso da figura 09 foi testado 30 vezes, em 13 delas o ventilador foi reconhecido


(43%) e em 8 a parede foi reconhecida (27%) os dois foram reconhecidos
simultaneamente em 6 destas vezes(20%).

4 - Comparação dos resultados com outros métodos/trabs.


4.1 - Comparação de métodos que utilizam o Kinect.
As principais vantagens de utilizar o Kinect no projeto foi a disponibilidade de
uma elaborada API que facilitou o processo de aprendizagem do funcionamento e
integração do hardware, bem como sua capacidade de reconhecer e rastrear o
esqueleto humano em tempo real sem a necessidade de calibração ou detalhes mais
técnicos. A utilização do FAAST agilizou ainda mais o processo do desenvolvimento do
sistema, abstraindo em grande parte a programação necessária. Percebe-se que
embora outros métodos que usam o Kinect variam de gestos simples a complexos, o
problema maior é o falso reconhecimento de usuários que provavelmente ocorreu
devido ao hardware do Kinect. O notável é que em outros métodos, o Kinect parece ter
apresentado mais erros de detecção de gestos e atrasos no reconhecimento, o que em
nosso projeto não ocorreu.
Na seção Anexos tem uma lista de vídeos mostrando a interação do usuário
com o sistema.

4.2 - Comparação de métodos que não utilizam o Kinect


Dentre esses métodos encontramos as câmeras integradas aos televisores
atuais e também um sistema de automação residencial que utiliza sensor ultra-sônico.
Com a utilização do Kinect no projeto, a detecção dos dedos não é algo fácil de
se obter, já que não é nativa ao sensor do Kinect, por isso não foi utilizado a detecção
da borda da mão, e infelizmente, o uso dos dedos se torna um movimento muito mais
natural ao usuário e de fácil manipulação.
As televisões atuais que utilizam as câmeras integradas, como por exemplo a Smart TV
3D LG da série LA8600, possuem um ótimo tempo de reconhecimento de gestos, bem
como o reconhecimento dos dedos o que torna a navegação da televisão bem rápida e
natural de ser feita.
Outro método é com a utilização de sensor ultra-sônico, logo não é necessário
câmera. O sensor capta o interrompimento do sinal e calcula a distância e o sentido do
movimento. Esse método é eficiente tanto no tempo de resposta quanto na detecção
do movimento, não é algo natural pois a mão do usuário deve interagir com o sensor,
ou seja, a interação deve ser feita em um pequeno espaço de ação, além de não
utilizar processamento de imagem o que poderia oferecer outros recursos.
Na seção Anexos tem uma lista de vídeos mostrando a interação do usuário
com o sistema.

5 - Referências

1. Martins, G. S. “Kinect - Innovative Face Recognition System”. 2013


2. Paula, B. C. “Adaptando e desenvolvendo jogos para uso com o Microsoft
Kinect”. X SBGames - Salvador - BA, November 7th - 9th, 2011.

3. Correia, M. M. “Reconhecimento de Elementos Gestuais com Kinect”. 2013

5.1 - Anexos

1.​ revistahometheater. "Veja como a TV LG é controlada por gestos", 19 de jul.


2013. Disponível em: ​https://www.youtube.com/watch?v=z01TM6qwG1U​, acessado em
16/11/2014.

2.​ Fabio Toledo. “Mudando o volume da TV com o Kinect - Automação


Doméstica”, 22 de jan. 2012. Disponível em:
https://www.youtube.com/watch?v=G2iO1aIoIlc​ , acessado em 16/11/2014.

3.​ Harishankar Narayanan. “Gesture recognition with Kinect, uirt and TV: No
More Remotes”, 11 de fev. 2011. Disponível em:
https://www.youtube.com/watch?v=Lq1qf_UgkDo​ , acessado em 16/11/2014.

4.​ Márton Parrag . “Arduino UNO r3 Sony TV gestures control”, 28 de dez. 2013.
Disponível em: ​https://www.youtube.com/watch?v=3e3RD7_GMlA​ , acessado em
16/11/2014.

Das könnte Ihnen auch gefallen