Fixação de objetos por garras de robôs

Transcrição

Fixação de objetos por garras de robôs
Leonardo Marquez Pedro
Fixação de objetos por garras de robôs: aplicações de
redes neurais e proposta de auto-aprendizagem
para os casos 2D e 3D
Dissertação apresentada ao Departamento de
Engenharia Mecânica da Escola de Engenharia
de São Carlos para a obtenção do Título de
Mestre em Engenharia Mecânica
Orientador:
Prof. Dr. Glauco Augusto de Paula Caurin
SEM - D EPARTAMENTO DE E NGENHARIA M ECÂNICA
EESC - E SCOLA DE E NGENHARIA DE S ÃO C ARLOS
USP - U NIVERSIDADE DE S ÃO PAULO
São Carlos - SP
Janeiro de 2009
AUTORIZO A REPRODUÇÃO E DIVULGAÇÃO TOTAL OU PARCIAL DESTE
TRABALHO, POR QUALQUER MEIO CONVENCIONAL OU ELETRÔNICO,
PARA FINS DE ESTUDO E PESQUISA, DESDE QUE CITADA A FONTE.
Ficha catalográfica preparada pela Seção de Tratamento
da Informação do Serviço de Biblioteca – EESC/USP
Pedro, Leonardo Marquez
P372f
Fixação de objetos por garras de robôs : aplicações
de redes neurais e proposta de auto-aprendizagem para
os casos 2D e 3D / Leonardo Marquez Pedro ; orientador
Glauco Augusto de Paula Caurin, 2008.
Dissertação (Mestrado-Programa de Pós-Graduação em
Engenharia Mecânica e Área de Concentração em Dinâmica
das Máquinas e Sistemas) -- Escola de Engenharia de
São Carlos da Universidade de São Paulo, 2008.
1. Fixação de objetos 2D. 2. Fixação de objetos 3D.
3. Redes neurais artificiais. 4. Inteligência
artificial. 5. Garras robóticas. I. Título.
iv
v
Dedico esta dissertação aos meus pais
Manuel Augusto e Maria do Carmo,
exemplos de trabalho, fé e perseverança.
vi
vii
Agradecimentos
Agradeço primeiramente a Deus pela vida, e por ter me dado iluminação, inspiração e saúde
durante a realização deste trabalho.
Agradeço aos meu pais, Manuel Augusto e Maria do Carmo, pelo amor, incentivo e apoio,
e à toda a minha família por terem compreendido a minha ausência durante a dedicação aos
trabalhos. Sem a ajuda e o opoio de vocês, nada seria possível.
Agradeço também à Marilia Pinheiro de Carvalho, minha companheira e principal incentivadora, pelo apoio nos momentos difíceis, e principalmente por ter compartilhado comigo todos
os momentos vividos durante a realização do trabalho.
Ao Professor Glauco Caurin, meu orientador, pela oportunidade de desenvolvimento do
trabalho, pelos ensinamentos e pela excelente orientação.
Aos amigos de república, César e Vitor, pelo excelente convívio e pela compreensão durante
estes dois anos de trabalho.
Aos colegas do laboratório de mecatrônica, Dalton, Rafael Aroca, Jean, Jorge, Martins,
Paulo Marcos, Takao, Ronny, Akira, Ricardo, André Lins, Christoffer, Leandro Massaro, André
Dias, Real, Bruno, Belini, Marciel e Kelen, pelas idéias, sugestões e críticas ao trabalho, e
principalmente pela amizade e pelo ótimo convívio no ambiente de trabalho.
Ao amigo Rafael Vidal Aroca pelos trabalhos em parceria e pela valiosa correção do texto.
Ao Christoffer Tenório Emídio de Souza, aluno de iniciação científica, pela colaboração
referente ao tema "Simplificação de Superfícies", parte importante deste trabalho.
Aos Professores Aluizio Fausto Araújo e Roseli Franceli Romero pelas correções do texto
em relação a terminologia sobre redes neurais artificiais.
Ao colega de pesquisa Valdinei Luis Belini pela ajuda na compreensão da teoria da fixação.
Ao CNPq pelo apoio financeiro realizado com o oferecimento da bolsa de mestrado.
Por fim, gostaria de agradecer a todos os demais amigos e colegas, cujos nomes não caberiam
nesta folha, que de alguma forma contribuíram para a realização deste trabalho, e que ao lerem
estas palavras saberão que foram lembrados. Muito obrigado.
viii
Agradecimentos
ix
“O único lugar onde o sucesso vem antes do trabalho
é no dicionário.”
Albert Einstein
x
xi
Resumo
PEDRO, L. M. Fixação de objetos por garras de robôs: aplicações de redes neurais e
proposta de auto-aprendizagem para os casos 2D e 3D. Dissertação (Mestrado). Escola de
Engenharia de São Carlos, Universidade de São Paulo, São Carlos, 2008.
Este trabalho apresenta estudos da aplicação de redes neurais artificiais (RNAs) na determinação de fixação de objetos 2D e 3D por garras de robôs, e também apresenta uma proposta
de algoritmo de auto-aprendizagem para fixação, também baseado em RNAs. A capacidade de
fixar objetos, principalmente aqueles desconhecidos pelo sistema, a partir de informações de
um sistema de visão, é um dos principais requisitos dos robôs, tanto para aplicações industriais,
quanto para aplicações em ambientes menos estruturados (tal como aqueles encontrados por
robôs de serviço). Uma das diferentes maneiras de se determinar fixações de objetos desconhecidos a partir de sua forma geométrica é a utilização das RNAs. Para avaliar a capacidade das
redes nestas tarefas, três diferentes métodos são testados em simulações com objetos de extensas bases de dados. Os métodos avaliados são: o proposto por Xu et al. (1990); o proposto por
Valente (1999); e uma nova proposta baseada nestes dois métodos. Também são propostas duas
redes de Hopfield para a simplificação de objetos, uma para o caso 2D e outra para o caso 3D,
cujo objetivo é reduzir os dados que representam os objetos, sem perdas significativas de informações, e cujo propósito é simplificar as etapas de cálculo das RNAs. Os resultados obtidos
nas simulações dos três métodos avaliados, com as bases de objetos, mostram as capacidades e
limitações das redes nesta aplicação, e pode-se afirmar que as redes são capazes de determinar
pontos de fixação desde que adequadamente configuradas e treinadas. Pode-se afirmar também
que a simplificação da forma do objeto melhora o desempenho das redes, principalmente em
relação aos tempos de processamento. A partir dos resultados obtidos com os métodos avaliados, um algoritmo de auto-aprendizagem para fixação de objetos desconhecidos é proposto.
Simulações com as bases de objetos 2D e 3D são realizadas a fim de verificar a capacidade
de auto-aprendizagem, e os resultados mostram a capacidade de auto-aprendizagem de novas
fixações, à medida que as redes são utilizadas.
Palavras-chave: fixação de objetos 2D, fixação de objetos 3D, redes neurais artificiais,
inteligência artificial, garras robóticas
xii
Resumo
xiii
Abstract
PEDRO, L. M. Object grasping using robot grippers: applications of artificial neural
networks and proposal of a self-learning algorithm for 2D and 3D cases. Thesis (Master).
Escola de Engenharia de São Carlos, Universidade de São Paulo, São Carlos, 2008.
The present work presents studies of artificial neural networks (ANNs) to find 2D and
3D grasping points of unknown objects for robot grippers and hands, and also, a self-learning
grasping algorithm is proposed based on ANNs. Object grasping, mainly for those which are
unknown by the system, is one of the most important requirements of robots, either for those
designed for industrial applications, or for those that work in unstructured environments, like
service robots. Methods based on ANN, among several different methods, are interesting for
unknown object grasping due to the ANN capacity of classification and generalization. Aimed
to evaluate the ANN capacities to accomplish such tasks, and three different ANN methods are
simulated. The evaluated methods are: the methods proposed by Valente (1999) and the one
proposed by Lee et al. (2002) for the 2D and 3D case, respectively, and the proposed by Lee
et al. (2002) for the 3D case; the method proposed by Xu et al. (1990); and a new method is
proposed as a combination of the first methods. Simulations are done to evaluate the different
ANN behavior on determining grasping points for 2D and 3D objects of extensive data bases.
Two Hopfield networks are also presented to simplify the object shape, and it is aimed with such
approach to reduce the object representation without loss of information, and as a consequence,
reduce the demanded ANN processing time of training and execution. The results obtained
in the simulations confirm that the ANN is capable to determine grasping points for unknown
objects, since the network parameters are correctly tuned and the network is properly trained.
Results show that the object shape simplification improves the ANN performance concerning
processing time. Additionally, based on the behavior of the three methods evaluated on training
and on grasping determination, a self-learning algorithm is proposed. Several self-learning
simulations were done using the 2D and 3D object data bases, and the obtained results show the
capacity of learning new grasps.
Keywords: 2D object grasping, 3D object grasping, artificial neural networks, artificial
intelligence, robot grippers
xiv
Abstract
xv
Sumário
Lista de Abreviaturas e Siglas
xxi
Lista de Figuras
xxiii
Lista de Tabelas
xxxiii
I
1
2
3
xxxvii
Introdução
1
1.1
Motivação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1.2
Objetivos do trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
1.3
Metodologia adotada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
1.4
Organização do texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
Revisão bibliográfica
9
2.1
9
Fixação de objetos desconhecidos por garras robóticas . . . . . . . . . . . . .
2.1.1
Fixação 2D de objetos desconhecidos . . . . . . . . . . . . . . . . . .
10
2.1.2
Fixação 3D de objetos desconhecidos . . . . . . . . . . . . . . . . . .
17
Teoria fundamental da fixação
27
3.1
Movimentação e carregamentos de corpos rígidos . . . . . . . . . . . . . . . .
27
3.1.1
Movimentação em R3 e transformações homogêneas . . . . . . . . . .
27
3.1.2
Velocidade em R6 de um corpo rígido . . . . . . . . . . . . . . . . . .
30
3.1.3
Carregamentos e carregamentos equivalentes . . . . . . . . . . . . . .
34
Estática da fixação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
3.2
Sumário
xvi
3.3
3.4
3.2.1
Modelos de contato . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
3.2.2
Base do contato e mapa da fixação G . . . . . . . . . . . . . . . . . .
40
Propriedades da fixação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
3.3.1
Estabilidade da fixação . . . . . . . . . . . . . . . . . . . . . . . . . .
45
3.3.2
Propriedade Force-closure de uma fixação . . . . . . . . . . . . . . . .
46
3.3.3
Propriedade Form-closure de uma fixação . . . . . . . . . . . . . . . .
49
3.3.4
Avaliação e Medida da qualidade da fixação . . . . . . . . . . . . . . .
50
Resumo do Capítulo 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
54
II Fixação 2D utilizando redes neurais artificiais
4
Aproximação poligonal utilizando redes de Hopfield
59
4.1
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
59
4.2
Rede de Hopfield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
60
4.3
Algoritmo original . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
62
4.4
Algoritmo proposto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
64
4.5
Simulações e resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
67
4.5.1
Comparação com o algoritmo original . . . . . . . . . . . . . . . . . .
68
4.5.2
Comparação com demais algoritmos . . . . . . . . . . . . . . . . . . .
72
4.5.3
Simulação com imagens reais . . . . . . . . . . . . . . . . . . . . . .
76
Resumo do Capítulo 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
77
4.6
5
57
Fixação 2D de objetos desconhecidos
79
5.1
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
79
5.2
Teoria e equacionamento da fixação 2D . . . . . . . . . . . . . . . . . . . . .
81
5.2.1
Simplificações e hipóteses . . . . . . . . . . . . . . . . . . . . . . . .
82
5.2.2
Sistemas de coordenadas . . . . . . . . . . . . . . . . . . . . . . . . .
83
Sumário
xvii
5.2.3
Equacionamento da fixação 2D por 2 pontos de contato . . . . . . . . .
86
5.2.4
Equacionamento da fixação 2D por 3 pontos de contato . . . . . . . . .
89
5.3
Verificação da condição force-closure e avaliação da fixação . . . . . . . . . .
91
5.4
Métodos de determinação dos pontos de contato . . . . . . . . . . . . . . . . .
93
5.4.1
Fixação 2D por busca heurística . . . . . . . . . . . . . . . . . . . . .
94
5.4.2
Fixação 2D por otimização utilizando redes competitivas de Hopfield . 102
5.4.3
Fixação 2D por redes neurais feedforward tipo RBF . . . . . . . . . . 106
5.4.4
Fixação 2D por redes feedforward e de Hopfield combinadas . . . . . . 112
5.5
Resumo do Capítulo 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
IIIFixação 3D utilizando redes neurais artificiais
6
Simplificação de superfícies utilizando redes de Hopfield
121
6.1
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6.2
Algoritmo proposto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
6.3
7
119
6.2.1
Descrição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
6.2.2
Estratégias de simplificação . . . . . . . . . . . . . . . . . . . . . . . 130
Simulações e resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
6.3.1
A ferramenta de avaliação Metro . . . . . . . . . . . . . . . . . . . . . 131
6.3.2
Desempenho em função do limiar Umin . . . . . . . . . . . . . . . . . 132
6.3.3
Comparação com outros algoritmos . . . . . . . . . . . . . . . . . . . 135
6.4
Resumo do Capítulo 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
6.5
Agradecimentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Fixação 3D de objetos desconhecidos
143
7.1
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
7.2
Teoria e equacionamento da fixação 3D . . . . . . . . . . . . . . . . . . . . . 145
Sumário
xviii
7.2.1
Simplificações e hipóteses . . . . . . . . . . . . . . . . . . . . . . . . 145
7.2.2
Sistemas de coordenadas . . . . . . . . . . . . . . . . . . . . . . . . . 146
7.2.3
Equacionamento da fixação 3D por 2 pontos de contato . . . . . . . . . 149
7.2.4
Equacionamento da fixação 3D por 3 pontos de contato . . . . . . . . . 151
7.3
Verificação da condição force-closure e avaliação da fixação 3D . . . . . . . . 154
7.4
Métodos de seleção de pontos de contato . . . . . . . . . . . . . . . . . . . . . 156
7.4.1
Simplificações e hipóteses . . . . . . . . . . . . . . . . . . . . . . . . 156
7.4.2
Fixação 3D por Busca Heurística . . . . . . . . . . . . . . . . . . . . 160
7.4.3
Fixação 3D por otimização utilizando redes competitivas de Hopfield . 168
7.4.4
Fixação 3D por redes feedforward tipo RBF . . . . . . . . . . . . . . . 174
7.4.5
Fixação 3D por redes feedforward e de Hopfield combinadas . . . . . . 181
7.5
Resumo do Capítulo 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
7.6
Agradecimentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
IV Proposta de um sistema de fixação de auto-aprendizagem
8
Fixação 2D e 3D com auto-aprendizagem
191
8.1
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
8.2
Algoritmo proposto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
8.2.1
8.3
8.4
9
189
Descrição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Simulações e resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
8.3.1
O algoritmo proposto é capaz de aprender novas fixações? . . . . . . . 195
8.3.2
Simulações e resultados . . . . . . . . . . . . . . . . . . . . . . . . . 196
Resumo do Capítulo 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
Conclusões Finais
9.1
207
Conclusões e propostas para a fixação 2D . . . . . . . . . . . . . . . . . . . . 209
Sumário
xix
9.2
Conclusões e propostas para a fixação 3D . . . . . . . . . . . . . . . . . . . . 212
9.3
Conclusões e propostas para o algoritmo de
auto-aprendizagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Referências Bibliográficas
219
Apêndice A -- Processamento de imagens
225
A.1 Justificativa e descrição do método . . . . . . . . . . . . . . . . . . . . . . . . 225
A.2 Resultados obtidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
A.3 Considerações sobre o método de processamento de imagens adotado . . . . . 230
Apêndice B -- Tabelas do Capítulo 4
231
Apêndice C -- Tabelas do Capítulo 6
235
Apêndice D -- Cálculo dos momentos principais de inércia
245
Apêndice E -- Cálculo do centro de um fixação realizada por três pontos de contato
247
E.1 Definição do problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
E.1.1
Arco capaz de 120o . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
E.1.2
Cálculo do C f . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
E.1.3
Solução analítica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
E.1.4
Solução geométrica . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
Apêndice F -- Figuras das respostas das simulações do algoritmo de auto-aprendizagem do
Capítulo 8
253
F.1
Gráficos da segunda simulação . . . . . . . . . . . . . . . . . . . . . . . . . . 254
F.2
Gráficos da terceira simulação . . . . . . . . . . . . . . . . . . . . . . . . . . 256
F.3
Gráficos da quarta simulação . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
F.4
Gráficos da quinta simulação . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
Anexo A -- Adição de Minkowski
263
xx
Sumário
xxi
Lista de Abreviaturas e Siglas
τS
torque space
2D
bidimensional
3D
tridimensional
FS
force space
Gτ S
grasp torque space
GDL
grau de liberdade
GFS
grasp force space
GWS
grasp wrench space
MLP
multilayer perceptron
RBF
Radial bases function
RNA
Rede Neural Artificial
WS
wrench space
xxii
Lista de Abreviaturas e Siglas
xxiii
Lista de Figuras
1.1
Robô Unimate. Desenvolvido por Joseph Engelberger, em 1961. Peso aproximado de 1800kg. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2
1
Principais áreas de aplicação dos robôs industriais. Comparação entre as os
anos de 1985, 1995 e o período de 2004 a 2006. Dados extraídos de Craig
(2005) e IFR (2007). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1
2
Esquemático da garra de Hanafusa e Asada (1977). A Figura 2.1(a) mostra
os dedos da garra dispostos sobre um anel a 120o entre si, e a Figura 2.1(b)
representa a garra fixando um objeto e as molas deformadas. . . . . . . . . . .
2.2
12
Resultado do sistema proposto por Backer et al. (1985) para duas formas geométricas. A Figura 2.2(a) mostra resultado satisfatório para uma forma qualquer, e Figura 2.2(b) mostra um exemplo de falha, em que não é possível atingir
o ponto vermelho. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
2.3
DLR Hand. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
2.4
Barret Hand. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
2.5
Robô ARMAR, utilizado por Morales et al. (2006b). . . . . . . . . . . . . . .
25
3.1
Possíveis carregamentos para os três tipos fundamentais de contato propostos
por Nguyen (1988). Figura 3.1(a) contato pontual sem atrito, Figura 3.1(b)
contato pontual com atrito e Figura 3.1(c) contato macio. . . . . . . . . . . . .
3.2
38
Exemplo de uma envolvente convexa para um conjunto de pontos no plano. À
esquerda o conjunto de pontos, e à direita a envolvente convexa em vermelho
gerada pelo algoritmo QuickHull (BARBER et al., 1996). . . . . . . . . . . . .
47
4.1
Exemplo de uma rede de Hopfield com seis neurônios e suas conexões. . . . .
61
4.2
Desvio entre curva e corda definido como o somatório das distâncias entre a
curva px py e a corda px py . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3
63
Esquemático do cálculo da função energia U para um elemento qualquer. Figura
modificada de Valente (1999). . . . . . . . . . . . . . . . . . . . . . . . . . .
64
Lista de Figuras
xxiv
4.4
Função energia para uma etapa de iteração. . . . . . . . . . . . . . . . . . . .
65
4.5
Região de interesse para o cálculo da matriz H. . . . . . . . . . . . . . . . . .
66
4.6
As formas acima são freqüentemente utilizadas pelos autores da área para avaliação dos algoritmos de aproximação poligonal. Figura 4.6(a) Leaf shape, Figura
4.6(b) Chromosome shape e Figura 4.6(c) Semi-circle shape. . . . . . . . . . .
4.7
68
Gráficos de comparação entre o algoritmo proposto, em azul, e o algoritmo
original, em vermelho, para o Leaf shape (Figura 4.6(a)). Figura 4.7(a) mostra
o erro máximo por aproximação m, Figura 4.7(b) mostra o somatório do erro
quadrático por aproximação m e Figura 4.7(c) mostra o tempo de processamento
por aproximação m.A forma Leaf shape tem inicialmente 120 pontos. . . . . .
4.8
69
Gráficos de comparação entre o algoritmo proposto, em azul, e o algoritmo original, em vermelho, para o Chromosome shape (Figura 4.6(b)). Figura 4.8(a)
mostra o erro máximo por aproximação m, Figura 4.8(b) mostra o somatório do
erro quadrático por aproximação m e Figura 4.8(c) mostra o tempo de processamento por aproximação m. A forma Chromosome shape tem inicialmente 60
pontos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.9
70
Gráficos de comparação entre algoritmo proposto, em azul, e o algoritmo original, em vernelho, para o Semi-circle shape (Figura 4.6(c)). Figura 4.9(a) mostra
o erro máximo por aproximação m, Figura 4.9(b) mostra o somatório do erro
quadrático por aproximação m e Figura 4.9(c) mostra o tempo de processamento
por aproximação m. A forma Semi-circle shape tem inicialmente 100 pontos. .
71
4.10 Comparação do algoritmo proposto com outros algoritmos. Somatório do erro
quadrático por aproximação do Leaf Shape. . . . . . . . . . . . . . . . . . . .
73
4.11 Comparação do algoritmo proposto com outros algoritmos. Erro máximo por
aproximação do Leaf Shape. . . . . . . . . . . . . . . . . . . . . . . . . . . .
73
4.12 Comparação do algoritmo proposto com outros algoritmos. Somatório do erro
quadrático por aproximação do Chromosome Shape.
. . . . . . . . . . . . . .
74
4.13 Comparação do algoritmo proposto com outros algoritmos. Erro máximo por
aproximação do Chromosome Shape.
. . . . . . . . . . . . . . . . . . . . . .
74
4.14 Comparação do algoritmo proposto com outros algoritmos. Somatório do erro
quadrádico por aproximação do Semi Circle Shape. . . . . . . . . . . . . . . .
75
Lista de Figuras
xxv
4.15 Comparação do algoritmo proposto com outros algoritmos. Erro máximo por
aproximação do Semi Circle Shape. . . . . . . . . . . . . . . . . . . . . . . .
75
5.1
Definição do sistema de coordenadas do objeto. . . . . . . . . . . . . . . . . .
83
5.2
Definição do sistema de coordenadas da fixação. A Figura 5.2(a) mostra o
sistema de coordenadas da fixação por dois contato, e a Figura 5.2(b) mostra
o sistema para a fixação por trê contatos. . . . . . . . . . . . . . . . . . . . . .
5.3
84
Definição do sistema de coordenadas dos contatos para fixação por dois pontos
de contato (Figura 5.3(a)), e para fixação por três pontos de contato (Figura
5.3(b)). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
85
5.4
Definição do sistema de coordenadas dos contatos c1 e c2 . . . . . . . . . . . .
87
5.5
Definição do sistema de coordenadas da fixação, linha de ação e direção normal
aos pontos de fixação para uma garra de três dedos sem adução abdução. . . . .
5.6
Definição dos parâmetros para cálculo da função custo para fixação por dois
pontos de contato. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.7
90
96
Resultados do algoritmo de busca heurística para dois pontos de fixação para
objetos do cotidiano. As linhas vermelhas mostram a direção de aproximação
dos dedos da garra para o momento da fixação. . . . . . . . . . . . . . . . . .
97
5.8
Definição dos parâmetros para cálculo da função custo para fixação por três dedos. 99
5.9
Resultados do algoritmo de busca heurística para três pontos de fixação para
objetos do cotidiano. As linhas vermelhas mostram a direção de aproximação
dos dedos da garra para o momento da fixação (parte 1 de 2). . . . . . . . . . . 100
5.10 Resultados do algoritmo de busca heurística para três pontos de fixação para
objetos do cotidiano. As linhas vermelhas mostram a direção de aproximação
dos dedos da garra para o momento da fixação (parte 2 de 2). . . . . . . . . . . 101
5.11 Resultados do algoritmo de otimização com redes de Hopfield para determinação de dois pontos de fixação para objetos do cotidiano. As linhas vermelhas
mostram a direção de aproximação dos dedos da garra para o momento da fixação (parte 1 de 2). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
xxvi
Lista de Figuras
5.12 Resultados do algoritmo de otimização com redes de Hopfield para determinação de dois pontos de fixação para objetos do cotidiano. As linhas vermelhas
mostram a direção de aproximação dos dedos da garra para o momento da fixação (parte 2 de 2). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
5.13 Resultados do algoritmo de otimização com redes de Hopfield para determinação de três pontos de fixação para objetos do cotidiano. . . . . . . . . . . . . 105
5.14 Padrões geométricos 2D utilizados no treinamento das redes neurais feedforward
tipo RBF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
5.15 Resultados do algoritmo de otimização com redes de Hopfield para determinação de três pontos de fixação para objetos do cotidiano. . . . . . . . . . . . . 109
5.16 Resultados do algoritmo baseado em RNAs RBF na determinação de três pontos
de fixação para objetos do cotidiano. . . . . . . . . . . . . . . . . . . . . . . . 111
5.17 Resultados do algoritmo baseado em RNAs RBF e posterior otimização por
redes de Hopfield na determinação de dois pontos de fixação para objetos do
cotidiano (parte 1 de 2). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
5.18 Resultados do algoritmo baseado em RNAs RBF e posterior otimização por
redes de Hopfield na determinação de dois pontos de fixação para objetos do
cotidiano (parte 2 de 2). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
5.19 Resultados do algoritmo baseado em redes neurais RBF e posterior otimização
por redes de Hopfield na determinação de três pontos de fixação para objetos do
cotidiano. As linhas vermelhas mostram a direção de aproximação dos dedos
da garra para o momento da fixação (parte 1 de 2). . . . . . . . . . . . . . . . . 115
5.20 Resultados do algoritmo baseado em redes neurais RBF e posterior otimização
por redes de Hopfield na determinação de três pontos de fixação para objetos do
cotidiano. As linhas vermelhas mostram a direção de aproximação dos dedos
da garra para o momento da fixação (parte 2 de 2). . . . . . . . . . . . . . . . . 116
6.1
Elementos de malhas da superfície de um modelo reconstruído pela triangulação de Delaunay. Figura 6.1(a) mostra o modelo reconstruído, Figura 6.1(b)
mostra a nuvem de pontos, e a Figura 6.1(c) mostra os elementos triangulares
da malha. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Lista de Figuras
6.2
xxvii
Vizinhança de um ponto qualquer de uma malha. Em azul o ponto selecionado,
em vermelho os triângulos da vizinhança e em verde os pontos vizinhos do
ponto em azul. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
6.3
Efeito sobre a malha de superfície ao retirar um ponto. Figura 6.3(a) mostra a
malha antes de se retirar o ponto azul, Figura 6.3(b) mostra a malha reconstruída
após a retirada do ponto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
6.4
Cálculo do erro de simplificação. . . . . . . . . . . . . . . . . . . . . . . . . . 128
6.5
Figura 6.5(a) mostra o modelo Bunny, que possui com 34834 vertices e malha
de 69451 triângulos, e a Figura 6.5(b) mostra o modelo Fandisk que possui com
6475 vertices e malha de 12946 triângulos. . . . . . . . . . . . . . . . . . . . . 131
6.6
Resultados para diferentes porcentagens de simplifcação do modelo Bunny em
função do limiar Umin . A Figura 6.6(a) mostra o erro médio quadrático de cada
porcentagem de simplificação em função do limiar, e a Figura 6.6(b) mostra o
tempo de simplificação em função do mesmo limiar.
6.7
. . . . . . . . . . . . . . 133
Resultados para diferentes porcentagens de simplifcação do modelo Fandisk em
função do limiar Umin . A Figura 6.7(a) mostra o erro médio quadrático de cada
porcentagem de simplificação em função do limiar, e a Figura 6.7(b) mostra o
tempo de simplificação em função do mesmo limiar. . . . . . . . . . . . . . . . 134
6.8
Gráficos de comparação do método proposto com outros métodos da literatura
na simplificação do modelo Bunny. Os gráficos das Figuras 6.8(a) e 6.8(b)
mostram respectivamente o erro máximo Emax e o erro médio Emed medidos
para diferentes níveis de simplificação. . . . . . . . . . . . . . . . . . . . . . . 136
6.9
Gráficos de comparação do método proposto com outros métodos da literatura
na simplificação do modelo Fandisk. Os gráficos das Figuras 6.9(a) e 6.9(b)
mostram respectivamente o erro máximo e o erro médio medidos para diferentes
níveis de simplificação. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
6.10 Representação dos modelos simplificados pelo método proposto (parte 1 de 3).
138
6.11 Representação dos modelos simplificados pelo método proposto (parte 2 de 3).
139
6.12 Representação dos modelos simplificados pelo método proposto (parte 3 de 3).
140
7.1
Definição do sistema de coordenadas do objeto para a Fixação 3D. . . . . . . . 146
7.2
Sistema de coordenadas de uma fixação 3D. . . . . . . . . . . . . . . . . . . . 147
xxviii
Lista de Figuras
7.3
Sistemas de coordenadas dos contatos Ci para uma fixação 3D. . . . . . . . . . 148
7.4
Exemplos de envolventes convexas para uma fixação 3D por dois pontos de
contato. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
7.5
Exemplos de envolventes convexas para uma fixação 3D por três pontos de
contato. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
7.6
Formas de objetos, que são representadas por uma malha superficial, utilizadas
nas simulações dos métodos de determinação de pontos de fixação 3D. Os objetos representam algumas formas abstratas e alguns objetos do cotidiano (parte
1 de 2). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
7.7
Formas de objetos, que são representadas por uma malha superficial, utilizadas
nas simulações dos métodos de determinação de pontos de fixação 3D. Os objetos representam algumas formas abstratas e alguns objetos do cotidiano (parte
2 de 2). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
7.8
Definição dos ângulos θ1 e θ2 entre as linhas de ação la e os eixos Z dos sistemas de coordenadas C1 e C2 respectivamente. . . . . . . . . . . . . . . . . . 161
7.9
Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando o método de busca heurística (parte 1 de 3). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
7.10 Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando o método de busca heurística (parte 2 de 3). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
7.11 Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando o método de busca heurística (parte 3 de 3). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
7.12 Definição dos ângulos θ1 , θ2 e θ3 entre as linhas de ação la1 , la2 e la3 e os
eixos Z dos sistemas de coordenadas C1 , C2 e C3 respectivamente. . . . . . . . 165
7.13 Vista frontal, superior e em perspectiva da determinação de três pontos de fixação, para objetos do cotidiano e abstratos, utilizando o método de busca heurística (parte 1 de 3). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
7.14 Vista frontal, superior e em perspectiva da determinação de três pontos de fixação, para objetos do cotidiano e abstratos, utilizando o método de busca heurística (parte 2 de 3). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Lista de Figuras
xxix
7.15 Vista frontal, superior e em perspectiva da determinação de três pontos de fixação, para objetos do cotidiano e abstratos, utilizando o método de busca heurística (parte 3 de 3). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
7.16 Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando o método de otimização
por redes de Hopfield (parte 1 de 3). . . . . . . . . . . . . . . . . . . . . . . . 169
7.17 Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando o método de otimização
por redes de Hopfield (parte 2 de 3). . . . . . . . . . . . . . . . . . . . . . . . 170
7.18 Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando o método de otimização
por redes de Hopfield (parte 3 de 3). . . . . . . . . . . . . . . . . . . . . . . . 171
7.19 Vista frontal, superior e em perspectiva da determinação de três pontos de fixação, para objetos do cotidiano e abstratos, utilizando o método de otimização
por redes de Hopfield (parte 1 de 3). . . . . . . . . . . . . . . . . . . . . . . . 172
7.20 Vista frontal, superior e em perspectiva da determinação de três pontos de fixação, para objetos do cotidiano e abstratos, utilizando o método de otimização
por redes de Hopfield (parte 2 de 3). . . . . . . . . . . . . . . . . . . . . . . . 173
7.21 Vista frontal, superior e em perspectiva da determinação de três pontos de fixação, para objetos do cotidiano e abstratos, utilizando o método de otimização
por redes de Hopfield (parte 3 de 3). . . . . . . . . . . . . . . . . . . . . . . . 174
7.22 Padrões de treinamento para a rede feedforward tipo RBF para a fixação 3D. . . 175
7.23 Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo
RBF previamente treinadas (parte 1 de 3). . . . . . . . . . . . . . . . . . . . . 176
7.24 Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo
RBF previamente treinadas (parte 2 de 3). . . . . . . . . . . . . . . . . . . . . 177
7.25 Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo
RBF previamente treinadas (parte 2 de 3). . . . . . . . . . . . . . . . . . . . . 178
Lista de Figuras
xxx
7.26 Vista frontal, superior e em perspectiva da determinação de três pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo
RBF previamente treinadas (parte 1 de 2). . . . . . . . . . . . . . . . . . . . . 179
7.27 Vista frontal, superior e em perspectiva da determinação de três pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo
RBF previamente treinadas (parte 2 de 2). . . . . . . . . . . . . . . . . . . . . 180
7.28 Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo
RBF previamente treinadas e posterior otimização com redes de Hopfield (parte
1 de 3). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
7.29 Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo
RBF previamente treinadas e posterior otimização com redes de Hopfield (parte
2 de 3). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
7.30 Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo
RBF previamente treinadas e posterior otimização com redes de Hopfield (parte
3 de 3). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
7.31 Vista frontal, superior e em perspectiva da determinação de três pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo
RBF previamente treinadas e posterior otimização com redes de Hopfield (parte
1 de 2). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
7.32 Vista frontal, superior e em perspectiva da determinação de três pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo
RBF previamente treinadas e posterior otimização com redes de Hopfield (parte
2 de 2). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
8.1
Mapa do comportamento da rede no seu estado inicial. . . . . . . . . . . . . . 197
8.2
Mapa do comportamento da rede após a realização de 50 retreinamentos. . . . . 197
8.3
Mapas do comportamento da rede para diferentes estágios de retreinamento. . . 198
8.4
Curva de aprendizagem para a fixação 2D por dois pontos de contato. . . . . . 199
8.5
Curva de aprendizagem para a fixação 2D por três pontos de contato. . . . . . . 200
Lista de Figuras
xxxi
8.6
Curva de aprendizagem para a fixação 3D por dois pontos de contato. . . . . . 200
8.7
Curva de aprendizagem para a fixação 3D por três pontos de contato. . . . . . . 201
8.8
Objetos apresentados à rede entre retreinamentos. Os valores mostrados representam a média entre cada 250 retreinamentos. Resultados para a primeira
simulação de apresentação de objetos à rede, em ordem randômica. . . . . . . . 202
8.9
Tempo de execução da rede. Média entre cada 250 retreinamentos. Resultados
para a primeira simulação de apresentação de objetos à rede, em ordem randômica.203
8.10 Tempo de retreinamento da rede. Média entre cada 250 retreinamentos. Resultados para a primeira simulação de apresentação de objetos à rede, em ordem
randômica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
A.1 Histograma de imagens. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
A.2 Resultado do processamento da imagem. Da esquerda para a direita: imagem
original, imagem binarizada e o contorno extraído (parte 1 de 3). . . . . . . . . 227
A.3 Resultado do processamento da imagem. Da esquerda para a direita: imagem
original, imagem binarizada e o contorno extraído (parte 2 de 3). . . . . . . . . 228
A.4 Resultado do processamento da imagem. Da esquerda para a direita: imagem
original, imagem binarizada e o contorno extraído (parte 3 de 3). . . . . . . . . 229
D.1 Definição da massa do pixel pertencente a figura, e do pixel pertencente ao
fundo da imagem, necessária para o cálculo dos momentos de inércia Ixx Iyy e Ixy . 245
E.1 Pontos de contato PA , PB e PC de fixação de uma garra de três dedos e o centro
de fixção C f . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
E.2 Arco capaz de 120o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
E.3 Cálculo do ponbto C f . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
E.4 Solução geométrica para o cálculo do centro de fixação. . . . . . . . . . . . . . 250
F.1
Objetos apresentados à rede entre retreinamentos. Os valores mostrados representam a média entre cada 250 retreinamentos. Resultados para a segunda
simulação de apresentação de objetos à rede, em ordem randômica. . . . . . . . 254
F.2
Tempo de execução da rede. Média entre cada 250 retreinamentos. Resultados
para a segunda simulação de apresentação de objetos à rede, em ordem randômica.255
xxxii
F.3
Lista de Figuras
Tempo de retreinamento da rede. Média entre cada 250 retreinamentos. Resultados para a segunda simulação de apresentação de objetos à rede, em ordem
randômica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
F.4
Objetos apresentados à rede entre retreinamentos. Os valores mostrados representam a média entre cada 250 retreinamentos. Resultados para a terceira
simulação de apresentação de objetos à rede, em ordem randômica. . . . . . . . 256
F.5
Tempo de execução da rede. Média entre cada 250 retreinamentos. Resultados
para a terceira simulação de apresentação de objetos à rede, em ordem randômica.257
F.6
Tempo de retreinamento da rede. Média entre cada 250 retreinamentos. Resultados para a terceira simulação de apresentação de objetos à rede, em ordem
randômica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
F.7
Objetos apresentados à rede entre retreinamentos. Os valores mostrados representam a média entre cada 250 retreinamentos. Resultados para a quarta
simulação de apresentação de objetos à rede, em ordem randômica. . . . . . . . 258
F.8
Tempo de execução da rede. Média entre cada 250 retreinamentos. Resultados
para a quarta simulação de apresentação de objetos à rede, em ordem randômica. 259
F.9
Tempo de retreinamento da rede. Média entre cada 250 retreinamentos. Resultados para a quarta simulação de apresentação de objetos à rede, em ordem
randômica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
F.10 Objetos apresentados à rede entre retreinamentos. Os valores mostrados representam a média entre cada 250 retreinamentos. Resultados para a quinta
simulação de apresentação de objetos à rede, em ordem randômica. . . . . . . . 260
F.11 Tempo de execução da rede. Média entre cada 250 retreinamentos. Resultados
para a quinta simulação de apresentação de objetos à rede, em ordem randômica. 261
F.12 Tempo de retreinamento da rede. Média entre cada 250 retreinamentos. Resultados para a quinta simulação de apresentação de objetos à rede, em ordem
randômica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
xxxiii
Lista de Tabelas
4.1
Tabela de comparação dos tempos de processamento da aproximação poligonal,
calculada pelo algoritmo original e pelo algoritmo proposto, de formas de objetos reais, para diversos valores m de aproximação. Os tempos medidos estão
em segundos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1
Tabela do tempo de execução do algoritmo de busca heurística para fixação 2D
por dois pontos de contato dos objetos da Figura 5.7. . . . . . . . . . . . . . .
5.2
76
98
Tabela do tempo de execução do algoritmo de busca heurística para fixação 2D
por garras de três dedos dos objetos das Figuras 5.9 e 5.10. . . . . . . . . . . . 101
5.3
Tabela do tempo da fixação 2D por Hopfield para os objetos das Figuras 5.11 e
5.12. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
5.4
Tabela do tempo de determinação da fixação 2D por três pontos de contato
utilizando otimização por redes de Hopfield para os objetos da Figura 5.13. . . 106
5.5
Tabela do tempo de determinação da fixação 2D por garras de dois dedos utilizando RNAs tipo RBF para os objetos da Figura 5.15. . . . . . . . . . . . . . 110
5.6
Tabela do tempo de determinação da fixação 2D por garras de três dedos utilizando redes neurais tipo RBF para os objetos das Figuras 5.16. . . . . . . . . 112
5.7
Tabela do tempo de determinação da fixação 2D por dois dedos utilizando
RNAs tipo RBF e posterior otimização por redes de Hopfield para os objetos
das Figuras 5.17 e 5.18. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
5.8
Tabela do tempo de determinação da fixação 2D por garras de três dedos utilizando redes neurais tipo RBF e posterior otimização por redes de hopfield para
os objetos das Figuras 5.19 e 5.20. . . . . . . . . . . . . . . . . . . . . . . . . 116
7.1
Tabela de tempos de simplifcação das superfícies dos objetos das Figuras 7.6 e
7.7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
7.2
Tabela do tempo de execução do algoritmo de busca heurística para fixação 3D
por dois pontos de contato dos objetos das Figuras 7.9, 7.10 e 7.11. . . . . . . . 164
xxxiv
7.3
Lista de Tabelas
Tabela do tempo de execução do algoritmo de busca heurística para fixação 3D
por três pontos de contato dos objetos das Figuras 7.13 e 7.14. . . . . . . . . . 168
7.4
Tabela do tempo de determinação da fixação 3D por dois contatos utilizando
redes de Hopfield. Tempos para as Figuras 7.16, 7.17 e 7.18. . . . . . . . . . . 171
7.5
Tabela do tempo de determinação da fixação 3D por três pontos de contato
utilizando otimização com redes de Hopfield. Os tempos foram medidos para
os objetos das Figuras 7.19, 7.20 e 7.21. . . . . . . . . . . . . . . . . . . . . . 174
7.6
Tabela do tempo de determinação da fixação 3D por dois pontos de contatos
utilizando RNAs tipo RBF para os objetos das Figuras 7.23, 7.24 e 7.25. . . . . 178
7.7
Tabela do tempo de determinação da fixação 3D por três pontos de contatos
utilizando RNAs tipo RBF para os objetos das Figuras 7.26 e 7.27 . . . . . . . . 181
7.8
Tabela do tempo de determinação da fixação 3D por dois pontos utilizando
RNAs tipo RBF e posterior otimização por redes de Hopfield para os objetos
das Figuras 7.28, 7.29 e 7.30. . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
7.9
Tabela do tempo de determinação da fixação 3D por garras de dois dedos utilizando RNAs tipo RBF e posterior otimização por redes de Hopfield para os
objetos das Figuras 7.31 e 7.32 . . . . . . . . . . . . . . . . . . . . . . . . . . 187
9.1
Comparação dos tempos de processamento da determinação da fixação 2D por
dois pontos de contato utilizando os quatro diferentes métodos descritos. . . . . 210
9.2
Comparação dos tempos de processamento da determinação da fixação 2D por
três pontos de contato utilizando os quatro diferentes métodos descritos. . . . . 210
9.3
Tabela de comparação dos tempos de processamento da determinação da fixação 3D por dois pontos de contato utilizando os quatro diferentes métodos
descritos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
9.4
Tabela de comparação dos tempos de processamento da determinação da fixação 3D por três pontos de contato utilizando os quatro diferentes métodos
descritos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
A.1 Tabela dos tempos da etapa de processamento das imagems utilizadas nas simulações do algoritmo de fixação 2D proposto no Capítulo 5. . . . . . . . . . . 230
B.1 Tabela de resultados de algoritmos de aproximação poligonal (parte 1 de 2). . . 231
B.2 Tabela de resultados de algoritmos de aproximação poligonal (parte 2 de 2). . . 232
Lista de Tabelas
xxxv
B.3 Tabela de resultados do algoritmo proposto para a aproximação poligonal. . . . 233
C.1 Valores dos erros de silplificação Emax e Emed e do tempo de processamento
para diferentes porcentagens de simplificação e limiar de energia Umin para o
modelo Bunny. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
C.2 Continuação da Tabela C.1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
C.3 Valores dos erros de silplificação Emax e Emed e do tempo de processamento
para diferentes porcentagens de simplificação e limiar de energia Umin para o
modelo Fandisk. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
C.4 Continuação da Tabela C.3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
C.5 Resultados obtidos na simplificação do Modelo Bunny (34834 vertices, 69451
triângulos) para o método proposto, e para os outros métodos (parte 1 de 2). . . 240
C.6 Resultados obtidos na simplificação do Modelo Bunny (34834 vertices, 69451
triângulos) para o método proposto, e para os outros métodos (parte 2 de 2). . . 241
C.7 Resultados obtidos na simplificação do Modelo Fandisk (6475 vertices, 12946
triângulos) para o método proposto, e para os outros métodos (parte 1 de 2). . . 242
C.8 Resultados obtidos na simplificação do Modelo Fandisk (6475 vertices, 12946
triângulos) para o método proposto, e para os outros métodos (parte 2 de 2). . . 243
xxxvi
Lista de Tabelas
xxxvii
Parte I
1
1
Introdução
1.1 Motivação
A interação com objetos é uma das diferentes formas com que sistemas robóticos podem
interagir com o meio ambiente. Tal interação, denominada na robótica como movimentação de
objetos (MURRAY et al., 1994; MASON, 2001), tornou-se interessante para a indústria pela
possibilidade de automatização de tarefas, que se iniciou na década de 1960 com o primeiro
braço robótico desenvolvido, o Unimate (Figura 1.1), e na época foi inserido de forma experimental na linha de produção da General Motors, onde transportava blocos de motores em alta
temperatura (MURRAY et al., 1994).
Figura 1.1: Robô Unimate. Desenvolvido por Joseph Engelberger, em 1961. Peso aproximado
de 1800kg.
Desde a construção do primeiro robô até meados de 1980, mesmo com a instalação de
mais de 1500 unidades (principalmente no Japão e nos EUA), as principais tarefas dos braços
robóticos industriais constituíam-se de operações simples em que não é necessário precisão de
posicionamento ou grandes velocidades de movimentação, tais como as operações de soldagem
e de pintura (CRAIG, 2005).
A agregação de novas tecnologias aos robôs, como por exemplo: novos materiais; melhores
1 Introdução
2
sensores e motores; possibilitou a utilização deles em novas tarefas que até então não eram
possíveis devido aos erros de posicionamento e às baixas velocidades de movimentação. O
histograma da Figura 1.2 mostra as principais áreas de instalação dos manipuladores robóticos1
no ano de 1985, no de 1995, e no período de 2004 a 2006, conquistadas pela utilização de novas
tecnologias.
Figura 1.2: Principais áreas de aplicação dos robôs industriais. Comparação entre as os anos de
1985, 1995 e o período de 2004 a 2006. Dados extraídos de Craig (2005) e IFR (2007).
Pode-se observar que as aplicações de maior crescimento nos anos de 1985 e de 1995 foram
transferência de material e montagem. Também houve crescimento considerável em operações
de soldagem, principalmente para aquelas de pouca precisão e baixa qualidade, que não exigem
precisão de posicionamento e grandes velocidades de deslocamento dos manipuladores.
No período de 2004 a 2006, apesar da constante oscilação de instalações entre as principais
operações destinadas aos robôs, pode-se observar que as principais áreas de aplicação dos robôs
industriais continuaram sendo as operações de soldagem e as operações de movimentação de
materiais, com destaque para a última. Porém, apesar destas operações serem classificadas
com o mesmo nome para todos os períodos apresentados no histograma, as áreas de aplicação
dos robôs do período de 2004 a 2006 são qualitativamente diferentes daquelas das décadas de
1980 e 1990. As principais diferenças entre as mesmas aplicações para as diferentes épocas
são: a precisão de posicionamento; a velocidade de movimentação; e o controle de força. Estas
diferenças estão relacionadas às melhorias provocadas pelo constante desenvolvimento de novas
tecnologias na robótica.
Ainda quanto ao histograma da Figura 1.2, algumas aplicações como pintura e inspeção não
apresentam números de instalações expressivos no período de 2004 a 2006. Este fato se deve
à saturação do mercado, ou seja, as novas instalações nestas aplicações são na grande maioria
1 Os
manipuladores robóticos utilizados na indústria também são denominados como robôs industriais.
1.1 Motivação
3
realizadas na substituição dos antigos robôs. E ainda, a agregação de novas tecnologias não
promoveu melhores resultados nas operações, pois estas operações não requerem requisitos de
alto desempenho.
Dentre as diversas novas tecnologias agregadas aos robôs, as inovações também estão presentes nas ferramentas utilizadas em cada tarefa específica, principalmente naquelas que envolvem movimentação de material. As ferramentas utilizadas na movimentação de material
são denominadas garras robóticas, e são responsáveis pela fixação e manipulação dos objetos durante as operações. As inovações relacionadas às garras robóticas são uns dos fatores
responsáveis pela melhora da capacidade dos robôs em movimentar materiais, o que, conseqüentemente, promove a elevada taxa instalação de robôs em tais operações desde o início da
utilização de manipuladores robóticos na indústria (SANZ et al., 2005).
As primeiras garras desenvolvidas e utilizadas na indústria apresentavam dois dedos (garras
tipo pinça) ou três dedos (garras tipo castanha), cujo acionamento era realizado por um único
atuador, normalmente hidráulico ou pneumático, fato que limitava a capacidade de fixação e,
conseqüentemente, a utilização dos robôs. Os trabalhos no desenvolvimento de garras mais capazes e de sistemas inteligentes de fixação iniciaram-se no final da década de 1970 e no início da
década de 1980. Salisbury (1982a) propôs uma garra de três dedos, com três graus de liberdade
cada, considerada por muitos autores da área como o trabalho precursor no desenvolvimento
de garras robóticas complexas. Defini-se como garras robóticas complexas aquelas que apresentam múltiplos dedos, com diversos graus de liberdade cada, cujos atuadores são especiais, e
também apresentam sensores de posição, de tato e de força.
Um breve histórico do desenvolvimento das garras robóticas e antropomórficas, assim como
uma descrição das suas principais características, pode ser encontrado em Murray et al. (1994).
Outros trabalhos de Mestrado e de Doutorado realizados no laboratório de Mecatrônica da
EESC-USP, anteriores e contemporâneos a este, também fazem revisões e descrições das principais garras robóticas e antropomórficas (VALENTE, 1999; MARQUES, 2008). Para maior
conhecimento das garras robóticas, recomenda-se a leitura destes trabalhos.
Observa-se que as novas garras desenvolvidas apresentam múltiplos dedos compostos por
diversas juntas. Para a realização de tarefas como fixação e manipulação, é necessário que todos
as juntas trabalhem em sincronismo, e para tanto, controladores mais complexos e eficientes devem ser desenvolvidos. Tanto para o projeto das garras de múltiplos dedos e o desenvolvimento
de controladores, quanto para a instalação e a manutenção do sistema, recursos humanos especializados e altos investimentos são necessários. Por isso, as primeiras garras desenvolvidas
(tipo pinça e castanha) ainda são encontradas em larga escala como ferramentas dos manipu-
1 Introdução
4
ladores robóticos, fato que os torna altamente especializados e incapazes de se adaptarem às
modificações nas condições de operação, ou seja, modificações na forma ou na posição do objeto a ser fixado (CUTKOSKY, 1985).
Para que a fixação de um objeto, tanto para sistemas providos de garras desenvolvidas,
quanto para sistemas providos de garras primitivas, independa da forma e da posição daquele,
é necesária a utilização de um sistema inteligente capaz de localizar o objeto em seu espaço
de trabalho e de determinar uma fixação adequada. Neste sentido, pode-se destacar o trabalho
realizado por Hanafusa e Asada (1977) como o pioneiro dentre os que se propõem a desenvolver
planejadores de fixação. Hanafusa e Asada (1977) propõem um sistema de escolha a partir da
geometria de uma seção plana do objeto da posição e da orientação de uma garra de três dedos
que permita uma fixação estável do objeto.
Os sistemas inteligentes de fixação baseiam-se fundamentalmente nas características do
objeto para determinar uma fixação adequada. Dentre as diversas características que um objeto
pode apresentar: massa, temperatura, rigidez, forma, textura, cor, entre outras propriedades
químicas, físicas e mecânicas; a forma apresenta-se como a mais adequada para a determinação
da fixação, embora algumas caracterísicas como a massa e a rigidez também sejam importantes,
principalmente para o caso de objetos com densidade variável e deformáveis, respectivamente.
A captura desta informação, ou seja, a captura da forma do objeto, pode ser realizada por
sistemas de visão bidimensional (visão 2D), normalmente composto por uma única câmera,
ou por sistemas de visão tridimensional (visão 3D), que podem ser compostos por duas ou
por diversas câmeras, ou compostos por sensores de profundidade da cena ativos ou passivos
(FERNANDES, 2005). A partir dos dados do sensor de visão, 2D ou 3D, o sistema de fixação
deve então determinar pontos adequados de fixação.
Assim, um planejador de fixação, que determina fixações a partir da forma do objeto, é
fundamental para tornar os sistemas robóticos mais eficientes nas tarefas de movimentação de
objetos, sejam elas destinadas à automação industrial, sejam elas para apoio e realização de
serviços em ambientes menos estruturados como escritórios e residências. O presente trabalho
segue esta linha de pesquisa e seu objetivo é propor um sistema de determinação de pontos de
fixação de objetos, previamente desconhecidos pelo robô, a partir de informações sobre a forma
do objeto adquiridas por um sistema de visão.
Para uma maior compreensão da fixação de objetos por garras robóticas, na Seção 2.1 do
próximo Capítulo, é realizada uma descrição dos trabalhos relevantes da literatura em sistemas
de fixação 2D e fixação 3D, que entende-se como fixação baseada na forma do objeto capturada
por visão 2D e por visão 3D, respectivamente.
1.2 Objetivos do trabalho
5
1.2 Objetivos do trabalho
O presente trabalho, como parte integrante da linha de pesquisa em Habilidades SensoMotoras aplicadas ao Desenvolvimento de Mãos Artificiais Robotizadas desenvolvida no Laboratório de Mecatrônica da EESC-USP, tem como principal objetivo propor sistemas de fixação
3D de objetos desconhecidos por garras robóticas baseados em RNAs, sendo que a tomada de
decisão é baseada em informações do objeto obtidas por um sistema de visão. Os sistemas de
visão comumente utilizados na robótica podem ser 2D (visão 2D), ou 3D (visão 3D), conforme
discutido na Seção 2.1. Por este fato, o objetivo geral do trabalho pode ser dividido em dois
objetivos específios.
O primeiro objetivo consiste na revisão dos sistemas de fixação 2D de objetos desconhecidos utilizando RNAs. Dois trabalhos da fixação 2D com RNAs são revisados para cumprir
este objetivo, são eles: o trabalho de Xu et al. (1990) e o trabalho de Valente (1999). Ainda
como parte do primeiro objetivo específico, realizam-se propostas de melhorias dos métodos
revisados.
A partir das observações dos métodos revistos e dos propostos considerando a fixação 2D,
métodos para a fixação 3D de objetos serão apresentados. Portanto, o segundo objetivo específico consiste na extensão dos métodos de fixação 2D para o caso 3D. Esta extensão é baseada,
fundamentalmente, nas observações e conclusões obtidas no cumprimento do primeiro objetivo
específico.
Por fim, como terceiro objetivo específico, o tempo total de processamento deve ser reduzido para que o sistema possa ser utilizado com fins acadêmicos, em pesquisas contemporâneas realizadas no mesmo laboratório e em laboratórios parceiros, ou ainda, para que possa
ser introduzido em aplicações industriais e em robôs de serviço. Para atingir tal objetivo, métodos de redução de dados são utilizados para simplificar a representação dos objetos, tanto para
o caso 2D quanto para o 3D. Estes métodos de redução de dados também devem ser baseados
em RNAs.
1.3 Metodologia adotada
Nos sistemas de fixação 2D e 3D revisados e propostos neste trabalho, RNAs são empregadas em substituição aos métodos analíticos, geométricos, de otimização e de busca heurística
utilizados em outros trabalhos. As redes são utilizadas nas etapas de processamento de dados e
de determinação dos pontos de contato. A vantagem das redes neurais está na sua capacidade
1 Introdução
6
de generalização, sua tolerância a ruídos e sua capacidade de aprendizagem.
Na etapa do processamento de dados, as redes são responsáveis por simplificar os dados
que representam a forma do objeto, a fim de diminuir os dados necessários para os cálculos das
etapas de determinação da fixação. Os resultados da simplificação são comparados com outros
algoritmos de simplificação existentes na literatura com o intuito de comparação de desempenho
quanto ao tempo e quanto à qualidade.
Os resultados dos métodos de fixação, 2D ou 3D, são avaliados quanto à sua capacidade
de determinar fixações para objetos desconhecidos. Para isso, bases de objetos são utilizadas,
e mede-se o desempenho de cada método na determinação de fixações satisfatórias2 para cada
um dos objetos da base. A base de objetos 2D é formada por 8100 imagens de setes objetos
obtidas a partir de ambientes virtuais (SAXENA, 2006). A base de objetos 3D é formada por
11700 objetos abstrados contruídos por modelagem computacional.
Além das bases de objetos 2D e 3D, 12 imagens de objetos reais são utilizadas para apresentar os pontos de fixação obtidas pelos métodos de fixação 2D, e oito objetos 3D virtuais
(três com formato abstrato e cinco com formato de objetos do cotidiano) são utilizados para
apresentar os pontos de fixação determinados pelos métodos de fixação 3D.
Vale ressaltar também que, para tornar a avaliação dos diferentes métodos independente da
garra utilizada, a fixação, 2D ou 3D, é determinada para dois e três pontos de contato sem a
consideração das dimensões do objeto e da garra, de colisões, e da acessibilidade aos pontos
de contato. Esta simplificação permite avaliar a capacidade de cada método sem restrições de
carácter cinemático.
Além da qualidade dos resultados, também se investiga o tempo de processamento de cada
método, pois é desejado obter os menores tempos de processamento possíveis. Os tempos de
processamento dos diferentes métodos utilizando RNAs são comparados com os tempos de
processamento do método da busca heurística, que tem sempre 100% de fixação satisfatórias,
porém com tempos elevados.
Todas as simulações são realizadas em um computador tipo Desktop com processador de
64bits com velocidade de 2,0 GHz de processamento. As simulações são realizadas no ambiente
de desenvolvimento Matlab. Esta plataforma utilizada nos testes e simulações é citada em todo
o texto como "computador de testes".
2 No
Capítulo 3 é apresentada a propriedade force-closure de uma fixação, que define se uma fixação é satisfatória ou não.
1.4 Organização do texto
7
1.4 Organização do texto
Esta Dissertação está organizada na seguinte forma:
No Capítulo 2, são apresentados os principais trabalhos que propõem métodos de fixação
de objetos baseados em sua forma 2D e 3D. Para cada um dos métodos apresentados, as principais características e resultados são apresentados e discutidos com a finalidade de comparar
os métodos da literatura e seus resultados com os métodos e resultados apresentados e obtidos
neste trabalho.
A fundamentação teórica sobre o tema principal, a fixação de objetos, é realizada no Capítulo 3, com a apresentação do estado da arte da teoria fundamental da fixação.
O Capítulo 4 apresenta modificações na rede neural proposta por Chung et al. (1994), e
modificada por Araújo e Tanaka (1995), para o problema da aproximação poligonal de curvas
definidas em um plano. A rede neural proposta é utilizada na etapa de redução dos dados, que
representam a forma do objeto, nos sistemas de fixação 2D apresentados no Capítulo 5. Simulações com curvas que definem objetos reais são apresentadas, e comparações quanto à qualidade
de aproximação e quanto ao tempo de processamento do algoritmo proposto com o algoritmo
original, e com outros algoritmos de aproximação poligonal, também são apresentadas.
No Capítulo 5, é estudado o problema de fixação 2D utilizando RNAs. O problema é
abordado para fixações por dois e três pontos de contato. Cada uma das etapas do planejador
da fixação 2D é detalhada. Resultados de simulações com imagens de objetos reais são apresentadas para os diferentes métodos de determinação da fixação 2D. E ainda, simulações são
realizadas com uma base de 8100 objetos diferentes para verificar o desempenho das redes.
No Capítulo 6, é proposto um algoritmo para a simplicação de superfícies que representam
objetos 3D. O algoritmo é uma adaptação da rede competitiva de Hopfield para a aproximação
poligonal proposta no Capítulo 4. A simplificação é utilizada no algoritmo de fixação 3D para
reduzir os dados de representação das superfícies que definem objetos. Os resultados obtidos
na simplificação de superfícies são comparados quanto à qualidade da simplificação com outros algoritmos de simplificação de referência na literatura. Considerações sobre o tempo de
processamento também são apresentadas.
No Capítulo 7, a fixação 3D utilizando RNAs é estudada, e planejadores de fixação 3D
de objetos desconhecidos por dois e três pontos de contato são apresentados. Testes dos algoritmos de fixação 3D são realizados com objetos provenientes de modelagem computacional.
Nos testes é utilizada uma base de 11700 objetos 3D abstratos, que foram obtidos por mode-
1 Introdução
8
lagem computacional. Os resultados obtidos mostram a capacidade de se determinar fixações
adequadas para objetos desconhecidos, e considerações sobre o tempo de processamento são
realizadas em relação às possíveis aplicações.
No Capítulo 8, é apresentado um algoritmo de auto-aprendizagem de fixações baseado nas
RNAs implementadas e simuladas nos Capítulos 5 e 7. Diferentes simulações com as bases
de objetos são realizadas a fim de verificar a capacidade de auto-aprendizagem. Os resultados obtidos apontam a capacidade das redes em melhorar seu desempenho pelo mecanismo de
aprendizagem proposto.
Por fim, no Capítulo 9 seguem as considerações finais do trabalho assim como várias propostas para trabalhos futuros. Além disso, por motivos didáticos, algumas considerações e
propostas específicas do tema abordado são também realizadas ao final de cada Capítulo.
9
2
Revisão bibliográfica
2.1 Fixação de objetos desconhecidos por garras robóticas
A fixação de um objeto pode ser definida como a aplicação de forças de contato adequadas
que mantêm o objeto em equilíbrio estático, e também capazes de equilibrar carregamentos
externos. Para que uma fixação apresente as características descritas, as forças aplicadas pela
garra sobre o objeto devem estar localizadas em pontos estratégicos, os denominados pontos
de contato ou pontos de fixação. Estes pontos são determinados pelo planejador da fixação
a partir das características do objeto, do tipo de garra, do modelo do contato e dos possíveis
carregamentos externos.
Para os casos em que os objetos são previamente desconhecidos pelo sistema, é necessário
que o planejador reconheça o objeto através da interpretação dos dados obtidos pelos sensores
de visão. Os tipos de sensores utilizados determinam quais os objetos podem ser fixados e
quais as garras mais adequadas para a operação. Por exemplo, os planejadores que reconhecem
a forma do objeto a partir de uma única câmera são eficientes apenas para objetos planos (PEDRO; CAURIN, 2008). As informações obtidas por sistemas de visão 2D apresentam somente
informações sobre a seção predominante do objeto, desta forma, o sistema de fixação 2D está
limitado a fixar objetos cuja altura é expressamente menor que a sua seção predominante. Devido à limitação de objetos a serem fixados, imposta pelo sistema de visão, as garras mais
empregadas neste caso são as garras primitivas, as garras tipo pinça e castanha, sendo que a
utilização de garras de múltiplos dedos e múltiplos graus de liberdade não é recomendada, pois
a sua grande capacidade de movimentação fica subutilizada.
Para o caso de planejadores que utilizam sensores mais poderosos, como visão estereoscópica ou scanner 3D, a obtenção de informações sobre a geometria 3D da peça permite determinar pontos de fixação mais adequados, ou até selecionar regiões de fixação como alças
e cabos, ou ainda determinar uma postura para a garra adequada para uma operação específica (CUTKOSKY, 1985). Por vezes, uma fixação, que foi determinada a partir dos dados
obtidos por um sistema de visão 3D, somente é executada com sucesso pelas garras mais com-
2 Revisão bibliográfica
10
plexas, pois em alguns casos, tal como aqueles em que os pontos selecionados não estão em
uma disposição geométrica trivial, a fixação pode apenas ser realizada pelas garras de maior
mobilidade.
Os planejadores de fixação podem então ser classificados em relação ao método de aquisição de dados da cena em duas classes: planejadores de fixação 2D e planejadores de fixação 3D.
O primeiro sistema determina os pontos de contato a partir da forma 2D do objeto, enquanto
que o segundo determina-os a partir da forma 3D. Na literatura, pode-se ainda encontrar diferentes definições para fixação 2D e 3D determinadas pela ocorrência de carregamentos apenas
em um plano, e pela ocorrência de carregamentos no espaço respectivamente. Existem ainda
outros sistemas capazes de fixar objetos que utilizam sensores de força e de tato combinados
com sensores de visão (VISCHER, 1992; ALLEN et al., 1996; HAIDACHER, 2004), contudo,
no presente trabalho os estudos estão concentrados naqueles planejadores que utilizam apenas
informações obtidas pelos sensores de visão. Os principais planejadores de fixação 2D e 3D
propostos na literatura são apresentadas nas Seções 2.1.1 e 2.1.2, repectivamente.
2.1.1 Fixação 2D de objetos desconhecidos
A fixação 2D consiste em aplicar forças de contato, capazes de manter o objeto em equilíbrio e resistir a distúrbios, cujas posições de aplicação são determinadas a partir da sua forma
2D. A fixação apresenta basicamente três fases definidas: aquisição de dados da cena, processamento dos dados, e planejamento e execução da fixação.
Nos trabalhos precursores de Hanafusa e Asada (1977) e Backer et al. (1985), as estapas
anteriores ao planejamento da fixação, responsáveis pela aquisição dos dados da cena e de
processamento dos dados para a definição da forma do objeto não foram consideradas. Contudo,
Sanz et al. (1998) e Morales et al. (2001) apresentam as câmeras como os sensores de aquisição
mais adequados para o caso. De fato, nos trabalhos citados nesta Seção, com exceção daqueles
que abstraem a informação, uma única câmera é utilizada como dispositivo de aquisição de
dados da cena.
A câmera pode ser móvel, normalmente localizada junto ao efetuador do braço robótico
(câmera de punho), ou estática em uma posição estratégica, normalmente no topo da cena
(câmera de topo). A utilização de uma câmera implica na necessidade de calibração do sistema, e da transformação das coordenadas da imagem (posição dos pixels na imagem) para um
sistema de coordenadas conhecido pelo robô (sistema de coordenadas global para as câmeras
de topo, e sistema de coordenadas da ferramenta para as câmeras de punho).
2.1 Fixação de objetos desconhecidos por garras robóticas
11
A etapa de processamento dos dados consiste na aplicação, sobre a imagem da cena, de
técnicas de processamento de imagens. O processamento da imagem tem como objetivos básicos a localização do objeto na cena, a determinação da sua forma, normalmente representada
pelo seu contorno, e a extração de algumas de suas características, tais como: área, centro geométrico, perímetro, momentos principais de inércia, esqueleto, entre outros. Em alguns casos
a forma ainda é simplificada, como em Boissonnat (1982), que simplifica o contorno do objeto
por cinco primitivas elementares, e em Backer et al. (1985), Valente (1999) , e Ballester (2003)
que simplificam o contorno do objeto por uma aproximação poligonal. O objetivo de simplificar a forma do objeto é, na maioria dos casos, reduzir o custo computacional e o tempo de
processamento das etapas posteriores de determinação dos pontos de contato.
A partir da forma do objeto, simplificada ou não, das suas outras características, das características da garra considerada e do tipo de contato, pontos adequados para uma fixação devem
ser determinados pelo planejador da fixação 2D. Os principais algoritmos de fixação 2D são
apresentados nos próximos parágrafos, e são descritas: a etapa de processamento de imagens,
quando não abstraída, as características das garras e do contato, e o método de determinação
dos pontos1 .
O trabalho realizado por Hanafusa e Asada (1977) é considerado por diversos autores como
o trabalho pioneiro na determinação de pontos de contato a partir da geometria do objeto. A
garra considerada possui três dedos elásticos compostos por molas, dispostos em um anel e
defasados de 120o entre si. Os dedos não apresentam movimentação lateral, a força aplicada é
controlada pela deformação da mola desconsiderando as forças de atrito. O objetivo é encontrar
uma posição no plano xy, e uma orientação θ entre a garra e o objeto, medida no mesmo plano,
em que a força aplicada por cada dedo sobre o objeto (medida pela deformação da mola) seja
mínima. Para tanto, uma busca composta de três etapas é realizada: na primeira etapa, o centro
da garra é posicionado sobre o centróide do objeto; na segunda, a orientação θ da garra é variada
até o ponto de menor deformação das molas; na terceira etapa, a posição da garra no plano xy
é variada mantendo θ constante até um novo ponto de mínima deformação. Como limitações
pode-se citar a ocorrência de escorregamento dos dedos sobre o objeto, pois o sistema não
considera o atrito e o ângulo entre as orientações dos dedos e as direções normais aos contatos,
e ainda segundo Backer et al. (1985), o sistema não é capaz de encontrar o mínimo global de
energia da fixação.
1 Recomenda-se
a leitura dos trabalhos completos para uma melhor compreensão dos mesmos.
2 Revisão bibliográfica
12
(a)
(b)
Figura 2.1: Esquemático da garra de Hanafusa e Asada (1977). A Figura 2.1(a) mostra os dedos
da garra dispostos sobre um anel a 120o entre si, e a Figura 2.1(b) representa a garra fixando
um objeto e as molas deformadas.
Backer et al. (1985) propõem modificações para o sistema de Hanafusa e Asada (1977) a
fim de ampliar a capacidade de fixação do sistema. Movimentos laterais são adicionados a dois
dedos da garra, o atrito é considerado no modelo do contato e um sistema de escolha da fixação baseado na geometria do objeto, ao contrário de uma busca, é proposto. A movimentação
lateral permite um ajuste adequado entre as posições dos dedos e as direções normais aos contatos, e ainda evita a ocorrência de forças de atrito não desejadas que podem provocas possíveis
escorregamentos. Os pontos de contato são determinados pelo cruzamento entre o polígono que
representa o objeto e o maior circulo inscrito no mesmo (vide Figura 2.2(a)). É demonstrado
pelos autores que o novo sistema é capaz de determinar pontos de fixação mais estáveis que o
sistema anterior de Hanafusa e Asada (1977), contudo, o sistema apresenta falhas para objetos
côncavos, com rasgos ou com reentrâncias, pois os pontos selecionados nestes locais podem
não ser acessíveis para os dedos da garra.
Hanafusa e Asada (1977) utilizam um modelo simplificado de contato, em que a força é
realizada sobre um ponto do objeto e os efeitos de atrito são despresados. Backer et al. (1985)
consideram a ocorrência de forças de atrito no posicionamento dos dedos, o que possibilitou a
obtenção de melhores resultados. De fato, as forças de atrito evitam que os dedos escorreguem
sobre a superfície do objeto durante a fixação. Para tanto, a diferença angular entre a direção
de aplicação da força e a direção normal ao ponto de contato deve estar abaixo de um limiar
definido pelo coeficiente de atrito entre dedo e objeto. A região definida por este limiar é
denominada cone de atrito.
Salisbury (1982a) apresenta oito modelos diferentes de contato entre dedo e objeto, contudo, os modelos podem ser resumidos em três tipos: ponto de contato sem atrito; ponto de
2.1 Fixação de objetos desconhecidos por garras robóticas
(a)
13
(b)
Figura 2.2: Resultado do sistema proposto por Backer et al. (1985) para duas formas geométricas. A Figura 2.2(a) mostra resultado satisfatório para uma forma qualquer, e Figura 2.2(b)
mostra um exemplo de falha, em que não é possível atingir o ponto vermelho.
contato com atrito; e contato macio (MURRAY et al., 1994). O modelo de ponto de contato
sem atrito permite apenas a aplicação de forças na direção normal ao ponto de contato. O modelo de ponto de contato com atrito permite a aplicação de forças localizadas dentro do cone
de atrito. O modelo de contato macio permite a aplicação de forças localizadas dentro do cone
de atrito, e momentos de atrito, abaixo de um limiar, na mesma direção de aplicação da força
(mais detalhes na Seção 3.2.1).
O modelo de contato entre os dedos e o objeto é decisivo na escolha do tipo de garra a
ser utilizada e no desenvolvimento do algoritmo de determinação dos contados. Por exemplo,
quando se considera o modelo de contato pontual sem atrito, quatro contatos dispostos estrategicamente são necessários para imobilizar um objeto suscetível à movimentações no plano, e sete
contatos para movimentos no espaço (LAKSHMINARAYANA, 1978). Quando se considera o
modelo de contato com atrito, três pontos de contato são necessários para resistir a quaisquer
esforços no espaço, e quando se considera o modelo de contato macio, apenas dois pontos são
suficientes para resistir a esforços no espaço (NGUYEN, 1988).
Ainda sobre os trabalhos de Hanafusa e Asada (1977) e Backer et al. (1985), as forças
de contato são determinadas a partir da deformação das molas, e as forças de atrito em cada
contato, para o caso do segundo trabalho, podem ser determinadas analiticamente. Em outros
casos particulares, como o estudado por Abel et al. (1985), em que apenas a força gravitacional
2 Revisão bibliográfica
14
atua sobre o objeto e as forças de contato e atrito são definidas no mesmo plano da gravidade,
é possível determinar as forças de atrito através de equações de equilíbrio estático do objeto.
Contudo, quando se considera modelos completos e todas as possibilidades de carregamentos sobre o objeto, pode-se dizer que é impossível a determinação dos carregamentos de cada
contato (forças de atrito e momentos de atrito) a partir da resolução analítica das equações de
equilíbrio estático do objeto. Nestes casos, a fixação é determinada segundo diferentes critérios
de qualidade e de estabilidade (MURRAY et al., 1994).
Chen e Burdick (1992) utilizam o modelo de contato macio e apresentam um algoritmo
baseado em técnicas de otimização para determinar pontos de contato para garras de dois dedos.
Uma função custo classifica os pontos de fixação de acordo com as características geométricas
da fixação: distância entre pontos, ângulos entre a direção da normal ao ponto e da força, distância entre centróide e pontos de contato e distância entre linha de ação (definida pela semi-reta
ligando os pontos de contato) e centróide. Técnicas de otimização são utilizadas para encontrar
os pontos críticos da função custo que representam pontos adequados de fixação. Também se
destaca neste trabalho a utilização da forma do objeto simplificada. Nesta simplificação, seções
do contorno do objeto são representadas por polinômios do terceiro grau.
No trabalho realizado por Bendiksen e Hager (1994), uma garra de dedos paralelos é utilizada para fixar objetos planos. Dados da cena são adquiridos por uma única câmera e a forma
do objeto é determinada pelo contorno extraído pelo sistema de processamento de imagens.
Para a determinação dos pontos de contato, uma busca heurística é realizada e cada configuração é avaliada segundo um critério de estabiblidade. Um sistema mapeia os pontos de contato
para o sistema de coordenadas global e a fixação é executada. Dentre os 14 objetos utilizados
nos experimentos, 10 foram fixados com sucesso.
Similar aos trabalho de Chen e Burdick (1992) e Bendiksen e Hager (1994), pode-se também citar outros trabalhos como o de Sanz et al. (1998) e Morales et al. (2006b), em que uma
função custo é relacionada à geometria da fixação, e técnicas de busca ou de otimização são
aplicadas a fim de se encontrar um fixação adequada. Estas técnicas de determinação de pontos
de contato requerem muito tempo e recursos computacionais de processamento. A redução do
número de dados para a busca, pela aplicação de técnicas de simplificação da forma do objeto,
reduz significativamente o tempo e os recursos de processamento, contudo, os sistemas ainda
eram para aplicações em robótica na época (XU et al., 1990).
Com o objetivo de melhorar a capacidade do planejador da fixação, Kamon et al. (1994)
utilizam informações de um banco de dados para determinar os pontos de contato. A partir de
uma imagem capturada por uma câmera de topo, algumas informações (ângulos entre dedos e
2.1 Fixação de objetos desconhecidos por garras robóticas
15
as normais ao contato, distância entre o centróide e a linha de ação e distância entre os pontos
de contato e o eixo de simetria) são extraídas e comparadas com as informações do banco de dados, e uma primeira fixação é determinada e executada. A partir da imagem adquirida por uma
câmera lateral auxiliar, a fixação é avaliada segundo o comportamento do objeto, como rotação
ou escorregamento, provocado pela execução da fixação. Se a fixação for considerada satisfatória ou adequada, as informações são adicionadas ao banco de dados, caso contrário, novas
tentativas são realizadas até ocorrer uma fixação estável, cujas características são adiconadas ao
banco de dados.
O método de Kamon et al. (1994) é capaz de aprender novas fixações e apresenta resposta
rápida para fixação cujas características já foram adicionadas ao banco de dados. Porém, o
mecanismo de verificação da fixação para adição, ou não, ao banco de dados, torna o sistema
lento e inviável para aplicações que exigem rápido tempo de resposta.
Outra proposta interessante, capaz de aprender novas fixações, é apresentada por Xu et al.
(1990), em que é sugerida a utilização de redes neurais artificiais (RNAs) para a determinação
dos pontos de fixação. O trabalho sugere que, inicialmente, uma RNA de Hopfield (HOPFIELD,
1982) pode ser utilizada para determinar uma fixação estável. As RNA de Hopfield podem ser
utilizadas em processos de otimização e de busca, desde que sua função objetivo seja apropriada para o caso. Contudo, o valor de convergência da rede depende de uma inicialização
adequada (XU et al., 1990). Para tanto, sugere-se que uma RNA feedforward de múltiplas camadas de neurônios (MLP - sigla do termo em inglês multilayer perceptron) seja utilizada na
etapa de inicialização. A rede MLP, previamente treinada com padrões geométricos, determina
uma inicialização adequada para a RNA de Hopfield que é responsável pelo refinamento da determinação da fixação. O resultado obtido pela rede de Hopfield é comparado com o resultado
da rede MLP, e se os resultados apontarem que a inicialização não foi adequada, o objeto e sua
respectiva fixação são adicionados aos padrões para retreinamento da rede. O sistema de aprendizado supervisionado apresenta possibilidades de bons resultados, contudo o elevado tempo
de retreinamento da rede MLP2 , impede a execução do aprendizado em tempo de execução
(aprendizado on-line), e ainda, não foi demonstrado nenhum resultado da proposta, sendo que
resultados foram apresentados apenas para as redes de Hopfield na determinação de fixações.
Ainda com relação às RNAs, destaca-se o trabalho realizado por Valente (1999). Assim
como no trabalho de Xu et al. (1990), duas RNAs distintas são utilizadas. A primeira rede
neural, de Hopfield, é responsável por simplificar a forma do objeto. A simplificação con2 Atualmente,
as redes MLP ainda apresentam elevados tempos de treinamento mesmo nos computadores de
maior velocidade de processamento. O tempo de treinamento varia de alguns minuto até horas, dependendo principalmente do número de camadas e de neurônios.
2 Revisão bibliográfica
16
siste em reduzir o contorno do objeto, que é extraído de uma imagem, para um polígono de
50 lados. A segunda rede, tipo feedforward, previamente treinada com 15 padrões geométricos, recebe como entrada o polígono de aproximação e determina pontos de contato para garras
de três dedos sem movimentação lateral. Foi estudado o comportamento de redes MLP e de
função de base radial (RBF - sigla do termo em Inglês Radial bases function) na realização
da segunda etapa do processo, e os resultados obtidos mostram que ambas apresentam resultados satisfatórios quanto à qualidade da fixação, contudo, na etapa de treinamento das redes
feedforward, realizada em etapas de pré-execução, as redes RBF apresentaram tempo de treinamento menores (segundos de treinamento para a rede RBF contra minutos para a rede MLP).
Uma das desvantagens do sistema proposto por Valente (1999) é o elevado tempo de execução da rede de aproximação poligonal, que pode chegar a minutos de processamento (PEDRO;
CAURIN, 2008). O tempo de treinamento da rede RBF possibilita a implementação de um sistema de aprendizado em tempo de execução, contudo, o tempo de execução da rede de Hopfield
na etapa de aproximação poligonal, que leva cerca de minutos, impossibilita sua utilização em
sistemas de rápido processamento.
Dentre todos os trabalhos acima citados, muitos apresentam soluções satisfatórias quanto à
qualidade da fixação, porém, os tempos elevados de processamento, principalmente dos sistema
capazes de aprender novas fixações, não permitem que as soluções sejam utilizadas nos sistemas
robóticos de automação industrial ou de serviços, cujo tempo total de resposta deve ser rápido.
Na tentativa de reduzir o tempo de processamento, trabalhos recentes que utilizam técnicas
de rápido processamento têm sido desenvolvidos. Sanz et al. (1998), Morales et al. (2001),
Sanz et al. (2005) e Morales et al. (2006) propõem sistemas de fixação de objetos, previamente
desconhecidos pelo sistema, com reduzidos tempos de processamento, porém sem capacidade
de aprendizagem. Nestes sistemas, a extração das características do objeto é realizada por algoritmos de rápido processamento (vide Sanz et al. (2005)) e regiões candidatas para fixação são
selecionadas a partir de uma aproximação da forma do objeto. Uma busca refinada é realizada
para determinar pontos de fixação para garras de dois e três dedos. Os sistemas são implementados com dispositivos simples e dedicados, a fim de levar tais tecnologias às indústrias.
O sistema proposto foi testado na indústria de alimentos onde a forma dos objetos apresenta
variações significativas. Bons resultados foram observados com tempos de processamento inferiores a 5s. Apesar do rápido tempo de processamento, estes sistemas não são capazes de
aprender novas fixações.
2.1 Fixação de objetos desconhecidos por garras robóticas
17
2.1.2 Fixação 3D de objetos desconhecidos
Para a determinação da fixação de objetos de geometria 3D complexa, a utilização de informações sobre apenas uma seção, aquela obtida por um sistema de visão 2D, não é suficiente,
pois a seção representa apenas uma das vistas do objeto, e todo o restante da sua forma não é
considerada nos cálculos (HAUCK et al., 1999). Portanto, a fixação 2D é eficiente apenas para
uma classe de objetos, aqueles que apresentam uma seção predominante, e para fixar de forma
eficiente os objetos das demais classes, em que a geometria 3D é mais complexa, é necessário
utilizar informações sobre toda a superfície do objeto.
A consideração de todo o formato superficial do objeto na determinação de uma fixação
caracteriza a fixação 3D, que pode ser formalmente definida como a aplicação de forças sobre
um objeto por garras robóticas, sendo que tais forças são determinadas a partir da geometria 3D
do objeto. Na fixação 3D, assim como na fixação 2D, as forças devem ser capazes de manter
o objeto em equilíbrio estático e de resistir a qualquer carregamento externo aplicado sobre o
mesmo.
Quando a fixação 3D é comparada com a fixação 2D, a primeira diferença encontrada é
a forma de aquisição e de representação dos dados referentes ao formato do objeto. Na fixação 2D, o dispositivo utilizado na maioria dos casos é uma câmera, e logo, toda a informação
necessária para a determinação da fixação está contida em uma imagem. Existem algumas variações na maneira com que as características do objeto, necessárias para se determinar a fixação,
são extraídas das imagens, porém todas as variações podem ser classificadas como métodos de
processamento de imagens ou como métodos de extração de características de imagens.
Ainda quanto à determinação da fixação 2D, as principais diferenças entre os diversos métodos de fixação estão concentradas na forma com que as informações extraídas das imagens são
trabalhadas a fim de se obter uma fixação adequada. Por outro lado, para o caso da fixação
3D, pode-se afirmar que existem diferentes possibilidades de determinação da forma do objeto,
e conseqüentemente, os métodos de determinação da fixação são especializados em função do
método de aquisição dos dados. Esta especialização é evidenciada a seguir juntamente com a
descrição dos trabalhos de destaque na fixação a partir da geometria 3D do objeto.
Uma das formas mais simples e diretas de se determinar pontos de fixação 3D é a extensão
dos resultados da fixação 2D para o caso 3D. Alguns trabalhos (BACKER et al., 1985; XU
et al., 1990) propõem que seus algoritmos para fixação 2D podem ser extendidos para o caso
3D. Backer et al. (1985) propõem que seu algoritmo de fixação 2D pode ser utilizado para
objetos com seção constante segundo uma altura conhecida. Xu et al. (1990) sugerem que seu
2 Revisão bibliográfica
18
algoritmo baseado em RNAs de Hopfield pode ser aplicados para o caso 3D. No caso de Backer
et al. (1985), a estratégia de determinar uma fixação baseada nas informações da forma de
uma seção constante por toda uma altura também conhecida é denominada por alguns autores
como fixação 2,5D, que apresenta as mesmas desvantagens que a fixação 2D aplicada a objetos
complexos. No segundo caso, nenhum resultado experimental ou simulado é comentado ou
apresentado.
A estratégia de estender o algoritmo da fixação 2D para o caso 3D é adotada principalmente
na tentativa de solucionar os problemas relacionados à aquisição dos dados 3D da cena. Podese dizer que uma das principais dificuldades encontradas para a determinação da fixação 3D
consiste na etapa de aquisição dos dados, pois, mesmo com o grande avanço desde a época dos
trabalhos de Backer et al. (1985) e Xu et al. (1990), os dispositivos atuais ainda apresentam
grandes erros e elevados tempos de aquisição (WANG et al., 2005; YAMAZAKI et al., 2006).
De fato, alguns trabalhos recentes (KRAGIC et al., 2001; LEE; LEE, 2003; BLEY et al., 2006)
dedicam-se à investigação e à proposição de sistemas de visão 3D com a finalidade de fornecer
ao planejador da fixação dados e informações sobre a geometria 3D do objeto com erros e tempo
de aquisição reduzidos.
Os sistemas de visão 3D desenvolvidos por Kragic et al. (2001), Lee e Lee (2003) e Bley et
al. (2006) atendem os requisitos de tempo de processamento e de precisão. Contudo, estes sistemas requerem elevados recursos computacionais, conforme é descrito pelos próprios autores,
fator que, conseqüentemente, eleva o custo destes sistemas, tornado-os proibitivos em alguns
casos em que se deseja baixo custo, em detrimento da capacidade do sistema.
Na busca de soluções de baixo custo para a fixação 3D, alguns trabalhos utilizam os resultados da fixação 2D para a determinação das coordenadas tridimensionais dos pontos de fixação.
Diferentemente das propostas de extenção da fixação 2D para o caso 3D, estas soluções consistem na determinação de fixação 2D para uma série de imagens de um mesmo objeto, obtidas
a partir de diferentes posições. A partir dos pontos selecionados em cada uma das diferentes
imagens, algoritmos específicos de triangulação são aplicados a fim de se determinar as coordenadas espaciais daqueles pontos.
Taylor et al. (1994) descrevem e discutem as limitações da fixação 2D em relação a determinação da direção normal aos pontos de contato. Segundo Taylor, a utilização de uma única
imagem possibilita apenas a determinação da direção normal aos pontos no plano da imagem,
pois a componente da normal na direção perpendicular à imagem não é considerada. Na tentativa de solucionar o problema, Taylor et al. (1994) propõem um sistema de mapeamento baseado
na movimentação de uma câmera de punho ao redor do objeto. A partir de uma imagem inicial,
2.1 Fixação de objetos desconhecidos por garras robóticas
19
uma fixação por dois pontos de contato é determinada. Um algoritmo de movimentação calcula
a próxima posição da câmera segundo o eixo formado pela semi-reta que une os dois pontos de
fixação. A cada nova posição, a nova imagem é analisada e a direção normal é atualizada. A
movimentação prossegue até que a verificação seja completada, realizando a fixação caso nenhuma verificação aponte instabilidade, e interrompendo o processo ao encontrar uma situação
de instabilidade. Neste último caso, o processo é reiniciado com uma nova posição de aquisição
da primeira imagem.
No trabalho de Taylor et al. (1994), a superfície do objeto não é reconstruída, portanto,
novos dados são coletados a cada tentativa. O algoritmo é capaz de determinar pontos de contato para garras de dois dedos para objetos de formato 3D complexo. Contudo, o processo de
verificação da fixação pela movimentação da câmera torna o processo demorado, e dependendo
da complexidade da forma do objeto, o processo pode ser repetido várias vezes até que uma
fixação estável seja encontrada.
Também utilizando diversas imagens consecutivas para a fixação 3D, destaca-se o trabalho
de Saxena et al. (2006), em que uma câmera movimenta-se ao redor do objeto, e dois pontos de
contato são determinados para o objeto em cada uma das imagens adquiridas. As coordenadas
3D dos pontos de contato são obtidas por triangulação dos pontos de contato das várias imagens.
Os pontos de fixação para cada imagem são determinados por uma busca heurística, e a principal
vantagem do método é a não necessidade de triangulação de todos os pontos do objeto ou de
reconstruir um modelo virtual do objeto.
Os pontos de contato de uma fixação 3D podem também ser obtidos a partir de imagens
de um sistema de visão estereoscópica (HAUCK et al., 1999). Neste caso, pontos de contato
são determinados para cada uma das duas imagens a partir de um algoritmo de fixação 2D.
Posteriormente, uma triangulação é executada com os pontos selecionados nas duas imagens
para se conhecer as coordenadas x, y e z dos pontos de contato.
A determinação das coordenadas tridimensionais dos pontos de contato a partir da triangulação de resultados da fixação 2D para várias imagens é uma alternativa razoável para solucionar
o problema de aquisição da geometria 3D do objeto. Esta abordagem, é mais rápida em relação
aos tempos de aquisição e de processamento dos dados adquiridos, e os resultados obtidos são
melhores que aqueles da fixação 2D em relação aos objetos mais complexos. Contudo, a não
utilização da geometria 3D completa do objeto na determinação da fixação desclassifica estes
trabalhos como sistemas de fixação 3D, pois a forma de todo o objeto não é considerada, apenas
se consideram as informações geométricas locais na determinação da fixação.
Segundo a classificação adotada, a fixação 3D consiste na determinação de pontos de con-
2 Revisão bibliográfica
20
tato a partir da geometria 3D do objeto. Para o caso dos trabalhos de Saxena et al. (2006) e
Hauck et al. (1999), as fixações determinadas em cada diferente imagem não consideram as
direções normais aos pontos do objeto no sentido perpendicular ao plano da imagem. Para o
caso do trabalho de Taylor et al. (1994), a direção normal é completamente verificada apenas
para pequenas regiões da superfície do obejto, sendo que o restante da mesma não é verificada.
Uma outra abordagem adotada pelos pesquisadores da área, com a finalidade de transpor
as dificuldades relacionadas à aquisição dos sistemas atuais de visão 3D, é a identificação dos
objetos na cena através de comparações das imagens do objeto com uma base de modelos
virtuais (MORALES et al., 2006; MILLER et al., 2003). Nesta abordagem as informações
contidas em uma base de dados são comparadas com a(s) imagem(s) do objeto a fim de se
determinar a posição e a orientação deste na cena. A fixação 3D é então determinada para o
modelo virtual que corresponde ao objeto. Esta estratégia também soluciona o problema da
presença de faces ocultas que ocorrem quando dados são coletados por um sensor de visão
3D estático, ou quando não é possível obter toda a superfície do objeto. Nestes casos, não
se conhece a geometria do objeto na região oculta, mas esta pode ser estimada pelos dados
auxiliares do modelo da base de dados relacionada.
A alternativa de se utilizar modelos virtuais apresenta a desvantagem de se trabalhar apenas
com os objetos cujos modelos já estão disponíveis, objetos previamente desconhecidos não são
fixados quando esta estratégia é adotada, pois não é possível selecionar um modelo correspondente ao objeto e, conseqüentemente, não é possível determinar pontos de contato para o objeto
real. Para se fixar objetos cujos modelos não estão disponíveis na base de dados, é necessário
adquirir dados de todo o entorno do objeto, seja utilizando triangulação a partir de imagens
(YAMAZAKI et al., 2006), seja pela combinação de dados adquiridos por sensores de visão
3D em diferentes posições (ADE et al., 1994), ou seja, pela utilização de diferentes sensores
integrados (WANG et al., 2005).
Para a fixação de objetos de geometria 3D complexa e desconhecida, é necessário que
o sistema conheça toda a superfície do objeto, ou que a superfície conhecida seja suficiente
para se determinar uma fixação adequada. Os dispositivos atuais permitem que a informação
completa seja obtida, desde que diferentes aquisições sejam realizadas em posições estratégicas.
A aquisição de diferentes vistas do objeto pode ser realizada ao mesmo tempo por diferentes
dispositivos (ADE et al., 1994), a partir de movimentações de um único sensor ao redor do
objeto (YAMAZAKI et al., 2006), ou pela integração de diferentes sensores (WANG et al.,
2005). No primeiro e no terceiro caso, a desvantagem principal é o custo que é multiplicado
pelo número de sensores utilizados, e no segundo caso, a desvantagem é o tempo decorrido
2.1 Fixação de objetos desconhecidos por garras robóticas
21
para a movimentação do sensor para aquisição em cada diferente posição. E ainda, para os três
casos, é necessário manipular os dados para a correta construção do modelo virtual do objeto.
Devido às dificuldades e às desvantagens de se utilizar os atuais sensores de visão 3D,
alguns autores adotam a hipótese de que os dados da geometria 3D do objeto já foram obtidos
de alguma maneira e estão disponíveis para a determinação da fixação. A partir destas hipóteses
o problema é então abordado como um caso de fixação 3D, em que os pontos de contato são
definidos a partir da geometria 3D do objeto. A adoção de tal hipótese permite que algoritmos
e métodos para a fixação 3D sejam desenvolvidos antes mesmo de uma solução para aquisição
da superfície do objeto que atenda a todos os requisitos da fixação 3D.
Contudo, além das dificuldades de se trabalhar com os sensores de visão 3D, existe outro
fator problemático a ser considerado na fixação 3D: a consideração da terceira coordenada no
problema da fixação aumenta a complexibilidade, em relação à fixação 2D, da relação entre as
forças aplicadas nos pontos de contato e o equilíbrio estático do objeto.
Para o caso da fixação 2D, algumas simplificações e hipóteses permitem a solução analítica
das equações de equilíbrio da fixação (BACKER et al., 1985), e ainda, para os casos mais complexos, as variáveis independentes das equações de equilíbrio que são relacionadas à geometria de fixação podem ser resolvidas pela aplicação direta de técnicas de otimização (CHEN;
BURDICK, 1992) ou pela busca da configuração de melhor qualidade da fixação segundo uma
função custo estabelecida.
Para o caso da fixação 3D, a verificação da estabilidade da fixação, assim como a determinação da qualidade da fixação, não é realizada de forma trivial como aquela realizada para o caso
2D, pois a consideração da terceira coordenada no problema aumenta o número de variáveis indepentendes e torna mais complexa a relação entre elas. Portanto, para o desemvolvimento
de algoritmos eficientes de fixação 3D, foi necessário o desenvolvimento de uma teoria capaz
de relacionar as forças aplicadas sobre o objeto e sua disposição geométrica com o equilíbrio
estático do objeto e a capacidade de resistir a esforços externos aplicados sobre o mesmo.
Considera-se na literatura que a teoria da fixação iniciou-se com Nguyen (1988), que propõe
a propriedade force-closure de uma fixação. Esta propriedade relaciona a geometria da fixação
com a sua capacidade de resistir a carregamentos externos. Nesta teoria, a capacidade da fixação
é determinada a partir da construção da envolvente convexa das possíveis forças aplicáveis
(cone de atrito) em cada ponto de contato. Segundo Nguyen (1988), se a envolvente convexa
dos cones de atrito contiver a origem do sistema na qual a mesma é desenhada, então a fixação
resiste a qualquer carregamento e é denominada force-closure. Destaca-se também o trabalho
de Ferrari e Canny (1992), que propõem uma normalização para o cálculo da qualidade de
2 Revisão bibliográfica
22
uma fixação force-closure. Ferrari e Canny (1992) propõem duas diferentes métricas, Q1 e
Q∞ calculadas a partir da envolvente convexa, e que estimam a capacidade de uma fixação de
resistir a carregamentos externos. Outros trabalhos também foram fundamentais na elaboração
da teoria da fixação (MURRAY et al., 1994; PONCE et al., 1993; BORST et al., 1999; BICCHI;
KUMAR, 2001; MILLER; ALLEN, 1999), entre outros colaboradores. A teoria da fixação é
detalhada no Capítulo 3.
Atualmente, a teoria da fixação desenvolvida pelos autores supracitados é amplamente
aceita e utilizada pelos pesquisadores da área, de tal forma que programas específicos como
o GraspIt! (MILLER; ALLEN, 2004) foram implementados para serem utilizados como ferramentas no desenvolvimento de planejadores de fixação e de manipulação em geral. Como
exemplo, o programa GraspIt! é capaz de verificar a estabilidade da fixação, estimar a sua qualidade, e ainda verificar colisões e corportamento dinâmico dos objetos e dos dedos da garras
em tarefas de manipulação. Quando integrados com outros sistemas, estes programas também
podem ser utilizados na determinação de fixações adequadas para objetos.
Desta maneira, a teoria da fixação desenvolvida e as considerações adequadas em relação
ao sistema de visão 3D possibilitam a proposição de planejadores de fixação 3D. Dentre os
trabalhos já citados neste texto, e dentre os demais existentes na literatura, destacam-se particularmente os trabalhos de Ade et al. (1994), Fischer e Hirzinger (1997), Borst et al. (1999), Lee et
al. (2002), Miller et al. (2003), Wang et al. (2005), Damian et al. (2005), Morales et al. (2006b),
Yamazaki et al. (2006). Estes trabalhos são brevemente descritos a seguir focando em algumas
características como: garras utilizadas; método de aquisição dos dados do objeto; método de
determinação da qualidade da fixação; método de determinação dos pontos de contato.
Ade et al. (1994) discutem o tempo de processamento para a determinação de pontos de
contato a partir de dados tridimensionais da cena. Na tentativa de reduzir o tempo de aquisição
de dados e de ampliar a capacidade do sistema de sensoriamento, dois scanners 3D, opostos
entre si, são utilizados. As informações dos sensores são combinadas e faces opostas do objetos
são reconstruídas por polígonos. Cada par de polígonos, cada um constituído por polígonos de
uma das faces opostas, é candidato para a fixação. As possíveis fixações são avaliadas segundo
a distância entre si, o paralelismo entre as faces e a distância ao centróide do objeto. Resultados
satisfatórios são apresentados com tempo de processamento de 12s3 a 21s. O tempo observado no sistema de Ade et al. (1994) indica que sensores do tipo scanner 3D são compatíveis
com a aplicação. Contudo, simplificações de seções da superfície do objeto por polígonos são
necessárias para reduzir o tempo de processamento.
3 Ade
fixação.
et al. (1994) não informam qual a configuração do computador utilizado para determinar os pontos de
2.1 Fixação de objetos desconhecidos por garras robóticas
23
Borst et al. (1999) utilizam em seu trabalho modelos virtuais de objetos, ou seja, nenhum
sistema de visão é proposto ou utilizado. Para se determinar os pontos de fixação do objeto
para a garra DLR Hand, Figura 2.3, 100 diferentes fixações candidatas são geradas para cada
objeto. A geração de cada fixação inicia-se com a seleção aleatória de um ponto próximo ao
centróide do objeto, este ponto é o centro de um sistema de coordenadas. A orientação deste
sistema de coordenadas também é aleatória e o cruzamento do seu eixo x com a superfície do
objeto determina o primeiro ponto de fixação. O segundo e o terceiro ponto de fixação são
determinados pelo cruzamento de retas cujo ângulo com o eixo x é de 1200 e 240o (ângulos
medidos em um mesmo plano). Cada candidato da fixação é avaliado segundo o critério Q1
proposto por Ferrari e Canny (1992), que determina o menor carregamento externo necessário
para desestabilizar o objeto fixado, sendo que quanto maior o valor de Q1 , cujo limite é a
unidade, melhor é a fixação. Filtros são aplicados para eliminar os candidatos cujos pontos
estão próximos aos planos de suporte do objeto, os pontos próximos às bordas, e os pontos que
não podem ser "atingidos" pelos dedos da garras. Tempos de processamento obtidos variam de
14s a 29s em um computador comum, e de 2s a 4s em um computador de oito núcleos4 .
Figura 2.3: DLR Hand.
Miller et al. (2003) utilizam o sistema de visão proposto em Kragic et al. (2001), que pode
ser resumido como um sistema capaz de identificar, a partir de uma base de dados, contendo
formatos de objetos, e a partir das imagens de um sistema de visão estereoscópica, qual o
modelo que melhor representa o objeto da cena, qual a sua posição e qual a sua orientação. A
principal característica deste sistema é o processamento das informações em tempo real. Uma
vez que o objeto é identificado, uma simplificação é realizada. Nesta simplificação, a forma do
objeto é aproximada por formas primitivas, cubos, esferas, cones, etc. Esta forma simplificada
pode não ser uma aproximação otimizada, pois o objetivo é utilizá-la para determinar qual a
melhor postura da mão para a fixação. Quatro diferentes posturas da Barret Hand, Figura 2.4,
são utilizadas.
4 Os
computadores utilizados no trabalho de Borst et al. (1999) apresentavam processadores de 200MHz.
2 Revisão bibliográfica
24
Figura 2.4: Barret Hand.
Uma vez definida a postura da garra mais adequada para a forma do objeto, candidatos da
fixação são gerados, e estes são constituídos de uma posição e orientação, em relação ao objeto,
para a fixação. Cada fixação candidata é avaliada em tempo de execução no programa de análise
de fixações GraspIt!, que fornece a medida Q1 da fixação. A melhor fixação dentre todas as
candidatas é selecionada. Simulações do algoritmo proposto são realizadas com objetos cujo
modelo virtual está disponível na base de dados. Resultados satisfatórios em relação à capacidade de determinação de uma fixação estável foram alcançados, com tempo de processamento
variando de 10s a 480s, utilizando um computador comum com velocidade de processamento
de 1GHz.
Similar ao trabalho de Miller e Allen (1999), Morales et al. (2006b) também utilizam o sistema de visão proposto por Kragic et al. (2001) e o programa GraspIt! para avaliar os candidatos
gerados por diferentes posições e trajetórias de execução da fixação. A principal diferença entre os trabalhos, além do tipo da garra utilizada (que para este caso consiste em uma garra
antropomórfica, cuja postura pode apresentar cinco variações daquelas propostas por Cutkosky
(1985)), a etapa de determinação da fixação é realizada antes da execução do algoritmo. Ou
seja, uma vez que se sabe quais são os objetos a serem fixados, a fixação determinada também é
armazenada na base de dados juntamente com a forma do objeto. Desta maneira, ao identificar
o objeto, obtém-se a postura da mão e a melhor orientação e trajetória de fixação. Sobre os tempos de processamento, uma vez que a identificação ocorre em tempo real, e a fixação de todos
objetos já foram previamente determinadas por uma avaliação exaustiva de todas as possíveis
possibilidades de fixação, a fixação é determinada em tempo real.
Os sistemas propostos por Miller et al. (2003) e Morales et al. (2006b) apresentam as limi-
2.1 Fixação de objetos desconhecidos por garras robóticas
25
Figura 2.5: Robô ARMAR, utilizado por Morales et al. (2006b).
tações de que não é possível determinar fixações e ,conseqüentemente, realizá-las para objetos
apresentados ao sistema pela primeira vez. Ou seja, os sistemas são capazes apenas de fixar
os objetos cujos modelos estão disponíveis na base de dados. Wang et al. (2005) propõem um
sistema diferente daqueles anteriores em que a forma do objeto, definida por uma nuvem de
pontos, é obtida por um sistema de visão multisensorial composto por um scanner 3D, um gerador de linhas por feixes de luz, e duas câmeras. A nuvem de pontos é obtida em 3s e a malha
superficial do objeto é formada em menos de 2s. O modelo reconstruído do objeto é avaliado
para um simulador similar ao GraspIt!, porém mais enxuto, a fim de poupar recursos computacionais. Vários candidatos de fixação (orientação e posição da garra na fixação ) são gerados e
avaliados, sendo que o melhor dentre eles é a fixação selecionada. O tempo de avaliação observado foi de 7s para um total de 33 candidatos. Testes com 110 objetos diferentes resultaram em
94% de fixações satisfatórias.
Yamazaki et al. (2006) também reconstroem o objeto a partir dos dados obtidos por um
sistema capaz de obter a forma do objeto por várias imagens adquiridas durante a movimentação da câmera ao redor do mesmo. A partir da forma reconstruída, pontos de contato são
determinados por uma busca heurística utilizando uma função custo relacionada às carcterísticas geométricas da fixação. O tempo de processamento e o desempenho do método não são
apresentados e discutidos pelo autor.
Na utilização de RNAs para a determinação de pontos de fixação 3D, destaca-se o trabalho
26
2 Revisão bibliográfica
de Lee et al. (2002), no qual um sistema de visão estereoscópica é utilizado para capturar a
superfície do objeto, e uma RNA tipo MLP, previamente treinada como padrões geométricos,
para determinar três pontos de fixação do objeto. O treinamento prévio da rede é realizado com
14 formas geométricas e seus respectivos pontos de contato determinados por um algoritmo
genético. A utilização das RNAs permite a determinação de fixações adequadas para objetos
diferentes daqueles de treinamento, contudo, esta capacidade não é explorada pelo autor, sendo
que apenas um resultado para objetos diferentes daqueles de treinamento é apresentado.
27
3
Teoria fundamental da fixação
A teoria da fixação estuda o mecanismo de interação entre manipuladores e objetos através
de contatos mecânicos realizados por garras robóticas. O propósito deste Capítulo é estudar
o mecanismo destas interações na fixação. As teorias e os conceitos envolvidos na fixação de
objetos, ou seja, os modelos de contato, as forças de contato e seus efeitos sobre os objetos,
as condições para equilíbrio estático, e os métodos de avaliação da qualidade da fixação são
brevemente explanados. Para uma maior compreensão da teoria da fixação de objetos por garras
robóticas recomenda-se a leitura de Bicchi e Kumar (2001), Mason (2001), Murray et al. (1994),
Nguyen (1988) e Craig (2005), trabalhos nos quais este texto foi parcialmente inspirado.
3.1 Movimentação e carregamentos de corpos rígidos
Nesta Seção, é introduzida a teoria de movimentação de corpos rígidos, translação e rotação na representação de transformação homogênea, e a teoria de carregamentos equivalentes
quando forças são aplicadas em diferentes pontos de contato sobre um objeto. As teorias da
movimentação de corpos rígidos e das transformações homogêneas são apresentadas por motivos didáticos para compreenção da formulação dos carregamentos equivalentes.
3.1.1 Movimentação em R3 e transformações homogêneas
A movimentação de partículas no espaço Euclidiano pode ser descrita pela sua posição,
relativa a um sistema de coordenadas cartesianas inercial, em cada instante t do movimento.
O percurso de uma partícula p durante uma movimentação é caracterizado por uma curva de
pontos no espaço, definida em um sistema de coordenadas inercial I, rip (t) ∈ R3 . Cada coordenada x, y e z de rip (t) determina a projeção da posição da partícula p no espaço sobre o sistema
inercial em cada instante de tempo.
3 Teoria fundamental da fixação
28
Na robótica, em especial, o interesse é a movimentação de um conjunto de partículas que
formam um corpo rígido. Um corpo rígido é então definido como um conjunto de pontos, ou
partículas, cujas distâncias entre si são invariantes no tempo e no espaço. Desta forma, se p e q
são dois pontos quaisquer do corpo rígido, então:
rip (t) − rqi (t) = rip (t0 ) − rqi (t0 ) = constante.
(3.1)
Define-se como "movimentação rígida" de um corpo rígido, doravante mencionado como
um objeto, aquela que é contínua no tempo e cujas distâncias entre pontos de um mesmo corpo
são mantidas constantes, logo a movimentação de um corpo rígido composta por translação e
rotação é uma movimentação rígida.
Dado um objeto rígido, representado por um sistema de coordenadas O ∈ R3 fixo ao
mesmo1 , uma movimentação rígida é representada por um mapeamento io T (t), que descreve
a posição e a orientação de O em relação a I em cada instante de tempo t. A movimentação do corpo rígido também pode ser extendida para o movimento de vetores no espaço.
Se ropq = rqo − rop é o vetor posição do ponto p ao ponto q descrito no sistema O, então a movimentação do vetor no espaço é dado por:
i
o
o T (t) · r pq
=io T (t) · rqo −io T (t) · rop .
(3.2)
Uma propriedade interessante é que, além de manter a distância entre pontos, a movimentação também mantém a posição relativa entre vetores. Dados dois vetores posição rop e rqo
quaisquer, então:
i
o
o
i
o T (t) · (r p × rq ) =o
T (t) · rop × io T (t) · rqo .
(3.3)
Desta maneira, as propriedades da movimentação de corpos rígidos permitem que a posição
e a orientação no espaço sejam definidas por um sistema de coordenadas ortonormal fixo a um
ponto do corpo rígido, pois a Equação 3.3 garante que o sistema não é alterado por qualquer
movimentação rígida.
A movimentação rígida pode ser definida como uma combinação de uma rotação pura e
uma translação pura.
1 O centro do sistema de coordenadas é representado com a letra que o representa na sua foma minúscula, assim,
o centro do sistema de coordenadas O é o ponto o.
3.1 Movimentação e carregamentos de corpos rígidos
29
Definidos o sistema de coordenadas ortonormal O fixo ao corpo, e um sistema de coordenadas inercial I, define-se a matriz:
I
i
i
i
o R = [o Rx o Ry o Rz ],
(3.4)
como a matriz de rotação pura de I para O. Os vetores Io Rx , Io Ry e Io Rz ∈ R3 são as projeções dos
eixos x, y e z do sistema O sobre o sistema I, respectivamente.
Sejam R ∈ Rn×n e ri ,com i = 1 . . . n ∈ Rn as colunas de uma matriz de rotação qualquer R,
então:
1. riT · r j =
0 se i = j
1 se i = j
2. R · RT = RT · R = I e R−1 = RT
3. det(R) = 1
As transformações no espaço que apresentam as características acima formam o grupo de
rotação SO(n):
SO(n) = {R ∈ Rn×n | R · RT = 1 e det(R) = 1}.
(3.5)
O grupo de rotação SO(n) é formado por todas as n possíveis orientações relativas que um
sistema pode apresentar em relação a outro. As possibilidades de orientação relativa podem ser
reduzidas caso haja alguma restrição de movimentação2 .
A rotação R ∈ SO(n) é uma movimetação rígida que mantém as relações 3.1 e 3.3. Além
disso, o produto entre duas matrizes io R e oc R ∈ SO(n) resulta em uma matriz também pertencente
a SO(n) segundo a relação:
i
o
i
o R ·c R =c
R.
(3.6)
A rotação rígida de um corpo é compreendida como apenas um caso particular de uma
movimentação. Uma movimentação geral, é então definida como composição de uma rotação
e de uma translação. Seja o sistema O fixo ao corpo e um sistema inercial I, roi ∈ R3 é o vetor
posição da origem do sistema O descrito no sistema I, e ainda, io R é a orientação do sistema O
relativo ao sistema I. Então, dado um vetor posição rqo descrito no sistema O, então o mesmo
vetor pode ser descrito no sistema I, ou seja rqi , é dado por:
rqi = roi +io R · rqo .
2A
(3.7)
restrição pode ocorrer por diversos fatores, como colisão com outros corpos rígidos presentes no mesmo
espaço.
3 Teoria fundamental da fixação
30
As transformações de rotação e de translação possuem as características de movimentação
rígida apresentadas anteriormente, e de forma geral, são representadas por diversos autores por
uma matriz de transformação homogênea:
i
oT
=
iR
o
roi
0
1
.
(3.8)
Desta maneira, uma movimentação qualquer de um corpo rígido no espaço Euclidiano é
representada por:
i
o T (t) =
i R(t)
o
roi (t)
0
1
.
(3.9)
A matriz io T (t) é definida como transformação homogênea, e apresenta valores diferentes
em cada instante t. Quando se considera apenas as posições e as orientações relativas entre
dois sistemas, omite-se o termo (t). De forma geral o grupo de transformações homogêneas é
formado por:
SE(n) = {(p, R) : p ∈ Rn , R ∈ SO(n)} = Rn × SO(n).
(3.10)
Para o espaço Euclidiano SE(3) = R3 × SO(3) e a transformação consecutiva de dois sistemas de coordenadas é determinada por:
i
cT
=io
T
·oc T
=
i R ·o R
o c
i R · ro + ri
o
c
o
0
1
.
(3.11)
As transformações homogêneas são úteis na determinação de posições dos elementos de
sistemas multicorpos de cadeia aberta ou fechada. Para cada corpo, um sistema de coordenadas
é associado, e a partir de transformações homogêneas é possível determinar as posições de
cada corpo em um sistema de coordenadas global. Para um determinado sistema multicorpo, as
transformações homogêneas são determinadas a partir das relações geométricas, como ângulos
e posições relativas entre os corpos (vide Craig (2005) e Denavit e Hartemberg (1955)).
3.1.2 Velocidade em R6 de um corpo rígido
O conjunto de transformações homegêneas io T (t) que definem a posição e a orientação do
sistema O, solidário a um corpo rígido, em relação as sistema inercial I em cada instante de
tempo t, define uma trajetória ψoi do corpo rígido. A trajetória ψoi do corpo rígido define a
posição e a orientação, e a sua derivada no tempo, ψ̇oi , define a velocidade de translação e de
rotação do corpo rígido em cada instante de tempo e posição no espaço.
3.1 Movimentação e carregamentos de corpos rígidos
31
A descrição da velocidade de translação e de rotação de um corpo rígido, segundo uma
trajetória ψoi , não é trivial como para o caso de uma única partícula q cuja posição é representada
pelo vetor rqi , em que viq =
d i
dt rq (t).
Neste caso, deve-se considerar os efeitos da movimentação
combinada de translação e rotação.
Primeiramente, considera-se o caso de uma rotação pura em R3 descrita no tempo, e representado por io R(t) ∈ SO(3). O sistema de coordenadas I é o sistema inercial e O é o sistema fixo
ao corpo. Se q é um ponto fixo ao corpo então:
rqi (t) =io R(t) · rqo ,
e sua velocidade é dada por:
viq (t) =
(3.12)
d i
r (t) =io Ṙ(t) · rqo .
dt q
(3.13)
Desta forma, io Ṙ(t) relaciona a velocidade de um ponto em I com sua posição em O no
tempo.
Pode-se ainda reescrever a Equação 3.13 na seguinte forma:
viq (t) =io Ṙ(t) · io R−1 (t) · io R(t) · rqo .
(3.14)
Murray et al. (1994) define a velocidade angular instantânea, ω̂ , como:
i
ω̂o/i
=io Ṙ(t) · io R−1 (t),
(3.15)
que corresponde à velocidade angular instantânea do objeto, representado pelo sistema de coordenadas O, em relação ao sistema I. A velocidade angular relativa está descrita no sistema
I.
O operador ˆ , lê-se operador chapéu, é definido da seguinte forma: se ω = [ωx ωy ωz ]T
então:
⎡
0
⎢
ω̂ = ⎢
⎣ ωz
−ωy
−ωz
0
ωx
ωy
⎤
⎥
−ωx ⎥
⎦.
0
(3.16)
De forma similar, a velocidade angular instantânea do corpo em relação ao sistema I e
descrita no sistema O sistema O é definida como:
o
ω̂o/i
=io R−1 (t) · io Ṙ(t).
(3.17)
3 Teoria fundamental da fixação
32
As Equações 3.15 e 3.17 estão relacionadas da seguinte forma:
o
i
ω̂o/i
=io R−1 · ω̂o/i
· io Ṙ,
(3.18)
o
i
ωo/i
=io R−1 · ωo/i
.
(3.19)
ou
Retornando à Equação 3.13, a velocidade do ponto q pode ser então representada no sistema
I por:
i
i
(t) ·io R(t) · rqo = ωo/i
(t) × rqi (t),
viq (t) = ω̂o/i
(3.20)
ou ainda, pode-se representar a velocidade do ponto q no sistema O pela relação:
o
voq (t) =io RT (t) · vq i (t) = ωo/i
(t) × rqo .
(3.21)
As Equações 3.20 e 3.21 descrevem as velocidades de translação de todas as partículas de
i (t), e da velocidade angular do
um corpo rígido em termos da velocidade angular espacial ωo/i
o (t) respectivamente.
corpo ωo/i
Considerando agora uma movimentação geral io T (t) ∈ SE(3), composta por uma rotação
i R ∈ SO(3),
o
e translação roi ∈ R3 . De forma análoga ao caso de rotação pura pode-se escrever:
i
o Ṫ
· io T −1 =
i Ṙ
o
r˙o i
0
1
·
i RT
o
−io RT · roi
0
1
,
(3.22)
e então:
i
=io Ṫ · io T −1 ,
V̂o/i
⎡
e
i
Vo/i
=⎣
vio/i
i
ωo/i
⎤
⎦=
−io Ṙ · io RT · roi + r˙o i
(3.23)
(io Ṙ · io RT )ˇ
,
(3.24)
em que ˇ é o operador inverso de ˆ, ou seja, (x̂) ˇ = x, e vio/i é a velocidade de translação relativa
entre as origens dos sistemas O e I, medida no sistema I.
i é denominado velocidade espacial e pode ser usado para encontrar a velociO termo V̂o/i
dade de um ponto q, fixo ao corpo, em relação ao sistema I.
viq (t) =io Ṫ (t) · rqo =io Ṫ (t) · io T −1 (t) · rqi (t)
(3.25)
i
viq (t) = Vˆoi (t) · rqi (t) = ωo/i
(t) × rqi (t) + vio/i (t).
(3.26)
e então:
3.1 Movimentação e carregamentos de corpos rígidos
33
A componente linear vio/i (t) da Equação 3.26, não é a velocidade da origem do sistema O
descrita em I conforme a intuição sugere, mas sim a velocidade, medida no sistema I, do ponto
virtual fixo ao sistema do corpo O, que no instante t passa pela origem de I.
Também é possível determinar a velocidade do corpo rígido em relação ao sistema O (instantâneo). O termo relativo ao tempo "(t)" é omitido das próximas equações para melhorar a
visualisação.
o
=io T −1 · io Ṫ =
V̂o/i
⎡
e
o
=⎣
Vo/i
voo/i
o
ωo/i
⎤
⎦=
i RT
o
i Ṙ · ṙ i
o
o
0
0
i RT · r i
o
o
(io RT · io Ṙ)ˇ
,
(3.27)
.
(3.28)
E a velocidade de um ponto q no sistema O é dada por:
o
· rqo ,
voq = V̂o/i
(3.29)
o
× rqo + voo/i ,
voq = ωo/i
(3.30)
ou ainda:
o éa
em que voo/i é a velocidade relativa entre a origem de I e de O, descrito no sistema O, e ωo/i
velocidade angular relativa entre I e O, também descrita no sistema O.
A velocidade de um corpo rígido descrito no sistema de coordenadas do corpo O e no
sistema de coordenadas inercial I é relacionada segundo a expressão:
i
o
V̂o/i
=io T · V̂o/i
· io T −1 .
(3.31)
i
o
ωo/i
=io R · ωo/i
(3.32)
i
o
vio/i = −ωo/i
× roi + ṙoi = roi × (io R · ωo/i
) +io R · voo/i .
(3.33)
Pode-se escrever também que:
e
Reescrevendo 3.32 e 3.33 na forma matricial, obtém-se a expressão:
⎤ ⎤
⎡
⎡
i
o
i R r̂ i · i R
v
v
o o
i
· ⎣ o/i ⎦
= ⎣ o/i ⎦ = o
Vo/i
i
i
o
ωo/i
ωo/i
0
oR
(3.34)
3 Teoria fundamental da fixação
34
A matriz 6 × 6 da Equação 3.34 é denominada matriz adjunta associada a uma transformação homogênia T , e escrita na forma AdT . Desta maneira, dado T ∈ SE(3) então
AdT =
R r̂ · R
.
R
0
(3.35)
De forma geral, a matriz AdT mapeia as velocidades e rotações de um corpo do sistema de
coordenadas fixo ao mesmo, para um sistema de referência inercial.
A matriz Adg também é invertível segundo a relação:
(AdT )−1 =
RT −(RT · r)ˇ · RT
RT
0
=
RT −RT · r̂
0
RT
= Ad(T )−1 .
(3.36)
A matriz adjunta e sua inversa são utilizadas nos cálculos dos carragamentos equivalentes
na próxima Seção.
3.1.3 Carregamentos e carregamentos equivalentes
Um carregamento generalizado, seja o carregamento da fixação ou seja um carregamento
externo, atuando em um corpo rígido consiste em uma componente puramente linear e uma
componente puramente torcional atuando em um ponto. Pode-se representar este carregamento
generalizado como um vetor em R6 :
f
F=
em que : f ∈ R3 , e τ ∈ R3 .
τ
ou na forma expandida:
F=
f1
f2
f3 τ4 τ5 τ6
T
(3.37)
(3.38)
Os valores do carregamento aplicado em um ponto do corpo rígido, ou seja, os valores de
F, dependem do sistema de coordenadas no qual esta escrito. Se O é o sistema de coordenadas
do objeto, então considera-se a notação F o = [( f o )T (τ o )T ]T .
Quando os carregamentos são combinados com movimentações infinitesimais, obtém-se
o trabalho instantâneo realizado. Considerando a movimentação de um corpo rígido parametrizado por io T (t) (Equação 3.9), definido na Seção 3.1.1, e considerando ainda I o sistema de
coordenadas inercial e O o sistema de coordenadas fixo ao objeto, a representação da velocidade
o , e F o representa o carregamento aplicado. As repreinstantânea do corpo rígido é dada por Vo/i
sentações são referentes ao sistema de coordenadas O e seu produto escalar fornece o trabalho
3.1 Movimentação e carregamentos de corpos rígidos
35
infinitesimal:
o
δ W = Vo/i
· (F o )T = (voo/i · ( f o )T + woo/i · (τ o )T ).
(3.39)
o , durante o intervalo de
O trabalho realizado pelo carregamento F o na movimentação Vo/i
tempo [t1 ,t2 ], é dado por:
W=
t2
t1
o
Vo/i
· (F o )T dt
(3.40)
Dois carregamentos são denominados equivalentes se ambos produzem o mesmo trabalho para qualquer possível movimentação do corpo. Carregamentos equivalentes podem ser
utilizados para reescrever carregamentos em diferentes sistemas de coordenadas. Por exemplo:
deseja-se reescrever o carregamento F o , aplicado na origem do sistema de coordenadas O, como
um carregamento equivalente aplicado na origem do sistema de coordenadas C. Para computar
o carregamento equivalente uiliza-se o trabalho instantâneo realizado pelo carregamento em
uma movimentação arbitrária. Sendo oc T a configuração do sistema C relativo ao sistema O, e
igualando os trabalhos instantâneos realizados por F c e F o na mesma movimentação arbitrária,
obtem-se:
o
o
· F c = Vo/i
· F o,
Vi/c
(3.41)
o
o
Vi/c
· (F c )T = Vi/c
· (Adoc T )T · F o ,
(3.42)
F c = (Adoc T )T · F o .
(3.43)
o obtém-se:
cancelando Vi/c
A Equação 3.43 transforma um carregamento aplicado na origem do sistema O em um
carregamento equivalente aplicado na origem do sistema C. Expandindo a Equação 3.43 obtémse:
fc
=
τc
em que:
o RT
c
o
−c RT · r̂co
o RT
c
o
−c RT · r̂co
0
o RT
c
0
o RT
c
·
fo
τo
,
(3.44)
= (Adoc T )T .
(3.45)
A transformação adjunta transposta rotaciona os momentos e as forças aplicadas do sistema
O para o sistema C e inclui momentos adicionais na forma −rco × f o , que é o momento gerado
pela força f o em uma distância rco .
3 Teoria fundamental da fixação
36
Se diversos carregamentos são aplicados em diferentes pontos de contato sobre um corpo
rígido, então um carregamento equivalente, aplicado sobre o corpo rígido, pode ser determinado somando cada um dos diferentes carregamentos representados em um mesmo sistema de
coordenadas. Desta forma, dado um conjunto de carregamentos F ci , i = 1, . . . , n, aplicados
em diferentes sistemas de coordenadas dos contatos Ci, o carregamento da fixação escrito no
sistema de coordenadas do objeto é dado por:
n
F o = ∑ (Adcio T )T · F ci .
(3.46)
i=1
Da mesma forma, o carregamento da fixação pode se representado em qualquer sistema de
coordenadas, sejam estes pertencentes ao corpo rígido ou sejam estes fora do corpo rígido. O
carregamento da fixação resultantes dos diversos carregamentos aplicados em um corpo rígido
pode ser utilizado para calcular o efeito de diversas forças aplicadas por garras robóticas com
múltiplos dedos sobre um objeto durante uma tarefa de fixação.
Por fim, para melhor entendimento, os carregamentos que podem ser aplicados sobre um
objeto são listados:
• Carregamento do contato: é aquele aplicado pela ponta do dedo de uma garra sobre o
objeto. Este carregamento normalmente é descrito no sistema de coordenadas do próprio
contato.
• Carregamento da fixação: é obtido pelo somatório dos carregamentos dos contatos.
Normalmente este carregamento é descrito no sistema de coordenadas do objeto ou da
fixação.
• Carregamento externo: este carregamento pode ser aquele necessário para a realização de um tarefa específica, ou pode ser formado por distúrbios externos, normalmente
indesejados e imprevisíveis. O carregamento externo também pode ser composto pelo
carregamento de uma tarefa específica e por distúrbios.
3.2 Estática da fixação
37
3.2 Estática da fixação
A fixação é a aplicação de carregamentos de contato (forças e momentos) em pontos sobre
a superfície do objeto capazes de mantê-lo em equilíbrio estático e de resistir a carregamentos externos3 aplicados sobre o objeto. As forças e momentos aplicados pelos dedos de uma
garra são transmitidos para o objeto a partir do contato entre a superfície dos corpos. Existem
vários modelos de contato, sendo que cada tipo modela diferentes capacidades de transmissão
de carregamentos. Os tipos de contato, representados por modelos apropriados, caracterizam as
condições para equilíbrio estático de um objeto durante uma fixação.
3.2.1 Modelos de contato
Um objeto, tratado como corpo rígido, livre no espaço, apresenta seis graus de liberdade
(GDL) de movimentação, ou seja, seis parâmetros independentes são necessários para definir
sua posição e sua orientação relativa a um sistema de referência inercial. Se o objeto entra em
contato com outro corpo (uma mesa por exemplo), restrições de movimentação são impostas
ao objeto que perde alguns dos seis GDL de movimentação (no caso da mesa, o objeto perde
a capacidade de translação na vertical e rotação nas direções paralelas à mesa). As restrições
impostas pelo contato entre corpos depende da natureza do contato entre eles.
Em Salisbury (1982a), um Capítulo completo é dedicado para descrever os modelos de
contato e seus efeitos na movimentação de objetos. São descritos oito tipos de contato entre
corpos, sendo que cada um impõe uma restrição diferente, desde o contato sem restrição até o
contato com restrição total dos seis GDL4 .
Os oito tipos de contato de Salisbury (1982a) indicam como objetos interagem entre si de
uma forma geral. Contudo, para o caso particular de contato entre dedos de uma garra e objetos
em uma fixação, o contato pode ser resumido por três modelos simplificados (NGUYEN, 1988),
sendo eles:
Contato pontual sem atrito O contato ocorre em apenas um ponto do objeto. Forças de atrito
não estão presentes e a força aplicada no contato ocorre somente na direção normal à
superfície do objeto. Qualquer força com componente na direção tangencial ao contato
provoca escorregamento entre dedo e objeto.
3 Os
carregamentos externos podem ser carregamento característicos de uma aplicação, que normalmente podem ser estimados e previstos, ou ainda, os carregamentos externos podem ser distúrbios, que normalmente não
podem ser previstos.
4 Vide Salisbury (1982a) para mais detalhes.
3 Teoria fundamental da fixação
38
Contato pontual com atrito O contato ocorre em apenas um ponto. Forças de atrito estão
presentes, e portanto, a força de contato pode ser composta por uma componente normal
e uma componente tangencial ao contato, sendo que a relação entre as componentes deve
obedecer os limites de atrito para que não haja escorregamento.
Contato macio O contato é realizado em uma área de contato que surge pela deformação do
dedo, provocada pelo carregamento do contato, pois o objeto é considerado um corpo
rígido e não se deforma. O atrito entre as superfícies de contato permite que um momento de atrito seja aplicado na direção normal à área de contato, além da força com
componentes normal e tangencial.
(a)
(b)
(c)
Figura 3.1: Possíveis carregamentos para os três tipos fundamentais de contato propostos por
Nguyen (1988). Figura 3.1(a) contato pontual sem atrito, Figura 3.1(b) contato pontual com
atrito e Figura 3.1(c) contato macio.
Segundo Nguyen (1988), todos os demais modelos de contato (incluindo os modelos de
Salisbury (1982a)) podem ser construídos pela combinação entre os três modelos fundamentais
que são diferentes entre si pela ocorrência e pela natureza do atrito.
O modelo de contato pontual sem atrito não permite a aplicação de forças com componentes
na direção tangencial, pois estas forças provocariam escorregamentos devido a ausência do
atrito. Este tipo de contato é interessante em análises de fixação form-closure (descrita nas
próximas Seções). Contudo, a restrição da direção de aplicação da força dificulta a seleção de
pontos de contato, pois deve ser levado em consideração a capacidade da garra em posicionar
as pontas de seus dedos (os efetuadores) em cada contato, segundo a direção normal.
O modelo de contato pontual com atrito permite a aplicação de forças com componentes
tangenciais e normais. A componente tangencial da força é equilibrada por uma força de atrito.
O modelo de atrito adotado neste trabalho é o modelo de atrito de Coulomb, pois, dentre os
diversos modelos sofisticados, mais completos e apurados existentes na literatura, este é o que
representa o atrito de forma simples e satisfatória.
3.2 Estática da fixação
39
Segundo a lei de Coulomb as forças máximas para o atrito são determinadas pela equação:
f j max = μest · f3 e ainda f j ≤ μest · f3
(3.47)
em que μest é o coeficiente de atrito estático, e j = 1, 2 é o índice que indica as duas possíveis
direções perpendiculares de decomposição da força de atrito. Em geral, o coeficiente de atrito
estático é maior que o coeficiente de atrito dinâmico. Segundo a lei de Coulomb, o coeficiente
de atrito depende do material do objeto e da superfície, sendo então independente da forma da
superfície e da área de contato. Como nesta abordagem não são considerados os efeitos do atrito
dinâmico, o coeficiente estático é representado na forma simplificada μ .
Um bom experimento para a determinação do coeficiente de atrito é a experiência do bloco
escorregando sobre uma rampa inclinada. Um bloco é posicionado sobre uma rampa com inclinação variável. A rampa, inicialmente na horizontal, é inclinada progressivamente até que o
bloco atinja o limite do escorregamento. O valor do ângulo limite de inclinação da rampa, o
ângulo α , está relacionado com o valor do coeficiente de atrito pela equação:
tan(α ) = μ .
(3.48)
Para o caso particular da fixação, o ângulo α é a máxima diferança angular, entre a direção
de aplicação da força pelo dedo da garra e a direção normal da superfície, para que não ocorra
escorregamentos. A região compreendida pelo ângulo limite α é denominada cone de atrito
(vide Figuras 3.1(b) e 3.1(c)).
Caso a força de contato esteja compreendida dentro do cone de atrito, o contato pode ser
realizado, caso contrário, a fixação não pode ser relizada, pois, ocorrerá escorregamento entre
o dedo da garra e o objeto.
O modelo mais completo, o contato macio, considera a ocorrência de deformação da ponta
do dedo da garra durante o contato e a formação de uma área de contato. Cada elemento
infinitesimal da área de contato é capaz de realizar uma força de atrito infinitesimal. Quando as
diversas forças infinitesimais são somadas, gera-se um momento de atrito (vide Figura 3.1(c)).
Segundo Higdon et al. (1984), o momento de atrito é desenvolvido como resultado de uma
força normal f3 exercida por uma área sobre outra. O momento binário τ6 necessário para produzir uma rotação depende da força normal f3 , do coeficiente de atrito de Coulomb, e da distribuição da pressão normal sobre a área de contato. Neste trabalho, considera-se que a pressão
é distribuída uniformemente sobre a área de contato, embora a elasticidade e a irregularidade
da superfície do objeto normalmente alterem-na.
3 Teoria fundamental da fixação
40
A força normal por unidade de área é igual à pressão do contato P, e a força normal sobre
o elemento de área é igual ao produto da pressão unitária e do elemento de área, então:
f3
dA,
A
dP =
(3.49)
considerando circular a área de contato, e transformando a área infinitesimal em coordenadas
polares, pode-se obter a seguinte relação:
dP =
f3
drd θ .
π · r2
(3.50)
A força infinitesimal de atrito, d fa , quando o movimento é eminente, é igual à pressão
multiplicada pelo coeficiente de atrito estático:
d fa = μ dP = μ
f3
drd θ .
π · r2
(3.51)
O momento de atrito τ6 sobre o elemento de área em relação à linha central do eixo é dado
por:
d τ6 = rd fa = μ
e então:
τ6 = μ
D
2
0
f3
drd θ ,
π ·r
2π
f3
0
π ·r
drd θ .
(3.52)
(3.53)
Para área de contato circular a expressão 3.53 pode ser simplificada por:
1
τ6 = μ f3 D.
3
(3.54)
A aproximação da área de contato por uma área circular é conveniente para simplificação
dos cálculos e estimação dos momentos de atrito, contudo, na prática a área de contato pode
apresentar as mais variadas formas e os momentos de atrito devem ser calculados pela equação:
τ6 = γ f 3 ,
(3.55)
em que γ é o coeficiente do momento de atrito estático, que relaciona a área de contato e o
coeficiente μ . O coeficiente γ é obtido experimentalmente, ou pode ser previamente estimado.
3.2.2 Base do contato e mapa da fixação G
O contato entre dedo e o objeto pode ser também descrito pelo mapeamento de forças exercidas no contato sobre o objeto. Assume-se, para tanto, a hipótese de que o contato é realizado
3.2 Estática da fixação
41
em um único ponto, mesmo para os casos de contato macio, e que não há escorregamento ou
rolagem5 .
Por conveniência, define-se o sistema de coordenadas do contato Ci com origem no ponto
de contato ci e eixo Zci alinhado com a direção normal ao ponto ci, e os demais eixos, Xci e Yci ,
alinhados com as direções tangenciais. A localização do ponto de contato ci relativo ao sistema
de coordenadas do objeto O é descrita pela tranformação homogênea oci T ∈ SE(3).
Para mapear as forças de contato descritas no sistema de fixação Ci para carregamentos
equivalentes no sistema do objeto O, define-se a base de carregamento B que mapeia os carregamentos de contato para cada diferente modelo. Desta forma, o carregamento de um contato
Fci é definido como:
F ci = B · f ci .
(3.56)
Para o modelo contato pontual sem atrito:
⎡ ⎤
0
⎢ ⎥
⎢ 0 ⎥
⎢ ⎥
⎢ ⎥
⎢ 1 ⎥
ci
ci
⎥
B=⎢
⎢ ⎥ e f = f3
⎢ 0 ⎥
⎢ ⎥
⎢ 0 ⎥
⎣ ⎦
0
(3.57)
em que f3ci é a força na dirção zci , e f3ci ≥ 0 para as garras convencionais, ou seja, o dedo pode
apenas empurrar o objeto, ou f3ci < 0 para as garras com ventosas ou sistemas de sucção.
Para o modelo contato pontual com atrito:
⎤
⎡
1 0 0
⎥
⎢
⎢ 0 1 0 ⎥
⎥
⎢
⎥
⎢
⎢ 0 0 1 ⎥
⎥ e f ci = [ f ci f ci f ci ],
B=⎢
1 2 3
⎥
⎢
⎢ 0 0 0 ⎥
⎥
⎢
⎢ 0 0 0 ⎥
⎦
⎣
0 0 0
em que
f1ci
e
f2ci
são as forças tangenciais de modo que
2
(3.58)
2
( f1ci ) + ( f2ci ) ≤ μ f3ci , com f3ci ≥ 0
para as garras comuns e f3ci < 0 para as garras com ventosas .
5 Os
(1994).
efeitos de rolagem e escorregamento entre objetos em contato são descritos em detalhes por Murray et al.
3 Teoria fundamental da fixação
42
A restrição significa que a força aplicada deve pertencer à região representada pelo cone de
atrito FCci , ou seja:
ci
FCci = { f ∈ R |
3
2
2
( f1ci ) + ( f2ci ) ≤ μ f3ci }
(3.59)
Finalmente, para o modelo de contato macio:
⎤
⎡
1 0 0 0
⎥
⎢
⎢ 0 1 0 0 ⎥
⎥
⎢
⎥
⎢
⎢ 0 0 1 0 ⎥
⎥ e f ci = [ f ci f ci f ci τ ci ],
B=⎢
1 2 3 6
⎥
⎢
0
0
0
0
⎥
⎢
⎥
⎢
⎢ 0 0 0 0 ⎥
⎦
⎣
0 0 0 1
em que
f1ci ,
f2ci
e
f3ci
devem obedecer a lei de Coulomb,
2
(3.60)
2
( f1ci ) + ( f2ci ) ≤ μ f3ci , e τ6ci , o
momento aplicado na direção Zci de Ci, deve respeitar a lei | τ6ci |≤ γ | f3ci |. Desta forma, o cone
de atrito para o modelo de contato macio é definido como:
2
2
ci
4
FCci = { f ∈ R | ( f1ci ) + ( f2ci ) ≤ μ f3ci e | τ6ci |≤ γ | f3ci |}
(3.61)
Para determinar o efeito das forças de contato sobre o objeto, as forças devem ser transformadas do sistema de coordenadas da fixação Ci para o sistema de coordenadas do objeto
O. Se oci T é a transformação homogênea do i-ésimo sistema de coordenadas do contato Ci para
o sistema do objeto, então, a força exercida por um contato pode ser escrita no sistema de
coordenadas do objeto como:
F oi = (Ado T −1 )T · F ci =
ci
o RT
ci
o
r̂ci · oci R
0
oR
ci
· Bci · f ci com f ci ∈ FCci .
(3.62)
Define-se então o mapa do contato Gci ∈ Rk×m , em que k é o número de contatos da fixação
e m é o número de carregamento aplicaveis no contato. A matriz G é um o mapa linear resultante do produto entre a base do contato representada por Bci e a transformação adjunta entre o
sistema do contato Ci e o sistema do objeto O.
Gci = (Ado T −1 )T · Bci
ci
(3.63)
3.3 Propriedades da fixação
43
Se existirem k dedos em contato com o objeto, e considerando que o mapa de contato é
linear, o carregamento resultante no objeto devido às forças aplicadas nos contatos é dado por:
F o = F o1 + · · · + F ok ,
(3.64)
F o = Gc1 · f c1 + · · · + Gck · f ck .
(3.65)
ou:
Resumindo a Equação 3.65 pode-se escrever:
F o = G · f c,
(3.66)
em que todas as forças aplicadas nos contatos são representadas pelo vetor:
⎤
⎡
f c1
⎢ . ⎥
. ⎥
fc = ⎢
⎣ . ⎦,
f ck
(3.67)
e o mapa da fixação G é então definido como:
G=
Gc1 · · · Gck
=
(Ado
c1
T −1
)T · Bc1 · · · (Ado T −1 )T · Bck
ck
.
(3.68)
3.3 Propriedades da fixação
O mapa da fixação G é capaz de transformar as forças aplicadas em cada um dos pontos
de contato Ck , que estão descritas no sistema de coordenadas específico de cada contato, em
carregamentos equivalentes descritos em um único sistema de coordenadas, que pode ser o do
objeto O por exemplo. O mapa G leva em consideração a geometria da fixação, ou seja, a disposição dos pontos de contato em relação a ao sistema de coordenadas escolhido expressa pela
matriz adjunta transposta (Ado T −1 )T referente a cada contato, e leva também em consideração a
ci
capacidade de aplicação de carregamentos em cada contato expressa pelas bases Bck do modelo
adotado para os contatos.
No início do Capítulo foi definido que uma fixação adequada é aquela que garante: 1) a
estabilidade estática do objeto quando apenas as forças de contato são aplicadas sobre o mesmo;
e que também garante 2) a estabilidade estática quando carregamentos externos são aplicados
devido a ocorrência de carregamentos de reação nos contatos.
3 Teoria fundamental da fixação
44
Desta maneira, ao se fixar um objeto por n dedos em n posições distintas sobre a sua superfície, as equações de equilíbrio estático são: Para o caso 1, as forças de contato descritas no
mesmo sistema de coordenadas O devem se anular, ou seja:
o
F =
n
∑ Gck · f ck = 0
(3.69)
k=1
em outras palavras, as forças aplicadas em cada um dos contatos, devem se anular quando
descritas em um mesmo sistema de coordenadas.
Para o caso 2, as forças de contato devem equilibrar as forças e os momentos de um carregamento externo Fex = [ f ex1 f ex2 f ex3 τ ex4 τ ex5 τ ex6 ]T , ou seja:
n
∑ Gck · f ck + Fex = 0.
(3.70)
k=1
Vale lembrar que as forças em cada um dos contatos f ck não são iguais nas equações 3.69
e 3.70, pois são casos distintos de equilíbrio estático.
Uma fixação adequada deve então satisfazer ambas as equações 3.69 e 3.70. Contudo, a
verificação das condições de equilíbrio para uma fixação qualquer não é possível na prática, pois
mesmo que as matrizes G e B sejam conhecidas, ou seja, mesmo que as posições de contatos e os
tipos de contato estejam definidos, é impossível determinar os valores das forças nos contatos,
pois o número de incógnitas sempre é maior que o número de equações, mesmo se o número de
pontos contatos for pequeno6 .
Em alguns trabalhos, como em Abel et al. (1985), hipóteses simplificadoras são consideradas: todas as forças agem segundo o mesmo plano; as forças externas ocorrem apenas em uma
direção (apenas forças gravitacionais); o modelo considerado é o ponto de contato pontual com
atrito; e apenas dois pontos de contato realizam a fixação. Neste caso, o objetivo de se adotar
as hipóteses é reduzir o número de variáveis da Equação 3.70, a fim de permitir a resolução
analítica das equações de equilíbrio.
Hipóteses simplificadoras, como aquelas citadas, permitem a resolução analítica do problema para casos específicos, no entanto, para casos complexos e genéricos, com carregamentos externos ocorrendo em várias direções, com consideração do modelo de contato macio, a
resolução analítica do problema, ou seja, é impossível a determinação das forças de contato.
Na tentativa de solucionar esta dificuldade, vários pesquisadores empenharam-se na elaboração de uma teoria capaz de fornecer métodos de análise de equilíbrio do objeto (LAKSHMI6 Cada
diferente tipo de modelo de contato exige diferentes mínimos pontos de contato.
3.3 Propriedades da fixação
45
NARAYANA, 1978; NGUYEN, 1988). Estas novas teorias definem algumas propriedades da
fixação: estabilidade, propriedade force-closure, e propriedade form-closure, que são capazes
de caracterizar as capacidades da fixação. Estas propriedades da fixação permitem uma avaliação adequada das condições de equilíbrio do objeto na fixação sem a necessidade da resolução
das equações de equilíbrio.
Contudo, a definição das propriedades da fixação requer o conhecimento do mapa da fixação G, ou seja, os pontos de contato devem estar definidos. Na etapa do planejamento da
fixação, quando se deseja definir os pontos de contato, em função ou não de um carregamento
externo esperado, a utilização apenas das propriedades da fixação não é satisfatória, pois com
elas, apenas as condições de equilíbrio são verificadas.
Alguns autores utilizam as próprias equações de equilíbrio estático do objeto, Equações
3.69 e 3.70, no planejamento da fixação. Neste caso, o objetivo é encontrar uma relação geométrica entre os pontos de contato e o objeto que minimizem as forças de contato. Os resultados
são satisfatórios quando se adota a hipótese de que todas as forças, de contato ou externas, são
aplicadas em um mesmo plano, sobre um objeto de formato bidimensional (PFEIFFER, 1996).
Para os casos mais complexos de fixação, deve-se adotar uma estratégia de avaliação da
fixação capaz de considerar todas as possibilidades de contato (toda a superfície do objeto), e
todos os possíveis carregamentos externos. Diversos pesquisadores, Ferrari e Canny (1992),
Ponce et al. (1993), Murray et al. (1994), Miller e Allen (1999) propõem métricas da qualidade
da fixação a partir da envolvente convexa7 de uma fixação. A envolvente convexa é construída
para a análise da propriedade force-closure de uma fixação.
As propriedades da fixação propostas por Lakshminarayana (1978) e Nguyen (1988), e as
métricas da qualidade da fixação definidas por Ferrari e Canny (1992) formam a base da teoria
fundalmental da fixação, e são formalmente apresentadas nas próximas Seções. Vale ressaltar a
contribuição de outros autores da área na elaboração da teoria da fixação, cuja grande maioria
são descritos em Bicchi e Kumar (2001), e Murray et al. (1994), além das revisões realizadas
pela maioria dos trabalhos citados no Capítulo 1 desta Dissertação.
3.3.1 Estabilidade da fixação
Segundo Mason (2001), diferentes abordagens utilizam o mesmo termo "estabilidade" para
definir a capacidade de um sistema em permanecer em um estado de equilíbrio. No entanto,
7O
termo envolvente convexa é a tradução para a lingua Portuguesa do termo em Inglês convex hull, o qual é
encontrado na literatura.
3 Teoria fundamental da fixação
46
Bicchi e Kumar (2001) apresentam dois significados na definição da estabilidade de uma fixação, um segundo a teoria de Lyapunov, e outro segundo a teoria de Lagrange. Bicchi e Kumar
(2001) apresentam uma revisão completa dos trabalhos que investigam a estabilidade da fixação
em relação as duas teorias citadas.
Em relação à teoria de Lyapunov, a estabilidade de uma fixação está relacionada com
seu comportamento dinâmico, e define como estabilidade a capacidade de um objeto, quando
movido de um estado inicial para um estado intermediário por um agente externo, de retornar
ao estado inicial, quando a ação do agente externo é removida.
Em relação à teoria de Lagrange, a estabilidade representa um mínimo local de energia
potencial para manter a fixação. Esta energia potencial é determinada pela magnitude das forças
de contato e/ou pelas forças requeridas nas articulações da garra e do manipulador durante a
fixação. Valente (1999) faz uma revisão dos trabalhos que determinam fixações para objetos a
partir da busca por fixações estáveis segundo a teoria de Lagrange.
Neste trabalho, adota-se a definição da estabilidade segundo a teoria de Lagrange, pois,
interessa-se apenas pelos efeitos estáticos das forças de contato sobre o objeto. Os efeitos
dinâmicos das forças sobre o objeto não são considerados.
3.3.2 Propriedade Force-closure de uma fixação
A propriedade force-closure de uma fixação, introduzida por Nguyen (1988), diz que uma
fixação executada por k pontos de contato é considerada force-closure no caso em que é possível
aplicar forças e momentos nos k pontos de contato, tal que qualquer carregamento externo Fex
possa ser balanceado.
Antes de apresentar as ferramentas para verificação da propriedade force-closure, é necessário
definir o espaço de carregamento (WS8 ). O espaço de carragemanto tem dimensão seis, que representam as três dimensões dos carregamentos puramente lineares (forças) e as três dimensões
dos carregamentos puramente torcionais (momentos) que podem ser aplicados em um objeto.
Com o objetivo de permitir uma melhor visualização, pode-se dividir o WS em dois espaços
tridimensionais, um representando os carregamentos puramente lineares, o espaço das forças,
force space (FS), e o segundo representanto os carregamentos puramente torcionais, o espaço
dos momentos, torque space (τ S).
Também é necessário definir o conceito de envolvente convexa. Dado um conjunto de pontos p ∈ Rm , a envolvente convexa deste conjunto é uma forma geométrica convexa de dimensão
8A
sigla WS é definida pelo termo em inglês wrench space.
3.3 Propriedades da fixação
47
m, tal que todos os pontos do conjunto p estão contidos no seu interior, ou seja, a forma convexa
encapsula todos os pontos de p.
Dado um conjunto de pontos p = [p1 . . . pm ]T ∈ R2 , então a envolvente convexa PL1 é
definida como:
PL1 = ConvexHull(
m
pi )
(3.71)
i=1
A expressão gráfica da envolvente convexa para um conjunto qualquer de pontos p ∈ R2
pode ser exemplificada graficamente pela Figura 3.2.
Figura 3.2: Exemplo de uma envolvente convexa para um conjunto de pontos no plano. À
esquerda o conjunto de pontos, e à direita a envolvente convexa em vermelho gerada pelo algoritmo QuickHull (BARBER et al., 1996).
Para uma fixação por k dedos, o carregamento sobre o objeto é resultante da soma dos carregamentos de cada um dos contatos. Relembrando, tem-se que F oi é o carrgamento do i-ésimo
ponto de contato representado no sistema de coordenadas do objeto, então é definido como espaço de carregamento da fixação (GWS9 ), o espaço formado pelos possíveis carregamentos que
podem ser aplicados em cada um dos k pontos de contato.
O espaço de carregamento da fixação GWS apresenta dimensão seis, GWS∈ R6 , porém,
pode-se também dividi-lo em dois espaços distintos, o espaço de carregamento lineares da fixação (GFS10 ), em que GFS∈ R3 , e o espaço de carregamentos torcionais da fixação (Gτ S11 ), em
que Gτ S∈ R3 .
Desta forma, o GFS é formado pelas componentes puramente lineares dos possíveis carregamentos nos pontos de contato. Foi visto que quando se considera a ocorrência de atrito no
9A
sigla GWS refere-se ao termo em Inglês grasp wrench space.
sigla GFS refere-se ao termo em Inglês grasp force space.
11 A sigla Gτ S refere-se ao termo em Inglês grasp torque space.
10 A
3 Teoria fundamental da fixação
48
contato, os possíveis carregamentos lineares em cada contato formam uma região denominada
cone de atrito.
É possível discretizar a região definida pelo cone de atrito por um número q de forças
localizadas sobre uma superfície cônica (BORST et al., 1999). Pela definição da envolvente
convexa, o cone de atrito pode ser definido de forma alternativa como:
ci
FC = ConvexHull(
q
f ci, j ).
(3.72)
j=1
em que f ci, j é a j-ésima força da discretização do cone de atrito.
Assim, na construção do GFS, é necessário considerar todas as possibilidades de forças
definidas pela representação simplificada do cone de atrito em cada contato. Vale lembrar que
o carregamento em cada contato deve ser normalizado, tal que o maior dos módulo de todas as
força seja unitário.
O Gτ S é formado pelos momentos resultantes de todas as possíveis forças aplicadas em
cada contato. Ou seja, para o contato no ponto ci, é necessário calcular o momento resultante
de cada uma das forças f ci, j de discretização do cone de atrito definida pelo produto vetorial
o × f ci, j , lembrando que r o é a distância do centróide do objeto ao ponto de contato ci. Vale
rci
ci
ressaltar que mesmo para o caso do contato macio, em que existe a ocorrência de momentos
de atrito na direção normal ao contato, a consideração apenas dos momentos resultantes das
o , na maioria dos casos, provê ordem de
forças no contato é satisfatória, pois a distância rci
grandeza maior ao momento resultante do produto vetorial em comparação ao momento de
atrito. Também é necessário normalizar as componentes de Gτ S antes da construção.
Um vez que o GWS (GFS e Gτ S) é definido, é possível determinar sua envolvente convexa.
Dado um conjunto de pontos de contato em uma fixação tal que C = [C1 , . . . ,Ck ], capazes de
aplicar um carregamento F = [F c1 , . . . F ck ] sobre o objeto, a envolvente convexa desta fixação é
denominada por:
FL1 = ConvexHull(
k
F ci ).
(3.73)
i=1
A envolvente convexa do carregamento de uma fixação representa o espaço de carregamentos que podem ser aplicados sobre o objeto, resultantes de combinações dos carregamentos
em cada um dos contatos. Se a origem do sistema em que a envolvente convexa é desenhada
estiver encapsulado pela própria envolvente, então é possível conseguir uma combinação de carregamentos nos pontos do contato cuja resultante é nula, o que satisfaz a condição 1 (Equação
3.69). E ainda, se a origem estiver contida dentro da envolvente convexa e não estiver sobre
3.3 Propriedades da fixação
49
algum ponto da superfície da envolvente, então é possível equilibrar qualquer carregamento
externo através de uma combinação dos carregamentos aplicados nos pontos de contato, o que
satisfaz a condição 2 (Equação 3.70).
Então, pode-se dizer que, se a envolvente convexa do GWS contiver a sua origem, e ainda
se origem não estiver sobre a superfície da envolvente, então as condições 1) e 2) para uma
fixação adequada estão satisfeitas e denomina-se esta fixação adequada como uma fixação forceclosure.
Uma fixação force-closure não é necessariamente uma fixação estável. A estabilidade segundo a teoria de Lagrange é definida como um estado local de mínima energia potencial. Em
uma fixação force-closure, para que a capacidade de resistir a qualquer carregamento externo
seja conseguida, podem ocorrer forças maiores que as mínimas possíveis, desta forma, segundo
a teoria de Lagrange, um fixação force-closure pode não ser estável, embora as condições de
equilíbrio possam ser satisfeitas.
3.3.3 Propriedade Form-closure de uma fixação
A movimentação de um corpo rígido pode ser restringida por contatos entre o manipulador
e a superfície do objeto. Quando uma fixação promove esta restrição pela disposição geométrica dos contatos, sem considerar os carregamentos exercidos nos mesmos, denomina-se esta
fixação como form-closure. Na análise da propriedade form-closure de uma fixação interessase exclusivamente pela restrição de movimentação provocada pelos contatos em relação as suas
posições, sem considerar as forças necessárias para mantê-los. Logo, esta propriedade é puramente geométrica.
Esta restrição geométrica é interessante nos casos em que se deseja imobilizar um objeto
em relação a um sistema inercial12 , fato que contrasta com a propriedade force-closure, em que
se deseja manter a posição do objeto constante em relação à ferramenta de fixação13 . Apesar
destas diferença, Mason (2001) define que uma fixação form-closure é um caso simplificado de
uma fixação force-closure, quando a mesma é relizada por pontos de contato sem atrito.
Devido às diferenças entre estas duas propriedades, as operações em que se deseja obter
a propriedade form-closure são distintas daquelas em que se deseja obter a propriedade forceclosure na fixação de um objeto. Esta propriedade é importante em aplicações industriais como
12 Na
lingua inglesa, a restrição da movimentação do objeto em relação a um sistema de referência inercial é
denominada to fix.
13 Na lingua inglesa, a restrição da movimentação do objeto em relação à ferramenta de fixação é denominada to
grasp.
3 Teoria fundamental da fixação
50
montagem de dispositivos, em que se deseja manter imóvel algumas peças para a montagem de
outras na mesma. Mais exemplos podem ser encontrados em Bicchi e Kumar (2001). Como
estas aplicações não estão no foco deste trabalho, esta propriedade é descrita de forma breve,
portanto, recomenda-se, para uma melhor compreensão, a leitura de Lakshminarayana (1978),
que realiza seu desenvolvimento na fixação de objetos.
O termo form-closure foi proposto por Reuleaux (1986) no estudo das condições necessárias
para restrição dos movimentos em cadeias cinemáticas para o caso plano. Reuleaux (1986)
demonstra que quando a movimentação do objeto está restrita à movimentação no plano, a imobilização de um corpo rígido é realizada por, no mínimo, quatro contatos pontuais sem atrito.
Para o caso tridimensional, o objeto apresenta seis graus de liberdade de movimentação, e,
segundo Lakshminarayana (1978), são necessários sete pontos de contato para restringir totalmente qualquer movimentação do objeto no espaço. A estratégia de fixação baseada na busca
da propriedade form-closure dedica-se à determinação da localização dos pontos de contato,
podendo ser menor que quatro ou sete, dependendo da forma do objeto. Ainda, segundo Mason
(2001), objetos com formas circulares, ou gerados por revolução de um perfil ao redor de um
eixo, não apresentam uma fixação form-closure.
3.3.4 Avaliação e Medida da qualidade da fixação
Através da análise da envolvente convexa dos carregamentos de uma fixação, é possível
determinar se esta é force-closure ou não. A definição introduzida na Seção 3.3.2 diz que uma
fixação force-closure é capaz de equilibrar qualquer carregamento externo. Contudo, apenas
por esta simples análise da envolvente convexa não é possível determinar, dentre várias fixações
diferentes para um mesmo objeto, qual é a melhor, ou seja, qual é a fixação que melhor resiste
aos carregamentos externos.
Na maioria dos casos em que se pretende fixar um objeto, deseja-se obter não somente
uma fixação force-closure, mas sim uma fixação force-closure de boa qualidade. Portanto,
uma medida de qualidade deve ser utilizada para selecionar, dentre diversas fixações, a melhor
fixação. Normalmente, a busca por fixações de boa qualidade é a tarefa desempenhada pelo
planejador da fixação, portanto, utilizam-se medidas de qualidade para selecionar as fixações
mais adequadas. Na literatura, diferentes formulações podem ser encontradas como propostas
de medidas da qualidade da fixação para implementação de planejadores. Na maioria dos casos,
esta qualidade é determinada por uma função custo que pode relacionar as forças nos contatos
e/ou a disposição geométria entre eles.
A existência de diferentes métricas dificulta a análise e comparação dos planejadores de
3.3 Propriedades da fixação
51
fixação, pois, cada diferente métrica considera critérios específicos de avaliação, o que provoca
divergências na avaliação de resultados. Portanto, a formalização de uma métrica de avaliação
da fixação, com capacidade de abranger todos os tipos de garras e modelos de contato propostos,
é fundamental.
Ferrari e Canny (1992) propõem duas métricas de qualidade da fixação, Q∞ e Q2 , baseadas
nos trabalhos de Markenskoff e Papadimitriou (1989) e Kirkpatric et al. (1990), respectivamente. Estas métricas são baseadas na envolvente convexa dos carregamentos dos contatos
aplicados sobre o objeto, e atualmente são amplamente utilizadas pelos pesquisadores da área
na avaliação de fixações de maneira geral, pois, as principais caracterísiticas das métricas são:
a capacidade de se trabalhar com garras de diferentes quantidades de dedos (não há limitantes
superiores); e a capacidade de se utilizar diferentes modelos de contato.
Segundo Ferrari e Canny (1992), uma fixação pode ser melhor que outra pela sua capacidade de equilibrar um mesmo carregamento externo com forças de contato de magnitude menor.
Esta capacidade pode ser medida pela razão entre a magnitude do carregamento equilibrado e a
magnitude das forças aplicadas nos contatos. Vale relembrar que a envolvente convexa do GWS
indica quais os carregamentos que uma fixação pode equilibrar.
Se cada ponto dentro da envolvente convexa representa um carregamento externo que pode
ser equilibrado, e a sua superfície representa os carregamentos que provocam o limite do equilíbrio estático, então, o menor carregamento externo que pode ser aplicado é o ponto da superfície com a menor distância à sua origem. Segundo Kirkpatric et al. (1990), a eficiência de uma
fixação é medida por esta distância.
Esta medida de qualidade pode ainda apresentar diferentes valores para diferentes metodologias de construção da envolvente convexa. Ferrari e Canny (1992) propõem duas metodologias
de construção da envolvente convexa para avaliação da qualidade da fixação. A primeira considera limites independentes das magnitudes das forças de cada contato, fato que maximiza o pior
caso. A segunda considera o limite da soma das magnitudes das forças de todos os contatos. A
primeira metodologia maximiza o menor dos carregamentos equilibráveis pelos contatos, enquanto que a segunda minimiza a magnitude dos somatório das forças. A segunda abordagem
é interessante na busca de fixações estáveis segundo a teoria de Langrange, enquanto que a
primeira abordagem é interessante na busca de fixações otimizadas em relação à capacidade de
resistir à carregamentos externos.
3 Teoria fundamental da fixação
52
Maximização do menor carregamento externo
Nesta abordagem, o carregamento em cada contato é considerado independente, e com
máxima magnitude igual a um. Como a relação entre um carregamento externo e as forças nos
contatos é linear, para carregamentos externos com magnitudes maiores que a unidade deve-se
redimensionar as magnitudes das forças aplicadas nos contatos.
Na Seção 3.3.2 é mostrado que o cone de atrito pode ser representado por um número finito
de forças q, localizadas na superfície do cone de atrito. Considerando a força f oi como a força
aplicada no i-ésimo contado e descrita no sistema de coordenadas do objeto, pode-se dizer que
esta força é uma combinação linear das q forças de simplificação do cone de atrito, assim:
q
oi
f =
∑ αoi, j · f oi, j
(3.74)
j=1
q
com αoi , j ≥ 0 e ∑ j=1 αoi , j ≤ 1. Os vetores f oi, j , com ( j = 1, . . . , q), são os vetores de discretização do cone de atrito descritos em O.
o a
As forças f oi, j também provocam momentos em relação ao centroide do objeto, sendo rci
distância entre o ponto de contato e o centróide do objeto, então:
τ oi =
q
∑ αoi, j · (rcio × f oi, j ).
(3.75)
j=1
Utilizando a notação F oi = [( f oi )T (τ oi )T ]T para o carregamento do contato ci, descrito em
O, então é possível afirmar que:
q
F oi =
∑ αoi, j · F oi, j .
(3.76)
j=1
O mesmo procedimento pode ser realizado para todos os n pontos de contato, então:
n
F o = ∑ F oi ,
(3.77)
i=1
e o conjunto de todos os carregamentos sobe o objeto é dado por:
FLo∞ = F o1 ⊕ . . . ⊕ F on .
(3.78)
A Equação 3.78 é o somatório de Minkowisk (vide Anexo A) dos carregamentos em cada
contato, que pode ser geometricamente representado por uma envolvente convexa, definida por:
FLo∞
n
{F oi,1 , . . . , F o,q }).
= ConvexHull(
i=1
(3.79)
3.3 Propriedades da fixação
53
A envolvente convexa da Equação 3.79 é construída considerando que a força em cada
carregamento tem magnitude máxima unitária, e a qualidade Q∞ , medida pela menor distância
entre a superfície da envolvente convexa e sua origem, é maximizada pela considerção da não
dependência entre as magnitudes das forças de contato.
Minimização do somatório das forças de contato
Para o caso em que se considera que o somatório de todas as forças de todos os contatos
tem valor unitário, então o somatório das forças de contato é dado por:
n
f o = ∑ f oi .
(3.80)
i=1
Se cada força de contato f oi é uma combinação linear daquelas de discritização do cone de
atrito, então:
n
fo = ∑
q
∑ αi, j · f oi, j ,
(3.81)
i=1 j=1
q
com αoi , j ≥ 0 e ∑ni=1 ∑ j=1 αoi , j ≤ 1.
De forma similar pode-se dizer que:
n
Fo = ∑
q
∑ αi, j · F oi, j .
(3.82)
i=1 j=1
Finalmente, o conjunto dos carregamentos possíveis é representado pela envolvente convexa:
FLo1
= ConvexHull(
n
{F i,1 , . . . , F i,q }).
(3.83)
i=1
cuja menor distância da sua supérfície à origem é a medida de qualidade Q1 .
A qualidade Q1 considera que o somatório das magnitudes da força é limitado, desta forma,
quando uma fixação apresenta melhor qualidade Q1 que outra, pode-se dizer que a primeira é
mais estável que a segunda. Quando se utiliza esta medida em planejadores de fixação, obtém-se
uma fixação com estabilidade segundo a teoria de Lagrange.
3 Teoria fundamental da fixação
54
3.4 Resumo do Capítulo 3
O objetivo do presente Capítulo foi apresentar a teoria envolvida na fixação de objetos
por garras robóticas e a principal contribuição para a compreensão do texto desta Dissertação
é a verificação da condição force-closure de uma fixação e a determinação da qualidade da
mesma. Porém, antes da apresentação destes assuntos específicos, foi necessário apresentar
outras formulações de fenômenos envolvidos na fixação.
Primeiramente, foi apresentado o conceito das transformações homogêneas e a teoria de
movimentação de corpos rígidos no espaço. Estes conceitos são utilizados para definir o mapa
de uma fixação G, que transforma os carregamentos de cada contato, cujo espaço é definido
pela base de contato B, em carregamentos equivalentes definidos em um único sistema de coordenadas, neste caso, o sistema de coordenadas do objeto.
Utilizando-se o mapa da fixação G e a base dos contatos B, é possível determinar as
equações de equilíbrio estático do objeto em uma fixação. Contudo, na maioria dos casos,
este sistema de equações é linearmente dependente e não possui uma única solução.
A fim de possibilitar a análise qualitativa de uma fixação quanto a sua capacidade de resistir
a carregamentos externos, foi apresentada a propriedade force-closure de uma fixação. Uma
fixação force-closure é definida como aquela capaz de se manter em equilíbrio na ausência de
carregamentos externos, ou seja, quando somente o carregamento da fixação é aplicado sobre o
objeto, que permanece em equilíbrio estático.
Para a verificação da propriedade force-closure de uma fixação é necessário recorrer a uma
ferramenta específica, a envolvente convexa. A envolvente convexa representa o espaço dos
possíveis carregamentos que podem ser aplicados por uma fixação, e conseqüentemente, representa os carregamentos externos que uma fixação pode equilibrar. Se a envolvente convexa
contiver a sua origem, então a fixação é capaz de equilibrar um carregamento externo nulo, ou
seja, a fixação é capaz de se manter em equilíbrio na ausência de carregamentos externos. Neste
caso, diz-se que a fixação é force-closure.
Por fim, a análise da propriedade force-closure de uma fixação não permite determinar,
dentre uma série de fixações para um mesmo objeto, qual é a fixação que melhor resiste aos
diferentes carragemantos externos. Para este fim, recorre-se a uma métrica de qualidade da
fixação. Se a envolvente convexa de uma fixação representa os carregamentos que podem ser
equilibrados, e ainda, a sua superfície representa os limites em que o equilíbrio entre carregamento da fixação e externo é atingido, então o ponto da superfície da envolvente convexa mais
próximo a sua origem é o ponto em que o desequilíbrio é mais facilmente atingido, e portanto,
3.4 Resumo do Capítulo 3
55
a distância deste ponto à origem da mesma envolvente é a medida da qualidade da fixação.
As teorias, definições, propriedades e equações apresentadas neste Capítulo são fundamentais para a plena compreensão dos Capítulos 5, 7 e 8 deste trabalho.
56
3 Teoria fundamental da fixação
57
Parte II
Fixação 2D utilizando redes neurais
artificiais
59
4
Aproximação poligonal utilizando redes de
Hopfield
Neste Capítulo é apresentado um algoritmo de rápido processamento, baseado em redes
neurais, para o problema da aproximação poligonal de curvas. O algoritmo aqui proposto consiste em modificações na regra de ativação originalmente proposto por Araújo e Tanaka (1995).
Simulações e comparações mostram que o novo algorimo apresenta respostas com qualidade
equivalente ao algoritmo original, contudo, o tempo de processamento observado foi significantemente menor.
4.1 Introdução
No reconhecimento de padrões geométricos, é crucial o emprego de formas geométricas
aproximadas ou reduzidas, sendo que, a técnica de aproximação poligonal, que permite a descrição da forma de maneira compacta, simplifica sua análise, além de reduzir a demanda computacional na etapa de processamento de dados.
A aproximação poligonal é uma abordagem bastante utilizada para a simplificação de formas bidimensionais. O objetivo é representar uma forma geométrica por um polígono, cujos
vértices são alguns dos pontos da curva original, sendo que as características relevantes são
preservadas na aproximação.
A abordagem consiste na escolha dos melhores vértices para a representação do polígono
com perdas mínimas de informação. Em geral, as soluções existentes apresentam respostas
otimizadas quanto à qualidade da aproximação, porém, os algoritmos existentes, em sua maioria, requerem muito esforço computacional. A dificuldade encontrada em tais abordagens é a
obtenção de respostas satisfatórias com tempo reduzido que permitam a aplicação da técnica
em tarefas onde o tempo de processamento é crítico.
Algumas técnicas propõem o uso de recursos não convencionais na tentativa de simplificar
os cálculos. Dentre as várias estratégias não convencionais pode-se destacar as redes neurais
4 Aproximação poligonal utilizando redes de Hopfield
60
artificiais. Chung et al. (1994) propõe uma rede de Hopfield para a solução do problema da
aproximação poligonal, que posteriormente fora modificada por Araújo e Tanaka (1995) a fim
de melhorar a qualidade dos resultados.
As modificações propostas por Araújo e Tanaka (1995) estão concentradas na matriz de
pesos de aprendizagem da rede neural, de modo que as diferenças entre o polígono de aproximação e a curva aproximada tivessem maior influência no cálculo dos pesos. Os resultados
obtidos com as modificações foram satisfatórios em várias situações, porém, o custo computacional para o cálculo da aproximação ainda é elevado, conforme será mostrado neste Capítulo.
Dentre as desvantagens do algoritmos de Araújo e Tanaka (1995), pode-se citar que, quando
o número de vértices da aproximação é próximo ao da curva inicial, ou quando o número de
pontos da curva inicial é elevado, o tempo total de cálculo gasto pelo algoritmo não permite sua
utilização em operações que exigem rápido processamento, tal como os sistemas robóticos.
O novo algoritmo propõe uma variação da rede competitiva de Hopfield apresentada por
Araújo e Tanaka (1995) como solução para o problema do custo computacional para resolver o
problema da aproximação poligonal. A proposta envolve modificações na construção da matriz
de aprendizado, na rede competitiva, na construção da regra de ativação e na função energia
U. As modificações evitam operações que não influenciam no resultado final, portanto, evita
operações desnecessárias, sem perda da qualidade da aproximação.
A Seção 4.3 apresenta o modelo de rede neural competitiva de Hopfield proposta por Araújo
e Tanaka (1995) e discute alguns resultados preliminares. Na Seção 4.4 são propostas modificações na matriz de pesos H, na regra de ativação, e o algoritmo proposto é apresentado.
Simulações são realizadas e os resultados são comparados com resultados obtidos por vários
métodos na Seção 4.5. Formas de objetos reais também são utilizadas para comparar o algoritmo original com o proposto na Seção 4.5.3. Por motivos didáticos na proxima Seção, Seção
4.2, a rede competitiva de Hopfield é brevemente apresentada.
4.2 Rede de Hopfield
A rede neural proposta por Hopfield (1982) apresenta uma formação recurssiva em que
cada neurônio é conectado a todos os demais neurônios da rede. A conexão entre os neurônios
é caracterizada pelos pesos wi j , que é o peso da conexão entre o neurônio i e o neurônio j. Os
pesos entre os neurônios de toda a rede formam uma matriz simétrica de pesos W , wi j = w ji ,
e com diagonal principal nula, caracterizando que a conexão de um neurônio com si mesmo
é inexistente ou nula. A Figura 4.1 mostra uma rede de Hopfield de seis neurônios e suas
4.2 Rede de Hopfield
61
conexões.
Figura 4.1: Exemplo de uma rede de Hopfield com seis neurônios e suas conexões.
A ativação de cada neurônio da rede é determinada por uma função degrau aplicada sobre
um somatório ponderado dos valores de entrada do neurônio subtraído de um limiar T j . Os
valores de entrada de cada neurônio são os valores atribuído a cada um dos demais neurônios,
no instante anterior t, multiplicados pela sua conexão com o neurônio avaliado.
xi (t + 1) = fh
N
∑ wi j · x j (t) − Tj
i = 1, 2, · · · , N
(4.1)
j=1
em que N é o número total de neurônios da rede e x j e T j são respectivamente o valor de ativação
e o limiar do j-ésimo neurônio. A função degrau fh é uma função não linear que determina uma
ativação bipolar (-1,+1) ou binária (0,1).
Na arquitetura da rede de Hopfield, valores iniciais são atribuídos à rede, 0 e 1 para o
caso binário, ou -1 e +1 para o caso bipolar. A conexão mútua entre os neurônios permite que a
ativação de um neurônio influencie na ativação dos demais. Desta forma, a rede inicial passa por
diversos estados intermediários até a convergência em um estado estável que ocorre quando não
há mais mudanças na ativação dos neurônios. O estado estável significa que há mais neurônios
mantendo as ativações do que neurônios tentando invertê-las.
O ponto de mínimo valor da função energia dada pela equação 4.2 corresponde ao ponto de
estabilidade atingido pela rede.
E =−
1
∑ wi j · xi · x j + ∑ xi · Ti
2∑
i j=i
i
(4.2)
A convergência da rede de um estado inicial até um de mínima energia possibilita a utiliza-
4 Aproximação poligonal utilizando redes de Hopfield
62
ção das redes competitivas de Hopfield em problemas de otimização, para tanto, é necessário
associar uma função objetivo com a função energia, desta maneira, a rede poderá convergir para
uma solução otimizada segundo um mínimo local.
O caso da aproximação poligonal consiste em um clássico problema de otimização. Equacionando o problema da aproximação em termos de uma função energia, é possível determinar
uma solução para o problema através da rede de Hopfield. O ponto de mínimo da função
energia, para o caso da aproximação, consiste em um polígono que minimiza o desvio entre o
polígono aproximado e a curva original.
4.3 Algoritmo original
A presente Seção apresenta o modelo de rede competitiva de Hopfield proposto por Araújo
e Tanaka (1995) para a determinação dos melhores vértices da aproximação poligonal. Porém,
para melhor compreensão do algoritmo é recomendado a leitura de Chung et al. (1994) e Araújo
e Tanaka (1995).
A partir de um polígono composto por n pontos, é definido P = [p1 , p2 , . . . , pn ]T como o
vetor de vértices do polígono, sendo que cada elemento tem duas componente x e y em um
sistema de referência inercial. Deseja-se representar o polígono por um número reduzido de m
elementos, ou seja m < n.
A rede neural proposta apresenta configuração bidimensional, denominada matriz neural
V , de dimensões n × m. Cada uma das m colunas apresenta n neurônios, onde cada neurônio
representa um vértice ou elemento do vetor P, sendo que apenas um neurônio é ativado por
coluna. Os neurônios ativados de cada coluna representam os vértices selecionados de aproximação. Desta forma, o neurônio ativado na primeira coluna representa o primeiro vértice da
aproximação, e assim sucessivamente até que na m-ésima coluna, o neurônio ativado representa
o último vértice da aproximação.
Uma vez definida a matriz neural Vn×m , define-se a regra de aprendizado, ou a matriz de
pesos H. Para tanto, o desvio entre curva e corda é definido. Primeiramente, dada uma curva
P = [px , px+1 , px+2 , . . . , px+n−1 , py ]T constituída de n pontos ordenados, e px py e px py representando, respectivamente, o trecho da curva e a corda do ponto px ao ponto py . Araújo e Tanaka
(1995) definem como desvio ponto-corda o somatório das distâncias entre os pontos da curva P
e a corda px py como:
hx,y =
x+n−1
∑
k=x+1
d(pk , px py ).
(4.3)
4.3 Algoritmo original
63
Figura 4.2: Desvio entre curva e corda definido como o somatório das distâncias entre a curva
px py e a corda px py .
Define-se então a matriz Hn×n formada pelo desvio ponto-corda entre todos os pontos da curva
como:
H = [hx,y ],
(4.4)
em que x, y = 1, 2, 3, . . . , n.
Após a construção da matriz H, a seleção dos melhores pontos de aproximação é definida
por um método iterativo onde cada etapa da iteração consiste na análise de uma coluna da matriz
de neurônios da matriz V . A regra winner-takes-all é aplicada sobre uma regra de ativação, ou
função energia U, calculada para cada elemento de uma mesma coluna, sendo que a unidade
vencedora recebe o valor 1 (ativada) e as demais recebem o valor 0 (não ativada). A função
energia U é calculada da seguinte maneira:
Ux,i =
n
∑ −(hy,x ·Vy,i−1 + hx,y ·Vy,i+1),
(4.5)
y=1
para x = 1, . . . , n e i = 1, . . . , m. Em que x é o neurônio da i-ésima coluna. Para cada ponto
neurônio x, pertencente à i-ésima coluna verificada, é calculada a energia Ux,i , que recebe
o somatório das conexões com os elementos das colunas vizinhas, da direita e da esquerda,
conforme mostra a Figura 4.3. Para que nenhum ponto px seja ativado em colunas vizinhas,
modifica-se o cálculo dos elementos de H dado pela Equação 4.6 válida para todo x = y.
hx,y = ∞
(4.6)
A aproximação poligonal utilizando a rede competitiva de Hopfield pode ser resumida da
seguinte forma:
1. Entrada: pontos de uma curva P = [p1 , p2 , . . . , pn ]T ordenada no sentido horário e o
número de vértices do polígono de aproximação m.
4 Aproximação poligonal utilizando redes de Hopfield
64
Figura 4.3: Esquemático do cálculo da função energia U para um elemento qualquer. Figura
modificada de Valente (1999).
2. Estado final da rede: as unidades ativas representam os vé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 pontos de curva e corda.
(b) Estado inicial da rede: escolha inicial dos m pontos selecionados o mais eqüidistantes possível.
(c) Regra de propagação: cálculo da função energia para todos os neurônios da coluna
avaliada.
(d) Regra de ativação winner-takes-all para obtenção do novo neurônio ativado na coluna.
(e) Repetição dos passos c) e d) para todas as colunas até não haver mais mudanças na
rede.
(f) Geração dos vértices do polígono de aproximação a partir das unidades ativas da
rede.
4.4 Algoritmo proposto
O algoritmo proposto apresenta modificações na rede apresentada na Seção anterior. Esperase, como resultado, obter uma aproximação onde os pontos selecionados sejam os mesmos, ou
4.4 Algoritmo proposto
65
semelhantes, aos calculados pelo algoritmo original, porém, com tempo total de processamento
e recursos computacionais utilizados reduzidos.
A principal estratégia adotada no novo algoritmo é executar o cálculo dos elementos da
matriz H apenas quando forem solicitados. Cada elemento da matriz é ainda calculado segundo
a Equação 4.3.
Determinada a regra de aprendizagem ou seja, o cálculo dos elementos da matriz de pesos H, utiliza-se a matriz de representação neural V introduzida na Seção anterior, onde cada
neurônio pode assumir um valor binário 0 ou 1. Os vetores P = [p1 , . . . , pn ]T e S = [s1 , . . . , sm ]T
são definidos. O vetor P é formado pelos vértices da curva inicial. O vetor S é formado por m
ponteiros que indicam quais vértices foram selecionados na aproximação, desta forma se s1 = 3,
significa que o terceiro vértice da curva, ou o elemento p3 ∈ P foi selecionado para a aproximação. Conforme foi discutido na Seção anterior, cada coluna da matriz V representa os vértices
candidatos, ou seja, os pontos do vetor P. O índice dos elementos do vetor P selecionado em
cada uma das m colunas da matriz V compõem o vetor S.
A matriz neural V é inicializada com pontos eqüidistantes em cada uma das colunas. Uma
vez inicializada a rede, inicia-se o processo de iteração. A função energia é calculada e a
regra de ativação é aplicada para cada uma das colunas. A Figura 4.4 mostra a função energia
calculada pela Equação 4.5 para um estágio de iteração.
Figura 4.4: Função energia para uma etapa de iteração.
4 Aproximação poligonal utilizando redes de Hopfield
66
Uma vez inicalizada a rede, começa o processo de iteração. A função energia é calculada
e a regra de ativação é aplicada para cada um das colunas. A Figura 4.4 mostra a função energia onde pode ser obervado que os vales são os pontos onde houve a penalização imposta pela
restrição da equação 4.5, e a região entre os vales, ou topo, indica a região de interesse (vide
Figura 4.5) onde está localizado o ponto selecionado. A região de interesse esta compreendida
entre o vértice selecionado da coluna anterior e o vértice selecionado da coluna posterior, conforme mostra a Figura 4.5, em outras palavras, a região de interesse é formada pelos neurônios
localizados entre o neurônio ativado da coluna anterior e o neurônio ativado da coluna posterior
à coluna avaliada.
Figura 4.5: Região de interesse para o cálculo da matriz H.
Considerando que o ponto selecionado está dentro da região de interesse, a equação da
função energia é simplificada até a seguinte expressão:
Ux,y = −(hS(y−1),x + hx,S(y+1) ) para S(y − 1) < x < S(y + 1) com y = 1, . . . , m,
(4.7)
em que S(y − 1) é a posição do ponto A dentro do vetor P, e S(y + 1) é a posição do ponto C
dentro do vetor P (vide figura 4.5), ou ainda, S(y − 1) é o neurônio ativado da coluna anterior e
S(y + 1) é o neurônio ativado da coluna posterior.
A nova equação para o cálculo da função energia evita as multiplicações por 0, ou seja,
multiplicações dos elementos da matriz V não selecionados. Outra modificação é o cálculo de
4.5 Simulações e resultados
67
U apenas dentro da região de interesse.
As modificações no método da rede competitiva de Hopfield podem ser resumidas como:
• Mudança na ordem de cálculo da matriz de pesos H, evitando o cálculo de termos não
utilizados.
• Modificação na regra de propagação. Aplicação da função energia apenas sobre a região
de interesse.
• Mudança no equacionamento da função energia, eliminando multiplicações desnecessárias.
O algoritmo proposto pode ser então resumido como:
1. Entrada: pontos de uma curva P = [p1 , p2 , . . . , pn ]T ordenada no sentido horário e o
número de vértices do polígono de aproximação m.
2. Estado final da rede: as unidades ativas representam os vértices do polígono de aproximação.
3. Método.
(a) Estado inicial da rede: escolha inicial dos m pontos selecionados o mais eqüidistante
possíveis.
(b) Regra de propagação: cálculo da função energia para cada coluna somente na região
de interesse. Nesta etapa os pesos da matriz H serão calculados conforme a necessidade.
(c) Regra de ativação winner-takes-all para obtenção do novo estado da rede.
(d) Repetição dos passos c) e d) até não haver mais mudanças na rede.
(e) Geração dos vértices do polígono de aproximação a partir das unidades ativas da
rede.
4.5 Simulações e resultados
Simulações foram realizadas para verificar o desempenho do algoritmo proposto quanto à
qualidade da aproximção e quanto ao tempo de processamento. O método proposto foi implementado na linguagem Matlab, e as simulações foram realizados em um computador de 2, 0GHz
do tipo IBM-PC.
4 Aproximação poligonal utilizando redes de Hopfield
68
A qualidade das respostas foi medida pelos seguintes parâmetros: somatório do erro quadrático:
n
EQ = ∑ (di )2 ;
(4.8)
EM = max{di } para i = 1, 2, . . . , n
(4.9)
i=1
e erro máximo:
em que d é a distância entre um ponto da curva original à curva de aproximação (vide Figura
4.2).
4.5.1 Comparação com o algoritmo original
Na primeira simulação, o resultado do algoritmo proposto foi comparado com o algoritmo
original proposto por Araújo e Tanaka (1995) e utilizado por Valente (1999) na etapa do compactação dos dados. Para cada possível valor de aproximação m, ou seja 3 ≤ m ≤ (n − 1), os
parâmetros de qualidade EQ, EM e o tempo de processamentoto foram medidos para ambos os
algoritmos. No experimento foram utilizadas as curvas da Figura 4.6.
(a)
(b)
(c)
Figura 4.6: As formas acima são freqüentemente utilizadas pelos autores da área para avaliação
dos algoritmos de aproximação poligonal. Figura 4.6(a) Leaf shape, Figura 4.6(b) Chromosome
shape e Figura 4.6(c) Semi-circle shape.
As três formas foram utilizadas na avaliação dos resultados do resultado do algoritmo de
aproximação poligonal por diversos autores, entre eles: Rosenfeld e Weszka (1975), Teh e Chin
(1989), Ansari e Huang (1991), Chung et al. (1994), Ray e Ray (1992a), Ray e Ray (1992b),
Cornic (1997), Wu (2003), Marji e Siy (2003), Marji e Siy (2004), Sarkar (1993) e Huang e Sun
(1999).
4.5 Simulações e resultados
69
Figura 4.7: Gráficos de comparação entre o algoritmo proposto, em azul, e o algoritmo original, em vermelho, para o Leaf shape (Figura 4.6(a)). Figura 4.7(a) mostra o erro máximo
por aproximação m, Figura 4.7(b) mostra o somatório do erro quadrático por aproximação m e
Figura 4.7(c) mostra o tempo de processamento por aproximação m.A forma Leaf shape tem
inicialmente 120 pontos.
70
4 Aproximação poligonal utilizando redes de Hopfield
Figura 4.8: Gráficos de comparação entre o algoritmo proposto, em azul, e o algoritmo original,
em vermelho, para o Chromosome shape (Figura 4.6(b)). Figura 4.8(a) mostra o erro máximo
por aproximação m, Figura 4.8(b) mostra o somatório do erro quadrático por aproximação m
e Figura 4.8(c) mostra o tempo de processamento por aproximação m. A forma Chromosome
shape tem inicialmente 60 pontos.
4.5 Simulações e resultados
71
Figura 4.9: Gráficos de comparação entre algoritmo proposto, em azul, e o algoritmo original,
em vernelho, para o Semi-circle shape (Figura 4.6(c)). Figura 4.9(a) mostra o erro máximo
por aproximação m, Figura 4.9(b) mostra o somatório do erro quadrático por aproximação m e
Figura 4.9(c) mostra o tempo de processamento por aproximação m. A forma Semi-circle shape
tem inicialmente 100 pontos.
4 Aproximação poligonal utilizando redes de Hopfield
72
Os gráficos anteriores mostram os parâmetros medidos EM e EQ e o tempo de processamento, pelo valor m de aproximação, para as formas leaf shape, chromossome shape e semicircle shape.
Pode-se observar que para as três formas a qualidade da aproximação, expressa pelos parâmetros EQ e EM, foram mantidas, no entanto, o tempo de processamento observado foi
consideravelmente reduzido para valores de aproximação acima de 5% do número total de pontos n. Em média o algoritmo original foi 400 vezes mais lento que o algoritmo proposto neste
trabalho.
O código fonte do algoritmo original utilizado nesta comparação foi gentilmente sedido por
Carlos Magno de Oliveira Valente.
4.5.2 Comparação com demais algoritmos
Na segunda comparação, os curvas da Figura 4.6 foram aproximadas e comparadas com
outros algoritmos de aproximação poligonal. As Tabelas B.1 e B.2, localizadas no Apêndice B,
mostram os resultados obtidos em alguns trabalhos relevantes. Novos parâmetros de qualidade
da aproximação são definidos, sendo eles: somatório do erro quadrático ponderado:
n
EQp = ∑ (di )2 /TC;
(4.10)
EM p = max{di }/TC para i = 1, 2, . . . , n,
(4.11)
i=1
e erro máximo ponderado:
em que TC é a taxa de compressão TC = mn .
Os resultados do algoritmo proposto foram comparados com os resultados dos demais
algoritmos (ROSENFELD; WESZKA, 1975; TEH; CHIN, 1989; ANSARI; HUANG, 1991;
CHUNG et al., 1994; RAY; RAY, 1992a, 1992b; CORNIC, 1997; WU, 2003; MARJI; SIY,
2003, 2004; SARKAR, 1993; HUANG; SUN, 1999).
Os gráficos das Figuras 4.10 a 4.15 a seguir comparam os resultados do algoritmo proposto,
e os resultados dos demais algoritmos para cada valor m de aproximação poligonal. Para as
aproximações por determinado m realizadas por mais de um autor, foi selecionado aquele que
apresentou a melhor qualidade de aproximação. Os dados obtidos com o algoritmo proposto
estão na Tabela B.3, também localizada no Apêndice B.
4.5 Simulações e resultados
73
Figura 4.10: Comparação do algoritmo proposto com outros algoritmos. Somatório do erro
quadrático por aproximação do Leaf Shape.
Figura 4.11: Comparação do algoritmo proposto com outros algoritmos. Erro máximo por
aproximação do Leaf Shape.
74
4 Aproximação poligonal utilizando redes de Hopfield
Figura 4.12: Comparação do algoritmo proposto com outros algoritmos. Somatório do erro
quadrático por aproximação do Chromosome Shape.
Figura 4.13: Comparação do algoritmo proposto com outros algoritmos. Erro máximo por
aproximação do Chromosome Shape.
4.5 Simulações e resultados
75
Figura 4.14: Comparação do algoritmo proposto com outros algoritmos. Somatório do erro
quadrádico por aproximação do Semi Circle Shape.
Figura 4.15: Comparação do algoritmo proposto com outros algoritmos. Erro máximo por
aproximação do Semi Circle Shape.
4 Aproximação poligonal utilizando redes de Hopfield
76
4.5.3 Simulação com imagens reais
Para verificar a capacidade do algoritmo de aproximação proposto de realizar aproximações poligonais em tempos reduzidos, formas de objetos reais são aproximadas pelo algoritmo
original e pelo algoritmo proposto. A simulação com formas de objetos reais tem o objetivo
de mostrar a eficiência do algoritmo proposto para utilização em sistemas mecatrônicos, neste
caso, para utilização em um sistema de fixação de objetos.
As aproximações são realizadas com as figuras utilizadas nas simulações do algoritmo de
fixação 2D (As imagens de objetos utilizadas são aquelas das Figuras A.2, A.3 e A.4 localizadas
no Apêndice A) para m = 50, m = 100 e m = 150 pontos. A curva original, o contorno do objeto,
é extraído segundo o método de processamento de imagens apresentado no Apêndice A.
Os resultados das simulações são apresentados na tabela a seguir.
Tabela 4.1: Tabela de comparação dos tempos de processamento da aproximação poligonal,
calculada pelo algoritmo original e pelo algoritmo proposto, de formas de objetos reais, para
diversos valores m de aproximação. Os tempos medidos estão em segundos.
Figura
Figura A.2(a)
Figura A.2(b)
Figura A.3(a)
Figura A.3(b)
Figura A.3(c)
Figura A.3(d)
Figura A.3(e)
Figura A.4(a)
Figura A.4(b)
Figura A.4(c)
Figura A.4(d)
Figura A.4(e)
m = 50
Alg. Prop. Alg. Orig.
0,1361
69,893
0,1998
210,27
0,1718
137,68
0,6251
708,07
0,2470
271,20
0,4322
447,65
0,2746
237,60
0,4731
36,774
0,3807
280,84
0,0891
26,269
0,3006
347,59
0,5237
692,35
m = 100
Alg. Prop. Alg. Orig.
0,1612
167,53
0,3389
498,75
0,3877
423,40
0,5327
1189,4
7,1519
637,18
0,2799
1674,3
0,4018
711,69
0,0749
119,61
0,3281
1059,5
1,2513
133,88
0,3118
802,49
0,2939
3067,2
m = 150
Alg. Prop. Alg. Orig.
0,1994
728,37
0,3447
1080,6
0,4975
1295,9
0,8466
3664,5
0,3638
821,69
5,3440
2525,5
0,3420
1504,7
0,0490
509,57
0,5568
1346,1
0,0399
199,06
0,7193
1683,1
0,5387
6505,4
Os tempos de processamento apresentados pelo algoritmo original são extremamente inferiores aqueles apresentados pelo algoritmo original. Porém, é importante ressaltar que o tempo
de processamento do algoritmo original depende principalmente do número de pontos da curva
orignal, pois o número de pontos determina o tamanho da matriz de pesos H. As formas utilizadas para a obtenção dos valores da Tabela 4.1 foram obtidas de imagens de alta resolução (4
Mega pixels), e desta forma, cada forma apresenta um elevado número de pontos n.
Quando se utiliza curvas iniciais definidas por pouco pontos, é cpossível obter reduzidos
tempos de processamento com a utilização do algoritmo original, tal como os resultados obtidos
4.6 Resumo do Capítulo 4
77
por Valente (1999), que utiliza imagens de baixa resolução1 .
4.6 Resumo do Capítulo 4
A aproximação poligonal é uma técnica que pode ser usada em várias áreas da ciência,
porém, muitos métodos existentes levam em consideração a obtenção de uma aproximação
otimizada, dentre as inúmeras possíveis soluções existentes, sendo que o tempo de processamento é elevado. Portanto, o uso de técnicas de determinação de aproximações otimizadas é
inviável para sistemas com requisitos de processamento em tempo real.
Neste Capítulo, modificações do algoritmo de Araújo e Tanaka (1995) foram apresentadas
como uma solução para o elevado tempo de processamento das técnicas de aproximação poligonal.
As modificações do algoritmo original estão concentradas na construção da matriz de pesos H e no cálculo da função energia U, que no caso do método original, apresenta cálculos
desnecessários que provocam tempos elevados para a obtenção das respostas.
Simulações foram realizadas e os resultados obtidos mostraram que foi possível diminuir o
tempo de processamento sem perda da qualidade da aproximação, porém a aproximação obtida
pode, em muitos casos, não ser uma aproximação otimizada.
Como proposta para trabalhos futuros é sugerido a análise da qualidade da aproximação
em função da inicialização da rede. Testes, não descritos neste texto, mostraram que a resposta
da rede é influenciada pela sua inicialização, que deve ser otimizada a fim de se melhorar as
respostas.
Também é proposta a avaliação dos resultados apresentados pela rede em função do cáculo
dos pesos da rede, em outras palavras, a medida do erro da aproximação de uma curva de
vários pontos (corda) por uma reta. Chung et al. (1994) propõem que o erro de aproximação
de uma corda por uma reta é determinado pela maior distância entre os pontos da corda e a
reta, e Araújo e Tanaka (1995) mostram que melhores resultados são obtidos quando o erro é
representado pelo somatório das distâncias entre os pontos da corda e a reta de aproximação.
Logo, o desempenho da rede também depende do método utilizado para se determinar os pesos
da rede, e poderia ser investigado.
Por fim, as medidas de tempo realizadas nas comparações entre os algoritmos foram reali1 Segundo
informações de Valente (1999), a câmera utilizada capturava imagens de 128×128 pixels, e desta
forma, as formas dos objetos apresentavam em média 400 pontos de contorno.
78
4 Aproximação poligonal utilizando redes de Hopfield
zadas a partir do processamento em um computador do tipo desktop a partir de programas implementados em uma linguagem de desenvolvimento sem recursos de processamento em tempo
real. Para uma real medida da eficiência do algoritmo em sistema robóticos, é desejável testar o
algoritmo em um computador dedicado, com hardware e software que permitam execução em
tempo real.
79
5
Fixação 2D de objetos desconhecidos
5.1 Introdução
A utilização de garras robóticas em ambientes fabrís pode ser encontrada em larga escala
com o objetivo de fixar objetos, e com a finalidade de movimentação de material, montagem,
inspeção de peças, entre outras diversas aplicações. Contudo, os sistemas manipuladores e
as garras robóticas industriais apresentam alto grau de especialização e são incapazes de se
adaptarem às variações das condições de operação, sejam elas mudanças na geometria do objeto a ser fixado, ou mudanças na orientação e posição do mesmo no espaço de trabalho do
manipulador.
Na área científica, muitos trabalhos propõem diferentes abordagens para o problema da fixação de objetos previamente desconhecidos. Dentre os trabalhos que se focam no problema da
fixação, pode-se destacar os trabalhos que utilizam informações obtidas por sistemas de visão
para informar ao manipulador a forma do objeto a ser fixado. Os principais sistemas de visão
utilizados nas indústrias e nos trabalhos acadêmicos são: visão estereoscópica (HAUCK et
al., 1999); scanners laser (WANG et al., 2005); sistemas compostos por scanners e câmeras
(SAXENA et al., 2006) e os sistemas formados por somente uma câmera (BALLESTER,
2003)(MORALES et al., 2006).
Nas aplicações industrias, pela necessidade de tempo total de processamento reduzido, os
manipuladorers providos de um sistema de visão composto por uma única câmera, ou visão
bidimensional (2D), apresentam-se como os mais adequados quando comparados aos outros
sistemas de visão tridimensionais (3D). As câmeras apresentam, de forma geral, baixo custo de
instalação, facilidade de calibração, e permitem rápido processamento das informações devido
ao número reduzido de dados, quando comparados com os sistemas de visão 3D.
Ainda para as aplicações industriais, além do reduzido tempo de aquisição e de processamento dos dados obtidos pelo sistema de visão, o tempo de tomada de decisão, ou seja, o tempo
decorrido para a determinação dos pontos de fixação, também deve ser reduzido. Na busca de
5 Fixação 2D de objetos desconhecidos
80
sistemas rápidos de fixação, baseados em informações 2D do objeto, pode-se destacar os trabalhos de Xu et al. (1990), Bendiksen e Hager (1994), Kamon et al. (1994), Valente (1999),
Morales et al. (2001), Ballester (2003), Sanz et al. (2005), e Morales et al. (2006).
Os trabalhos citados propõem sistemas baseados em diferentes técnicas e algoritmos de
planejamento da fixação, desde uma busca heurística exaustiva pela melhor fixação, até a determinação de pontos de fixação por RNAs, sendo que alguns ainda apresentam sistemas de
aprendizagem com auxílio de sistemas supervisores.
Nos trabalhos de Morales et al. (2001), de Ballester (2003), de Sanz et al. (2005) e de
Morales et al. (2006), técnicas de rápido processamento e mecanismos de busca são utilizados
para a determinação de uma fixação estável para objetos de formatos desconhecidos. Os resultados apresentados são satisfatórios, mas pode-se citar algumas desvantagens como erros na
fixação de objetos com geometria complexa muito diferente da forma retangular e elipsoidal.
Nos trabalhos de fixação 2D de objetos desconhecidos, pode-se ainda citar aqueles que
utilizam técnicas não convencionais. Os trabalhos de Xu et al. (1990) e Valente (1999) utilizam
RNA na tentativa de obter resultados mais satisfatórios quanto à qualidade da fixação de objetos
com geometria complexa, de tornar o sistema mais rápido, e de prover ao sistema a capacidade
de aprendizado.
Xu et al. (1990) utilizam uma rede competitiva de Hopfield para a determinação de pontos
de contato para objetos 2D . O propósito da rede competitiva é encontrar uma fixação adequada
a partir da otimização de uma função que modela a estabilidade da fixação, o processo de
otimização da função é realizado pela rede de Hopfield. Os resultados apresentados por Xu et
al. (1990) mostram a capacidade de se determinar fixações estáveis utilizando redes de Hopfield.
Uma das desvantagens do método é a grande quantidade dos pontos de entrada da rede, fato que
implica em um elevado tempo de processamento da RNA.
Ainda utilizando RNAs, Valente (1999) propõe modificações para o algoritmo de Xu et
al. (1990). A principal modificação consiste na redução da quantidade de pontos necessárias
para representar a forma do objeto, apresentada como entrada de uma nova rede rede tipo
feedforward em substituição à rede de Hopfield. Também é estudado o comportamento de diferentes tipos e configurações das RNAs feedforward quanto à qualidade das respostas e quanto
ao tempo de treinamento. Os resultados obtidos mostram que as fixações determinadas com informações reduzidas da forma do objeto são satisfatórias, e que os melhores resultados, quanto
à qualidade da resposta, são obtidos com redes MLP. Porém, quanto ao tempo de treinamento,
os melhores resultados são obtidos com as redes RBF.
5.2 Teoria e equacionamento da fixação 2D
81
Os resultados obtidos por Xu et al. (1990) e Valente (1999) mostram a capacidade das RNAs
em determinar pontos de fixação para objetos a partir de informações 2D. Contudo, os tempos
de processamento, de etapas específicas de ambos os métodos, impedem sua utilização como
sistemas com resposta em tempo compatíveis com as aplicações.
Na tentativa de se obter melhores resultados na utilização de RNAs como solução do problema da fixação a partir de informações 2D do objeto, este Capítulo apresenta um algoritmo,
também baseado em RNAs, para a determinação de pontos de fixação. O algoritmo proposto é
baseado em modificações dos algoritmos de Xu et al. (1990) e Valente (1999). Outra característica de destaque do algoritmo proposto é o tempo reduzido de execução de todas as etapas de
cálculos, característica até então não apresentada pelos sistemas de fixação baseados em RNAs.
O algoritmo é implementado para determinação de fixação de objetos 2D por dois e três pontos
de contato.
Este Capítulo está organizando na seguinte forma: na Seção 5.2 é apresentado o equacionamento da fixação 2D de objetos por dois e três contatos, e na Seção 5.4 são apresentados os
quatro diferentes métodos de determinação de pontos de contato utilizados no algoritmo proposto. Por fim, conclusões e discussões sobre a proposta são apresentadas na Seção 5.5.
5.2 Teoria e equacionamento da fixação 2D
Em síntese, a fixação de um objeto consiste na aplicação de forças, produzidas pelo contato
entre os dedos de uma garra e a superfície do contato, capazes de manter o objeto em equilíbrio quando carregmentos externos são aplicados sobre o objeto ou não. Em uma fixação, as
forças aplicadas pelos dedos da garras, o equilíbrio estático do objeto e a capacidade de resistir
a carregamentos externos depende fundamentalmente: das posições em que os contatos são realizados; do tipo de contato; e do número de dedos em contato. Nesta Seção, o equacionamento
das forças de fixação 2D é realizado segundo as teorias apresentadas no Capítulo 3. Porém,
antes do equacionamento, é necessário definir algumas simplificações e hipóteses dos objetos e
das garras consideradas.
5 Fixação 2D de objetos desconhecidos
82
5.2.1 Simplificações e hipóteses
Quanto aos objetos, considera-se algumas hipóteses:
• O objeto apresenta densidade constante.
• O objeto é rígido.
• A sua superfície é uniforme.
• O coeficiente de atrito de Coulomb é constante por todo a sua superfície.
Quanto às garras, primeiramente é considerado que a ponta dos seus dedos dedos são capazes de se deformar, de maneira a manter uma superfície de contato, porém ainda considera-se
que todos os carregamentos aplicados no contato estão concentrados em um único ponto da
superfície do objeto.
O equacionamento desta Seção é realizado para dois e três pontos de contato. Tendo em
vista o número de pontos de contato reduzido, ambas as garras industriais e antropomórficas
são capazes de realizar a fixação.
Em relação às garras industriais, considera-se que: 1) as garras tipo pinça apresentam dois
dedos paralelos acionados por um único atuador. Desta forma, defini-se como centro de fixação
o ponto de fechamento da garra. O espaço de trabalho de cada dedo é composto por uma linha
definida como linha de ação la (vide Figura 5.2(a)). As linhas de ação de ambos os dedos
ocorrem segundo a mesma direção; 2) As garras tipo castanha apresentam dedos defasados em
120o , também acionados por um único atuador, sendo que o centro de fixação é o ponto em que
as direções de movimentação, ou linhas de ação, dos dedos se encontram no centro de fixação
ch (vide Figura 5.2(b)). O tipo de contato considerado é o contato macio, devido à capacidade
de deformação das pontas dos dedos.
Em relação as garras antropomórficas, considera-se que: 1) a garra antropomórfica é capaz
de realizar a postura de fixação tipo pinch (fixação de precisão por dois pontos opostos) e desta
forma realizar a fixação por dois pontos de contato; 2) a mão também é capaz de realizar a
postura de fixação tripod (fixação de precisão por três pontos de contato), de forma que seja
possível realizar a fixação pelos três pontos de contato determinados pelo planejador da fixação.
Desta forma, os pontos de contato são determinados independentemente de qual a ferramenta utilizada para a fixação, e para tornar o sistema ainda mais flexível, não são consideradas
as dimensões das garras, ou seja, é possível fixar objetos de qualquer ordem dimensional.
5.2 Teoria e equacionamento da fixação 2D
83
Para que seja realizada uma fixação, é necessário que todas as forças aplicadas sejam positivas, que a soma entre elas seja zero e que os momentos resultantes sejam também nulos.
As forças aplicadas em cada contato devem ser reescritas como carregamentos equivalentes no
sistema de coordenadas da fixação. Para tanto, os sistemas de coordenadas de cada ponto de
contato, do objeto e da fixação devem ser definidos.
5.2.2 Sistemas de coordenadas
Sistemas de coordenadas do objeto: Define-se como o sistema de coordenadas do objeto
aquele formado pelos eixos XO paralelo ao primeiro momento principal de inércia da forma
2D do objeto e ZO paralelo ao segundo momento principal de inércia, o centro do sistema de
coordenadas do objeto coincide com o centróide do objeto, o ponto co .
Figura 5.1: Definição do sistema de coordenadas do objeto.
5 Fixação 2D de objetos desconhecidos
84
Sistema de coordenadas da fixação: Para o caso de forças aplicadas em um objeto plano,
define-se o sistema de coordenadas de fixação como: seu centro coincide com o centro da
fixação, o ponto ch , e o eixo XH é alinhado com a semi-reta ch c1 , o eixo ZH forma com o eixo
XH o plano XH ZH no qual a forma do objeto é definida, o eixo YH é obtido pelo produto vetorial
entre ZH e XH .
(a)
(b)
Figura 5.2: Definição do sistema de coordenadas da fixação. A Figura 5.2(a) mostra o sistema
de coordenadas da fixação por dois contato, e a Figura 5.2(b) mostra o sistema para a fixação
por trê contatos.
5.2 Teoria e equacionamento da fixação 2D
85
Sistema de coordenadas do contato: Dado um ponto de contato ci (i =1,2 para dois contatos,
e i =1,2,3 para três contatos), define-se o sistema de coordenadas do contato com centro em ci
e eixo Zi alinhado com a direção normal à superfície do objeto. Para a fixação 2D, o plano de
contato contém os eixos Zi e Xi . As Figuras 5.3(a) e 5.3(b) mostram os sistemas de coordenadass
para os contatos na fixação por dois e três pontos, respectivamente. Nas figuras, θi é o ângulo
entre a linha de ação lai do dedo da garra e o eixo Zi segundo a direção normal ao ponto de
contato.
(a)
(b)
Figura 5.3: Definição do sistema de coordenadas dos contatos para fixação por dois pontos de
contato (Figura 5.3(a)), e para fixação por três pontos de contato (Figura 5.3(b)).
5 Fixação 2D de objetos desconhecidos
86
5.2.3 Equacionamento da fixação 2D por 2 pontos de contato
Para que a fixação seja estável, é necessário que as forças aplicadas pelos dedos da garra
sejam capazes de equilibrar as forças externas exercidas sobre o objeto, tais como a força da
gravidade e distúrbios externos. O equacionamento é realizado no sistema de coordenadas da
fixação e, desta maneira, as forças externas calculadas em outros sistemas de cordenadas devem
ser transformadas para o sistema de fixação.
No Capítulo 3 foi mostrado que o mapa da fixação G é capaz de transformar os carregamentos dos contatos (forças e momentos), aplicadas nos pontos de contato, em carregamentos equivalentes descritos no sistema de coordenadas da fixação. A transfomação é dada pela seguinte
equação:
F h = G · F ci
(5.1)
em que F ci é o vetor formado pelas forças e momentos aplicados nos pontos de contato. O
modelo de contato considerado é o contato macio, que define as forças de contato como:
F ci = [ f1ci f2ci f3ci τci6 ],
(5.2)
sendo que f1ci e f2ci são as forças de atrito nas direções tangenciais, f3ci é a força normal, e τ6ci é o
momento de atrito também na direção normal. As forças de atrito e o momento de atrito devem
estar dentro do limite de escorregamento, ou cone de atrito, para que seja possível executar a
fixação.
A matriz G, definida como o mapa da fixação, é determinada por:
h RT
0
ci
G=
· B,
h
r̂ci ·hci R hci R
em que B é a base do tipo contato considerado:
⎡
1 0
⎢
⎢ 0 1
⎢
⎢
⎢ 0 0
B=⎢
⎢
⎢ 0 0
⎢
⎢ 0 0
⎣
0 0
0 0
(5.3)
⎤
⎥
0 0 ⎥
⎥
⎥
1 0 ⎥
⎥,
⎥
0 0 ⎥
⎥
0 0 ⎥
⎦
0 1
(5.4)
e hci R é a matriz de transformação homogênia do sistema de coordenadas da fixação H para o
sistema de coordenadas do contato Ci. A Figura 5.4 mostra uma fixação qualquer por garra de
dois dedos. Tem-se que βi é o ângulo entre a direção do eixo Zi e a direção do eixo Zo .
5.2 Teoria e equacionamento da fixação 2D
87
Figura 5.4: Definição do sistema de coordenadas dos contatos c1 e c2 .
Substituindo os termos da Equação 5.3 obtém-se:
⎡
cos(β1 )
0
cos(β1 )
0
⎢
⎢
0
1
0
0
⎢
⎢
⎢ cos(β1 )
0
cos(β1 )
0
Gc1 = ⎢
⎢
0
−l
0
−sen(β1 )
⎢
⎢
⎢ l · cos(β ) 0 −l · cos(β )
0
1
1
⎣
0
0
0
cos(β1 )
e
⎡
cos(β2 )
0
cos(β2 )
0
⎢
⎢
0
1
0
0
⎢
⎢
⎢ cos(β2 )
0
cos(β2 )
0
Gc2 = ⎢
⎢
0
−l
0
−sen(β1 )
⎢
⎢
⎢ −l · cos(β ) 0 l · cos(β )
0
2
2
⎣
0
0
0
cos(β2 )
⎤
⎥
⎥
⎥
⎥
⎥
⎥
⎥
⎥
⎥
⎥
⎦
(5.5)
⎤
⎥
⎥
⎥
⎥
⎥
⎥,
⎥
⎥
⎥
⎥
⎦
(5.6)
em que l e −l são as distâncias entre os pontos de contato c1 e c2 , respectivamente, e o centro
da fixação ch , medidos no sistema de coordenadas da fixação.
Tranformando as forças de contato descritas no sistema de coordenadas dos contatos para
o sistema de referência da fixação obtém-se:
F h = Gc1 · f c1 + Gc2 · f c2
(5.7)
5 Fixação 2D de objetos desconhecidos
88
ou na forma expandida:
⎡
f1c1 · cos(β1 ) − f3c1 · sen(β1 ) + f1c2 · cos(β2 ) − f3c2 · sen(β1 )
⎢
⎢
f2c1 + f2c2
⎢
⎢
⎢
f1c1 · sen(β1 ) + f3c1 · cos(β1 ) + f1c2 · sen(β2 ) + f3c2 · cos(β1 )
h
F =⎢
⎢
f2c1 · l − τ6c1 · sen(β1 ) + f2c2 · l − τ6c2 · sen(β2 )
⎢
⎢
⎢ l · f c1 · cos(β ) − l · f c1 · sen(β ) + l · f c2 · cos(β ) − l · f c2 · sen(β )
1
1
2
1
⎣
1
3
1
3
c1
c2
τ6 · cos(β1 ) + τ6 · cos(β2 )
⎤
⎥
⎥
⎥
⎥
⎥
⎥.
⎥
⎥
⎥
⎥
⎦
(5.8)
As forças de contato escritas no sistema de coordenadas da fixação devem ser capazes de
equilibrar forças externas, também escritas no sistema de coordenadas da fixação.
Se as forças externas aplicadas no objeto, expressas no sistema de coordenadas de fixação,
são:
T
Fexh = Fex1h Fex2h Fex3h τ ex4h τ ex5h τ ex6h ,
(5.9)
então, para que aconteça o equilíbrio estático do obejto, a seguinte relação deve ser satisfeita
Fexh + F h = 0
(5.10)
−Fexh = F h
(5.11)
ou:
ou ainda, na forma expandida:
⎡
⎤ ⎡
−Fex1h
f1c1 · cos(β1 ) − f3c1 · sen(β1 ) + f1c2 · cos(β2 ) − f3c2 · sen(β1 )
⎢
⎥ ⎢
⎢ −Fexh ⎥ ⎢
f2c1 + f2c2
2 ⎥
⎢
⎢
⎢
⎥
⎢
⎢ −Fex3h ⎥ ⎢
f1c1 · sen(β1 ) + f3c1 · cos(β1 ) + f1c2 · sen(β2 ) + f3c2 · cos(β1 )
⎢
⎥=⎢
⎢
⎥ ⎢
f2c1 · l − τ6c1 · sen(β1 ) + f2c2 · l − τ6c2 · sen(β2 )
⎢ −τ ex4h ⎥ ⎢
⎢
⎥ ⎢
⎢ −τ exh ⎥ ⎢ l · f c1 · cos(β ) − l · f c1 · sen(β ) + l · f c2 · cos(β ) − l · f c2 · sen(β )
1
1
2
1
⎣
⎣
1
3
1
3
5 ⎦
h
c1
c2
−τ ex6
τ6 · cos(β1 ) + τ6 · cos(β2 )
⎤
⎥
⎥
⎥
⎥
⎥
⎥.
⎥
⎥
⎥
⎥
⎦
(5.12)
O sistema acima apresenta as seis equações de equilíbrio do objeto quando o carregamento
da fixação é realizado por dois pontos de contato e equilibra carregamentos externos aplicados
sobre o objeto.
5.2 Teoria e equacionamento da fixação 2D
89
5.2.4 Equacionamento da fixação 2D por 3 pontos de contato
A determinação dos pontos de contato para fixação estável de objetos por três pontos de
contato depende, além da forma do objeto, das características construtivas do tipo de garra. Para
as garras de três dedos, pode-se considerar que existem fundamentalmente duas possíveis variações, de acordo com a capacidade de movimentação lateral dos dedos: aquelas com capacidade
de movimentação lateral e aquelas sem capacidade de movimentação lateral. A movimentação
lateral dos dedos é chamada de movimento de adução e abdução.
As garras com capacidade de adução e abdução, quando comparadas àquelas sem a mesma
capacidade, possuem um espaço de trabalho mais amplo e podem alcançar os mesmos, segundo
diferentes orientações. Por outro lado, uma garra que não apresenta movimentos de adução e
abdução mantém constante a posição relativa entre os dedos. Tal simplificação limita a capacidade de fixação destas garras.
É possível considerar que uma garra com movimentos laterais é capaz de realizar as mesmas fixações de uma garra sem estes movimentos, e ainda, para certos casos, é possível alinhar
a linha de ação de cada dedo com a direção normal ao contato. Desta forma, uma fixação adequada para garras sem movimentos de adução e abdução, também será para aquelas com a capacidade de movimentação. Para simplificar o estudo da fixação por garras de três dedos, neste
trabalho são consideradas apenas as garras sem o movimento lateral dos dedos. Recomenda-se
para os trabalhos futuros investigar algoritmos de seleção de pontos de contato para as garras
de três dedos com capacidade de movimentação lateral.
Uma vez definida as características das garras, as demais considerações e hipóteses adotadas são as mesmas para o caso de fixação por 2 pontos de contato. A Figura 5.5 mostra os
sistemas de coordenadas dos contatos e o sistema de coordenadas da fixação. O centro da fixação é determinado através do algoritmo apresentado no Apêndice E, sendo o eixo Xh alinhado
com o segmento de reta que liga o centro de fixação ch com o primeiro ponto de contato c1 , o
eixo Yh é difinido na direção normal ao plano análizado e o eixo Zh é definido pelas direções de
Xh e Yh .
Uma vez determinados os sistemas de coordenadas dos contatos e da fixação, a linha de
ação do contato c1 , representada por la1 é definida pelo segmento de reta entre os ponto ch e c1 ,
e da mesma forma obtém-se la2 e la3 . O comprimento dos segmentos de retas ch c1 , ch c2 e ch c3
são definidos respectivamente por l1 , l2 e l3 .
5 Fixação 2D de objetos desconhecidos
90
Figura 5.5: Definição do sistema de coordenadas da fixação, linha de ação e direção normal aos
pontos de fixação para uma garra de três dedos sem adução abdução.
As forças necessárias para manter o equilíbrio do objeto durante a fixação quando forças e
momentos externos são aplicados são expressas pela seginte relação:
F h = Gc1 · f c1 + Gc2 · f c2 + Gc3 · f c3 = −Fexh ,
e na forma expandida:
⎡
⎢
⎢
⎢
⎢
⎢
⎢
⎢
⎢
⎢
⎢
⎣
−Fex1h
⎤
⎡
f1c1 c(β1 ) − f3c1 s(β1 )
⎥ ⎢
⎢
−Fex2h ⎥
f2c1
⎥ ⎢
⎥ ⎢
c1
c1
⎢
−Fex3h ⎥
⎥ = ⎢ f1 s(β1 ) + f3 c(β1 )
⎥ ⎢
6 s(β )
−τ ex4h ⎥ ⎢
−τc1
1
⎥ ⎢
⎢ c1
c1
−τ ex5h ⎥
⎦ ⎣ f1 l1 c(β1 ) − f3 l1 s(β1 )
6 c(β )
−τ ex6h
f2c1 l1 + τc1
1
⎤
⎥
⎥
⎥
⎥
⎥
⎥+
⎥
⎥
⎥
⎥
⎦
(5.13)
5.3 Verificação da condição force-closure e avaliação da fixação
⎡
f1c2 c(β2 ) − f3c2 s(β2 )
⎢
⎢
f2c2
⎢
⎢
⎢
f1c2 s(β2 ) + f3c2 c(β2 )
⎢
⎢
6 s(β )
f2c2 l2 c(120o ) − τc2
⎢
2
⎢
⎢ f c2 l (c(β )s(120o ) − s(β )c(120o )) − f c2 (l 2 s(β )s(120o ) + s(β )c(120o ))
2
2
2
2
2
⎣ 1 2
3
c2
o
6
f2 l2 c(120 ) + τc2 c(β2 )
⎡
91
⎤
⎥
⎥
⎥
⎥
⎥
⎥
⎥
⎥
⎥
⎥
⎦
f1c3 c(β3 ) − f3c3 s(β3 )
⎢
⎢
f2c3
⎢
⎢
1 s(β ) + f 3 c(β )
⎢
fc3
3
3
c3
⎢
+⎢
2
o
6
fc3 l3 c(240 ) − τc3 s(β3 )
⎢
⎢
⎢ f 1 l (c(β )s(240o ) − s(β )c(240o )) − f 3 (l 2 s(β )s(240o ) + s(β )c(240o ))
3
3
3
3
⎣ c3 3
c3 3
2
o
6
fc3 l3 c(240 ) + τc3 c(β3 )
⎤
⎥
⎥
⎥
⎥
⎥
⎥ , (5.14)
⎥
⎥
⎥
⎥
⎦
em que c(β ) e s(β ) são respectivamente o cosseno e o seno do ângulo β .
O sistema acima apresenta as seis equações de equilíbrio do objeto quando três carregamentos de contato e carregamentos externos são aplicadas no objeto.
5.3 Verificação da condição force-closure e avaliação da fixação
Na Seção 3.3 desta Dissertação, foi discutida a dificulade de se resolver as equações de
equilíbrio estático de um objeto durante uma tarefa de fixação. O equacionamento da fixação
2D, tanto para dois quanto para três pontos de contato, é mostrado nas Seções 5.2.3 e 5.2.4. São
apresentadas as seis equações de equilíbrio estático do objeto, que relacionam os carregamentos
de cada um dos contatos, que geram o carregamento da fixação, e a geometria da fixação1 com
os carregamentos externos. Vale lembrar que um carregamento externo é formado tanto pelo
carregamento da tarefa, como por distúrbios.
Para o caso mais simples da fixação 2D, ou seja, aquela realizada por dois pontos de contato, mesmo se a geometria da fixação for conhecida, não é possível resolver as equações de
equilíbrio e encontrar os carregamentos dos contatos, pois o sistema formado é linearmente dependente. Logo, para o caso em que se deseja determinar a geometria da fixação que promove
1A
geometria da fixação é compreendida como a disposição dos pontos de contato sobre o objeto.
5 Fixação 2D de objetos desconhecidos
92
para a fixação a maior capacidade de equilibrar esforços externos, deve-se recorrer a teorias e
técnicas avançadas a fim de transpor as dificuldades de resolução do problema.
Na Seção 3.3.4, foi apresentada a definição da envolvente convexa de um carregamento
da fixação. Recordando, a envolvente convexa representa os possíveis carregamento que uma
geometria de fixação pode apresentar, e como conseqüência, a envolvente convexa também
apresenta o espaço dos carregamentos externos que a fixação pode equilibrar. Apesar da envolvente convexa não determinar os carregamentos em cada um dos pontos de contato necessários
para manter o objeto em equilíbrio, é possível avaliar a capacidade de uma fixação.
Se a envolvente convexa de uma fixação contiver a origem do sistema em que a mesma
é definida, então a fixação relacionada a ela é capaz de se manter em equilíbrio quando não
existem carregamentos externos sobre o objeto. Esta é uma importante característica da fixação,
e quando uma fixação apresenta-a, diz-se que esta fixação é force-closure.
Para o caso da fixação 2D, existem duas possibilidades de construção da envolvente convexa. Ambos dependem fundamentalmente da consideração dos carregamentos com dimensão
três ou seis. No primeiro caso, considera-se que as componentes lineares dos carregamentos
ocorrem somente no plano xy do objeto, e a componente torcional do carregamento ocorre apenas na direção z, e então, as equações de equilíbrio são reduzidas de seis para três, porém ainda
sem solução analítica.
Quando os carregamentos com apenas três dimensões são considerados, a envolvente convexa apresenta também dimensão três, sendo duas dimensões para as componentes lineares dos
carregamentos, e uma dimensão para a componente torcional. Se a envolvente convexa contiver
a sua origem, então a fixação é force-closure.
Para o caso em que se considera todo o possível espaço dos carregamentos, a envolvente
convexa tem dimensão seis, assim como os carregamentos, porém é possível dividí-la em duas
envolventes distintas para melhor vizualização e análise. Nesta divisão, uma envolvente convexa representa as componentes lineares do carregamento da fixação, e a outra representa as
componentes torcionais. Neste caso, se cada uma das envolventes contiver a sua própria origem,
então a fixação é force-closure e, caso contrário, se alguma das duas envolventes não contiver a
sua origem, a fixação não é force-closure.
Para os casos citados, deseja-se saber, dentre uma série de fixações force-closure para um
objeto, qual é a melhor, ou seja, qual é aquela que melhor resiste aos carregamentos externos. Este é o papel desempenhado por um planejador de fixação, ou seja, o planejador deve
determinar para um objeto qual é a melhor fixação dentre todas as possibilidades.
5.4 Métodos de determinação dos pontos de contato
93
Muito autores utilizam funções custo que relacionam a geometria da fixação, e alguns
critérios específicos para cada aplicação, para determinar a fixação de melhor desempenho por
meio da seleção da fixação que apresentar a melhor função custo. Esta estratégia permite selecionar a fixação que apresenta a melhor função custo para a aplicação específica, porém a
condição force-closure pode não ser atingida.
A fim de normalizar e padronizar o cálculo da qualidade da fixação, Ferrari e Canny (1992)
propõem métricas para se determinar a qualidade de uma fixação force-closure. Segundo Ferrari e Canny (1992), a qualidade da fixação é medida pela menor distância entre o centro da
envolvente convexa e a sua origem. Esta métrica pode ser aplicada para os dois casos discutidos
nesta Seção. Contudo, vale ressaltar que em alguns casos, uma função custo pode ser adequada
para se determinar uma fixação force-closure de qualidade (NGUYEN, 1988).
5.4 Métodos de determinação dos pontos de contato
As Equações 5.12 e 5.14 relacionam os carregamentos externos aplicados sobre um objeto com as características geométricas da fixação e com as forças aplicadas em cada contato,
respectivamente para fixação com garras de dois e três dedos. Nos dois casos, o número de
incógnitas é maior que o número de equações, e portanto, não existe uma única solução para o
equilíbrio estático do objeto.
Ainda quanto às equações de equilíbrio, caso seja determinada a geometria da fixação por
um método, a determinação das forças em cada contato continua sendo impossível, pois mesmo
neste caso, ainda há mais incógnitas do que equações. Desta forma, a verificação da capacidade
da fixação de resistir a carregamentos externos deve ser realizada pela análise da propriedade
force-closure da fixação. Portanto, a solução das equações de equiíbrio estático consiste em
encontrar pontos de contato, cujas características geométricas proporcionem uma fixação forceclosure.
Existem inúmeros métodos desenvolvidos para se determinar pontos adequados de fixação,
dentre eles, interessa-se especialmente por aqueles baseados em RNAs. A determinação de fixações utilizando RNAs envolve outros métodos, tal como o método de determinação da fixação
por busca heurística. Neste caso, a busca heurística é utilizada a fim de se determinar pontos de
fixação para os padrões de treinamento da RNA.
Nesta Seção, são apresentados os métodos de determinação de pontos de contato por busca
heurística, por otimização com redes de Hopfield, por redes feedforward tipo RBF, e ainda é
apresentada uma nova configuração de RNAs para a determinação da fixação: a combinação
5 Fixação 2D de objetos desconhecidos
94
das redes RBF e Hopfield, sugerida por Xu et al. (1990). Estes métodos são descritos de forma
detalhada. Resultados da apliacação dos métodos com imagens reais são apresentados juntamente com os tempos de processamento da etapa de determinação da fixação, e ainda, uma
base de dados de 8100 figuras, obtidas de modelos virtuais (SAXENA, 2006), é utilizada para
simular e avaliar o desempenho de cada método.
5.4.1 Fixação 2D por busca heurística
A busca heurística de uma fixação adequada2 consiste na avaliação de todas as possíveis fixações (ou um conjunto previamente selecionado de fixações) para um objeto. O mecanismo de
busca consiste na avaliação de cada fixação segundo critérios pré-determinados. Estes critérios
envolvem algumas características definidas pelas relações geométricas dos pontos de contato
como as direções normais aos contatos, pelos ângulos de ponta e pela posição relativa entre os
pontos de contato. A fixação também pode ser avaliada quanto à configuração da garra para
fixar o objeto nos pontos avaliados, nesta caso, também pode ser considerado a executabilidade
da fixação, ou seja, se a garra é capaz de atingir os pontos de fixação, e também quanto as forças
e os momentos necessários para controlar as juntas dos dedos da garra durante a fixação. Contudo, pelas hipóteses consideradas no início do Capítulo, as restrições de fixação estabelecidas
pelas dimensões das garras em relação aos objetos, e pela executabilidade da fixação, que pode
não ser realizada pela ocorrência de colisões, não são consideradas.
Desta maneira, na busca heurística, notas são atribuídas para cada combinação de fixação
escolhida randomicamente, ou segundo uma ordem qualquer pré-determinada. O resultado
final, isto é, a fixação escolhida, é aquela que atingir nota igual a um determinado limiar, ou é
aquela que apresentar a menor nota dentre todas as combinações. Também é possível que não
haja uma fixação que atenda as exigências estabelecidas ou a condição force-closure3 , ou que
não atinja um valor abaixo do limiar estabelecido, nestes casos, considera-se que não é possível
determinar uma fixação satisfatória para o objeto.
Para cada diferente caso de fixação, critérios específicos de avaliação dependentes das características dos objetos e das características das garras devem ser considerados. Para os casos
aqui estudados, os critérios estabelecidos estão relacionados à geometria da fixação, pois segundo Nguyen (1988), para os casos de fixação por dois e três pontos de contato, é possível
relacionar a geometria da fixação com a propriedade force-closure. Outra possibilidade de determinação da qualidade da fixação é a utilização das medidas de qualidade Q1 e Q∞ descritas
2 Uma
fixação adequada é aquela que apresenta a propriedade force-closure.
alguns casos específicos, pode-se definir critérios capazes de definir uma fixação adequada, porém não
force-closure.
3 Em
5.4 Métodos de determinação dos pontos de contato
95
no Capítulo 3, porém, as medidas não consideram as características geométricas expressas em
uma função custo específica.
Para a fixação por dois pontos de contato, quando se considera o modelo de contato macio,
a fixação é force-closure quando os pontos de contato estão em faces opostas do objeto, e a
direção da linha de ação em cada contato está dentro do cone de atrito. Para fixação por três
pontos de contato, basta que a direção da linhas de ação de cada contato esteja dentro do cone
de atrito.
O mecanismo de busca descrito é o mesmo tanto para dois quanto para três pontos de
contato, sendo que a única diferença é a função custo estabelecida para cada caso.
Garras de dois dedos
No caso da fixação por garras de dois dedos, o algoritmo de busca avalia quantitativamente
cada possível par de pontos, sendo que os pontos são aqueles resultantes da aproximação poligonal, que é aplicada para reduzir a quantidade de pontos e conseqüentemente, o esforço
computacional dos cálculos da busca.
A nota de cada fixação é calculada segundo a expressão matemática:
fcusto = A · Σθi + B · d(co , la ) +C · abs(αI − αla ),
(5.15)
em que θi é o ângulo entre a linha de ação la , definida pela semi-reta ligando os pontos de
contato c1 e c2 , e a direção normal ao ponto de contato ci ; d(co , la ) é a distância entre o
centróide do objeto e a linha de ação; e abs(αI − αla ) é a diferença angular absoluta entre a
direção do momento principal de inércia αI , e a direção da linha de ação αla .
Os parâmetros A, B, e C representam a contribuição de cada termo na nota final que estima
a qualidade da fixação. Quanto menor o valor de fcusto , melhor é a fixação. A definição dos
valores de A, B, e C deve ser realizada de acordo com a importância do termo que cada valor
está ponderando.
Dentre os termos da Equação 5.15, o de maior importância é o termo referente a diferença
entre linha de ação e normal ao ponto, o termo Σθi . Quando a diferença angular é elevada, as
forças de atrito necessárias para equilibrar as forças de contato são elevadas, e quando forças
externas são aplicadas, o equilíbrio estático pode ser facilmente desfeito. Segundo Nguyen
(1988), se a linha de ação estiver dentro dos cones de atrito de cada um dos pontos de contato, a
fixação é force-closure, e sua qualidade está relacionada com a diferença angular expressa pelo
termo Σθi . Este termo está relacionado com a estabilidade de Lagrange da fixação.
5 Fixação 2D de objetos desconhecidos
96
Figura 5.6: Definição dos parâmetros para cálculo da função custo para fixação por dois pontos
de contato.
O termo de segunda maior importância é a distância entre a linha de ação e o centróide
do objeto, o termo d(co , la ). Esta distância quando elevada implica na influência da força de
gravidade na estabilidade da fixação. Estas forças geram carregamentos na forma de momentos
quando a distância entre a linha de ação e o centróide é alta. Não há limites superiores para
d(co , la ) que podem provocar a perda da propriedade force-closure, porém, quanto maior o
termo menos estável é a fixação.
Por último, porém ainda importante, a diferença angular entre a direção do segundo momento principal de inércia e a linha de ação, que influencia diretamente na estabilidade da
fixação (SANZ et al., 2005).
Os parâmetros adotados foram A = 100, B = 100, C = 500. Não foram utilizados métodos
determinísticos na adoção dos parâmetros, que podem variar dependendo do caso e da implementação. Por exemplo, a escala da imagem do objeto e a distância entre o objeto e a câmera
pode alterar o significado do parâmetro C que pondera a distância entre o centróide do objeto e
a linha de ação da fixação.
O algoritmo proposto foi implementado e simulado no computador de testes. As simulações
foram realizadas com objetos comuns encontrados em ambientes fabrís, domésticos, escritórios,
entre outros. A Figura 5.7 mostra fotos de objetos do cotidiano, com 640 × 480 pixels de
resolução, e a respectiva resposta obtida. Pode-se observar que com a busca heurística é possível
encontrar dois pontos de fixação satisfatórios para todos os objetos.
5.4 Métodos de determinação dos pontos de contato
97
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figura 5.7: Resultados do algoritmo de busca heurística para dois pontos de fixação para objetos
do cotidiano. As linhas vermelhas mostram a direção de aproximação dos dedos da garra para
o momento da fixação.
5 Fixação 2D de objetos desconhecidos
98
A Tabela 5.1 apresenta os tempos de processamento da execução da busca heurística para
cada um dos objetos mostrados na Figura 5.7. Na Tabela 5.1 não é mostrado o tempo do
processamento da imagem e da aproximação poligonal.
Tabela 5.1: Tabela do tempo de execução do algoritmo de busca heurística para fixação 2D por
dois pontos de contato dos objetos da Figura 5.7.
Figura 5.7(a)
Figura 5.7(b)
Figura 5.7(c)
Figura 5.7(d)
Figura 5.7(e)
Figura 5.7(f)
Figura 5.7(g)
Figura 5.7(h)
Figura 5.7(i)
Figura 5.7(j)
Figura 5.7(k)
Figura 5.7(l)
Busca heurística [s]
0,2625
0,2160
0,2335
0,2032
0,2521
0,2589
0,2598
0,2505
0,1300
0,2892
0,2536
0,2610
Pode-se verificar que para todos os objetos utilizados nesta simulação é possível encontrar
uma fixação force-closure. O tempo de processamento da etapa de busca heurística foi reduzido
devido a redução das combinações avaliadas quanto à posição em relação ao momento principal
de inércia. Os pontos são divididos em dois grupos separados pela direção do momento principal de inércia do objeto, e a avaliação foi realizada apenas para os pares contendo um elemento
de cada grupo. Em outras simulações, cujos resultados não são mostrados, foi verificado que
a não divisão em grupos torna o algoritmo cerca de 10 vezes mais lento, sem melhoria alguma
nos resultados.
Nos testes com as 8100 imagens da base de dados, foi possível determinar uma fixação
satisfatória por dois pontos de contato para 100% dos objetos.
Garras de três dedos
Para as garras de três dedos, todos os conjuntos de três de pontos devem ser avaliados, e
neste caso, não é possível dividir os pontos em grupos de candidatos. O mesmo procedimento
de processamento de imagens e aproximação da forma do objeto por um polígono de 100 lados
é adotado, sendo que os pontos candidatos são formados pelos 100 pontos selecionados na
aproximação poligonal. Considerando então o conjunto de pontos candidatos, cada combinação
possível de três pontos é avaliada sengundo uma função custo que leva em consideração:
5.4 Métodos de determinação dos pontos de contato
99
• A distância entre o centróide do objeto e o centro de fixação. O centro de fixação para
três pontos de contato é definido no Apêndice E.
• A diferença angular entre a linha de ação e a normal ao ponto de fixação.
Desta maneira, a função custo é definida como:
fcusto = A · Σθi + B · d(co , ch ),
(5.16)
em que θi é o ângulo entre a linha de ação de cada dedo l1 , l2 e l3 , definida pela semi-reta
ligando os pontos de contato c1 , c2 , c3 e o centro da fixação ch , e d(co , ch ) é a distância entre o
centróide do objeto e o centro de fixação.
Figura 5.8: Definição dos parâmetros para cálculo da função custo para fixação por três dedos.
Similar ao algoritmo de fixação por dois dedos, a estratégia de fixação por três dedos adotada leva em consideração a distância entre o centróide e o centro de fixação e a diferença
angular entre as linhas de ação e a direção normal ao ponto de contato. A posição relativa entre
a direção do momento principal de inércia e dos pontos de fixação não é considerada.
Os parâmetros A e B da Equação 5.16 representam a contribuíção de cada termo na nota
final, que estima a qualidade da fixação. Quanto menor a nota melhor é a fixação. A definição
5 Fixação 2D de objetos desconhecidos
100
dos valores de A e B deve ser realizada de acordo com a importância do termo que o mesmo
está multiplicando. Para este caso, se a linha de ação das forças estiver fora do cone de atrito,
a fixação é instável, portanto, o parâmetro A é o mais significativo na busca de uma fixação
force-closure. O termo ponderado pelo parâmetro B é responsável por penalizar as fixações nas
extermidades do objeto, sendo de relativa importância, porém a resolução da imagem, e a distância entre câmera e objeto na aquisição, devem ser levados em consideração na determinação
do parâmetro B.
O método de busca heurística para garras de três dedos foi implementado e simulações
com imagens reais foram realizadas no computador de testes. As Figuras 5.9 e 5.10 mostram os
resultados obtidos, e a partir delas pode-se observar que o algoritmo de busca heurística também
é capaz de determinar três pontos de fixação para todos os objetos de teste.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
Figura 5.9: Resultados do algoritmo de busca heurística para três pontos de fixação para objetos
do cotidiano. As linhas vermelhas mostram a direção de aproximação dos dedos da garra para
o momento da fixação (parte 1 de 2).
5.4 Métodos de determinação dos pontos de contato
(a)
(b)
101
(c)
Figura 5.10: Resultados do algoritmo de busca heurística para três pontos de fixação para objetos do cotidiano. As linhas vermelhas mostram a direção de aproximação dos dedos da garra
para o momento da fixação (parte 2 de 2).
Os tempos de determinação de três pontos de contato para cada um dos objetos mostrados
nas imagens das Figuras 5.9 e 5.10 são mostrados na Tabela 5.2.
Tabela 5.2: Tabela do tempo de execução do algoritmo de busca heurística para fixação 2D por
garras de três dedos dos objetos das Figuras 5.9 e 5.10.
Figura 5.9(a)
Figura 5.9(b)
Figura 5.9(c)
Figura 5.9(d)
Figura 5.9(e)
Figura 5.9(f)
Figura 5.9(g)
Figura 5.9(h)
Figura 5.9(i)
Figura 5.10(a)
Figura 5.10(b)
Figura 5.10(c)
Busca heurística [s]
12,5083
10,7642
12,1357
10,4243
12,6787
11,5055
10,2894
8,03370
10,0774
13,4464
9,66960
9,92430
Os tempos observados são altos quando comparados com os tempos da busca heurística
para garras de dois dedos. Esta diferença é proveniente do cálculo do centro da fixação para
cada combinação, e é principalmente proveniente da avaliação de todas as combinações, ao
contrário do caso anterior, em que os pontos são divididos em dois grupos de candidatos e a
avaliação é realizada apenas para os pares formados por elementos de cada um dos grupos.
O método de determinação de três pontos de contato por busca heurística também foi testado com os 8100 objetos da base de dados. Foi possível determinar uma fixação force-closure
para 8035 objetos (99,2% dos objetos).
5 Fixação 2D de objetos desconhecidos
102
5.4.2 Fixação 2D por otimização utilizando redes competitivas de Hopfield
O mecanismo de busca heurística avalia todas as possíveis combinações de fixação entre os
pontos da aproximação poligonal, porém, não há um mecanismo de busca, ou seja, é necessário
avaliar todas as combinações em uma ordem qualquer, e selecionar a que apresentar a melhor
nota, ou até que um limiar seja atingido. O mecanismo de busca pela melhor fixação pode
ser otimizado de diversas maneiras, sendo que uma delas é utilizar como ferramenta de busca
uma rede competitiva de Hopfield (XU et al., 1990). A rede de Hopfield é capaz de encontrar
mínimos locais de uma função qualquer em poucas iterações, sendo que não é necessário avaliar
todo o domínio da função.
A rede competitiva para a fixação 2D implemetada é similar àquela da aproximação poligonal4 . Uma matriz neural V é formada por m colunas que representam os pontos de contato,
sendo que para a fixação por dois pontos de contato m = 2, e para fixação por três pontos de
contato, m = 3. Cada uma das m colunas é formada pelos n pontos da aproximação poligonal.
A regra de aprendizado, os pesos da conexão entre os neurônios das colunas vizinhas de V , é
calculada segundo a mesma função custo da busca heurística, ou seja, as Equações 5.15 e 5.16,
respectivamente para dois e três pontos de contato.
Uma vez determinada a matriz neural V e a regra de aprendizado, é necessário inicializar
a rede. A rede é inicializada da seguinte forma: para cada coluna um único neurônio é ativado, este neurônio ativado representa o ponto selecionado para um contato, e desta forma,
um neurônio é ativado para cada coluna, representando o ponto selecionado para um contato, e
desta forma, os neurônios ativados em cada uma das colunas formam a fixação. Os neurônios
ativados na inicialização da rede estão igualmente espaçados.
O mecanismo de execução da rede consiste em um processo iterativo, e em cada etapa da
iteração uma coluna de V é avaliada, para cada neurônio da coluna avaliada é determinado o
peso da conexão com os neurônios das colunas vizinhas. O neurônio que apresentar o menor
valor de ativação dentre todos aqueles de uma mesma coluna é ativado, e os demais neurônios
da mesma coluna são desativados. A próxima coluna é então avaliada dando continuidade
ao proceso iterativo, que termina quando não houver modificações na matriz V . Quando não
há mais mudanças dos neurônios ativados em toda a rede, diz-se que a rede convergiu. Os
neurônios ativados em cada uma das m colunas no estado de convergência da rede representam
os melhores pontos de contato.
O algoritmo foi implementado no computador de testes para se determinar pontos de fixação
4 Vide
Xu et al. (1990), que demonstram a convergência da rede de Hopfield para fixação 2D e 3D.
5.4 Métodos de determinação dos pontos de contato
103
por dois e três pontos de contato, e os resultados obtidos são mostrados a seguir.
Garras de dois dedos
As imagens das Figuras 5.11 e 5.12 mostram os resultados obtidos com o método de determinação por otimização com redes de Hopfield para fixação por dois contatos. Em alguns
casos não foi possível determinar pontos de contato adequados, nestes casos apresenta-se um
"x" vermelho no centro da imagem.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
Figura 5.11: Resultados do algoritmo de otimização com redes de Hopfield para determinação
de dois pontos de fixação para objetos do cotidiano. As linhas vermelhas mostram a direção de
aproximação dos dedos da garra para o momento da fixação (parte 1 de 2).
5 Fixação 2D de objetos desconhecidos
104
(a)
(b)
(c)
Figura 5.12: Resultados do algoritmo de otimização com redes de Hopfield para determinação
de dois pontos de fixação para objetos do cotidiano. As linhas vermelhas mostram a direção de
aproximação dos dedos da garra para o momento da fixação (parte 2 de 2).
A Tabela 5.3 apresenta os tempos de processamento da execução da rede de Hopfield para
cada um dos objetos mostrados nas Figuras 5.11 e 5.12. Na Tabela 5.2 não é mostrado o tempo
do processamento da imagem e da aproximação poligonal. Os tempos de execução da rede
de Hopfield para determinação de dois pontos de fixação variam de objeto para objeto. Este
comportamento deve-se a complexidade da forma deste objeto, fazendo com que formas mais
complexas demandem um maior tempo de execução da rede.
Em comparação com rede de Hopfield com a busca Heurística, pode-se observar que não é
possível determinar uma fixação satisfatória para vários objetos de teste utilizando o primeiro
método, porém o seu tempo de execução é significativamente menor.
Além disso, nas simulações com os objetos da base de dados, foi possível determinar uma
fixação force-closure para apenas 5086 objetos (62,8% do total de objetos).
Tabela 5.3: Tabela do tempo da fixação 2D por Hopfield para os objetos das Figuras 5.11 e 5.12.
Figura 5.11(a)
Figura 5.11(b)
Figura 5.11(c)
Figura 5.11(d)
Figura 5.11(e)
Figura 5.11(f)
Figura 5.11(g)
Figura 5.11(h)
Figura 5.11(i)
Figura 5.12(a)
Figura 5.12(b)
Figura 5.12(c)
Rede de Hopfield [s]
0,0690
0,0238
0,0567
0,0209
0,0314
0,0419
0,0318
0,0214
0,0321
0,0217
0,0223
0,0214
5.4 Métodos de determinação dos pontos de contato
105
Garras de três dedos
As imagens da figura a seguir mostram os resultados obtidos com o método de determinação
por otimização com redes de Hopfield para garras de três dedos.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figura 5.13: Resultados do algoritmo de otimização com redes de Hopfield para determinação
de três pontos de fixação para objetos do cotidiano.
5 Fixação 2D de objetos desconhecidos
106
Tabela 5.4: Tabela do tempo de determinação da fixação 2D por três pontos de contato utilizando otimização por redes de Hopfield para os objetos da Figura 5.13.
Figura 5.13(a)
Figura 5.13(b)
Figura 5.13(c)
Figura 5.13(d)
Figura 5.13(e)
Figura 5.13(f)
Figura 5.13(g)
Figura 5.13(h)
Figura 5.13(i)
Figura 5.13(j)
Figura 5.13(k)
Figura 5.13(l)
Rede de Hopfield [s]
0,2378
0,1119
0,1039
0,1120
0,1239
0,1016
0,1226
0,1044
0,1093
0,1041
0,0967
0,0947
Ao comparar os tempos de processamento da rede de Hopfield, mostrados na Tabela 5.4,
com os tempos de processamento da busca heurística, mostrados na Tabela 5.2, para fixação por
três pontos de contato, pode-se verificar a significativa diminuição do tempo de processamento.
E ainda, é possível determinar pontos adequados de fixação para sete objetos dos doze objetos
de teste. Desta forma, pode-se dizer que a rede de Hopfield apresenta bons resultados quando
o tempo de processamento é um dos requisitos do sistema em detrimento da qualidade das
respostas.
Nas simulações com os objetos da base de dados, foi possível determinar uma fixação
adequada por três pontos de contato para 1545 objetos (19,1% do total de objetos).
5.4.3 Fixação 2D por redes neurais feedforward tipo RBF
A capacidade de generalização e de classificação das redes neurais também pode ser utilizada para a determinação de fixações para garras robóticas. Em Valente (1999), o método de
determinação de pontos de contato por redes neurais, no qual esta implementação é baseada, é
apresentado, portanto, recomenda-se a leitura deste texto para maior compreensão.
Em síntese, as redes neurais tipo feedforward, quando devidamente treinadas, são capazes
de determinar pontos adequados para uma fixação estável. Neste caso, a rede neural é treinada
com padrões geométricos divididos em classes, e seus respectivos pontos de fixação. Em etapa
de execução, a rede neural recebe como entrada a representação simplificada do objeto obtida
pela aproximação poligonal do contorno do objeto, e a resposta obtida representa uma estimativa dos pontos de fixação.
5.4 Métodos de determinação dos pontos de contato
107
Pode-se então dividir este método em duas partes: a primeira é a etapa pré-execução em
que a rede é treinada; e a segunda é a etapa em que a rede é executada e os pontos de fixação
são determinados.
Para a primeira primeira etapa, formas geométricas são selecionadas para o treinamento
da rede. Dependendo do tipo de aplicação, pode-se adaptar os padrões de treinamento com
a finalidade de melhorar o desempenho da rede para um caso específico, ou pode-se treinar a
rede com alguns padrões representantes das classes geométricas mais comuns a fim de garantir
rendimento satisfatório da rede para as formas mais variadas possíveis.
Baseado nas formas utilizadas por Valente (1999), são selecionadas formas representantes
de três classes geométricas: retângulos, elipsóides e triângulos. A Figura 5.14 mostra as formas
geométricas utilizadas no treinamento da rede.
Figura 5.14: Padrões geométricos 2D utilizados no treinamento das redes neurais feedforward
tipo RBF.
Para cada um dos padrões geométricos 2D apresentados na Figura 5.14, os melhores pontos
de fixação são determinados pelo algoritmo de busca heurística apresentado na Seção 5.4.1 para
dois e três pontos de contato. Os padrões geométricos definidos e suas respectivas respostas são
utilizados para treinamento da rede neural. O tempo de treinamento determina a escolha do tipo
de rede feedforward a ser utilizado, neste caso, a rede selecionada é a rede tipo RBF. Segundo
Valente (1999), que investiga o comportamento das redes feedforward nesta tarefa, ambos os
tipos RBF e MLP apresentam resultados satisfatórios quanto à qualidade da fixação determinada
5 Fixação 2D de objetos desconhecidos
108
e quanto ao tempo de execução, contudo, as primeras apresentam tempo de treinamento menor
que as segundas. Tempo de treinamento reduzido é fundamental para a implementação de
sistemas capazes de aprender novas fixações.
Tendo em mãos os padrões de treinamento e seus respectivos melhores pontos de fixação,
pode-se iniciar o treinamento da rede. Vale ressaltar que é necessário, para o correto funcionamento da rede, normalizar as suas entradas e saídas, tanto na etapa de treinamento, quanto na
etapa de execução. A entrada da rede consiste em um vetor de 200 pontos formado pelas coordenadas x e y dos pontos obtidos da aproximação poligonal, os valores são redimensionados
a fim de que o máximo valor seja unitário, e o mínimo seja zero, e rotacionados a fim de posicionar o lado da forma geométrica de maior comprimento com o eixo x. As respostas esperadas
para os padrões geométricos também recebem a mesma normalização.
Na etapa de execução, a rede recebe como entrada os 200 pontos resultantes da aproximação
poligonal normalizados segundo a descrição acima, e as resposta obtidas são aproximadas para
aqueles mais próximos pertencentes aos dados de entrada da rede. As respostas obtidas devem
sofrer modificações inversas àquelas da normalização a fim de se obter valores coerentes com
a imagem do objeto. Para se determinar os pontos reais no espaço de trabalho do robô, ainda
é necessário transformar os pontos selecionados do sistema de coordenadas da imagem para
o sistema de coordenadas global, neste caso, para as câmeras de topo, os cálculos são mais
simples que para as câmeras posicionadas nos efetuadores, além da facilidade de calibração do
primeiro tipo de disposição do sensor de visão.
Garras de dois dedos
O método de busca heurística para garras de dois dedos apresentado anteriormente foi utilizado para determinar as respostas dos padrões geométricos de treinamento. A rede neural
treinada com estes dados foi utilizada para a determinação de dois pontos de fixação para os objetos selecionados. A Figura 5.15 mostra os resultados obtidos e a Tabela 5.5 mostra os tempos
de processamento da rede para cada um dos objetos.
Nas imagens da Figura 5.15, as imagens com um "x" vermelho são aquelas em que a
fixação determinada não apresenta a propriedade force-closure. O índice de ocorrência de erros
é alto, e melhorias ainda devem ser investigadas em trabalhos futuros.
5.4 Métodos de determinação dos pontos de contato
109
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figura 5.15: Resultados do algoritmo de otimização com redes de Hopfield para determinação
de três pontos de fixação para objetos do cotidiano.
5 Fixação 2D de objetos desconhecidos
110
Tabela 5.5: Tabela do tempo de determinação da fixação 2D por garras de dois dedos utilizando
RNAs tipo RBF para os objetos da Figura 5.15.
Figura 5.15(a)
Figura 5.15(b)
Figura 5.15(c)
Figura 5.15(d)
Figura 5.15(e)
Figura 5.15(f)
Figura 5.15(g)
Figura 5.15(h)
Figura 5.15(i)
Figura 5.15(j)
Figura 5.15(k)
Figura 5.15(l)
Rede RBF [s]
0,0473
0,0350
0,0364
0,0360
0,0354
0,0351
0,0363
0,0351
0,0365
0,0362
0,0355
0,0371
Apesar do índice de erros apresentado pela rede RBF, a resposta considerada insatisfatória
para alguns objetos é determinada sempre próxima a uma região em que se encontra soluções
satisfatórias. Desta forma, pode-se concluir que a rede RBF apresenta bom desempenho como
classificadora, e, ao se ajustar adequadamente seus parâmetros, tal como o raio da sua função
de base, pode-se conseguir bons desempenhos em tarefas de classificação. Na simulação apresentada, o raio da função de base da rede RBF foi ajustado com valor abaixo de 1, ou seja,
o rede foi configurada para trabalhar como determinadora dos pontos de contato, e não como
classificadora.
Em relação aos tempos de processamento, pode-se verificar pelos valores apresentados na
Tabela 5.5, que o tempo de processamento é reduzido em comparação com a busca heurística.
Nas simulações com os objetos da base de dados, foi possível determinar uma fixação forceclosure para apenas 645 objetos (7,7% do total de objetos).
Garras de três dedos
Outra rede RBF foi treinada com as formas geométricas e seus respectivos três pontos de
fixação obtidos pelo método de busca heurística para fixação por três contatos. Simulações
foram realizadas com os objetos selecionados e os resultados são mostrados na Figura 5.16, e
na Tabela 5.6.
5.4 Métodos de determinação dos pontos de contato
111
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figura 5.16: Resultados do algoritmo baseado em RNAs RBF na determinação de três pontos
de fixação para objetos do cotidiano.
5 Fixação 2D de objetos desconhecidos
112
Tabela 5.6: Tabela do tempo de determinação da fixação 2D por garras de três dedos utilizando
redes neurais tipo RBF para os objetos das Figuras 5.16.
Figura 5.16(a)
Figura 5.16(b)
Figura 5.16(c)
Figura 5.16(d)
Figura 5.16(e)
Figura 5.16(f)
Figura 5.16(g)
Figura 5.16(h)
Figura 5.16(i)
Figura 5.16(j)
Figura 5.16(k)
Figura 5.16(l)
Redes RBF [s]
0,1794
0,1330
0,0994
0,0931
0,1094
0,1052
0,0921
0,1019
0,0948
0,1232
0,1075
0,0991
A partir das observações das respostas mostradas na Figura 5.16 e dos tempos de processamento apresentados na Tabela 5.6, pode-se verificar que a rede RBF apresenta melhor desempenho para a determinação de três pontos de contato, cujo desempenho em relação a qualidade é
semelhante àquele apresentado pela rede de Hopfield, e em relação aos tempos de processameto,
pode-se dizer estes são reduzidos em comparação com a busca heurística.
Nas simulações com os objetos da base de dados, foi possível determinar uma fixação
adequada por três pontos de contato para 2110 objetos (26,0% do total de objetos).
5.4.4 Fixação 2D por redes feedforward e de Hopfield combinadas
Avaliando os resultados da rede feedforward e da rede de Hopfield, pode-se chegar a algumas conclusões, dentre elas: (1) a inicialização da rede de Hopfield afeta diretamente sua
resposta, tendo em visa que inicializações inadequadas geram respostas não satisfatórias; (2)
pode haver pontos estáveis ou mais adequados para a fixação nas proximidades dos pontos
determinados pela rede feedforward.
Baseado nestas duas observações, Xu et al. (1990) propõem a utilização das duas redes em
cascata com o objetivo de reunir as características positivas das duas redes na determinação
da fixação. Nesta configuração em cascata, a rede feedforward é responsável por classificar o
objeto, e sua resposta é uma inicialização mais adequada para a rede otimizadora de Hopfield,
que busca nas regiões vizinhas dos pontos de fixação selecionados pela rede RBF, melhores
pontos de fixação.
Na presente Seção, a rede em cascata é composta pelas redes RBF e Hopfield sem qualquer
5.4 Métodos de determinação dos pontos de contato
113
modificação, de tal forma que o resultado da rede RBF é utilizada como inicialização adequada
da rede de Hopfield.
Garras de dois dedos
As Figuras 5.17 e 5.18 mostram os resultados obtidos para os objetos selecionados e a
Tabela 5.7 mostra os tempos de processamento. Em comparação com os resultados das redes
anteriores, de forma isolada para cada uma delas, é possível verificar uma melhora significativa
da qualidade das respostas, principalmente a queda do índice de respostas não satisfatórias.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
Figura 5.17: Resultados do algoritmo baseado em RNAs RBF e posterior otimização por redes
de Hopfield na determinação de dois pontos de fixação para objetos do cotidiano (parte 1 de 2).
5 Fixação 2D de objetos desconhecidos
114
(a)
(b)
(c)
Figura 5.18: Resultados do algoritmo baseado em RNAs RBF e posterior otimização por redes
de Hopfield na determinação de dois pontos de fixação para objetos do cotidiano (parte 2 de 2).
Os tempos de processamento das redes RBF e de Hopfield para determinação de dois pontos
de contato são apresentados na Tabela 5.7.
Tabela 5.7: Tabela do tempo de determinação da fixação 2D por dois dedos utilizando RNAs
tipo RBF e posterior otimização por redes de Hopfield para os objetos das Figuras 5.17 e 5.18.
Figura 5.17(a)
Figura 5.17(b)
Figura 5.17(c)
Figura 5.17(d)
Figura 5.17(e)
Figura 5.17(f)
Figura 5.17(g)
Figura 5.17(h)
Figura 5.17(i)
Figura 5.18(a)
Figura 5.18(b)
Figura 5.18(c)
Redes RBF e Hopfield [s]
0,1283
0,0738
0,0692
0,0473
0,0591
0,0603
0,0619
0,0626
0,0588
0,0583
0,0616
0,0590
A utilização da rede RBF como classificadora e da rede de Hopfield como otimizadora
melhorou o desempenho na determinação da fixação. Em relação a qualidade das respostas,
o desempenho apresentado pelas duas redes em conjunto é melhor que o desempenho de cada
rede separada, sendo que onze fixações são satisfatórias para a redes redes em conjunto contra
sete e seis fixações satisfatórias para as rede de Hopfield e RBF, respectivamente. Em relação
aos tempos de processamento, o desempenho também é satisfatório.
O novo método proposto foi simulado na determinação de fixações para os 8100 objetos da
base de dados. Foram obtidas 6143 fixações force-closure, aproximadamente 75,8% do total de
imagens.
5.4 Métodos de determinação dos pontos de contato
115
Garras de três dedos
Da mesma forma que para a determinação de dois pontos de contato, as redes combinadas
também podem ser utilizadas para determinar três pontos de contato. Os resultados das simulações com os objetos de teste são apresentados nas Figuras 5.19 e 5.20.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
Figura 5.19: Resultados do algoritmo baseado em redes neurais RBF e posterior otimização
por redes de Hopfield na determinação de três pontos de fixação para objetos do cotidiano. As
linhas vermelhas mostram a direção de aproximação dos dedos da garra para o momento da
fixação (parte 1 de 2).
5 Fixação 2D de objetos desconhecidos
116
(a)
(b)
(c)
Figura 5.20: Resultados do algoritmo baseado em redes neurais RBF e posterior otimização
por redes de Hopfield na determinação de três pontos de fixação para objetos do cotidiano. As
linhas vermelhas mostram a direção de aproximação dos dedos da garra para o momento da
fixação (parte 2 de 2).
Os tempos de processamento medidos na determinação de três pontos de contato pelas redes
combinadas são apresentados na Tabela 5.8.
Tabela 5.8: Tabela do tempo de determinação da fixação 2D por garras de três dedos utilizando
redes neurais tipo RBF e posterior otimização por redes de hopfield para os objetos das Figuras
5.19 e 5.20.
Figura 5.19(a)
Figura 5.19(b)
Figura 5.19(c)
Figura 5.19(d)
Figura 5.19(e)
Figura 5.19(f)
Figura 5.19(g)
Figura 5.19(h)
Figura 5.19(i)
Figura 5.20(a)
Figura 5.20(b)
Figura 5.20(c)
Redes RBF e Hopfield [s]
0,1271
0,0393
0,1383
0,0899
0,1173
0,1012
0,1078
0,0408
0,1389
0,1186
0,0969
0,1147
Similar aos resultados obtidos pelas redes de Hopfield e RBF combinadas na determinação
de dois pontos de contato, para três pontos de contato também houve melhora significativa
no desempenho das redes na determinação dos pontos de contato e em relação aos tempo de
processamento.
O novo método proposto foi simulado na determinação de fixações para os 8100 objetos da
base de dados. Foram obtidas 6425 fixações force-closure, aproximadamente 79,3% do total de
imagens.
5.5 Resumo do Capítulo 5
117
5.5 Resumo do Capítulo 5
Neste Capítulo, a fixação 2D de objetos desconhecidos foi estudada. Diferentes métodos
de fixação 2D baseados em RNAs foram descritos e resultados de simulações com imagens
de objetos do cotidiano e com uma extensa base de dados foram apresentados para cada um
dos métodos. O principal objetivo deste Capítulo foi o estudo da capacidade das RNAs na
determinação de pontos de contato e das limitações apresentadas pelo diferentes métodos.
Foram apresentados três métodos de fixação 2D baseados em RNAs: o método proposto por
Valente (1999), que utiliza redes RBF previamente treinadas; o método proposto por Xu et al.
(1990), que utiliza redes de Hopfield; e foi apresentada uma proposta de combinação das redes
RBF e de Hopfield. Adicionalmente, também foi apresentado um método de busca heurística,
que é utilizado na etapa de treinamento da rede RBF.
Simulação com oito imagens de objetos reais foram realizadas para cada um dos métodos
na determinação de dois e de três pontos de contato a fim de apresentar os resultados obtidos,
e ainda, simulações foram realizadas com uma base de 8100 objetos. O objetivo de tais simulações foi avaliar o desempenho da rede em relação à qualidade das respostas e em relação ao
tempo de processmento.
Os resultados obtidos nas simulações mostraram que, de forma geral, é possível determinar
pontos adequados de fixação para objetos desconhecidos, desde que as redes estejam adequadamente treinadas e configuras. E ainda, o tempo de processamento observado é reduzido.
Em relação aos resultados obtidos com a rede RBF, foi possível verificar que a mesma não
apresenta um bom desempenho em relação a qualidade das respostas, pois, apenas 7,7% das
respostas foram satisfatórias para os 8100 objetos da base dedos. Porém, a rede RBF apresenta
diversos parâmetros de configuração, como número de neurônios, raio da função de base radial,
tipo de treinamento, entre outros menos expressivos. Logo, deve-se ainda investigar a relação
entre o desempenho da rede e seus parâmetros de configuração. Um das vantagens da rede RBF
é a possibilidade de treiná-las com formas padrões adequadas para cada aplicação específica.
Em relação aos resultados obtidos com a rede de Hopfield, os resultados obtidos são melhores que aqueles obtidos pelas redes RBF quanto à qualidade das respostas, porém com pequena
desvantagem em relação ao tempo de processamento. Uma das principais características observadas para este tipo de rede, é o seu desempenho em função da sua inicialização, pois se
verificou a dependência dos resultados em relação à inicialização da rede. Uma das vantagens
da rede, é a possibilidade de se trabalhar com dados não normalizados.
118
5 Fixação 2D de objetos desconhecidos
Em relação a proposta de combinação das redes RBF e de Hopfield para a fixação 2D,
observou-se uma melhora significativa na qualidade das respostas sem significante aumento no
tempo de processamento, o que indica que a rede RBF apresenta melhores resultados como
classificadora, e que a sua resposta é uma boa inicialização para a rede de Hopfield. Resultados
expressivos foram alcançados com a combinação das duas redes, chegando a cerca de 70% de
fixações satisfatórias para os 8100 objetos da base de dados.
119
Parte III
Fixação 3D utilizando redes neurais
artificiais
121
6
Simplificação de superfícies utilizando redes
de Hopfield
Este Capítulo apresenta um algoritmo, baseado em redes neurais de Hopfield, para a simplificação de malhas superfíciais de modelos 3D de objetos. Tais modelos são representados por
uma nuvem de pontos definidos no espaço, e uma malha de elementos triangulares que ligam
estes pontos formando a topologia do objeto. Dentre os pontos da nuvem, um número reduzido
pode ser selecionado a fim de representar o objeto, sem perda das principais características da
sua forma. Para a tarefa de simplificação do objeto, é proposto um algoritmo baseado em redes
de Hopfield, inspirado naquele utilizado para a aproximação poligonal apresentado no Capítulo
4. A rede neural é utilizada na tentativa de simplificar as etapas de cálculos da simplificação
e o objetivo é obter simplificações de boa qualidade, porém com tempo de processamento reduzido. Os resultados obtidos com a rede neural proposta, com simulações na simplificação
de malhas de objetos, mostram que a qualidade da simplificação é similar àquelas obtidas por
outros métodos, segundo métricas de um software avaliador dedicado, e que o tempo total de
processamento observado é compatível com as aplicações em robótica, nas quais pretende-se
aplicar este método.
6.1 Introdução
Uma malha superficial, ou malha tridimensional (malha 3D), é composta por elementos
geométricos fundamentais (triângulos, quadrados, retângulos, ou polígonos) conectados ordenadamente entre si, e é utilizada na representação de objetos, ou de formas geométricas quaisquer, em diversas aplicações.
Estas aplicações são inúmeras e distintas. As malhas 3D são utilizadas, de forma geral na
Engenharia, em programas dedicados de projeto, conhecidos pelo acrônimo do inglês ComputerAided Design (CAD), em análises pelo método dos elementos finitos (neste caso a malha
pode ser volumétrica), entre outros. São utilizadas também na implementação de jogos (video
games), e em computação gráfica em geral, tal como animações e realidade virtual.
6 Simplificação de superfícies utilizando redes de Hopfield
122
Na robótica existem programas de desenvolvimento que utilizam as malhas 3D para representar ambientes, objetos e robôs, e que simulam a interação física entre os mesmos. Pode-se
citar como exemplo o programa IBEX (ETTLIN et al., 2005) desenvolvido para simular interações de robôs autônomos com o meio ambiente, e destinado ao desenvolvimento da robótica
móvel, e também pode-se citar o programa GraspIt! (MILLER; ALLEN, 2004), que foi desenvolvido para simulação, análise e desenvolvimento de problemas de fixação e manipulação de
objetos por garras robóticas.
Nestes exemplos citados, as malhas 3D, que representam os objetos e o ambiente, são obtidas de maneira sintética através de programas CAD, que em sua maioria utilizam para formar o
objeto primitivas geométricas como cubos, elipsóides, superfícies de revolução, e operações de
conjunto como união, intersecção, e outras operações como extrusão e corte. Estes programas
CAD geram automaticamente a malha 3D dos objetos modelados.
De forma geral, a criação, ou a modelagem, de objetos em programas CAD é muito demorada e requer que o usuário tenha conhecimentos específicos do programa utilizado para a
modelagem. O tempo de criação depende fundamentalmete da complexidade dos objetos que
se deseja criar. Por este motivo, e pelo desenvolvimento de equipamentos e técnicas de aquisição de dados espaciais de uma cena (FERNANDES, 2005), as malhas 3D podem também ser
obtidas pela reconstrução de dados reais adquiridos por dispositivos de visão 3D, tal como o
scanner 3D. Esta técnica é utilizada principalmente para criar modelos de objetos complexos,
e em muitos casos, o objeto é modelado manualmente e depois digitalizado com o dispositivo
adequado.
Esta abordagem alternativa requer que a malha seja reconstruída a partir de uma nuvem de
pontos espaciais, ou seja, aqueles pontos obtidos pelos sistemas de visão 3D. A reconstrução da
malha não é trivial, pois a mesma deve ser realizada apenas conhecendo-se a nuvem de pontos,
que normalmente não está organizada, e não há informações adicionais sobre a conectividade
entre os pontos. Existem diversos métodos para reconstruir malhas 3D a partir de nuvem de
pontos, e para os leitores mais interessados recomenda-se a leitura de Gois (2004) e Polizzeli
(2008), nos quais é realizada uma revisão dos métodos clássicos de reconstrução de malhas 3D
a partir de nuvens de pontos, assim como novos métodos são apresentados.
Uma malha 3D pode apresentar um elevado nível de detalhamento, sendo composta por
centenas, e até milhares, de elementos fundamentais como vértices e triângulos por exemplo.
Esta característica é comum tanto para as malhas 3D geradas por programas CAD, quanto
para as malhas 3D reconstruídas a partir de uma nuvem de pontos. Em algumas aplicações,
é interessante notar a presença de muitos detalhes com a finalidade de promover realismo, e
6.1 Introdução
123
observa-se esta necessidade em animações gráficas e em jogos virtuais. No caso das animações
gráficas, as cenas são renderizadas a partir de cenários virtuais ricos em detalhes, o que demanda
horas de processamento para uma única cena. No caso dos jogos, a exigência de realismo
promove o constante desenvolvimento de softwares de renderização e placas gráficas de alto
desempenho.
Contudo, em outras aplicações necessita-se de versões simplificadas das malhas 3D. Por
exemplo, na transmissão de visualizações via linha de comunicação, pode-se utilizar diferentes
níveis de detalhamento (LOD1 ) de uma malha, sendo que neste caso inicia-se a transmissão com
uma malha de pouco detalhamento, e progressivamente aumenta-se o detalhamento a medida
que os dados são transmitidos.
Diferentes níveis de detalhamento também são utilizados em computação gráfica na apresentação de um mesmo objeto a diferentes distâncias do observador. Quando o objeto está próximo, utiliza-se uma malha com muitos detalhes, e a medida que o objeto afasta-se, utilizam-se
malhas menos refinadas. O objetivo desta técnica é melhorar o desempenho da renderização
da cena. Pode-se ainda utilizar níveis de detalhamento na representação de topologias, e neste
caso, melhora-se o detalhamento nas regiões próximas ao observadoor, enquanto que aquelas
distantes apresentam poucos detalhes (HOPPE, 1996).
Existem ainda outras aplicações em que se requer o uso de malhas simplificadas para reduzir
tanto os recursos computacionais requeridos (memória, espaço em disco rígido e processador),
quanto os tempos de execução no processamento de tarefas que utilizam as informações contidas na malha 3D. Para o caso especial da fixação 3D de objetos, também é interessante o uso
de malhas 3D simplificadas. Em muitos casos utiliza-se sensores 3D para adquirir uma nuvem
de pontos que define um objeto, e que retornam ao sistema uma grande quantidade de pontos,
que devem ser simplificados a fim de reduzir os tempos de processamento, e, principalmente,
de simplificar os cálculos específicos que utilizam as informações referentes à forma do objeto
que estão contidas na malha 3D.
A simplificação de malhas 3D que representam objetos e topografias é fundamental para
funcionamento adequado de várias aplicações. Na literatura existem inúmeros métodos propostos que utilizam diferentes abordagens para resolver este problema. Cignoni et al. (1998a) faz
uma breve, porém completa, apresentação e descrição dos tipos fundamentais de simplificação
de superfícies. No trabalho também são discutidas algumas das características como qualidade
de simplificação, tempos de processamento e desvantagens de cerca de 21 métodos que representam os tipos fundamentais de abordagens. Ainda em Cignoni et al. (1998a), seis trabalhos
1 LOD
é a sigla do termo inglês level of detail.
6 Simplificação de superfícies utilizando redes de Hopfield
124
escolhidos como os mais eficientes são comparados quantitativamente na simplificação de três
malhas obtidas por diferentes métodos: o fandisk representa a classe do objetos modelados em
programa CAD, o bunny representa a classe de mallhas 3D reconstruídas a partir de pontos obtidos por scanners 3D, e o femur representa a classe daquelas malhas obtidas pela reconstrução
de dados extraídos de imagens.
No caso específico estudado neste trabalho, também se deseja utilizar versões simplificadas das malhas 3D para se determinar pontos de contatos para fixação de objetos. Segundo
a proposta inicial do trabalho de se utilizar RNAs nas etapas de determinação da fixação, neste
Capítulo é apresentado uma nova proposta de simplificação de superfícies baseado em RNAs
competitivas de Hopfield. A proposta da utilização de RNAs para o problema da simplificação é
inovador para a área, e comparações com os resultados apresentados por Cignoni et al. (1998a),
dos seis principais trabalhos de simplificação, mostram a eficiência da nova proposta.
O Capítulo segue esta organização: na Seção 6.2, o algoritmo de simplificação de superfícies proposto, baseado em redes de Hopfield, é descrito; na Seção 6.2.2, diferentes estratégias
de simplificação de malhas utilizando a proposta são discutidas; na Seção 6.3, o algoritmo é
simulado na simplificação de alguns objetos a fim de se verificar a capacidade de simpificação,
e comparações com outros métodos de simplificação são realizadas a fim de comprovar a capacidade do método proposto; por fim, conclusões e propostas são realizadas na Seção 6.4.
6.2 Algoritmo proposto
6.2.1 Descrição
O modelo de rede neural competitiva de Hopfield para a simplificação de superfícies é
apresentado nesta Seção. A arquitetura da rede é baseada naquela utilizada para aproximação
poligonal apresentada no Capítulo 4.
Nesta abordagem, a superfície do objeto é definida por uma nuvem de pontos representada
pelo vetor p = [p(1),. . . ,p(n)]T , sendo que cada elemento de p tem componentes x, y, e z em um
sistema de referência inercial, e ainda, os pontos estão ligados entre si por uma malha superficial
composta por triângulos como elementos geométricos elementares.
A Figura 6.1(a) mostra um modelo reconstruído a partir de dados adquiridos por um scanner
3D, a Figura 6.1(b) mostra os pontos de aquisição e a Figura 6.1(c) mostra a malha triangular.
A malha superfícial do objeto é obtida a partir da nuvem de pontos pela triangulação de
Delaunay (OKABE et al., 2000), sendo que os pontos da nuvem compõem os vértices dos triân-
6.2 Algoritmo proposto
125
(a)
(b)
(c)
Figura 6.1: Elementos de malhas da superfície de um modelo reconstruído pela triangulação
de Delaunay. Figura 6.1(a) mostra o modelo reconstruído, Figura 6.1(b) mostra a nuvem de
pontos, e a Figura 6.1(c) mostra os elementos triangulares da malha.
6 Simplificação de superfícies utilizando redes de Hopfield
126
gulos da malha. As relações geométrica entre os pontos da nuvem e os elementos triangulares
da malha são utilizados na construção da regra de aprendizado da rede neural. Porém, antes da
formalização desta regra, deve-se definir a arquitetura da rede neural.
A rede neural apresenta um total de n neurônios, sendo que cada neurônio, que representa
um único ponto da nuvem de pontos, está ligado a todos os demais neurônios da rede. A conexão
entre cada neurônio recebe um peso w, assim a conexação entre os neurônios i e j é definida por
w(i, j), e ainda, o peso muda de acordo com o sentido da conexão, tal que a conexão w(i, j) que
vai do neurônio i para o neurônio j é diferente da conexão w( j, i) que vai do neurônio j para o
neurônio i, ou seja w(i, j) = w( j, i). A conexão de um neurônio com ele mesmo tem peso nulo
(w(i, i) = 0).
O conjunto de pesos entre todos os neurônios, e em todos os sentidos, de conexão forma
a matriz de pesos W . Para a definição da construção da matriz de pesos W deve-se definir a
"vizinhança" de um ponto na triangulação. Na triangulação de uma superfície, cada ponto
p(i) torna-se o vértice de um conjunto de triângulos Ei = [ei(1), ..., ei(s)]T , em que cada elemento de Ei possui três coordenadas, sendo que cada coordenada representa o vértice de um
triângulo e é formada pelo índice de um ponto p da nuvem de pontos. Os vértices de cada
triângulo do conjunto Ei, diferentes do ponto p(i), formam a vizinhança Vi do ponto, tal que
Vi = [vi(1), ..., vi(s)]T . A Figura 6.2 mostra em azul o i-ésimo ponto, em vermelho o conjunto
Ei, e em verde os pontos de Vi.
Figura 6.2: Vizinhança de um ponto qualquer de uma malha. Em azul o ponto selecionado, em
vermelho os triângulos da vizinhança e em verde os pontos vizinhos do ponto em azul.
6.2 Algoritmo proposto
127
Uma das interessantes características da triangulação de Delaunay é que, ao se retirar um
ponto da nuvem inicial, e retriangular a nuvem alterada, a única região afetada pela retirada do
ponto é aquela definida pela sua vizinhança, ou seja, são afetados apenas os triângulos de Ei na
reconstrução da malha ao se retirar o i-ésimo ponto. A Figura 6.3(b) mostra a nova triangulação
Ei , em vermelho tracejado, formada ao se retirar o i-ésimo ponto (ponto azul da Figura 6.3(a))
da nuvem de pontos.
(a)
(b)
Figura 6.3: Efeito sobre a malha de superfície ao retirar um ponto. Figura 6.3(a) mostra a malha
antes de se retirar o ponto azul, Figura 6.3(b) mostra a malha reconstruída após a retirada do
ponto.
A partir da Figura 6.3, pode-se verificar que ao se reconstruir a malha após a retirada do
ponto p(i), a vizinhança de cada um dos pontos vizinhos daquele retirado é também modificada, assim como o conjunto de triângulos dos quais os vizinhos (pontos verdes de 6.3(b)), são
vértices.
Ao se retirar um ponto p(i) qualquer de uma malha e ao se efetuar a retriangulação, o
que ocorre é a simplificação parcial da malha pela simplificação de Ei por E i. Cignoni et al.
(1998b) define como erro de aproximação de superfícies o somatório das distâncias entre os
elementos de malha da superfície original, que foram retirados na simplificação, aos elementos
de malha da superfície aproximada. Para o caso em que o i-ésimo ponto é retirado da nuvem de
pontos, o erro é definido pelo somatório das distâncias do ponto p(i) aos triângulos Ei da nova
triangulação.
6 Simplificação de superfícies utilizando redes de Hopfield
128
Figura 6.4: Cálculo do erro de simplificação.
O erro de simplificação ao se retirar o ponto p(i) é dado por:
δi =
s
∑ d(p(i), Ei(k))
(6.1)
k=1
em que d(p(i), Ei (k)) é a distância Euclidiana do ponto p(i) ao triângulo Ei (k).
Definido o erro de aproximação ao se retirar um ponto p(i) qualquer, pode-se então definir
a construção da matriz de pesos W . Dado um ponto p(i) qualquer, sua vizinhança Vi e a nova
triangulação Ei , o peso das conexões que partem de p(i) tem valores nulos quando o neurônio
no qual a conexão chega não faz parte da vizinhança Vi. Para as conexões que partem de p(i)
e chegam nos neurônios cujos pontos relacionados pertencentes à vizinhança Vi, os pesos são
calculados da seguinte maneira:
w(i, j) = ∑ d(p(i), Ei ∩ Evi (x))
(6.2)
em que vi(x) é o ponto p( j) pertencente a vizinhança Vi, e o termo Ei ∩ Evi (x) é formado
pelos triângulos de Ei que tem como um de seus vétices o ponto vi(x) (ou p( j)).
Desta maneira, a conexão de um neurônio com todos os demais neurônios não é nula somente quando o segundo neurônio faz parte da sua vizinhança, e neste caso, o peso da conexão
é o somatório da distância do primeiro ponto aos triângulos obtidos na retriangulação que tem
o segundo ponto como vértice.
Para cada neurônio i também existe um limiar de ativação T (i). O limiar é definido da
6.2 Algoritmo proposto
129
seguinte forma:
T (i) = λ
s
∑ Area(Ei( j)).
(6.3)
j=1
em que Area(Ei ( j)) é a área do j-ésimo triângulo de Ei , e λ é um escalar de ponderação
(λ ∈ R).
Definida a construção da matriz de pesos e dos limiares de ativação, pode-se definir o
processo de simplificação pela rede de Hopfield. Inicialmente, todos os neurônios estão ativados, ou seja, x(i) = 1 para i = 1, . . . , n, e para cada neurônio i uma função energia é calculada
segundo a relação:
U(i) =
n
∑ w(i, j)x( j) + T (i).
(6.4)
j=1
O neurônio que apresentar a menor energia de ativação é desativado, ou seja, seu estado
x(i) muda de 1 para 0. Em outras palavras, o neurônio que representa o ponto com menor erro
de aproximação ao ser retirado é desativado. O termo λ da Equação 6.3 é um escalar de valor
escolhido de acordo com o caso de aplicação do algoritmo. Este termo pondera a ampliação
de área entre os pontos da superfície provocada pela retirada de pontos durante a simplificação.
Por exemplo, para os casos em que se deseja uma aproximação com distribuição regular de
pontos ao longo da superfície, o termo λ tem grande importância. Para os casos em que pode
haver regiões de maior concentração de pontos e outras com menor concentração, o termo λ
pode ser pequeno ou até mesmo nulo.
A simplificação pela rede competitiva segue um processo iterativo. Na primeira iteração
todos os neurônios estão ativados, a função energia de toda a rede é calculada e o neurônio de
menor energia é desativado. Ao desativar um neurônio qualquer k, a triangulação Ek é modificada para Ek , e conseqüentemente os neurônios vizinhos de k, pertencentes a V k, também terão
seus vizinhos modificados. Desta forma, ao desativar um neurônio k, o peso das conexões dos
vizinhos de k com seus próprios vizinhos é modificada. Portanto, a matriz de pesos é dinâmica,
e a cada iteração a matriz de pesos W deve ser atualizada.
Então, em cada iteração da rede um neurônio é desativado, a triangulação é reconstruída
localmente, os pesos de conexão são atualizados e a função energia é recalculada para aqueles
neurônios cujas conexões mudaram. Neste estágio, o neurônio com menor energia é desativado e o processo iterativo prossegue até que permaneçam apenas m neurônios ativados. Os m
neurônios ativados ao final do processo representam os m pontos da simplificação.
6 Simplificação de superfícies utilizando redes de Hopfield
130
6.2.2 Estratégias de simplificação
Na primeira iteração de execução da rede neural, a energia de cada neurônio deve ser calculada para se determinar aquele de menor energia que será desativado. Então, deve-se determinar
a vizinhança Vi e a triangulação Ei a partir da malha original para o ponto p(i), deve-se calcular os pesos w(i, j), ou seja, deve-se calcular as distâncias entre o ponto p(i) e os triangulos
de Ei , assim como as áreas destes. Ao finalizar este mesmo procedimento para cada um dos n
neurônios, e após calcular a função energia dos mesmo, aquele de menor energia é desativado.
Quando um neurônio é desativado, a malha original é atualizada, e inicia-se a próxima iteração
em que todos os neurônios ainda ativos serão novamente avaliados.
Este processo pode ser acelerado, pois pode ocorrer que qualquer um dos neurônios avaliados na primeira iteração apresente energia nula (U = 0). Como o valor de U é estritamente
positivo, pode-se afirmar que este neurônio é o que apresenta mínima energia, ou um dos que
apresentam mínima energia, caso outros neurônios apresentem energia também nula. A energia
nula de um neurônio pode ocorrer para aqueles que representam pontos em uma região plana e
quando o termo λ é nulo. Neste caso, pode-se concluir uma iteração com a desativação de um
neurônio do interior da região plana, mesmo que ainda restem neurônios a serem verificados.
A malha original é atualizada, e inicia-se a próxima iteração, que pode ser concluída da mesma
maneira sem a necessidade da verificação de todos os neurônios.
Seguindo esta linha de raciocínio, pode-se adotar um limiar de mínima energia Umin . Desta
forma, pode-se finalizar uma etapa de iteração assim que algum neurônio apresentar energia menor ou igual ao limiar. O limiar de mínima energia estabelece um erro de aproximação aceitável, pois em determinadas aplicações pode-se trabalhar com aproximações não
otimizadas. Esta estratégia permite acelerar o processo iterativo com conseqüente detrimento
da qualidade da simplificação.
Outra estratégia de simplificação interessante, principlamente para o caso estudado nesta
dissertação, é a simplificação de apenas uma região limitada do objeto. Nesta estratégia, a rede
é construída apenas para os pontos da região que pretende-se simplificar e executa-se o processo
iterativo. Pode-se ainda simplificar diferentes regiões do objeto em escalas diferentes, ou seja,
pode-se reduzir metade da malha de um objeto para 20% dos pontos originais, enquanto que
para a outra metada pode-se reduzir a malha para 10%.
As simulações realizadas com diferentes limiares de mínima energia são apresentados na
próxima Seção, enquanto que a estratégia de simplificação de regiões definidas é utilizada no
próximo Capítulo em que o algoritmo de fixação 3D é apresentado.
6.3 Simulações e resultados
131
6.3 Simulações e resultados
Para avaliar a capacidade de simplificação do algoritmo proposto, duas diferentes simulações foram realizadas. Na primeira, diferentes simplificações foram realizadas para um mesmo
objeto a fim verificar a qualidade das respotas do algoritmo em função do parâmetro Umin . Na
segunda, os melhores resultados obtidos na primeira simulação são comparados com resultados
apresentados por outros métodos de simplificação.
Nas simulações são utilizadas duas malhas, que também são utilizadas por diversos autores
na avaliação de algoritmos de simplificação. Foram utilizados o modelo Bunny (Figura 6.5(a))
e o modelo Fandisk (Figura 6.5(b))2 .
(a)
(b)
Figura 6.5: Figura 6.5(a) mostra o modelo Bunny, que possui com 34834 vertices e malha de
69451 triângulos, e a Figura 6.5(b) mostra o modelo Fandisk que possui com 6475 vertices e
malha de 12946 triângulos.
Cada uma das simplificações realizadas é avaliada pelo programa Metro(descrito a seguir),
e apresenta-se, para cada caso, o erro máximo de simplificação Emax , e o erro médio quadrático
de simplificação Emed .
6.3.1 A ferramenta de avaliação Metro
Antes da descrição das simulações realizadas e da apresentação dos resultados obtidos,
é necessário apresentar os critérios de medida do erro de simplificação de superfícies. Foi
descrita anteriormente a métrica proposta por Cignoni et al. (1998b), que pode ser sintetizada
como: dado duas superfícies, a original S1 e a aproximada S2 , o erro de aproximação é dado
pelas distâncias entre os pontos da superfície S1 à superfície S2 . Em função das distâncias entre
2O
modelo Femmur não foi utilizado pois não foi possível encontrar o arquivo da malha 3D.
6 Simplificação de superfícies utilizando redes de Hopfield
132
os pontos de S1 e a curva S2 , diferentes medidas de aproximação podem ser obtidas: o erro
máximo Emax , o erro médio Eavg e o erro médio quadrático Emed .
A fim de difundir e formalizar as medidas de qualidade da simplificação descritas acima,
um programa dedicado denominado Metro foi desenvolvido e é apresentado em Cignoni et al.
(1998b). O Metro possibilita a avaliação da simplificação de uma superfície a partir da comparação da malha simplificada com a original, de forma independente do método de simplificação
utilizado. Segundo (CIGNONI et al., 1998a) o programa foi utilizado por mais de 250 autores
na análise de algoritmos de simplificação na época da publicação.
Além das medidas de qualidade da aproximação, o software também calcula outras características das superfícies como: volume encapsulado (apenas para as malhas fechadas); área;
menor diagonal do cubo que o contém; volume entre as superfícies; e também fornece uma
saída visual em que uma escala de cores, que indica o valor do erro em cada ponto da rede, é
aplicada sobre a superfície original.
A fim de formalizar os resultados das simulações, utiliza-se o Metro como avaliador da
qualidade da simplificação. Este procedimento permite comparar o resultado do algoritmo proposto com os resultados de outros algoritmos, e também possibilita que outros trabalhos também
utilizem os dados em futuras comparações.
6.3.2 Desempenho em função do limiar Umin
Na Seção 6.2.2 foi discutida a possibilidade de se trabalhar com diferentes valores do parâmetros Umin , para se reduzir o tempo de processamento, em detrimento da qualidade da simplificação.
Para avaliar a dependência da qualidade dos resultados e do tempo de processamento da
simplificação em função do limiar de energia Umin , diferentes simplificações foram realizadas
para o modelo Bunny e para o modelo Fandisk. Para cada diferente porcentagem de simplificação, 0,5%, 1%, 5%, 10%, 25% e 50% dos pontos do modelo original, o limiar foi variado de
0 a 2,5. Para cada diferente simplificação o tempo de processamento e o erro médio quadrático
Emed foram medidos3 .
Os gráficos das Figuras 6.6 e 6.7 mostram os resultados obtidos para o modelo Bunny e
para o modelo Fandisk, respectivamente.
3 O erro máximo de simplificação E
max
também foi medido nas simulações, mas os valores não são apresentados
pois não verifica-se dependência entre Umin e Emax .
6.3 Simulações e resultados
133
Resultados obtidos para o modelo Bunny.
(a)
(b)
Figura 6.6: Resultados para diferentes porcentagens de simplifcação do modelo Bunny em
função do limiar Umin . A Figura 6.6(a) mostra o erro médio quadrático de cada porcentagem
de simplificação em função do limiar, e a Figura 6.6(b) mostra o tempo de simplificação em
função do mesmo limiar.
134
6 Simplificação de superfícies utilizando redes de Hopfield
Resultados obtidos para o modelo Fandisk.
(a)
(b)
Figura 6.7: Resultados para diferentes porcentagens de simplifcação do modelo Fandisk em
função do limiar Umin . A Figura 6.7(a) mostra o erro médio quadrático de cada porcentagem
de simplificação em função do limiar, e a Figura 6.7(b) mostra o tempo de simplificação em
função do mesmo limiar.
6.3 Simulações e resultados
135
Pela análise dos gráficos, pode-se verificar que, tanto para o modelo Bunny, quanto para
o Modelo Fandisk, o melhor resultado, ou seja, Umin = 0, ocorre quando não se utiliza um
limiar no processo iterativo da rede neural, e ainda, o tempo de processamento é reduzido com
a utilização de um limiar, porém, a estratégia prejudica a qualidade da aproximação. Pode-se
também verificar a melhora do desempenho do método, em relação ao tempo de processamento,
com o aumento de Umin , porém, o desempenho em relação a qualidade da simplificação reduz-se
com o aumento de Umin , ou seja, o erro médio Emed aumenta.
Os dados coletados nestas simulações, e que foram utilizados na construção dos gráficos
das Figuras 6.6 e 6.7, encontram-se nas Tabelas C.1, C.2, C.3 e C.4 do Apêndice C.
6.3.3 Comparação com outros algoritmos
Na segunda simulação o objetivo é comparar os resultados do algoritmo proposto com
outros métodos de simplificação de malhas. Os métodos utilizados nesta comparação são: Mesh
decimation proposto por Schroeder et al. (1992), Simplification envelopes proposto por Cohen et
al. (1996), Multiresolution decimation proposto por Ciampalini et al. (1997), Mesh optimization
proposto por Hoppe et al. (1993), Progressive meshes proposto por Hoppe (1996), Quadric
error metrics simplication proposto por Garland e Heckbert (1997)4 .
Nas simulações foram utilizadas as malhas do modelo Bunny (Figura 6.5(a)) e do modelo
Fandisk (Figura 6.5(b)). O modelo Bunny foi simplificado para 50%, 25%, 10%, 5%, 1% e
0,5% dos 34834 pontos do modelo original, e o modelo Fandisk foi simplificado para 50%,
25%, 10%, 5% e 1% dos pontos do modelo original. Para cada simplificação o erro máximo
Emax e o erro médio quadrático Emed foram medidos. Para a simplificação dos dois modelos com
o algoritmo proposto, foi utilizado Umin = 0, pois neste caso obtém-se a melhor simplificação.
Os gráficos das Figuras 6.8(a) e 6.8(b) mostram os erros máximos e médios na simplificação
do modelo Bunny. E os gráficos das Figuras 6.9(a) e 6.9(b) mostram os erros máximos e médios
na simplificação do modelo Fandisk.
Os resultados dos diversos algoritmos utilizados na construção dos gráficos encontram-se
nas Tabelas C.5, C.6, C.7 e C.8 do Apêndice C.
4 Os
resultados dos métodos citado foram extraídos de Cignoni et al. (1998a).
136
6 Simplificação de superfícies utilizando redes de Hopfield
(a)
(b)
Figura 6.8: Gráficos de comparação do método proposto com outros métodos da literatura
na simplificação do modelo Bunny. Os gráficos das Figuras 6.8(a) e 6.8(b) mostram respectivamente o erro máximo Emax e o erro médio Emed medidos para diferentes níveis de simplificação.
6.3 Simulações e resultados
137
(a)
(b)
Figura 6.9: Gráficos de comparação do método proposto com outros métodos da literatura na
simplificação do modelo Fandisk. Os gráficos das Figuras 6.9(a) e 6.9(b) mostram respectivamente o erro máximo e o erro médio medidos para diferentes níveis de simplificação.
6 Simplificação de superfícies utilizando redes de Hopfield
138
A partir dos gráficos das Figuras 6.8 e 6.9 pode-se verificar que o método proposto apresenta
desempenho próximo, e por vezes melhor, que o desempenho apresentado por outros métodos
de destaque na literatura. Então, pode-se afirmar que o método de simplificação por redes de
Hopfield é eficiente.
As Figuras 6.10 e 6.11 mostram as malhas após a execução da simplificação utilizando
o algoritmo proposto. As Figuras 6.10(a) e 6.10(b) mostram os modelos originais do Bunny
e do Fandisk respectivamente, as Figuras 6.10(c), 6.11(a), 6.11(c), 6.11(e) e 6.12(a) mostram
respecticamente as simplificaçãoes para 50%, 25%, 10%, 5% e 1% para o Bunny, e as Figuras
6.10(d), 6.11(b), 6.11(d), 6.11(f) e 6.12(b) mostram respecticamente as simplificaçãoes para
50%, 25%, 10%, 5% e 1% do modelo Fandisk.
(a)
(b)
(c)
(d)
Figura 6.10: Representação dos modelos simplificados pelo método proposto (parte 1 de 3).
6.3 Simulações e resultados
139
(a)
(b)
(c)
(d)
(e)
(f)
Figura 6.11: Representação dos modelos simplificados pelo método proposto (parte 2 de 3).
6 Simplificação de superfícies utilizando redes de Hopfield
140
(a)
(b)
Figura 6.12: Representação dos modelos simplificados pelo método proposto (parte 3 de 3).
6.4 Resumo do Capítulo 6
Neste Capítulo foi apresentada uma nova proposta de algoritmo de simplificação de superfícies baseado em redes neurais artificiais. A rede selecionada para cumprir a tarefa foi uma
rede competitiva de Hopfield, o que atende a proposta inicial de se utilizar redes neurais.
Os resultados obtidos na simplificação de modelos 3D complexos foram comparados com
os resultados obtidos por outros métodos de destaque na literatura. As comparações apontam
que a nova proposta é capaz de simplificar malhas superficiais com desempenho similar aos
melhores métodos de simplificação.
Também foi avaliado o desempenho do método proposto em função do limiar de desativação de neurônios Umin . Os resultados mostram que é possível acelerar os tempos de processamento utilizando valores elevados de Umin , porém ocorre detrimento da qualidade da simplificação. Contudo, a aplicação em que se deseja utilizar a rede de simplificação não exige ótimo
desempenho em relação a qualidade, e sim em relação ao tempo de processamento, então o uso
de valores elevados de Umin é conveniente e os resultados obtidos são satisfatórios.
Ainda sobre o tempo de processamento da rede de simplificação, as simulações foram realizadas em um computador do tipo desktop não dedicado, e a implementação foi realizada no
ambiente de desenvolvimento Matlab. Esta plataforma não apresenta o desempenho que aquelas dedicadas que são utilizadas em sistemas robóticos. Portanto, para verificar o desempenho
do método, é necessário implementá-lo em uma linguagem apropriada e executá-lo em um computador dedicado. Esta nova simulação também deve ser realizada para os demais métodos da
literatura, afim de verificar qual o método que melhor atende aos requisitos de um sistema de
6.5 Agradecimentos
141
fixação 3D.
Por fim, apesar de não se ter uma boa indicação de que o método atende os requisitos
de tempo de processamento, o método destaca-se pelos bons resultados apresentados e pela
inovadora utilização de redes neurais no caso de simplificação de superfícies.
6.5 Agradecimentos
O autor gostaria de agradecer ao aluno de iniciação científica Christoffer Tenório Emídio
de Souza, autor de Souza (2007), pelo apoio na elaboração e na implementação do método proposto neste Capítulo. E ao colega de laboratório Rafael Vidal Aroca, pela ajuda na programação
em C++, utilizada no pós-processamento dos resultados das simplifiicações.
142
6 Simplificação de superfícies utilizando redes de Hopfield
143
7
Fixação 3D de objetos desconhecidos
7.1 Introdução
Como citadado anteriormente, a fixação é definida como a aplicação de forças, realizadas
por garras robóticas sobre o objeto, capazes de mantê-lo em equilíbrio estático na presença, ou
não, de carregamentos externos. Quando os pontos de aplicação das forças são definidos a partir
da geometria 3D do objeto, a fixação é denominada como fixação 3D.
A fixação de objetos por garras robóticas tem sido explorada com a finalidade de realizar
diversas tarefas1 , e tem como precursor o trabalho realizado por Hanafusa e Asada (1977),
conforme discutido nos Capítulos 1 e 5. Nos primeiros trabalhos de investigação da fixação,
posteriores ao de Hanafusa e Asada (1977), esta é determinada a partir da forma 2D do objeto,
pois, a representação deste por uma única seção é satisfatória em muitos casos2 , e também, esta
consideração simplifica o mecanismo de determinação dos pontos de contato, o que dispensa
a utilização de recursos computacionais avançados e teorias sofisticadas. Estas características
relacionadas à fixação 2D ainda tem sido exploradas por pesquisadores no desenvolvimento de
sistemas de fixação de baixo custo e de rápido processamento (SANZ et al., 2005).
Contudo, pontos de contato definidos a partir da seção plana de um objeto podem ser inadequados para aqueles de geometria 3D complexa3 . No caso da fixação 2D, é possível apenas
determinar a direção normal à superfície com componente no plano da seção 2D, sendo que
a componente no plano transversal àquele não pode ser determinada. Então, para os casos de
objetos com geometria 3D complexa, é necessário considerar toda a superfície do objeto na
determinação dos pontos de contato, que por sua vez, é uma tarefa de maior complexidade que
a tarefa relativa na fixação 2D.
1A
descrição das tarefas em que se utilizam fixações por garras robóticas é realizada de forma completa no
Capítulo 1.
2 Os processos tradicionais de usinagem (torneamento, fresamento, furação, etc) geram peças que podem ser
representadas pela forma de uma única seção predominante.
3 Processos de fabricação como fundição, prototipagem 3D, conformação, entre outros, permitem a obtenção
de peças com geometria complexa.
7 Fixação 3D de objetos desconhecidos
144
A principal diferença entre a fixação 3D e a fixação 2D pode ser resumida pela maneira
de se representar a forma do objeto na etapa de determinação dos pontos de fixação. Porém,
quando se explora todas as etapas necessárias para se determinar uma fixação, tanto 2D quanto
3D, desde a aquisição dos dados até a execução da fixação, verifica-se que todas as etapas
comuns aos dois métodos apresentam algumas diferenças.
No Capítulo 1, estas diferenças foram apresentadas e discutidas, relembrando, elas estão
presentes: na forma de aquisição dos dados da cena em que se encontra o objeto, e conseqüentemente no dispositivo utilizado nesta etapa; nas técnicas de processamento dos dados, a fim de
se extrair a forma do objeto dos dados da cena; na teoria da fixação envolvida, pois o elevado
número de variáveis das equações de equilíbrio no caso da fixação 3D não permite que a teoria
da fixação 2D, desenvolvida a partir de diversas simplificações, seja diretamente utilizada; e
no método de seleção dos pontos de contato da fixação, que deve ser apropriado por dois motivos, pela quantidade de pontos que definem um objeto, que são maiores para o caso 3D, e pela
ocorrência de um número maior de incógnitas das equações de equilíbrio.
Todas estas diferenças entre a fixação 2D e 3D podem ser traduzidas como dificuldades a
serem transpostas no desenvolvimento e implementaçção da fixação 3D. De fato, ao se analisar
os trabalhos que propõem sistemas de fixação, 2D ou 3D, desde a proposta de Hanafusa e Asada
(1977), até as propostas recentes, pode-se verificar que o pleno desenvolvimento de sistemas de
fixação 3D foi possível apenas após meados da década de 1990.
O desenvolvimento destes sistemas ocorreu devido ao desenvolvimento dos dispositivos de
aquisição de profundidade de cenas, ou visão 3D, e dos algoritmos de processamento destes dados; devido ao desenvolvimento de uma teoria da fixação aplicável aos casos mais complexos;
devido ao desenvolvimento de garras mais complexas capazes de promover diferentes possibilidades de fixação; e devido também ao desenvolvimnento de recursos computacionais mais
poderosos.
Pode-se dizer então que o advento destas novas tecnologias e teorias permitiu o desenvolvimento da fixação 3D de objetos, e os trabalhos de maior destaque nesta linha são: Ade et al.
(1994), Fischer e Hirzinger (1997), Borst et al. (1999), Lee et al. (2002), Miller et al. (2003),
Wang et al. (2005), Damian et al. (2005), Morales et al. (2006b) e Yamazaki et al. (2006). Estes
trabalhos são descritos de maneira detalhada no Capítulo 1, e dentre eles, focou-se naqueles que
utilizam RNAs na determinação da fixação.
Para o caso da fixação 2D, alguns trabalhos destacam-se na utilização de RNAs para a fixação de objetos desconhecidos. A aplicações de redes neurais na fixação 2D é extensivamente
explorada no Capítulo 5, e resultados satisfatórios são obtidos tanto para o tempo de processa-
7.2 Teoria e equacionamento da fixação 3D
145
mento quanto para a qualidade das fixações determinadas.
Para o caso 3D, poucos trabalhos propõem RNAs para a determinação de pontos de fixação
de objetos. Pode-se dizer que a primeira proposta de redes neurais para o caso é apresentada por
Xu et al. (1990), que apresentam uma rede competitiva de Hopfield capaz de determinar pontos
de fixação para os casos 2D e 3D, porém resultados são apresentados somente para o caso 2D.
Outro trabalho que utiliza RNAs para o caso 3D é apresentado por Lee et al. (2002), que utilizam
redes MLP previamente treinadas com formas padrões, porém, novamente a capacidade em
determinação de pontos de contato para objetos de geometria 3D complexa não é comprovada.
Objetiva-se neste Capitulo estudar a capacidade das redes neurais na determinação de pontos de fixação 3D, e três diferentes métodos são propostos utilizando os resultados obtidos no
Capítulo 5 e nos trabalhos de Lee et al. (2002) e Xu et al. (1990). O Capítulo está organizado
na seguinte forma: na Seção 7.2 é apresentado o equacionamento da fixação 3D para dois e três
pontos de contato; a Seção 7.4 apresenta os quatro diferentes métodos de determinação da fixação 3D, por busca heurística (Seção 7.4.2), por redes competitiva de Hopfield (Seção 7.4.3), por
redes feedforward tipo RBF (Seção 7.4.4) e por redes RBF e redes de Hopfield (Seção 7.4.5).
Os resultados obtidos pelas diferentes configurações de RNAs são discutidos na Seção 7.5, onde
conclusões e propostas para trabalhos futuros também são apresentadas.
7.2 Teoria e equacionamento da fixação 3D
O equilíbrio estático do objeto na fixação 3D depende da posição em que o contato é realizado, do tipo de contato, e do número de dedos em contato. Nesta Seção o equacionamento do
equilíbrio estático do objeto na fixação 3D é apresentado segundo a teoria da fixação do Capítulo 3. Contudo, antes de realizar o equacionamento, é necessário definir e apresentar algumas
simplificações e hipóteses, e definir os sistemas de coordenadas envolvidas no equacionamento
da fixação 3D.
7.2.1 Simplificações e hipóteses
As simplificações e hipóteses consideradas para o equacionamento da fixação 3D são as
mesmas que aquelas consideradas para a fixação 2D. Relembrando, as simplificações e hipóteses são realizadas quanto aos objetos, quanto às garras, e quanto aos tipos de contato.
Os objetos são considerados rígidos com densidade constante, e com coeficiente de atrito
de Coulomb constante por toda a sua superfície. Sobre os dedos das garras considera-se que
7 Fixação 3D de objetos desconhecidos
146
existe deformação nas pontas durante o contato, portanto, considera-se o modelo de contato
macio. Contudo, considera-se que os carregamentos dos contatos ocorrem em apenas um ponto
da superfície do objeto. São consideradas fixações por dois e três pontos de contato.
7.2.2 Sistemas de coordenadas
Sistemas de coordenadas do objeto: o sistema de coordenadas do objeto O para a fixação
3D é definida da seguinte maneira. O centro co do sistema coincide com o centróide do objeto,
o eixo Xo é paralelo à direção do momento principal de inércia, e da mesma forma Yo e Zo são
paralelos ao segundo e terceiro momento principais de inércia respectivamente. A Figura 7.1
apresenta o sistema de coordenadas do objetos para uma forma 3D qualquer.
Figura 7.1: Definição do sistema de coordenadas do objeto para a Fixação 3D.
7.2 Teoria e equacionamento da fixação 3D
147
Sistema de coordenadas da fixação: antes de definir este sistema de coordenadas, é necessário
definir o centro de fixação ch . O ponto ch é determinado da mesma maneira que no caso da fixação 2D, pois para dois pontos de contato, o ponto ch está sobre a linha de ação dos dedos
no ponto médio entre os pontos de contato c1 e c2 , e para três pontos de contato, o ponto ch
está sobre o plano formado pelos pontos de contato c1 , c2 e c3 , e coincide com o ponto de encontro das linhas de ação la1 , la2 e la3 . O eixo Zh é paralelo à linha de ação la1 , o eixo Xh está
sobre o plano da fixação, e o eixo Yh é obtido pelo produto vetorial entre Zh e Xh . As Figuras
7.2(a) e 7.2(b) mostram os sistemas de coordenadas da fixação por dois e três pontos de contato,
respectivamente.
(a)
(b)
Figura 7.2: Sistema de coordenadas de uma fixação 3D.
7 Fixação 3D de objetos desconhecidos
148
Sistema de coordenadas do contato: dado um ponto de contato da fixação ci (i=1,2 para dois
pontos de fixação, e i=1,2,3 para três pontos de fixação) define-se o sistema de coordenadas do
contato com centro em ci e eixo Zi alinhado com a direção normal à superfície do objeto no
mesmo ponto. Não há regras para a escolha da direção de Xi e Yi , porém, recomenda-se sempre
que possível escolher a direção de Yi alinhado, ou o mais próximo possível, com a direção de Yh ,
ou então o mesmo para Xi e Xh . As Figuras 7.3(a) e 7.3(b) mostram os sistemas de coordenadas
dos contatos para as fixações por dois e três pontos de contato, respectivamente.
(a)
(b)
Figura 7.3: Sistemas de coordenadas dos contatos Ci para uma fixação 3D.
7.2 Teoria e equacionamento da fixação 3D
149
7.2.3 Equacionamento da fixação 3D por 2 pontos de contato
Para que a fixação seja estável, é necessário que as forças aplicadas pelos dedos da garra sejam capazes de equilibrar os carregamentos externos exercidos sobre o objeto, tais como a força
da gravidade e distúrbios externos. O equacionamento é realizado no sistema de coordenadas
da fixação e, desta maneira, as forças externas calculadas em outros sistemas de cordenadas
devem ser transformadas para o sistema de fixação.
No Capítulo 3, foi mostrado que o mapa da fixação G é capaz de transformar os carregamentos dos contatos (forças e momentos), em carregamentos equivalentes, descritos no sistema
de coordenadas da fixação. A transfomação é dada pela seguinte equação:
F h = G · F ci
(7.1)
em que F ci é o vetor formado pelas forças e momentos aplicados nos pontos de contato. O
modelo de contato considerado é o contato macio, que define as forças de contato como:
F ci = [ f1ci f2ci f3ci τci6 ],
(7.2)
sendo que f1ci e f2ci são as forças de atrito nas direções tangenciais ao contato, f3ci é a força
normal ao contato, e τ6ci é o momento de atrito na direção normal ao contato. As forças e os
momentos de atrito devem estar dentro do limite de escorregamento, ou cone de atrito, para que
seja possível executar a fixação.
A matriz G, definida como o mapa da fixação, é determinada por:
h RT
0
ci
G=
· B,
h
r̂ci ·hci R hci R
em que B é a base do tipo contato considerado:
⎡
1 0
⎢
⎢ 0 1
⎢
⎢
⎢ 0 0
B=⎢
⎢
⎢ 0 0
⎢
⎢ 0 0
⎣
0 0
0 0
(7.3)
⎤
⎥
0 0 ⎥
⎥
⎥
1 0 ⎥
⎥,
⎥
0 0 ⎥
⎥
0 0 ⎥
⎦
0 1
(7.4)
e hci R é a matriz de transformação homogênea do sistema de coordenadas da fixação H para o
sistema de coordenadas do contato Ci.
c(α1 )c(β1 )
s(α1 )c(β1 )
−s(β1 )
0
⎤
⎡
c(α2 )c(β2 )
s(α2 )c(β2 )
−s(β2 )
0
⎤
obtém-se:
F h = Gc1 · F c1 + Gc2 · F c2
(7.7)
Transformando os carregamentos dos contatos, descritos nos sistemas de coordenadas dos mesmos, para o sistema de coordenadas da fixação
sistema da fixação para o sistema de coordenadas do contato.
coordenadas da fixação. Os ângulos α , β e γ são os ângulos de Euler de rotações consecutivas em X, Y e Z, respectivamente, que transformam o
em que l e −l são as distâncias entre os pontos de contato c1 e c2 , respectivamente, e o centro da fixação ch , e são medidos no sistema de
⎥
⎢
⎥
⎢ c(α2 )s(β2 )s(γ2 ) − s(α2 )c(γ2 )
s(α2 )s(β2 )s(γ2 ) + c(α2 )c(γ2 )
c(β2 )s(γ2 )
0
⎥
⎢
⎥
⎢
⎥
⎢ c(α2 )s(β2 )c(γ2 ) + s(α2 )s(γ2 )
s(α2 )s(β2 )c(γ2 ) − c(α2 )s(γ2 )
c(β2 )c(γ2 )
0
c2
⎥
G =⎢
⎥
⎢
l · (s(α2 )c(β2 ))
l · (s(α2 )s(β2 )s(γ2 ) + c(α2 )c(γ2 ))
l · (s(α2 )s(β2 )c(γ2 ) − c(α2 )s(γ2 )) c(α2 )s(β2 )c(γ2 ) + s(α2 )s(γ2 ) ⎥
⎢
⎥
⎢
⎥
⎢
−l
·
(c(
α
)c(
β
))
−l
·
(c(
α
)s(
β
)s(
γ
)
−
s(
α
)c(
γ
))
−l
·
(c(
α
)s(
β
)c(
γ
)
+
s(
α
)s(
γ
))
s(
α
)s(
β
)c(
γ
)
−
c(
α
)s(
γ
)
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
⎦
⎣
0
0
0
c(β2 )c(γ2 )
(7.6)
e
⎥
⎢
⎥
⎢ c(α1 )s(β1 )s(γ1 ) − s(α1 )c(γ1 )
s(α1 )s(β1 )s(γ1 ) + c(α1 )c(γ1 )
c(β1 )s(γ1 )
0
⎥
⎢
⎥
⎢
⎥
⎢ c(α1 )s(β1 )c(γ1 ) + s(α1 )s(γ1 )
s(α1 )s(β1 )c(γ1 ) − c(α1 )s(γ1 )
c(β1 )c(γ1 )
0
c1
⎥
⎢
G =⎢
⎥
−l · (s(α1 )c(β1 ))
−l · (s(α1 )s(β1 )s(γ1 ) + c(α1 )c(γ1 )) −l · (s(α1 )s(β1 )c(γ1 ) − c(α1 )s(γ1 )) c(α1 )s(β1 )c(γ1 ) + s(α1 )s(γ1 ) ⎥
⎢
⎥
⎢
⎥
⎢
l
·
(c(
α
)c(
β
))
l
·
(c(
α
)s(
β
)s(
γ
)
−
s(
α
)c(
γ
))
l
·
(c(
α
)s(
β
)c(
γ
)
+
s(
α
)s(
γ
))
s(
α
)s(
β
)c(
γ
)
−
c(
α
)s(
γ
)
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
⎦
⎣
0
0
0
c(β1 )c(γ1 )
(7.5)
⎡
Substituindo os termos da equação 5.3 obtém-se:
150
7 Fixação 3D de objetos desconhecidos
7.2 Teoria e equacionamento da fixação 3D
151
As forças de contato escritas no sistema de coordenadas da fixação devem ser capazes de
equilibrar forças externas, também escritas no sistema de coordenadas da fixação.
Se as forças externas aplicadas no objeto, expressas no sistema de coordenadas de fixação,
são:
T
Fexh = Fex1h Fex2h Fex3h τ ex4h τ ex5h τ ex6h ,
(7.8)
então, para que aconteça o equilíbrio estático do obejto, a seguinte relação deve ser satisfeita:
Fexh + F h = 0
(7.9)
−Fexh = F h
(7.10)
ou:
O sistema acima apresenta as seis equações de equilíbrio do objeto quando dois dedos
exercem forças de contato e forças externas são aplicadas no objeto.
7.2.4 Equacionamento da fixação 3D por 3 pontos de contato
De forma similar ao caso da fixação 3D por dois pontos de contato, para uma fixação 3D
com três pontos de contato deseja-se que a seguinte relação seja satisfeita:
F h = G · F ci
(7.11)
tal que G e B são definidos da mesma forma que a definida na Seção 7.2.3.
Para o caso da fixação 3D por três pontos de contato, expandindo a Equação 7.11 obtém-se:
F h = Gc1 · F c1 + Gc2 · F c2 + Gc3 · F c3
em que Gc1 , Gc2 e Gc3 são dados pelas Equações 7.13, 7.14, e 7.15.
(7.12)
c(α1 )c(β1 )
s(α1 )c(β1 )
−s(β1 )
0
⎤
c(α2 )c(β2 )
s(α2 )c(β2 )
−s(β2 )
0
⎤
⎢
⎥
⎢ c(α2 )s(β2 )s(γ2 ) − s(α2 )c(γ2 )
⎥
s(
α
)s(
β
)s(
γ
)
+
c(
α
)c(
γ
)
c(
β
)s(
γ
)
0
2
2
2
2
2
2
2
⎢
⎥
⎢
⎥
⎢ c(α2 )s(β2 )c(γ2 ) + s(α2 )s(γ2 )
⎥
s(
α
)s(
β
)c(
γ
)
−
c(
α
)s(
γ
)
c(
β
)c(
γ
)
0
2
2
2
2
2
2
2
⎢
⎥
⎢
⎥
α
)s(
β
)s(
γ
)
α
)s(
β
)c(
γ
)
s(
s(
⎢
⎥
2
2
2
2
2
2
o
o
⎢ −l2 s(120o ) · (s(α2 )c(β2 ))
⎥
−l
s(120
)
·
s(120
)
·
α
)s(
β
)c(
γ
)
+
s(
α
)s(
γ
)
−l
c(
2
2
2
2
2
2
2
⎢
⎥
α
)c(
γ
)
α
)s(
γ
)
+c(
−c(
2
2
2
2
⎢
⎥
⎢
⎥
⎢
⎥
c(
c(
α
)s(
β
)s(
γ
)
α
)s(
β
)c(
γ
)
2
2
2
2
2
2
⎢
⎥
o
o
o
l
s(120
)
·
s(120
)
·
l
2
2
⎢ l2 s(120 ) · (c(α2 )c(β2 ))
⎥
⎢
s(α2 )s(β2 )c(γ2 ) − c(α2 )s(γ2 ) ⎥
−s(
+s(
α
)c(
γ
)
α
)s(
γ
)
2
2
2
2
o
⎢
⎥
−l2 c(120 ) · (−s(β2 ))
⎢
⎥
−l2 c(120o ) · (c(β2 )s(γ2 ))
−l2 c(120o ) · (c(β2 )c(γ2 ))
⎢
⎥
⎢
⎥
⎢
⎥
s(
s(
α
)s(
β
)s(
γ
)
α
)s(
β
)c(
γ
)
2
2
2
2
2
2
⎦
⎣
l2 c(120o ) · (s(α2 )c(β2 ))
l2 c(120o ) ·
l2 c(120o ) ·
c(β2 )c(γ2 )
+c(α2 )c(γ2 )
−c(α2 )s(γ2 )
(7.14)
Gc2 =
⎡
⎢
⎥
⎢ c(α1 )s(β1 )s(γ1 ) − s(α1 )c(γ1 )
⎥
s(α1 )s(β1 )s(γ1 ) + c(α1 )c(γ1 )
c(β1 )s(γ1 )
0
⎢
⎥
⎢
⎥
⎢ c(α1 )s(β1 )c(γ1 ) + s(α1 )s(γ1 )
⎥
s(α1 )s(β1 )c(γ1 ) − c(α1 )s(γ1 )
c(β1 )c(γ1 )
0
⎢
⎥
⎢
⎥
−l1 · (s(α1 )c(β1 ))
−l1 · (s(α1 )s(β1 )s(γ1 ) + c(α1 )c(γ1 )) −l1 · (s(α1 )s(β1 )c(γ1 ) − c(α1 )s(γ1 )) c(α1 )s(β1 )c(γ1 ) + s(α1 )s(γ1 ) ⎥
⎢
⎢
⎥
⎢
⎥
l
·
(c(
α
)c(
β
))
l
·
(c(
α
)s(
β
)s(
γ
)
−
s(
α
)c(
γ
))
l
·
(c(
α
)s(
β
)c(
γ
)
+
s(
α
)s(
γ
))
s(
α
)s(
β
)c(
γ
)
−
c(
α
)s(
γ
)
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1 ⎦
⎣
0
0
0
c(β1 )c(γ1 )
(7.13)
⎡
Gc1 =
152
7 Fixação 3D de objetos desconhecidos
c(α3 )c(β3 )
s(α3 )c(β3 )
−s(β3 )
0
⎤
O sistema apresenta seis equações de equilíbrio do objeto quando três dedos exercem forças de contato sobre o objeto.
−Fexh = F h
então para que aconteça o equilíbrio estático do obejto, a seguinte relação deve ser satisfeita:
T
Fexh = Fex1h Fex2h Fex3h τ ex4h τ ex5h τ ex6h ,
sistema de coordenadas. Se as forças externas aplicadas no objeto, expressas no sistema de coordenadas de fixação, são:
(7.17)
(7.16)
contato. As forças de contato escritas no sistema de coordenadas da fixação devem ser capazes de equilibrar forças externas, escritas no mesmo
ângulos de Euler de rotações consecutivas em X, Y e Z, respectivamente, que transformam o sistema da fixação para o sistema de coordenadas do
em que l1 , l2 e l3 são as distâncias entre os pontos de contato c1 , c2 e c3 , respectivamente, e o centro da fixação ch . Os ângulos α , β e γ são os
⎢
⎥
⎢ c(α3 )s(β3 )s(γ3 ) − s(α3 )c(γ3 )
⎥
s(α3 )s(β3 )s(γ3 ) + c(α3 )c(γ3 )
c(β3 )s(γ3 )
0
⎢
⎥
⎢
⎥
⎢ c(α3 )s(β3 )c(γ3 ) + s(α3 )s(γ3 )
⎥
s(
α
)s(
β
)c(
γ
)
−
c(
α
)s(
γ
)
c(
β
)c(
γ
)
0
3
3
3
3
3
3
3
⎢
⎥
⎢
⎥
s(
s(
α
)s(
β
)s(
γ
)
α
)s(
β
)c(
γ
)
⎢
⎥
3
3
3
3
3
3
o
o
⎢ −l3 s(240o ) · (s(α3 )c(β3 ))
⎥
−l
s(240
)
·
s(240
)
·
α
)s(
β
)c(
γ
)
+
s(
α
)s(
γ
)
−l
c(
3
3
3
3
3
3
3
⎢
⎥
+c(
−c(
α
)c(
γ
)
α
)s(
γ
)
3
3
3
3
⎢
⎥
⎢
⎥
⎢
⎥
c(
c(
α
)s(
β
)s(
γ
)
α
)s(
β
)c(
γ
)
3
3
3
3
3
3
⎢
⎥
o
o
o
l
l
s(240
)
·
s(240
)
·
3
3
⎢ l3 s(240 ) · (c(α3 )c(β3 ))
⎥
⎢
s(α3 )s(β3 )c(γ3 ) − c(α3 )s(γ3 ) ⎥
−s(
+s(
α
)c(
γ
)
α
)s(
γ
)
3
3
3
3
o
⎢
⎥
−l3 c(240 ) · (−s(β3 ))
⎢
⎥
−l3 c(240o ) · (c(β3 )s(γ3 ))
−l3 c(240o ) · (c(β3 )c(γ3 ))
⎢
⎥
⎢
⎥
⎢
⎥
s(
s(
α
)s(
β
)s(
γ
)
α
)s(
β
)c(
γ
)
3
3
3
3
3
3
⎣
⎦
l3 c(240o ) · (s(α3 )c(β3 ))
l3 c(240o ) ·
l3 c(240o ) ·
c(β3 )c(γ3 )
+c(α3 )c(γ3 )
−c(α3 )s(γ3 )
(7.15)
Gc3 =
⎡
7.2 Teoria e equacionamento da fixação 3D
153
7 Fixação 3D de objetos desconhecidos
154
7.3 Verificação da condição force-closure e avaliação da fixação 3D
Como citado anteriormente, se uma fixação é capaz de equilibrar qualquer carregamento
externo, então esta fixação é denominada force-closure. Uma das possíveis maneiras de se verificar se uma fixação é force-closure é a partir da análise da envolvente convexa do carregamento
equivalente daqueles aplicados nos pontos de contato.
A envolvente convexa das forças é construída com as direções das forças, que podem ser
exercidas nos contatos, descritas no sistema de coordenadas da fixação, ou do objeto. A envolvente convexa dos momentos é construída com as direções dos momentos de atrito e dos
momentos gerados pelas forças que podem ser exercidas no contato. Estes momentos também
devem ser descritos no sistema de coordenadas da fixação, ou do objeto.
Desta forma, duas envolventes convexas são construídas. A envolvente convexa das forças,
é utilizada para verificar se a fixação é capaz de resistir aos carregamentos externos puramente
lineares. Se a envolvente convexa das forças contiver a origem do sistema em que é construída,
então a fixação é capaz de resistir a qualquer carregamento puramente linear. A envolvente convexa dos momentos é utilizada para verificar a capacidade da fixação de resistir a carregamento
externos puramente torcionais. Se a envolvente convexa dos momentos contiver a origem, então
a fixação é capaz de resistir a qualquer carregamento puramente torcional.
Se as duas envolventes contiverem suas respectivas origens, então a fixação é force-closure.
Nas Figuras 7.4 e 7.5 são apresentados dois exemplos de envolventes convexas de fixações
force-closure para fixação por dois e três pontos de contato, respectivamente.
A partir das envolventes convexas de uma fixação, também é possível determinar uma medida de qualidade para a fixação. Esta qualidade pode ser determinada pela menor distância
entre o centro da envolvente convexa e a superfície da envolvente convexa. O ponto da superfície da envolvente convexa em que ocorre a menor distância representa a direção normal do
menor carregamento, em módulo, necessário para desequilibrar o objeto. Esta relação é válida
tanto para o carregamento puramente linear (forças), quanto para o carregamento puramente
torcional (momentos), porém o ponto em que ocorre a mínima distância não é o mesmo nas
duas envolventes.
Para o caso em que se constrói apenas uma envolvente convexa de dimensão seis, a qualidade da fixação é determinada pela menor distância Euclidiana entre o centro do sistema e a
superfície da envolvente convexa.
7.3 Verificação da condição force-closure e avaliação da fixação 3D
155
Figura 7.4: Exemplos de envolventes convexas para uma fixação 3D por dois pontos de contato.
Figura 7.5: Exemplos de envolventes convexas para uma fixação 3D por três pontos de contato.
7 Fixação 3D de objetos desconhecidos
156
7.4 Métodos de seleção de pontos de contato
Na fixação, o equilíbrio do objeto deve ser estabelecido e mantido, ou seja, as Equações 7.10
e 7.17 devem ser satisfeitas. Ambas as equações apresentam diversas incógnitas, que superam
o número de equações, portanto, não existe uma única solução capaz de garantir o equilíbrio do
objeto.
Na Seção 7.3, foi apresentado o método de verificação da propriedade force-closure de
uma fixação. A verificação desta propriedade permite verificar a capacidade de uma fixação de
resistir a qualquer carregamento externo sem a necessidade de resolução das Equações 7.10 e
7.10, pois, a verificação é realizada apenas a partir da geometria da fixação. Na mesma Seção,
também são apresentadas as medidas da qualidade de uma fixação force-closure, que permitem
avaliar e comparar quantitativamente diferentes fixações.
Os diferentes métodos de seleção de pontos de contato4 utilizam as medidas de qualidade
da fixação, ou outras métricas também relacionadas à geometria da fixação e ao equilibrio do
objeto, a fim de determinar, para um determinado objeto, pontos adequados de fixação.
São inúmeros os métodos propostos para se determinar pontos de contato a partir da geometria do objeto, e eles podem ser constituídos desde métodos exaustivos de busca pela melhor
fixação, até métodos complexos baseados em algoritmos avançados, como redes neurais (XU et
al., 1990) e algoritmos genéticos (LEE; LEE, 2003).
O método proposto neste Capítulo é similar àquele proposto no Capítulo 5 para a fixação
2D, e o mesmo é composto pela integração de diferentes métodos, sendo eles: busca heurística,
otimização por redes de Hopfield, redes feedforward, e redes feedforward e de Hopfield combinadas. Os quatro métodos são detalhados nas próximas Seções, e resultados na determinação
de fixações para dois e três dedos de contato são apresentados.
7.4.1 Simplificações e hipóteses
Além das simplificações e hipóteses consideradas para o equacionamento da fixação 3D por
dois e três pontos de contato, é preciso considerar algumas simplificações e hipóteses complementares para a descrição dos métodos avaliados. Neste caso, as considerações são realizadas
principalmente quanto aos objetos a ser fixados.
Considera-se que os objetos são convexos, ou apresentam regiões côncavas que não são
representativas ou que não modificam a forma geral do objeto. Não existem faces ocultas, ou
4 Os
métodos de seleção de pontos de contato são tambérm denominados de planejadores da fixação.
7.4 Métodos de seleção de pontos de contato
157
seja, toda a superfície é satisfatoriamente representada pela nuvem de pontos e pela sua malha
superficial.
Devido à indisponibilidade de um sistema de visão 3D capaz de mapear toda a superfícies
do objeto no momento do desenvolvimento do trabalho, e pelo fato de que o estudo de sistemas de visão 3D e reconstrução de objetos não ser o escopo deste trabalho5 , utilizou-se nas
simulações e testes dos métodos implementados modelos sintéticos de objetos, em sua maioria
de forma abstrata, obtidos por um software CAD, e utilizou-se também modelos obtidos de
repositórios de modelos virtuais disponível na internet.
Considerou-se também que o objeto está apoiado em um plano e que qualquer fixação é
exeqüível nos pontos não pertencentes ao plano em contato com o apoio, mesmo se houver
alguma possível colisão na execução da fixação. A fixação é preferencialmente realizada com
a aproximação da garra pelo topo do objeto. A consideração da direção de aproximação na
fixação reduz o número de possibilidade de fixação, mas de forma geral, esta consideração não
é essencial.
Também é necessário simplificar a forma do objeto, pois, na maioria dos casos, a grande
quantidade de dados torna também elevado o número de possibilidades de fixações, o que implica em custos de processamento (recursos computacionais e tempo). Para reduzir o número de
dados, e conseqüentemente o número de combinação de fixações e os recursos necessários para
o processamento, utiliza-se o método de simplificação de superfícies apresentado no Capítulo
6.
Para os metódos de determinação da fixação por busca heurística e por redes de Hopfield,
pode-se utilizar diretamente o método de simplificação proposto. Porém, para os casos em que
se utiliza redes neurais feedforward na determinação da fixação, é necessário normalizar os
dados de entrada da rede.
A normalização de entrada da rede consiste em uma translação seguida de uma rotação
e um redimensionamento para que o centróide do objeto seja coincidente com o sistema de
coordenadas global, para que a maior dimensão do objeto esteja na direção x do mesmo sistema
de coordenadas, e para que a maior dimensão seja unitária. E ainda, simplifica-se o objeto como
parte da normalização das entradas da rede.
Para a simplificação, dividi-se o objeto em seções específicas, e utiliza-se a capacidade do
método de simplificação de trabalhar com regiões limitadas a fim de simplificar cada seção
específica. Na divisão do objeto em seções específicas, utiliza-se um sistema de coordenadas
5 Alguns
trabalhos como Gois (2004) e Polizzeli (2008) dedicam-se ao estudo deste sistemas.
7 Fixação 3D de objetos desconhecidos
158
cilíndricas auxiliar, concêntrico com o sistema de coordenadas do objeto, cujos eixos ’z’ são
paralelos, e divide-se o objeto em camadas na direção perpendicular ao eixo z.
Cada uma das diferentes camadas é subdividida segundo o ângulo θ do sistema de coordenadas auxiliar. Os pontos que pertencem a um mesmo subgrupo de uma camada formam
uma seção específica. Desta forma, o objeto é dividido em seções específicas, porém, os grupos
pertencentes a extremidade inferior, aquela em contato com a superfície de apoio do objeto, são
descartados pela consideração de que não é possível realizar uma fixação nas proximidades do
apoio.
Cada subgrupo de pontos que compõem uma seção específica é simplificado por um único
ponto. O ponto selecionado na simplificação é aquele que melhor representa a seção específica. O conjunto de pontos resultante da simplificação de todas as seções específicas formam a
entrada da rede neural feedforward.
Para avaliar e apresentar as fixações determinadas pelos diferentes métodos avaliados, são
apresentadas as respostas obtidas para oito objetos de teste. As Figuras 7.6 e 7.7 apresentam
os objetos de teste da fixação 3D, e a Tabela 7.1 mostra os tempos de simplificação obtidos
utilizando a estratégia descrita nos parágrafos anteriores. E ainda, uma extensa base de dados, constituída por 11700 objetos 3D de formas abstratas, também foi utilizada para avaliar a
capacidade de cada método em determinar fixações force-closure.
(a)
(b)
Figura 7.6: Formas de objetos, que são representadas por uma malha superficial, utilizadas
nas simulações dos métodos de determinação de pontos de fixação 3D. Os objetos representam
algumas formas abstratas e alguns objetos do cotidiano (parte 1 de 2).
7.4 Métodos de seleção de pontos de contato
159
(a)
(b)
(c)
(d)
(e)
(f)
Figura 7.7: Formas de objetos, que são representadas por uma malha superficial, utilizadas
nas simulações dos métodos de determinação de pontos de fixação 3D. Os objetos representam
algumas formas abstratas e alguns objetos do cotidiano (parte 2 de 2).
7 Fixação 3D de objetos desconhecidos
160
Tabela 7.1: Tabela de tempos de simplifcação das superfícies dos objetos das Figuras 7.6 e 7.7.
Objeto
No Vértices
Figura 7.6(a)
843
Figura 7.6(b)
1363
Figura 7.7(a)
1541
Figura 7.7(b)
4213
Figura 7.7(c)
5975
Figura 7.7(d)
1771
Figura 7.7(e)
2289
Figura 7.7(f)
1053
No Triângulos Tempo de simplificação[s]
1350
0,7528
2562
1,2686
2987
1,5147
6594
10,465
11765
21,904
3008
1,3619
3985
1,6993
1709
3,9168
7.4.2 Fixação 3D por Busca Heurística
A qualidade de uma fixação pode também ser estimada por uma função custo calculada
a partir das relações geométricas da fixação e de critérios específicos para diferentes casos.
Para um objeto qualquer, que apresenta diversas fixações possíveis, cada fixação apresenta uma
função custo.
Na busca heurística, a função custo é determinada para todas as possíveis combinações de
fixação, e então, é selecionada como a fixação mais adequada para o objeto aquela que apresentar a melhor função custo. O processo de busca pode ser ainda otimizado pelo estabelecimento
de um limiar de busca, assim, quando alguma fixação atingir o limiar, seleciona-se esta fixação
como a mais adequada e finaliza-se a busca.
Pode-se então determinar através de uma busca heurística uma fixação adequada, e se na
função custo for utilizada as medidas de qualidade da fixação obtidas a partir da sua envolvente conexa, pode-se conseguir uma fixação force-closure de qualidade. Apesar da capacidade
de se determinar fixações com a busca heurística, o mecanismo de busca exige recursos computacionais, e em geral, o processamento desta etapa é computacionalmente custoso. Com o
objetivo de se reduzir os recursos computacionais e tempos de processamento, diferentes estratégias de busca podem ser adotadas, e neste caso, utiliza-se a estratégia de reduzir o número
de possíveis fixações como conseqüência da simplificação da superfície do objeto.
A busca heurística é implementada para se determinar dois e três pontos de fixação para os
objetos de teste6 . Antes da busca, cada objeto é simplificado pelo método proposto no Capítulo
6, e a busca é realizada. Para os dois casos de fixação, por dois ou três pontos de contato, a
diferença na implementação da busca é a função custo relacionada à fixação.
6 Os
objetos de testes selecionados são constituídos por algumas formas abstratas e objetos do cotidiano
7.4 Métodos de seleção de pontos de contato
161
Fixação por 2 contatos
A superfície simplificada do objeto contém pontos, que quando combinados em pares, formam as possíveis fixações para o objeto. Para cada possível fixação, a seguinte função custo é
relacionada:
fcusto = A · Σθi + B · d(co , la ) +C · abs(αI − αla ) + D · abs(γ ),
(7.18)
em que θi é o ângulo entre a direção normal à superfície ao ponto de contato (vide Figura 7.8),
ci e a linha de ação la , d(co , la ) é a distância entre o centróide do objeto e a linha de ação,
abs(αI − αla ) é a diferença angular entre a direção da linha de ação e a direção do momento
principal de inércia, e γ é o cosseno diretor da linha de ação com o eixo z. Os pesos A, B, C, D
são escalares que ponderam os termos da Equação 7.18.
Figura 7.8: Definição dos ângulos θ1 e θ2 entre as linhas de ação la e os eixos Z dos sistemas
de coordenadas C1 e C2 respectivamente.
Os termos de fcusto estão relacionados com a estabilidade da fixação, uma fixação estável é
aquela que apresenta a menor função custo, ou seja, apresenta o mínimo somatório dos termos.
Cada termo está relacionado com uma característica específica da fixação. O termo θi está
relacionado com o cone de atrito. Quando este termo apresenta valor elevado, as forças de
atrito na fixação são consideráveis, quando o termo é pequeno, a força de contato tem direção
próxima à direção da normal ao contato. O termo d(co , la ) está relacionado aos momentos, em
relação ao centróide do objeto, gerados pela aplicação das forças de contato, e deseja-se que a
7 Fixação 3D de objetos desconhecidos
162
linha de ação da fixação esteja próxima ao centróide do objeto. O termo abs(αI − αla ) relaciona
a direção da fixação com direção do momento principal de inércia do objeto, deseja-se que
estejam alinhados o máximo possível para minimizar os efeitos de inércia. O termo auxiliar
abs(γ ) é o angulo da linha de ação com a direção z (normal à superfície de apoio do objeto)
como o objeto deve ser fixado preferencialmente pelo seu topo, este termo penaliza fixações nas
outras direções, desde que exista alguma satisfatória na direção z.
A busca heurística por dois pontos de contato foi implementada no computados de testes,
e fixações foram determinadas para os objetos de teste. Na implementação foram utilizados os
pesos A = 200, B = 90, C = 150 e D = 507 , e as respostas obtidas são apresentadas nas Figuras
7.9, 7.10 e 7.11.
(a)
(b)
(c)
(d)
(e)
(f)
Figura 7.9: Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação,
para objetos do cotidiano e abstratos, utilizando o método de busca heurística (parte 1 de 3).
7 Os
valores de A, B, C e D foram determinados empiricamente.
7.4 Métodos de seleção de pontos de contato
163
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figura 7.10: Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação,
para objetos do cotidiano e abstratos, utilizando o método de busca heurística (parte 2 de 3).
7 Fixação 3D de objetos desconhecidos
164
(a)
(b)
(c)
(d)
(e)
(f)
Figura 7.11: Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação,
para objetos do cotidiano e abstratos, utilizando o método de busca heurística (parte 3 de 3).
Os tempos de processamento da fixação 3D por dois pontos de contato utilizando a busca
heurística foram medidos e são apresentados na Tabela 7.2.
Tabela 7.2: Tabela do tempo de execução do algoritmo de busca heurística para fixação 3D por
dois pontos de contato dos objetos das Figuras 7.9, 7.10 e 7.11.
Figura 7.9(a)
Figura 7.9(d)
Figura 7.10(a)
Figura 7.10(d)
Figura 7.10(g)
Figura 7.10(j)
Figura 7.11(a)
Figura 7.11(d)
Busca heurística [s]
1,3927
1,2795
1,2824
1,2474
1,2735
1,2751
1,2572
1,2865
Também se utilizou a base de objetos 3D para avaliar o desempenho da busca heurística
na determinação de dois pontos de fixação. Nos testes foi possível determinar uma fixação
force-closure para todos os objetos.
7.4 Métodos de seleção de pontos de contato
165
Fixação por 3 contatos
Para o caso de três pontos de contato, as possíveis fixações são formadas pelos conjuntos
de três diferentes pontos. Cada possível fixação é avaliada pela seguinte função custo:
fcusto = A · Σθi + B · d(co , ch ) +C · abs(γ )
(7.19)
em que θi é o ângulo entre a direção normal à superfície ao ponto de contato ci e a linha de
ação lai , d(co , ch ) é a distância entre o centróide do objeto e o centro de fixação, e γ é o cosseno
diretor do ângulo entre a normal ao plano de fixação e o eixo z. Os pesos A, B, C são escalares
que ponderam os parâmetros da Equação 7.19.
Figura 7.12: Definição dos ângulos θ1 , θ2 e θ3 entre as linhas de ação la1 , la2 e la3 e os eixos
Z dos sistemas de coordenadas C1 , C2 e C3 respectivamente.
Todos os termos da Equação 7.19 têm o mesmo significado, quanto à estabilidade da fixação, que os termos da Equação 7.18. A exceção é a ausência do termo que relaciona a posição
da fixação com o momento de inércia. No caso da fixação por três contatos, este termo não
tem significado, pois, a disposição dos contatos garante que qualquer configuração seja capaz
de reduzir aos efeitos de inércia.
7 Fixação 3D de objetos desconhecidos
166
A busca heurística por três pontos de contato foi implementada no computados de testes,
e fixações foram determinadas para os objetos de teste. Na implementação foram utilizados os
pesos A = 100, B = 50 e C = 1508 . Os pontos de contato obtidos para os objetos de testes são
mostrados nas Figuras 7.13, 7.14 e 7.15.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
Figura 7.13: Vista frontal, superior e em perspectiva da determinação de três pontos de fixação,
para objetos do cotidiano e abstratos, utilizando o método de busca heurística (parte 1 de 3).
8 Os
valores de A, B e C foram determinados empiricamente.
7.4 Métodos de seleção de pontos de contato
167
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figura 7.14: Vista frontal, superior e em perspectiva da determinação de três pontos de fixação,
para objetos do cotidiano e abstratos, utilizando o método de busca heurística (parte 2 de 3).
7 Fixação 3D de objetos desconhecidos
168
(a)
(b)
(c)
Figura 7.15: Vista frontal, superior e em perspectiva da determinação de três pontos de fixação,
para objetos do cotidiano e abstratos, utilizando o método de busca heurística (parte 3 de 3).
Os tempos de processamento da busca heurística por três pontos de contato também foram
medidos para os objetos de testes, e os mesmos são apresentados na Tabela 7.2.
Tabela 7.3: Tabela do tempo de execução do algoritmo de busca heurística para fixação 3D por
três pontos de contato dos objetos das Figuras 7.13 e 7.14.
Figura 7.13(a)
Figura 7.13(d)
Figura 7.13(g)
Figura 7.14(a)
Figura 7.14(d)
Figura 7.14(g)
Figura 7.14(j)
Figura 7.15(a)
Busca heurística [s]
35,49620
114,5424
89,92680
34,00910
120,0924
87,60460
81,60400
81,12600
No teste com os objetos da bases de dados, os resultados obtidos com a busca heurística por
três pontos de contato foi similar ao resultado da busca heurística por dois pontos de contato,
ou seja, foi possível determinar uma fixação force-closure para todos os 11700 objetos testados.
7.4.3 Fixação 3D por otimização utilizando redes competitivas de Hopfield
A determinação de pontos de contato por busca heurística exige que todas as possíveis
fixações sejam avaliadas. Este procedimento não é otimizado, sendo que inúmeras combinações
são avaliadas, mesmo depois da avaliação daquela que será considerada a melhor fixação. O
mecanismo de busca pode ser otimizado utilizando-se a rede competitiva de Hopfield. Neste
caso, a arquitetura da rede, o processo iterativo e os critérios de convergência são utilizados na
tentativa de acelerar o processo de busca e de reduzir o número de avaliações realizadas, muitas
delas desnecessárias.
7.4 Métodos de seleção de pontos de contato
169
A rede competitiva proposta é semelhante àquela desenvolvida para a fixação 2D, tendo
apenas como diferença as funções custo relacionadas às fixações, que neste caso são as funções
das Equações 7.18 e 7.19, respectivamente para dois e três pontos de contato.
A rede de Hopfield é capaz de encontrar mínimos de energia, que correspondem a fixações
satisfatórias. O mínimo de energia pode ser local ou global, sendo que a convergência depende
da sua inicialização. Neste caso particular, nenhum método é utilizado para determinar a inicialização da rede, que é realizada escolhendo-se a ativação eqüidistante dos neurônios.
A rede foi implementada no computador de teste e fixações por dois e três pontos de contato
foram determinadas para os objetos de teste. Os resultados obtidos são mostrados nas Figuras
7.16, 7.17 e 7.18.
Fixação por 2 contatos
(a)
(b)
(c)
(d)
(e)
(f)
Figura 7.16: Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação,
para objetos do cotidiano e abstratos, utilizando o método de otimização por redes de Hopfield
(parte 1 de 3).
7 Fixação 3D de objetos desconhecidos
170
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figura 7.17: Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação,
para objetos do cotidiano e abstratos, utilizando o método de otimização por redes de Hopfield
(parte 2 de 3).
7.4 Métodos de seleção de pontos de contato
171
(a)
(b)
(c)
(d)
(e)
(f)
Figura 7.18: Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação,
para objetos do cotidiano e abstratos, utilizando o método de otimização por redes de Hopfield
(parte 3 de 3).
Os tempos de processamento foram medidos e são apresentados na Tabela 7.4. Pode-se
observar a redução do tempo de processamento em comparação com os valores apresentados
na Tabela 7.2, porém, pode-se observar também a redução do desempenho na determinação de
fixações force-closure, pois, no teste com os objetos da base de dados, foi possível determinar
84,2% de fixações satisfatórias.
Tabela 7.4: Tabela do tempo de determinação da fixação 3D por dois contatos utilizando redes
de Hopfield. Tempos para as Figuras 7.16, 7.17 e 7.18.
Figura 7.16(a)
Figura 7.16(d)
Figura 7.17(a)
Figura 7.17(d)
Figura 7.17(g)
Figura 7.17(j)
Figura 7.18(a)
Figura 7.18(f)
Rede de Hopfield [s]
0,2819
0,5040
0,2025
0,3464
0,3054
0,3278
0,2411
0,2523
7 Fixação 3D de objetos desconhecidos
172
Fixação por 3 contatos
O método de determinação de fixação 3D por redes de Hopfield também foi implementado
para a determinação de três pontos de fixação. Os resultados obtidos são apresentados nas
Figuras 7.19, 7.20 e 7.21.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
Figura 7.19: Vista frontal, superior e em perspectiva da determinação de três pontos de fixação,
para objetos do cotidiano e abstratos, utilizando o método de otimização por redes de Hopfield
(parte 1 de 3).
7.4 Métodos de seleção de pontos de contato
173
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figura 7.20: Vista frontal, superior e em perspectiva da determinação de três pontos de fixação,
para objetos do cotidiano e abstratos, utilizando o método de otimização por redes de Hopfield
(parte 2 de 3).
7 Fixação 3D de objetos desconhecidos
174
(a)
(b)
(c)
Figura 7.21: Vista frontal, superior e em perspectiva da determinação de três pontos de fixação,
para objetos do cotidiano e abstratos, utilizando o método de otimização por redes de Hopfield
(parte 3 de 3).
Os tempos de execução foram medidos e são apresentados na Tabela 7.5. Similar aos
resultados obtidos com a rede de Hopfield na fixação 3D por dois pontos de contato, para o
caso de três pontos de contato houve uma redução significativa no tempo de processamento,
porém com redução do desempenho da rede, pois, nos testes com os objetos da base de dados,
foram obtidas 77,6% de fixações satisfatórias.
Tabela 7.5: Tabela do tempo de determinação da fixação 3D por três pontos de contato utilizando otimização com redes de Hopfield. Os tempos foram medidos para os objetos das
Figuras 7.19, 7.20 e 7.21.
Figura 7.19(a)
Figura 7.19(d)
Figura 7.19(g)
Figura 7.20(a)
Figura 7.20(d)
Figura 7.20(g)
Figura 7.20(j)
Figura 7.21(c)
Rede de Hopfield [s]
4,4257
2,1885
3,8546
5,0939
3,7056
3,6894
3,5502
5,4816
7.4.4 Fixação 3D por redes feedforward tipo RBF
A determinação de pontos de contato para a fixação 3D também pode ser realizada por redes
neurais feedforward. Para tanto, é necessário treinar a rede neural com padrões geométricos e
seus respectivos melhores pontos de fixação.
A utilização de redes neurais na determinação da fixação é amplamente investigada para
o caso 2D (XU et al., 1990; VALENTE, 1999; PEDRO; CAURIN, 2008). Para o caso da
fixação 3D, poucos trabalhos investigam o comportamento das redes na determinação de pontos
7.4 Métodos de seleção de pontos de contato
175
de contato, contudo, destaca-se nesta área o trabalho de Lee et al. (2002), que utiliza redes
feedforward tipo MLP na determinação de pontos de contato para uma garra robótica de três
dedos.
Resultados preliminares9 mostram que os resultados das redes tipo RBF e MLP são equivalentes quanto à qualidade das respostas, porém, as redes MLP apresentam tempo de treinamento
elevados em comparação com o treinamento das redes RBF10 .
Desta forma, utiliza-se uma rede RBF na determinação da fixação, pois se deseja tempos reduzidos de treinamento. A determinação da fixação por uma rede feedforward pode ser dividida
em duas etapas distintas: treinamento e execução.
Na etapa de treinamento, é necessário selecionar padrões geométricos para o treino, que podem ser específicos para uma determinada aplicação, ou que podem ser variados para aplicações
em geral. Como se deseja que a rede apresente capacidade de fixar uma grande variedade de
objetos, utiliza-se no treinamento representantes de três classes geométricas, cubos, cilindros
e elipsóides (Figura 7.22). Para completar os dados de treinamento, os pontos de fixação de
cada um dos objetos são selecionados pelo método de busca heurística. Todos os dados de treinamento (entradas e saídas) devem ser normalizados segundo a descrição realizada na Seção
7.4.1.
Figura 7.22: Padrões de treinamento para a rede feedforward tipo RBF para a fixação 3D.
9 Os
resultados da comparação entre o comportamento das redes feedforward tipo MLP e RBF estão omitidos,
pois seria necessário dedicar um Capítulo para apresentá-los.
10 Os resultados da comparação entre os tempos de treinamento das redes RBF e MLP para a fixação 3D são
coerentes com aqueles obtidos na mesma comparação para o caso da fixação 2D.
7 Fixação 3D de objetos desconhecidos
176
Na etapa de execução, a superfície do objeto é simplificada, e cada ponto da simplificação
é uma das entradas da rede. As entradas devem receber a mesmo normalização que aquela
realizada para os padrões geométricos na etapa de treinamento, e as respostas obtidas com
a rede devem sofrer as transformações inversas daquelas da normalização, a fim de se obter
resultados corentes com o objeto original.
Fixação por 2 contatos
Uma rede neural RBF foi treinada para determinar dois pontos de fixação, e os resultados
obtidos para os objetos de testes são mostrados nas Figuras 7.23, 7.24 e 7.25.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
Figura 7.23: Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo RBF previamente
treinadas (parte 1 de 3).
7.4 Métodos de seleção de pontos de contato
177
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figura 7.24: Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo RBF previamente
treinadas (parte 2 de 3).
7 Fixação 3D de objetos desconhecidos
178
(a)
(b)
(c)
Figura 7.25: Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo RBF previamente
treinadas (parte 2 de 3).
Os tempos de processamento da rede RBF na determinação de dois pontos de contato também foram medidos. A Tabela 7.6 apresenta os tempos de processamento observados, e pode-se
observar que os mesmo são inferiores àqueles observados nas Tabelas 7.2 e 7.4, porém, como
conseqüência observa-se a redução do desempenho da rede, pois, nos testes com os objetos da
base de dados, foram obtidas apenas 34,6% de fixações satisfatórias.
Tabela 7.6: Tabela do tempo de determinação da fixação 3D por dois pontos de contatos utilizando RNAs tipo RBF para os objetos das Figuras 7.23, 7.24 e 7.25.
Figura 7.23(a)
Figura 7.23(d)
Figura 7.23(g)
Figura 7.24(a)
Figura 7.24(d)
Figura 7.24(g)
Figura 7.24(j)
Figura 7.25(c)
Rede RBF [s]
0,0196
0,0212
0,0213
0,0204
0,0299
0,0201
0,0210
0,0190
Fixação por 3 contatos
Uma rede feedforward tipo RBF também foi implementada para a determinação de três
pontos de fixação de objetos 3D. As Figuras 7.26, 7.27 apresentam os resultados obtidos para
os objetos de testes.
7.4 Métodos de seleção de pontos de contato
179
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figura 7.26: Vista frontal, superior e em perspectiva da determinação de três pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo RBF previamente
treinadas (parte 1 de 2).
.
7 Fixação 3D de objetos desconhecidos
180
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figura 7.27: Vista frontal, superior e em perspectiva da determinação de três pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo RBF previamente
treinadas (parte 2 de 2).
7.4 Métodos de seleção de pontos de contato
181
Os tempos de processamento da rede RBF para a determinação de três pontos de contato
para o caso 3D foram medidos e são apresentados na Tabela 7.7. Ao comparar os valores com
aqueles apresentados nas Tabelas 7.3 e 7.5, pode-se verificar uma redução significativa do tempo
de processamento, porém o desempenho da rede também é reduzido, sendo que apenas 51,9%
das fixações determinadas para os objetos da base de dados foram satisfatórias.
Tabela 7.7: Tabela do tempo de determinação da fixação 3D por três pontos de contatos utilizando RNAs tipo RBF para os objetos das Figuras 7.26 e 7.27 .
Figura 7.26(a)
Figura 7.26(d)
Figura 7.26(g)
Figura 7.26(j)
Figura 7.27(a)
Figura 7.27(d)
Figura 7.27(g)
Figura 7.27(l)
Rede RBF [s]
0,0615
0,0218
0,0261
0,0217
0,0251
0,0226
0,0245
0,0263
7.4.5 Fixação 3D por redes feedforward e de Hopfield combinadas
Pode ser verificado, tanto para a fixação 2D, quanto para a fixação 3D, que as redes competitivas de Hopfield geram fixações satisfatórias, porém a resposta, na maioria das vezes, não
corresponde ao mínimo global. Como a função custo utilizada é a mesma que aquela da busca
heurística, ao se comparar o resultado de um mesmo objeto para os diferentes métodos, pode-se
verificar que a fixação determinada pela busca heurística, que corresponde ao mínimo global, é
diferente da fixação determinada pela rede de Hopfield. Pode-se observar também que as redes
feedforward apresentam resultados próximos àqueles que seriam adequados para fixação. Este
tipo de resposta é característico da capacidade de generalização da rede feedforward, que ocorre
em detrimento da capacidade de precisão da resposta11 .
Pode-se então utilizar as duas redes combinadas a fim de se otimizar as respostas. Nesta
combinação, a rede feedforward é responsável por classificar o objeto, gerando respostas próximas às regiões em que se encontram os melhores pontos de fixação. A resposta da rede
feedforward é então utilizada como inicialização da rede de Hopfield, que por sua vez, é responsável por otimizar as repostas.
Neste método de determinação da fixação, as redes RBF e de Hopfield são as mesmas
descritas nas Seções anteriores. A rede RBF é previamente treinada com os padrões geométricos
11 A
capacidade de generalização da rede RBF é obtida aumentando-se o raio da função de base radial. A
diminuição do mesmo raio melhora a precisão da resposta, porém com queda na capacidade de generalização.
7 Fixação 3D de objetos desconhecidos
182
da Figura 7.22, cujos pontos de contato são determinados pela busca heurística, e a rede de
Hopfield tem a mesma arquitetura que a apresentada anteriormente e utiliza a função custo das
Equações 7.18 e 7.19 para otimizar a fixação por dois e três pontos de contato respectivamente.
Fixação por 2 contatos
As rede combinadas foram implementadas para determinar dois pontos de fixação de objetos 3D, e os resultados obtidos com os objetos de testes são apresentados nas Figuras 7.28, 7.29
e 7.30.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
Figura 7.28: Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo RBF previamente
treinadas e posterior otimização com redes de Hopfield (parte 1 de 3).
7.4 Métodos de seleção de pontos de contato
183
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figura 7.29: Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo RBF previamente
treinadas e posterior otimização com redes de Hopfield (parte 2 de 3).
7 Fixação 3D de objetos desconhecidos
184
(a)
(b)
(c)
Figura 7.30: Vista frontal, superior e em perspectiva da determinação de dois pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo RBF previamente
treinadas e posterior otimização com redes de Hopfield (parte 3 de 3).
Os tempos de processamento foram medidos e são apresentados na Tabelas 7.8. A partir da
observação de que os tempos de processamento estão entre os tempos apresentados nas Tabelas
7.4 e 7.6, e ainda, a partir dos resultados dos testes com os objetos da base de dados, em que
no total foram determinadas 92,1% de fixações satisfatórias, pode-se concluir que a combinação das duas redes neurais melhora o desempenho na determinação de pontos de fixação sem
aumentar significativamente o tempo de processamento.
Tabela 7.8: Tabela do tempo de determinação da fixação 3D por dois pontos utilizando RNAs
tipo RBF e posterior otimização por redes de Hopfield para os objetos das Figuras 7.28, 7.29 e
7.30.
Figura 7.28(a)
Figura 7.28(d)
Figura 7.28(g)
Figura 7.29(a)
Figura 7.29(d)
Figura 7.29(g)
Figura 7.29(j)
Figura 7.30(a)
Redes RBF e Hopfield [s]
0,1472
0,1422
0,1082
0,2217
0,1991
0,2441
0,1921
0,2422
Fixação por 3 contatos
As redes RBF e de Hopfield também foram combinadas para determinar três pontos de
fixação de objetos 3D. Os resultados obtidos na determinação de pontos de contato para os
objetos de testes são apresentados nas Figuras 7.31 e 7.32.
7.4 Métodos de seleção de pontos de contato
185
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figura 7.31: Vista frontal, superior e em perspectiva da determinação de três pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo RBF previamente
treinadas e posterior otimização com redes de Hopfield (parte 1 de 2).
7 Fixação 3D de objetos desconhecidos
186
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figura 7.32: Vista frontal, superior e em perspectiva da determinação de três pontos de fixação, para objetos do cotidiano e abstratos, utilizando redes feedforward tipo RBF previamente
treinadas e posterior otimização com redes de Hopfield (parte 2 de 2).
7.5 Resumo do Capítulo 7
187
Os tempos de processamento foram medidos e são apresentados na Tabela 7.9. Novamente,
os resultados da combinação das duas redes neurais promoveu melhoras no desempenho quanto
à quantidade de fixações satisfatórias nos testes com a base de dados. Foram obtidas 96,7% de
fixações satisfatórias, e ainda, não houve aumento siginificativo do tempo de treinamento.
Tabela 7.9: Tabela do tempo de determinação da fixação 3D por garras de dois dedos utilizando
RNAs tipo RBF e posterior otimização por redes de Hopfield para os objetos das Figuras 7.31
e 7.32
Figura 7.31(a)
Figura 7.31(d)
Figura 7.31(g)
Figura 7.31(j)
Figura 7.32(a)
Figura 7.32(d)
Figura 7.32(g)
Figura 7.32(j)
Redes RBF e Hopfield [s]
0,8541
1,2213
1,0946
0,8888
2,0610
1,1547
1,6554
2,0102
7.5 Resumo do Capítulo 7
Neste Capítulo foi investigado o comportamento das RNAs na determinação de pontos de
fixação para objetos 3D desconhecidos. O objetivo principal foi avaliar a capacidade das redes
em relação à qualidade das respostas e em relação aos tempos de processmaneto.
Para o caso da fixação 3D, ao contrário do que é observado para a fixação 2D, existem
poucos trabalhos que utilizam RNAs se determinar os pontos de contato, destacando-se apenas
o trabalho de Lee et al. (2002). Contudo, os mesmos métodos testados para o caso 2D foram
testados para o caso 3D, ou seja, foram implementados os seguintes métodos: o método utilizando redes RBF previamente treinadas, segundo a proposta de Lee et al. (2002); o método
utilizando redes de Hopfield; e um novo método proposto como uma combinação das redes
RBF e de Hopfield.
Os métodos foram implementados e simulações foram realizadas com uma base de dados
formada por um total de 11700 objetos abstratos e obtidos por modelagem computacional. E
resultados foram apresentados para oito modelos de objetos do cotidiano e de formas abstratas.
Em geral, pode-se dizer que as RNAs são capazes de determinar pontos adequados de fixação, porém as mesmas devem ser adequadamente configuradas e treinadas. Dentre os resultados, destacam-se aqueles obtidos com a nova proposta de combinação das redes, neste caso, um
total de 92,1% de fixação satisfatórias foi alcançado para dois pontos de contato, e 97,6% para
7 Fixação 3D de objetos desconhecidos
188
três pontos de contato. Estes resultados são significativamente melhores que aqueles obtidos
com a rede RBF e com a rede de Hopfield, no entanto, não houve aumento expressivo no tempo
de processamento.
7.6 Agradecimentos
O autor gostaria de agradecer aos colegas de laboratório Rafael Vidal Aroca, Dalton Matsuo Tavares e José Martins Júnior pela ajuda na obtenção e criação dos modelos 3D para as
simulações dos algoritmos de fixação 3D.
189
Parte IV
Proposta de um sistema de fixação de
auto-aprendizagem
191
8
Fixação 2D e 3D com auto-aprendizagem
Nos Capítulos 5 e 7 desta Dissertação, foram apresentadas diferentes configurações de
RNAs para a determinação de fixações de objetos, e resultados satisfatórios são apresentados.
Contudo, pode-se ainda explorar as capacidades das redes de classificação e generalização para
desenvolver um sistema de auto-aprendizagem para fixação de objetos. Neste sentido, um algoritmo de auto-aprendizagem, baseado nas diferentes RNAs apresentadas nos Capítulos supracitados, é apresentado no presente Capítulo. Uma característica importante do algoritmo é que o
mesmo pode ser aplicado tanto para o caso da fixação 2D quanto para o caso 3D. Os primeiros
resultados da auto-aprendizagem são apresentados pela simulação do algoritmo proposto com as
bases de objetos 2D e 3D, e os resultados obtidos apontam a capacidade de auto-aprendizagem
das RNAs destinadas à determinação de pontos de fixação de objetos.
8.1 Introdução
A capacidade dos robôs de fixar objetos é uma das características desejadas para muitas
aplicações. Em algumas delas, os objetos a serem fixados apresentam geometria complexa e
pode-se dizer que é impossível de se determinar, a priori, quais as geometrias dos objetos que
serão apresentados ao sistema. Nestes casos, diz-se que o objeto é desconhecido pelo robô.
Portanto, a fixação de objetos desconhecidos é um dos maiores desafios na área de fixação e
manipulação de objetos por garras robóticas, e tal característica é fundamental principalmente
para os robôs que devem trabalhar em ambientes não estruturados, como robôs de serviço por
exemplo.
A melhor forma de se determinar pontos de fixação para objetos é a partir da geometria
do mesmo. Desta forma, quando se deseja fixar um objeto desconhecido, a primeira etapa é a
obtenção da sua forma. Uma vez que se conhece a geometria do objeto, que pode ser 2D ou
3D, diversas estratégias podem ser adotadas para se determinar os pontos de fixação do objeto.
8 Fixação 2D e 3D com auto-aprendizagem
192
As diferentes estratégias de se fixar objetos desconhecidos são apresentadas na Seção 2.11 , e
dentre elas é importante recordar os sistemas propostos para aplicações industriais, tendo como
principal trabalho aquele realizado por Morales et al. (2006b). Tais sistemas são baseados em
algoritmos de rápido processamento, e uma das desvantagens é a não capacidade de aprendizagem, ou seja, o sistema não melhora seu desempenho a medida em que objetos são apresentados
para fixação. Se algum objeto for apresentado pela segunda vez ao sistema, mesmo qua a fixação determinada na primeira apresentação tenha sido satisfatória, todos os cálculos serão
repetidos, e para aqueles cuja fixação determinada não é satisfatória, não há posibilidade de
fixá-lo, mesmo existindo uma forma de fixá-lo adequadamente.
Outra proposta interessante é a formação de uma base de dados de objetos, tal como proposta em Kamon et al. (1994). A base de dados é formada por formas de objetos, suas características geométricas, e respectivos pontos adequados de fixação. O objetivo da formação
de uma base de dados é permitir que objetos apresentados pela segunda vez ao sistema sejam
fixados sem a necessidade de cálculos, pois apenas uma busca na base de dados é realizada.
Neste caso, pode-se dizer que ao adicionar informações de um objeto à base de dados, o mesmo
torna-se conhecido pelo sistema, e ainda, não há melhorias no desempenho do sistema quando
objetos ainda desconhecidos são apresentados ao sistema pela primeira vez, mesmo que exista
uma extensa base de dados formada.
Uma alternativa interessante é a utilização de RNAs previamente treinadas para determinar
fixações de objetos desconhecidos. Para o caso da fixação 2D, cita-se os trabalhos de Xu et al.
(1990) e Valente (1999), e para o caso 3D cita-se o trabalho de Lee et al. (2002). A fixação
utilizando os diferentes tipos de RNAs das citações anteriores é apresentada nos Capítulos 5 e
7 do presente trabalho, e a partir dos resultados obtidos, pode-se concluir que as RNAs, quando
adequadamente configuradas e treinadas, constituem uma poderosa ferramenta para a fixação
de objetos desconhecidos.
Contudo, apesar dos bons resultados em relação à qualidade das respostas e aos tempos
de processamento apresentados pelas RNAs, pode-se explorar algumas das suas características
como a sua capacidade de classificação, de generalização e de retreinamento na tentativa de
melhorar o seu desempenho na tarefa de fixar objetos.
Neste sentido, a proposta apresentada neste Capítulo é um sistema de fixação com capacidade de auto-aprendizagem, ou seja, o sistema é capaz de aprender novas fixações a medida
em que é executado, e ainda, o sistema apresenta tempos reduzidos de aprendizagem e de execução. O algoritmo é baseado em RNAs conforme a proposta inicial de utilizá-las nas etapas
1 Recomenda-se
a leitura da Seção 2.1 para conhecimento das estratégias de fixação de objetos desconhecidos.
8.2 Algoritmo proposto
193
de determinação da fixação, pois o mesmo é desenvolvido com base nos resultados obtidos por
Xu et al. (1990) e Valente (1999) para o caso 2D, nos resultados obtidos por Lee et al. (2002)
para o caso 3D, e nos resultados obtidos nos Capítulos 5 e 7 desta Dissertação. Simulações com
objetos de extensas bases de objetos mostram a capacidade de auto-aprendizagem do algoritmo
proposto, e os tempos de processamento de aprendizagem e de execução são compatíveis com
as aplicações de fixação de objetos.
Este Capítulo está organizado da seguinte forma: na Seção 8.2, o algoritmo de autoaprendizagem proposto é apresentado; e na Seção 8.3 duas diferentes simulação são realizadas
para verificar as capacidades e limitações da proposta. E por fim, considerações e discuções dos
resultados são apresentados na Seção 8.4.
8.2 Algoritmo proposto
8.2.1 Descrição
O algoritmo proposto neste Capítulo consiste em um sistema de auto-aprendizagem baseado
nas RNAs tipo feedforward e de Hopfield. A principal característica do algoritmo é a capacidade de aprender novas fixações a partir da avaliação de um supervisor e de um mecanismo de
retreinamento da rede feedforward. O algoritmo apresenta diversas etapas, sendo que em cada
uma, um diferente método de determinação de fixação é utilizado. Os diferentes métodos de
fixação utilizados são: busca heurística; redes feedforward; e otimização por redes de Hopfield;.
Os diferentes algoritmos de fixação são utilizados em etapas específicas do algoritmo de
auto-aprendizagem, que é por sua vez dividido em 5 etapas. Cada etapa é responsável por
cálculos e procedimentos definidos, explicados a seguir na seqüência de execução do algoritmo.
Rede feedforward Nesta etapa inicial, um rede neural feedforward tipo RBF, configurada como
classificadora, é utilizada para determinar uma fixação inicial, ou seja, uma classifcação
do objeto é realizada. A rede é previamente treinada com alguns padrões geométricos,
cujos pontos de fixação são determinados pelo método de busca heurística. Esta etapa é
baseada no algoritmo proposto por Valente (1999) para o caso 2D, e no algoritmo proposto por Lee et al. (2002) para o caso 3D.
Otimização com redes de Hopfield Por vezes, a fixação determinada na etapa anterior não
apresenta a propriedade force-closure, mas podem haver soluções satisfatórias quanto à
propriedade nas proximidades dos pontos iniciais. Na tentativa de otimizar o resultado
8 Fixação 2D e 3D com auto-aprendizagem
194
da primeira rede, ou seja, encontrar uma fixação force-closure e de boa qualidade, uma
rede competitiva otimiza o resultado buscando uma fixação que representa o mínimo local
mais próximo da sua inicialização. O mínimo global (a melhor fixação dentre todas as
possíveis) pode também ser alcançado, caso a inicialização da rede seja adequada. Mas
de forma geral, encontra-se apenas mínimos locais, que são satisfatórios na maioria dos
casos.
Supervisor Um sistema supervisor avalia a resposta da rede de otimização segundo a propriedade force-closure. Se a resposta for considerada não satisfatória, é necessário utilizar
um método de busca, diferente dos anteriores, capaz de determinar uma diferente fixação
que deve ser satisfatória, e então, é necessário executar o procedimento de aprendizagem.
Se a fixação for considerada satisfatória, as próximas etapas não serão executadas, e o
procedimento é finalizado nesta etapa.
Busca heurística Esta etapa é realizada para se determinar uma fixação satisfatória no caso
em que a avaliação do supervisor da etapa anterior apontar que a fixação determinada
pelas redes neurais não é satisfatória. Nesta etapa, todas as possíveis combinações são
avaliadas segundo um critério estabelecido, ou uma função custo. A combinação que
apresentar a melhor nota, segundo o critério estabelecido, é a melhor fixação. Caso a
melhor fixação não apresente a condição force-closure, não é possível fixar o objeto e não
há aprendizagem.
Mecanismo de aprendizagem Caso a fixação determinada pela rede não for force-closure, e a
fixação determinada pela busca heurística for, a rede neural feedforward é retreinada.
No retreinamento, são utilizados todos os padrões anteriores adicionados da presente
forma apresentada ao sistema, que é então considerada com um novo padrão de treinamento. A resposta esperada para o novo padrão de treinamento é aquela determinada pela
busca heurística. Em outras palavras, se para uma determinada forma as redes neurais
feedforward e de Hopfield não apresentam uma resposta satisfatória, e se pela busca heurística é possível obter uma fixação estável, então esta forma é adicionada como padrão
de treinamento e a rede feedforward é retreinada com os padrões atualizados.
Cada uma das etapas acima desempenha um papel fundamental na auto-aprendizagem. Inicialmente, a rede tipo feedforward é responsável por classificar os objetos de acordo com os
padrões de treinamento, apresentando uma estimativa de uma fixação satisfatória2 , contudo a
capacidade de generalização das redes feedforward implica em uma resposta não otimizada, e
desta forma a fixação determinada pode não ser adequada.
2 Relembrando,
uma fixação satisfatória é uma fixação force-closure.
8.3 Simulações e resultados
195
Para melhorar a resposta apresentada pela rede feedforward, uma rede competitiva é responsável por otimizar os resultados. A resposta obtida pela rede de Hopfield é um mínimo
local, ou global, que depende da sua inicialização (XU et al., 1990). O resultado da rede de
Hopfield pode ser satisfatório dependendo da sua inicialização, portanto, se o resultado não é
satisfatório, então a inicialização pode não ser adequada, ou seja, se a resposta não é satisfatória,
a rede feedforward não é capaz de classificar o objeto. No caso em que a rede RBF não é capaz
de classificar um determinado objeto, a forma deste objeto é considerada como a representante
de uma nova classe de formas, e então a rede é retreinada com as formas padrões anteriores
adicionadas da nova.
O algoritmo apresentado possui a capacidade de aprender novas fixações a partir da consideração de novos padrões de treinamento da rede feedforward, encontrados a medida em que o
algoritmo é utilizado. Para verificar a capacidade de auto-aprendizagem do sistema, simulações,
descritas nas próximas Seções, foram realizadas.
8.3 Simulações e resultados
8.3.1 O algoritmo proposto é capaz de aprender novas fixações?
O algoritmo de auto-aprendizagem proposto utiliza um mecanismo de retreinamento das
redes RBF na tentativa de melhorar o seu desempenho na determinação de pontos de contato
para a fixação de objetos. Em relação à sua capacidade de auto-aprendizagem, algums questões
podem ser discutidas:
"A rede é capaz de aprender novas fixações?"
"A cada novo retreinamento, o que acontece com o desempenho da rede em comparação com
o estado da rede anterior ao retreinamento?"
"A freqüência de retreinamento diminui com o uso da rede?"
"Existe algum limite de adição de padrões de treinamento? Se existe, como este limite é
determinado?"
A fim de responder as questões listadas, simulações foram realizadas, e para tanto, extensas
bases de objetos, uma de objetos 2D e outra de objetos 3D, foram utilizadas. Para o caso 2D,
8 Fixação 2D e 3D com auto-aprendizagem
196
a base de dados é formada pelas imagens disponibilizadas em SAXENA (2006). Os dados
utilizados consistem em imagens adiquiridas a partir de fotos de diversas posições de uma cena
contendo objetos do cotidiano modelados em um ambiente virtual. No total, utilizou-se 8100
imagens de sete objetos diferentes, sendo cerca de 1200 imagens para cada objeto. Para o caso
3D, a base de dados é formada por 2925 objetos 3D abstratos modelados em um software CAD3 .
8.3.2 Simulações e resultados
As fim de responder as questões sobre a capacidade do sistema de auto-aprendizagem proposto, duas simulações foram realizadas.
Primeira Simulação
Na primeira simulação, os objetos foram apresentados às redes sempre em uma mesma ordem. Na primeira apresentação de todos os objetos à rede, não foi permitida a capacidade de
auto-aprendizagem, e para cada objeto verificou-se a propriedade force-closure da fixação determinada. A Figura 8.1 apresenta a resposta da rede sem a capacidade de auto-aprendizagem para
a fixação 2D por dois pontos de contato. A imagem, nomeada como "Mapa de comportamento
da rede, mostra em cada um de seus pixels a resposta obtida, os pixels em vermelho claro representam os objetos cuja fixação não foi force-closure, e os pixels em verde claro representam os
objetos cuja fixação determinada foi force-closure.
O resultado desta primeira etapa foi utilizado nas próximas etapas da primeira simulação.
Na segunda etapa, foi permitido a capacidade de auto-aprendizagem, ou seja, a cada fixação não
force-closure determinada, executou-se o processo de retreinamento da rede com os padrões
iniciais adicionados do novo padrão e sua respectiva resposta obtida pela busca heurística. Os
objetos da base de dados foram apresentados na mesma ordem que aquela da primeira etapa,
até que um total de 50 formas foram adicionadas aos padrões de treinamento, ou seja, até
o retreinamento com 50 novas formas. Espera-se que, ao adicionar 50 formas aos padrões
geométricos, não sejam obtidas respostas satisfatórias somente para as 50 formas adicionadas,
o que aconteceria se fosse formada uma base de dados de fixações, mas espera-se que seja
possível determinar fixações satisfatórias para outros objetos, diferentes daquelas 50 formas
adicionadas, cujas fixações não foram satisfatórias na primeira etapa.
3 No
total, foram criados 11700 objetos 3D, porém, devido ao tempo de processamento requerido para a realização das simulações, apenas aqueles mais complexos foram utilizados.
8.3 Simulações e resultados
197
Figura 8.1: Mapa do comportamento da rede no seu estado inicial.
Após a aprendizagem de 50 novos padrões, interrompeu-se o processo, e executou-se o
mesmo procedimento da primeira etapa, ou seja, todos os objetos da base foram apresentados
à rede em uma mesma ordem, e também não foi permitido a capacidade de aprendizagem. A
diferença nesta etapa da simulãção com a primeira etapa é a rede utilizada, que neste caso foi
aquela retreinada com os padrões iniciais adicionados das 50 novas formas. A Figura 8.2 mostra
o mapa do comportamento da rede após 50 retreinamentos.
Figura 8.2: Mapa do comportamento da rede após a realização de 50 retreinamentos.
8 Fixação 2D e 3D com auto-aprendizagem
198
O procedimento descrito foi realizado com o objetivo de avaliar o desempenho de uma
rede que "aprendeu" 50 novas formas geométricas. Contudo, pode-se repetir o procedimento
para diferentes quantidades de formas geométricas aprendidas. Para cada diferente quantidade
de formas adicionadas aos padrões geométricos, pode-se medir a quantidade de fixações satisfatórias, apresentando à mesma cada um dos objetos da base e verificando a resposta obtida. A
Figura 8.3 mostra os mapas do comportamento da rede para diferentes estágios de aprendizagem.
Figura 8.3: Mapas do comportamento da rede para diferentes estágios de retreinamento.
Ao traçar em um gráfico a curva de quantidade de fixações satisfatórias por número de
formas adicionadas aos padrões de retreinamento, obtém-se a curva denominada formas adicionadas aos padrões × fixações satisfatória que é também denominada como curva de aprendizagem, e a partir desta curva é possível responder à algumas das questões sobre a capacidade
de aprendizagem das redes.
8.3 Simulações e resultados
199
O gráfico da Figura 8.4 apresenta a curva de aprendizagem para a fixação 2D por dois
pontos de contato. A base de objetos utilizada nesta simulação contém 8100 exemplares, e as
simulações foram realizadas para diferentes quantidade de formas adicionadas aos padrões para
retreinamento (de 0 a 800 com passo de 50).
Figura 8.4: Curva de aprendizagem para a fixação 2D por dois pontos de contato.
A partir da curva de aprendizagem da Figura 8.4, pode-se verificar que, inicialmente, fixações satisfatórias foram determinadas para cerca de 6170 objetos, porém ao adicionar 50 formas
geométricas aos padrões de treinamento, houve cerca de 7200 fixações satisfatórias. Pode-se
responder a primeira questão em relação à capacidade de aprendizagem, sendo que houve melhora no desempenho da rede retreinada em relação à rede inicial.
Ainda em relação à curva da Figura 8.4, pode-se dizer que o desempenho da rede melhora a
cada nova aprendizagem, porém, pode-se observar uma linha de tendência (linha horizontal por
volta de 7200) e não há melhoras significativas após este valor ser atingido, e em alguns casos,
o desempenho apresenta algumas pequenas oscilações, contudo, o desempenho é sempre maior
que 90%.
Simulações similares foram realizadas para a fixação 2D por três pontos de contato, para a
fixação 3D por dois pontos de contato, e para a fixação 3D por três pontos de contato. As curvas
de para cada caso são apresentadas nas Figuras 8.5, 8.6 e 8.7 repectivamente.
200
8 Fixação 2D e 3D com auto-aprendizagem
Figura 8.5: Curva de aprendizagem para a fixação 2D por três pontos de contato.
Figura 8.6: Curva de aprendizagem para a fixação 3D por dois pontos de contato.
8.3 Simulações e resultados
201
Figura 8.7: Curva de aprendizagem para a fixação 3D por três pontos de contato.
Nas simulações realizadas para as diferentes configurações de rede, para fixação 2D ou
3D, por dois ou três pontos de contato, observa-se o mesmo comportamento: há melhora da
qualidade das respostas apresentadas a medida que novas formas são adicionadas aos padrões
de treinamento e que a rede é retreinada; e existe uma linha ou valor de tendência, sendo que
não há melhoras significativas após este valor ser atingido.
Segunda Simulação
Na primeira simulação, é possível verficar a capacidade de auto-aprendizagem, e ainda, é
possível verificar a melhoria do desempenho após vários retreinamentos. Contudo, duas das
questões sobre a capacidade de auto-aprendizagem não foram respondidas na primeira simulação:
"A freqüência de retreinamento diminui com o uso da rede?"
"Existe algum limite de adição de padrões de treinamento? Se existe, como este limite pode
ser determinado?"
Estas questões não puderam ser respondidas a partir dos resultados da primeira simulação, pois, naquele caso, os objetos das bases de dados foram apresentados à rede sempre em
uma mesma ordem, e para cada diferente estágio de rede, atingido após um certo número de
8 Fixação 2D e 3D com auto-aprendizagem
202
retreinamentos, uma verificação exaustiva foi realizada4 .
Em uma condição real de trabalho, não há como verificar o desempenho de cada estágio
intermediário da rede através de uma simulação exaustiva utilizando uma base de objetos, e
portanto, não é possível determinar quando o valor de tendência foi atingido, e quando o retreinamento deve ser interrompido.
Para responder estas questões sobre o desempenho da rede, uma segunda simulação foi realizada. Nesta simulação, os exemplares da base de objetos foram apresentados aleatoriamente à
rede e não houve restrições ou limites de retreinamento. O número de apresentações de objetos
entre cada retreinamento foi medido, e desta forma, é possível verificar o aumento da quantidade de objetos apresentados à rede necessários para que um novo retreinamento ocorra. Os
tempos de execução e de retreinamento da rede também foram medidos.
A rede testada nesta simulação é novamente aquela para a fixação 2D por dois pontos de
contato, e objetos foram apresentados à rede até a execução de 10000 retreinamentos. O gráfico
da Figura 8.8 mostra a média de objetos apresentados à rede entre 250 retreinamentos, e os
gráficos das Figuras 8.9 e 8.10 apresentam o tempo de execução e de retreinamento da rede,
repectivamente, para cada intervalo de 250 retreinamentos.
Figura 8.8: Objetos apresentados à rede entre retreinamentos. Os valores mostrados representam a média entre cada 250 retreinamentos. Resultados para a primeira simulação de apresentação de objetos à rede, em ordem randômica.
4 Cada
uma das verificações leva cerca de 2 horas de processamento no computador de testes.
8.3 Simulações e resultados
203
Figura 8.9: Tempo de execução da rede. Média entre cada 250 retreinamentos. Resultados para
a primeira simulação de apresentação de objetos à rede, em ordem randômica.
Figura 8.10: Tempo de retreinamento da rede. Média entre cada 250 retreinamentos. Resultados
para a primeira simulação de apresentação de objetos à rede, em ordem randômica.
8 Fixação 2D e 3D com auto-aprendizagem
204
Esta mesma simulação foi repetida outras quatro vezes, e os resultados são mostrados no
Apêndice F. Nos resultados obtidos nas cinco simulações, o mesmo comportamento pode ser
verificado, ou seja, a quantidade de objetos apresentados à rede entre retreinamentos aumenta
significativamente no início da simulação, porém a curva do gráfico apresenta oscilações após
1000 retreinamentos, aproximadamente. Contudo, os tempo de retreinamento e de execução da
rede aumentam linearmente a cada retreinamento.
Desta forma, a adição de novas formas aos padrões geométricos e o retreinamento da rede
melhoram o desempenho da mesma, e pode-se dizer que não há um limite de adição de formas
acima do qual pode haver detrimento da capacidade de determinar fixações satisfatórias. Apesar
disso, a adição de valores aumenta o tempo de execução e de retreinamento da rede, tal que,
os tempos de execução e de retreinamento podem tornar-se maiores que aqueles de execução
da busca heurística, e neste caso, pode-se dizer que é mais conveniente executar uma busca
heurística do que executar a rede, pois os tempos de execução são os mesmos, porém, o melhor
desempenho em relação à qualidade das resposta é alcançado com a busca heurística.
Então, pode-se propor a verificação do tempo de retreinamento da rede como critério de
parada, ou seja, quando o tempo de retreinamento atingir um determinado limiar, que pode ser
relacionado ao tempo de busca heurística, interrompe-se o processo de aprendizagem, e a rede
passa a ser utilizada sem a capacidade de aprender novas fixações.
Desta forma, quando existe um mecanismo de determinação do melhor momento de interrupção da aprendizagem, pode-se afirmir que o algoritmo apresenta a capacidade de autoaprendizagem, pois, neste caso, o sistema é capaz de aprender novas fixação e de melhorar seu
desempenho com retreinamentos da rede, e ainda, o sistema é decidir qual o melhor momento
de parada do retreinamento sem detrimento da capacidade do sistema (tanto para a qualidade
das respostas quanto para o tempo de processamento).
A rede utilizada neste segundo tipo de simulação da auto-aprendizagem foi aquela para
a determinação de dois pontos de contato para objetos 2D. O tempo de execução da busca
heurística por dois pontos de contato para objetos 2D medido no Capítulo 5, e mostrados na
Tabela 5.1, apresentou valores em torno de 0,3s de processamento. Portanto, pode-se adotar
para este caso o tempo de execução da rede igual ou superior a 0,3R s, como critério de parada
de adição de formas aos padrões para o retreinamento. O termo R é um escalar de ponderação,
podendo ser maior ou menor que 1, dependendo da aplicação.
Para os outros casos da fixação, fixação 2D por três pontos de contato e fixação 3D por dois
e três pontos de contato, pode-se encontrar um critério de parada de aprendizagem semelhante
àquele encontrado nestas simulações. Devido aos tempos necessários para a realização de cada
8.4 Resumo do Capítulo 8
205
simulação (cerca de dias e até semanas para o caso da fixação 3D por três contatos), estas
simulações serão futuramente realizadas.
8.4 Resumo do Capítulo 8
Neste Capítulo, um algoritmo de auto-aprendizagem de fixações foi apresentado. A proposta abrange tanto a fixação 2D quanto a fixação 3D. O algoritmo proposto é baseado nas
RNAs tipo RBF e de Hopfield combinadas, e um sistema supervisor e um de retreinamento da
rede RBF permite o aprendizado de novas fixações, e ainda, é possível melhorar o desempenho
da rede com pouco retreinamentos.
Diferentes simulações foram realizadas para verificar a capacidade de auto-aprendizagem, e
nas simulações foram utilizadas extensas bases de objetos. Na primeira simulação, foi verificada
a capacidade da rede de melhorar o seu desempenho à medida que novas formas são adicionadas
aos padrões de treinamento, sendo que a capacidade de auto-aprendizagem foi verificada em
todos os casos, 2D ou 3D por dois ou três pontos de fixação.
Na segunda simulação, os objetos foram apresentados à rede em uma ordem aleatória e,
neste caso, foi avaliado o comportamento da rede em uma situação sem qualquer controle de
auto-aprendizagem. O objetivo da simulação foi determinar uma relação capaz de indicar qual
o limite de treinamento. Nos resultados obtidos verificou-se que o principal ponto negativo
da proposta é o tempo de retreinamento e de execução da rede, pois observou-se que o tempo
aumenta linearmente com o número de novas aprendizagens. Logo, após uma série de retreinamentos da rede, o tempo de execução e retreinamento tornam o sistema inviável. Portanto,
pode-se utilizar o tempo de execução ou de retreinamento da rede como critério de parada da
aprendizagem, o que caracteriza a auto-aprendizagem.
Apesar dos bons resultados obtidos, a segunda simulação foi realizada somente para o caso
da fixação 2D por dois pontos de contato, sendo necessário realizar a mesma situação para os
demais casos.
Por fim, estes primeiros resultados apontam que é possível desenvolver um sistema de autoaprendizagem de fixação utilizando redes neurais, contudo, ainda é necessário investigar a fundo
o comportamento deste novo algoritmo a fim de conhecer melhor as suas vantagens e desvantagens.
206
8 Fixação 2D e 3D com auto-aprendizagem
207
9
Conclusões Finais
A crescente necessidade em diversas áreas - industrial, médica, serviços - de sistemas flexíveis e adaptáveis, que atendam a diferentes condições de trabalho, motivou a pesquisa e desenvolvimento de sistemas inteligentes e capazes de se adaptarem às diferentes condições de
trabalho sem a necessidade de reestruturação e readequação das suas instalações.
No campo da fixação de objetos por garras robóticas, a atual necessidade de sistemas capazes de fixar diferentes tipos de objetos em posições aleatórias também tornou-se uma necessidade para a flexibilização dos processos que envolvem, de forma direta ou indireta, os
manipuladores robóticos e os robôs de serviço.
Nas últimas décadas, pode-se destacar inúmeros trabalhos cujas propostas são sistemas
flexíveis capazes de realizar tarefas de fixação inteligente. Dentre todos, destacam-se aqueles
que utilizam sistemas de visão como fonte de informação sobre os objetos existentes no espaço
de trabalho de um robô. Se por um lado os sistemas propostos apresentaram maior flexibilidade
e adaptabilidade quanto à posição e à forma do objeto, surge outro problema relacionado ao
sistema de visão que deve ser capaz de capturar e informar ao sistema qual a forma do objeto.
Outro fator de importância é a necessidade de baixo tempo de resposta do sistema e baixo
custo computacional. Em aplicações industriais existe a necessidade de sistemas rápidos com
baixo custo de instalação. Trabalhos recentes estudam a relação entre velocidade e custo de
instalação do sistema e propõem a utilização de algoritmos e técnicas de cálculos simples com
bom tempo de resposta, porém em detrimento da capacidade do sistema. Por outro lado, em
algumas aplicações, pode-se investir em recursos computacionais avançados, a fim de permitir
o ótimo desempenho do sistema.
Desta maneira, a fixação de objetos é uma importante área de pesquisa da robótica, seja
para aplicações industriais, para robôs de serviços, ou para outras aplicações em que também é
desejavel a interação entre robôs e objetos do meio. A necessidade de robôs capazes de interagir
com objetos, ou seja, fixá-los e manipulá-los, motivou o desenvolvimento de novas garras mais
capazes e de planejadores inteligentes de fixação e de manipulação.
9 Conclusões Finais
208
Neste contexto, o desenvolvimento de planejadores avançados de fixação e de manipulação
são tão importantes quanto o desenvolvimento das garras, pois, mesmo para as garras com
menor capacidade de movimentação, tal como as garras industriais, é necessário o uso de um
planejador de fixação e manipulação, para que uma tarefa de interação um um objeto seja realizada com sucesso. Para o caso das garras mais avançadas, com diversos dedos e muitos graus
de liberdade e sensores, a utilização de planejadores de fixação e manipulação é ainda mais
importante para que seja possível utilizar toda a capacidade de fixação e de manipulação da
mesma.
A fixação e a manipulação podem ser consideradas como formas de interagir com um objeto, e diferenciam-se entre si pelo equilíbio estático e dinâmico do objeto em relação à garra.
Na grande maioria dos casos, uma tarefa de manipulação é precedida de uma fixação. Portanto,
a fixação é uma etapa importante no processo de interação de robôs com objetos por meio de
garras robóticas.
Neste trabalho, foram estudados diversos sistemas de fixação de objetos. E o foco principal foi a utilização de redes neurais na determinação de pontos de fixação baseados na forma
geométrica do objeto. Uma vez que é possível dividir os sistemas utilizados para a obtenção
da forma do objeto em sistemas de visão 2D e 3D, o estudo foi realizado para os dois casos, e
ainda, para cada um dos casos, duas maneiras de se fixar objetos foram estudadas, a fixação por
dois pontos de contato e a fixação por três pontos de contato. A fixação por dois e três pontos
de contato resumem os tipos de garras utilizadas nas indústriais, e mais, representam as duas
formas mais simples de se realizar uma fixação de precisão utilizando garras antropomórficas.
O objetivo deste trabalho foi avaliar a capacidade das redes neurais na determinação de
pontos adequados de fixação para objetos, e também verificar a capacidade das redes de aprender novas fixações através de um sistema de auto-aprendizagem. Para cada um dos casos, 2D
e 3D, simulações foram realizadas com diferentes métodos propostos na literatura e com novas
propostas realizadas neste trabalho. Para o algoritmo de auto-aprendizagem proposto, também
aplicável para ambos os casos, diferentes simulações foram realizadas. Nas simulações, foram
utilizados objetos do cotidiano e extensas bases de objetos para comprovar as capacidades e
limitações do método. Nas próximas Seções, 9.1, 9.2 e 9.3, são apresentadas as conclusões
e propostas de trabalhos futuros para a fixação 2D, para a fixação 3D, e para o algoritmo de
auto-aprendizagem, respectivamente.
9.1 Conclusões e propostas para a fixação 2D
209
9.1 Conclusões e propostas para a fixação 2D
No Capítulo 5, foram apresentadas aplicações de redes neurais na determinação de pontos
de fixação de objetos a partir da geometria 2D dos mesmos. Os estudos foram realizados a fim
de verificar a capacidade dos diferentes métodos que utilizam RNAs propostos na literatura (XU
et al., 1990; VALENTE, 1999) em determinar pontos de fixação para objetos desconhecidos, e
ainda, uma nova proposta utilizando RNAs também foi apresentada.
Quatro diferentes métodos de determinação de pontos de contato, e seus resultados, foram
apresentados, são eles: busca heurística, redes de Hopfield (XU et al., 1990), redes feedforward
tipo RBF (VALENTE, 1999), e a nova proposta que combina as redes de Hopfield e RBF. Para
cada um dos quatro difetentes métodos, duas diferentes implementações foram apresentadas,
uma para a determinação de dois pontos de contato, e outra para três pontos de contato.
Os resultados para o método de busca heurística cumpriram as espectativas iniciais. Foi
possível determinar pontos adequados de fixação para todos os objetos, tanto para os objetos
de teste, quanto para os objetos da base de dados. E ainda, o tempo de processamento do
método é elevado, devido, principalmente, à avaliação de todas as possíveis combinações de
fixação, sendo que esta é a sua principal característica negativa. O método de busca heurística
foi apresentado pois o mesmo é utilizado na determinação dos pontos de fixação das formas
padrões para o treinamento da rede RBF e para comparações entre os tempos de processamento.
O método proposto por Xu et al. (1990) também foi implementado e simulado na determinação de dois e três pontos de fixação de objetos desconhecidos. A partir dos resultados
obtidos nas simulações, foi observado que a principal característica do método é a rapidez de
execução da rede, porém a taxa de fixações satisfatórias é baixa, apenas 62,8% (para a fixação
por dois pontos de contato, o melhor caso) das fixações determinadas para os 8100 objetos da
base de dados foram satisfatórias. Um dos prováveis motivos do baixo desempenho da rede de
Hopfield é a inicialização adotada, segundo Xu et al. (1990), a convergência da rede depende
de sua inicialização.
A rede RBF para a fixação 2D, apresentada em Valente (1999), também apresentou rápido
processamento. Apesar disso, a taxa de fixações satisfatórias é baixa e menor que aquela da
rede de Hopfield, mesmo para a configuração da rede de melhor desempenho. Destaca-se neste
método a possibilidade de configuração da rede para tarefas específicas, a partir do seu treinamento com formas geométricas padrões. Outra característica interessante da rede RBF é a
sua capacidade de classificação, porém, quando se configura a rede para cumprir esta tarefa,
perde-se a precisão das respostas.
9 Conclusões Finais
210
O quarto método apresentado consiste em uma combinação das redes RBF e de Hopfield.
O objetivo desta combinação é melhorar o desempenho de cada uma delas, a partir da utilização das suas principais características particulares. Neste método, a rede RBF é configurada
como classificadora, e treinada com formas elementares, e sua resposta consiste em uma inicialização para a rede de Hopfield, que por sua vez, é responsável por encontrar uma fixação
satisfatória próxima a resposta da primeira rede. Os resultados obtidos mostram que é possível
melhorar o desempenho dos métodos que utilizam apenas uma das redes, e ainda, o tempo de
processamento também foi reduzido (vide Tabelas 9.1 e 9.2). O tempo de processamento do
método proposto apresenta melhores resultados que aqueles apresentados por cada uma das
redes utilizadas de forma isolada nos métodos anteriores.
Tabela 9.1: Comparação dos tempos de processamento da determinação da fixação 2D por dois
pontos de contato utilizando os quatro diferentes métodos descritos.
Figura
Figura A.2(a)
Figura A.2(b)
Figura A.3(a)
Figura A.3(b)
Figura A.3(c)
Figura A.3(d)
Figura A.3(e)
Figura A.4(a)
Figura A.4(b)
Figura A.4(c)
Figura A.4(d)
Figura A.4(e)
Busca Heurística
0,2625s
0,2160s
0,2335s
0,2032s
0,2521s
0,2589s
0,2598s
0,2505s
0,1300s
0,2892s
0,2536s
0,2610s
Rede de Hopfield
0,0690s
0,0238s
0,0567s
0,0209s
0,0314s
0,0419s
0,0318s
0,0214s
0,0321s
0,0217s
0,0223s
0,0214s
Rede RBF
0,0473s
0,0350s
0,0364s
0,0360s
0,0354s
0,0351s
0,0363s
0,0351s
0,0365s
0,0362s
0,0355s
0,0371s
Redes RBF e Hopfield
0,1283s
0,0738s
0,0692s
0,0473s
0,0591s
0,0603s
0,0619s
0,0626s
0,0588s
0,0583s
0,0616s
0,0590s
Tabela 9.2: Comparação dos tempos de processamento da determinação da fixação 2D por três
pontos de contato utilizando os quatro diferentes métodos descritos.
Figura
Figura A.2(a)
Figura A.2(b)
Figura A.3(a)
Figura A.3(b)
Figura A.3(c)
Figura A.3(d)
Figura A.3(e)
Figura A.4(a)
Figura A.4(b)
Figura A.4(c)
Figura A.4(d)
Figura A.4(e)
Busca Heurística
12,5083s
10,7642s
12,1357s
10,4243s
12,6787s
11,5055s
10,2894s
8,03370s
10,0774s
13,4464s
9,66960s
9,92430s
Rede de Hopfield
0,2378s
0,1119s
0,1039s
0,1120s
0,1239s
0,1016s
0,1226s
0,1044s
0,1093s
0,1041s
0,0967s
0,0947s
Rede RBF
0,1794s
0,1330s
0,0994s
0,0931s
0,1094s
0,1052s
0,0921s
0,1019s
0,0948s
0,1232s
0,1075s
0,0991s
Redes RBF e Hopfield
0,1271s
0,0393s
0,1383s
0,0899s
0,1173s
0,1012s
0,1078s
0,0408s
0,1389s
0,1186s
0,0969s
0,1147s
9.1 Conclusões e propostas para a fixação 2D
211
No entanto, apesar dos bons resultados obtidos com o método que utiliza as redes combinadas, algumas ressalvas e considerações, e conseqüentes propostas para trabalhos futuros,
devem ser apresentados em relação aos métodos, aos resultados e à continuidade dos trabalhos.
Primeiramente, em relação ao sistema de aquisição e de processamento da imagem, devese considerar que: as imagens foram obtidas em um ambiente com controle de iluminação,
e com uma câmera previamente calibrada, o que favoreceu e permitiu a aplicação direta do
processamento da imagem apresentado no Apêndice A. Em uma aplicação real, por vezes, não
é possível controlar a iluminação, e é necessário realizar calibrações manuais ou automáticas
do sistema de aquisição. Assim, um sistema de visão 2D, que atende estes requisitos, é uma das
propostas de continuação do trabalho.
Outra proposta interessante é a detecção e verificação de colisões na execução da fixação determinada. Na implementação dos diferentes métodos de fixação do Capítulo 5 em um
sistema robótico real, é necessário verificar a possibilidade de realizar a fixação nos pontos determinados, ou se haverá colisões com outras partes do próprio objeto durante a fixação. Nas
simulações realizadas, foram apenas verificados os ângulos de ponta do contorno do objeto.
Outras simplificações importantes que foram adotadas no desenvolvimento e na implementação dos métodos foram: a não consideração da geometria da garra e do objeto; e a não consideração de uma garra específica (industrial ou antropomórfica) para realizar a fixação. Estas
simplificações foram realizadas para permitir a avaliação do método em determinar fixações a
partir da geometria do objeto somente, sem considerar o cinematismo da garra e suas restrições.
Para os casos em que se deseja determinar pontos de fixação para garras específicas, o
espaço de trabalho da garra deve ser considerado afim de se selecionar pontos de contato cuja
fixação seja exeqüível. Neste sentido, pode-se também selecionar uma postura da mão, cujo
espaço de trabalho melhor abrange a superfície do objeto. Ou ainda, para uma tarefa específica,
que apresenta para a sua execução uma postura da mão mais adequada, pode-se pré-selecionar
regiões da superfície do objeto que permitem a fixação segundo aquela postura, e então, utilizar
os planejadores de fixação para determinar os pontos de contato que promovem uma fixação
satisfatória. Levando em conta estas propostas, os métodos apresentados podem ser aplicados a
qualquer tipo de garra, tanto industriais, quanto antropomórficas.
Por fim, uma outra proposta interessante é a implementação dos métodos de fixação em
um robô manipulador para testes com objetos reais. Dentro desta proposta, existem duas possibilidades: 1) Implementação do sistema no robô SCARA do Laboratório de Mecatrônica da
EESC-USP. O robô apresenta arquitetura aberta e sistema operacional de tempo real (vide Aroca
(2008)), e ainda, o mesmo é provido de uma garra industrial tipo pinça. 2) Outra possibilidade
9 Conclusões Finais
212
é a aplicação do método na nova garra antropomórfica denominada Kangûera (BENANTE et
al., 2007; MASSARO, 2006), desenvolvida pelo mesmo laboratório. Nestas implementações,
poderá ser verificado o comportamento das fixações determinadas pelo método e executadas
por um sistema real, e ainda, poderá ser verificado a capacidade do sistema de operar em tempo
real.
9.2 Conclusões e propostas para a fixação 3D
O objetivo principal do Capítulo 7 foi estudar o comportamento das RNAs na determinação
de pontos de fixação de objetos de geometria 3D desconhecida. Os estudos foram baseados nos
trabalhos de Xu et al. (1990) e Lee et al. (2002), e nos resultados obtidos no Capítulo 5, no qual
foi estudado o comportamento das redes para o caso da fixação 2D. Também foi proposto um
novo método de determinação de fixação 3D baseado em RNAs.
Ao longo do texto, foram apresentados quatro métodos de determinação de pontos de fixação 3D: busca heurística; rede de Hopfield; rede feedforward tipo RBF; e a proposta de
combinação das redes RBF e de Hopfield. Para cada diferente método, duas implementações
foram realizadas, uma para fixação por dois pontos de contato e outra para três pontos de contato. Cada uma delas foi simulada com uma base de dados de 11700 objetos 3D abstratos, e
ilustrações de alguns resultados foram apresentados para oito diferentes objetos do cotidiano,
sendo que o tempo de processamento foi medido a fim de comparações entre os métodos.
O método de busca heurística foi implementado e simulado, apesar deste método não ser
baseado em RNAs. O motivo da implementação é a sua utilização na etapa de treinamento
das redes RBF com a determinação dos pontos de contato dos objetos pertencentes aos padrões
de treinamento e comparação dos tempos de execução. Os resultados obtidos estão dentro das
espectativas para o método, ou seja, foi possível encontrar uma fixação satisfatória para todos
os objetos, porém, o tempo de processamento foi elevado devido à verificação de todas as
possibilidades de fixação.
O segundo método apresentado consiste em uma rede de Hopfield (XU et al., 1990). Uma
das principais características da rede é que não há etapa de treinamento, e a mesma pode apresentar número variável de neurônios para diferentes objetos, ou seja, não é preciso realizar uma
normalização da sua entrada, em relação a quantidade de pontos do objeto, para a execução da
rede. Outra característica interessante é que não é necessário a utilização de toda a superfície
do objeto como entrada da rede, ou seja, pode-se determinar pontos de fixação para superfícies
incompletas. Desta forma, pode-se determinar uma fixação por pontos de contato pertencentes
9.2 Conclusões e propostas para a fixação 3D
213
à regiões definidas por algum método de seleção de regiões de fixação, ou ainda, pode-se determinar fixações para objetos com faces ocultas.
Com relação ao tempo de processamento da rede de Hopfield, os resultados obtidos foram
satisfatórios. Tempos reduzidos de processamento foram obtidos, o que aponta que a rede
converge em poucas iterações. Aponta-se a dimensão 3D dos objetos como o principal fator
pela ocorrência da elevada taxa de respostas satisfatórias, pois, a existência de uma dimensão a
mais que o caso 2D aumenta as possiblidades de fixação, e conseqüentemente, a ocorrência de
mínimos locais, considerando as duas variáveis, é menor. Logo, consegue-se atingir mínimos
próximos ao mínimo global.
Também foi avaliado o comportamento da rede feedforward na determinação de pontos
de fixação de objetos de geometria 3D desconhecida. O algoritmo implementado foi baseado
naquele proposto por Lee et al. (2002). Similar à rede feedforward para o caso 2D, o correto
funcionamento da rede depende fundamentalmente da normalização dos dados de entrada. Com
este propósito, utilizou-se o método de simplificação de superfícies do Capítulo 6, e ainda, é
necessário utilizar toda a superfície do objeto, ou seja, não é possível utilizar a rede para seções
incompletas do objeto, ou para aqueles que apresentam faces ocultas.
Na etapa de treinamento da rede feedforward, foram utilizados os 15 objetos da Figura
7.4.1, sendo que para cada um deles, os pontos de fixação foram determinados pelo método
de busca heurística. Nos testes da rede em etapa de execução, o desempenho foi baixo em
relação à qualidade das fixações determinadas, pois foram obtidas apenas 35,0% de fixações
force-closure para dois pontos de contato, e 51,9% para três pontos de contato. Em relação ao
processamento, tempos reduzidos foram obtidos.
Sobre o tempo de treinamento da rede, em resultados preliminares não apresentados neste
trabalho, as redes feedforward tipo RBF apresentaram tempo de treinamento de poucos segundos (de 1s a 10s dependendo da configuração da rede), enquanto que as redes tipo MLP apresentaram até horas de treinamento. Estes resultados são similares àqueles obtidos por Valente
(1999) no treinamento das rede feedforward para o caso 2D.
O último método apresentado no Capítulo 7 consiste na nova proposta de combinação das
redes RBF e de Hopfield, similar àquela proposta no Capítulo 5 para a fixação 2D. A primeira
RNA da combinação é uma rede RBF classificadora que apresenta como resposta uma estimativa de fixação do objeto. Na maioria dos casos, esta estimativa não é propriamente uma fixação
force-closure, porém, ela pode estar próxima a uma. No sentido de encontrar uma fixação adequada próxima àquela apresentada pela rede classificadora, utiliza-se uma rede de Hopfield, que
recebe como inicialização a saída da rede RBF. Resultados satisfatórios foram obtidos tanto em
9 Conclusões Finais
214
relação a taxa de fixações force-closure determinadas para os objetos da base de dados, quanto
em relação aos tempos de processamento.
Com relação à qualidade das respostas apresentadas pelas rede combinadas, cerca de 92,0%
das fixações determinadas para os 11700 objetos foram force-closure para o caso de dois pontos
de contato, e cerca de 97% para três pontos de contato. Com relação ao tempo de processamento, os tempos observados foram reduzidos, e pode-se comparar os tempos obtidos pelos
diversos métodos a partir das Tabelas 9.3 e 9.4.
Tabela 9.3: Tabela de comparação dos tempos de processamento da determinação da fixação
3D por dois pontos de contato utilizando os quatro diferentes métodos descritos.
Figura Busca Heurística
7.6(a)
1,3927 s
7.6(b)
1,2795 s
7.7(a)
1,2824 s
7.7(b)
1,2474 s
7.7(c)
1,2735 s
7.7(d)
1,2751 s
7.7(e)
1,2572 s
7.7(f)
1,2865 s
Rede de Hopfield
0,2819 s
0,5040 s
0,2025 s
0,3464 s
0,3054 s
0,3278 s
0,2411 s
0,2523 s
Rede RBF
0,0196 s
0,0212 s
0,0213 s
0,0204 s
0,0299 s
0,0201 s
0,0210 s
0,0190 s
Redes RBF e de Hopfield
0,1472 s
0,1422 s
0,1082 s
0,2217 s
0,1991 s
0,2441 s
0,1921 s
0,2422 s
Tabela 9.4: Tabela de comparação dos tempos de processamento da determinação da fixação
3D por três pontos de contato utilizando os quatro diferentes métodos descritos.
Figura Busca Heurística
7.6(a)
35,49620 s
7.6(b)
114,5424 s
7.7(a)
89,92680 s
7.7(b)
34,00910 s
7.7(c)
120,0924 s
7.7(d)
87,60460 s
7.7(e)
81,60400 s
7.7(f)
81,12600 s
Rede de Hopfield
4,4257 s
2,1885 s
3,8546 s
5,0939 s
3,7056 s
3,6894 s
3,5502 s
5,4816 s
Rede RBF
0,0615 s
0,0218 s
0,0261 s
0,0217 s
0,0251 s
0,0226 s
0,0245 s
0,0263 s
Redes RBF e de Hopfield
0,8541 s
1,2213 s
1,0946 s
0,8888 s
2,0610 s
1,1547 s
1,6554 s
2,0102 s
De forma geral, pode-se dizer que as RNAs são capazes de determinar pontos de fixação satisfatórios em tempo reduzido, desde que as mesmas sejam devidamente configuradas, treinadas
e combinadas. Contudo, algumas ressalvas e considerações devem ser levadas em conta, assim
como propostas para continuação do trabalho também devem ser realizadas. As considerações
e propostas para trabalhos futuros são realizadas em relação ao sistema de aquisição do objeto,
e em relação às garras utilizadas para executar a fixação.
Primeiramente, em relação ao sistema de visão 3D, sabe-se da dificuldade de se adquirir
toda a superfície do objeto, de forma que os sistemas de visão 3D ainda estão em fase de
9.2 Conclusões e propostas para a fixação 3D
215
desenvolvimento, e que o tema é uma importante e promissora área da ciência. Portanto, é
proposto o desenvolvimento de um sistema de visão capaz de mapear toda a superfície do objeto
com tempos reduzidos e com boa precisão. Estes são os principais requisitos para um sistema
de visão 3D destinado à fixação de objetos por garras robóticas.
Ainda relacionado ao sistema de visão, após a obtenção da nuvem de pontos do objeto,
existe a necessidade de se reconstruir a malha do mesmo, e ainda, pode-se também desejar
simplificá-la. De forma análoga ao sistema de visão 3D, a reconstrução e a simplificação de
malhas 3D constituem linhas de pesquisa de destaque. Neste trabalho, foi utilizado um método
de reconstrução de malhas cujo bom desempenho é reconhecido pela literatura, porém, existem
algumas restrições e desvantagens, que são tratadas em trabalhos específicos como os trabalhos de Gois (2004) e Polizzeli (2008). Então, deve-se pesquisar e avaliar os métodos de reconstrução de superfícies, afim de apontar o mais apropriado para o caso estudado. Quanto à
simplificação de superfícies, o método utilizado foi aquele proposto no Capítulo 6, contudo, novas comparações com outros métodos devem ser realizadas para se verificar aquele que melhor
atende aos requisitos dos métodos de fixação 3D.
Outras considerações devem ser realizadas em relação as ferramentas necessárias para realizar a fixação do objeto. No desenvolvimento deste trabalho, não foi considerada qual a garra
que realizaria a fixação, e desta forma, os métodos foram avaliados em relação a capacidade de
determinar pontos de fixação a partir da geometria 3D do objeto somente. Contudo, o cinematismo e a capacidade de movimentação das garras destinadas à fixação devem ser consideradas
na determinação dos pontos de contato, pois é desejado que a fixação determinada possa ser
executada pela ferramenta selecionada.
Para as garras industriais, do tipo pinça e castanha, a simplicidade dos movimentos facilita a determinação da posição das mesmas para realizar a fixação nos pontos determinados.
Por outro lado, para as garras antropomórficas, tal como a Kangûera (BENANTE et al., 2007;
MASSARO, 2006) que atualmente está em fase de construção, a grande capacidade de movimentação e as inúmeras possibilidades de configuração dificultam a determinação da maneira
com que a fixação será executada. Alternativas, complementares aos métodos apresentados no
Capítulo 7, podem ser adotadas. Pode-se estimar uma postura da mão mais adequada para o objeto e para a operação, e a partir do espaço de trabalho de cada um dos dedos da garra, pode-se
selecionar quais as regiões da superfície do objeto em que a fixação pode ser realizada, e então
pode-se determinar os melhores pontos de contato dentro das regiões específicas utilizando o
método baseado nas redes de Hopfield, que possibilita o trabalho com apenas algumas regiões
do objeto.
9 Conclusões Finais
216
9.3 Conclusões e propostas para o algoritmo de
auto-aprendizagem
No Capítulo 8, foi apresentado um algoritmo de auto-aprendizagem para a fixação de objetos desconhecidos. O algoritmo é baseado nas RNAs apresentadas nos Capítulos 5 e 7, porém
naqueles casos, não havia possibilidade de se melhorar o desempenho das redes por uma mecanismo de auto-aprendizagem.
A nova proposta de auto-aprendizagem utiliza um supervisor, um mecanismo de retreinamento, e um critério de parada de aprendizagem. O supervisor avalia a resposta da rede obtida
para cada objeto, ou seja, a fixação determinada. A fixação é avaliada em relação à propriedade
force-closure, e se a fixação não apresentar a propriedade, ela é denominada como insatisfatória,
e inicia-se o processo de aprendizagem da rede através de um mecanismo de retreinamento.
Nesta etapa, determinam-se pontos de fixação satisfatórios por uma busca heurística, e a rede
neural é retreinada com a nova forma e os padrões de treinamento anteriores.
O objetivo do algoritmo proposto é melhorar o desempenho da rede, e para verificar a
capacidade de auto-aprendizagem, duas diferentes simulações foram realizadas com extensas
bases de dados de objetos 2D e 3D.
Na primeira simulação, os objetos da base de dados foram apresentados à rede em uma
ordem pré-determinada, e nesta etapa foi permitida a capacidade de auto-aprendizagem. Cada
estado intermediário da rede, que sofreu o processo de aprendizagem, foi avaliado. Nesta avaliação, os objetos foram novamente apresentados à rede, porém neste caso a mesma não apresentava a capacidade de auto-aprendizagem, e o número de fixações satisfatórias foi medido.
Nesta verificação, foi possível observar que a rede melhora seu desempenho, a partir da
avaliação progressiva de cada estado intermediário da rede, o que significa que a adição de
formas aos padrões e seqüente retreinamento da rede melhora a capacidade da mesma, não
somente em relação àquelas formas adicionadas, mas também em relação a outros objetos, para
os quais a rede inicial não era capaz de determinar uma fixação adequada. Este comportamento
foi verificado para todos os casos, fixação 2D ou 3D, por dois ou três pontos de contato.
Ainda sobre a primeira simulação, foi demonstrado que é possível aprender novas fixações
e melhorar o desempenho da rede. Contudo, em uma situação de uso qualquer, a rede não pode
ser retreinada indefinidamente, pois cada nova forma adicionada aos padrões ocupa espaço em
memória ou em disco rígido, e ainda, a adição de novos padrões aumenta o tempo de retreinamento e de execução da rede neural. Desta forma, deve-se estabelecer um critério de parada
de retreinamento, e desta forma, pode-se dizer que existe auto-aprendizagem, pois, o sistema é
9.3 Conclusões e propostas para o algoritmo deauto-aprendizagem
217
capaz de aprender e também de determinar quando a aprendizagem deve ser finalizada.
A avaliação de cada estado da rede na primeira simulação é realizada pela contagem de
fixações satisfatória dentre as respostas de todos os objetos da base. Este tipo de verificação não
pode ser realizada em uma situação prática, pois a mesma demanda tempo de processamento
(cerca de duas horas), sendo que o sistema deve avaliar o desempenho da rede por outra medida
que deve ser realizada em tempo de execução.
Se a rede é capaz de aprender novas fixações, então espera-se que, a medida que novas
formas são adicionadas aos padrões e o retreinamento é executado, ocorra aumento do número
de objetos apresentados à rede entre cada retreinamento.
Assim, na segunda simulação, os objetos foram apresentados aleatoriamente à rede, e o
número de objetos apresentados à mesma entre os retreinamentos foi medido. Os resultados
obtidos mostram que há aumento significatvo do número de objetos apresentados entre retreinamentos no início dos testes, e que existe um valor limite, que após ser atingido, não há mais
melhoria no desempenho. Por outro lado, os tempos de execução e de retreinamento da rede
aumentam linearmente a cada retreinamento1 .
Com base nestas observações, foi proposto um critério de parada da aprendizagem a partir
do tempo de execução e de retreinamento da rede, contudo, outros critérios podem ser mais
adequados para determinar qual o melhor momento de parada. Assim, é proposto um estudo
sobre qual o melhor critério para finalização da auto-aprendizagem.
Por fim, pode-se concluir a partir destes primeiros resultados que o sistema proposto é
capaz de aprender novas fixações e determinar o melhor instante de parada. Contudo, novas
simulações devem ser realizadas e novas métricas de capacidade de aprendizagem e de limite
de retreinamento devem ser estudadas e propostas, a fim de melhor avaliar as capacidades e
limitações do algoritmo de auto-aprendizagem proposto.
1 Este
comportamento foi verificado para as cinco repetições da segunda simulação.
218
9 Conclusões Finais
219
Referências Bibliográficas
ABEL, J.; HOLZMANN, W.; MCCARTHY, J. On grasping planar objects with two
articulated fingers. IEEE Journal of Robotics and Automation, v. 1, n. 4, p. 211–214, dez,
1985.
ADE, F.; RUTISHAUSER, M.; TROBINA, M. Grasping unknown objects. Modelling and
Planning for Sensor Based Intelligent Robot Systems, World Scientific, p. 445–459, 1994.
ALLEN, P. K. et al. Integration of vision and force sensors for grasping. Proceedings
of the IEEE/SICE/RSJ International Conference on Multisensor, Fusion and Integration for
Intelligent Systems, p. 349–356, 1996.
ANSARI, N.; HUANG, K. Non-parametric dominant point detection. Pattern Recogn,
Elsevier Science Inc., New York, NY, USA, v. 24, n. 9, p. 849–862, 1991.
ARAúJO, A. F. R.; TANAKA, J. S. Variação de um modelo de rede neural competitiva de
hopfield para aproximação poligonal. Proceedings of the Brazilian Symposium on Neural
Networks, p. 193–198, 1995.
AROCA, R. V. Análise de Sistemas Operacionais de Tempo Real para Aplicações de
Robótica e Automação. Dissertação (Mestrado) — Escola de Engenharia de São Carlos,
Universidade de São Paulo, São Carlos, 2008.
BACKER, B. S.; FORTUNE, S.; GROSSE, E. Stable prehension with three fingers.
Proceedings of the ACM Symposium on Theory of Computing, p. 114–120, 1985.
BALLESTER, G. R. Visual determination, tracking and execution of 2D grasping using a
behavior-inspired approach. Tese (Doutorado) — Departament d’Enginyeria I Ciènces dels
Computadors, Universitat Juame I, Castelló, Espanha, 2003.
BARBER, C. B.; DOBKIN, D. P.; HUHDANPAA, H. T. The quickhull algorithm for convex
hulls. ACM Transactions on Mathematical Software, v. 22, n. 4, p. 469–483, set 1996.
BENANTE, R. C. et al. A self-organizing state trajectory planner applied to an
anthropomorphic robot hand. Proceedings of the IEEE/RSJ International Conference on
Intelligent Robots and Systems, p. 3082–3087, 2007.
BENDIKSEN, A.; HAGER, G. D. A vision-based grasping system for unfamiliar planar
objects. Proceedings of the IEEE International Conference on Robotics and Automation, p.
2844–2849, 1994.
BICCHI, A.; KUMAR, V. Robotic grasping and manipulation. Springer-Verlag, Berlin
Heidelberg, Germany, v. 270, p. 55–74, 2001.
220
Referências Bibliográficas
BLEY, F.; SCHMIRGEL, V.; KRAISS, K.-F. Mobile manipulation based on generic object
knowledge. Proceeding of the IEEE International Symposium on Robot and Human Interactive
Communication, p. 411–416, set 2006.
BOISSONNAT, J.-D. Stable matching between a hand structure and an object silhouette.
IEEE Transactions on Pattern Analysis and machine intelligence, v. 1, n. 6, p. 603–612, nov,
1982.
BORST, C.; FISCHER, M.; HIRZINGER, G. A fast and robust grasp planner for arbitrary
3d objects. Proceedings of the IEEE Internetional Conference on Robotics and automation, p.
1890–1896, mai, 1999.
CHEN, I.-M.; BURDICK, J. W. Fiding antipodal point grasps on irregularly shaped
objects. IEEE Transactions on Robotics and Automation, v. 9, n. 4, p. 507–512, 1992.
CHUNG, P.-C. et al. Polygonal approximation using a competitive hopfield neural
network. Pattern Recognition, v. 27, n. 11, p. 1505–1512, 1994.
CIAMPALINI, A. et al. Multiresolution decimation based on global error. The Visual
Computer, v. 13, n. 5, p. 228–246, 1997.
CIGNONI, P.; MONTANI, C.; SCOPIGNO, R. A comparison of mesh simplification
algorithms. Computers and Graphics, v. 22, n. 1, p. 37–54, 1998a.
CIGNONI, P.; ROCCHINI, C.; SCOPIGNO, R. Metro: Measuring error on simplified
surfaces. Computer Graphics Forum, v. 17, n. 2, p. 167–174, 1998b.
COHEN, J. et al. Simplification envelopes. ACM, New York, NY, USA, p. 119–128, 1996.
CORNIC, P. Another look at the dominant point detection of digital curves. Pattern
Recognition Letters, Elsevier Science Inc., New York, NY, USA, v. 18, n. 1, p. 13–25, 1997.
CORNIN, T. M. A boundary concavity code to support dominant point detection. Pattern
Recognition Letters, v. 20, p. 617–634, 1999.
CRAIG, J. J. Introduction to Robotics: Mechanics and Control. Boston, MA, USA:
Addison-Wesley Longman Publishing Co., Inc., 2005.
CUTKOSKY, M. R. Robotic Grasping and Fine Manipulation. Hingham, MA, USA:
Kluwer Academic Publishers, 1985.
DAMIAN, E. L.; SIDOBRE, D.; ALAMI, R. A grasp planner based on inertial properties.
Proceedings of the IEEE International Conference on Robotics and Automation, p. 754–759,
apr, 2005.
DENAVIT, J.; HARTEMBERG, R. S. Kinematic notation for lower-pair mechanisms based
on matrices. Transactions of the ASME, Journal of Applied Mechanics, v. 23, p. 215–221,
1955.
ETTLIN, A.; BUCHLER, P.; BLEULER, H. A simulation environment for robot motion
planning. Proceedings of the IEEE International Workshop on Robot Motion and Control, p.
277–282, jun 2005.
Referências Bibliográficas
221
FERNANDES, L. A. F. Estudo de métodos para extração de formas e realização de
medidas a partir de imagens. Relatório técnico - Universidade Federal do Rio Grande do Sul,
2005.
FERRARI, C.; CANNY, J. Planning optimal grasps. Proceedings of the EEE International
Conference on Robotics and Automation, v. 3, p. 2290–2295, mai 1992.
FISCHER, M.; HIRZINGER, G. Fast planning of precision grasps for 3d objects.
Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, p.
120–126, 1997.
GARLAND, M.; HECKBERT, P. S. Surface simplification using quadric error metrics.
ACM Press/Addison-Wesley Publishing Co., New York, NY, USA, p. 209–216, 1997.
GOIS, J. P. Reconstrução de superfícies a partir de nuvens de pontos. Dissertação
(Mestrado) — Instituto de Ciências Matemáticas e de Computação, Universidade de São Paulo,
São Carlos, 2004.
HAIDACHER, S. Estimating Finger Contact and Object Pose from Contact
Measurements in 3-D Grasping. Tese (Doutorado) — Institut für Robotik und Mechatronik,
2004.
HANAFUSA, H.; ASADA, M. Stable prehension by a robot hand with elastic fingers.
Proceedings of the Symposiun on Industrial Robots, p. 361–368, 1977.
HAUCK, A. et al. Visual determination of 3d grasping points on unknown objects with
a binocular camera system. Proceedings of the IEEE/RSJ International Conference on
Intelligent Robots and Systems, v. 1, p. 272–278, 1999.
HIGDON, A. et al. Mecânica. 2. ed. [S.l.]: Prentice-Hall do Brasil, 1984.
HOPFIELD, J. J. Neural network and physical systems with emergent collective
computational abilities. Proceedings of the National Academy of Science, n. 79, p.
2554–2558, 1982.
HOPPE, H. Progressive meshes. ACM, New York, NY, USA, p. 99–108, 1996.
HOPPE, H. et al. Mesh optimization. ACM, New York, NY, USA, p. 19–26, 1993.
HUANG, S. C.; SUN, Y. N. Polygonal approximation using genetic algorithms. Pattern
Recognition, v. 32, n. 8, p. 1409–1420, Ago 1999.
IFR. World Robotics 2007, 2007. Disponível em: <http://www.worldrobotics.org>. Acesso
em: 31 mai. 2008.
KAMON, I.; FLASH, T.; EDELMAN, S. Learning to Grasp Using Visual Information.
Jerusalem, Israel, 1994.
KIRKPATRIC, D. G.; MISHRA, B.; YAP, C. K. Quantitative steinitz’s theorems with
applications to multifingered granping. Proceedings of the ACM Symposium on Theory of
Computing, p. 17–29, mai 1990.
222
Referências Bibliográficas
KRAGIC, D.; MILLER, A. T.; ALLEN, P. K. Real-time tracking meets online grasp
planning. Proceedings of the IEEE International Conference on Robotics and Automation, p.
2460–2465, 2001.
LAKSHMINARAYANA, K. Mechanics of form closure. ASME Techinical Report, p. 1–8,
1978.
LEE, H.-K.; KIM, M.-H.; LEE, S.-R. Determination of 3d grasping points using stereo
matching and neural network. Proceedings of SPIE Optomechatronic Systems III, v. 4902,
p. 285–294, 2002.
LEE, H.-K.; LEE, S.-R. 3d optimal determination of grasping points with whole
geometrical modeling for unknown objects. Sensors and Actuators A: Physical, v. 107, p.
146–151, oct 2003.
MARJI, M.; SIY, P. A new algorithm for dominant points detection and polygonization of
digital curves. Pattern Recognition, v. 36, n. 10, p. 2239–2251, 2003.
MARJI, M.; SIY, P. Polygonal representation of digital planar curves through dominant
point detection - a nonparametric algorithm. Pattern Recognition, v. 37, n. 11, p.
2113–2130, 2004.
MARKENSKOFF, X.; PAPADIMITRIOU, C. H. Optimum grip of a polygon. The
International Journal of Robotics Research, v. 8, n. 2, p. 17–29, abr 1989.
MARQUES, M. H. D. Algoritmo de auxílio de percepção de objetos para robôs de serviço
: uso de hipóteses de contato entre o objeto e mão robótica. Dissertação (Mestrado) —
Escola de Engenharia de São Carlos, Universidade de São Paulo, São Carlos, 2008.
MASON, M. T. Mechanics of robotic manipulation. Cambridge, MA, USA: MIT Press,
2001.
MASSARO, L. C. Implementação de Técnicas de Controle Robusto Multiváriavel ao
Posicionamento de uma Mão Robótica Artificial. São Paulo: EESC-USP, 2006. 103 p.
(Relatório técnico, Processo FAPESP 2006/06453-2).
MILLER, A. T.; ALLEN, P. K. Examples of 3d grasp quality computations. Proceedings of
the IEEE International Conference on Robotics and Automation, p. 1240–1246, 1999.
MILLER, A. T.; ALLEN, P. K. Graspit! a versatile simulator for robotic grasping. IEEE
Robotics & Automation Magazine, v. 11, n. 4, p. 110–122, dez 2004.
MILLER, A. T. et al. Automatic grasp planning using shape primitives. Proceedings of the
IEEE International Conference on Robotics and Automation, p. 1824–1829, 2003.
MORALES, A. et al. Integrated grasp planning and visual object localization for a
humanoid robot with five-fingered hands. International Conference on Intelligent Robots
and Systems, p. 5663–5668, 2006b.
MORALES, A. et al. Heuristic vision-based computation of planar antipodal grasps
on unknown objects. Proceedings of the IEEE International Conference on Robotics and
Automation, p. 583–588, 2001.
Referências Bibliográficas
223
MORALES, A. et al. Vision-based three-finger grasp synthesis constrained by hand
geometry. Journal of Robotics and Autonomous Systems, v. 54, n. 6, p. 496–512, 2006.
MURRAY, R. M.; SASTRY, S. S.; ZEXIANG, L. A Mathematical Introduction to Robotic
Manipulation. Boca Raton, FL, USA: CRC Press, Inc., 1994.
NGUYEN, V.-D. Constructing force-closure grasps. International Journal of Robotics
Research, Sage Publications, Inc., Thousand Oaks, CA, USA, v. 7, n. 3, p. 3–16, 1988. ISSN
0278-3649.
OKABE, A. et al. Spatial Tessellations Concepts and Applications of Voronoi Diagrams.
Second. [S.l.]: John Wiley & Son, 2000.
PEDRO, L. M.; CAURIN, G. A. P. Algoritmo de rápido processamento baseado em redes
neurais artificiais para fixação de objetos desconhecidos por garras robóticas. Revista
Minerva, v. 4, n. 2, p. 189–200, jan 2008.
PFEIFFER, F. Grasping with hidraulic fingers - an example of mecatronics. IEEE/ASME
Transaction on mechatronics, v. 1, n. 2, p. 158–167, 1996.
POLIZZELI, V. Métodos implícitos para a reconstrução de superfícies a partir de nuvens
de pontos. Dissertação (Mestrado) — Instituto de Ciências Matemáticas e de Computação,
Universidade de São Paulo, São Carlos, 2008.
PONCE, J. et al. On characterizing and computing three- and four-finger force-closure
grasps of polyhedral objects. Proceedings og the IEEE International Conference on roboticas
and Automation, v. 2, p. 821–827, 1993.
RAY, B. K.; RAY, K. S. An algorithm for detection of dominant points and polygonal
approximation of digitized curves. Pattern Recognition Letters, Elsevier Science Inc., New
York, NY, USA, v. 12, p. 849–856, 1992a.
RAY, B. K.; RAY, K. S. Detection of significant points and polygonal approximation of
digitized curves. Pattern Recognition Letters, Elsevier Science Inc., New York, NY, USA,
v. 13, n. 6, p. 443–452, 1992b.
REULEAUX, F. The Kinematics of Machinery: Outlines of a Theory of Machines. New
York, USA: Dover Publications, 1986.
ROSENFELD, A.; WESZKA, J. S. An improved method of angle detection on digital
curves. IEEE Trans. Computers, v. 24, n. 9, p. 940–941, 1975.
SALISBURY, J. K. Kinematic and force analysis of articulated hands. Tese (Doutorado)
— Stanford University, 1982a.
SANZ, P. et al. Grasping the not-so-obvious: vision-based object handling for industrial
applications. IEEE Robotics and Automation Magazine, v. 12, n. 3, p. 44–52, sep 2005.
SANZ, P. J. et al. Vision-guided grasping of unknown objects for service robots.
Proceedings of IEEE International Conference on Robotics and Automation, p. 3018–3025,
1998.
224
Referências Bibliográficas
SARKAR, D. A simple algorithm for detection of significant vertices for polygonal
approximation of chain-coded curves. Pattern Recognition Letters, Elsevier Science Inc.,
New York, NY, USA, v. 14, n. 12, p. 959–964, 1993. ISSN 0167-8655.
SAXENA. Fotos de objetos do cotidiano, 2006. Disponível em:
<http://ai.stanford.edu/ asaxena/learninggrasp/data.html>. Acesso em: 23 mai. 2008.
SAXENA, A. et al. Learning to grasp novel objects using vision. Proceedings of the
International Symposium of Experimental Robotics, 2006.
SCHROEDER, W. J.; ZARGE, J. A.; LORENSEN, W. E. Decimation of triangle meshes.
SIGGRAPH Computer Graphics, ACM, New York, NY, USA, v. 26, n. 2, p. 65–70, 1992.
ISSN 0097-8930.
SOUZA, C. E. T. Simplificação de Superfícies Utilizando Redes Neurais Artificiais. São
Paulo: EESC-USP, 2007. 88 p. (Relatório técnico, Processo FAPESP 2006/01016-4).
TAYLOR, M.; BLAKE, A.; COX, A. Visually guided grasping in 3d. Proceedings of the
IEEE International Conference on Robotics and Automation, p. 761–766, may, 1994.
TEH, C. H.; CHIN, R. T. On the detection of dominant points on digital curves. IEEE
Trans. Pattern Anal. Mach. Intell., IEEE Computer Society, Washington, DC, USA, v. 11, n. 8,
p. 859–872, 1989.
VALENTE, C. M. O. Fixação de objetos de formato geométrico desconhecido utilizando
redes neurais artificiais. Dissertação (Mestrado) — Escola de Engenharia de São Carlos,
Universidade de São Paulo, São Carlos, 1999.
VISCHER, D. Cooperating robot with visual and tactile skills. Proceedings of the IEEE
International Conference on Robotics and Automation, v. 3, p. 2018–2025, 1992.
WANG, B. et al. Grasping unknown objects based on 3d model reconstruction. Proceedings
of the IEEE/ASME International Conference on Advanced Intelligent Mechatronics, 2005.
WU, W. Y. An adaptive method for detecting dominant points. v. 36, n. 10, p. 2231–2237,
out, 2003.
XU, G.; SCHERRER, H.; SCHWEITZER, G. Application of neural networks on robot
grippers. Proceedings of the IEEE International Joint Conference on Neural Networks, v. 3,
n. 4, jun, 1990.
YAMAZAKI, K. et al. A grasp planning for picking up an unknown object for a mobile
manipulator. Proceedings of the IEEE International Conference on Robotics and Automation,
p. 2143–2148, mai 2006.
225
APÊNDICE A -- Processamento de imagens
A.1 Justificativa e descrição do método
Para que um sistema robótico seja capaz de fixar um objeto desconhecido, é necessário
que as principais características do objeto sejam adquiridas de alguma maneira pelo sistema.
Conforme discutido no texto desta Dissertação, a melhor forma de se fixar um objeto é determinada a partir da geometria tridimensional, dentre outras características geométricas do objeto.
Entretanto, os sistemas de visão tridimensionais ainda apresentam alto custo de instalação e
não permitem processamento da informação em velocidade adequadas para as aplicações de
fixação.
Por outro lado, a extração da forma do objeto a partir de imagens adquiridas por câmeras
apresenta-se como uma solução satisfatória quanto ao custo de instalação e manutenção, quanto
à velocidade de processamento, e quanto à capacidade de se trabalhar com uma grande variedade de objetos.
A extração da forma do objeto, e de outras características geométricas, a partir de uma
imagem adquirida por uma câmera, é realizada pela utilização de técnicas de processamento
de imagens sobre uma matriz bidimensional de pixels, que representa a cena, capturada pela
câmera, na qual está localizado o objeto.
Diferentes técnicas e algoritmos podem ser utilizados a fim de se extrair estas características específicas. Muitos pesquisadores dedicam-se à pesquisa destes algoritmos, e diversos e
diferentes algoritmos podem ser utilizados com a finalidade de se extrair a forma do objeto,
para a determinação de uma fixação ou para a manipulação dos mesmos.
Dentre as diferentes técnicas de processamento de imagens desenvolvidas e propostas pelos
autores, desta área específica da ciência ou não, interessa-se por aquelas capazes de extrair o
contorno de um objeto presente em uma cena. O método de procesamento da imagem adotado
neste trabalho baseia-se nos resultados obtidos por Valente (1999) e Sanz et al. (2005).
O método consiste em duas etapas distintas: a primeira etapa é a localização do objeto na
A
226
imagem e sua segmentação, ou seja, separação da região do objeto do restante da imagem, e a
segunda etapa é a extração da forma do objeto representada pelo contorno da região segmentada
na etapa anterior.
A primeira etapa do processamento da imagem consiste na segmentação da imagem em
duas regiões, uma região representa o fundo da imagem e outra região representa o objeto.
Uma das maneiras de se segmentar imagens é dada segundo o algoritmo de Otsu. Este algoritmo divide a imagem em duas regiões, a partir de uma análise estatística do histograma da
imagem da cena em tons de cinza. O algoritmo calcula um limiar que define a divisão da imagem da seguinte maneira: os pixels que apresentarem tom de cinza abaixo do limiar calculado
pertencem ao objeto e recebem o valor binário 0, os demais pertencem ao fundo da imagem e
recebem o valor binário 1. Desta maneira, o algoritmo de Otsu por vezes é chamado de binarização de Otsu. O algoritmo apresenta bons resultados para imagens que apresentam histograma
com regiões distintas entre o objeto e o fundo da imagem. A Figura A.1 mostra o histograma
de duas imagens de objetos.
Figura A.1: Histograma de imagens.
A.2 Resultados obtidos
227
Após a etapa de segmentação, ou binarização, da imagem, a borda do objeto, que representa
sua forma, deve ser extraída. Valente (1999) estuda diversos métodos de detecção de borda, e
aponta como o mais adequado para a aplicação o método do vizinho mais próximo. Os resultados apresentados por Valente (1999), mostram que outros métodos são capazes de extrair a
borda do objeto, contudo, muitos apresentam resultados com ruídos e não extraem uma borda
fechada do objeto. Pela necesidade de se extrair somente uma borda fechada da área segmentada, sem ruídos e com espessura de um único pixel, o método apontado, como o único que
atendeu os requisitos, foi o método do vizinho mais próximo.
Desta maneira, de uma forma resumida, a processamento da imagem consiste em uma etapa
de segmentação do objeto, e outra de extração do contorno do objeto.
A.2 Resultados obtidos
O método adotado neste trabalho, composto pelo algoritmo de binarização por Otsu e pela
extração do contorno do objeto pelo método do vizinho mais próximo, foi implementado no
ambiente de desenvolvimento Matlab e testes foram realizados com as imagens utilizadas nas
simulações dos algoritmos de fixação 2D do Capítulo 5. As Figuras A.2, A.3 e A.4 mostram a
imagem original, a imagem segmentada e a borda extraída.
(a)
(b)
Figura A.2: Resultado do processamento da imagem. Da esquerda para a direita: imagem
original, imagem binarizada e o contorno extraído (parte 1 de 3).
A
228
(a)
(b)
(c)
(d)
(e)
Figura A.3: Resultado do processamento da imagem. Da esquerda para a direita: imagem
original, imagem binarizada e o contorno extraído (parte 2 de 3).
A.2 Resultados obtidos
229
(a)
(b)
(c)
(d)
(e)
Figura A.4: Resultado do processamento da imagem. Da esquerda para a direita: imagem
original, imagem binarizada e o contorno extraído (parte 3 de 3).
A
230
Os tempos de processamento das imagens foram medidos e estão sumarizados na Tabela
A.1.
Tabela A.1: Tabela dos tempos da etapa de processamento das imagems utilizadas nas simulações do algoritmo de fixação 2D proposto no Capítulo 5.
Figura A.2(a)
Figura A.2(b)
Figura A.3(a)
Figura A.3(b)
Figura A.3(c)
Figura A.3(d)
Figura A.3(e)
Figura A.4(a)
Figura A.4(b)
Figura A.4(c)
Figura A.4(d)
Figura A.4(e)
Tempo de processamento [s]
0,074725
0,092710
0,091121
0,119825
0,104295
0,110208
0,102121
0,080964
0,106727
0,078304
0,101178
0,144116
A.3 Considerações sobre o método de processamento de imagens adotado
Foram satisfatórios os resultados obtidos com o método de processamento de imagens adotado. Quanto ao tempo de processamento, as medições nas simulações com imagens reais
mostram que os tempos são adequados para aplicações em robótica. Quanto à qualidade das
respostas, verificou-se que para as imagens com contraste entre o fundo o objeto, o algoritmo
foi eficiente, ou seja, a segmentação e a extração da borda do objeto foram bem sucedidas.
Apesar dos resultdos satisfatórios obtidos, algumas ressalvas devem ser consideradas. O
principal ponto negativo do método refere-se a etapa de segmentação da imagem. O algoritmo
é ineficiente nos casos em que não existe no histograma da imagem uma divisão bem definida
entre o fundo da imagem e o objeto, ou seja, o tom do objeto, ou sua textura, é semelhante
ao fundo da imagem. Como solução pode-se adotar outros algoritmos de segmentação, utilizar
métodos de pré-processamento a fim de ajustar o brilho e o contraste da imagem.
Ainda quanto à etapa de segmentação da imagem, existem ambientes onde não há controle
de iluminação, principalmente nos ambientes fabrís, podendo haver sombras indesejadas e até
iluminação insuficiente. Nestes casos a segmentação pode também ocorrer de forma indesejada,
e a utilização de fontes de luz auxiliares, como lanternas e luz polarizada, podem promover
melhores resultados.
231
APÊNDICE B -- Tabelas do Capítulo 4
As Tabelas B.1 e B.2 mostram os resultados obtidos pelos autores Rosenfeld e Weszka
(1975), Teh e Chin (1989), Ansari e Huang (1991), Chung et al. (1994), Ray e Ray (1992a),
Ray e Ray (1992b), Cornic (1997), Wu (2003), Marji e Siy (2003), Marji e Siy (2004), Sarkar
(1993) e Huang e Sun (1999), na aproximação poligonal das formas Leaf Shape, Chromossome
Shape e Semi-circle Shape da Figura 4.6.
Tabela B.1: Tabela de resultados de algoritmos de aproximação poligonal (parte 1 de 2).
Curva
Leaf
n=120 pontos
Método
Rosenfeld e Weszka (1975)
Teh e Chin (1989)(k-cosine)
Teh e Chin (1989)(k-curvature)
Ansari e Huang (1991)
Chung et al. (1994)
Ray e Ray (1992a)
Ray e Ray (1992b)
Cornic (1997)
Wu (2003)
Marji e Siy (2003)
Marji e Siy (2003)(suppressed)
Sarkar (1993)
Cornin (1999)
Huang e Sun (1999)
Araújo e Tanaka (1995)
m
18
29
28
30
28
32
32
23
22
21
23
28
24
28
TC
6,667
4,138
4,286
4,000
4,286
3,750
3,750
5,217
5,455
5,714
5,217
4,286
5,000
4,286
EQ
30,570
14,960
15,430
25,570
12,310
14,718
14,180
20,340
13,210
14,150
13,170
7,300
14,030
10,940
EM
1,530
0,990
0,990
2,130
0,960
0,996
0,990
1,000
0,780
0,780
0,780
0,740
0,340
1,000
EQp
4,586
3,615
3,600
6,393
2,872
3,925
3,781
3,899
2,422
2,476
2,524
1,703
2,806
2,553
EMp
0,230
0,239
0,231
0,533
0,224
0,266
0,264
0,192
0,143
0,137
0,150
0,173
0,068
0,233
Apêndice B -- Tabelas do Capítulo 4
232
Tabela B.2: Tabela de resultados de algoritmos de aproximação poligonal (parte 2 de 2).
Curva
Chromosome
n=60 pontos
Semicircle
n=102 pontos
Método
Rosenfeld e Weszka (1975)
Teh e Chin (1989)(k-cosine)
Teh e Chin (1989)(k-curvature)
Ansari e Huang (1991)
Chung et al. (1994)
Ray e Ray (1992a)
Ray e Ray (1992b)
Cornic (1997)
Wu (2003)
Marji e Siy (2003)
Marji e Siy (2003)(suppressed)
Sarkar (1993)
Cornin (1999)
Huang e Sun (1999)
Araújo e Tanaka (1995)
Rosenfeld e Weszka (1975)
Teh e Chin (1989)(k-cosine)
Teh e Chin (1989)(k-curvature)
Ansari e Huang (1991)
Chung et al. (1994)
Ray e Ray (1992a)
Ray e Ray (1992b)
Cornic (1997)
Wu (2003)
Marji e Siy (2003)
Marji e Siy (2003)(suppressed)
Sarkar (1993)
Cornin (1999)
Huang e Sun (1999)
Araújo e Tanaka (1995)
m
14
22
22
28
22
18
18
17
17
12
11
19
17
15
22
12
15
16
16
16
29
27
30
27
26
18
19
30
18
19
TC
4,286
2,727
2,727
2,143
2,727
3,333
3,333
3,529
3,529
5,000
5,455
3,158
3,529
4,000
2,727
8,500
6,800
6,375
6,375
6,375
3,517
3,778
3,400
3,778
3,923
5,667
5,368
3,400
5,667
5,368
EQ
59,120
20,610
20,610
17,830
12,360
5,566
4,810
5,540
5,010
8,080
9,960
3,857
3,180
4,520
2,720
22,610
7,200
5,910
20,250
7,710
11,820
11,500
9,190
9,010
9,010
24,020
17,370
2,910
12,520
17,950
EM
EQp
EMp
1,560 13,795 0,364
1,000 7,557 0,367
1,000 7,557 0,367
1,260 8,321 0,588
1,060 4,532 0,389
0,707 1,670 0,212
0,650 1,443 0,195
0,860 1,570 0,244
0,640 1,420 0,181
0,895 1,616 0,179
0,900 1,826 0,165
0,550 1,221 0,174
0,630 0,901 0,179
0,350 1,130 0,088
0,510 0,997 0,187
1,580 2,660 0,186
0,740 1,059 0,109
0,710 0,927 0,111
2,000 3,176 0,314
1,150 1,209 0,180
0,833 3,361 0,237
0,880 3,044 0,233
0,880 2,703 0,259
0,830 2,385 0,220
0,740 2,297 0,189
1,000 4,239 0,176
1,450 3,236 0,270
0,490 0,856 0,144
0,740 2,209 0,131
1,360 3,344 0,253
Apêndice B -- Tabelas do Capítulo 4
233
As aproximações realizadas pelos autores das Tabelas B.1 e B.2 acima foram realizadas
com o algoritmo proposto de aproximação poligonal do Capítulo 4, os resultados obtidos estão
na Tabela B.3 a seguir.
Tabela B.3: Tabela de resultados do algoritmo proposto para a aproximação poligonal.
Curva
Leaf shape
120 pontos
m
18
21
22
23
24
28
29
30
32
Chromosome shape 11
60 pontos
12
14
15
17
18
19
22
28
Semi-circle shape 12
102 pontos
15
16
18
19
26
27
29
30
TC
6,666
5,714
5,454
5,217
5,000
4,285
4,137
4,000
3,750
5,454
5,000
4,285
4,000
3,529
3,333
3,157
2,727
2,142
8,500
6,800
6,375
5,666
5,368
3,923
3,777
3,517
3,400
EQ
33,580
25,950
24,590
11,080
11,190
8,790
7,660
6,820
6,800
11,570
8,020
5,690
5,320
4,970
3,960
3,600
2,390
1,980
31,510
27,580
25,220
16,190
16,190
8,110
7,270
6,870
6,870
EM
2,680
2,360
2,360
0,970
0,970
1,000
1,000
1,000
1,000
1,480
0,930
0,810
0,813
0,930
0,930
0,930
0,510
0,550
1,360
1,360
1,360
1,360
1,360
1,000
1,000
1,000
1,000
EQp
5,037
4,541
4,508
2,123
2,238
2,051
1,851
1,705
1,813
2,121
1,604
1,327
1,330
1,408
1,188
1,140
0,876
0,924
3,707
4,055
3,956
2,960
3,020
2,067
1,924
1,953
2,020
EMp
0,402
0,413
0,432
0,185
0,194
0,233
0,241
0,250
0,266
0,271
0,186
0,189
0,203
0,263
0,279
0,294
0,187
0,256
0,160
0,200
0,213
0,240
0,250
0,254
0,264
0,284
0,294
234
Apêndice B -- Tabelas do Capítulo 4
235
APÊNDICE C -- Tabelas do Capítulo 6
No Capítulo 6 duas simulações são realizadas para avaliar o comportamento da rede na
simplificação dos modelos Bunny e Fandisk.
No primeiro experimento verifica-se o desempenho da rede em função do limiar de mínima
energia Umin utilizado na etapa iterativa da rede. Diferentes porcentagens de simplificação são
realizadas para ambos os modelos, para cada porcentagem de simplificação, o valor de Umin é
variado de 0 a 2.5.
Para cada simplificação, foram medidos o erro máximo Emax e o erro médio quadrático,
assim como o tempo de processamento. Os valores obtidos encontram-se nas Tabelas a seguir.
Tabela C.1: Valores dos erros de silplificação Emax e Emed e do tempo de processamento para diferentes porcentagens de simplificação e limiar de
energia Umin para o modelo Bunny.
Aproximação de 50%
Aproximação de 25%
Aproximação de 10%
Umin
Emax Emed tempo(s)
Emax Emed tempo(s)
Emax Emed tempo(s)
0
0,1672 0,0012 347,133
0,3876 0,0039 483,836
0,4219 0,0101 565,7230
0,2
0,5404 0,0039 77,4513
0,3767 0,0095 128,855
0,3822 0,0168 173,5104
0,4
0,5404 0,0045 67,4974
0,3757 0,0115 108,756
0,3875 0,0230 148,9833
0,6
0,3812 0,0046 64,0983
0,7719 0,0136 100,062
0,7638 0,0282 134,3022
0,8
0,3812 0,0047 60,2655
0,7719 0,0143 94,0924
0,3903 0,0290 125,1765
1
0,3812 0,0047 58,2909
0,3876 0,0137 90,8525
0,8245 0,0326 119,8143
1,2
0,3812 0,0047 58,2909
0,3876 0,0137 90,8525
0,8245 0,0326 119,8143
1,4
0,3812 0,0047 56,5945
0,3876 0,0147 87,7936
0,6708 0,0358 114,6069
1,6
0,3812 0,0047 56,3689
0,3876 0,0150 87,1779
0,3841 0,0370 112,8851
1,8
0,3812 0,0047 56,3255
0,3876 0,0153 86,8228
0,3810 0,0378 111,7603
2
0,3812 0,0047 56,3620
0,3876 0,0154 86,6014
0,3890 0,0387 110,4562
2,2
0,3812 0,0048 56,2278
0,3876 0,0155 86,2516
0,7305 0,0406 109,8475
2,4
0,3812 0,0048 56,2864
0,3767 0,0156 86,1727
0,4209 0,0397 109,1248
236
Apêndice C -- Tabelas do Capítulo 6
Umin
0
0,2
0,4
0,6
0,8
1
1,2
1,4
1,6
1,8
2
2,2
2,4
Tabela C.2: Continuação da Tabela C.1.
Aproximação de 5%
Aproximação de 1%
Emax Emed tempo(s)
Emax Emed tempo(s)
0,7422 0,0209 591,5694
1,1461 0,0808 613,4748
0,6232 0,0247 193,8970
1,7085 0,1045 215,7642
0,3844 0,0319 167,4336
2,6541 0,1077 187,9055
0,7723 0,0385 151,8723
1,9788 0,1124 171,2991
0,7265 0,0419 141,7764
1,1402 0,1194 160,5178
0,6500 0,0485 135,0200
1,3549 0,1086 153,4926
0,6500 0,0485 135,0200
1,3549 0,1086 153,4926
0,7002 0,0541 128,4324
2,5570 0,1279 145,9008
0,8829 0,0550 126,5216
0,6255 0,1184 142,6141
0,6324 0,0553 124,5948
0,9656 0,1237 140,9897
0,4726 0,0590 122,7152
1,8028 0,1303 138,4124
0,6703 0,0611 121,7789
0,9547 0,1273 137,5533
0,6848 0,0617 120,9533
2,4819 0,1224 137,1750
Tabela de dados de simplificação para o modelo Bunny.
Aproximação de 0.5%
Emax Emed tempo(s)
1,8185 0,1643 616,4467
1,8776 0,1678 218,5703
2,1437 0,1782 190,7209
1,9537 0,1937 174,4189
2,0410 0,1884 163,4587
1,4765 0,1720 156,4062
1,4765 0,1720 156,4062
1,0327 0,1606 148,9379
1,5827 0,1769 146,1579
1,0585 0,1683 144,1551
1,0040 0,1850 141,9164
1,0778 0,1900 140,9417
1,8506 0,1749 138,5068
Apêndice C -- Tabelas do Capítulo 6
237
Tabela C.3: Valores dos erros de silplificação Emax e Emed e do tempo de processamento para diferentes porcentagens de simplificação e limiar de
energia Umin para o modelo Fandisk.
Aproximação de 50%
Aproximação de 25%
Aproximação de 10%
Umin
Emax Emed tempo(s)
Emax Emed tempo(s)
Emax Emed tempo(s)
0
0,3244 0,0014 25,6091
0,2001 0,0033 38,0612
0,2490 0,0137 46,0759
0,2
0,3207 0,0015 19,7536
0,2895 0,0045 35,9495
0,3246 0,0144 43,8141
0,4
0,5720 0,0034 15,4886
0,1991 0,0041 24,2801
0,2413 0,0148 32,2575
0,6
0,2751 0,0041 14,3757
0,2947 0,0066 22,6297
0,2828 0,0165 29,2346
0,8
0,2941 0,0043 14,5231
0,1720 0,0068 22,4315
0,1747 0,0155 29,7090
1
0,5819 0,0059 14,4002
0,2535 0,0080 22,4104
0,2191 0,0167 28,9227
1,2
0,1454 0,0048 14,0044
0,1403 0,0079 21,4099
0,1985 0,0156 28,1243
1,4
0,4488 0,0059 14,0660
0,2094 0,0091 21,2250
0,2191 0,0142 28,7185
1,6
0,4386 0,0064 14,0307
0,4386 0,0103 21,7541
0,3236 0,0151 28,2823
1,8
0,3343 0,0067 13,7204
0,1984 0,0078 21,5372
0,2423 0,0150 28,3540
2
0,2624 0,0069 13,4530
0,1792 0,0101 21,1588
0,3058 0,0165 27,3021
2,2
0,3180 0,0066 13,6826
0,3099 0,0098 21,4038
0,2327 0,0146 27,9037
2,4
0,3109 0,0074 13,2443
0,2988 0,0111 21,0347
0,3958 0,0167 26,7654
2,6
0,3310 0,0074 13,3550
0,2796 0,0119 21,2856
0,2188 0,0167 26,4423
Tabela de dados de simplificação para o modelo Fandisk.
238
Apêndice C -- Tabelas do Capítulo 6
Umin
0
0,2
0,4
0,6
0,8
1
1,2
1,4
1,6
1,8
2
2,2
2,4
2,6
Tabela C.4: Continuação da Tabela C.3.
Aproximação de 5%
Aproximação de 1%
Emax Emed tempo(s)
Emax Emed tempo(s)
0,2613 0,0322 48,9575
0,4940 0,0931 51,2130
0,2858 0,0298 46,8966
0,5214 0,1074 49,0050
0,3221 0,0328 35,0476
0,5364 0,0984 37,3104
0,2931 0,0332 32,1259
0,5262 0,0962 35,4479
0,2974 0,0313 31,7793
0,5086 0,0937 34,1710
0,2882 0,0314 31,8899
0,5497 0,0942 35,1330
0,2455 0,0319 30,9557
0,5589 0,0953 33,2999
0,3093 0,0349 30,3907
0,5576 0,0851 34,4721
0,3570 0,0280 31,3672
0,4858 0,0888 33,8476
0,2946 0,0304 31,6631
0,5103 0,0940 34,2575
0,3499 0,0297 30,8256
0,5503 0,0860 33,6051
0,2619 0,0294 31,3037
0,4210 0,0811 33,8395
0,3112 0,0291 30,5095
0,5187 0,0995 33,2071
0,2846 0,0309 30,1710
0,5471 0,0961 33,1513
Tabela de dados de simplificação para o modelo Fandisk.
Apêndice C -- Tabelas do Capítulo 6
239
240
Apêndice C -- Tabelas do Capítulo 6
Tabela C.5: Resultados obtidos na simplificação do Modelo Bunny (34834 vertices, 69451
triângulos) para o método proposto, e para os outros métodos (parte 1 de 2).
Hopfield Mesh Simplification (Proposto)
Nvert
Ntriang
Emax
Emed
17417(50%)
34726
0,167200
0,001200
8709(25%)
17360
0,387600
0,003900
3483(10%)
6947
0,421900
0,010100
1742(5%)
3480
0,742200
0,020900
(2%)
348(1%)
690
1,141600
0,080800
Mesh Decimation (SCHROEDER et al., 1992)
Nvert
Ntriang
Emax
Emed
17566(50%)
34965
0,161400
0,007350
8705(25%)
17267
0,258600
0,019470
3505(10%)
6900
0,521200
0,057910
1775(5%)
3451
1,200000
0,162000
701(2%)
1389
2,072100
0,342300
344(1%)
678
3,311700
0,646300
Simplification envelopes (COHEN et al., 1996)
Nvert
Ntriang
Emax
Emed
17418(50%)
34643
0,020890
0,004140
8709(25%)
17252
0,041540
0,011740
3472(10%)
6801
0,088130
0,031170
1763(5%)
3395
0,162900
0,060660
678(2%)
1301
0,380200
0,142300
355(1%)
672
0,759900
0,283800
Multiresolution decimation (CIAMPALINI et al., 1997)
Nvert
Ntriang
Emax
Emed
17417(50%)
34679
0,022400
0,003600
8708(25%)
17289
0,043800
0,009700
3483(10%)
6874
0,094800
0,024200
1741(5%)
3408
0,169700
0,045900
696(2%)
1358
0,351900
0,099700
348(1%)
674
0,614100
0,181000
Mesh optimization (HOPPE et al., 1993)
Nvert
Ntriang
Emax
Emed
17410(50%)
34643
0,296800
0,009960
8699(25%)
17279
0,036680
0,010640
3501(10%)
6956
0,296400
0,015540
1758(5%)
3491
0,366600
0,024150
686(2%)
1347
0,426200
0,048460
349(1%)
676
0,840700
0,082650
Apêndice C -- Tabelas do Capítulo 6
241
Tabela C.6: Resultados obtidos na simplificação do Modelo Bunny (34834 vertices, 69451
triângulos) para o método proposto, e para os outros métodos (parte 2 de 2).
Progressive meshes (HOPPE, 1996)
Nvert
Ntriang
Emax
Emed
17417(50%) 34667 0,133900
0,007810
8708(25%)
17252 0,158500
0,011000
3483(10%)
6821
0,206500
0,018510
1741(5%)
3367
0,281700
0,032730
696(2%)
1359
0,529000
0,068970
348(1%)
673
0,812200
0,124600
Quadric error metrics (GARLAND; HECKBERT, 1997)
Nvert
Ntriang
Emax
Emed
17417(50%) 34666 1,024000
0,004860
8708(25%)
17293 1,676900
0,011350
3483(10%)
6888
1,707000
0,023630
1741(5%)
3434
2,425600
0,042790
696(2%)
1360
4,270000
0,103100
171(1%)
675
4,661400
0,167200
242
Apêndice C -- Tabelas do Capítulo 6
Tabela C.7: Resultados obtidos na simplificação do Modelo Fandisk (6475 vertices, 12946
triângulos) para o método proposto, e para os outros métodos (parte 1 de 2).
Hopfield Mesh Simplification (Proposto)
Nvert
Ntriang
Emax
Emed
3238(50%)
6470
0,324400
0,001400
1619(25%)
3230
0,200100
0,003300
648(10%)
1297
0,249000
0,013700
324(5%)
650
0,261300
0,032200
(2%)
65(1%)
132
0,494000
0,093100
Mesh Decimation (SCHROEDER et al., 1992)
Nvert
Ntriang
Emax
Emed
3224(50%)
6444
0,004120
4,50.10−5
1616(25%)
3228
0,074520
0,003980
639(10%)
1274
0,247100
0,015390
325(5%)
646
1,170800
0,058000
131(2%)
258
2,156600
0,152300
66(1%)
128
3,512800
0,352700
Simplification envelopes (COHEN et al., 1996)
Nvert
Ntriang
Emax
Emed
3216(50%)
6428
0,003170
0,000158
1633(25%)
3262
0,022270
0,002505
654(10%)
1304
0,059580
0,009646
317(5%)
630
0,146800
0,024520
129(2%)
244
0,972600
0,182700
77(1%)
150
8,737000
0,940600
Multiresolution decimation (CIAMPALINI et al., 1997)
Nvert
Ntriang
Emax
Emed
3149(50%)
6294
0,002480
4,84.10−5
1615(25%)
3226
0,004270
0,000210
645(10%)
1286
0,026570
0,002800
323(5%)
642
0,067780
0,009440
129(2%)
254
0,343700
0,047670
64(1%)
124
1,259800
0,180600
Mesh optimization (HOPPE et al., 1993)
Nvert
Ntriang
Emax
Emed
3287(50%)
6570
0,529700
0,002776
1611(25%)
3218
0,502100
0,002901
655(10%)
1306
0,245200
0,003614
333(5%)
662
0,291000
0,005877
123(2%)
220
0,375900
0,021800
62(1%)
120
0,873400
0,066800
Apêndice C -- Tabelas do Capítulo 6
243
Tabela C.8: Resultados obtidos na simplificação do Modelo Fandisk (6475 vertices, 12946
triângulos) para o método proposto, e para os outros métodos (parte 2 de 2).
Progressive meshes (HOPPE, 1996)
Nvert
Ntriang
Emax
Emed
3237(50%)
6470
0,136600
0,003451
1618(25%)
3232
0,167400
0,004139
647(10%)
1290
0,237700
0,006077
323(5%)
642
0,247000
0,011860
123(2%)
254
1,277700
0,065760
64(1%)
124
3,261000
0,225900
Quadric error metrics (GARLAND; HECKBERT, 1997)
Nvert
Ntriang
Emax
Emed
3237(50%)
6470
0,000670
8,62.10−5
1618(25%)
3232
0,004420
0,000210
647(10%)
1290
0,037460
0,001830
323(5%)
642
0,092530
0,005810
129(2%)
254
0,332100
0,025520
64(1%)
124
1,237300
0,098790
244
Apêndice C -- Tabelas do Capítulo 6
245
APÊNDICE D -- Cálculo dos momentos principais
de inércia
Dada uma forma, por exemplo uma figura binária, contendo uma forma geométrica qualquer, os momentos principais de inércia da forma geométrica são definidos como:
Ixx =
N
M
∑ ∑ m · x2
(D.1)
x=1 y=1
Iyy =
N
M
∑ ∑ m · y2
(D.2)
x=1 y=1
Ixy = Iyx =
N
M
∑ ∑ m·x·y
(D.3)
x=1 y=1
em que M é a largura da imagem em pixels, e N é a sua altura, também em pixels.
Onde x e y são as coordenadas de cada pixel e m é a massa do pixel analizado, se o pixel
pertencer ao fundo da imagem, é considerado que a sua massa é igual a zero (m = 0), se o pixel
pertencer ao obejto sua massa é unitária (m = 1).
Figura D.1: Definição da massa do pixel pertencente a figura, e do pixel pertencente ao fundo
da imagem, necessária para o cálculo dos momentos de inércia Ixx Iyy e Ixy .
Apêndice D -- Cálculo dos momentos principais de inércia
246
A partir dos momentos de inércia Ixx , Iyy e Ixy os momentos principais de inércia podem ser
calculados.
Para o caso estudado, deseja-se obter a direção do segundo momento principal de inércia
I2 . Dada uma forma expressa em uma figura binária, a direção do momento principal de inércia,
α , é dado pela equação D.4.
tg(2 · α ) =
2 · Ixy
Ixx · Iyy
(D.4)
247
APÊNDICE E -- Cálculo do centro de um fixação
realizada por três pontos de
contato
Dados três pontos quaisquer PA , PB e PC de fixação de uma garra de três dedos, deseja-se
determinar o ponto C f cujas retas C f PA , C f PB e C f PC formam entre si 120o conforme ilustra a
Figura E.1.
Figura E.1: Pontos de contato PA , PB e PC de fixação de uma garra de três dedos e o centro de
fixção C f .
E
248
E.1 Definição do problema
E.1.1 Arco capaz de 120o
Dados dois pontos quaisquer PA , PB define-se como arco capaz de 120o a região geométrica
do ponto C f que forma com o segmento de reta PA PB um triângulo com ângulo de 120o no
vértice Cf , conforme mostra a Figura E.2.
Figura E.2: Arco capaz de 120o .
Para se determinar o arco capaz deve-se traçar a mediana do segmento de reta PA PB na qual
esté localizado o centro do arco capaz, o ponto O, que é eqüidistante dos pontos PA e PB em
uma distância r, que é definida pela equação a seguir.
r=
|PA PB |
2
cos(30o )
(E.1)
E.1.2 Cálculo do C f
Para o cálculo do centro de fixação para três pontos de contato, deve-se traçar o arco capaz
de 120o para os segmentos de reta PA PB e PB PC .
No cálculo do arco capaz de cada segmento, existem duas regiões geométricas distintas,
cada solução apresenta um centro do arco capaz, O e O . Para a resolução do problema estudado
E.1 Definição do problema
249
selecionado o arco capaz cujo centro é mais distante ao centro geométrico do conjunto de pontos
PA , PB e PC . O mesmo procedimento é realizado para o segmento PB PC .
Os arcos capazes de 120o dos segmentos de reta PA PB e PB PC cruzam-se em dois pontos, um
deles é o próprio ponto PB o outro é o centro de fixação, o ponto C f , conforme ilustra a Figura
E.3.
Figura E.3: Cálculo do ponbto C f .
E.1.3 Solução analítica
As equações das circunferências que representam os arcos capazes dos segmentos PA PB e
PB PC são definidos por E.2 e E.4.
r12 = (x − x1 )2 + (y − y1 )2
(E.2)
r22 = (x − x2 )2 + (y − y2 )2
(E.3)
Onde x1 e y1 são as coordenadas do ponto O1 , centro do primeiro arco capaz, e x2 e y2 são as
coordenadas do ponto O2 , centro do segundo arco capaz. O sistema 2x2 é não linear e pode ser
resolvido pelo método numérico apropriado.
E
250
E.1.4 Solução geométrica
Uma solução mais simples é a resolução geométrica do sistema. A partir do triângulo
formado pelos centros dos arcos capazes O1 e O2 , e do centro de fixação C f , ilustrado na Figura
E.4, pode-se obter a relação da equação E.4 atravéz da lei dos cossenos.
Figura E.4: Solução geométrica para o cálculo do centro de fixação.
2
− 2 · r1 · dO1 O2 · cos(γ )
r22 = r12 + rO
1 O2
(E.4)
Isolando γ obtem-se:
γ = acos
d22 + dO2 1 O2 − d22
2 · d1 · dO1 O2
(E.5)
Onde dO1 O2 é a distância entre os pontos O1 e O2 .
Calcula-se então a inclinação do semento de reta O1 )2 pela equação E.6.
y2 − y1
α = arc tag
x2 − x1
−−−→
O ponto CF é então determinado pela equação do vetor O1C f .
(E.6)
E.1 Definição do problema
251
−−−→
O1C f = C f − O1 =
Cf =
r1 · cos(α + γ )
r1 · sen(α + γ )
(E.7)
r1 · sen(α + γ )
+
r1 · cos(α + γ )
x1
y1
, onde O1 =
x1
y1
(E.8)
Como a equação E.8 permite duas soluções, α1 = α e α1 = α + 180o , o ponto C f deve ser
calculado para os dois casos, sendo então selecionado o C f cálculado mais próximo ao centróide
dos ponto PA , PB e PC .
252
E
253
APÊNDICE F -- Figuras das respostas das
simulações do algoritmo de
auto-aprendizagem do Capítulo 8
No Capítulo 8, foram realizadas duas diferentes simulações para avaliação do comportamento do algoritmo de auto aprendizagem proposto.
No segundo tipo de simulação apresentado, os objetos foram apresentados à rede em uma
ordem aleatória, e de acordo com as respostas obtidas, algumas conclusões puderam ser realizadas. Contudo, como a ordem de apresentação dos objetos é aleatória, é necessário repetir a
mesma simulção diversas vezes a fim de verificar se o comportamento observado repete-se.
Com este objetivo, o segundo tipo de simulação apresentado foi repetido quatro vezes, e as
próximas Figuras apresentam as respostas obtidas. Pode-se observar que o mesmo comportamento foi apresentado em cada uma das simulações.
254
F
F.1 Gráficos da segunda simulação
Figura F.1: Objetos apresentados à rede entre retreinamentos. Os valores mostrados representam a média entre cada 250 retreinamentos. Resultados para a segunda simulação de apresentação de objetos à rede, em ordem randômica.
F.1 Gráficos da segunda simulação
255
Figura F.2: Tempo de execução da rede. Média entre cada 250 retreinamentos. Resultados para
a segunda simulação de apresentação de objetos à rede, em ordem randômica.
Figura F.3: Tempo de retreinamento da rede. Média entre cada 250 retreinamentos. Resultados
para a segunda simulação de apresentação de objetos à rede, em ordem randômica.
256
F
F.2 Gráficos da terceira simulação
Figura F.4: Objetos apresentados à rede entre retreinamentos. Os valores mostrados representam a média entre cada 250 retreinamentos. Resultados para a terceira simulação de apresentação de objetos à rede, em ordem randômica.
F.2 Gráficos da terceira simulação
257
Figura F.5: Tempo de execução da rede. Média entre cada 250 retreinamentos. Resultados para
a terceira simulação de apresentação de objetos à rede, em ordem randômica.
Figura F.6: Tempo de retreinamento da rede. Média entre cada 250 retreinamentos. Resultados
para a terceira simulação de apresentação de objetos à rede, em ordem randômica.
258
F
F.3 Gráficos da quarta simulação
Figura F.7: Objetos apresentados à rede entre retreinamentos. Os valores mostrados representam a média entre cada 250 retreinamentos. Resultados para a quarta simulação de apresentação
de objetos à rede, em ordem randômica.
F.3 Gráficos da quarta simulação
259
Figura F.8: Tempo de execução da rede. Média entre cada 250 retreinamentos. Resultados para
a quarta simulação de apresentação de objetos à rede, em ordem randômica.
Figura F.9: Tempo de retreinamento da rede. Média entre cada 250 retreinamentos. Resultados
para a quarta simulação de apresentação de objetos à rede, em ordem randômica.
260
F
F.4 Gráficos da quinta simulação
Figura F.10: Objetos apresentados à rede entre retreinamentos. Os valores mostrados representam a média entre cada 250 retreinamentos. Resultados para a quinta simulação de apresentação
de objetos à rede, em ordem randômica.
F.4 Gráficos da quinta simulação
261
Figura F.11: Tempo de execução da rede. Média entre cada 250 retreinamentos. Resultados
para a quinta simulação de apresentação de objetos à rede, em ordem randômica.
Figura F.12: Tempo de retreinamento da rede. Média entre cada 250 retreinamentos. Resultados
para a quinta simulação de apresentação de objetos à rede, em ordem randômica.
262
F
263
ANEXO A -- Adição de Minkowski
A adição de Minkowisk é uma operação de conjunto. Dados dois conjuntos A e B, tal que
cada conjunto é formado por um número de vetores, então a adição de Minkowisk consiste em
um conjunto de vetores C, sendo que cada vetor c ∈ C é obtido pela soma vetorial:
c = a+b
(A.1)
A ⊕ B = {a + b | a ∈ A, b ∈ B}.
(A.2)
com a ∈ A e b ∈ B.
Desta maneira tem-se que:
A soma pode ser extendida para um número n de conjunto de vetores, assim:
S = A1 ⊕ · · · ⊕ An = {a1 + · · · + an | a1 ∈ A1 , · · · , an ∈ An }.
(A.3)
A Equação A.3 pode ser ainda escrita na forma suprimida:
S=
n
{Ai }.
i=1
(A.4)
264
Anexo A -- Adição de Minkowski
Anexo A -- Adição de Minkowski
265
266
Anexo A -- Adição de Minkowski
Anexo A -- Adição de Minkowski
267