rastreamento

24
UNIVERSIDADE FEDERAL DA PARAÍBA – UFPB BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO INTRODUÇÃO À COMPUTAÇÃO GRÁFICA ÍTALO LEANDRO FREIRE DE ALBUQUERQUE YURI GIL DANTAS UMA ANÁLISE TEÓRICA SOBRE TIPOS DE RASTREAMENTO JOÃO PESSOA Novembro de 2010

Upload: yuri-dantas

Post on 02-Jul-2015

750 views

Category:

Documents


0 download

DESCRIPTION

Esse trabalho tem como objetivo apresentar uma amostra dos fundamentos teóricos da área de rastreamento e das técnicas e equipamentos mais utilizados.

TRANSCRIPT

Page 1: Rastreamento

UNIVERSIDADE FEDERAL DA PARAÍBA – UFPBBACHARELADO EM CIÊNCIA DA COMPUTAÇÃO

INTRODUÇÃO À COMPUTAÇÃO GRÁFICA

ÍTALO LEANDRO FREIRE DE ALBUQUERQUE

YURI GIL DANTAS

UMA ANÁLISE TEÓRICA SOBRE TIPOS DE RASTREAMENTO

JOÃO PESSOA

Novembro de 2010

Page 2: Rastreamento

ABSTRACT

One of the main challenges in the Computer Science is the rapid extraction of

information from devices for analysis. A key issue is to simplify the problems, in a way to reduce

the amount of information needed to represent the problem and therefore a minor computational

cost. Due to the diversity of use and distinct types of tracking devices, there is no single solution for

all area applications, which leads to various techniques and methods. Within this context, this study

aims to present a brief of theoretical foundations and the more usual techniques and devices.

RESUMO

Um dos grandes desafios na área da ciência da computação é a extração rápida da

informação a partir de dispositivos de rastreamento para a realização de análise. Uma questão

fundamental é simplificação dos problemas encontrados, de modo a reduzir a quantidade de

informações necessárias para uma representação mais adequada do problema e portanto um menor

custo computacional. Devido à diversidade de uso e tipos distintos de equipamento de rastreamento,

não existe uma solução única para todas as aplicações da área, dando origem a diversos tipos de

técnicas e métodos. Dentro desse contexto este trabalho tem como objetivo apresentar uma amostra

dos fundamentos teóricos da área e das técnicas e equipamentos mais utilizados.

Page 3: Rastreamento

SumárioIntrodução........................................................................................................................................................1 1 Objetivos e Organização do Trabalho...........................................................................................................2 2 Referencial Teórico.......................................................................................................................................2

2.1 Interação Humano Computador...........................................................................................................2 2.2 Visão Computacional ...........................................................................................................................2 2.3 Rastreamento.......................................................................................................................................3

2.3.1 Rastreamento Mecânico...............................................................................................................3 2.3.2 Rastreamento Acústico.................................................................................................................4 2.3.3 Rastreamento Magnético............................................................................................................5 2.3.4 Rastreamento Óptico....................................................................................................................6

2.4 Rastreamento de Objetos em Vídeo.....................................................................................................8 2.4.1 Representação dos Objetos..........................................................................................................8 2.4.2 Detecção dos Objetos...................................................................................................................9 2.4.3 Dificuldades no rastreamento de objetos em vídeo.....................................................................9

2.4.3.1 Problema da Oclusão............................................................................................................9 2.4.4 Segmentação de Imagens...........................................................................................................10 2.4.5 Detecção de descontinuidade.....................................................................................................11

2.4.5.1 Detecção de pontos e linhas...............................................................................................11 2.4.5.2 Detecção de bordas............................................................................................................11 2.4.5.3 Detecção de Similaridades..................................................................................................12

2.4.6 Rastreamento por cor.................................................................................................................13 2.5 Utilização da mão para a interação humano computador .................................................................13

2.5.1 Dispositivos utilizados para reconhecer o movimento das mãos...............................................14 2.5.2 Luvas com Mediadores de Luminosidade...................................................................................14 2.5.3 Luvas com Esqueletos Externos..................................................................................................15 2.5.4 Wii Remote.................................................................................................................................15

2.6 OpenCV...............................................................................................................................................16 3 Considerações Finais...................................................................................................................................17

3.1 Indicações para o Futuro....................................................................................................................17 4 Referencias ................................................................................................................................................19

Page 4: Rastreamento

Índice de FigurasFigura 1: Rastreador Mecânico “MicroScribe”..................................................................................................4Figura 2: Rastreador Mecânico - Detector de Movimentos..............................................................................4Figura 3: Andy Serkis. Captura de movimento para o personagem golum do filme Senhor dos Anéis.............7Figura 4: Rastreador inside-out........................................................................................................................8Figura 5: Operadores de diferenciação aplicados sobre uma função que modela a mudança brusca de níveis de cinza...........................................................................................................................................................12Figura 6: Luva com Medidor de Luminosidade...............................................................................................14Figura 7: Luva com Esqueleto Externo............................................................................................................15Figura 8: Wii Remote......................................................................................................................................15Figura 9: Barra de Sensor................................................................................................................................16

Page 5: Rastreamento

Introdução

A utilização de dispositivos de rastreamento é algo cada vez mais presente na vida das

pessoas, principalmente, devido a fatores técnicos como o barateamento de equipamentos simples

como webcams, que podem ser utilizados para rastreamento por vídeo. Além de fatores técnicos,

fatores sociais, como o aumento da criminalidade, a integração de estudantes com o ensino

interativo e demanda cada vez maior sobre equipamentos que permitem a chamada “Visão

Computacional” explica o aumento no uso de dispositivos de rastreamento.

Diante desse contexto, é importante apresentar os diversos tipos de rastreamento, como

funcionam e quais tipos são mais utilizados atualmente. Além disso, não se pode negar a

importância de apresentar um exemplo prático do funcionamento de um dispositivo de

rastreamento.

1

Page 6: Rastreamento

1 Objetivos e Organização do Trabalho

Este trabalho tem como objetivo geral demonstrar os tipos de rastreamento, o seu

funcionamento e suas aplicações nas mais diversas áreas. Além disso, o trabalho pretende falar

sobre a biblioteca OpenCV e exibir um algoritmo de exemplo construído com a ajuda da mesma. O

trabalho em sua primeira parte explica seus objetivos e organização. Na segunda parte, apresenta

um referencial teórico que serve de base para a terceira parte onde será demonstrado o uso de um

algoritmo utilizando a biblioteca OpenCV. Por último serão apresentadas as considerações finais

sobre o trabalho e indicações de possíveis pesquisas para o futuro.

2 Referencial Teórico

2.1 Interação Humano Computador

A interação humano computador foi definida pela Association of Computer Machinery

como uma disciplina que diz respeito ao projeto, avaliação e implementação de sistemas de

computador interativos para uso humano [1].

Esta interface pode ser definida como um meio de comunicação, pois é tanto um meio

para a interação quanto uma ferramenta que oferece os instrumentos para esta comunicação. A

interação possui componentes de software e hardware [2].

Os componentes de hardware compreendem os dispositivos em que o usuário realiza as

atividades motoras e perceptivas. Os mais tradicionais são a tela, o teclado e o mouse

O software representa os processos computacionais necessários para o controle do

dispositivos de hardware e para interpretação dos comandos dos usuários.

2.2 Visão Computacional

Visão computacional é "O conjunto de métodos e técnicas através dos quais sistemas

computacionais podem ser capazes de interpretar imagens. A interpretação de uma imagem pode ser

definida em termos computacionais como a transformação de um conjunto de dados digitais

representando uma imagem (um sinal mono-, bi-, tri- ou tetra dimensional) em uma estrutura de

dados descrevendo a semântica desses dados em um conjunto qualquer" [12]. Em linhas gerais seria

como fazer um sistema de computador "enxergar", ou seja olhar para uma imagem e transformar

esses dados em informação útil, como por exemplo reconhecimento de características. Porém

comparado ao sistema ocular humano a visão computacional ainda esta engatinhando com estudos

2

Page 7: Rastreamento

específicos sobre as característica de enxergar.

O desenvolvimento de sistemas de visão computacional requer uma entrada de dados

(imagem) geralmente obtida de sensores, câmeras ou vídeos. Essas imagens são processadas e

transformadas em uma informação esperada, como por exemplo, receber uma imagem colorida

(dado), colocar em binário a imagem (processamento), exibir uma imagem preta e branca em níveis

de cinza (informação esperada). O processo de transformação da imagem é realizado por métodos

contidos em bibliotecas de processamento gráfico.

2.3 Rastreamento

Introdução

Rastreamento de objetos é uma importante tarefa dentro da visão computacional.

Propicia importantes mecanismos para a interação humano computador (IHC). Com a tecnologia

atual dos computadores, o uso de dispositivos e técnicas especificas pode-se utilizar o rastreamento

de objetos para as mais diversas tarefas que variam desde a detecção de objetos a partir do som a

detecção do movimento das mão utilizando uma Webcam.

O rastreamento de objetos pode ser dividido em quatro importantes áreas, são elas:

• Rastreamento Mecânico

• Rastreamento Acústico

• Rastreamento Magnético

• Rastreamento Óptico

2.3.1 Rastreamento Mecânico

É feito de modo a se conectar diretamente ao corpo do usuário e detectam a posição de

um ponto de referencia, a partir de estruturas articuladas que ligam o ponto de referencia a um

ponto físico conhecido. Este tipo de rastreamento é principalmente usado quando se quer maior

velocidade e precisão no rastreamento ou quando quer se aplicar uma força ao objeto para verificar

a limitação no seus movimentos [3]. Um exemplo de rastreamento mecânico pode ser visto na

Figura 1 e Figura 2.

3

Page 8: Rastreamento

2.3.2 Rastreamento Acústico

Os rastreadores acústicos detectam a posição de um objeto a partir de uma emissão de

um som que é captado por um receptor. O mesmo controlador é utilizado para controlar tanto a

transmissão quanto a recepção. Um som é enviado ao receptor é o tempo entre a transmissão e

recepção é utilizado para se saber a distância que o objeto está do transmissor[4].

As três principais tecnologias utilizadas para rastreamento acústico são:

• Time of Flight

4

Figura 1: Rastreador Mecânico “MicroScribe”

Figura 2: Rastreador Mecânico - Detector de Movimentos

Page 9: Rastreamento

• Time Delay

• Phase Coherent

A tecnologia Time of Flight utiliza pulsos de som em intervalos regulares. A partir da

detecção do pulso sabe-se a que distância o objeto está do transmissor. Com o uso de três receptores

é possível definir a posição no espaço de um objeto através da intercessão das três esferas de

recepção.

A tecnologia Time Delay utiliza uma variação aleatória na amplitude das ondas sonoras.

Quando um sinal é recebido ele é comparado ao ao sinal emitido e o tempo que o sinal gastou para

chegar ao receptor é determinado. Com esse tempo é possível determinar tanto a distância quanto a

posição do objeto. A principal vantagem desta tecnologia é a velocidade no calculo da distancia e

portanto um menor tempo de resposta.

A tecnologia Phase Coherent utiliza ondas sonoras emitidas continuamente com

variação periódica. A diferença de fase entre o sinal emitido e recebido é utilizada para calcular a

distância do objeto, contudo o tempo calculado deve ser menor que o comprimento de onda [3].

2.3.3 Rastreamento Magnético

É o tipo de tecnologia de rastreador mais utilizada atualmente em ambientes virtuais. O

princípio de funcionamento desses dispositivos é que quando um fio elétrico é submetido a um

campo magnético, surge uma corrente elétrica induzida.

Através de um receptor colocado no objeto a ser rastreado e da análise das correntes

induzidas sobre ele é possível calcular a posição do objeto em relação a um emissor de campos

magnéticos;

Características:

• Usam campos magnéticos de baixa frequência para medir a posição;

• Campos produzidos por uma fonte fixa;

• O tamanho da fonte está relacionado com a carga do trabalho;

• O receptor é ligado ao objeto e tem 3 antenas perpendiculares;

• A distância pode ser deduzida a partir das tensões induzidas nas antenas;

• Existe o problema que oclusão.

5

Page 10: Rastreamento

Os maiores problemas apresentados pelos rastreadores magnéticos são o tempo que

gasto para o cálculo de uma nova posição e as interferências causadas por objetos de ferro e por

outras fontes de campos magnéticos próximas ao emissor ou ao receptor, como monitores, e caixas

com alto-falantes.

2.3.4 Rastreamento Óptico

A tecnologia de rastreamento ótico, que também pode ser chamando de rastreamento

por vídeo, é o processo de localização do movimento de um ou mais objetos, ao longo de um

tempo utilizando uma câmera, ou seja, pode indicar a posição de um ponto a partir de sua

imagem.

Existem dois tipos principais de rastreadores ópticos, aquele em que são colocadas

câmeras no ambiente e a imagem do usuário e captada e processada, e aqueles que o usuário carrega

uma câmera e filma o ambiente.

No primeiro tipo, também chamado de rastreamento por “extração de imagem”,

colocam-se marcadores sobre os pontos a serem rastreados e algumas câmeras no ambiente. Este

marcadores podem ser simples etiquetas coloridas ou LEDs. As imagens captadas pelas câmeras são

então processadas para determinar as posições dos pontos[4]. Um exemplo do rastreamento por

extração de imagens pode ser visto na Figura 3.

6

Page 11: Rastreamento

Para a determinação da posição tridimensional de um ponto a partir de uma imagem são

necessárias, pelo menos, duas câmeras. O uso de apenas duas câmeras, entretanto, pode causar com

certa frequência a oclusão de um ponto pelo corpo do usuário.

A segunda geração de rastreadores óticos corresponde aos chamados inside-out. Neles o

usuário é que carrega uma câmera e o principal objetivo é capturar, os movimentos de um usuário

num espaço de uma sala de tamanho tradicional como pode ser visto na Figura 4.

7

Figura 3: Andy Serkis. Captura de movimento para o personagem golum do filme Senhor dos Anéis

Page 12: Rastreamento

2.4 Rastreamento de Objetos em Vídeo

A análise de um vídeo apresenta três desafios principais:

• Detecção do objeto de interesse;

• Rastreamento do objeto quadro a quadro;

• Análise do objeto rastreado para interpretar seu comportamento.

O grande problema relacionado ao rastreamento de objetos é que se deve estimar a

trajetória de um objeto que está no espaço(3D) a partir de uma imagem que está no plano(2D). Para

contornar este problema deve-se estudar como objetos são representados no plano de forma a

identificá-los corretamente.

2.4.1 Representação dos Objetos

Em um cenário de rastreamento, um objeto que pode ser rastreado é definido de acordo

com as características que possam ser interessantes a pesquisa[5].

Seguem abaixo as formas de representação mais utilizadas:

• Pontos: O objeto é representado por um ponto. É adequado para acompanhar

objetos que ocupam pequenas regiões em uma imagem;

8

Figura 4: Rastreador inside-out

Page 13: Rastreamento

• Formas Geométricas: A forma do objeto é representada por figuras geométricas,

por exemplo uma circunferência. É adequado para acompanhar objetos rígidos

simples e/ou para monitorar objetos não rígidos;

• Silhueta do Objeto: O objeto é representado pelo seu contorno. É adequado para

o acompanhamento de formas não rígidas complexas, como por exemplo mão

humana;

• Modelos de forma articulada: Objetos articulados são compostos pelas partes do

corpo que são unidas pelas juntas. O corpo humano pode ser representado por

suas articulações e as outras partes podem ser modeladas por cilindro ou elipses.

2.4.2 Detecção dos Objetos

A detecção de objetos utiliza as características principais do objeto para determinar

como monitorá-lo. Normalmente apenas um quadro é utilizado para determinar o objeto, contudo

em alguns casos é necessário fazer o uso da informação temporal a partir de uma sequência de

quadros para atenuar o número de falsas detecções. Dados os objetos de um quadro, o algoritmo

deve realizar a correspondência deste em relação ao próximo quadro para caracterizar o

rastreamento [5].

2.4.3 Dificuldades no rastreamento de objetos em vídeo

O processo de detecção de um objeto em movimento em um fundo constante pode

parecer simples, entretanto considerando o processo realizado no cérebro humano, mesmo se as

câmeras tivessem a mesma capacidade de captura da informação que a retina, os computadores não

possuem o enorme poder de processamento em paralelo que possui o cérebro humano. Por esse

motivo apenas alguns processos básicos são implementados nos sistemas de visão computacional

em tempo real [6].

Outras dificuldades da visão computacional é a instabilidade causada por mudanças de

iluminação, oclusões, e ruídos nos equipamentos de captura. Devido a especificidade dos problemas

é difícil construir um sistema de propósito geral que seja capaz de trabalhar com uma grande gama

de objetos pois é preciso restringir o campo de ação e construir sistemas mais específicos [7].

2.4.3.1 Problema da Oclusão

A oclusão pode ser dividida em 3 categorias: auto oclusão, oclusão inter objetos e

9

Page 14: Rastreamento

oclusão com fundo de imagem. A auto oclusão ocorre quando uma parte do objeto sobrepõe outro

parte do mesmo objeto. Esta situação ocorre com maior frequência quando se está capturando

objetos articulados. A oclusão inter objetos ocorre quando dois objetos que estão sendo rastreados

sobrepõem-se. Similarmente, a oclusão com fundo de imagem ocorre quando uma estrutura da

paisagem sobrepõem o objeto rastreado [5].

Outro problema que ocorre com a oclusão, é a oclusão parcial. Este tipo de oclusão é

muito difícil de ser detectado, pois, é uma tarefa complexa diferenciar o objeto que está sendo

sobreposto do objeto que está mudando seu formato.

Um jeito comum de se lidar com a oclusão completa é modelar o movimento do objeto

por modelos dinâmicos lineares ou não lineares e no caso da oclusão se manter o possível

movimento do objeto rastreado até que o mesmo reapareça.

As chances de ocorrer oclusão podem ser reduzidas com a escolha apropriada das

posições das câmeras, por exemplo, se a câmera estiver em uma posição privilegiada em relação ao

objeto rastreado (ex: um observador em cima de um muro, tem menores chances de ter sua visão

bloqueada, do que um observador no nível do solo).

2.4.4 Segmentação de Imagens

Segmentação é uma operação básica em imagem que equivale a encontrar regiões

associadas com os objetos de interesse no domínio da imagem. Esta tarefa é executada de forma

natural pelo cérebro e pode parecer simples a primeira vista, contudo, a segmentação é uma das

operações mais complexadas na análise da imagem.

A segmentação é essencial na área de processamento de imagens, pois além de

possibilitar a detecção de objetos é também importante para uma melhor visualização da imagem e

uma quantificação dos elementos pertencentes a imagem (área, perímetro, volume, etc ).

Os objetos que compõem uma imagem possuem duas características básicas [8]:

1) Eles exibem alguma uniformidade interna em relação a uma propriedade da imagem;

2) Eles contrastam em relação a sua vizinhança.

A primeira característica segue os princípios da continuidade, agrupando pixels da imagem de

acordo com o grau de uniformidade dos níveis de cores ou textura das regiões.

A segunda característica, utiliza conhecimentos existentes sobre o objeto, tais como sua possível

forma ou textura, para guiar a segmentação.

10

Page 15: Rastreamento

2.4.5 Detecção de descontinuidade

As descontinuidades encontradas em uma imagem podem ser pontuais, linhas ou os

limites (bordas) de um objeto. Essas feições sobressaem numa imagem, seja por possuir tons de

cinza distintos a região na quais estão inseridas ou por assinalarem mudanças bruscas de tons de

cinza entre regiões [8].

Os métodos de detecção de descontinuidades, mais particularmente os de detecção de

linhas e de bordas, apresentam geralmente como resultados falhas de detecção. Portanto, esses

métodos devem ser seguidos de processamentos visando sanar essas falhas.

2.4.5.1 Detecção de pontos e linhas

A ideia que esta por trás dos algoritmos para a detecção de pontos e linhas é que essas

feições podem possuir tom de cinza muito diferente quando comparada aos seus vizinhos . Desta

forma, a detecção pode ser realizada por meio da aplicação uma máscara que forneça uma resposta

R e um adequado limiar não negativo T. Ao se aplicar a máscara sobre a imagem, os pontos que

retornarem valores acima do limiar estabelecido são detectados [8], ou seja,

|R| > T.

2.4.5.2 Detecção de bordas

A detecção de bordas é de longe, a abordagem mais comum para detecção de

descontinuidades [5]. Em uma imagem a borda é definida como sendo o limite entre duas regiões

com diferentes propriedades. Devido ao processo de amostragem em uma imagem digital, a borda

aparece com uma pequena suavização em torno ao verdadeiro limite das regiões.

Essa transição pode ser representada por uma função f(x). Dessa forma, a detecção de

bordas pode ser realizada por meio da aplicação de operadores de diferenciação . A primeira

derivada da função f(x), apresenta um ponto de mínimo no ponto correspondente à borda. A

magnitude do valor dessa derivada, pode indicar a intensidade da borda. A segunda derivada da

função f(x), por sua vez, apresenta um cruzamento por zero no ponto correspondente a borda. O

sinal dessa derivada pode ser usado para determinar se um pixel está localizado na parte clara ou

escura da borda.

Para o caso de uma imagem, espaço bidimensional, a função assume a forma f(x,y),

sendo as duas direções representadas pelas derivadas parciais em função de x (direção vertical) e de

y (direção horizontal). Nessa situação são usados operadores diferenciais de gradiente, que

11

Page 16: Rastreamento

correspondem à primeira derivada, e o laplaciano, correspondente a segunda derivada [8].

2.4.5.3 Detecção de Similaridades

A detecção de similaridade tem como fundamento a observação do interior dos objetos

e não as fronteiras que os delimitam. Para tanto, parte da idealização que os pixels que compõe um

objeto têm propriedades semelhantes, enquanto que pixels de objetos diferentes têm propriedades

distintas.

As principais abordagens baseiam-se em:

Limiarização: É a forma mais simples de segmentar imagem digitais, além disso, é uma

das abordagens mais importantes para a segmentação [8]. A ideia que está por trás dessas técnicas é

a que um objeto pode ser entendido como uma região formada por pixels contíguos que tenham em

comum uma faixa de intensidades. Dessa forma, a limiarização usa a intensidade dos pixels para

diferenciar as regiões.

Crescimento de regiões: O princípio do funcionamento da técnica de crescimento por

regiões é agrupar pixels ou sub-regiões em regiões maiores [8]. A técnica se baseia em pegar um

12

Figura 5: Operadores de diferenciação aplicados sobre uma função que modela a mudança brusca de níveis de cinza

Page 17: Rastreamento

conjunto de pixels chamados "sementes", a partir desse ponto pixels que contenham atributos

similares são incluídos nas regiões. O crescimento ocorre iterativamente até que cada pixel seja

processado e sejam formadas diferentes regiões cujas fronteiras possam ser definidas por polígonos

fechados e os pixels internos a essas compartilhem de certa similaridade.

2.4.6 Rastreamento por cor

Rastrear um conjunto de cores em um vídeo é uma primeira aproximação e estimativa

inicial para muitas aplicações. De fato, determinar quais partes de uma imagem correspondem a

pele, por exemplo, é muito importante para rastrear rosto ou mãos. As cores são geralmente

representados em um computador por meio de suas coordenadas RGB. Se quisermos estabelecer um

método para controlar as cores, a melhor maneira é melhor estabelecer uma forma de distinguir as

cores, ou a distância entre elas [5]. Determinando uma área em que uma dada cor é colocada. Em

resumo:

1. Determinar qual a cor deve ser monitorada;

2. Dada uma região candidata, calcula o centro da cor (i.e, sua posição média);

3. Compute uma área na qual a maioria dos pontos são colocados;

4. Use a área calculada como uma estimativa de onde procurar na próxima iteração.

Em várias situações é realizada a transformação de uma imagem colorida para uma

imagem acromática (sem cor, também conhecida como branco e preto), na realidade, uma imagem

em níveis de cinza. A soma das três cores primárias (cores componentes), vermelho (R), verde (G)

e azul (B) produz a cor branca, ou seja, somando todas as cores produz-se o branco (ou luz), em

contrapartida, a ausência da luz é o preto.

O branco, o preto e os tons de cinza são chamados de acromáticos porque em sua

composição, contêm a mesma intensidade das três cores componentes. Utilizar imagens em níveis

de cinza, ao invés de coloridas, reduz a quantidade de cálculos a serem efetuados. Ou seja, ao invés

de efetuar cálculos para três cores (cores componentes), trabalha-se com apenas uma cor (cinza).

2.5 Utilização da mão para a interação humano computador

As luvas eletrônicas, um dos primeiros dispositivos criados especificamente para

aplicações de realidade virtual, buscam capturar os movimentos das mãos (e dos dedos) e usá-los

como forma de interação com o usuário no ambiente virtual. Outros dispositivos podem ser

utilizados para captura os movimentos da mão, mesmo que não tenham sido projetados para este

13

Page 18: Rastreamento

fim. Como exemplo, pode-se citar o uso de webcams para o reconhecimento do movimento.

2.5.1 Dispositivos utilizados para reconhecer o movimento das mãos

Entre os diversos dispositivos utilizados para a detecção do movimento da mão e dos

dedos, pode-se ressaltar o uso dos seguintes dispositivos:

– Luvas com Mediadores de Luminosidade

– Luvas com Esqueleto Externo

– Wii Remote

– Câmeras

2.5.2 Luvas com Mediadores de Luminosidade

Baseia-se no fato de que uma fibra ótica altera suas propriedades de transmissão de luz

quando é flexionada [9].

A ideia principal é colocar sobre cada dedo (pelo lado externo da mão) um par de fibras

óticas. Uma das fibras serve para medir a flexão dos dedos na junção com a palma da mão e a outra

para medir a flexão no meio dos dedos. Numa das extremidades de cada uma das fibras é colocado

um emissor de luz com intensidade constante, no outro uma foto-célula (Figura 6). Posteriormente,

é feita uma leitura das fotocélulas para então calcular o grau de flexão dos dedos.

14

Figura 6: Luva com Medidor de Luminosidade

Page 19: Rastreamento

2.5.3 Luvas com Esqueletos Externos

A Dextrous Hand Master lançou a ideia de usar uma espécie de armadura externa presa

à mão para ler seus movimentos. Esta estrutura permite uma leitura rápida e precisa de todos os

dedos através de colocação de um sensor em cada junta (Figura 7) [9].

2.5.4 Wii Remote

O Wii Remote (Figura 8) tem a capacidade de sentir a aceleração ao longo de três eixos

através da utilização de um acelerômetro ADXL330. O Wii Remote também apresenta um sensor

óptico PixArt, permitindo-lhe determinar onde o Wii Remote deve apontar.

15

Figura 7: Luva com Esqueleto Externo

Figura 8: Wii Remote

Page 20: Rastreamento

Ao contrário de uma pistola de luz que detecta a luz de uma tela de televisão, o Wii

Remote sente a luz a partir de uma barra de sensor (Figura 9), que permite o uso consistente,

independentemente do tipo ou tamanho de televisão. A barra deve ser colocada acima ou abaixo da

televisão, e devem ser centralizadas. Não é necessário que se aponte diretamente a barra de

sensores, mas se apontado de uma grande distancia será prejudicado a habilidade de sensoriamento

da barra, devido ao pequeno anglo de visão do Wii Remote. A barra de sensor é necessário quando

se quer controlar os movimentos para cima e para baixo, para esquerda e para direita, como usados

jogados em jogos de tiro em primeira pessoa. Em casa de jogos de boxe não é necessário o uso da

barra de sensor, pois os movimentos são calculados por um acelerômetro presente no Wii Remote

[10].

O rastreamento de posição e movimento do Wii Remote permite ao jogador imitam as

ações do jogo real, tais como balançar uma espada ou apontando uma arma, ao invés de

simplesmente pressionar botões.

2.6 OpenCV

OpenCV (Open Source Computer Vision) é uma biblioteca de programação, de código

aberto, desenvolvida inicialmente pela Intel Corporation. A OpenCV implementa uma variedade de

ferramentas de interpretação de imagens, indo desde operações simples como um filtro de ruído, até

operações complexas, tais como a análise de movimentos, reconhecimento de padrões e

16

Figura 9: Barra de Sensor

Page 21: Rastreamento

reconstrução em 3D [11].

A biblioteca OpenCV foi desenvolvida pela Intel e possui mais de 500 funções. Foi

idealizada com o objetivo de tornar a visão computacional acessível a usuários e programadores em

áreas tais como a interação humano computador em tempo real e a robótica. A biblioteca está

disponível com o código fonte e os executáveis (binários) otimizados para os processadores Intel.

Um programa OpenCV, ao ser executado, invoca automaticamente uma DLL (Dynamic Linked

Library) que detecta o tipo de processador e carrega, por sua vez, a DLL otimizada para este.

Juntamente com o pacote OpenCV é oferecida a biblioteca IPL (Image Processing Library), da qual

a OpenCV depende parcialmente, além de documentação e um conjunto de códigos exemplos.

A biblioteca está dividida em cinco grupos de funções: Processamento de imagens;

Análise estrutural; Análise de movimento era rastreamento de objetos; Reconhecimento de padrões

e Calibração de câmera e reconstrução 3D.

No OpenCV as técnicas de rastreamento incluem dois componentes principais:

identificação de objetos e modelagem da trajetória. Existem algumas funções que são utilizadas

para o rastreamento, baseadas nos algoritmos de “meanshift” e “camshift”.

O Camshift (Continuously Adaptive Mean-SHIFT) é um algoritmo desenvolvido para o

rastreamento de cor, possibilitando também o rastreamento de faces. É baseado numa técnica

estatística onde se busca o pico entre distribuições de probabilidade em gradientes de densidade.

Esta técnica é chamada de “média por deslocamento” (mean shift) e foi adaptada no Camshift para

tratar a mudança dinâmica das distribuições de probabilidade das cores numa sequência de vídeo.

Pode ser usada no rastreamento de objetos e no rastreamento de faces

3 Considerações Finais

O rastreamento é de fundamentação importância para a Visão Computacional, que por meio dele é

possível extrair informações valiosas a partir de dispositivos específicos. Com o barateamento de

equipamentos que podem ser usados como dispositivos de rastreamento, é possível desenvolver

aplicações que tenham baixo custo financeiro e computacional que propiciem acesso fácil a realidade

aumentada. Durantes este trabalho foram apresentados os diversos tipos de equipamentos de

rastreamentos, seu funcionamento e suas aplicações no dia a dia.

3.1 Indicações para o Futuro

Com o uso desse conhecimento obtido é possível que em trabalhos futuros sejam desenvolvidos

novos algoritmos para melhorar o desempenho e confiabilidade dos dispositivos de rastreamento. Com o

17

Page 22: Rastreamento

uso da biblioteca OpenCV que é livre e aberta o acesso ao mundo do rastreamento se torna mais fácil e

barato possibilitando grupos de pesquisa desenvolver novas aplicações.

Vale salientar, entretanto que as técnicas vistas aqui e a maneira como foram apresentadas devem

servir somente de referencia para estudos iniciais a respeito do tema. Sendo necessário, para um maior

aprofundamento, consultas as fontes bibliográficas apresentadas, bem como, consultas a revistas

cientificas especializadas na área de computação gráfica, processamento digital de imagens, visão

computacional e realidade aumentada.

18

Page 23: Rastreamento

4 Referencias

[1] CARVALHO, J.O.F . O papel da interação humano computador na Inclusão digital. In:

Revista Transformação, V.15, N.3, edição especial, p75-89, Campinas, 2003.

[2] DE SOUZA, C. S.; LEITE, J.C.; PRATES, R.O.; BARBOSA, S.D.J. Projeto de Interfaces de

Usuário: Perspectiva Cognitiva e Semiótica, Anais da jornada de Atualização em informática,

XIX Congresso da Sociedade Brasileira de Computação, Rio de Janeiro, julho de 1999.

[3]MOLERO, A. P.; BERISO, S. B. Realidad Virtual Y Animación. Disponível em :

http://dac.escet.urjc.es/docencia/RVA/claseInput10.pdf. Acessado em 28/10/2010.

[4]PINHO, M. S. Tópicos Especiais em Computação Gráfica. Disponível em :

http://www.inf.pucrs.br/~pinho/TCG/Docs/Aula4-Rastreamento.doc.pdf. Acessado em 28/10/2010.

[5]YILMAZ, A. ; JAVED, O. ; SHAH, M. Objetct Tracking: A Survey. In: ACM Computing

Surveys, Vol. 38, No. 4, Artigo 13, Data de Publicação: Dezembro de 2006.

[6]LOPES, E. C. Determinando a Posição e a Orientação da Mão Através de Imagens de

Vídeo. Disponível em http://grv.inf.pucrs.br/projects/hts/LOPES,%20Eduardo%20Costa.pdf.

Acessado em 30/10/2010.

[7]TRUYENQUE, M. A. Q. Uma Aplicação de Visão Computacional que Utiliza Gestos da

Mão para Interagir com o Computador. Dissertação de Mestrado aprovada em Março de 2005

para o programa de Pós-Graduação em Informática da PUC-Rio. Disponível em:

http://www.tecgraf.puc-rio.br/publications/diss_2005_alain_aplicacao_visao_computacional.pdf.

Acessado em 02/11/2010.

[8]SALDANHA, M. F. S. ; Drª FREITAS, C. da Costa. Segmentação de Imagens Digitais: Uma

Revisão. Disponível em: http://www.lac.inpe.br/cap/arquivos/pdf/P19.pdf. Acessado em:

03/11/2010.

[9]PINHO, M. S. Um modelo de interface para navegação em mundos virtuais, Porto Alegre,

1999. Disponível em <http://grv.inf.pucrs.br/Pagina/Publicacoes/Bike/Portugues/Bike.htm > .

Acessado em 03/11/2010

[10]WIKIPEDIA. Wii Remote. Disponível em: <http://en.wikipedia.org/wiki/Wii_Remote>.

Acessado em 04/11/2010.

[11]OPENCV, OpenCV. Disponível em: <http://sourceforge.net/projects/opencvlibrary>. Acessado

em 06/11/2010.

19

Page 24: Rastreamento

[12]VISÃO COMPUTACIONAL, Seminário a Visão Computacional. Disponível em :

<http://www.inf.ufsc.br/~visao/#Introdu%C3%A7%C3%A3o >, Acessado em 08/11/2010.

20