Você está na página 1de 7

Utilizao de um Sistema de Viso Computacional para o Controle de um Rob Mvel

Pedro Luiz de Paula Filho 1, Cleverson Junior Soares 2, ngelo Marcelo Tusset 3
1

Universidade Federal do Paran - UFPR, Curitiba, Brasil, plpf2004@gmail.com


Universidade do Contestado - UnC, Canoinhas, Brasil, cleverson.js@uol.com.br
3
Universidade Tecnolgica Federal do Paran - UTFPR, Ponta Grossa, Brasil, a.m.tusset@gmail.com
2

Resumo: Mesmo com o avano nas reas de automao

e programao, fazer com que os robs autnomos


executem uma ou mais tarefas de maneira conjunta ainda
um dos grandes desafios da robtica. Neste trabalho
abordada a interao com um rob autnomo, envolvendo
Processamento de Imagens, Linguagens de Programao,
Projeto Assistido por Computador, Otimizao, Eletrnica,
etc. Os resultados demonstram a utilizao da viso
computacional no controle de um rob mvel, onde
imagens so capturadas de uma cmera e processadas,
possibilitando a identificao de obstculos e o ponto a ser
alcanado e utilizando-se a comunicao atravs de rdio
frequncia guiando o rob at seu destino.
Palavras Chave: Reconhecimento de Padro, Rob Mvel,
Viso Computacional.
1. INTRODUO
Com o grande crescimento tecnolgico, os robs
tornaram-se elementos fundamentais na manufatura
automatizada. Em funo do rpido avano da automao
nas diversas reas das atividades humanas, a utilizao de
robs tem se tornando cada vez mais comum,
principalmente em reas que exigem elevado grau de
preciso, confiabilidade e velocidade. Assim o estudo em
desenvolvimento nos sistemas de controle dos robs tem
crescido vertiginosamente nos ltimos anos, devido a quanto
mais complexa a tarefa executada pelo rob, mais
complexos so os algoritmos de controle. Atravs do
crescimento dos recursos computacionais que surgiram nas
ltimas dcadas foi possvel desenvolver robs capazes de
executar tarefas com grau de complexidade superior que os
robs anteriores, que eram restritos apenas a sistemas
mecnicos [1].
Neste contexto, o desenvolvimento de robs mveis de
extrema importncia tanto para pequenas como grandes
tarefas, como por exemplo, na explorao espacial, martima
ou mesmo ambientes desconhecidos que oferecem riscos a
vida de seres humanos [2] [3].
Existem duas vertentes para definir robs mveis, uma
considera o rob completo, auto-contido, autnomo, que
necessita de instrues apenas ocasionalmente, enquanto
que a segunda define rob como sendo qualquer
equipamento que se mova por seus prprios meios, com o
objetivo de executar tarefas prximas as humanas [4].

De acordo com [5] as duas definies levam a aceitar


que um rob mvel capaz de manobrar livremente em seu
ambiente, alcanando metas enquanto desvia de outros
obstculos.
Conforme [6] o primeiro rob mvel construdo e
reconhecido na bibliografia o Shakey, desenvolvido pelo
Stanford Research Institute, em 1968, e possua uma
variedade enorme de sensores, incluindo uma cmara de
vdeo e sensores de toque, binrios, e navegava entre as
salas do laboratrio, enviando sinais de rdio a um
computador DEC PDP-10, que permitia efetuar algumas
tarefas como, por exemplo, empurrar caixas e evitar
obstculos.
O interesse no desenvolvimento de pesquisas voltadas
para a rea de automao de processos atravs de sistemas
robticos tem o objetivo de melhorar a qualidade de
produtos com reduo de tempo [3]. Porm, para que isso
ocorra necessrio que estes sistemas tenham a capacidade
de tomar decises atravs de informaes extradas do
ambiente, garantindo uma autonomia. Para tanto a viso
computacional passa a ser uma grande aliada a tais sistemas.
Segundo [7] a viso computacional um assunto
complexo, pois comparando um sistema tcnico, com um
sistema biolgico, pode-se dividi-la em vrios mdulos
como visualizao, formao da imagem, controle da
irradiao, entre outros. Assim seu objetivo principal
prover ao computador as capacidades de percepo do
sistema visual humano em relao ao ambiente [8].
A viso computacional tem evoludo rapidamente,
produzindo ferramentas que permitem o entendimento das
informaes visuais, especialmente em cenas com estruturas
bem definidas [8].
Ela pode ser dividida em dois nveis de abstrao,
processamento digital de imagens (PDI) e anlise de
imagens. O PDI busca tcnicas para capturar, representar e
transformar imagens, permitindo extrair e identificar
informaes e melhorar a qualidade visual de certos
aspectos, melhorando a extrao de caractersticas que sero
usadas posteriormente. A anlise de imagens envolve
tcnicas como segmentao da imagem em regies de
interesse (ROI), descries dos objetos, reconhecimento e
classificao, usando imagens como entrada e produzindo
outro tipo de sada [9][10][11].
Neste trabalho os dois nveis de abstrao sero
empregados, onde o primeiro (PDI) ser til para captura e
segmentao da imagem e a analise das imagens permitir o
reconhecimento dos objetos (rob, obstculos e destino).
2. PROCESSAMENTO DIGITAL DE IMAGENS (PDI)

Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications
Serra Negra, SP - ISSN 2178-3667

817

Utilizao de um Sistema de Viso Computacional para o Controle de um Rob Mvel


Pedro Luiz de Paula Filho, Cleverson Junior Soares, ngelo Marcelo Tusset

O desenho do modelo de cor HSI reflete a forma em que os


humanos vem a cor, e isso passa a oferecer vantagens para
seu uso em processamento digital de imagens [15].
O Matiz representa qual cor do modelo a
predominante, j a saturao representa a pureza da cor, o
quanto existe de adio de branco a matiz e o valor
representa a quantidade de brilho presente na cor [12].

Segundo [9] PDI representa um conjunto de tcnicas


voltadas para a anlise de dados adquiridos por diversos
tipos de sensores. Ou ainda, a manipulao de uma
imagem por computador de modo onde a entrada e a sada
do processo so imagens. Atravs dele, pode-se analisar e
modificar imagens com o objetivo de extrair informaes,
reconhecer, comparar e classificar elementos que a
compem. Transformar uma imagem buscando aumentar
seu contraste, realar bordas e corrigir imperfeies, como
rudo, por exemplo, so aplicaes que tem como objetivo
fornecer subsdios para interpretaes em viso
computacional.
Uma imagem pode ser representada por uma funo
bidimensional z F ( x, y ) definida em uma determinada
regio de um plano. Ela representada atravs de um
conjunto de valores, onde cada valor um nmero que
descreve os atributos de um pixel na imagem.
Um sistema de PDI pode ser dividido em seis etapas:
aquisio, pr-processamento, segmentao, representao e
descrio, reconhecimento e interpretao e resultado [9].
O pr-processamento refere-se ao processamento inicial
dos dados brutos, correo de distores geomtricas e
remoo de rudo. Sua principal funo melhorar a
imagem para que possa ser usada com sucesso nos processos
seguintes. O pr-processamento envolve tcnicas para o
realce de contrastes, remoo de rudo e isolamento de
regies [9][10][11].
A segmentao a responsvel por dividir uma imagem
de entrada em partes. No caso deste projeto a separao do
rob, meta e obstculos do fundo da imagem. A
representao e descrio apenas parte da soluo para
transformar os dados iniciais numa forma adequada para o
prximo passo do processamento computacional. O
processo de descrio procura extrair caractersticas que
resultem em alguma informao de interesse para o melhor
processamento da imagem. O processo de reconhecimento
o responsvel por atribuir um nome a um objeto, baseado na
informao fornecida pelo seu descritor. A identificao
envolve a atribuio de significado a um conjunto de objetos
reconhecidos [9][10][11].
Segundo [11], no momento da aquisio, uma cena real
tridimensional convertida por um dispositivo de aquisio
em uma representao 2D levando-se em conta uma funo
f(x,y) que descreve a energia luminosa em uma coordenada
espacial (x,y). O dispositivo de aquisio mais usado
atualmente a cmera CCD (Charge Couple Device) e
atravs de um conjunto de prismas e filtros, decompe a
imagem em componentes de R (red), G (green) e B (blue).
A juno desses componentes gera o sistema de cor
RGB que um dos espaos mais comuns, de formao
aditiva, utilizado em cmeras e monitores de vdeo, e
baseado na teoria de viso colorida tricromtica de YoungHelmholtz [12].
Porm este no o nico dos canais de cores, e outro
canal bastante usado em viso computacional o HSI (Hue,
Saturation and Intensity) [13], sendo normalmente
vinculado a pintores por utilizar trs componentes presentes
em diversas tcnicas de pintura: Matiz, Saturao e
Iluminao [12]. Apesar de no ser perceptualmente
uniforme seu uso interessante por conter informaes que
so perceptveis e discriminantes para um observador [14].

3. METODOLOGIA
Para realizao prtica foi desenvolvido um prottipo de
rob mvel (Fig. 1a), a partir de imagens capturadas por
uma cmera e processadas por um software utilizando
tcnicas de processamento de imagens, onde os comandos
so transmitidos do computador para o rob mvel atravs
de rdio frequncia.
O software foi desenvolvido em linguagem de
programao C++, atravs do ambiente CBuilder e uma
biblioteca denominada OpenCV. A alimentao do rob foi
realizada atravs de duas baterias 6V de 4,5 A, ligadas em
srie. Para a movimentao foi utilizado um circuito Ponte
H para controlar os motores do rob, sendo utilizado na
construo da ponte H 4 rels 12V de 15A, 4 transistores
BD 137, 4 capacitores de 10K, e 4 diodos IN4007 (Fig
1b), que acionam os dois motores DC com reduo de
tenso nominal de 12V, com rotao de 44 rpm, consumo de
corrente de 0,41.

(a) Rob construdo.

(b) Ponte H.

Fig. 1. Prottipo utilizado nas simulaes: (a) Rob construdo; (b)


Ponte H

O sistema de comunicao sem fio por rdio freqncia


tem transmisso de quatro canais com freqncia de
operao de 27 MHz. O receptor funciona com alimentao
de tenso de 6V, j o transmissor funciona com tenso de
9V. Para o circuito de interface do receptor RF com o
circuito Ponte H foram utilizados 4 rels de 5V 2A.

Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications
Serra Negra, SP - ISSN 2178-3667

818

Quando a imagem foi capturada em um ambiente com


excesso de claridade o processamento da imagem ficou
comprometido, surgindo muitos rudos nos objetos a ser
analisados. Nos testes realizados, o sistema demonstrou
bons resultados comportando-se de forma satisfatria a
partir do canal HSV, principalmente com o canal da
saturao que alcanou melhor resultado no reconhecimento
dos objetos da imagem e nas correes das imagens e
correes de rudo, mesmo utilizando uma cmera comum
de baixa resoluo. Em funo disso, a imagem capturada
recebida no formato RGB convertida para o canal HSV, e
desta nova imagem foi utilizado somente o canal S
(saturao) (Fig. 5 a,b,c,d,e).
A etapa seguinte foi binarizar a imagem para facilitar a
identificao dos elementos relevantes da cena (rob,
obstculos e alvo). Na binarizao a resultante composta
por apenas duas cores, sendo a cor de interesse representada
pela cor preta, e as demais cores representadas pela cor
branca. Na Fig. 5f mostra-se a imagem resultante obtida
atravs do processo de binarizao, na qual observa-se que
apenas os pixels que representam o objeto de interesse (cor
de interesse), aparecem como preto na imagem segmentada,
e todos os demais pixels presentes na imagem so
convertidos para o branco.

Na interface da porta paralela com o controle remoto


sem fio, foi utilizado um CI 2803 com capacidade de
aumentar a tenso de sada da porta paralela e assim acionar
um rel 12V, sem a necessidade de aumentar a corrente e
por conseqncia queimar a porta paralela do
microcomputador. Sendo utilizado 4 rels 12V 7A, um para
cada canal de transmisso do transmissor RF.
Para a captura da imagem usou-se uma webcam normal,
posicionada sobre o ambiente onde o rob deveria circular,
provendo uma viso panormica do cenrio (Fig. 2). A partir
destas imagens capturadas pela cmera, o sistema de viso
computacional mapeia o ambiente no qual o rob deve se
mover desviando dos obstculos at atingir o destino final.
Este mapeamento prov identificao do rob e seu
posicionamento, a localizao dos obstculos e a
identificao do local de destino (Fig. 3). Assim, a partir do
mapeamento feito pelo sistema de viso, o trajeto
calculado por um algoritmo de busca usando diferentes
funes a serem realizadas pelo rob.

Fig. 2. Metodologia de captura imagens.

Fig.4. Comunicao entre o computador e o rob.

Fig. 3. Cenrio do projeto.


Aps a captura das imagens, estas so segmentadas,
avaliam-se as alternativas de rotas e se comunica com o
rob atravs de um controle remoto que est interligado a
uma porta paralela do computador usando-se rdio
freqncia (Fig. 4).

(a)

Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications
Serra Negra, SP - ISSN 2178-3667

819

Utilizao de um Sistema de Viso Computacional para o Controle de um Rob Mvel


Pedro Luiz de Paula Filho, Cleverson Junior Soares, ngelo Marcelo Tusset

(e)

(b)

(f)

(c)

Fig. 5. Transformaes desde a imagem original at a binarizao: (a)


Imagem Original (RGB); (b) Imagem no canal HSV; (c) Canal H (Matiz);
(d) Canal S (Saturao); (e) Canal V (Intensidade); (f) Imagem Binarizada;

Essa seqncia atende bem para o trabalho com imagens


estticas (fotos), porm quando da captura de imagens em
movimento adquiridas por vdeo tem-se rudos inerentes
iluminao ou pequenas imperfeies. Para sanar isso,
foram usadas tcnicas de morfologia matemtica, que
enfocam a estrutura geomtrica de uma imagem, fazendo
transformaes atravs de diferentes padres de formatos
conhecidos como elementos estruturantes (EE). Estes so
formas geomtricas simples e menores que a imagem
original, que so movidos sobre a imagem bidimensional e
conforme seu ajuste tem-se o resultado final [13][5]. Dentre
as tcnicas de morfologia matemtica destacam-se a eroso
e a dilatao.
A eroso, denotada por AB (onde A a imagem a ser
erodida e B o elemento estruturante), tem como objetivo
eliminar dados em uma imagem que no so semelhantes a
um tipo padro, ou seja, elimina picos positivos mais finos e
expande os picos negativos, reduzindo os objetos da
imagem. Em uma imagem binria os pontos pretos iro
crescer sobre os pontos brancos de sua vizinhana,
realando contornos. J a dilatao, denotada por A B ,
elimina picos negativos mais finos e expande os picos
positivos, ou seja, em uma imagem de fundo branco, a
tcnica ir eliminar os rudos [9][10].
Segundo [10], o fechamento, denotado por A B , tende
a eliminar pequenos buracos e preencher fendas em regies

(d)

Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications
Serra Negra, SP - ISSN 2178-3667

820

imagem, ou seja, o rob, os obstculos e o alvo. Para tanto


uma forma de identificar objetos em uma imagem binria
a rotulao, onde a cada regio ou componente conexo
atribudo um valor nico na imagem [11].
A rotulao foi feita, percorrendo-se a imagem binria
pixel a pxel, quando se encontra um elemento preto, a este
rodado um algoritmo de preenchimento (flood fill), que ir
marcar todos os pixels conexos com uma cor randmica.
A partir do agrupamento dos objetos encontrados na
imagem, busca-se identificar a qual classe estes elementos
pertencem (Fig. 7). Sendo que se considera que o rob o
maior objeto encontrado (aproximadamente 1500 pixels) e
os obstculos tem uma rea mnima de 400 pixels, reas
menores que 100 pixels so descartadas como rudo (Fig.
7b).
Um vetor para armazenamento dos objetos foi criado
para armazenar a rea total, a cor e o retngulo englobante,
ou seja, as coordenadas (x, y) mnimas que correspondem ao
canto superior esquerdo do objeto e as coordenadas
mximas (canto inferior direito).

de contorno. Sua formao matemtica definida como


A B ( A B )B . Na Figura 6 tem-se uma amostra da
imagem binria com rudos (Fig. 6a), o resultado aps a
aplicao do operador de fechamento (Fig. 6b) e a subtrao
das duas imagens que enfatiza os rudos retirados da
imagem (Fig. 6c).

(a)

(a)

(b)

(c)

Fig. 6. Morfologia Matemtica: (a) Imagem Binarizada; (b)


Fechamento; (c) Rudo

(b)

Fig. 7. Objetos encontrados na imagem aps pr-processadas: (a)


Imagem Original Binarizada; (b) Imagem rotulada

Com isso conclui-se a etapa de pr-processamento, e


passa-se a buscar o reconhecimento dos elementos dentro da

Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications
Serra Negra, SP - ISSN 2178-3667

821

Utilizao de um Sistema de Viso Computacional para o Controle de um Rob Mvel


Pedro Luiz de Paula Filho, Cleverson Junior Soares, ngelo Marcelo Tusset

Com os objetos identificados e registrados, pode-se


comandar o rob. Assim, a comunicao se d atravs da
porta paralela e RF, onde os comandos so enviados atravs
dos pinos de 2 a 5 da porta paralela e atravs de rels feito
o chaveamento dos sinais para adaptar-se ao padro do
controle remoto (no detalhe, onde os fios do circuito de
interface so adaptados) (Fig. 8a e 8b). Este envia sinais ao
rob, que so adquiridos pelo receptor de RF e ento os
reles da ponte H so acionados, movimentando o rob nos
sentidos: frente, trs, direita e esquerda.

Fig. 9 Fluxograma de execuo


A Fig. 10 mostra a tela de execuo do software, quando
da insero de quatro obstculos obstruindo a passagem do
rob (Fig. 7), onde a cada meio segundo, uma leitura foi
realizada na inteno de fazer com que o rob de
movimentasse. Nesse caso, no entanto, o mesmo ficou
parado.
(a)

4. CONCLUSO
Apesar da complexidade da unio de vrias reas
distintas, dentre elas, eletrnica, computao e mecnica, o
objetivo foi atingido, a construo de um prottipo que
permita o funcionamento de um rob, atravs da porta
paralela e RF, comandados por um computador que analisa
uma cena dada por uma cmera simples.

(b)

Fig. 8. Comunicao entre porta paralela e o rob: (a) Circuito de interface


da Porta Paralela; (b) Comunicao com o rob

O software, antes de qualquer coisa, atravs da


identificao das coordenadas de borda dos objetos (rob e
obstculos) identifica onde h obstculo, e faz o
planejamento de movimento para evitar colises, caso a
proximidade seja inferior a um limiar em pixel informado
pelo usurio. Caso no tenha obstculos ao redor, o
algoritmo identifica o alvo, faz uma correo de rota para
atingir a meta e faz um movimento a frente para se
aproximar do alvo, repetindo o processo continuamente.
Caso algum objeto esteja no caminho, o rob tenta uma
manobra de esquiva, executando, se possvel, uma r,
rotacionando-se 90 graus direita, movimentando-se
frente e rotacionando novamente esquerda.
Todos os passos podem ser seguidos atravs do
fluxograma apresentado na Fig. 9.

Fig. 10 Software em execuo


O software se mostrou eficiente na execuo de tarefas
bsicas de movimentao e desvio de obstculos, mesmo
com pequenas mudanas de luminosidade. Como o objetivo
no era determinar o melhor caminho, em algumas
situaes, o rob acabou andando em crculos. Nesse
sentido algumas tcnicas de inteligncia artificial poderiam
ser usadas para melhor o encontro do melhor caminho.

Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications
Serra Negra, SP - ISSN 2178-3667

822

REFERNCIAS
[1] PEDROSA, D. P. F., MEDEIROS, A. A D., ALSINA,
P. J. (2002). Gerao de Caminhos Ponto-a-Ponto para
Robs Mveis com Rodas. Anais do XIV Congresso
Brasileiro de Automtica.
[2] AMBROSE, R., ASKEW, R. S. (1995). An
Experimental Investigation of Actuators for Space
Robots. IEEE Internarional Conference on Robotics and
Automation, pp. 2625 2630.
[3] PASSOS, F. (2002). Automao de Sistemas &
Robtica. Axcel Books do Brasil Editora Ltda.
[4] MCCOMB, Gordon. The robot builders bonanza: 99
inexpensive robotics projects. New York: TAB Books,
1987. 326p.
[5] SPENCE, Rob, HUTCHINSON, Seth. An integrated
architecture for robot motion planning and control in
the presence of obstacles with unknown trajectories.
IEEE trans. on systems, man, and cybernetics, v.25, n.1,
p.100-110, jan., 1995.
[6] GROOVER, Mikell P., WEISS, Mitchell, NAGEL,
Roger N. et al. Robtica: tecnologia e programao.
So Paulo: McGraw-Hill, 1988. 401p.
[7] JAHNE, B.; HAUBECKER, H. Computer Vision and
Applications. Academic Press, 2000.
[8] SEBE, N.; COHEN, I.; GARG, A.; HUANG, T. S.
Machine Learning in Computer Vision. Springer, 2005.
[9] GONZALEZ, R. C. WOODS, R. E. Processamento de
Imagens Digitais. Edgard Blucher, 2000.
[10 PEDRINI, H., SCHWARTZ, W. R. Anlise de
Imagens Digitais Princpios, Algoritmos e
Aplicaes. Ed. Thomson. So Paulo, 2008.
[11] CONCI, A., AZEVEDO, E., LETA, F. R. Computao
Grfica: Teoria e Prtica Volume 2. Ed. Elsevier.
Rio de Janeiro, 2008.
[12] RUSS, John. C. - The Image Processing Handbook The
Fifth edition. CRC Ed. Boca Raton, FL, 2007
[13] VUYLSTEKER, Pascal. HSV, HLS and HIS. Material
de aula da disciplina de Computao Grfica da Faculty
of Engineering and Information Technology, na The
Australian National University. Disponvel em:
<http;//escience.anu.edu.au/lecture/cg/color/>. Acesso
em: 07 de set de 2009.
[14] BENDER, Tlio Cleber. Classificao e recuperao de
imagens por cor utilizando tcnicas de inteligncia
artificial. Dissertao em Computao Aplicada:
Universidade do Vale dos Sinos. So Leopoldo / RS,
2003.
[15] AL-OTUM, Hazem. SHAHAB, Walid. Smadi,
MAMOON. Colour Image Compression Using A
Modified Angular Vector Quantization Algorithm.
Journal of Electrical Engineering, vol. 57, no. 4. Slovak
University of Technology. Bratislava, 2006.

Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications
Serra Negra, SP - ISSN 2178-3667

823