Você está na página 1de 31

Evandro Kondrat

Scanner 3D: Aquisio de pontos 3D por


raio Laser

Trabalho apresentado ao curso de


Bacharelado em Cincia da Computao da
Universidade Federal do Paran, como
requisito parcial obteno do ttulo de
Bacharel em Cincia da Computao.

Orientador:

Bruno Mller Junior

Universidade Federal do Paran

Curitiba

2011
2

Resumo
A proposta desse trabalho apresentar uma tcnica de aquisio de
pontos 3D de um objeto, utilizando apenas um raio laser e uma cmera
simples.

Com ajuda do laser, iremos projetar uma luz sobre o objeto a ser
reconstrudo. A partir dessa luz projetada, sero calculadas equaes, que
permitiro determinar as coordenadas em trs dimenses dos pontos da
superfcie do objeto.

Ao final demostraremos os resultados obtidos com a utilizao da tcnica,


para obter os pontos da superfcie de um objeto exemplo.
3

Sumrio
1. INTRODUO .................................................................................................................... 4
1.1. Motivao do Projeto .............................................................................................. 4
1.2. Histrico ..................................................................................................................... 5
1.2.1. Aplicaes .......................................................................................................... 5
1.2.2. Tcnicas de reconstruo 3D ....................................................................... 5
2. DEFINIO CONCEITUAL .............................................................................................. 8
2.1. Sistema cartesiano .................................................................................................. 8
2.2. Calibrao da cmera.............................................................................................. 9
2.3. Propriedades de captura de imagem. ............................................................... 10
2.3.1. Propriedades intrnsecas ............................................................................. 11
2.3.2. Propriedades extrnsecas ............................................................................ 11
2.4. Transformando pontos 2D para 3D ................................................................... 12
2.5. Geometria analtica ................................................................................................ 12
2.5.1. Equao da reta .............................................................................................. 12
2.5.2. Equao do plano .......................................................................................... 13
2.5.3. Interseo de reta e plano............................................................................ 13
3. O Projeto ........................................................................................................................... 14
3.1. Cenrio de captura................................................................................................. 15
3.2. Clculo do ..................................................................................................... 16
3.3. Reconstruo 3D .................................................................................................... 17
3.3.1. Aquisio de dados ....................................................................................... 17
3.3.2. Alinhamento das imagens ........................................................................... 18
3.3.3. Integrao das imagens ............................................................................... 19
4. Detalhes do Projeto ....................................................................................................... 20
4.1. Calibrao da cmera............................................................................................ 20
4.2. Extrao da informao........................................................................................ 22
4.3. Clculo da ............................................................................................... 22
4.4. Isolando da informao do laser sobre o objeto ........................................... 24
4.5. Obtendo pontos 3D do objeto ............................................................................. 25
4.6. Scaneando a face de um objeto ......................................................................... 26
5. Resultados obtidos ........................................................................................................ 27
6. Concluso ........................................................................................................................ 29
7. Bibliografia ....................................................................................................................... 30
4

1. INTRODUO

Este trabalho tem como objetivo descrever um software capaz de


reconstruir um objeto 3D a partir de imagens 2D do objeto.

Existem vrias tcnicas de reconstruo. A que ser vista neste texto utiliza
um raio laser. O laser ir projetar uma linha sobre a superfcie do objeto, o
que ir destacar seus contornos. Uma cmera captura a imagem dessa
projeo, e com base na anlise dessa imagem, junto com informaes
sobre o posicionamento cmera e do laser [1], possvel calcular as
coordenadas 3D de pontos da superfcie do objeto.

O desafio adicional que, inicialmente no conhecemos nenhuma


informao sobre o posicionamento do laser, esta informao dever ser
inferida com o auxlio de um plano de fundo que ser utilizado na cena
juntamente ao objeto que ser escaneado.

1.1. Motivao do Projeto


A motivao do projeto se deu aps uma aula de Computao Grfica.
Onde em uma pesquisa na internet encontrei o site de um sujeito chamado
David Heckner [2]. Ele oferecia um software que apenas com uma webcam
e uma ponteira laser que projeta uma luz em linha, era possvel reconstruir
objetos em trs dimenses. Como eu dispunha dos itens necessrios,
resolvi testar o software, que em uma verso demo, disponibilizado
gratuitamente.

Surpreendido com o excelente resultado e simplicidade de uso do mesmo,


comecei a pesquisar mais sobre o assunto e me aprofundar sobre
reconstruo 3D de imagens.

Meu trabalho se prope a entender e reproduzir a tcnica utilizada no


programa original, e tambm ser uma alternativa livre para reconstruo 3D
de objetos.
5

1.2. Histrico
Um problema bastante estudado na literatura computacional a
reconstruo tridimensional de objetos. Tal interesse se deve a uma
variada gama de aplicaes que necessitam de modelagem 3D de objetos.

1.2.1. Aplicaes

Dentre as aplicaes de modelos digitais 3D podemos citar:

Na rea mdica, a tomografia computadorizada entre outros


procedimentos, a ajuda de modelos tridimensionais auxiliam a analise
das superfcies estudadas e assim os mdicos podem dar um
diagnostico com mais exatido [3].

Na indstria comum a utilizao de moldes, modelos ou prottipos que


precisam ser digitalizados para produo em larga escala ou at mesmo
para uma analise computacional. Assim como a indstria
cinematogrfica se utiliza de modelos reais para construo dos
personagens digitais [4].

A preservao e arqueologia digital tambm necessitam de modelos 3D


na forma digital para melhor detalhamento e fidelidade com o objeto real
estudado. Alm da capacidade do modelo digital ser facilmente
replicvel e disponibilizado em diversos centros de estudos ou at
mesmo em museus digitais [5].

Alm de odontologia, topografia cartogrfica dentre outros. [3;6]

1.2.2. Tcnicas de reconstruo 3D

A seguir ser elaborada uma viso geral de algumas tcnicas existentes


para reconstruo 3D, com a finalidade de dar uma viso geral do assunto,
no qual esse projeto se insere.

Imagens estreo: uma tcnica que tenta reproduzir a forma que nosso
crebro usa para estimar a distancia dos objetos. So tiradas fotos de
pontos de vista diferentes e com base na diferena delas possvel
estimar a profundidade [7].

Digitalizador 3D: Trata-se de um dispositivo vetorial e consiste em uma


espcie de brao mecnico com um sensor de toque na ponta. A cada
vez que o sensor atinge um ponto na superfcie de um objeto, a
coordenada deste ponto em relao a um ponto referencial (origem)
transmitida ao computador.
A captura feita ponto a ponto, por esse motivo o resultado bem
preciso, mas extremamente demorado [8].
6

Figura 1: Digitalizador 3D desenvolvido pela FaroArm [8]

Luz estruturada: projetado um padro de luz sobre a superfcie do


objeto e um sensor captura a imagem do objeto com o padro projetado.
Conhecendo a geometria entre o sensor e o feixe de luz padronizado
possvel fazer a reconstruo do pedao do objeto observado [9].

Figura 2: Exemplo de luz estruturada [9]

Varredura Laser: Existem duas variantes que utilizam laser para


reconstruo 3D.
o Um baseado em LIDAR (Light Detection And Ranging) que estima
a distncia baseado no tempo que a luz leva para refletir no
objeto e voltar ao sensor [10].
o A outra a tcnica similar ao da luz estruturada. O raio laser
projeta um padro de luz. E conhecendo esse padro, juntamente
com a posio da cmera e do laser, feita uma triangulao
para se obter as coordenadas da superfcie [1].
7

Figura 3: Exemplo de triangulao com laser [20]

Este trabalho utiliza uma variao da ultima tcnica citada. Como j


mencionamos inicialmente no conhecemos nenhuma informao sobre o
posicionamento do laser. Sem essa informao, no possvel fazer tal
triangulao. Por isso, faremos uso de um plano de fundo conhecido na
imagem para inferir o posicionamento do laser. [2;11]
8

2. DEFINIO CONCEITUAL

Para o desenvolvimento do projeto, necessrio que se entenda o sistema


cartesiano usado (seo 2.1), o que calibrao da cmera (seo 2.2) e quais
propriedades ela visa obter (seo 2.3). Como podemos transformar um ponto
2D para 3D (seo 2.4) e um embasamento em geometria analtica e espacial
(seo 2.5).

2.1. Sistema cartesiano

Para entender como o projeto funciona, importante compreender o sistema


de coordenadas que ele utiliza.

Primeiro as coordenadas dos pontos que so obtidas das imagens


capturadas, exemplificada na Figura 4.

Figura 4: Sistema de coordenadas de uma imagem

Depois, definimos um sistema de coordenadas para representar as


coordenadas do mundo real, como podemos observar na Figura 5.
9

Figura 5: Sistema de coordenadas

em relao a este sistema cartesiano que todas as coordenadas,


equaes e pontos da superfcie do objeto vistos ao longo desse projeto sero
calculados.

2.2. Calibrao da cmera

Tem como objetivo, descrever uma correspondncia entre as coordenadas


do espao objeto 3D (mundo real) e pontos da imagem (2D).

Essa correspondncia se d por uma funo

Essa funo pode ser escrita como a multiplicao das propriedades


intrnsecas e extrnsecas. [12;13] (que sero abordadas nas sees 2.3.1
e 2.3.2)

Figura 6: Correspondncia de coordenadas


10

Para fazer essa associao, devemos conhecer n pontos no mundo real e


saber as coordenadas destes pontos, na imagem.
Para conseguir fazer isso, usamos uma imagem com um padro de pontos
conhecidos.

A cmera deve ser fixada de forma que no se mova durante a execuo


de todo o processo de captura das imagens. Isso garante que as
propriedades extrnsecas permaneam as mesmas durante a execuo do
projeto.

Uma vez fixada, a calibrao da cmera precisa ser feita apenas uma vez.
Quando realizada com sucesso, retorna trs matrizes. A intrnseca,
rotao e translao, que juntas formam a funo de correspondncia da
Figura 6.

2.3. Propriedades de captura de imagem.


Quando uma cmera captura uma foto, precisamos ter em mente que a
imagem resultante a projeo da imagem real ( ), no sensor de captura
dentro da cmera ( ) como podemos ver no diagrama da Figura 7.

Figura 7: Modelo geomtrico de uma cmera [14]


11

As informaes sobre como a imagem projetada na cmera podem ser


divididas em duas propriedades [14]: Intrnsecas e extrnsecas, que so
obtidas atravs de um processo chamado calibrao da cmera. Os quais,
veremos a seguir.

2.3.1. Propriedades intrnsecas

So as propriedades sobre a geometria interna da cmera, uma vez


medidos, no se alteram [12].
So elas, distncia focal e centro ptico.

Essas informaes sero armazenadas numa matriz com o seguinte


formato:

fx 0 cx
0 fy cy

0 0 1

Onde so as distancias focais nos respectivos eixos e definem


o centro ptico da projeo.

2.3.2. Propriedades extrnsecas

So as propriedades da perspectiva que imagem foi capturada, em relao


a um referencial.

Tem como finalidade estimar as posies e rotaes da cmera em relao


ao sistema de coordenadas do espao objeto. Pode ser determinada por
um modelo que relaciona os pontos na imagem com pontos no espao
objeto. Em geral usa-se um padro conhecido na imagem como referencia,
para fazer a relao entre os pontos [14].

Essas propriedades variam conforme a mudana de posio da cmera em


relao imagem observada.

So usadas duas matrizes para armazenar respectivamente, as


propriedades de rotao e translao da cmera em relao a uma
referncia. Como em geometria analtica, as matrizes representadas da
seguinte forma [12]:
12

r r r13 t1
11 12
R r21 r22 r23 E T t 2
t 3
r31 r32 r33

2.4. Transformando pontos 2D para 3D

essa transformao que o projeto espera conseguir. Transformar pontos de


uma imagem para um sistema cartesiano de trs dimenses.

O problema que quando analisamos um ponto especifico em uma imagem,


temos apenas duas informaes . E precisamos mapear esse ponto da
imagem, para o sistema cartesiano visto anteriormente.

Como vimos na calibrao da cmera (seo 2.2), existe uma funo que
converte pontos . Mas ela no bijetora, logo no temos uma funo
. Isso acontece porque quando representamos o mundo real em uma
imagem 2D, h perda de informao.

Para tornar essa transformao possvel, temos duas alternativas. Ter


informao adicional sobre os pontos em e assim suprimos a perda de
informao que ocorre na representao do mundo real em uma imagem.

Ou podemos arbitrar valores na funo de correspondncia, a fim de


transforma-la em uma funo bijetora.

O projeto utiliza as duas alternativas mais adiante sero explicado como


esses valores so arbitrados e tambm como extramos informaes
adicionais sobre os pontos.

2.5. Geometria analtica

Como a tcnica utilizada nesse texto envolve o clculo de retas (seo 2.5.1)
do raio laser projetadas sobre planos (seo 2.5.2) e tambm suas
interseces (seo 2.5.3), faremos aqui uma breve reviso dos principais
conceitos de geometria analtica que sero utilizados ao longo do texto.

2.5.1. Equao da reta

Para o espao tridimensional so consideradas trs coordenadas .A


determinao da equao de uma reta nesse espao tem as mesmas
13

caractersticas que a equao da reta no espao , diferenciando apenas no


nmero de coordenadas.

definida atravs de dois pontos distintos. E pode ser escrita na forma [15]:

2.5.2. Equao do plano

O plano um subconjunto do espao de tal modo que quaisquer dois


pontos desse conjunto pode ser ligado por um segmento de reta inteiramente
contida no conjunto.

H diversas formas de se determinar a equao do plano, nesse trabalho ele


ser determinado atravs de trs pontos distintos e no lineares.
Esse plano pode ser representado por uma equao na forma [15]:

2.5.3. Interseo de reta e plano

A interseco entre uma reta e um plano um ponto no , como vemos


na Figura 8.

Figura 8: Interseo de reta e plano

Para determinar as coordenadas desse ponto, basta resolvermos o sistema


linear composto pela equao da reta e pela equao do plano .
14

3. O Projeto

Este projeto se prope a demostrar uma forma de se obter pontos


tridimensionais da superfcie de um objeto, utilizando uma tcnica de varredura
laser de curta distncia e de baixo custo.

Uma tcnica bastante conhecida [1] consiste em fazer uma triangulao entre
cmera, laser e objeto para se calcular a distancia da superfcie do objeto com
a cmera ( ) como vemos no esquema da Figura 9.

Figura 9: Esquema de triangulao [1]

O problema, que para ser aplicada, precisa-se conhecer a distncia e ngulo


de inclinao do laser em relao cmera. Isso implica no uso de algum
mecanismo ou equipamento que provenha essa relao do laser com a
cmera.

O que estamos propondo aqui que o laser possa ser manuseado livremente
em relao cmera, e que qualquer mecanismo adicional deve ser obtido
atravs da imagem que a cmera captura.

Mas como dito anteriormente, uma imagem no tem toda a informao


necessria para reconstruir um objeto em trs dimenses. E para obter a
informao restante, iremos analisar a deformao que linha do laser sofre,
quando projetada sobre a superfcie do objeto.

Nessa anlise, precisamos ter alguma referncia, para poder comparar o que
seria a projeo normal da linha com sua projeo deformada na superfcie.
Essa referncia sobre a projeo do laser obtida atravs de um plano de
fundo, tambm conhecido como cenrio, previamente preparado atrs do
objeto.
15

Veremos a seguir como deve ser preparado o cenrio de captura de imagens


(seo 3.1), porque que esse cenrio nos ajuda a calcular o que chamamos de
f dos pontos (seo 3.2) e explicar o que reconstruo 3D (seo 3.3)
assim como o que esperamos conseguir fazer.

3.1. Cenrio de captura


O cenrio de captura deve ser preparado de forma que a cmera capture
simultaneamente, alm do objeto a ser scaneando, um plano de fundo com
uma posio especfica.

O plano de fundo foi escolhido de forma que seus eixos coincidam com o
sistema cartesiano escolhido para o projeto. Na Figura 10 temos um esquema
de como deve ficar cenrio de captura.

Figura 10: Esquema do cenrio

O fundo composto por dois planos perpendiculares. A projeo do laser pode


ser interpretada como sendo um plano, e a equao formada por esse plano,
chamaremos de .

No canto inferior direito do esquema, temos a representao da imagem


capturada pela cmera. Sobre essa imagem, temos uma funo chamada
16

, que dado um qualquer na imagem capturada, retorna o onde o pixel


formado por um dos pontos da linha laser na imagem.

O objeto a ser escaneado deve ficar entre o plano de fundo e o laser, de forma
que a possa intercept-lo.

O ponto o ponto real representado por na imagem capturada. A reta


imaginria formada por esses dois pontos, chamamos de ou
simplesmente . O ponto representa a projeo que o laser no ponto
teria se no tivesse sido interceptada pelo objeto.

A interseco entre a e nos dar as coordenadas no do


ponto .

3.2. Clculo do

Agora vamos mostrar, o porqu que conhecer o fundo importante para que
possamos calcular o dos pontos laser na imagem.

Figura 11: Viso transversal do cenrio

Como vemos na Figura 11, um que intercepte o fundo a esquerda,


passar pelo ponto .
Logo, podemos eliminar da frmula de correspondncia (seo 2.2) as
transformaes relativas ao eixo :
17

Obtendo:

[ ] [ ][ ][ ]

Manipulando algebricamente a equao, teremos:

[ ] ([ ][ ]) [ ]

Assim temos uma funo de transformao para todos os pontos


onde o eixo zero.
De forma anloga, obtemos uma funo para todos os pontos onde o
eixo zero.

Com essas duas funes, possvel calcular as coordenadas dos pontos


, e, portanto calcular a equao da reta formada entre eles, obtendo
assim o chamado .

3.3. Reconstruo 3D
Quando falamos de reconstruo 3D, temos que ter em mente que a
reconstruo completa de um objeto envolve trs etapas [16]: a aquisio de
pontos de profundidade, o alinhamento das imagens e a integrao das
imagens.

Como as etapas so bastante distintas, esse trabalho limitou-se a fazer apenas


a primeira etapa, aquisio de pontos de profundidade. As demais etapas
seguem outra linha de pesquisa que envolve computao grfica e podem ser
vistas em trabalhos relacionados rea [2;17].

Esse captulo far apenas uma breve introduo de todas as etapas que
envolvem a reconstruo.

3.3.1. Aquisio de dados

Consiste na utilizao de algum meio ou dispositivo para digitalizar um objeto.


Gerando geralmente uma malha de pontos ou polgonos. De modo que essa
malha consiga traduzir a profundidade da superfcie analisada, por isso
tambm chamada de mapa de profundidade.

esse mapa de profundidade que este projeto visa gerar e que ser
explicado detalhadamente no captulo 4.
18

3.3.2. Alinhamento das imagens

Por mais que existam diversas formas de se fazer a aquisio dos dados, em
geral, todas elas s podem varrer o objeto a partir de uma nica direo.

Por isso que a aquisio de dados precisa ser feita de diferentes pontos de
vista, de modo que seja possvel adquirir toda a superfcie do objeto.

Figura 12: Objeto adquirido sob vrios pontos de vista [2]

Ao final, preciso que esses dados sejam alinhados para que formem um
objeto nico. Esse processo tambm chamado de registro.

Como vemos na Figura 12, temos um objeto em que os pontos foram adquiridos
de 4 pontos de vista diferentes, o alinhamento visa agrupar todas as vistas em
uma nica formao, visto na Figura 13. Nesta figura, as cores indicam quais
imagens da Figura 12 foram usadas para gerar a composio de cada pedao da
Figura 13.

As tcnicas de soluo para esse problema consistem em achar


transformaes nas diferentes vistas para achar o alinhamento correto ou que
resulte no menor erro possvel [16].

Figura 13: Vistas alinhadas [2]


19

3.3.3. Integrao das imagens

Aps o alinhamento das imagens ainda possvel observar pequenas


imperfeies, buracos e distores.

A integrao a etapa que tenta recriar a superfcie do objeto a partir dos


pontos obtidos, o mais fielmente possvel.

Figura 14: Objeto recriado aps a integrao [2]

Comparando a Figura 13 com a Figura 14, podemos ver que os pontos foram
suavizados deixando a superfcie mais lisa, buracos foram preenchidos e que
todas as vistas agora fazem parte de um nico objeto.
20

4. Detalhes do Projeto

Esse captulo descreve como o projeto foi desenvolvido detalhadamente.

O passo a passo do processo consiste em:


1. Calibrao da cmera.
2. Posicionamento do laser sobre uma parte do objeto.
3. Extrao da informao do laser no frame
4. Clculo da .
5. Isolamento da informao do laser sobre o objeto
6. Obtendo pontos 3D do objeto
7. Armazenar as coordenadas obtidas.
8. Voltar ao passo 2 at que toda a superfcie do objeto seja
escaneada.

Ao final do processo, devemos ter a malha de pontos de uma face do objeto


que corresponde seo 3.3.1 vista anteriormente.

4.1. Calibrao da cmera

A calibrao da cmera, como visto na seo 2.2, tem como objetivo


extrair as propriedades intrnsecas e extrnsecas da cmera. Como a
biblioteca OpenCv [12] j tem procedimentos para extrair estas informaes
usando um padro xadrez, esse padro foi adotado (Figura 15). Esse padro foi
projetado sobre duas paredes com um ngulo de 90 entre si a fim de
maximizar a percepo de profundidade da imagem capturada.

Figura 15: Padro xadrez usado na calibrao


21

A funo cvDrawChessboardCorners(), detecta e retorna uma lista com as


coordenadas dos pontos de interseo dos quadrados do tabuleiro
xadrez, na imagem.

Figura 16: Lista de corners

No exemplo da Figura 16, o ponto n 30 corresponde s coordenadas


na imagem e ao ponto do modelo de coordenadas 3D adotado.
Para cada um dos 48 pontos marcados na imagem, foi dada, arbitrariamente,
uma coordenada R associada.
Com base nesse mapeamento, a funo cvCalibrateCamera2() calcula as
propriedades intrnsecas do sistema e a cvFindExtrinsicCameraParams2() as
propriedades extrnsecas.

Como dito anteriormente, esse processo feito apenas uma vez, pois
assumimos que a cmera ficar fixa durante o resto do processo.

Figura 17: Testando a funo de correspondncia


22

Para verificar a preciso da funo de correspondncia, fizemos um teste.


Mapeamos pontos 3D em uma imagem 2D. Os pontos escolhidos foram as
intersees entre os quadrados do tabuleiro. O resultado desse teste pode ser
visto na Figura 17, onde os crculos em vermelho indicam os pontos mapeados.
Como pode ser observado, esse mapeamento envolve certo erro.

4.2. Extrao da informao

Aps a calibrao o laser deve ser posicionado sobre a cena. Essa etapa visa
discretizar a imagem de modo que apenas a informao sobre a posio da
linha do laser seja relevante. Todos os outros elementos da imagem so
desnecessrios.

Figura 18: Foto original (a); Isolado o laser da imagem original (b); Laser com espessura de um pixel (c)

De cada imagem analisada (Figura 18- a), isolamos o laser do resto da imagem.
Isso feito, selecionando o espectro de cor vermelha na imagem. (Figura 18- b)

Como vemos (Figura 18 a, b) o laser dispersa um pouco e a linha fica um


pouco espessa.
Para facilitar a utilizao dessa informao mais adiante, defini que para cada
na imagem deveramos ter apenas um a ele associado.
Por isso, pegamos a imagem com o laser isolado (Figura 18 - b) e tiramos a
mdia da altura dos pixels brancos. Como resultado temos apenas o pixel
central da linha (Figura 18 c).

Como resultado final dessa etapa temos uma funo que retorna a altura dos
pixels laser para cada pixel horizontal na imagem.
a mesma funo esquematizada na Figura 10.

4.3. Clculo da

Como vimos anteriormente, a luz projetada pela linha laser faz parte de um
plano. Para calcular sua equao, precisamos de trs pontos distintos que
pertenam a esse plano.
23

Assim, com auxlio da funo selecionamos trs pontos aleatrios


distintos da linha laser (pontos vermelhos na Figura 19). Assumimos que eles
so no lineares. Assumimos tambm que eles estejam refletindo no plano de
fundo (e no no objeto), porque como vimos em 3.2 apenas temos uma
relao quando os pontos esto no eixo .

Com os trs pontos selecionados, podemos calcular a .

Figura 19: Equao projetada na imagem

Uma vez calculada a , podemos projetar os pontos do plano que


deveriam corresponder aos do laser. (pontos azuis na Figura 19)

Para validar essa equao, defini empiricamente um mtodo que consiste em:
Se ao menos 40% de todos os pontos retornados pela funo
pertencerem a equao do plano, significa que, o que assumimos era
verdadeiro, seno devemos selecionamos outros trs pontos e repetimos o
processo.

Na pratica isso visto como, para ser obtida uma equao vlida, o objeto
no pode cobrir mais que 60% da imagem.
Quanto maior a porcentagem do objeto na imagem, menos precisa a
equao calculada. Isso porque, quanto maior o objeto, menos luz projetada
no fundo e assim temos menos pontos para verificar a validade da equao
do plano.

Como vemos na Figura 19, na esquerda, os trs pontos selecionados


resultaram em uma bem diferente da projetada pelo laser.
Isso aconteceu por que os pontos selecionados so muito prximos e,
portanto no so completamente linearmente independentes e/ou no
pertencem ao plano de fundo, como assumimos.
24

direita, vemos o resultado de uma que traduz quase fielmente a


equao real do laser.

4.4. Isolando da informao do laser sobre o objeto

Depois de calibrada a cmera e de compreendido o mtodo de obteno da


equao do plano formado pelo laser, o prximo passo obter informao
sobre o objeto que ser escaneado.
Vamos lembrar que o processo de escaneado envolve analisar uma
sequencia de vdeo, e que para cada frame analisado, espera-se que o laser
intercepte duas coisas diferentes simultaneamente:
O fundo, como vimos anteriormente (seo 4.3) sem isso, no seria
possvel obter a .
O objeto, o laser tem que interceptar tambm o objeto que esperamos
mapear, sem isso no teramos a informao adicional para reconstru-
lo.

Figura 20: Selecionando alguns pontos que interceptam o objeto

Na Figura 20, podemos ver um exemplo, onde trs pontos da linha laser que
intercepta o objeto foram selecionados (marcao em verde).
Para mapear o objeto com fidelidade, devemos selecionar o maior nmero de
pontos quanto possvel, isto , o ideal seria selecionar todos os pontos do
laser que interceptam o objeto para cada imagem. O desafio aqui separar o
laser que intercepta o fundo, do que intercepta o objeto.
25

Figura 21: Informao extrada do frame da Figura 20 (a); Pontos relativos apenas ao objeto scaneando (b);

Como vemos na Figura 21, do frame da Figura 20, extramos toda informao da
linha do laser (seo 4.2) e com base na , descartamos a informao,
que no pertinente ao objeto. Nesse caso, onde o laser intercepta o fundo j
foi usado para calcular a , e nesse ponto no mais necessrio.

Desse processo, restam apenas os pontos onde o laser intercepta o objeto


(Figura 21 -b).

4.5. Obtendo pontos 3D do objeto

Nessa etapa, j conhecemos a , os pontos laser que interceptam o


objeto (seo 4.4) e tambm como calcular os formados por cada um
desses pontos (seo 3.2). Com isso, temos toda a informao necessria
para obter pontos 3D do objeto na imagem.

Agora, basta calcular a interseco dos formados por cada ponto na


imagem que reflete no objeto com a obtida anteriormente.

Figura 22: As coordenadas do objeto so calculadas para cada ponto do laser


que o intercepta. (pontos em verde)
26

A Figura 22 mostra a imagem de um frame, em azul est a projeo do plano do


laser ( ), em verde so todos os pontos onde o laser intercepta o objeto.
Para cada um desses pontos ser calculada sua coordenada 3D com base na
intercesso de seu feixe com a .

4.6. Scaneando a face de um objeto

O processo que acabamos de explicar detalha o passo a passo para obter as


coordenadas do objeto de uma imagem. Devemos lembrar que s possvel
recuperar as coordenadas dos pontos onde o laser passa sobre. Se
quisermos mapear toda a face de um objeto, devemos passar o laser por toda
a superfcie do mesmo. Para tanto, o processo acima deve ser repetido at
que o laser tenha percorrido todo o objeto.

No h diferenas entre o processo realizado em uma imagem ou em vdeo.


Com exceo da j explicada, calibrao da cmera (seo 4.1), que
realizada apenas no inicio.

Com os movimentos do laser sobre o objeto, a e dos pontos se


alteram, ento a cada frame todos os outros passos tem que ser recalculados.

Ao final, espera-se que o os pontos calculados formem uma malha de


profundidade que seja o mais fiel possvel do objeto escaneado.
27

5. Resultados obtidos

Para realizao dos testes, foi utilizada uma webcam com resoluo de
640x480, com foco ajustvel. A mesma que foi utilizada para as capturas das
imagens que vimos at aqui.

Figura 23: Frasco de desodorante que foi escaneado

Para ilustrar o processo, vamos mostrar o resultado do escner de um frasco


de desodorante sobre um cubo. Os objetos foram pintados de branco a fim de
facilitar a reflexo do laser. Foi gravado um vdeo de um minuto, onde o laser
tenta percorrer toda a superfcie dos objetos.
Os pontos obtidos foram armazenados linha a linha em um arquivo de texto e
visualizados com o auxlio de um software chamado ArcBall [18].

O ArcBall um software usado para visualizao de pontos em trs


dimenses. Ele usa como entrada um arquivo texto onde cada linha representa
um ponto. Os pontos so plotados na tela de forma que com o auxlio do
mouse o usurio possa alterar o ponto de vista que visualiza os pontos.

Na Figura 24 e Figura 25, podemos ver a projeo dos pontos obtidos no


software ArcBall sob vrios ngulos. Com elas temos uma boa dimenso da
qualidade do resultado final.
28

Figura 24: Viso da direita; frontal; esquerda do objeto.

Podemos observar alguns pontos interessantes sobre o resultado.

Alguns pontos do fundo foram contabilizados como sendo objeto;


Provavelmente devido imperfeio e ondulaes no plano de fundo.
Objeto no centro da imagem tem mais pontos detectados; observem que
a ponta do cubo quase no foi localizada.
Ficam ntidas nas laterais do cubo, linhas de pontos; O que prova que
elas vm das linhas do laser.
Nos pontos que ficam na direo da quina dos planos de fundo,
observasse uma grande falha de pontos e pontos dispersos;
Provavelmente a funo que calcula os feixes dos pontos (seo 3.2)
no consegue trat-los corretamente nessa regio.

Figura 25: Viso de cima dos pontos

No resultado exemplificado, foi obtido um total de 33 mil pontos.


29

6. Concluso

Esse trabalho mostra que a aquisio de dados da superfcie de um objeto


atravs da tcnica de varredura laser, com o laser sendo movimentado
livremente, uma tcnica vivel e simples.

Superado os desafios matemticos e conceituais, a implementao da tcnica


de relativa facilidade. Os resultados demonstraram-me uma qualidade acima
do que esperava no incio do projeto.

Alguns pontos no condizem com o objeto escaneado, Mas devemos lembrar


que todo o processo foi automtico. Em alguns quadros era notrio que a
equao do plano calculada estava equivocada. Esse equvoco, na maioria
das vezes, ocorreu na seleo dos trs pontos que do origem a equao do
plano. Um refinamento no cdigo certamente diminuiria essas distores, mas
tambm elevaria o tempo gasto no clculo. Assim como utilizao de
algoritmos mais robustos como o ransac [19] poderiam melhorar a preciso
das equaes calculadas.

Mas como o objetivo se focou em demostrar o funcionamento da tcnica, o


cdigo foi escrito em linguagem de alto nvel (python), por isso o desempenho
ficou um pouco prejudicado. A biblioteca OpenCv suporta a linguagem C,
ento esta linguagem deve ser preferida se quisermos obter mais
desempenho.

Acredito que, por ser uma tcnica de fcil utilizao e de baixo custo, uma
alternativa vivel para aquisio de pontos tridimensionais a curta distncia. O
refinamento e melhora do cdigo podem aumentar a preciso e em condies
ideais o erro pode ficar abaixo dos 0,4 mm [2].

Trabalhos futuros podem seguir as ideias aqui citadas, ou at mesmo explorar


as outras etapas da reconstruo 3D que no foram abordadas nesse projeto.
30

7. Bibliografia

1. A Simple Surface Mapping Technique using Laser Triangulation Method. Tjie Hok Hoo, Mohd
Rizal Arshad. Jakarta, Indonesia : ICOLA, 2002.

2. Heckner, David. David 3D Lasser. [Online] http://www.david-laserscanner.com.

3. O USO DA PROTOTIPAGEM RPIDA NA REA MDICO-ODONTOLGICA. Foggiatto, Jos


Aguiomar. Tecnologia & Humanismo, 2006.

4. Desenvolvimento de Jogos 3D: Concepo, Design e Programao. Esteban Walter Gonzalez


Clua, Joo Ricardo Bittencourt. So Leopoldo : Congresso da sociedade brasileira de
computao, 2005.

5. Museu Virtual 3D. Grupo Imago. [Online] [Citado em: 01 de Novembro de 2010.]
http://www.imago.ufpr.br/museu3d/.

6. Engenharia Geogrfica, FCUP. Fotogrametria Geogrfica. [Online] [Citado em: 10 de


dezembro de 2010.] http://www.fc.up.pt/lic_eg/fotogrametria.html.

7. Jos, Marcelo A. Reconstruo Tridimensional de Baixo Custo a Partir de Par de Imagens


Estreo. 2008, Vol. Dissertao de Mestrado na Escola Politcnica da USP.

8. FaroArm. [Online] [Citado em: 1 de Novembro de 2010.]


http://www.faro.com/FaroArm/Home.htm.

9. Li Zhang, Brian Curless, and Steven M. Seitz. Rapid Shape Acquisition Using Color Structured
Light and Multi-pass Dynamic Programming. 2002.

10. Wikipedia. LIDAR (Light Detection And Ranging). [Online] [Citado em: 10 de dezembro de
2010.] http://en.wikipedia.org/wiki/LIDAR.

11. Low-Cost Laser Range Scanner and. Simon Winkelbach, Sven Molkenstruck, Friedrich M.
Wahl. : DAGM, 2006.

12. Camera Calibration and 3D Reconstruction. [Online] [Citado em: 18 de Novembro de 2010.]
http://opencv.willowgarage.com/documentation/camera_calibration_and_3d_reconstruction.
html.

13. Tsai, R.Y. A versatile camera calibration technique for high-accuracy 3D machine vision
methodology using off-the-shelf TV cameras and lenses. IEEE. 1987.

14. Polidrio, Bortolozzi, Figueiredo. Calibrao geomtrica de cmeras, aplicando o mtodo


dos. ISSN. 1998.

15. Venturi, Jacir J. lgebra Vetorial e Geometria Analtica. s.l. : 9 Edio.

16. Albuquerque, Landecir Alves de. Alinhamento de imagens de profundidade na


reconstruo 3D de objetos de forma livre. Dissertao de mestrado - Universidade de Braslia,
2006.
31

17. Luciano Silva, Olga R. P. Bellon and Kim L. Boyer. Robust Range Registration by Combining
GAs and the SIM . 2005, Vol. World Scientific.

18. Shoemake, Ken. ARCBALL: a user interface for specifying three-dimensional orientation
using a mouse. 1992, Vol. Proceedings of the conference on Graphics interface.

19. Bolles, Martin A. Fischler and Robert C. Random Sample Consensus: A Paradigm for Model
Fitting with Applications to Image Analysis and Automated Cartography. 1981, Vol. ACM .

20. Scanner 3D. [Online] [Citado em: 1 de Novembro de 2010.]


http://en.wikipedia.org/wiki/3D_scanner.

Você também pode gostar