Você está na página 1de 5

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/333381536

CONTROLE DO CURSOR DO MOUSE PELO MOVIMENTO DA CABEÇA USANDO


CÂMERA CCD E PROCESSAMENTO DE IMAGEM

Conference Paper · January 2004

CITATIONS READS

5 250

4 authors, including:

Jefferson Osowsky Humberto Gamba


Instituto de Estudos do Mar Almirante Paulo Moreira (IEAPM) Federal University of Technology - Paraná/Brazil (UTFPR)
34 PUBLICATIONS   74 CITATIONS    111 PUBLICATIONS   715 CITATIONS   

SEE PROFILE SEE PROFILE

Percy Nohama
Pontifícia Universidade Católica do Paraná (PUC-PR)
287 PUBLICATIONS   1,415 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Biomedical Instrument View project

Salient region detection View project

All content following this page was uploaded by Jefferson Osowsky on 25 May 2019.

The user has requested enhancement of the downloaded file.


CONTROLE DO CURSOR DO MOUSE PELO MOVIMENTO DA CABEÇA
USANDO CÂMERA CCD E PROCESSAMENTO DE IMAGEM
N. Dias, J. Osowsky, H. R. Gamba e P. Nohama

CEFET-PR/CPGEI, Curitiba, Brasil

e-mail: nelise@cpgei.cefetpr.br

Abstract: This paper presents a Human-Machine Materiais e Métodos


Interface (HMI) for quadriplegic people. The
developed system controls the position of the mouse A Figura 1 apresenta um esboço do sistema IHM.
cursor by the head movement. Its controller is based on Para simplificar o algoritmo de PDI, responsável pela
an online digital image processing of the position of the análise dos movimentos da cabeça, colocou-se no centro
user´s head sat down in front of a computer monitor. A da testeira um círculo de cor azul. O círculo é utilizado
circular blue tag drawn on the user forehead is used as como referência da posição da cabeça do usuário. Um
a reference of the head position. A color CCD video aplicativo de PDI segmenta cada imagem capturada e
camera installed on the monitor acquires images of the determina as coordenadas do centróide deste círculo. O
head and sends them to the computer. The centre movimento do mouse é, então, determinado
coordinates of the blue tag are the reference for the observando-se as coordenadas sucessivas do centróide
mouse cursor movement, which are determined using em relação à coordenada inicial, a qual é tomada como
the HSI colour model and Hough Transform. referência.
Palavras Chaves: Tetraplegia, processamento de imagem,
comunicação alternativa, interface homem-máquina.

Introdução

Segundo a National Spinal Cord Injury Association,


entre 250.000 e 400.000 americanos apresentam algum
tipo de lesão na medula espinhal, sendo a maior causa
dessas lesões os acidentes com veículos automotivos.
Desse total, 48,7% dos indivíduos adquirem tetraplegia,
ou seja, paralisia de membros superiores e inferiores [1].
Em geral, devido à falta de dispositivos de apoio, os
indivíduos tetraplégicos não utilizam computadores,
pois não conseguem manusear os dois principais
Figura 1: Sistema para controlar o cursor do mouse pelo
periféricos de entrada de dados (teclado e mouse).
movimento da cabeça do usuário.
Visando ampliar o acesso desses indivíduos aos
computadores, vários grupos de pesquisa vêm
Conforme ilustra a Figura 2, qualquer movimento
desenvolvendo periféricos alternativos para entrada de
horizontal ( ∆x ) e/ou vertical ( ∆y ) da cabeça altera as
dados ou emuladores dos dispositivos padrão [2], [3],
[4], [5] e [6]. coordenadas do centróide do círculo. Esta mudança
Neste artigo, apresenta-se um mouse controlado pelo afeta, proporcionalmente, a posição do cursor do mouse
movimento da cabeça do usuário em frente ao na tela do computador. A coordenada inicial do
computador. Trata-se de um sistema que utiliza uma centróide do círculo ( x 0 , y 0 ) é calculada quando o
câmera do vídeo colorida instalada sobre o monitor, usuário está posicionado com a cabeça reta olhando para
uma testeira esportiva colocada na cabeça do usuário e o centro da tela. Esta coordenada inicial é então
um aplicativo de processamento digital de imagens relacionada com as coordenadas do cursor do mouse
(PDI) para processar as imagens provenientes da câmera ( x1 , y1 ) , as quais são referenciadas ao centro do
de vídeo. Um microfone e um sistema de monitor. As diferenças nas coordenadas do centróide do
reconhecimento de voz são utilizados para ativar os círculo são calculadas a cada quadro de imagem
comandos do mouse (clique simples e duplo e arrastar- adquirido. Quando o usuário movimenta a cabeça, surge
soltar). uma diferença dx e/ou dy na coordenada do centróide do
Sistemas para Interface Homem-Máquina (IHM) círculo em relação à coordenada inicial que pode ser
semelhantes a esse são descritos em [7], [8], [9], [10] e [11]. negativa ou positiva, dependendo da direção do
movimento da cabeça.

IFMBE Proc. 2004; 5(1): 441-444 441 III CLAEB, João Pessoa 2004
Figura 2: Reflexo do movimento da cabeça do usuário sobre o cursor do mouse. Uma diferença dx no centróide é
relacionada a um deslocamento α dx no cursor e uma diferença dy causa um deslocamento β dy. As constantes α e β
determinam a sensibilidade do sistema.

Cada diferença dx e/ou dy no centróide do círculo saturação e I a intensidade ou brilho do pixel analisado
azul está relacionada a um deslocamento α dx e/ou [12].
β dy no cursor do mouse, respectivamente. As
constantes α e β determinam a sensibilidade do
sistema. Com valores altos o cursor tem movimentos
bruscos (sensibilidade baixa) e com valores baixos,
movimentos finos (sensibilidade alta).
O microfone posicionado à frente do usuário ativa o
sistema de reconhecimento de voz que está configurado
para atender a quatro comandos de ações dos botões do Figura 3: Técnicas de PDI do sistema projetado para
mouse: localizar o centróide do círculo azul colocado na cabeça
• clique simples: clique simples com o botão do usuário.
esquerdo do mouse;
• clique duplo: clique duplo com o botão
esquerdo do mouse;
• pressione: pressione e mantenha pressionado o
botão esquerdo do mouse;
• solte: libere o botão esquerdo do mouse.

A combinação das duas últimas ações resulta na


ação arrastar-soltar.
As imagens (quadros) provenientes da câmera de
vídeo são digitalizadas por uma placa de captura de
sinal de vídeo (frame grabber) e enviadas para o
computador para que sejam processadas através de
técnicas de PDI. O resultado final é a coordenada do
centróide do círculo azul para este quadro. Esse valor
em conjunto com a coordenada do quadro anterior
determinam dx e dy e, conseqüentemente, α dx e β dy,
possibilitando o deslocamento do cursor do mouse na
direção desejada. A Figura 3 apresenta o diagrama em
blocos da parte computacional do sistema.
A Segmentação da Cor Azul na imagem tem por
objetivo a eliminação de todas as demais informações
presentes que não são relevantes para a localização do Figura 4: Modelos de Cor: RGB e HSI.
centróide do círculo.
O primeiro passo no processo envolve a conversão Essa conversão é realizada porque o modelo de cor
dos pixels do modelo padrão de cores RGB (R- HSI torna o processamento de imagens coloridas mais
vermelho, G-verde e B-azul) para o modelo HSI, Figura simples, já que este modelo se assemelha ao método de
4, onde H representa o matiz da cor (cor pura), S a percepção de cores dos seres humanos, fato não inerente
ao modelo RGB [13].

IFMBE Proc. 5(1) 442 CLAEB’2004


O valor do matiz do pixel é dado em graus, sendo As imagens capturadas possuem resolução de 320
que 0º significa vermelho, 60º amarelo, 120º verde, e pixels de largura por 240 pixels de altura e padrão de
assim por diante. Na imagem binária resultante pixels cor RGB.
são marcados com preto se tiverem matizes próximos de Foi incorporado ao aplicativo o sistema de
240º. Caso contrário, são marcados com branco. reconhecimento de voz da Microsoft chamado
A Transformada de Hough [14] Circular [15] e [16] MS-Speech SDK versão 5.1 [17].
utiliza imagens binarizadas contendo objetos na cor
preta para reconhecer e localizar formas geométricas Resultados
circulares que são identificadas através da Equação 1:
A Figura 6 apresenta a seqüencia de imagens obtidas
ρ = K ± k2 − C ∀ k 2 − C ≥ 0 e ρ ≥0 (1) após cada etapa de processamento. A Figura 6(a) mostra
a imagem original, colorida, capturada pela câmera de
onde, K = x ⋅ cos (θ ) + y ⋅ sin (θ ) ∀ θ min ≤ θ ≤ θ max vídeo. A Figura 6(b) mostra o resultado do algoritmo de
e C = x 2 + y 2 − r 2 ∀ rmin ≤ r ≤ rmax . segmentação da cor azul, onde tanto o livro sendo
segurado por uma segunda pessoa quanto o círculo na
A coordenada ( x, y ) faz referência a qualquer pixel testa do usuário são azuis. A Figura 6(c) mostra a
imagem obtida após a aplicação da Transformada de
preto na imagem. A variável r representa o raio do Hough para objetos circulares.
círculo a ser localizado que deve variar de acordo com
as dimensões da imagem. A distância ρ e o ângulo θ
representam a coordenada polar do centroíde do círculo
em relação à posição (0,0) da imagem, como mostrado
na Figura 5. As constantes θ min e θ max são definidas
com base na posição do círculo a ser localizado.

Figura 6: Resultado das etapas de processamento de


imagens. (a) imagem original; (b) imagem após a
segmentação da cor azul e (c) após a aplicação da
Transformada de Hough.

O tempo de processamento de todas as etapas do


sistema, da captura do quadro ao deslocamento do
cursor, foi inferior a 66ms possibilitando uma taxa de
captura de 15 quadros por segundo. Esta taxa foi
alcançada quando se utilizava o sistema operacional
Figura 5: Identificação de uma forma geométrica
MS-Windows 2000. Com o MS-Windows 98 SE
circular através de três parâmetros ( ρ ,θ , r ) utilizando a esta taxa caiu para 10 quadros por segundo.
Transformada de Hough. Uma vez que o sistema de reconhecimento de voz
MS-Speech tenha armazenado na sua base de dados o
O resultado dessa transformada é armazenado em treinamento da voz do usuário, a taxa de acerto dos
uma matriz 3D, onde r, ρ e θ representam cada uma comandos alcançou 95%.
das dimensões da matriz. De acordo com a definição da
Transformada de Hough [14], os elementos de Discussão
coordenada ( ρ ,θ , r ) que tiverem valores mais elevados
definem um círculo de raio r e coordenada do centróide Na segmentação da cor azul a adoção apenas do
( ρ ,θ ) . O processamento é finalizado convertendo-se matiz (H) como classificador do que é objeto e do que
não é mostrou-se pouco eficiente, pois podem existir
esta coordenada para a representação retangular, pixels que tendam à cor branca, cujo matiz é azul. Isto é,
( xc , y c ) . esses pixels possuem matiz azul, porém estão com baixa
O aplicativo desenvolvido neste projeto para o saturação (S). O mesmo pode ocorrer com pixels que
processamento das imagens foi implementado em tendem ao preto, possuindo matiz azul, porém com
linguagem de programação C++ para a plataforma baixa luminosidade (I). O melhor desempenho ocorreu
Windows 95 ou superior, sendo executado num quando se utiliza H como classificador principal e S e I
computador com processador Pentium IV 1,7 GHz e como classificadores secundários.
256 MBytes de memória RAM. Utilizou-se uma câmera Com a taxa de captura de 15 quadros por segundo é
de vídeo CCD colorida padrão NTSC modelo WAT- possível acompanhar o cursor do mouse sem
202B da Watec, Inc. e uma placa de captura de sinal de defasamento temporal no seu deslocamento, isto é, o
vídeo, modelo CPH050 da TView, Inc. movimento da cabeça do indivíduo gera, “em tempo
real”, o deslocamento do cursor.

IFMBE Proc. 5(1) 443 CLAEB’2004


A diferença na taxa de captura de quadros entre as IEEE Transactions on Neural Systems and
duas versões do sistema operacional se deve ao fato do Rehabilitation Engineering 12(1):102-111, 2004.
MS-Windows 2000 operar completamente em 32-bits,
o que não ocorre com o MS-Windows 98 SE que em [7] MARSIC, I., MEDL, A. and FLANAGAN, J., “Natural
muitas ocasiões opera em 16-bits [18]. communication with Information Systems”,
Para simplificar e reduzir o tempo de implementação Proceedings of the IEEE, 88(8):1354-1366, 2000.
deste sistema de controle do mouse, seus quatro
comandos de voz: click, double click, drag e drop são [8] ESAKI, S., EBISAWA, Y., SUGIOKA, A. and KONISHI,
pronunciados na língua inglesa. Contudo sua próxima M., ‘Quick menu selection using eye blink for eye-
versão reconhecerá comandos falados em português. slaved nonverbal communication with video-based
eye-gaze detection’, Proceedings of 19th Annual
Conclusão International Conference of the IEEE/EMBS,
Chicago, USA, 1997, pp. 2322-2325, 1997.
Neste artigo descreveu-se um mouse controlado pelo
movimento da cabeça e por comando de voz. Este [9] KATO, M. and SATO, J., ‘Visual interface from
sistema tem como meta principal permitir a reinclusão uncalibrated cameras for unknown displays’,
de pessoas tetraplégias no ambiente informatizado que Proceedings of 15th International Conference on
hoje se vive. Seus componentes, câmera de vídeo CCD Pattern Recognition, Barcelona, Espanha, 2000, pp.
colorida padrão NTSC, placa de captura de sinal de 428-431, 2000.
vídeo (frame grabber), placa de som, microfone e
testeira, são de baixo custo permitindo que indivíduos [10] BEACH, G., COHEN, C. J., BRAUN, J. and MOODY,
comuns e instituições de ajuda à pessoas com G., ‘Eye tracker system for use with head mounted
necessidades especiais possam adquirir tal sistema. displays’, Proceedings of the IEEE International
Conference on Systems, Man, and Cybernetics, San
Agradecimentos Diego, USA, 1998, pp. 4348-4352, 1998.

Os integrantes deste projeto agradecem ao CNPq [11] SOUZA, M. N., FOGGIATTO, A., OSOWSKY, J.
pelas bolsas de pesquisa fornecidas e pelo apoio NOHAMA, P. and GAMBA, H. R., ‘Mouse ontrolado
financeiro (processo 552265/01-2). pelo movimento do olho’, Anais do XVIII Congresso
Brasileiro de Engenharia Biomédica, São José dos
Referências Campos, Brasil, 2002, 5: pp. 232-236, 2002.

[1] NSCIA, Internet site address: www.spinalcord.org [12] UMBAUGH, S. E., Computer Vision and Image
acessado em 08/04/2003. Processing: a practical approach using CVIPtools,
Prentice Hall PTR, 1999.
[2] ABOU-ALI, A. and PORTER, W. A., ‘Man-machine
interface through eyeball direction gaze’, [13] GONZALEZ, R. C. and WOODS, R. E., Digital Image
Proceedings. of 25th South-eastern Symposium on Processing, Addison-Wesley Publishing, 1993.
System Theory, Cookeville, USA, 1997, pp. 478-
482, 1997. [14] PARKER, J. R., Algorithms for Image Processing
and Computer Vision, Wiley Computer Publishing,
[3] BALLARD, P. and STOCKMAN, G. C., ‘Computer 1997.
operation via face orientation’, Proceedings of 11th
IAPR International Conference on Pattern [15] KERBYSON, D. J. and ATHERTON, T. J., ‘Circle
Recognition, Hague, Holanda, 1992, pp. 407-410, detection using Hough transform filters’,
1992. Proceedings of 5th International Conference on
Image Processing and its Applications, Edinburgo,
[4] BALLARD, P. and STOCKMAN, G. C., “Controlling a UK, 1995, pp. 370-374, 1995.
computer via face aspect”, IEEE Transactions on
Systems, Man, and Cybernetics 24(4):669-677, [16] BULOT, R., BOI, J., SEQUEIRA, J. and CAPRIOGLIO,
1995. M., ‘Contour segmentation using Hough transform’,
Proceedings of the International Conference on
[5] CHEN, Y., TANG, F., CHANG, W. H., WONG, M., Image Processing, Lausanne, Suíça, 1996, 3:pp.
SHIH, Y. and KUO, T., “The new design of an 583-586, 1996.
infrared-controlled human-computer interface for
the disabled”, IEEE Transactions on Rehabilitation [17] Microsoft Speech Server, Internet site address:
Engineering 7(4):474-481, 1999. www.microsoft.com/speech acessado em 16/10/2003.

[6] LOPRESTI, E. F. and BRIENZA, D. M., “Adaptive [18] ONEY, W., Programming the Microsoft Windows
software for head-operated computer controls”, Driver Model, Microsoft Press, 1999.

IFMBE Proc. 5(1) 444 CLAEB’2004

View publication stats

Você também pode gostar