ALGORITMO DE RÁPIDO PROCESSAMENTO BASEADO ... 04(02) 08.pdftempo de processamento reduzido, no...
Transcript of ALGORITMO DE RÁPIDO PROCESSAMENTO BASEADO ... 04(02) 08.pdftempo de processamento reduzido, no...
Minerva, 4 (2): 189-200
ALGORITMO DE RÁPIDO PROCESSAMENTO BASEADO EM REDES NEURAIS... 189
ALGORITMO DE RÁPIDO PROCESSAMENTOBASEADO EM REDES NEURAIS ARTIFICIAIS
PARA FIXAÇÃO DE OBJETOS DESCONHECIDOSPOR GARRAS INDUSTRIAIS
Leonardo Marquez PedroGlauco Augusto de Paula Caurin
Laboratório de Mecatrônica, Departamento de Engenharia Mecânica, EESC, USP,Av. Trabalhador São-carlense, 400, CEP 13566-970, São Carlos; SP,
e-mails: [email protected]; [email protected]
ResumoO presente trabalho apresenta um algoritmo de rápido processamento, baseado em redes neurais artificiais (RNAs),para a determinação de pontos de fixação de objetos desconhecidos por garras robóticas industriais. O algoritmo aquiproposto consiste em modificações no algoritmo original de Valente (1999) para o problema da fixação de objetosdesconhecidos. O algoritmo original é composto por três etapas: (1) aquisação e processamento da imagem, (2) simplificaçãoda forma do objeto e (3) determinação dos pontos de contato para garras industriais de três dedos, sendo que nas duasúltimas etapas RNAs foram utilizadas nos cálculos. As principais modificações propostas estão concentradas na etapade processamento da imagem do objeto e na rede neural competitiva empregada na etapa de simplificação por aproximaçãopoligonal. O algoritmo modificado foi utilizado para determinar pontos de fixação de objetos desconhecidos por garrasindustriais de dois e três dedos. Simulações com imagens de objetos do cotidiano mostram que o algoritmo apresentoutempo de processamento significativamente reduzido quando comparado com o original.
Palavras-chave: fixação de objetos, aproximação poligonal, processamento de imagens, garras robóticas, redes neuraisartificiais.
IntroduçãoA utilização de garras robóticas para a fixação de
objetos pode ser encontrada em larga escala em ambientesfabris com a finalidade de movimentação de material,montagem, inspeção de peças, entre outras diversasaplicações. Contudo, sistemas manipuladores e garrasrobóticas industriais apresentam alto grau de especializaçãoe são incapazes de se adaptar às variações das condiçõesde operação, sejam elas mudanças na geometria do objetoa ser fixado, sejam mudanças na orientação e posição.
Na área científica, muitos trabalhos têm propostodiferentes abordagens para o problema da fixação de objetospreviamente desconhecidos por garras robóticas. Dentreos trabalhos que estudam o problema da fixação pode-sedestacar aqueles que utilizam sistemas de visão que informamao manipulador a forma do objeto a ser fixado. Os sistemaspodem ser formados por: visão estereoscópica (Hauck,1999); scanners laser (Wang, 2005); compostos por scannerse câmeras (Saxena, 2006); e formados por somente umacâmera (Ballester, 2003; Morales, 2006).
Nas aplicações industriais, pela necessidade de tempototal de processamento reduzido, os manipuladores providosde visão composta por uma única câmera, ou visão
bidimensional (2D), apresentam-se como os mais adequadosgraças ao baixo custo de instalação, facilidade de calibraçãoe rápido processamento de informações.
Além do tempo de aquisição e processamento dasinformações, o tempo de tomada de decisão, ou seja, otempo decorrido para a determinação dos pontos de fixaçãodeve ser reduzido. Dentre os trabalhos que selecionampontos de fixação a partir de imagens de objetos destacam-se aqueles que utilizam sistemas rápidos voltados paraaplicações industriais. Bendiksen (1994) propôs uma pinçade dedos paralelos para fixar objetos planos cuja formafoi adquirida por uma única câmera. Para a determinaçãodos pontos de contato foi realizada uma busca em quecada configuração foi avaliada segundo um critério deestabilidade. Dentre os quatorze objetos utilizados nosexperimentos dez foram fixados com sucesso.
O sistema de Bendiksen (1994), proposto para levarnovas tecnologias à indústria, apresenta baixo custo, facilidadede instalação e operação, é rápido e autônomo e permite afixação de objetos 2D em condições adequadas defuncionamento. Como limitações há o fato de o sistematrabalhar apenas com objetos de formato próximo ao retangulare a necessidade de calibração do sistema de visão.
Minerva, 4 (2): 189-200
190 PEDRO & CAURIN
Outros trabalhos (Kamon, 1994; Valente, 1999;Morales, 2001; Ballester, 2003; Sanz, 2005; Morales, 2006)ainda sugerem sistemas similares em que, a partir de umsistema de visão 2D, as informações do objeto são obtidase pontos de contato são selecionados. Muitos destesapresentam soluções satisfatórias quanto à qualidade dafixação, porém pouco é discutido sobre o tempo total deprocessamento, o que impossibilita a sua implantação emambientes em que é exigido rápido tempo de resposta.
De particular interesse é o trabalho de Valente (1999),que determina pontos de fixação de objetos desconhecidospara garras de três dedos utilizando RNAs em substituiçãoaos algoritmos tradicionais.
Na tentativa de obter resultados satisfatórios comtempo de processamento reduzido, no presente trabalho,modificações no algoritmo de Valente (1999) (mais detalhesna seção “Apresentação do Algoritmo Original”) sãoapresentadas para a fixação de objetos desconhecidos porgarras industriais de dois e três dedos. A proposta consisteem um sistema de rápido processamento que permita aaplicação da solução em ambientes industriais, ou em outrasaplicações, em que é exigido tempo de processamento reduzido.
As modificações concentram-se na etapa doprocessamento da imagem (seção “Sistema de Visão eProcessamento da Imagem”) e na etapa de simplificaçãoda forma do objeto realizada por uma rede neural competitivapara aproximação poligonal (seção “Rede Neural de Hopfieldpara Aproximação Poligonal”). A etapa de cálculo da fixaçãoé realizada por uma rede de função de base radial (ouRBF no acrônimo em inglês). Os resultados de simulaçõespara a determinação dos pontos de fixação para os doistipos de garras são apresentados na seção “Resumo doAlgoritmo Proposto”. O desempenho do algoritmo propostoé comparado ao algoritmo original quanto à qualidadedos resultados e ao tempo de processamento. Por fim,algumas considerações finais e propostas para trabalhosfuturos são apresentadas na seção “Conclusões e TrabalhosFuturos”. Por motivos didáticos, na próxima seção oequacionamento, assim como algumas hipóteses esimplificações, para a fixação de objetos por garras dedois e três dedos é apresentado.
Equacionamento e Planejamento daFixação 2DDefinições, simplificações e hipóteses
Na presente seção é realizada uma breve introduçãoà teoria do fenômeno da fixação por garras de dois e trêsdedos limitada ao caso 2D. Uma explanação completada teoria da fixação pode ser encontrada em Murray (1994),trabalho no qual esta seção foi parcialmente inspirada.
A teoria da fixação por garras robóticas pode serdividida basicamente em duas partes: (1) estática e
planejamento; (2) dinâmica e controle. Nesta seção trata-se da etapa de estática e planejamento da fixação limitadapara o caso 2D. Define-se como fixação 2D a fixação deobjetos que apresentam seção constante, ou aproximadamenteconstante, ao longo de uma direção cuja dimensão érelativamente menor que a área da seção constante.
O estudo da fixação começa por uma série de hipótesese simplificações. Dados o modelo do objeto, o conjuntode dedos da garra e o modelo do contato entre os dedos eo objeto, o objetivo é encontrar relações matemáticas dasforças entre os dedos e a superfície do objeto. Primeiramenteconsideramos que o contato é estabelecido em um pontoconhecido do objeto e que não há escorregamento, logo,forças de atrito normais à direção do contato, ou à linhade ação, podem ocorrer segundo a lei de Coulomb. Tambémé considerado que possam existir momentos de atrito nadireção do contato segundo a mesma lei. Um contato queapresente as características descritas acima é denominadosoft-contact.
Definido o modelo do contato entre a ponta do dedoe o objeto, são definidas algumas propriedades que a fixaçãopode apresentar. Fixação manipulável é aquela que permitemodificação da posição e orientação do objeto a partirde movimento dos dedos ou a partir de combinação demovimentos entre eles. Fixação force closure é aquelacapaz de manter o equilíbrio do objeto quando distúrbiosexternos são aplicados. Finalmente, fixação estável é aquelaque mantém o equilíbrio do objeto quando somente asforças de fixação estão atuando. Uma fixação force closureé necessariamente estável; por outro lado, uma fixaçãoestável não é necessariamente force closure. Na fixaçãoestável as forças aplicadas mantêm o objeto em equilíbrio,porém não há garantia de que distúrbios externos sejamequilibrados.
Antes do equacionamento definiremos outrascaracterísticas dos objetos e das garras consideradas nestetrabalho.
Quanto aos objetos, levaremos em conta algumashipóteses: o objeto apresenta densidade constante; é rígido;sua superfície é uniforme; e o coeficiente de atrito deCoulomb é constante por toda a sua extensão.
Quanto às garras, serão determinados pontos de fixaçãopara garras de dois dedos (tipo pinça) e de três dedos (tipocastanha). As garras tipo pinça apresentam dedos paralelosacionados por um único atuador; desta forma, define-secomo centro de fixação e ponto de fechamento da garra. Oespaço de trabalho de cada dedo é composto por uma linhadefinida como linha de ação. As garras tipo castanha apresentamtrês linhas de ação, que estão defasadas entre si em 120º,formando o plano de fixação. O acionamento também érealizado por um único atuador, e o centro de fixação édefinido como o ponto de fechamento da garra, ou seja, oponto de intersecção das linhas de ação.
Minerva, 4 (2): 189-200
ALGORITMO DE RÁPIDO PROCESSAMENTO BASEADO EM REDES NEURAIS... 191
Planejamento da fixaçãoPara que uma fixação apresente determinadas
propriedades requeridas, os pontos de aplicação das forçasdevem ser adequados. Portanto, a determinação de pontosapropriados para a aplicação das forças de fixação(denominados pontos de fixação) é necessária para aexecução da fixação com as propriedades desejadas. Assim,dado o conjunto de propriedades requeridas para a fixação,o procedimento de determinação dos pontos adequadosé definido como planejamento da fixação.
As características construtivas e de acionamentodas garras descritas na seção anterior não permitem umafixação manipulável, portanto, deseja-se determinar apenasuma fixação force closure. A relação matemática entre asforças aplicadas pelos dedos e os esforços externos paraos dois tipos de garras consideradas é deduzida a seguir.
Equacionamento para garras de dois dedosDado o ponto de contato pi (i = 1,2), definimos o
sistema de coordenadas do contato Ci com centro em pi eeixo ZCi alinhado com a direção normal à superfície doobjeto. Para a fixação 2D, o plano de contato contém oseixos ZCi e XCi. O sistema de coordenadas da fixação H écentrado em ch (o centro de fixação), e o eixo ZH está
alinhado com a reta 12 pp , definida como linha de ação.
O sistema de coordenadas do objeto O tem sua origemno centróide do objeto, co, e eixo ZO alinhado com a direçãodo momento principal de inércia. Os eixos YO, YCi, YH sãoparalelos e têm o mesmo sentido. A Figura 1 ilustra ossistemas de coordenadas C1, C2 e H para uma forma qualquer.
Definidos os sistemas de coordenadas, desejamosescrever as forças de contato aplicado em pi no sistemade coordenadas da fixação. A transfomação do sistemade coordenadas de contato para o sistema de coordenadasda fixação é dada pela equação.
com ciH ci ci
ci
fF G F F
τ⎡ ⎤
= ⋅ = ⎢ ⎥⎣ ⎦
(1)
em que Fci é o vetor formado pelas forças de contato emomento. O modelo de contato considerado define:
[ ]4321 cicicicici fffF τ= (2)
sendo que 1cif e 2
cif são as forças de atrito normais ao
contato, 3cif é a força aplicada e 4
ciτ é o momento de atrito.As forças de atrito e o momento de atrito devem estardentro do limite de escorregamento, ou cone de atrito,para que seja possível a fixação. A força normal devesempre ser positiva.
ch
ZC2ZH
XC2
p2
θ 2
XH
ZC1
XC1
p1
θ1
Figura 1 Sistemas de coordenadas dos pontos de contato C1 e C2 e sistema decoordenadas da fixação H para a fixação por uma garra de dois dedos.
Minerva, 4 (2): 189-200
192 PEDRO & CAURIN
A matriz G, definida como o mapa da fixação, édeterminada por:
0
ˆci
ci ci ci
RG B
p R R
⎡ ⎤= ×⎢ ⎥
⎣ ⎦(4)
em que:
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 0
0 0 0 0
0 0 0 1
B
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥
= ⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
e
3 2
3 1
2 1
0
0
0
ci ci
ci ci ci
ci ci
p p
p̂ p p
p p
−⎡ ⎤⎢ ⎥= −⎢ ⎥⎢ ⎥−⎣ ⎦
(5)
e Rci é a matriz de transformação do sistema de coordenadasda fixação H para o sistema de coordenadas do contatoCi e B é a base referente ao modelo de contato adotado.
O mapa da fixação para uma garra tipo pinça é dadopor:
1 1
1 11
1
1 1
1
0 0
0 1 0 0
0 0
0 0
0 0
0 0 0
c c
c cG
l s
lc ls
c
θ θ
θ θθ
θ θθ
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥
= ⎢ ⎥− −⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥⎣ ⎦
(6)
2 2
2 22
2
2 2
2
0 0
0 1 0 0
0 0
0 0
0 0
0 0 0
c c
c cG
l s
lc ls
c
θ θ
θ θθ
θ θθ
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥
= ⎢ ⎥− −⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥⎣ ⎦
(7)
em que l é a distância entre o ponto de contato e o centrode fixação.
Transformando as forças de contato do sistema dereferência do contato para o sistema de referencia da fixaçãoobtemos:
⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
+−+−
−+−+++
+−+−
=
⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
−−
+
−
+
⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
−−+
−
=
×+×=
2411
41
2322
121
311
11
242
221
41
21
2322
121
311
11
22
21
2322
121
311
11
241
2322
12
242
22
2322
12
22
2322
12
141
1311
11
141
21
1311
11
21
1311
11
2211
θτθτθθθθ
θτθτθθθθ
θθθθ
θτθθ
θτθθ
θθ
θτθθ
θτθθ
θθ
cc
slfclfslfclf
slfslf
cfsfcfsf
ff
sfcfsfcf
c
slfclf
slf
cfsf
f
sfcf
c
slfclf
slf
cfsf
f
sfcf
F
fGfGF
cc
cccc
cccc
cccc
cc
cccc
c
cc
cc
cc
c
cc
c
cc
cc
cc
c
cc
H
ccH
(8)
As forças de contato escritas no sistema de coordenadasda fixação devem ser capazes de equilibrar forças externastambém escritas no sistema de coordenadas da fixação.
Quando um esforço externo FexH, Eq. (8), é aplicadosobre o objeto temos o seguinte sistema de equações:
1 2 3 1 2 3H H H H fex fex ex ex exH H HFex fex τ τ τ⎡ ⎤= ⎣ ⎦ (9)
H HFex F− = (10)
1 3 1 311 1 1 1 2 2 2 2
2 221 2
1 3 1 331 1 1 1 2 2 2 2
2 4 2 411 1 1 2 2 2
1 3 1 321 1 1 1 2 2 2 2
431 1
c c c cH
c cH
c c c cH
c c c cH
c c c cH
c cH
f c f s f c f sfex
f ffex
f s f c f s f cfex
f l s f l sex
lf c lf s lf c lf sex
cex
θ θ θ θ
θ θ θ θτ θ τ θτ
θ θ θ θττ θ ττ
⎡ ⎤ − + −−⎢ ⎥ +−⎢ ⎥⎢ ⎥ + + +−
=⎢ ⎥− + −−⎢ ⎥
⎢ ⎥ − + −−⎢ ⎥
+−⎢ ⎥⎣ ⎦41 2cθ
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
(11)
O sistema acima apresenta as seis equações deequilíbrio do objeto quando dois dedos exercem forçasde contato e forças externas são aplicadas.
Planejamento da fixação para garras de dois dedosO sistema da Eq. (11) apresenta seis equações e
oito incógnitas, portanto, não tem uma única solução, e aseleção dos melhores pontos de contato a partir de taisequações não é determinística. Para a escolha dos melhorespontos de fixação do objeto selecionamos a configuraçãoque apresenta a melhor estabilidade, ou seja, aquela queapresenta: forças atuantes aplicadas próximas à direção
Minerva, 4 (2): 189-200
ALGORITMO DE RÁPIDO PROCESSAMENTO BASEADO EM REDES NEURAIS... 193
normal ao contato; linha de ação localizada próxima aocentróide do objeto; e linha de ação próxima à direçãodo momento principal de inércia.
A partir dos critérios estabelecidos acima escrevemosuma função custo, Eq. (12). A função custo atribui umanota para os pontos de fixação. A estratégia adotada édeterminar a configuração que apresente a menor funçãocusto, respeitando os ângulos de ponta e o cone de atrito.
( , )custo i o af A B d c l Cθ= ⋅ ∑ + ⋅ +
) ( )I laC abs α α+ ⋅ −(12)
em que: θi é o ângulo entre a linha de ação la e a direçãonormal ao ponto de contato; d(co, la) é a distância entre ocentróide do objeto e a linha de ação; e abs(αI – αla) é adiferença angular absoluta entre a direção do momentoprincipal de inércia e a direção da linha de ação.
Equacionamento para garras de três dedosO mesmo procedimento realizado para garras de
dois dedos pode ser realizado para as garras de três dedos.A Figura 2 mostra os pontos de contato e seus respectivossistemas de coordenadas Ci e o sistema de coordenadasda fixação H. O centro do sistema de coordenadas dafixação, ch, é o ponto de encontro das linhas de ação.
O equacionamento das forças de fixação segue damesma maneira: as forças de contato e as forças de atritosão escritas no sistema de coordenadas da fixação. A relaçãoentre as forças de contato e o esforço externo aplicadosobre o objeto, no sistema da fixação, é dada pela Eq. (13).
O sistema apresenta as seis equações de equilíbriodo objeto quando três dedos exercem forças de contato eforças externas são aplicadas.
Planejamento da fixação para garras de três dedosSimilar ao sistema de equações de equilíbrio para
garras de dois dedos, para três contatos há mais incógnitasque equações, seis e doze, respectivamente, portanto osistema não apresenta solução única. Para determinar osmelhores pontos de fixação do objeto, procuraremos aconfiguração que apresentar a melhor estabilidade a partirde uma função custo. O critério de cálculo da estabilidadeda fixação por três pontos se diferencia do critério paradois pontos somente pelo fato de não considerar a orientaçãorelativa entre as linhas de ação e o momento principal deinércia.
A partir dos critérios estabelecidos escrevemos afunção custo, Eq. (14), que atribui uma nota para os pontosde fixação. A estratégia é determinar a configuração queapresente a menor função custo, respeitando os ângulosde ponta e cone de atrito.
),( foicusto ccdBAf ⋅+∑⋅= θ (14)
Apresentação do Algoritmo OriginalNesta seção o algoritmo original, sobre o qual as
modificações propostas foram realizadas, é descrito.Recomenda-se, no entanto, a leitura de Valente (1999),em que podem ser encontrados mais detalhes.
⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
−−−−−−
=
⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
++−−
−+
−
+
⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
++−−
−+
−
+
⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
+−
−+
−
=
−=×+×+×=
3
2
1
3
2
1
343
233
33333
3333
1333
133
3433
23
3333
13
23
3333
13
242
222
23222
3222
1222
122
2422
22
2322
12
22
2322
12
141
211
13111
111
141
1311
11
21
1311
11
332211
240
240240240240
240
120
120120120120
120
H
H
H
H
H
H
cc
cccc
cc
cc
c
cc
cc
cccc
cc
cc
c
cc
cc
cc
c
cc
c
cc
H
HcccH
ex
ex
ex
fex
fex
fex
ccfl
csflssflcsflscfl
sclf
cfsf
f
sfcf
ccfl
csflssflcsflscfl
sclf
cfsf
f
sfcf
cfl
sflcfl
s
cfsf
f
sfcf
F
FexfGfGfGF
τττ
θτθθθθ
θτθθ
θθ
θτθθθθ
θτθθ
θθ
θτθθ
θτθθ
θθ
(13)
Minerva, 4 (2): 189-200
194 PEDRO & CAURIN
ch
ZC3
ZH
XC3
p3
θ 3 XH
ZC1
XC1
p1
θ1
ZC2
XC2
p2
θ 2
l1
l3
l2
Figura 2 Sistemas de coordenadas dos pontos de contato C1, C2 e C3 e osistema de coordenadas da fixação H para a fixação por uma garra de três dedos.
O trabalho de Valente (1999) pode ser dividido emtrês partes:1. A primeira parte compreendia: a aquisição dos dados
e processamento. Uma câmera capturava uma imagemdo objeto que era convertida em tons de cinza e umalgoritmo de extração de borda era aplicado a fim deextrair o contorno do objeto. A borda do objeto eradetectada pela diferença entre os tons de pixels de umavizinhança que estivessem acima de um limiar preesta-belecido. Quando o primeiro elemento era detectado,o algoritmo de detecção pelo método do vizinho maispróximo era executado.
2. A segunda parte era responsável pela redução dos pontosdo contorno do objeto. Foi utilizado um sistema baseadoem redes competitivas para aproximação poligonal(Araújo, 1995) que era responsável pela minimizaçãodos dados necessários para o cálculo da fixação. Osistema recebia as informações obtidas na primeira etapae, a partir delas, a rede de aproximação determinavaum número reduzido de dados capaz de representar oobjeto.
3. A terceira parte, que se propôs a determinação da fixaçãodo objeto, recebia os dados da primeira rede neural.Uma rede neural previamente treinada com classes deformas geométricas (retângulos, triângulo e elipsóides)como entradas e respectivos pontos de fixação como
saídas era responsável pela determinação dos pontos.Foram experimentadas redes do tipo Multi LayerPerceptron (MLP) e RBF nesta etapa. Comparaçõesdos resultados mostraram que as redes MLP gerammelhores resultados.
Modificações PropostasO novo método proposto, assim como as modificações
realizadas, é apresentado em detalhes nesta seção.
Sistema de visão e processamento de imagemPara a obtenção da forma do objeto foi utilizada
uma câmera digital. Os dados obtidos a partir da câmerafornecem ao sistema informações do ambiente na formade uma matriz bidimensional de pixels.
O segundo passo após a aquisição da imagem é asegmentação do objeto, que é realizada por uma operaçãode binarização, que consiste na aplicação de um limiar,ou threshold, no histograma da imagem em tons de cinza.Este limiar é capaz de separar regiões distintas da imagem,em que uma região define o objeto e outra região defineo fundo da imagem. O processo de binarização consisteem atribuir valores binários para cada pixel pertencentea cada região. É atribuído o valor 0 para os pixels daregião do objeto e o valor 1 para os da região do fundo.
Minerva, 4 (2): 189-200
ALGORITMO DE RÁPIDO PROCESSAMENTO BASEADO EM REDES NEURAIS... 195
Na literatura são encontrados vários algoritmos debinarização, contudo, no presente trabalho, o algoritmoproposto por Otsu (1979) foi selecionado para binarizara imagem, pois traz bons resultados para imagens queapresentam histograma com regiões distintas entre o objetoe o fundo.
Após a segmentação é extraída a borda do objetoque define a forma da qual é determinada a fixação. Dentreos diversos métodos de detecção de borda o mais adequadopara a aplicação, segundo Valente (1999), é o método dovizinho mais próximo.
A Figura 3 mostra o resultado da binarização porOtsu e da extração do contorno do objeto pelo métododo vizinho mais próximo.
Rede neural de Hopfield modificada para aaproximação poligonal
A borda do objeto é representada por uma série depontos cujo número é variável e depende do tamanho doobjeto, do tamanho da imagem ou número de pixels daimagem, entre outras possíveis variações. Para utilizar aforma do objeto como entrada de uma rede neural paradeterminação de pontos de contato, é necessário que arepresentação seja normalizada. Como parte da normalizaçãoda entrada da rede os dados do contorno são reduzidos.
Com tal objetivo, é aplicado o método da aproximaçãopoligonal, uma abordagem bastante utilizada para aaproximação de curvas e para a simplificação de objetos.Consiste em representar uma forma geométrica por umpolígono cujos vértices são alguns dos pontos da curvaoriginal, sendo que as características relevantes sãopreservadas (ver Sanz, 2005, em que a aproximação poligonal,realizada por algoritmos genéticos, foi utilizada paracompactar os dados).
A abordagem consiste na escolha dos melhores vérticespara a representação do polígono com perdas mínimasde informação. Em geral, as soluções existentes apresentam
respostas otimizadas quanto à qualidade da aproximação,porém, requerem muito esforço computacional. A dificuldadeencontrada em tais abordagens é a obtenção de respostassatisfatórias em tempo reduzido.
Nesta seção, é proposta uma variação da redecompetitiva de Hopfield (1982) apresentada por Araújo(1995) e utilizada por Valente (1999) como solução parao problema do custo computacional exigido na aproximaçãopoligonal. A proposta envolve modificações na regra deaprendizado da rede neural e na função de ativação dosneurônios. Segue abaixo breve descrição das modificaçõespropostas.
A partir de um polígono qualquer composto por npontos, definimos os vetores P = {p1, p2, ... pn} e S = {s1,s2, ... sm} como sendo os vetores de vértices do polígonooriginal e o vetor formado por m “ponteiros” que indicamquais vértices foram selecionados na aproximação, sendoque cada elemento de P tem componente x e y em umsistema de referência inercial. A simplificação é dada porum polígono formado por m elementos, sendo que m < n.
A rede neural proposta apresenta configuraçãobidimensional, denominada matriz neural V, de dimensõesn × m. Cada uma das m colunas apresenta n neurônios,em que cada neurônio representa um vértice ou elementodo vetor P, sendo que apenas um neurônio deverá serativado. Desta forma, o neurônio ativado na primeira colunarepresenta o primeiro vértice da aproximação, e assimsucessivamente, até que na m-ésima coluna o neurônioativado representa o último vértice da aproximação. Osíndices dos elementos do vetor P selecionados em cadauma das m colunas da matriz V compõem o vetor S.
Uma vez definida a matriz neural Vnxm, definiremosa regra de aprendizado e a matriz de pesos H. Primeiramente,dada uma curva P = {p1, p2, p3, ..., pn} constituída de n pontos
ordenados, e yx pp e yx pp representando, respectivamente,
o trecho da curva e a corda do ponto px ao ponto py.
Figura 3 Resultado do processamento da imagem. Da esquerda para a direita:imagem original, imagem binarizada e o contorno extraído.
Minerva, 4 (2): 189-200
196 PEDRO & CAURIN
Araújo (1995) define como “desvio ponto corda”o somatório das distâncias entre os pontos da curva Px+1 aPx+(n–1) e a corda como:
x y
________
x ,y x yp p p
h d (p, p p )∈
= ∑ (15)
Define-se então a matriz Hnxn formada pelo desvioponto corda entre todos os pontos da curva.
1 2 3xyH h x, y , , , ..., n⎡ ⎤= =⎣ ⎦ (16)
A matriz de pesos tem dimensão n × n, porém apenasalguns pesos são necessários para o cálculo da aproximação.Adota-se então a estratégia em que são calculados apenasos pesos necessários em cada etapa do processo iterativo
Definida a matriz de pesos, a função energia paracada coluna da matriz neural é definida pela Eq. (17).
( 1) ( 1)(
para ( 1) ( 1) 1x,y s y– , x x , S y U h h
S y x S y y = ... m
+= − +
− < < + (17)
em que S(y – 1) é o elemento do vetor P selecionado nacoluna anterior e S(y + 1) é o elemento selecionado de Pda coluna posterior.
A nova equação para o cálculo da função energiaevita as multiplicações por 0, ou seja, multiplicações doselementos da matriz V não selecionados. Outra modificaçãoé o cálculo de U apenas dentro de uma região de interessecompreendida entre S(y – 1) e S(y + 1).
A aproximação poligonal utilizando rede competitivade Hopfiel modificada pode ser resumida da seguinte forma:
1. Entrada: pontos de uma curva P = {p1, p2, p3, ..., pn}ordenada no sentido horário e o vetor de pontosselecionados S = {s1, s2, ... sm}, em que m é o númerode vértices da aproximação.
2. Estado final da rede: os elementos de S indicam osvértices do polígono de aproximação.
3. Método.a) Regra de aprendizado: construção da matriz de pesos
H, formada pelo somatório das distâncias de pontosde curva e corda, conforme o cáculo é solicitado.
b) Estado inicial da rede: escolha inicial dos m pontosselecionados o mais equidistante possível.
c) Regra de propagação: cálculo da função energia paracada coluna.
d) Regra de ativação winner-takes-all para obtençãodo novo estado da rede.
c) Repetição dos passos c) e d) até não haver maismudanças na rede.
d) Geração dos vértices do polígono de aproximaçãoa partir das unidades ativas da rede representadasem S.
O resultado da binarização e extração da bordailustrados na Figura 3 foi utilizado para exemplificar oresultado da aproximação poligonal. A Figura 5 mostraos resultados obtidos na aproximação poligonal com oalgoritmo proposto.
Px
Px+1
Px+2
Px+n
Py
dx+1 dx+2 dx+n
Figura 4 Cálculo dos pesos da matriz H.
Figura 5 Resultado da aproximação poligonal de um contorno com 791 pontos (esquerda) por 100 pontos (direita).
Minerva, 4 (2): 189-200
ALGORITMO DE RÁPIDO PROCESSAMENTO BASEADO EM REDES NEURAIS... 197
Seleção dos pontos de contato por redes RBFApós a obtenção da aproximação do objeto, a próxima
etapa é a determinação dos pontos apropriados para afixação. Os pontos são selecionados a partir daquelesresultantes da simplificação do contorno do objeto.
Na tarefa de seleção é utilizada uma rede tipo RBFpreviamente treinada com padrões geométricos. Os pontosde fixação são determinados por redes distintas para garrasdo tipo pinça e do tipo castanha.
Como padrões de treinamento foram utilizadas 26formas variantes de três classes geométricas diferentes(retângulos, elipsóides e triângulos). A Figura 6 mostraos padrões utilizados no treinamento das redes.
Para cada um dos padrões foram calculados, pelosmétodos descritos na seção “Equacionamento e Planejamentoda Fixação 2D”, os melhores pontos de fixação para osdois tipos de garras. Para dois pontos de contato a seguintefunção custo foi utilizada:
100 100
500custo i o a
I la
f d (c , l )
abs( )
= ⋅ ∑ θ + ⋅ ++ ⋅ α − α (18)
E para três pontos de contato a seguinte função custofoi utilizada
100 5custo i o af d (c , l )= ⋅ ∑ θ + ⋅ (19)
Não foram utilizados métodos determinísticos parao cálculo dos parâmetros das Eqs. (18) e (19). Dependendoda aplicação ou dos requisitos da fixação os valores podemser diferentes e novas variáveis podem também seradicionadas às equações.
Resumo do algoritmo propostoO algoritmo proposto, assim como o riginal, pode
ser resumido em três etapas: (1) sistema de aquisição eprocessamento dos dados, (2) aproximação poligonal e(3) seleção dos pontos de contato.
1) O sistema de visão considerado é composto por umacâmera digital, cuja imagem adquirida é segmentadapelo algoritmo de Otsu a fim de destacar o objeto dofundo da imagem. O contorno da região do obejto éextraído pelo método do vizinho mais próximo.
2) Nesta etapa é selecionado um número reduzido de pontoscapazes de representar o objeto. Uma rede de Hopfield,modificada para acelerar o processamento, é utilizadana simplificação do contorno.
3) Uma vez definida a simplificação da forma do objeto,a etapa final é a determinação dos pontos de contatopara fixação. O algoritmo de fixação pode variar deacordo com o tipo de garra utilizada, porém as mesmascondições de estabilidade de fixação são observadaspara qualquer caso.
Resultados ObtidosSimulações foram realizadas para avaliar o
desempenho do algoritmo proposto. Nas simulações foramutilizadas imagens de objetos do cotidiano. As imagensda Figura 7 mostram os objetos utilizados e as respostasobtidas para garras de dois e três dedos.
O tempo de processamento de cada etapa de cálculofoi medido. As simulações foram realizadas no ambienteMatlab em um computador com processador de 2,0 MHz.As Tabelas 1, 2 e 3 a seguir mostram os tempos deprocessamento de cada uma das etapas. A Tabela 1 mostraos resultados obtidos para garras de dois dedos e a Tabela2, para garras de três dedos.
O tempo de processamento da rede neural deaproximação também foi medido e comparado com o tempodo algoritmo original. As demais etapas não foramcomparadas com o algoritmo original, porém estima-seque nessas etapas não houve redução considerável do tempode processamento.
Figura 6 Padrões geométricos utilizados no treinamento da rede de seleção dos pontos de contato.
Minerva, 4 (2): 189-200
198 PEDRO & CAURIN
Figura 7 Objetos do cotidiano utilizados nas simulações. De cima para baixo: motor, suporte de furadeira, trena métrica,calculadora, rolo de fita isolante. À esquerda o resultado da fixação para garras de dois dedos e à direita o resultado obtido para
garras de três dedos. Nas figuras pode-se observar as linhas de ação dos dedos e os pontos de contato.
Minerva, 4 (2): 189-200
ALGORITMO DE RÁPIDO PROCESSAMENTO BASEADO EM REDES NEURAIS... 199
Tabela 1 Tempo de processamento de cada uma das três etapas de determinaçãodos pontos de contato para garras de dois dedos.
Objeto Tempo etapa 1 [s] Tempo etapa 2 [s] Tempo etapa 3 [s] Total [s]
motor 0,1119 0,0392 0,1165 0,2676
suporte 0,1317 0,0157 0,1107 0,2581
trena 0,1353 0,0120 0,0986 0,2459
calculadora 0,1180 0,0087 0,1126 0,2393
fita 0,1566 0,0064 0,0979 0,2609
Tabela 2 Tempo de processamento de cada uma das três etapas dedeterminação dos pontos de contato para garras de três dedos.
Objeto Tempo etapa 1 [s] Tempo etapa 2 [s] Tempo etapa 3 [s] Total [s]
motor 0,1229 0,0378 0,0966 0,2573
suporte 0,1404 0,0122 0,1151 0,2677
trena 0,1161 0,0083 0,0958 0,2202
calculadora 0,1436 0,0088 0,0975 0,2499
fita 0,1533 0,0064 0,0990 0,2587
Tabela 3 Comparação do tempo de processamento e da qualidade doresultado entre o algoritmo original de aproximação poligonal e o algoritmo proposto.
Algoritmo original Algoritmo modificado
Objeto ∑Erro
médio Erro
máximo Tempo [s] ∑Erro
médio Erro
máximo Tempo [s]
motor 4,1154 2,2188 10,001 2,9846 1,0000 0,0195
suporte 0,8000 0,4472 9,5754 1,2000 0,4472 0,0117
trena 4,5897 0,7529 3,7595 4,5897 0,4472 0,0117
calculadora 3,5457 0,7276 13,7092 0,7400 0,7071 0,037
fita 0,7059 0,4851 1,1176 0,3538 0,4472 0,0054
O método do cálculo do erro máximo quadrático edo erro médio é definido por Araújo (1995).
Conclusões e Trabalhos FuturosModificações no algoritmo, baseado em redes neurais,
para fixação de objetos desconhecidos de Valente (1999)foram apresentadas neste trabalho. As modificaçõesconcentram-se no processamento de imagens e no algoritmode aproximação poligonal. Redes neurais do tipo RBFforam treinadas para a determinação dos pontos de contatopara garras de dois e três dedos.
Na etapa de processamento da imagem o novoalgoritmo proposto utiliza uma ferramenta de binarizaçãoe posterior detecção de bordas. A binarização e extraçãodo contono apresentaram bons resultados, e o tempo deprocessamento para imagens de 640 × 480 pixels foi sempreinferior a 0,16 s. A binarização apresentou bons resultadosem imagens cujo contraste entre imagem e objeto permitiaa separação de duas regiões distintas no histograma. Contudo,para que a imagem apresente as características citadas,fontes de luz auxiliar podem ser utilizadas, ou ainda técnicasespecíficas de pré-processamento podem ser aplicadasna imagem antes da binarização.
Minerva, 4 (2): 189-200
200 PEDRO & CAURIN
Quanto ao algoritmo de aproximação poligonal, foiverificada significativa redução do tempo de processamentodevido às modificações na organização dos dados de entrada,à nova construção da matriz peso e ao novo cálculo dafunção energia. Contudo, a qualidade da aproximação foimantida.
Nas simulações realizadas (Tabela 3) verificou-seque o algoritmo original foi em média 400 vezes maislento.
Nesta etapa de determinação dos pontos de contato,redes do tipo RBF, previamente treinadas com variaçõesde classes geométricas, foram utilizadas para cada umdos tipos de garras consideradas. Nas simulações realizadas,os resultados foram satisfatórios quanto à qualidade.
Em experimentos prévios, não descritos neste trabalho,foi verificado que as redes MLP não apresentaram resultadossatisfatórios. Em contraste, nas comparações realizadasentre o desempenho das duas arquiteturas de redes Valente(1999) observou que as redes MLP apresentaram os melhoresresultados. Portanto, é proposta a realização de estudoaprofundado sobre a dependência do desempenho das redesMLP e RBF em função dos padrões de treinamento utilizadose das possíveis configurações de cada rede.
Por fim, podemos concluir que o algoritmo modificadoproposto apresentou respostas satisfatórias com tempototal de processamento reduzido, fato que evidencia queo novo algoritmo apresenta as características necessáriaspara implementação de sistemas rápidos, porém, análisesmais detalhadas devem ser realizadas para verificar se osistema é capaz de operar em tempo real.
AgradecimentosA Carlos Magno de Oliveira Valente por fornecer
o código-fonte da implementação da rede de Hopfieldpara comparações com a nova rede proposta e ao CNPqpelo apoio financeiro.
Referências BibliográficasARAÚJO, A. F. R.; TANAK, J. S. Variação de um modelo
de Rede Neural Competitiva de Hopfield paraaproximação poligonal. Proceedings of the 2nd BrazilianSymposium on Neural Network, p. 193-198, 1995.
BALLESTER, G. R. Visual determination, tracking andexecution of 2D grasping using a behavior-inspiredapproach. 2003. Tese(Doutorado) – Departamentd’Enginyeria I Ciènces dels Computadors, UniversitatJuame I, Castelló, Espanha.
BENDIKSEN, A.; HAGER, G. A vision-based graspingsystem for unfamiliar planar objects. Proceedings ofthe IEEE International Conference on Robotics andAutomation, v.4, p. 2844-2849, 1994.
CHUNG, P. C.; TSAI, C. T.; CHEN, E. L.; SUN, Y. Polygonalapproximation using a competitive Hopfield NeuralNetwork. Pattern Recognition, v. 27, n. 11, p. 1505-1512, 1994.
HAUCK, A.; RUTTINGER, J.; SORG, M.; FABER, G.Visual determination of 3D grasping points on unknownobjects with a binocular camera system. Proceedingsof the IEEE/RSJ International Conference on IntelligentRobots and Systems, v.1, p. 272-278, 1999.
HOPFIELD, J. J. Neural network and physical systemswith emergent collective computational abilities.Proceeding of National Academic Science, v. 79, p.2554-2558, 1982.
KAMON, I.; FLASH, T.; EDEMAN, S. Learning to graspusing visual information. Proceedings of the IEEEInternational Conference on Robotics and Automation,v. 3, p. 3470-2476, 1996.
MORALES, A.; RECATALA, G.; SANZ, P. J.; DEL POBIL,A. P. Heuristic vision-based computation of planarantipodal grasps on unknown objects. Proceedings ofthe IEEE International Conference on Robotics andAutomation, v. 1, p. 583-588, 2001.
MORALES, A.; SANZ, P. J.; DEL POBIL, A. P; FAGG,A. H. Vision-based three-finger grasp synthesis constrainedby hand geometry. Journal of Robotics and AutonomousSystems, v. 54, n. 6, p. 496-512, 2006.
MURRAY, R. M.; LI, Z.; SASTRY, S. A mathematicalintroduction to robotic manipulation. Boca Raton, FL:CRC Press, 1994.
OTSU, N. A threshold selection method from gray levelhistograms. IEEE Transaction on Systems, Man andCybernetics, v. 9, p. 62-66, 1979.
SANZ, P.J.; REQUENA, A.; INESTA, J. M.; DEL POBIL,A. P. Grasping the not-so-obvious: vision-based objecthandling for industrial applications. IEEE Robotics andAutomation Magazine, v. 12, p. 44-52, 2005.
SAXENA, A.; DRIEMEYER, J.; KEARNS, J.; OSONDU,C. Learning to grasp novel objects using vision.International Symposium of Experimental Robotics,2006.
VALENTE, C. M. O. Fixação de objetos de formatogeométrico desconhecido utilizando redes neuraisartificiais. 1999. Dissertação (Mestrado) – Escola deEngenharia de São Carlos, Universidade de São Paulo,São Carlos.
WANG, B.; JIANG L.; LI, J. W.; CAI, H. G.; LIU, H.Grasping unknown objects based on 3d modelreconstruction. Proceedings of the IEEE/ASMEInternational Conference on Advanced IntelligentMechatronics, p. 461-466, 2005.