SlideShare ist ein Scribd-Unternehmen logo
1 von 24
Downloaden Sie, um offline zu lesen
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
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.
Sumário
Introduçã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
Índice de Figuras
Figura 1: Rastreador Mecânico “MicroScribe”..................................................................................................4
Figura 2: Rastreador Mecânico - Detector de Movimentos..............................................................................4
Figura 3: Andy Serkis. Captura de movimento para o personagem golum do filme Senhor dos Anéis.............7
Figura 4: Rastreador inside-out........................................................................................................................8
Figura 5: Operadores de diferenciação aplicados sobre uma função que modela a mudança brusca de níveis
de cinza...........................................................................................................................................................12
Figura 6: Luva com Medidor de Luminosidade...............................................................................................14
Figura 7: Luva com Esqueleto Externo............................................................................................................15
Figura 8: Wii Remote......................................................................................................................................15
Figura 9: Barra de Sensor................................................................................................................................16
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
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
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
Figura 1: Rastreador Mecânico “MicroScribe”




                                 Figura 2: Rastreador Mecânico - Detector
                                 de Movimentos




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
•   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
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
Figura 3: Andy Serkis. Captura de movimento para o personagem golum do filme Senhor dos Anéis

             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 4: Rastreador inside-out




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
•     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
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
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
correspondem à primeira derivada, e o laplaciano, correspondente a segunda derivada [8].




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




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
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
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.




                    Figura 6: Luva com Medidor de Luminosidade




                                                                                                  14
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].




                          Figura 7: Luva com Esqueleto Externo




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.




                       Figura 8: Wii Remote



                                                                                              15
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].




             Figura 9: Barra de Sensor

           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
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
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
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
[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

Weitere ähnliche Inhalte

Was ist angesagt?

Monografia - Engenharia de software baseada em modelos um estudo sobre WebML ...
Monografia - Engenharia de software baseada em modelos um estudo sobre WebML ...Monografia - Engenharia de software baseada em modelos um estudo sobre WebML ...
Monografia - Engenharia de software baseada em modelos um estudo sobre WebML ...Gabriel Cabral
 
LIVRO PROPRIETÁRIO - FUNDAMENTOS DE REDES DE COMPUTADORES
LIVRO PROPRIETÁRIO - FUNDAMENTOS DE REDES DE COMPUTADORESLIVRO PROPRIETÁRIO - FUNDAMENTOS DE REDES DE COMPUTADORES
LIVRO PROPRIETÁRIO - FUNDAMENTOS DE REDES DE COMPUTADORESOs Fantasmas !
 
Apostila informatica basica pronatec
Apostila informatica basica   pronatecApostila informatica basica   pronatec
Apostila informatica basica pronatecThales Menezes
 
Visão artificial
Visão artificialVisão artificial
Visão artificialPedrolobo8
 
LIVRO PROPRIETÁRIO - INOVAÇÃO TECNOLÓGICA E EMPREENDEDORISMO
LIVRO PROPRIETÁRIO - INOVAÇÃO TECNOLÓGICA E EMPREENDEDORISMOLIVRO PROPRIETÁRIO - INOVAÇÃO TECNOLÓGICA E EMPREENDEDORISMO
LIVRO PROPRIETÁRIO - INOVAÇÃO TECNOLÓGICA E EMPREENDEDORISMOOs Fantasmas !
 
Study about Models of Computatoin for describing Digital Systems
Study about Models of Computatoin for describing Digital SystemsStudy about Models of Computatoin for describing Digital Systems
Study about Models of Computatoin for describing Digital Systemsijeukens
 
Texto base -_metodologia_de_pesquisa_aplicada
Texto base -_metodologia_de_pesquisa_aplicadaTexto base -_metodologia_de_pesquisa_aplicada
Texto base -_metodologia_de_pesquisa_aplicadaVerandir Araujo
 
Como montar um provedor de acesso a internet
Como montar um provedor de acesso a internetComo montar um provedor de acesso a internet
Como montar um provedor de acesso a internetJorge Santos
 
Manual do Usuario.pdf
Manual do Usuario.pdfManual do Usuario.pdf
Manual do Usuario.pdfZenildaDurci1
 
Apostila introducao informatica
Apostila introducao informaticaApostila introducao informatica
Apostila introducao informaticaGabriel Sipriano
 
Apostila fireworks-cs5
Apostila fireworks-cs5Apostila fireworks-cs5
Apostila fireworks-cs5aulaemvideo
 

Was ist angesagt? (19)

Monografia - Engenharia de software baseada em modelos um estudo sobre WebML ...
Monografia - Engenharia de software baseada em modelos um estudo sobre WebML ...Monografia - Engenharia de software baseada em modelos um estudo sobre WebML ...
Monografia - Engenharia de software baseada em modelos um estudo sobre WebML ...
 
LIVRO PROPRIETÁRIO - FUNDAMENTOS DE REDES DE COMPUTADORES
LIVRO PROPRIETÁRIO - FUNDAMENTOS DE REDES DE COMPUTADORESLIVRO PROPRIETÁRIO - FUNDAMENTOS DE REDES DE COMPUTADORES
LIVRO PROPRIETÁRIO - FUNDAMENTOS DE REDES DE COMPUTADORES
 
Livro Completo sobre Maple
Livro Completo sobre MapleLivro Completo sobre Maple
Livro Completo sobre Maple
 
Apostila informatica basica pronatec
Apostila informatica basica   pronatecApostila informatica basica   pronatec
Apostila informatica basica pronatec
 
Orientação em c++
Orientação em c++Orientação em c++
Orientação em c++
 
Visão artificial
Visão artificialVisão artificial
Visão artificial
 
LIVRO PROPRIETÁRIO - INOVAÇÃO TECNOLÓGICA E EMPREENDEDORISMO
LIVRO PROPRIETÁRIO - INOVAÇÃO TECNOLÓGICA E EMPREENDEDORISMOLIVRO PROPRIETÁRIO - INOVAÇÃO TECNOLÓGICA E EMPREENDEDORISMO
LIVRO PROPRIETÁRIO - INOVAÇÃO TECNOLÓGICA E EMPREENDEDORISMO
 
Study about Models of Computatoin for describing Digital Systems
Study about Models of Computatoin for describing Digital SystemsStudy about Models of Computatoin for describing Digital Systems
Study about Models of Computatoin for describing Digital Systems
 
Texto base -_metodologia_de_pesquisa_aplicada
Texto base -_metodologia_de_pesquisa_aplicadaTexto base -_metodologia_de_pesquisa_aplicada
Texto base -_metodologia_de_pesquisa_aplicada
 
Relatório técnico i fc 29-07
Relatório técnico i   fc 29-07Relatório técnico i   fc 29-07
Relatório técnico i fc 29-07
 
Manual getic 23-out_09
Manual getic 23-out_09Manual getic 23-out_09
Manual getic 23-out_09
 
Introdução ao SciLab
Introdução ao SciLabIntrodução ao SciLab
Introdução ao SciLab
 
Photoshop cs3
Photoshop cs3Photoshop cs3
Photoshop cs3
 
Como montar um provedor de acesso a internet
Como montar um provedor de acesso a internetComo montar um provedor de acesso a internet
Como montar um provedor de acesso a internet
 
Manual do Usuario.pdf
Manual do Usuario.pdfManual do Usuario.pdf
Manual do Usuario.pdf
 
Apostila introducao informatica
Apostila introducao informaticaApostila introducao informatica
Apostila introducao informatica
 
Manual epson
Manual epsonManual epson
Manual epson
 
Apostila fireworks-cs5
Apostila fireworks-cs5Apostila fireworks-cs5
Apostila fireworks-cs5
 
Advpl completo
Advpl completo Advpl completo
Advpl completo
 

Andere mochten auch

Sistemas+operacionais+ +tanenbaum+-+2+ed+%28pt-br%29
Sistemas+operacionais+ +tanenbaum+-+2+ed+%28pt-br%29Sistemas+operacionais+ +tanenbaum+-+2+ed+%28pt-br%29
Sistemas+operacionais+ +tanenbaum+-+2+ed+%28pt-br%29Yuri Dantas
 
Os maiores riscos de segurança
Os maiores riscos de segurançaOs maiores riscos de segurança
Os maiores riscos de segurançaYuri Dantas
 
1001 greatest quotation
1001 greatest quotation1001 greatest quotation
1001 greatest quotationSantosh Mote
 
Small business man
Small business manSmall business man
Small business manepaqgz
 
Redes e Servidores Linux - Guia Prático - Carlos E. Morimoto
Redes e Servidores Linux - Guia Prático - Carlos E. MorimotoRedes e Servidores Linux - Guia Prático - Carlos E. Morimoto
Redes e Servidores Linux - Guia Prático - Carlos E. MorimotoHeber Gutenberg
 
the-a-z-of-management-concepts-and-models
the-a-z-of-management-concepts-and-modelsthe-a-z-of-management-concepts-and-models
the-a-z-of-management-concepts-and-modelsnguyendodlong
 
Livro Programação em Shell 8 edição Julio Cézar Nevez
Livro Programação em Shell 8 edição   Julio Cézar NevezLivro Programação em Shell 8 edição   Julio Cézar Nevez
Livro Programação em Shell 8 edição Julio Cézar NevezSoftD Abreu
 
Programming language design_concepts
Programming language design_conceptsProgramming language design_concepts
Programming language design_conceptsYuri Dantas
 
Técnicas hacker soluções para segurança 1
Técnicas hacker soluções para segurança 1Técnicas hacker soluções para segurança 1
Técnicas hacker soluções para segurança 1ponto hacker
 
Livro curso de_hacker_para_iniciantes_cap_1
Livro curso de_hacker_para_iniciantes_cap_1Livro curso de_hacker_para_iniciantes_cap_1
Livro curso de_hacker_para_iniciantes_cap_1Alax Ricard
 
Livro proibido do curso de hacker completo 285 páginas 71
Livro proibido do curso de hacker completo 285 páginas 71Livro proibido do curso de hacker completo 285 páginas 71
Livro proibido do curso de hacker completo 285 páginas 71Guilherme Dias
 

Andere mochten auch (13)

Sistemas+operacionais+ +tanenbaum+-+2+ed+%28pt-br%29
Sistemas+operacionais+ +tanenbaum+-+2+ed+%28pt-br%29Sistemas+operacionais+ +tanenbaum+-+2+ed+%28pt-br%29
Sistemas+operacionais+ +tanenbaum+-+2+ed+%28pt-br%29
 
Wealth e book
Wealth e bookWealth e book
Wealth e book
 
Os maiores riscos de segurança
Os maiores riscos de segurançaOs maiores riscos de segurança
Os maiores riscos de segurança
 
1001 greatest quotation
1001 greatest quotation1001 greatest quotation
1001 greatest quotation
 
Small business man
Small business manSmall business man
Small business man
 
Redes e Servidores Linux - Guia Prático - Carlos E. Morimoto
Redes e Servidores Linux - Guia Prático - Carlos E. MorimotoRedes e Servidores Linux - Guia Prático - Carlos E. Morimoto
Redes e Servidores Linux - Guia Prático - Carlos E. Morimoto
 
Handbook of business_strategy
Handbook of business_strategyHandbook of business_strategy
Handbook of business_strategy
 
the-a-z-of-management-concepts-and-models
the-a-z-of-management-concepts-and-modelsthe-a-z-of-management-concepts-and-models
the-a-z-of-management-concepts-and-models
 
Livro Programação em Shell 8 edição Julio Cézar Nevez
Livro Programação em Shell 8 edição   Julio Cézar NevezLivro Programação em Shell 8 edição   Julio Cézar Nevez
Livro Programação em Shell 8 edição Julio Cézar Nevez
 
Programming language design_concepts
Programming language design_conceptsProgramming language design_concepts
Programming language design_concepts
 
Técnicas hacker soluções para segurança 1
Técnicas hacker soluções para segurança 1Técnicas hacker soluções para segurança 1
Técnicas hacker soluções para segurança 1
 
Livro curso de_hacker_para_iniciantes_cap_1
Livro curso de_hacker_para_iniciantes_cap_1Livro curso de_hacker_para_iniciantes_cap_1
Livro curso de_hacker_para_iniciantes_cap_1
 
Livro proibido do curso de hacker completo 285 páginas 71
Livro proibido do curso de hacker completo 285 páginas 71Livro proibido do curso de hacker completo 285 páginas 71
Livro proibido do curso de hacker completo 285 páginas 71
 

Ähnlich wie Análise teórica sobre tipos de rastreamento

Ar tool kit-cap6-2004
Ar tool kit-cap6-2004Ar tool kit-cap6-2004
Ar tool kit-cap6-2004caetano_selva
 
Iptables
IptablesIptables
IptablesTiago
 
Inseto robo
Inseto roboInseto robo
Inseto roboedycar5
 
Javascript
JavascriptJavascript
JavascriptTiago
 
Programacao gtk
Programacao gtkProgramacao gtk
Programacao gtkTiago
 
Monitoramento
MonitoramentoMonitoramento
MonitoramentoTiago
 
Linguagem c
Linguagem cLinguagem c
Linguagem cTiago
 
Python gtk
Python gtkPython gtk
Python gtkTiago
 
Plano de Projeto de Software para o desenvolvimento do SIGE (Sistema de Geren...
Plano de Projeto de Software para o desenvolvimento do SIGE (Sistema de Geren...Plano de Projeto de Software para o desenvolvimento do SIGE (Sistema de Geren...
Plano de Projeto de Software para o desenvolvimento do SIGE (Sistema de Geren...Igor Costa
 
Inkscape
InkscapeInkscape
InkscapeTiago
 
Java basico
Java basicoJava basico
Java basicoTiago
 
Jspservlets
JspservletsJspservlets
JspservletsTiago
 
Intro redes
Intro redesIntro redes
Intro redesTiago
 
Localização de uma Central Nuclear em Portugal Continental
Localização de uma Central Nuclear em Portugal ContinentalLocalização de uma Central Nuclear em Portugal Continental
Localização de uma Central Nuclear em Portugal ContinentalNimble Portal Consulting
 
Drivers de dispostivos_linux
Drivers de dispostivos_linuxDrivers de dispostivos_linux
Drivers de dispostivos_linuxTiago
 
antonio inacio ferraz-Eletronicadigital-técnico em eletronica-colégio cruzeir...
antonio inacio ferraz-Eletronicadigital-técnico em eletronica-colégio cruzeir...antonio inacio ferraz-Eletronicadigital-técnico em eletronica-colégio cruzeir...
antonio inacio ferraz-Eletronicadigital-técnico em eletronica-colégio cruzeir...ANTONIO INACIO FERRAZ
 
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.ANTONIO INACIO FERRAZ
 
Almeida marisley hirinea_de
Almeida marisley hirinea_deAlmeida marisley hirinea_de
Almeida marisley hirinea_deFares Mafros
 

Ähnlich wie Análise teórica sobre tipos de rastreamento (20)

Ar tool kit-cap6-2004
Ar tool kit-cap6-2004Ar tool kit-cap6-2004
Ar tool kit-cap6-2004
 
Iptables
IptablesIptables
Iptables
 
Inseto robo
Inseto roboInseto robo
Inseto robo
 
Javascript
JavascriptJavascript
Javascript
 
Programacao gtk
Programacao gtkProgramacao gtk
Programacao gtk
 
Monitoramento
MonitoramentoMonitoramento
Monitoramento
 
Linguagem c
Linguagem cLinguagem c
Linguagem c
 
Python gtk
Python gtkPython gtk
Python gtk
 
Plano de Projeto de Software para o desenvolvimento do SIGE (Sistema de Geren...
Plano de Projeto de Software para o desenvolvimento do SIGE (Sistema de Geren...Plano de Projeto de Software para o desenvolvimento do SIGE (Sistema de Geren...
Plano de Projeto de Software para o desenvolvimento do SIGE (Sistema de Geren...
 
Inkscape
InkscapeInkscape
Inkscape
 
Java basico
Java basicoJava basico
Java basico
 
Jspservlets
JspservletsJspservlets
Jspservlets
 
Intro redes
Intro redesIntro redes
Intro redes
 
Localização de uma Central Nuclear em Portugal Continental
Localização de uma Central Nuclear em Portugal ContinentalLocalização de uma Central Nuclear em Portugal Continental
Localização de uma Central Nuclear em Portugal Continental
 
Drivers de dispostivos_linux
Drivers de dispostivos_linuxDrivers de dispostivos_linux
Drivers de dispostivos_linux
 
Mrtg
MrtgMrtg
Mrtg
 
antonio inacio ferraz-Eletronicadigital-técnico em eletronica-colégio cruzeir...
antonio inacio ferraz-Eletronicadigital-técnico em eletronica-colégio cruzeir...antonio inacio ferraz-Eletronicadigital-técnico em eletronica-colégio cruzeir...
antonio inacio ferraz-Eletronicadigital-técnico em eletronica-colégio cruzeir...
 
Eletronica digital
Eletronica digitalEletronica digital
Eletronica digital
 
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
 
Almeida marisley hirinea_de
Almeida marisley hirinea_deAlmeida marisley hirinea_de
Almeida marisley hirinea_de
 

Análise teórica sobre tipos de rastreamento

  • 1. 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
  • 2. 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.
  • 3. Sumário Introduçã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
  • 4. Índice de Figuras Figura 1: Rastreador Mecânico “MicroScribe”..................................................................................................4 Figura 2: Rastreador Mecânico - Detector de Movimentos..............................................................................4 Figura 3: Andy Serkis. Captura de movimento para o personagem golum do filme Senhor dos Anéis.............7 Figura 4: Rastreador inside-out........................................................................................................................8 Figura 5: Operadores de diferenciação aplicados sobre uma função que modela a mudança brusca de níveis de cinza...........................................................................................................................................................12 Figura 6: Luva com Medidor de Luminosidade...............................................................................................14 Figura 7: Luva com Esqueleto Externo............................................................................................................15 Figura 8: Wii Remote......................................................................................................................................15 Figura 9: Barra de Sensor................................................................................................................................16
  • 5. 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
  • 6. 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
  • 7. 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
  • 8. Figura 1: Rastreador Mecânico “MicroScribe” Figura 2: Rastreador Mecânico - Detector de Movimentos 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
  • 9. 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
  • 10. 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
  • 11. Figura 3: Andy Serkis. Captura de movimento para o personagem golum do filme Senhor dos Anéis 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
  • 12. Figura 4: Rastreador inside-out 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
  • 13. 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
  • 14. 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
  • 15. 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
  • 16. correspondem à primeira derivada, e o laplaciano, correspondente a segunda derivada [8]. Figura 5: Operadores de diferenciação aplicados sobre uma função que modela a mudança brusca de níveis de cinza 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
  • 17. 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
  • 18. 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. Figura 6: Luva com Medidor de Luminosidade 14
  • 19. 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]. Figura 7: Luva com Esqueleto Externo 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. Figura 8: Wii Remote 15
  • 20. 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]. Figura 9: Barra de Sensor 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
  • 21. 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
  • 22. 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
  • 23. 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
  • 24. [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