Escolar Documentos
Profissional Documentos
Cultura Documentos
Leandrocoutorev PDF
Leandrocoutorev PDF
Data de Depsito:
Assinatura:________________________
USP So Carlos
Julho de 2012
Resumo
Abstract
Integration of Computer Vision and Mobile Robotics systems is a field of great interest
in research. This work demonstrates a method of global localization for Autonomous Mobile
Robots based on the creation of a visual memory map, through detection and description of
reference points from captured images, using the SURF method, associated to odometer data
in a specific environment. The proposed procedure, coupled with specific knowledge of the
environment, allows for localization to be achieved at a later stage through pairing of these
memorized features with the scene being observed in real time. Experiments are conducted to
show the effectiveness of the method for the localization of mobile robots in indoor
environments. Improvements aimed at difficult situations such as traversing doors are
presented. Results are analyzed and navigation alternatives and possible future refinements
are discussed.
Sumrio
RESUMO ................................................................................................................................................................I
ABSTRACT .........................................................................................................................................................III
SUMRIO............................................................................................................................................................. V
LISTA DE FIGURAS .........................................................................................................................................VI
1
INTRODUO.........................................................................................................................................1-1
1.1
1.2
1.3
ROBTICA MVEL.............................................................................................................................2-11
2.1
2.2
2.2.1
2.3
2.4
MOTIVAO .......................................................................................................................................1-5
OBJETIVO ...........................................................................................................................................1-7
ESTRUTURA DA MONOGRAFIA .........................................................................................................1-10
SENSORES E ATUADORES .................................................................................................................2-12
MAPAS E LOCALIZAO ..................................................................................................................2-15
Mtodos Probabilsticos Para Localizao................................................................................2-20
A NAVEGAO E CONTROLE ROBTICO ..........................................................................................2-22
A ALTERNATIVA DOS SENSORES VISUAIS ........................................................................................2-26
DISCUSSO............................................................................................................................................6-67
6.1
REFERNCIAS BIBLIOGRFICAS............................................................................................................6-72
Lista de Figuras
Figura 1.1: Exemplo de um brao robtico Unimate (Robot Hall of Fame). ......................................................1-2
Figura 1.2: Rob humanide Asimo, desenvolvido pela Honda. .........................................................................1-3
Figura 1.3: Exemplos de pareamento entre imagens. Perspectivas mais prximas geram mais pares de pontos, e
os pares so mais alinhados horizontalmente. .....................................................................................................1-9
Figura 2.1: O ciclo de percepo e ao do rob..............................................................................................2-11
Figura 2.2: Exemplo de mapa mtrico (S. Thrun)..............................................................................................2-19
Figura 2.3: Um mapa mtrico pode ser decomposto em ns ou clulas, se tornando um mapa topolgico,
representado na figura pelo grafo (Siegwart e Nourbakhsh).............................................................................2-19
Figura 2.4: O funcionamento da localizao Monte Carlo. No quadro A, a nuvem de partculas representa a
incerteza quanto posio do rob. No quadro B, o rob andou um metro para a frente. Como no sabemos sua
orientao inicial, as partculas se espalham como no crculo. No quadro C, o rob observa um ponto de
referncia prximo no canto superior direito, e a likelihood das partculas ali aumenta. O quadro D mostra as
novas partculas aps o resampling. A partir da o ciclo reinicia. ....................................................................2-22
Figura 3.1: Exemplos de mtodos de extrao de caractersticas visuais. Do topo, da esquerda para a direita:
imagem original; imagem com Canny; imagem com Sobel; Laplaciano do Gaussiano. ...................................3-33
Figura 3.2: O primeiro passo do algoritmo SIFT. Primeiro calcula-se o Gaussiano das imagens por convoluo,
e atravs da subtrao dos resultados adjacentes obtm-se as diferenas-do-Gaussiano, onde sero buscadas as
caractersticas invariantes. A escala da imagem reduzida e o processo realizado novamente (Lowe, 2004)..337
Figura 3.3: Exemplo de keypoints obtidos com o algoritmo SIFT. Em (a) temos a imagem original, em (b) o
primeiro conjunto de keypoints obtidos, em (c) o conjunto reduzido aps aplicao de um threshold de contraste
mnimo e (d) o conjunto final aps um threshold de razo mxima de principais curvaturas (Lowe, 2004).....3-38
Figura 3.4: O mtodo SURF resistente a alteraes na imagem. Neste caso, a presena de uma pessoa na cena
no prejudica pares de pontos em outras regies da imagem............................................................................3-40
Figura 4.1: Robs Mveis do Laboratrio de Robtica Mvel na USP (LRM ICMC USP). Da esquerda para
a direita, o Pioneer 3-AT, o Pioneer 3-DX e os dois robs Erratic. ..................................................................4-43
Figura 4.2: Rob Pioneer 3-AT equipado para uso, com a cmera e notebook. ...............................................4-44
Figura 4.3: Uma captura de tela do ambiente de simulao Stage. ..................................................................4-46
Figura 4.4: A VSRR, composta de um percurso de gravao, posteriormente usado na localizao do rob
(adaptado de Matsumoto et al., 1996)................................................................................................................4-48
Figura 4.5: Erro de comparao do SURF em imagens com poucas caractersticas. O critrio de escolha de
imagens por proximidade espacial desclassifica estes resultados. ....................................................................4-55
Figura 4.6: O rob observa a porta com a cmera lateral, buscando parear a imagem observada com a imagem
memorizada, que representa o ponto timo para manobra................................................................................4-57
Figura 5.1: Diversos dos tipos de quadros encontrados no ambiente interno percorrido.................................5-59
Figura 5.2: Estes dois pares mostram diferentes resultados (imagens da direita) obtidos pelos critrios
diferentes (primeiro critrio em cima, segundo critrio embaixo), para a mesma imagem (a imagem da esquerda
a mesma nos dois casos)..................................................................................................................................5-60
Figura 5.3: Pares de resultados obtidos pelos dois critrios em um ambiente diferente...................................5-61
Figura 5.4: Nmero de pares (matches) obtidos pelo mtodo SURF em relao a diferentes imagens, comparado
a uma mesma base de imagens...........................................................................................................................5-62
Figura 5.5: O Mosaico mostra a diferena que variaes sutis de perspectiva causam no nmero pares de
caractersticas visuais em diversas situaes.....................................................................................................5-63
Figura 5.6: Exemplo de resultado da travessia de porta, baseado na distncia entre caractersticas no eixo X. .566
Figura 6.1: Fluxo ptico. esquerda, um exemplo do trabalho de Sokolov et al., (2010). direita, o fluxo
estimado atravs do OpenSURF.........................................................................................................................6-68
1 Introduo
Com o avano acelerado da tecnologia nas ltimas dcadas a robtica tem atrado
crescente ateno de pesquisadores, empresas, investidores e do pblico consumidor em geral.
De fato, um campo da tecnologia que oferece diversas possibilidades de aplicao, e
conforme desenvolvimentos tecnolgicos tornam possveis avanos na robtica, naturalmente
as atenes tm se voltado para a rea. Atravs da pesquisa cientfica e da engenharia, o ser
humano sempre buscou tcnicas e ferramentas que trouxessem eficcia, eficincia e segurana
para a realizao de suas tarefas. Portanto, a perspectiva de robs ou mquinas que possam
trabalhar autonomamente, com pouca ou nenhuma interveno humana, uma ideia atraente e
atual, e devido ao grande interesse e investimento em projetos e solues na rea, a robtica j
est profundamente inserida em muitos setores da sociedade, em aplicaes comerciais e
industriais. Ramos da cincia e tecnologia que se relacionam com esta rea incluem a
mecnica, engenharia eltrica e eletrnica e a computao.
Apesar de sua popularizao acelerada, a robtica uma cincia relativamente recente.
difcil apontar uma data para o surgimento da robtica, j que a prpria definio de o que
constitui um rob possui diferentes verses. Apesar disso, mquinas que podem ser
consideradas totalmente autnomas, com algum tipo de propsito inteligente, s surgiram em
meados do sculo XX, sendo que o primeiro rob industrial, o Unimate, foi introduzido em
1961, na forma de um brao robtico de quase duas toneladas que obedecia a seqncias de
comandos gravados para tarefas repetitivas e perigosas1.
Robs como o Unimate (Figura 1.1), cujas tarefas pouco exigiam em termos de ao
inteligente, no requeriam caractersticas muito elaboradas de hardware. Desde ento, houve
grande evoluo, e hoje existem novas aplicaes para robs que necessitam de alto poder de
processamento, software adequado e hardware robusto, com sensores elaborados e atuadores
precisos, frequentemente embarcados em robs de tamanho muito reduzido, para atender a
aplicaes cada vez mais desafiadoras.
Apesar de ser classificado como um rob, o Unimate era apenas um brao mecnico
que repetia comandos pr-estabelecidos. O rob era pouco mais que uma ferramenta sem
inteligncia e capacidade de tomar decises. Aos poucos, porm, juntamente com a evoluo
da computao, evoluiu o conceito de rob inteligente, que o rob que incorpora elementos
que o capacitam a perceber e interagir com o ambiente. Robs capazes de locomover-se e
explorar o ambiente surgiram, com habilidades que procuram emular o que pode ser
alcanado pela inteligncia humana.
Robs bpedes, por exemplo, como o Asimo da Honda (Figura 1.2), que capaz de
reconhecer faces, comandos de voz e at correr, requerem atuadores mecnicos precisos para
manterem-se em p, alm de sensores de equilbrio como os acelermetros ou giroscpios,
integrados por um sistema de controle que deve operar praticamente em tempo real para evitar
uma queda. Robs como o Spirit e Opportunity, enviados a Marte, precisam de autonomia
suficiente para passar um longo tempo sem manuteno ou troca de baterias, e exigem uma
interface de comunicao potente que funcione a grandes distncias. Atravs desses exemplos
possvel notar a importncia da autonomia na robtica mvel, j que estes robs devem ser
independentes o suficiente para tomar decises de forma rpida e sem interveno humana,
em contraste com muitos robs industriais e de linhas de montagem. Nestes casos mais
recentes, j se pode falar em comportamento robtico, e todos estes avanos so
indissociveis dos grandes avanos do potencial dos computadores e das tecnologias que estes
robs utilizam.
Campos como a Inteligncia Artificial exploram maneiras de possibilitar que
computadores e robs repliquem ou emulem o comportamento humano ou animal, com
capacidade de raciocnio, abstrao, associao de conceitos, entre outras habilidades.
-2-
-3-
http://www.scientificamerican.com/article.cfm?id=innovations-from-a-robot-2006-01&sc=I100322, acesso em
01/2012.
6
http://www.nytimes.com/2010/10/10/science/10google.html?ref=science, acesso em 01/2012.
7
http://www.autoblog.com/2012/01/26/bmw-takes-its-autonomous-5-series-onto-the-autobahn/, acesso em
01/2012.
8
http://www.inct-sec.org/, acesso em 01/2012.
-4-
deteco e reao a incidentes como invases ou situaes de perigo como focos de incndios
(Pessin, 2008). A navegao com robs de menor porte tambm pode ser aplicada em tarefas
de navegao em regies desconhecidas, de difcil acesso ou onde haja perigo ao ser humano.
O projeto de pesquisa desta dissertao de mestrado se enquadra principalmente no
ltimo grupo, sendo uma aplicao voltada para robtica mvel em ambientes internos. Os
resultados obtidos, porm, podem ser facilmente aplicados nas outras duas frentes de trabalho
(VANTs e Veculos Autnomos Terrestres). Portanto este trabalho est contextualizado junto
s atividades do INCT-SEC, que tm sido desenvolvidas junto ao LRM (Laboratrio de
Robtica Mvel do ICMC-USP), onde as aplicaes citadas anteriormente servem de
motivao e demonstram a importncia do presente trabalho.
1.1 Motivao
A viso um dos principais sentidos do ser humano. A riqueza das informaes
oferecidas pela viso imensa. O ser humano no possui um rgo de sentido que se possa
considerar equivalente a um sensor laser ou sonar, que estimam distncias pela reflexo de
ondas no ambiente (como possuem os morcegos, ou baleias), no entanto pode realizar feitos
parecidos e ainda outros com o sentido da viso. O ser humano capaz de perceber distncias,
reconhecer elementos de uma cena, perceber movimento, cores e texturas e solucionar
problemas extremamente complexos e variados de localizao e navegao atravs da viso,
utilizando informaes visuais obtidas por seus olhos (viso estereoscpica). Na realidade,
mesmo usando apenas um dos olhos e associaes semnticas e contextuais, o crebro
humano capaz de realizar reconhecimentos praticamente instantneos e avaliaes corretas
de profundidade a partir da viso9 (Oliva e Torralba, 2007).
Entre as habilidades cognitivas que o sistema visual humano permite, possvel citar a
capacidade de lembrana de um trajeto previamente percorrido ou o reconhecimento de um
rosto familiar atravs do uso da memria visual. Esta capacidade cognitiva extremamente
robusta a deformidades, e efeitos semelhantes podem ser identificados em muito outros
animais. At mesmo abelhas so capazes de realizar essa tarefa com proficincia (Vladusich
9
et al., 2005), memorizando sinais como rvores, acidentes geogrficos e orientando-se pela
posio do Sol (Von Frisch e Seeley, 1993)
A computao da informao visual e de seu contedo muitas vezes exige grande poder
de processamento. A evoluo tecnolgica dos computadores, porm, tem permitido o avano
das pesquisas em viso computacional, que o uso de mtodos computacionais envolvendo
imagens (Forsyth e Ponce, 2003; Ballard e Brown, 1982). O grande potencial da informao
visual faz com que a viso computacional e sua aplicao na robtica mvel sejam campos
convidativos a serem exploradas de forma mais detalhada. A robtica mvel busca com
frequncia inspirao nos seres vivos, portanto natural explorar uma analogia entre a viso
em robs mveis e o sentido da viso animal. Diversas abordagens existem para simular a
capacidade humana de guardar, reconhecer e relembrar informao visual. Entre elas, existem
os mtodos para extrao de pontos de referncia de imagens, que surgiram com detectores de
caractersticas distintas como bordas e cantos, e evoluiu para mtodos bastante robustos que
escolhem pontos de referncia estveis, ou seja, que possam ser identificados mesmo com
alteraes na cena em questo. Enquanto o funcionamento da cognio humana ainda no foi
completamente compreendido, existem teorias (Ross e Oliva, 2010) que defendem que a
memria visual humana e reconhecimento de cenas envolvem a seleo de pontos de
referncia e atributos globais robustos da cena de forma semelhante a estes mtodos
computacionais.
No menos relevante o fato de que sensores como cmeras de vdeo so muito baratos
em relao a outros sensores tambm usados em pesquisas com robs mveis como lasers do
tipo LIDAR (Light Detection And Ranging). Existem, claro, tipos diversos de cmeras com
particularidades, qualidade e custo diferentes, mas fato que na atualidade cmeras
fotogrficas ou de vdeo so to acessveis que so acessrios comuns embarcados em
telefones celulares e notebooks. Mesmo cmeras simples apresentam qualidade satisfatria
para algumas aplicaes. Por estas caractersticas, as cmeras so sensores de relevncia
inestimvel para a robtica mvel. O uso deste tipo de sensor essencial para que a robtica
possa se tornar cada vez mais ubqua, comercialmente vivel e acessvel a uma grande
quantidade de pessoas.
Este trabalho , portanto, motivado pela possibilidade da adoo do uso de cmeras de
vdeo como principal sensor no rob, de modo a dispensar equipamentos caros em favor de
-6-
dispositivos comuns e de baixo custo, que possam eventualmente ser usados em aplicaes
cotidianas. Pretende-se tambm explorar a analogia entre sistemas detectores e descritores de
caractersticas e a viso humana, e o trabalho busca demonstrar uma aplicao prtica da
robtica mvel, desenvolvendo um sistema til em uma situao real de navegao autnoma
de ambiente interno.
1.2 Objetivo
O objetivo deste trabalho foi a proposta, pesquisa, projeto e desenvolvimento de um
sistema robtico mvel autnomo capaz de realizar localizao utilizando como principal
sensor uma cmera de vdeo monocular. O sistema deveria ser geral o bastante para localizarse globalmente com a cmera de forma independente de contexto, e no ser excessivamente
custoso em termos de processamento realizado em tempo de execuo. A proposta envolvia
tambm testar o sistema em um conjunto de imagens possvel de ser encontrado em uma
aplicao prtica. Para estes fins, foi escolhido um mtodo de extrao e descrio de pontos
distintos, ou caractersticas visuais distintas (em ingls, features) para localizao. Buscou-se
avaliar se o mtodo robusto o suficiente, em relao possvel aplicao em um sistema de
patrulha de ambientes internos atravs de uma rota pr-determinada.
O projeto inspira-se no modo como uma pessoa usualmente se localiza em um ambiente
onde j esteve previamente, reconhecendo elementos presentes neste ambiente que o
caracterizam e servem de referncia. Assim, a localizao foi baseada em uma "memria
visual" de lugares que definem trajetrias a serem novamente percorridas. Atravs da
aquisio prvia de imagens espacialmente relacionadas, que definem uma trajetria e o
espao onde o rob pode se encontrar, procura-se identificar pontos de referncia para
localizao associando as imagens da memria com a imagem atual percebida pelo rob.
Mtodos chamados detectores-descritores de caractersticas de imagens podem ser
usados para realizar esta associao de imagens atravs de caractersticas visuais distintas.
Sabemos que o pareamento destes pontos de referncia entre imagens (ou frames) permite que
o rob identifique objetos ou cenrios previamente conhecidos no ambiente, mesmo com
mudanas de perspectiva, iluminao, rotao e diversas outras perturbaes. Atravs do uso
-7-
do popular mtodo SURF, ou Speeded Up Robust Features (Bay et al., 2008), para deteco e
descrio de caractersticas, espera-se que ao identificar uma mesma cena corretamente a
partir de duas perspectivas ou escalas diferentes, o melhor nmero de pareamentos positivos
(em ingls, matches) seja maior quando as perspectivas das imagens sejam mais prximas.
Chamaremos pareamentos positivos simplesmente de pares. Este trabalho se prope a utilizar
essa relao e aplicar a diferena no nmero de pares entre diferentes perspectivas de uma
mesma cena como critrio para escolher a imagem que melhor representa a localizao do
rob em relao a uma cena, alm de determinar a preciso de tal mtodo. O trabalho tambm
prope um mtodo alternativo para eleio da melhor imagem alm do nmero de
pareamentos. Em perspectivas mais prximas, os pareamentos em geral esto espacialmente
mais prximas em suas respectivas imagens. O trabalho pretendeu testar este critrio
alternativo em comparao ao nmero de pareamentos. Ambos os critrios so
exemplificados na Figura 1.3.
Para testar esta proposta, o sistema de localizao e navegao descrito foi projetado
utilizando apenas os resultados do mtodo SURF com uma cmera monocular e a informao
do sensor de odometria para estimativa de localizao. O trabalho tambm estudou uma
possvel configurao do sistema com mais uma cmera acrescentada ao conjunto, visando
avaliar os benefcios da adio do sensor em situaes difceis. O exemplo usado foi a
travessia de portas, um desafio comum em ambientes internos, que exige preciso.
A tarefa de navegao interna aplica-se pesquisa do INCT-SEC relacionada a robs
mveis de pequeno porte para ambientes internos. Para o trabalho proposto, o ambiente foi
considerado imutvel, e a patrulha foi definida como o percurso de um caminho prdeterminado, pelo qual o rob j passou anteriormente, conduzido por um ser humano em
uma volta de gravao onde o rob pode gravar imagens do ambiente e a odometria
associada. Acredita-se que o requisito de que haja um percurso prvio pelo ambiente seja uma
exigncia razovel, possvel de se realizar na maioria das situaes prticas de patrulha de
instalaes internas.
-8-
Figura 1.3: Exemplos de pareamento entre imagens. Perspectivas mais prximas geram mais pares de pontos, e
os pares so mais alinhados horizontalmente.
- 10 -
2 Robtica Mvel
Um rob mvel pode ser considerado um agente inteligente autnomo, dotado de
sensores e atuadores. Sendo um agente, o rob pode interagir com o meio ambiente, ou seja,
realizar aes sobre este. No apenas isso, mas um rob realmente inteligente deve levar em
conta sua capacidade de percepo do ambiente e de seu prprio estado para tomar decises
sobre suas aes. Isso resulta, portanto, em um ciclo que envolve a percepo do ambiente,
tomada de deciso atravs de um sistema de controle inteligente, realizao de ao e
finalmente a percepo da nova configurao do ambiente aps a ao (Figura 2.1). Essa
estrutura rege toda a interao entre o agente e o ambiente que o cerca, para qualquer que seja
a funo desempenhada. Podemos perceber da a importncia dos sensores e atuadores, e
tambm do algoritmo de controle embarcado no rob.
- 11 -
O retorno, ou feedback, que o rob recebe do ambiente, obtido atravs dos sensores.
Um sensor pode ser definido como um dispositivo que realiza uma medida no ambiente, e
fornece o resultado. O sensor laser, por exemplo, realiza uma medida de distncia atravs da
emisso de um feixe de lasers, retornando o valor numrico da distncia medida por cada raio
emitido em uma unidade apropriada. Alm do laser, sensores modernos frequentemente
usados na robtica mvel incluem cmeras de vdeo, sistema de GPS (Global Positioning
System), sensor de iluminao, de contato (como bumpers), infravermelho, sonar, sensores
inerciais (giroscpios e acelermetros), etc. Alm destes sensores externos (tambm
chamados de exteroceptivos), existem os chamados sensores proprioceptivos, que se referem
capacidade do rob de perceber seu prprio estado (Bekey, 2005). Em um veculo, por
exemplo, pode-se citar entre sensores proprioceptivos comuns o medidor de odometria,
medidor de combustvel ou bateria, contador de giros, entre outros.
O sensor adequado depende do objetivo do rob, ou da tarefa que se deseja realizar.
Sensores como o sonar, o laser e o LiDAR (Light Detection and Ranging, um tipo de sensor
laser) so chamados de sensores de distncia (ou sensores de range), pois fornecem
diretamente medidas de distncia entre o emissor e obstculos, mas possuem alcance limitado.
So amplamente difundidos e muitos oferecem medidas de distncia com alta preciso.
Enquanto isso, por exemplo, sensores como a IMU (do ingls, Unidade de Medida Inercial)
podem ser teis para aeronaves autnomas manterem sua orientao em relao ao solo, caso
no qual o sensor laser seria de pouca valia.
Os sistemas de viso podem ser teis em diversas aplicaes. Em relao aos
exemplos citados, sensores visuais podem ser usados para detectar obstculos e estimar
distncias com cmeras estreo (Bankman, 2006; Mendes e Wolf, 2011), da mesma forma
que o crebro humano capaz de ter noes de profundidade atravs da diferena na imagem
captada por cada um dos olhos. Cmeras estereoscpicas promovem robustez por redundncia
de informaes (Jones et al., 1997). Em certos contextos, a profundidade pode ser calculada
at mesmo com cmeras monoculares (Delage et al., 2005). Sensores visuais tambm podem
ser usados em veculos areos para estimativa de movimento e orientao em relao ao
- 12 -
sensor e tirar proveito de uma maior quantidade de informao. Tem-se deste modo uma
melhor aferio do ambiente, assim como a percepo humana consiste de um conjunto de
informaes de diversos sentidos, e no apenas de um. necessrio que haja um sistema de
controle que considere essas informaes e utilize as informaes obtidas de maneira
integrada, como em (Sim e Dudek, 2003) e (Kidono et al., 2002).
Os atuadores, por sua vez, so os dispositivos atravs dos quais o rob realiza aes
sobre o ambiente e altera seu prprio estado. Em robs mveis terrestres, os atuadores mais
comuns so os motores e rodas do rob, embora existam muitos robs que se movimentem
com pernas mecnicas, esteiras, ou mesmo propulsores, turbinas e hlices. O conhecimento
dos atuadores do rob importante para projetar um sistema que considere as limitaes e
possibilidades do rob, j que atuadores tambm podem apresentar imprecises. De especial
importncia para a locomoo do rob o conhecimento do modelo cinemtico e dinmico do
rob, que descreve sua trajetria e seus movimentos.
No caso de robs mveis terrestres, possvel classificar os robs em holonmicos e
no-holonmicos. Robs holonmicos so robs que podem se movimentar livremente sobre
seu prprio eixo, realizando rotao e mudanas de orientao sem precisar se deslocar
(Dudek e Jenkin, 2000). Este um conceito comumente aplicado a robs mveis, mas que
tambm pode se referir a um brao mecnico, por exemplo. Robs no-holonmicos, por
outro lado, no possuem essa liberdade, e precisam se deslocar para virar (Laumond, 1986).
Um automvel como um carro o exemplo clssico de um veculo no-holonmico, que s
pode se deslocar no sentido em que seus eixos esto alinhados. Para alterar sua orientao, o
veculo precisa mover suas rodas, alterando a direo do eixo normal a elas, e ento se
deslocar. Essa geometria conhecida como cinemtica de Ackerman, ou Ackerman steering
(Osrio et al., 2009). Em robs no-holonmicos, preciso considerar a distncia em relao
a obstculos e o vetor velocidade do rob para que a navegao possa evitar obstculos
adequadamente. Como esta cinemtica replica o funcionamento de veculos tradicionais, seu
estudo de grande interesse, e trabalhos que exploram navegao de um automvel autnomo
incorporam as restries deste modelo no planejamento de trajetria.
- 14 -
Muitas tarefas mais elaboradas de robtica mvel requerem o uso de um mapa, alguma
ferramenta que oferea informaes ao rob sobre o ambiente alm do alcance instantneo de
seus sensores, e atravs da qual o rob possa conhecer sua posio relativa. Para ir de um
ponto A (origem) para B (destino) necessrio que o rob saiba onde est e onde est seu
objetivo. Assim, para que o controle da navegao possa ser realizado, necessria a
determinao da localizao do rob, e portanto, pressupe-se o uso de algum tipo de mapa
ou referncia que permita manter este controle da posio atual e do destino a ser alcanado.
No pode haver planejamento global de trajetria sem que haja um conhecimento do ambiente
que se estenda alm das redondezas imediatas do rob. O mapa uma forma de descrio do
ambiente, uma ferramenta que permite que o rob tenha conhecimento do perfil da rea.
Existem diversas tcnicas de navegao robtica em que o prprio rob realiza o mapeamento
do ambiente (Bonin-Font et al., 2008), e inclusive mtodos para que o rob possa mapear o
ambiente e se localizar ao mesmo tempo, como o SLAM10, ou Simoultaneous Localization
and Mapping (Leonard e Durrant-Whyte, 1991).
O uso de um mapa de pouca valia se o rob no souber onde est localizado no
ambiente para que possa planejar sua trajetria. Logo, a determinao e a manuteno de
informao sobre a pose do rob no ambiente so elementos importantes para sistemas de
controle de navegao mais complexos. Define-se a pose do rob no necessariamente
somente como sua posio, mas tambm sua orientao, e em alguns casos at o estado de
outros atuadores.
J mencionamos o erro cumulativo intrnseco da odometria. Uma das solues
amplamente utilizadas para corrigir o erro incrementalmente associar informaes provindas
de outros sensores ao odmetro para aumentar a preciso da localizao (Thrun, 1998)
(Siegwart e Nourbakhsh, 2004). O uso conjunto de sensores, como a cmera ou o laser, e o
odmetro, permite que as observaes atuais e as passadas sejam usadas para se estimar as
possveis posies do rob. Utilizando mtodos desse tipo, com informao suficiente o rob
pode se localizar com alto grau de certeza. Em geral, as percepes passadas so os prprios
10
mapas em si. Com isso, essencial que os mapas no contenham erros para evitar falhas no
processo de localizao. De uma forma geral, o problema de localizao pode ser classificado
em dois principais tipos (Thrun et al., 2005):
- Rastreamento da Posio (Position Tracking): Neste problema, considera-se que a
posio inicial do rob em relao ao mapa (posio global) conhecida. Com isso, o desafio
consiste em determinar localmente a posio do rob enquanto ele se desloca e mant-la,
levando-se em conta a localizao prevista pelo movimento, com o tratamento de erros dos
sensores de odometria acumulados. Em geral, o position tracking um mtodo iterativo,
baseado em pequenos e constantes incrementos estimativa de posio. Com uma frequncia
suficiente de incrementos, pressupe-se que esses erros sejam pequenos entre cada iterao.
Para controlar o erro odomtrico, um sensor como a cmera pode ser usada para ajustar a
posio do rob. Se com esta fuso de sensores o erro de odometria puder ser anulado (ou ao
menos limitado) a cada iterao, ele no sair do controle. Os erros de posio normalmente
podem ser aproximados por uma distribuio unimodal.
- Localizao Global (Global Localization): Ao contrrio do position tracking, nos
problemas que envolvem localizao global no se conhece a posio inicial do rob no
mapa. Dessa forma, procuram-se estratgias para obter a localizao global do rob,
considerando-se como no caso anterior, a possibilidade de erros na estimao da posio. Na
localizao global usualmente busca-se determinar qual a posio atual do rob em relao
a todo o mapa (toda a rea til onde este possa estar localizado).
Tambm vale mencionar o que referenciado na literatura como o problema do rob
sequestrado (kidnapped robot problem). Este na realidade um caso particular da localizao
global. No caso geral da localizao global, possvel que o rob tenha acesso a informaes
anteriores perda de localizao, mas no problema do rob sequestrado o rob no possui
informao alguma sobre sua posio antes do incio da execuo (Choset et al., 2005).
Assume-se que o rob poder de um instante para outro ser levado para outro lugar por
influncias externas, sem que seus sensores percebam, ou que ele possa ser ativado em um
local qualquer do ambiente. Por causa disso, o rob dever reconhecer quando a sua posio
foi alterada, para que ele possa novamente calcular a sua referncia no mapa. A anlise deste
problema importante para localizao inicial do rob quando ele inicializado em uma
posio completamente desconhecida no ambiente, ou para que o rob possa se recuperar de
- 16 -
situaes durante a navegao onde ocorre falha no rastreamento de posio para manter sua
localizao local (quando o ambiente observado no corresponde ao esperado).
Existem tcnicas variadas para estimativa de posio, gerais ou especficas, simples ou
complexas. Em relao aos mtodos de localizao global, muitos focam no uso de mtodos
estatsticos (Thrun et al., 1999). Entre eles destaca-se o uso do Filtro de Kalman, mtodos de
Monte Carlo (Dellaert et al., 1999) e processo de Markov (Fox et al., 1999).
Seja pelo uso de um mapa da regio criado pelo prprio rob em uma tarefa de
mapeamento, ou seja, atravs de mapa conhecido previamente, o uso de mapas pode ser de
grande auxlio para a navegao e localizao, mesmo considerando que aplicaes como o
SLAM utilizam mapas incompletos, com erros ou com elementos desconhecidos. Sendo uma
representao de um ambiente muitas vezes dinmico e imprevisvel, o mapa est sujeito a
no ser uma representao completamente fiel da realidade. Os algoritmos de mapeamento,
localizao e controle devem ser robustos para incorporar tais diferenas, e muitas vezes
serem capazes de incorporar o dinamismo e as alteraes do ambiente ao mapa como em
(Wolf e Sukhatme, 2003).
Muitas aplicaes procuram resolver estes mesmos problemas atravs do uso de
cmeras. No mbito da localizao local, podemos citar tcnicas de visual servoing (Kragic e
Christensen, 2002) e fluxo ptico (Horn e Schunck, 1993; Lucas e Kanade, 1981). Cmeras
tambm podem ser aplicadas em tcnicas de mapeamento, por exemplo, na reconstruo
tridimensional de ambientes ou objetos11 (Moravec, 1988; Wooden, 2006; Saxena et al.,
2007). Aplicaes prticas de mtodos gerais de deteco de caractersticas como o SURF
podem ser vistas em (Chen et al., 2007), um sistema com uma implementao de SURF para
celulares capaz de detectar marcos previamente memorizados do ambiente. Entre trabalhos
envolvendo localizao e mapeamento simultneo (SLAM) baseados em viso podemos citar
(Kaess e Dellaert, 2009) e (Sim et al., 2006; Sim e Little, 2006). Mapas formados por
composies de fotografias do ambiente ou por sequncias de imagens tambm so usados.
Existem muitos tipos de mapas, e atravs do uso de um mapa apropriado aplicao e
aos sensores, aperfeioa-se o conhecimento do rob em relao ao ambiente. Muitos mapas
apresentam informaes semnticas, associando significado e funo aos elementos no mapa,
para que o rob possa interagir com esses elementos de maneira lgica e contextualizada. O
11
tcnica. Um mapa sensorial pode ter sido criado previamente pelo rob, ou mesmo com o
sensor independentemente.
Figura 2.3: Um mapa mtrico pode ser decomposto em ns ou clulas, se tornando um mapa topolgico,
representado na figura pelo grafo (Siegwart e Nourbakhsh).
- 19 -
mapas, o que implica em maior riqueza de informaes. Diferentes tipos de mapas oferecem
diferentes representaes de informao e dados diferentes, e tem custos associados
(computacional, de hardware, de complexidade). A escolha do mapa tem impacto
posteriormente na localizao e navegao.
- 20 -
e independentes entre si, mas pode funcionar quando essas hipteses no forem respeitadas, e
existem variantes e extenses do filtro (como o EKF, Extended Kalman Filter) que deixam a
optimalidade em segundo plano para acomodar melhor no-linearidades e possveis falhas de
leitura no sensor, ou mesmo para incorporar densidades de probabilidade multi-modais,
habilitando a localizao global por Filtro de Kalman (Lefebvre et al., 2001).
Outro mtodo de localizao que vem recebendo grande notoriedade o mtodo de
Monte Carlo MCL (Monte Carlo Localization) (Dellaert et al., 1999). uma variao do
mtodo conhecido como Filtro de Partculas, e baseia-se na distribuio aleatria de possveis
estados em um espao de configuraes, no caso, as reas navegveis do mapa. Cada estado
representado por uma partcula, e usado um nmero grande de partculas, fator que
influencia na preciso e velocidade de convergncia, mas tambm no peso computacional do
algoritmo. A quantidade de partculas deve ser suficiente para uma cobertura adequada do
mapa. A partir disso, cada ao de controle do rob (como movimentar-se no ambiente)
aplicada s partculas a partir do modelo estatstico de movimentao (de forma semelhante
ao que ocorre no filtro de Kalman). Alm disso, cada observao real do estado dos sensores
comparada observao das partculas (estados hipotticos). Dependendo da proximidade
entre a leitura do sensor e a leitura estimada para cada partcula, essa partcula recebe um
peso, indicando sua probabilidade (ou likelihood) de ser representativa da posio real do
rob. A partir disso, realiza-se uma nova seleo aleatria de amostras das possveis
configuraes, desta vez levando-se em conta os pesos das partculas. Quanto maior a
likelihood de uma partcula, maior a probabilidade de que ela seja escolhida novamente, o que
com o tempo acarreta na aproximao da real posio do rob, representada pela partcula
com a melhor estimativa da posio. Uma vantagem do sistema que se o rob for
transladado de sua posio ele pode se localizar de novo naturalmente, j que as partculas se
espalharo pelo mapa em selees (ou samplings) posteriores. Na Figura 2.4 temos um
exemplo visual do funcionamento de uma iterao do algoritmo de Monte Carlo.
- 21 -
Figura 2.4: O funcionamento da localizao Monte Carlo. No quadro A, a nuvem de partculas representa a
incerteza quanto posio do rob. No quadro B, o rob andou um metro para a frente. Como no sabemos sua
orientao inicial, as partculas se espalham como no crculo. No quadro C, o rob observa um ponto de
referncia prximo no canto superior direito, e a likelihood das partculas ali aumenta. O quadro D mostra as
novas partculas aps o resampling. A partir da o ciclo reinicia.
Uma conhecida e pioneira aplicao prtica do algoritmo foi realizada com o rob
MINERVA, um rob usado como guia no Smithsonian National Museum of American
History, com bons resultados (Thrun et al., 1999). O algoritmo tambm pode ser aplicado em
tcnicas de SLAM, com bons resultados (Yuen e MacDonald, 2003). O mtodo, no entanto,
possui algumas limitaes, como a j mencionada necessidade de um mapa previamente
fornecido do ambiente, que deve ser razoavelmente preciso, e a impossibilidade de se
localizar adequadamente (localizao global) em um ambiente muito dinmico.
O desafio da localizao um processo constante, que por esse motivo deve ser preciso
e eficiente. um assunto importante que est diretamente relacionado a diversas aplicaes,
sendo o foco principal deste trabalho.
- 23 -
- 24 -
12
13
reconhecer situaes e elementos do ambiente, assim como para decidir a melhor ao a ser
realizada em relao a uma determinada situao.
imagens obtida (Fitzgibbon e Zisserman, 1998). O uso de uma nica cmera ou de cmeras
monoculares no calibradas um desafio, mas uma abordagem de mais baixo custo e, desse
modo, realista e de grande importncia do ponto de vista comercial e prtico.
- 27 -
Quando uma fotografia obtida atravs de uma cmera digital, em algum momento a
informao do ambiente foi transferida do formato analgico para o formato digital (a verso
- 28 -
consiste
da
diviso
do
sinal em
um
nmero
finito
de
valores
- 30 -
A viso computacional uma cincia que muito pode beneficiar a robtica mvel. Uma
sequncia de quadros ou mesmo uma nica imagem so sinais complexos e de grande
variedade. No existe um mtodo ideal para extrao de informaes de uma imagem; cada
aplicao requer uma abordagem especfica, e como a viso humana, contextualizada. Entre
as pesquisas envolvendo aplicaes de mtodos e tcnicas de viso computacional na
robtica, temos trabalhos como (Zhou et al., 2003) que usa anlise de histogramas de imagens
para localizao com timos resultados. Os histogramas podem ser usados para pareamento
com certa eficincia, como demonstrado em (Ulrich e Nourbakhsh, 2000), que compara perfis
de histogramas para identificar cenas e localizar um rob mvel no ambiente. Uma
desvantagem de histogramas que estes no contm informaes sobre posies e relaes
espaciais entre pixels (Shen e Hu, 2006).
Operaes deste tipo se enquadram na categoria de operaes chamadas de operaes
espaciais. Operaes espaciais referem-se a operaes realizadas diretamente nos pixels de
uma dada imagem, trabalhando no domnio espacial. Estas tcnicas ainda se dividem em
operaes pontuais, realizadas pixel a pixel (point operators) ou operadores estatsticos
(Nixon e Aguado, 2007).
Entre os operadores pontuais podemos citar operaes com histogramas de imagens,
como limiarizao (thresholding) ou funes de alterao de nveis de cor. Entre os
operadores no-pontuais temos operadores estatsticos, morfolgicos, entre outros, e
possvel citar transformaes geomtricas (rotao, escala e translao), interpolao, eroso,
dilatao e filtros como o de mdia, em que o valor do pixel dado pela mdia aritmtica dos
valores dos pixels vizinhos, ou o filtro de mediana (Davies, 1988), eficaz na substituio de
pixels de valores muito dspares da imagem, sendo muito usado para remoo de rudo (Jhne,
2005; Couto, 2008).
Analisando-se as derivadas do sinal, ainda mais informaes podem ser extradas de
uma imagem. A derivada fornece informaes de variao, de contraste. Em uma imagem, ela
enfatiza extremos entre regies, e portanto, operadores que detectam bordas, cantos e imagens
em geral baseiam-se em avaliar e interpretar as derivadas. Uma variao contrastante no sinal
- 31 -
implicar em uma derivada alta naquela regio de transio, um valor de pico localizado na
borda, e para intervalos pequenos o suficiente a primeira derivada pode ser aproximada com
pouco erro pela tangente entre pontos adjacentes.
De modo semelhante, a segunda derivada pode ser averiguada, j que esta cruza o eixo
zero nos pontos mximos e mnimos da primeira derivada. Assim, os pontos onde a segunda
derivada alterna de sinal so os pontos de pico da primeira derivada, que so os pontos de
maior variao da imagem original (Nixon e Aguado, 2007).
Operadores baseados nestas anlises diferenciais de primeira e segunda ordem
permitem deteco de contornos e bordas. Neste nvel j se caracteriza a deteco de pontos
de interesse em uma imagem, o que pode ser de grande interesse para a viso computacional e
robtica mvel. Mtodos para deteco de bordas com derivada de primeira ordem incluem
Canny (Canny, 1986), Sobel e usando derivadas de segunda ordem temos o Laplaciano.
Mtodo similares permitem a deteco de curvaturas e de cantos (Moravec, 1980; Chen et al.,
1995), como no Harris Corner Detector (Harris e Stephens, 1988), ou FAST, Features from
Accelerated Segment Test (Rosten e Drummond, 2006).
Existem tambm detectores de caractersticas que envolvem o uso conjunto de
operadores matemticos diferenciais e transformaes (trabalhando temporariamente com
sinais no domnio da frequncia, como na anlise de Fourier), em mtodos como LoG
(Laplaciano do Gaussiano) e DoG (Diferena de Gaussianos), entre outros (Figura 3.1).
Outra categoria de detectores de caractersticas so os detectores de forma (shape
detectors), dentre os quais pode-se citar a Transformada Hough. Esta transformada usada,
especificamente, para a extrao de formas como retas, crculos e elipses. O mtodo foi
desenvolvido em (Hough, 1959), mas apenas em (Duda e Hart, 1972) ele foi aplicado em
processamento de imagens pela primeira vez (Bradski e Kaehler, 2008).
Alm destes mtodos que detectam caractersticas genricas (livres de contexto),
aplicaes mais especficas podem utilizar informaes sobre o problema em particular para
desenvolver mtodos especializados de deteco atravs de cmeras, como o sistema de
proteo de privacidade usado no carro do Google Street View14 para detectar rostos e placas
de carro e obscurec-los por questes de privacidade (Frome et al., 2009) ou sistema de
14
autenticao biomtrica, onde caractersticas particulares fsicas de uma pessoa (rosto, ris,
impresso digital, etc) podem ser usadas para detectar sua identidade (Jain et al., 2000).
Figura 3.1: Exemplos de mtodos de extrao de caractersticas visuais. Do topo, da esquerda para a direita:
imagem original; imagem com Canny; imagem com Sobel; Laplaciano do Gaussiano.
Marcas artificiais que sejam de fcil deteco podem ser adicionadas ao ambiente para
auxiliar a deteco (Saripalli et al., 2002). Identificadores de Radio-Frequncia (RFIDs)
podem ser usados como marcas inseridas no ambiente para navegao, como proposto em
(Khubitz et al., 1997), e mais recentemente em (Gueaieb e Miah, 2009) e em (Park e
Hashimoto, 2009). Marcas artificiais podem ser combinadas com caractersticas SIFT. Em
(Forssn et al., 2008), a marca artificial funciona como um mecanismo para atrair a ateno
do rob a um objeto; em seguida, o mtodo SIFT usado para reconhecimento.
- 33 -
Outros mtodos utilizam Redes Neurais Artificiais. Desta forma, o sistema pode
promover resultados eficientes para deteco de elementos especficos para os quais ele foi
treinado, adicionando assim semntica escolha das regies de interesse da imagem.
3.3.1 SIFT
Um dos trabalhos seminais da rea de mtodos detectores-descritores de caractersticas
baseados em espao de escala, o SIFT foi desenvolvido e publicado por David Lowe (Lowe et
al., 2004). Por este motivo, embora este trabalho tenha usado o mtodo SURF, vlido
- 34 -
16
17
- 36 -
Figura 3.2: O primeiro passo do algoritmo SIFT. Primeiro calcula-se o Gaussiano das imagens por convoluo,
e atravs da subtrao dos resultados adjacentes obtm-se as diferenas-do-Gaussiano, onde sero buscadas as
caractersticas invariantes. A escala da imagem reduzida e o processo realizado novamente (Lowe, 2004).
de
dados
independente
de
informao
espacial,
que
simplifica
- 37 -
objetos tridimensionais a partir de perspectivas diferentes (Serre et al., 2007). O conjunto dos
pontos detectados e descritos forma a assinatura da imagem (Figura 3.3).
A assinatura ou descritor SIFT de qualquer cena pode ser obtido de forma repetvel. O
pareamento feito usando uma tcnica simples de clculo da distncia euclidiana do descritor
do ponto encontrado em relao ao da base de dados. A partir dos pares entre diversos pares
de pontos, a assinatura identificada.
Figura 3.3: Exemplo de keypoints obtidos com o algoritmo SIFT. Em (a) temos a imagem original, em (b) o
primeiro conjunto de keypoints obtidos, em (c) o conjunto reduzido aps aplicao de um threshold de contraste
mnimo e (d) o conjunto final aps um threshold de razo mxima de principais curvaturas (Lowe, 2004).
No caso de um rob mvel, essa informao pode ser usada para localizao, j que
uma assinatura pode ser associada a uma localizao ou orientao. Pode-se tambm
adicionar contexto s assinaturas, o que capacita o rob a reconhecer alvos, objetivos e itens
importantes do ambiente. Outro mtodo de uso das Scale-Invariant Features na robtica
mvel foi descrito por Lowe et al. (2001). Neste mtodo, que usa uma cmera estereoscpica,
as caractersticas SIFT de uma imagem so computadas para cada uma das lentes da cmera.
- 38 -
Os resultados podem ento ser comparados para estimativa de distncias e construo de uma
mapa 3D do ambiente, pois keypoints SIFT mais prximos da cmera possuiro equivalentes
com maior disparidade em cada uma das lentes.
3.3.2 SURF
Uma alternativa baseada no mtodo SIFT, que foi o mtodo usado neste trabalho, o
SURF, Speeded-Up Robust Features (Bay et al., 2008). O mtodo SURF possui desempenho
que aproxima ou at mesmo supera mtodos similares como o SIFT, e seus pontos de
referncia podem ser computados e comparados mais rapidamente, mesmo em alguns casos
sacrificando robustez a algumas variaes. Comparaes entre SIFT e SURF indicam que o
algoritmo SURF pode ser mais rpido que o SIFT, e pode tambm ser mais resistente a
alteraes de iluminao e blurring, ou imagem tremida (Huynh et al., 2009). Isso faz com
que o SURF seja uma alternativa vivel para determinadas aplicaes (mais detalhes sobre a
escolha do mtodo no Captulo 4). Existe uma implementao open source do mtodo, o
OpenSURF18, e o mtodo tambm est incluso na biblioteca de viso computacional OpenCV
(Bradski e Kaehler, 2008).
O mtodo SURF aplica diversos aperfeioamentos desenvolvidos ao longo de pesquisas
na rea aos mtodos do SIFT. Por exemplo, o SURF usa imagens integrais para simplificar o
clculo das convolues (Viola e Jones, 2001). Em contraste com o SIFT, o SURF usa o
Laplaciano do Gaussiano (LoG) no lugar da diferena-de-Gaussianos (DoG), para construir o
espao de escalas. O uso de imagens integrais permite que, durante o processo de gerao de
Gaussianas em diversas escalas, o filtro seja aumentado (upscaling), no lugar de se reduzir a
escala da imagem como no SIFT (downscaling). Isso permite ganhos de velocidade no
processo (como mencionado, a clculo do espao de escala custoso no SIFT), e evita o
aliasing causado pela reduo da imagem. O determinante da matriz Hessiana (matriz
composta pelas segundas derivadas parciais da funo imagem) pode ento ser usado para
classificar os mximos e mnimos da funo pelo teste da derivada de segunda ordem (Evans,
2009).
18
Em relao ao descritor do SURF, ele opera de forma anloga ao SIFT, com algumas
diferenas. Na atribuio de orientaes e clculo do descritor, o SURF utiliza a informao
de gradiente pela soma das respostas da vizinhana do ponto wavelet Haar, o que de acordo
com os autores aumenta a velocidade e robustez do processo. Da mesma forma que o SIFT, a
informao utilizada um histograma de distribuies de gradiente da regio do ponto de
referncia, mas no SURF a resposta wavelet Haar somada e independe das orientaes
individuais dos gradientes da regio. Desta forma, o algoritmo mais resistente a rudo,
enquanto perde pouca capacidade discriminativa (Figura 3.4).
Figura 3.4: O mtodo SURF resistente a alteraes na imagem. Neste caso, a presena de uma pessoa na cena
no prejudica pares de pontos em outras regies da imagem.
Uma outra otimizao digna de meno acrescentada pelo mtodo que o sinal do
operador Laplaciano considerado durante o pareamento de pontos, e duas caractersticas s
so comparadas se o sinal de seus Laplacianos (calculado na criao do espao de escala,
durante a determinao dos pontos de interesse) for o mesmo. Isto reduz o nmero de
comparaes realizadas e aumenta a capacidade discriminativa.
- 40 -
- 41 -
Figura 4.1: Robs Mveis do Laboratrio de Robtica Mvel na USP (LRM ICMC USP). Da esquerda para
a direita, o Pioneer 3-AT, o Pioneer 3-DX e os dois robs Erratic.
19
Com baterias reserva a carga pode ser suficiente para a maioria das aplicaes de localizao
e navegao j que as baterias so hot-swappable, ou seja, as baterias podem ser trocadas sem
que haja necessidade de desligar o rob.
Figura 4.2: Rob Pioneer 3-AT equipado para uso, com a cmera e notebook.
4.2 OpenCV
leitura e escrita para os principais formatos de vdeo e imagem, estruturas de dados auxiliares
especficas para trabalho com imagens e funes de aprendizado de mquina, como suporte a
redes neurais. A documentao existente extensa e abrangente, e a OpenCV pode ser usada
em ambientes Linux ou Windows, sendo compatvel com a plataforma PC embarcada nos
robs mveis Pioneer e Erratic.
A OpenCV apresenta-se como uma importante ferramenta para o desenvolvimento de
algoritmos e a realizao de experimentos e testes em viso computacional. Suas aplicaes
na rea de viso computacional aplicada robtica mvel tm sido extensas. Alm disto,
uma ferramenta que se integra ao sistema embarcado de controle e navegao dos robs
mveis, tendo um desempenho bastante adequado para uma execuo de algoritmos de
controle e navegao em tempo de execuo.
Nos estgios preliminares do trabalho, a OpenCV foi extensivamente usada para testes
dos diversos detectores de caractersticas, incluindo detectores de bordas e cantos,
transformada Hough e variantes dos mtodos SIFT e SURF (Laganire, 2011).
navegao autnoma do rob mvel. As atuais verses (Stage 3.2.x) possuem opo para
visualizao da simulao de forma 2D, atravs de vista superior (birds-eye view), ou atravs
de viso 3D. O ponto de vista 3D pode ser livre, ou pode-se optar por visualizar a informao
3D simulada da cmera embarcada de determinado rob da simulao. A viso 3D do Stage
tambm chamada de 2.5D22, j que apenas um modo de visualizao dos dados, e a
simulao propriamente no envolve a terceira dimenso, diferente do que ocorre em outros
simuladores para robtica como o Gazebo23 ou Microsoft Robotics Studio24, que incorporam
simulao de fsica tridimensional.
O simulador Stage carregado com um arquivo world, que representa o mapa do
ambiente (extenso .world), incluindo descritores para os robs que sero usados, que
explicitam caractersticas de hardware, bem como os mdulos que sero usados para controle
dos mesmos. Alm disso, o arquivo world traz representaes de elementos de interesse do
mapa que denotam as possveis interaes entre esses elementos e os robs. Todas essas
informaes so descritas em uma sintaxe prpria do Stage.
O simulador Stage foi utilizado em experimentos preliminares para testes da interao
do Player com o rob simulado, antes que os resultados fossem aplicados ao rob real.
22
- 47 -
Figura 4.4: A VSRR, composta de um percurso de gravao, posteriormente usado na localizao do rob
(adaptado de Matsumoto et al., 1996).
- 49 -
- 50 -
conhecimento de sua posio em todo o ambiente, portanto a localizao dever ser global. A
nica informao sobre seu estado atual no percurso que o rob possui ao ser ligado a
imagem imediatamente sua frente capturada pela cmera. Como assumimos que o rob foi
posicionado em algum lugar do caminho memorizado, a localizao consiste em percorrer a
base de dados de imagens em busca do quadro mais condizente com a captura atual da
cmera. Esta busca completa do mapa de imagens s dever ser realizada no momento da
inicializao ou caso o rob perca sua posio durante a localizao local incremental.
A comparao dos quadros realizada atravs do mtodo SURF. O SURF um mtodo
especializado em identificao de cenas similares, a partir de perspectivas distintas (entre
outros parmetros). O SURF, no entanto, no um mtodo binrio. O algoritmo de
identificao obtm, para cada par de cenas, uma certa quantidade de pares de pontos de
referncia identificados. Cenas iguais em perspectivas muito diferentes ainda so pareadas
com sucesso, mas cenas iguais em perspectivas apenas levemente diferentes oferecem um
nmero maior de pares de pontos associados, como intuitivamente esperado. A quantidade
destes pares pode ser usada como critrio para avaliao da similaridade entre as cenas. Ser
mostrado que em ambientes internos como, por exemplo, um corredor, o rob observa
frequentemente a mesma cena com leves variaes de perspectiva entre cada quadro
(conforme o rob se move). A aplicao do SURF em um caso como este fornece medidas
gradativas do nvel de similaridade entre cenas diferentes.
Alm do nmero de pares, que o critrio padro de mtodos detectores-descritores
para determinar similaridade entre imagens, propomos tambm um mtodo alternativo para a
pareamento. Em casos prximos, o mtodo da contagem do nmero de pares pode no ser to
preciso, j que a diferena entre as perspectivas no necessariamente suficiente pra causar
reduo significativa no nmero de caractersticas obtidas. Testes tambm mostraram que
diferenas de iluminao, motion blur e foco da cmera podem causar variaes no nmero de
pares obtidos, o que pode ser suficiente para que a imagem mais adequada seja ultrapassada
em nmero de pareamentos por alguma imagem prxima. Para contornar este problema,
possvel utilizar um critrio diferente para a deciso da melhor candidata entre as imagens
escolhida, que no seja aquela com o maior nmero de pareamentos. O critrio proposto a
variao em pixels entre as caractersticas visuais nas diferentes imagens. Com a cmera fixa
em uma posio, testes mostraram que caractersticas visuais pareadas que so prximas em
- 51 -
nmero de pixels no eixo Y apresentam maior chance de terem sido obtidas a partir da mesma
distncia. Neste caso e no restante do trabalho nos referiremos s coordenadas (X,Y) da
imagem em pixels, sendo X e Y respectivamente os eixos abscissa e ordenada. Isto equivale
de certa forma a parear as assinaturas que possuem escalas similares, e til em ambientes
como os corredores onde h pouca ocluso ou efeitos de paralaxe (parallax). Para a
localizao em ambientes como esses, portanto, pode-se tratar apenas a dimenso em que
ocorre o deslocamento do rob (ao longo do corredor ou da rota). Esta a coordenada mais
significativa, pois espera-se que variaes de rotao e translao lateral na posio do rob
sejam pequenas (devido pouca largura do corredor e conformidade do rob rota). Estas
duas coordenadas se confundem e podem ser tratadas e corrigidas indissociadamente em uma
possvel aplicao de navegao (Basri et al., 1999). Nos testes, portanto, comparamos o
critrio do nmero de pareamentos com o critrio da distncia em pixels entre as
caractersticas pareadas, utilizando como referncia para comparao apenas a dimenso mais
significativa, de deslocamento ao longo da rota no sentido do movimento do rob.
- 52 -
constantes. Para refletir esta informao, realizamos uma alterao no mtodo SURF para que
o passo que garante invarincia a rotao fosse ignorado, uma variante conhecida como
Upright-SURF, ou U-SURF (Bay et al., 2006). Com o U-SURF, a eficincia do mtodo
aumenta em termos de velocidade e capacidade discriminativa; ao mesmo tempo em que se
reduz o tempo gasto pelo mtodo eliminando um passo do processamento, evita-se potenciais
falsos positivos, pois quaisquer pares de caractersticas com diferenas significativas em seu
atributo de rotao sero descartados.
Note que o U-SURF no realiza a mesma triagem que o segundo critrio proposto para
escolha da imagem de perspectiva mais similar. O U-SURF rejeita pontos baseado na rotao
destes em relao regio onde esto inseridos. O critrio proposto rejeita assinaturas com
muitos pares que apresentem disparidades de distncia no eixo Y.
A pesquisa relacionada a estes descritores recente e bastante ativa, portanto existem
mtodos mais novos que tem apresentado bons resultados, como o CenSurE (Agrawal et al.,
2008) e algumas variantes. Estas alternativas, no entanto, no se mostram definitivamente
superiores e requerem testes comparativos mais aprofundados para justificar sua escolha,
sendo o SURF (e sua verso modificada U-SURF) uma opo mais estabelecida.
O programa desenvolvido para a navegao consiste de um algoritmo comparativo entre
assinaturas. O pareamento realizado entre a assinatura calculada em tempo real e as
assinaturas memorizadas previamente no percurso de gravao. O nmero de associaes
positivas entre cada par de assinaturas indica o grau de semelhana entre estas, e foi ento o
parmetro usado como determinante da similaridade entre as cenas representadas. Quanto
maior o nmero de pareamentos positivos entre as caractersticas visuais, melhor candidata
a imagem. Como j discutimos no Captulo 3, cada ponto de uma assinatura possui diversos
parmetros descritores, entre eles sua coordenada (a,b) na imagem, contada em pixels a partir
do canto superior esquerdo. Assim, cada par de pontos associados em duas imagens diferentes
pode ser referenciado como o par de coordenadas [(a,b),(c,d)].
importante notar que mesmo nos testes em que o U-SURF foi utilizado, houve casos
em que falsos positivos ocorriam em que um par de quadros no correspondente gerava uma
quantidade alta de pares. Neste caso uma possvel soluo seria analisar os resultados das
imagens vizinhas (que deveriam ter uma grande quantidade de pares no caso de um positivo
verdadeiro), mas verificou-se que o problema ocorria especialmente quando uma cena era
- 54 -
Figura 4.5: Erro de comparao do SURF em imagens com poucas caractersticas. O critrio de escolha de
imagens por proximidade espacial desclassifica estes resultados.
- 55 -
variaes angulares (z) com poucas variaes de posio (x, y) entre as imagens do mapa de
memria do rob, a cmera lateral deve ser usada para alinhamento e pareamento. A cmera
lateral deve possuir o prprio mapa de memria, obtido no percurso de gravao. Este mapa
pode ser reduzido e s incluir reas prximas a portas para diminuir a quantidade de imagens
armazenadas. Na prtica, o mtodo SURF dever parear a cena que o rob captura pela
cmera lateral cena mais adequada da memria, que indique o melhor alinhamento com a
porta (Figura 4.6). Quando o movimento concludo, na aplicao sugerida o controle de
localizao pode retornar cmera frontal. Da mesma forma que na proposta do critrio de
mdia de distncias entre caractersticas visuais para a localizao global, aplicamos aqui um
critrio alternativo para o pareamento entre imagens: utilizamos neste caso a variao de
distncia da posio em pixels no eixo X de caractersticas pareadas em diferentes imagens
como critrio para determinar o pareamento, j que esta a direo do movimento da cena em
relao cmera lateral. O deslocamento das caractersticas visuais acentuado, portanto, no
eixo X (eixo horizontal).
Figura 4.6: O rob observa a porta com a cmera lateral, buscando parear a imagem observada com a imagem
memorizada, que representa o ponto timo para manobra.
- 57 -
5 Resultados e Concluses
Nas sees seguintes, detalharemos os resultados dos experimentos realizados.
Primeiramente, avaliaremos os resultados do teste de localizao global. Os testes relativos
travessia de portas sero relacionados e sero apresentados a seguir. Finalmente, discutiremos
a aplicao prtica da metodologia no sistema de navegao de ambientes internos proposto.
Em cada seo, os resultados destes experimentos sero analisados e as concluses tiradas
sero apresentadas.
Figura 5.1: Diversos dos tipos de quadros encontrados no ambiente interno percorrido.
Cada caracterstica visual extrada pelo SURF possui coordenadas (X, Y), contadas em
pixels, que denotam sua posio na imagem. Duas caractersticas visuais pareadas entre duas
imagens possuem cada uma sua respectiva coordenada (X, Y). Subtraindo-se as coordenadas
das caractersticas uma da outra, temos a diferena de posio entre os pontos em suas
respectivas imagens. Por exemplo, a diferena de distncia entre duas imagens A e B, com
coordenadas (Xa, Ya) e (Xb, Yb), respectivamente, ser dada no eixo X por |Xa Xb| e por |Ya Yb| no eixo Y. A diferena representa a distncia e portanto tomada em mdulo; o sinal no
importante. O segundo critrio prope que se a mdia aritmtica das diferenas de posio
das caractersticas de duas imagens pequena, as perspectivas das duas cenas so prximas.
Como no caso queremos estimar a localizao na coordenada da direo de movimento do
rob, tomamos a diferena de distncias no eixo Y, ou seja, os valores de |Ya - Yb| para cada
caracterstica (ignorando assim variaes de translao e rotao). Pares de imagens que
apresentaram um nmero baixo de pares (testes indicaram que um mnimo de cinco pares
um bom pr-requisito para as imagens candidatas) eram eliminados, para evitar falso-
- 59 -
positivos no clculo deste segundo critrio. Ambos os critrios foram testados sobre os
mesmos conjuntos de imagens.
A Figura 5.2 e a Figura 5.3 mostram exemplos dos resultados do pareamento de
assinaturas entre duas imagens, e mostram exemplos da diferena de resultados obtidos com o
uso dos dois critrios a partir da mesma imagem observada (imagens da esquerda).
Figura 5.2: Estes dois pares mostram diferentes resultados (imagens da direita) obtidos pelos critrios diferentes
(primeiro critrio em cima, segundo critrio embaixo), para a mesma imagem (a imagem da esquerda a mesma
nos dois casos).
Podemos notar na figura a diferena entre os critrios. Nas duas figuras, pelo primeiro
critrio (par de imagens de cima), v-se um nmero maior de pares. No segundo critrio (par
de imagens de baixo) vemos um nmero menor de pares, mas caractersticas espacialmente
prximas em sua posio no eixo vertical. A diferena de erro entre a imagem observada e a
imagem eleita da memria foi medida como a diferena entre os dados odomtricos
associados s duas imagens. Para isso essencial que o rob comece os dois percursos no
mesmo lugar pois a odometria relativa origem do movimento. Analisando todas as
- 60 -
comparaes realizadas, calculamos que para o primeiro critrio, o erro mdio da localizao
estimada em relao localizao armazenada adquirida pela odometria, na coordenada da
direo do deslocamento, foi de 23.98 cm, e o desvio padro calculado foi de 40.52 cm. Para
o segundo critrio, com o mesmo conjunto de dados, o erro mdio da localizao estimada em
relao localizao real foi de 16.26 cm. O desvio padro neste caso foi de 25.13 cm.
Em um computador Intel Core 2 Duo 2.20GHz com 2 GB de RAM, o tempo mdio de
processamento para aquisio das caractersticas da imagem observada (o que s precisa ser
feito uma vez por imagem de entrada) foi de 330 ms. O tempo mdio obtido para comparao
entre duas assinaturas, que foi realizado para todas as imagens do conjunto, foi de 85 ms por
imagem. Isto mostra que especialmente o descritor do mtodo SURF permite comparao
rpida de imagens, adequado para uso em tarefas em tempo real, dependendo da aplicao.
Figura 5.3: Pares de resultados obtidos pelos dois critrios em um ambiente diferente.
Para reduzir o nmero de comparaes, em uma situao prtica para manter a localizao,
pode-se ainda usar o conhecimento sobre a posio do rob para eliminar comparaes
irrelevantes, buscando-se apenas imagens prximas posio anterior conhecida do rob.
- 61 -
A Figura 5.4 mostra grficos dos resultados de trs imagens diferentes obtidas em
pontos distintos do trajeto em relao base de dados. O crculo vermelho representa o ndice
onde houve maior nmero de pareamentos para cada imagem. A imagem usada na linha rosa
do grfico foi um corredor longo e vazio, a imagem usada na linha azul foi um corredor curto
(prximo parede) e a imagem usada na linha verde foi dentro de uma sala, com muitas
caractersticas visuais complexas. A partir disto podemos ver o perfil das cenas: corredores
longos apresentam variaes suaves no nmero de pares, e devido falta de caractersticas
marcantes, apresentam menos pares no geral; a sala, por outro lado, apresentou grandes
quantidades de caractersticas visuais devido ao alto nmero de caractersticas de destaque no
ambiente, e apresentou variaes mais bruscas no nmero de caractersticas devidas
variao mais acentuada de perspectiva. A imagem tomada no corredor curto apresenta um
meio termo entre estes dois casos.
Figura 5.4: Nmero de pares (matches) obtidos pelo mtodo SURF em relao a diferentes imagens, comparado
a uma mesma base de imagens.
A Figura 5.5 mostra diversos exemplos dos resultados de pareamento obtidos entre
diversas assinaturas. possvel ver como nmeros maiores de pares associados de
- 62 -
Figura 5.5: O Mosaico mostra a diferena que variaes sutis de perspectiva causam no nmero pares de
caractersticas visuais em diversas situaes.
10
3
6
4
9
8
5
6
6
6
4
11
8
7
6
9
9
6
-3.47
-3.47
-3.47
-3.47
-3.47
-3.47
-3.45
-3.43
-3.39
-2.35
-3.27
-3.13
-3.05
-2.99
-2.95
-2.89
-2.85
-2.85
11
7
9
12
7
8
8
8
4
3
6
4
4
9
7
8
7
8
-2.84
-2.84
-2.84
-2.81
-2.81
-2.81
-2.81
-2.80
-2.77
-2.74
-2.72
-2.70
-2.69
-2.67
-2.59
-2.49
-2.40
-2.39
13
10
15
13
15
17
9
14
17
11
15
15
15
16
12
11
4
10
-2.36
-2.36
-2.34
-2.30
-2.22
-2.12
-1.69
-1.65
-1.51
-1.41
-1.30
-1.27
-1.23
-1.14
-1.08
-1.04
-0.98
-0.95
7
9
7
10
16
19
18
16
16
18
21
18
15
17
16
21
18
18
-0.92
-0.91
-0.87
-0.84
-0.84
-0.84
-0.84
-0.84
-0.81
-0.79
-0.77
-0.75
-0.72
-0.60
-0.52
-0.42
-0.36
-0.29
24*
18
19
21
18
15
17
22
23
19
21
21
17
19
22
20
18
14
-0.24*
-0.22
-0.21
-0.19
-0.04
+0.03
+0.19
+0.27
+0.37
+0.45
+0.51
+0.61
+0.70
+0.80
+0.88
+0.98
+1.05
+1.12
- 64 -
Como dito, neste teste a cmera foi posicionada lateralmente ao rob, de forma
perpendicular cmera frontal. A medida de largura do rob de 49.7 cm, e a medida da
porta em questo 80.0 cm, o que permite ao rob uma margem de erro de cerca de 15 cm para
qualquer dos lados para realizao da manobra. Cinco imagens do ponto em que o rob est
alinhado ao centro da porta (o ponto ideal para realizao da manobra) foram obtidas, em
distncias variadas em relao porta. A distncia destes pontos em relao porta foi
medida. O rob foi orientado paralelamente ao centro do corredor, e posicionado em uma
marcao no cho para que a partida em todos os percursos ocorresse da mesma posio. Em
cada percurso gravado, a informao odomtrica foi calculada. Assim, o percurso gravado
consistiu da passagem do rob por toda a extenso da porta. Por fim, as imagens tomadas pela
cmera lateral do rob em cada um dos 8 percursos foram comparadas aos cinco quadros
centrais obtidos, e buscou-se determinar qual das imagens de cada um dos conjuntos obtidos
(cada conjunto possuindo entre 150 e 300 imagens) melhor representava a imagem central da
porta. Assim, foram obtidos 40 resultados. Sabendo-se o valor da odometria da imagem em
questo, foi possvel estimar o erro entre a posio real do centro da porta, ideal para a
manobra, e a posio da imagem escolhida para a manobra do rob.
As comparaes entre as imagens base e os percursos no se deram apenas pela
contagem do nmero de caractersticas SURF obtidas pelo pareamento de cada par de
imagens. Analogamente ao segundo critrio proposto no teste de localizao global (a mdia
das distncias entre as caractersticas), utilizou-se neste caso a mdia da distncia das
caractersticas no eixo X (no caso, |Xa - Xb|). Com a cmera lateral, o rob se desloca
perpendicularmente direo da cmera, e a variao de perspectiva mais acentuada no eixo
X. Neste caso, portanto, o mtodo usado foi o clculo da distncia entre as assinaturas das
imagens. O nmero de pares foi usado para que fosse possvel eliminar casos com nmeros
muito pequenos de pares (um mnimo de 5 pares foi considerado requisito razovel para
considerao de um quadro candidato). Considerando-se apenas casos em que o pareamento
oferece 5 ou mais pares positivos, o dx das assinaturas (a distncia no eixo X, dada pela
diferena em pixels entre cada caracterstica visual de cada imagem) foi calculado. Quanto
menor o dx, mais prxima a posio das assinaturas relativamente s suas respectivas
imagens, e maior a proximidade das perspectivas. Assim, o pareamento com o menor valor de
dx foi considerado o melhor candidato. Este sistema obteve um erro mdio de odometria de
- 65 -
8.63 cm, com desvio padro de 6.72 cm. Em 90% dos casos o erro foi pequeno o suficiente
(menor que 15 cm) para que a manobra fosse realizada com sucesso. A Figura 5.6 mostra um
exemplo de resultado do mtodo.
Figura 5.6: Exemplo de resultado da travessia de porta, baseado na distncia entre caractersticas no eixo X.
Estes resultados mostram que a cmera lateral permite a localizao da porta com boa
preciso. Em uma situao real, uma configurao semelhante a essa com pan-tilt pode ser
usada para que as cmeras possam observar ambos os lados do rob (no simultaneamente).
Devido ao fato de que a deteco de portas consiste de manobras precisas relativas a
obstculos prximos, os pontos de referncia gerados pelo SURF pertencem a caractersticas
reais que esto mais prximas cmera. Assim, o deslocamento do rob acarreta em
deslocamentos mais evidentes destas caractersticas relativamente ao observador (cmera).
Este aspecto favorece o resultado do mtodo SURF baseado no critrio de distncia entre
caractersticas visuais, pois a distino entre imagens maior sem que haja necessidade de
grandes deslocamentos, ao contrrio da localizao global em que muitas imagens da base de
dados consistem de longos corredores com caractersticas distantes. O fato de o deslocamento
do rob ser perpendicular orientao da cmera tambm favorece a percepo de
movimento. Estes fatores explicam os melhores resultados obtidos neste caso, em relao
localizao global com o deslocamento estimado atravs da cmera frontal.
- 66 -
6 Discusso
O projeto proposto teve por objetivo desenvolver um sistema de baixo custo de
localizao a partir de viso computacional, atravs do uso de cmera monocular como
principal sensor. Visou-se determinar a possibilidade do uso de mtodos detectoresdescritores de caractersticas em situaes complexas, na localizao do rob em ambientes
internos, onde h poucos elementos de destaque no ambiente e com variaes sutis de
perspectiva.
De acordo com a anlise em (Mikolajczyk e Schmid, 2005), mtodos detectoresdescritores baseados em espao de escala, como o SURF, so especialmente adequados a
perceber variaes de textura. Um ambiente interno tpico como os utilizados no projeto
possui diversidade de texturas menor que ambientes externos. Ainda assim, com parmetros
de threshold padro, o mtodo resultou em quantidades suficientes de pontos detectados,
exceto nos casos discutidos de proximidade a paredes e reas desprovidas de caractersticas
distintas. Assim, espera-se que o mtodo funcione to bem ou at melhor em ambientes
externos.
Nos testes, o SURF gerou boa preciso de localizao com ambos os critrios
individualmente. Acreditamos que o nmero de pares seja uma boa opo para localizao
global mais grossa (coarse), enquanto o mtodo de distncia em pixels entre as
caractersticas seja uma boa alternativa para refinar os resultados e encontrar a melhor
imagem em uma vizinhana de imagens prximas. O critrio de distncias mdias eficaz no
ambiente proposto, mas baseia-se em assumir que caractersticas visuais com posies
prximas na imagem 2D observada so prximas na realidade tridimensional. Casos onde isso
no verdade (o efeito paralaxe) podem acarretar em falso-negativos. Com ajustes
paramtricos estima-se que seja possvel utilizar este sistema em ambientes externos. Ainda
assim, os resultados mostram que o conhecimento da aplicao e do contexto do ambiente
permitiu que o critrio original fosse aperfeioado atravs da adio de uma nova forma de
classificao das comparaes entre assinaturas. O novo critrio contextualizado apresentou
melhores resultados que o critrio mais geral.
- 67 -
Pretende-se realizar testes para verificar possveis combinaes entre os dois critrios e
explorar a interao entre eles. Em aplicaes que necessitam de mais robustez, porm,
possvel obter-se melhores resultados sem abrir mo da configurao com apenas uma
cmera. Outros mtodos de localizao que podem ser usados com cmera monocular
incluem tcnicas de odometria visual como desenvolvido por Levin e Szeliski, (2004) e fluxo
ptico como em Sokolov et al., (2010). O OpenSURF, implementao usada do SURF,
oferece mtodos de estimativa de movimento por fluxo ptico, que pode ser estimado
comparando-se a posio dos pontos obtidos na imagem atual com a posio dos pontos em
imagens anteriores (Figura 6.1).
Uma alternativa para tornar o sistema mais resistente a alteraes no ambiente a
atualizao do mapa do ambiente. Isto pode ser realizado se a localizao do rob for
confivel no momento e se a perspectiva for adequada. Durante a navegao, o rob gera um
novo conjunto de imagens do ambiente para substituir uma regio do conjunto de imagens
memorizadas anteriormente, ou para gerar um novo conjunto a ser usado juntamente ao
anterior, em ambos os casos assimilando alteraes no ambiente. Neste caso, tcnicas
complementares de navegao como as j mencionadas devem ser usadas para garantir a
preciso odomtrica e compensar dificuldades do mtodo de extrao de caractersticas
visuais causadas por variaes no ambiente.
Figura 6.1: Fluxo ptico. esquerda, um exemplo do trabalho de Sokolov et al., (2010). direita, o fluxo
estimado atravs do OpenSURF.
- 68 -
em hardware como FPGAs, que reduzem muito o tempo para computao do algoritmo (Se et
al., 2004).
No que se refere aplicao em patrulha e monitoramento de robs mveis para
ambientes internos, relacionada com o INCT-SEC, acreditamos que os resultados mostram
que o projeto pode ser aplicado em um sistema real. possvel integrar o mtodo usado neste
trabalho com as alternativas apresentadas anteriormente e com diversas outras tcnicas de
acordo com a aplicao. Alm do sistema de localizao proposto, por exemplo, possvel
adicionar-se um sistema de deteco de pessoas. Tal funcionalidade seria til em um sistema
de monitoramento interno, que pode incluir segurana contra invases. Deteco de pessoas
tambm oferece ao sistema robustez ao dinamismo do ambiente (trfego de pessoas), e pode
ser alcanado atravs de mtodos usando fluxo ptico ou deteco de movimento (Dalal et al.,
2006, Lin et al., 2010, Zhao e Nevatia, 2004). A tcnica de fluxo ptico pode at mesmo ser
aplicada para deteco de obstculos e pessoas usando os prprios pontos obtidos com um
detector de caractersticas visuais, semelhante proposta usada em (Campbell et al., 2005).
Mesmo com esses aprimoramentos, acreditamos que seja possvel o projeto de um
sistema de navegao simples e eficiente utilizando os resultados obtidos. Apresentaremos a
seguir a proposta de um sistema de navegao e manuteno de localizao baseado nos
resultados obtidos para ambientes internos.
25
Referncias Bibliogrficas
ABDEL-HAKIM, E.; FARAG A. A. CSIFT: A SIFT Descriptor with Color Invariant
Characteristics. Computer Vision and Image Processing Laboratory (CVIP) University of
Louisville, Louisville, KY, 2006.
AGRAWAL, M.; KONOLIGE, K.; BLAS, M.R. Censure: Center surround extremas for
realtime feature detection and matching. In D. A. Forsyth, P. H. S. Torr, and A. Zisserman,
editors, ECCV (4), volume 5305 of Lecture Notes in Computer Science, p. 102115.
Springer-Verlag New York, Inc., 2008.
ANGUELOV, D.; KOLLER, A.; PARKER, E.; THRUN, S. Detecting and Modeling Doors
with Mobile Robots. Proceedings of the IEEE International Conference on Robotics and
Automation (ICRA), 2004.
STRM, K. J; HGGLUND, T.; HANG, C. C.; HO, W. K. Automatic Tuning and
Adaptation for PID Controllers - A Survey. Control Engineering Practice. v. 1, n. 4, p.
699-714, 1993.
STRM, K. J.; MURRAY R. M. Feedback Systems: An Introduction for Scientists and
Engineers. Princeton University Press, 2008.
AZUMA, R. T. A Survey of Augmented Reality. Teleoperators and Virtual Environments v.
6, n. 4, p. 355-385, 1997.
BALLARD, D. H.; BROWN, C. M.: Computer Vision. Prentice Hall, 1982.
BANKMAN, D. J.: Study of compact stereoscopic system for target distance estimation.
Proceedings of SPIE, the International Society for Optical Engineering,
v. 6238, p. 62380E.1 - 62380E.7, 2006.
BASRI, R.; RIVLIN, E., SHIMSHONI, I. Visual Homing: Surfing on the Epipoles.
International Journal of Computer Vision. v. 33, n. 2, p. 117137, 1999.
BAUER, J.; SUNDERHAUF, N.; PROTZEL, P. Comparing several implementations of two
recently published feature detectors (Published Conference Proceedings style). In Proc of
the International Conference on Intelligent and Autonomous Systems, IAV, 2007.
BAZEILLE, S.; FILLIAT, D. Combining Odometry and Visual Loop-Closure Detection for
Consistent Topo-Metrical Mapping. Proccedings of the conference on COGnitive systems
with Interactive Sensors (COGIS2009). 2009.
BAY, H.; FASEL, B.; Van GOOL, L. Interactive Museum Guide: Fast and Robust
Recognition of Museum Objects. Proceedings of the first international workshop on
mobile vision, May 2006.
BAY, H.; TUYTELAARS, T.; Van GOOL; L. SURF: Speeded Up Robust Features.
Computer Vision and Image Understanding (CVIU), v. 110, n. 3, p. 346-359, 2008.
- 72 -
- 74 -
DUSHA, D.; BOLES, W.; WALKER, R. Attitude Estimation for a Fixed-Wing Aircraft
Using Horizon Detection and Optical Flow. In DICTA, p. 485-492, 2007.
EBRAHIMI, M.; MAYOL-CUEVAS, W.W. SUSurE: Speeded Up Surround Extrema Feature
Detector and Descriptor for Realtime Applications. In Computer Vision and Pattern
Recognition Workshops. CVPR Workshops 2009. IEEE Computer Society Conference, p.
9-14, 2009.
ELFES, A. Using occupancy grids for mobile robot perception and navigation. IEEE
Computer Society Press, v. 22, p. 22:4657, 1989.
EVANS, C. Notes on the OpenSURF Library. University of Bristol, 2009.
FITZGIBBON, A.W.; ZISSERMAN, A. Automatic Camera Recovery for Closed or Open
Image Sequences. European Conference on Computer Vision, p. 311-326, 1998.
FORSSN, P. E.; MEGER, D.; LAI, K.; HELMER, S.; LITTLE, J. J.; LOWE, D. G.
Informed Visual Search: Combining Attention and Object Recognition. 2008 IEEE
International Conference on Robotics and Automation Pasadena, CA, USA, 2008.
FORSYTH, D. A.; PONCE, J. Computer Vision: A Modern Approach. Prentice Hall, 2003.
FOX, D.; BURGARD, W. THRUN, S. Markov Localization for Mobile Robots in Dynamic
Environments. Journal of Artificial Intelligence Research v. 11, p.391-427, 1999. 391-427
FROME, A.; CHEUNG, G.; ABDULKADER, A.; ZENNAROL, M.; WUL, B.; BISSACCO,
A.; ADAM, H.; NEVEN, H.; VINCENT, L. Large-scale Privacy Protection in Google
Street View. IEEE 12th International Conference on Computer Vision Issue: ICCV,
Publisher, p. 2373-2380, 2009.
GERKEY, B.; VAUGHAN, R.T.; HOWARD, A. The Player/Stage Project: Tools for MultiRobot and Distributed Sensor Systems. In Proceedings of the 11th International
Conference on Advanced Robotics (ICAR 2003), p. 317-323, Coimbra, Portugal, June
2003.
GONZALEZ, R. C.; WOODS, R. E. Digital Image Processing, 3rd Ed. Prentice Hall, 2008.
GUEAIEB, W.; MIAH, S. A Modular Cost-Effective Mobile Robot Navigation System Using
RFID Technology. Journal of Communications, vol. 4, n. 2, 2009.
HARRIS, C.; STEPHENS, M. J. A combined corner and edge detector. Plessey Research
Roke Manor, United Kingdom. The Plessey Company plc., 1988.
HAYKIN, S. Neural Networks: A Comprehensive Foundation. McMaster University, Ontario
Canada. Prentice Hall, 1999, 842 p.
HAYKIN, S.; Van VEEN, B.:Signals and Systems, 2nd Edition. John Wiley & Sons, 2002.
- 75 -
- 76 -
- 77 -
LIN, Y.; GUO, F.; LI, S. Improvement of optical flow in pedestrian detection based on
pictorial structure. In Intelligent Computing and Intelligent Systems (ICIS), 2010 IEEE
International Conference, v. 3, p. 917-921, 2010.
LOWE, D. G. Distinctive Image Features from Scale-Invariant Keypoints. Computer Science
Department of University of British Columbia. Vancouver, B.C., Canada, 2004.
LOWE, D. G.; SU, S.; LITTLE, J. Vision-based Mobile Robot Localization And Mapping
using Scale-Invariant Features. Computer Science Department of University of British
Columbia. Vancouver, B.C., Canada, 2001.
LUCAS, B. D.; KANADE, T. An Iterative Image Registration Technique with an Application
to Stereo Vision (IJCAI). 7th International Joint Conference on Artificial Intelligence
(IJCAI), p. 674-679, April, 1981.
LUH, G.; LIU, W. An immunological approach to mobile robot reactive navigation. Applied
Soft Computing, v. 8, p. 30-45, 2008.
MAJUMDAR, A.; WARD, R. K. Discriminative SIFT Features for Face Recognition.
Department of Electrical and Computer Engineering, University of British Columbia.
Vancouver, B.C., Canada, 2009.
MARTIN, J.; CROWLEY, J. L. Experimental Comparison of Correlation Techniques. IAS-4,
International Conference on Intelligent Autonomous Systems, 1995.
MATSUMOTO, Y.; IKEDA, K.; INABA, M.; INOUE, H. Visual navigation using
omnidirectional view sequence. Proc. IEEE/RSJ International Conference on Intelligent
Robots and Systems, 1999. IROS '99, v. 1, p. 317-322, 1999.
MATSUMOTO, Y.; MASAYUKI, I.; INOUE, H. Visual Navigation Using View-Sequenced
Route Representation. International Conference on Robotics and Automation (ICRA96),
1996.
MENDES, C.; WOLF, D. Desvio de Obstculos Utilizando um Mtodo Estreo Semi-global.
ENIA - VIII Encontro Nacional de Inteligncia Artificial. XXXI Congresso da Sociedade
Brasileira de Computao. Natal (RN), 2011.
MENEGATTI, E.; PRETTO, A.; PAGELLO, E. Testing omnidirectional vision-based MonteCarlo Localization under occlusion. 2004 IEEE/RSJ International Conference on
Intelligent Robots and Systems, 2004. (IROS 2004). Proceedings. v. 3, p. 2487-2493, 2004.
MIKOLAJCZYK, K.; SCHMID, C. A Performance Evaluation of Local Descriptors. IEEE
Transactions on Pattern Analysis and Machine Intelligence, v. 27, p. 1615-1529, 2005.
MORAVEC, H.P. Obstacle Avoidance and Navigation in the Real World by a Seeing Robot
Rover. Robotics Institute, Carnegie Mellon University & Doctoral Dissertation, Stanford
University, 1980.
- 78 -
MORAVEC, H.P. Sensor fusion in certainty grids for mobile robots. AI Magazine v. 9, p. 6174, 1988.
NIXON, M.S.; AGUADO, A.S. Feature Extraction & Image Processing, 2nd ed. Academic
Press, 2007.
OLIVA, A.; TORRALBA, A. The role of context in object recognition. Trends in Cognitive
Sciences. v.11, n.12, p. 520-527, 2007.
OLLIS, M.; STENTZ, A. Vision-Based Perception for an Automated Harvester
Robotics. In Intelligent Robots and Systems, 1997. IROS '97., Proceedings of the 1997
IEEE/RSJ International Conference, v. 3, p. 1838-1844, 1997.
OSRIO, F. S.; PESSIN, G.; WOLF, D. F.; SIMES, E. V.; BRANCO, K. C. Simulao
Virtual de Carros em Jogos e Aplicaes de I.A. VIII SBGames Simpsio Brasileiro de
Jogos e Entretenimento Digital, Rio de Janeiro, 2009.
PARK, S.; HASHIMOTO, S. An approach for mobile robot navigation under randomly
distributed passive RFID environment. IEEE International Conference on Mechatronics,
2009. ICM 2009, p 1-6, 2009.
PARKER, C. A.; ZHANG, H. Collective Robotic Site Preparation. Adaptive Behavior Animals, Animats, Software Agents, Robots, Adaptive Systems, v. 14, p. 5-19, 2006.
PESSIN, G. Evoluo de Estratgias e Controle Inteligente em Sistemas Multi-Robticos
Robustos. Dissertao de Mestrado PPG em Computao Aplicada da Unisinos: So
Leopoldo, RS, 2008.
PIAGGIO, M.; SGORBISSA, A.; VERCELLI, G.; ZACCARIA, R. Autonomous Robot
Navigation Using a Reactive Agents. In Proc. of the 5th Congress of the Italian
Association for Artificial Intelligence on Advances in Artificial Intelligence, p. 96-105,
1997.
QUIGLEY, M.; GERKEYY, B.; CONLEYY, K.; FAUSTY, J.; FOOTEY, T.; LEIBSZ, J.;
BERGERY, E.; WHEELERY, R.; NG, A. ROS: an open-source Robot Operating System.
In Proceedings of the Open-Source Software workshop at the International Conference on
Robotics and Automation (ICRA), 2009.
ROSS, M. G.; OLIVA, A. Estimating perception of scene layout properties
from global image features. Journal of Vision. v. 10, n. 1, p 125, 2010.
ROSTEN, E.; DRUMMOND, T. Fusing Points and Lines for High Performance Tracking.
IEEE International Conference on Computer Vision. v. 2, p. 1508--1511, 2005.
SALES, D.O.; OSRIO, F.S.; WOLF, D. F. Topological Autonomous Navigation for Mobile
Robots in Indoor Environments using ANN and FSM. In CBSEC - Conferncia Brasileira
de Sistemas Embarcados Crticos, 2011, So Carlos. Proceedings of CBSEC - Brazilian
Conference on Critical Embedded Systems. So Paulo : EPUSP, 2011, v. 1. p. 14-19, 2011.
- 79 -
- 80 -
- 81 -
- 82 -