Transcript

Visão Computacional

Visão Estéreo

http://www.dca.ufrn.br/~lmarcos/courses/visao

Shape from stereo

• Duas ou mais imagens da mesma cena

• Tomadas de pontos de vista diferentes

• Percepção da 3a dimensão

• Inversão de projeção por triangulação determinando a 3a dimensão

Estéreo x Motion

Random Dot Stereograms

• http://www.nottingham.ac.uk/~etzpc/sirds.html

• http://www.nottingham.ac.uk/~etzpc/sirds.html

Princípio básico da reconstrução estéreo (triângulos)

Objeto

Olhoesquerdo

Olhodireito

Projeção (transformações)

• Objetos guardam relações com mundo real

• Rotação, translação e escala

• Determinar pontos correspondentes nas imagens usando estas restrições

• Tendo as câmeras calibradas em relação ao sistema de mundo, sabendo-se a distância entre as câmeras, pode-se determinar o triângulo e a 3a dimensão

Modelo estéreo

y

P(x,y, z)

(xl,yl) xr ,xr

xO b

f f

(0,0,0) (b,0,0)

Premissas

• (x,y,z) = coordenadas de um ponto no espaço

• Origem imagem esquerda (xl, yl) em (0, 0, f)

• Ponto focal esquerdo em (0, 0, 0)

• Imagem direita (xr, yr) com origem em (b, 0, f)

• Ponto focal esquerdo em (0,0,0), direito em (b,0,0)• b = linha de base• f = distância focal (dos centros óticos aos planos

imagens)

Projetando no plano

xl xr

f

b

x

z

x-b

xfx

zl

x

f x b

zr

x

z

x b

z

xr

f

xl

f

Deslocamento em y=0

y yfy

zl r yl

y

(x,y,z)

yr

xl xr

x

O b

Figura 2.1 - Modelo estéreo

b

f

y

z yr

f

yl

f

f

Disparidade estéreo

• Manipulando as equações:

• Definindo d = xl - xr

• Substituindo z nas equações e

• achamos finalmente ed

bxx l

d

byy l

d

bfz

fx

z

f x b

z

xl - xr = - = fx

z-

fx

z

fb

z+ fb

z=

xfx

zl y

fy

zl

Generalizando (movendo origem)

(0,0,0) (d,0,0)(-d,0,0)

Calculando a disparidade

b

d

Observações

• z é inversamente proporcional a d• z é diretamente proporcional a b• fixado um erro na determinação de d:

– precisão na determinação de z cresce de forma direta com b.

– com o crescimento de b, imagens tendem a ser muito diferentes uma da outra

– ponto visível numa imagem pode não ser noutra, mesmo com vergência

Mais observações

• d é proporcional à distância focal f• à medida que f aumenta, imagens também• aumenta a distância do ponto projetado nas

imagens ao centro destas e em conseqüência a disparidade

• no modelo ideal:– pontos próximos disparidade grande– pontos longe disparidade pequena– ponto no infinito disparidade zero

Observações

• Modelo com vergência:– Pontos no horópter: disparidade zero

– Pontos mais próximos que o horópter: dispariade positiva

– Pontos mais longe que o horópter: disparidade negativa

• Bom sinal, daria para manter um robô a uma certa distância de uma pessoa usando apenas disparidade

Determinando altura dos pontos

ii

i ddd

hh

0

0

000

0

lr

lirii

ii

xxd

xxd

ddd

ii dd

hh

0

0 ii

i ddd

hhh

0

00

Para pequenos valores de h (terrenos planos):

Restrição epipolar• Verifica-se no sistema ideal apresentado que

as imagem yl e yr são a mesma e definem uma reta paralela ao eixo x denominada linha epipolar

• Se os eixos óticos das câmeras são não paralelos, projeções de um ponto objeto localizam-se nas linhas epipolares dadas pela interseção entre cada plano imagem e o plano formado pelos dois centros óticos mais o ponto objeto considerado

Restrição epipolar

S'l

S'r

Sl S

r

D'l

D'r

P'l

P'r

b

P

Dl D

r

Restrição epipolar

• Supondo a orientação relativa entre os dois sistemas conhecida (visto a seguir)

• A projeção de um ponto (xl, yl) na imagem esquerda é um raio que passa pela origem

• As coordenadas de um ponto qualquer situado neste raio, referenciadas ao sistema esquerdo podem ser expressas por:

x x s y y s z f sl l l l l , ,

Restrição epipolar

• No sistema direito, as coordenadas desse mesmo ponto no raio projetivo correspondente são:

x r x r y r f s ry r x r y r f s rz r y r y r f s r

r l l

r l l

r l l

( )( )( )

11 12 13 14

21 22 23 24

31 32 33 34

Restrição epipolar

r

rr

r

rr

z

y

f

y

z

x

f

x

e

• Assumindo que a distância focal nos dois sistemas é a mesma, as seguintes equações de projeção podem ser estabelecidas para o sistema direito:

Restrição epipolar• Usando as abreviações

temos as equações anteriores dadas por

que representam uma reta passando pelo ponto (u/w , v/w), quando s = 0, e por (a/c , b/c), quando s = .

wcszvbsyuasx rrr e ,

wcsc

bwcv

c

b

f

y

wcsc

awcu

c

a

f

x

r

r

1

1

Restrição epipolar

• O primeiro destes pontos é a imagem do ponto nodal (focal) da câmera esquerda no plano da imagem direita e o segundo a imagem do ponto acima considerado também na imagem direita.

Sr

Pr

Restrição epipolar

S'l

S'r

Sl S

r

D'l

D'r

P'l

P'r

b

P

Dl D

r

Generalidades• Considere o raio descrito por um ponto P, o

centro Sl do sistema esquerdo e a imagem Pl do ponto (estão alinhados).

• Se tomarmos um raio Dr paralelo a este, que passe pelo centro do sistema direito, a imagem deste raio na imagem direita e a imagem do ponto nodal da câmera esquerda na imagem direita definirão uma reta coincidente com a primeira linha epipolar, descrita antes.

Dr

Sr

Visão Computacional

Visão Estéreo

http://www.dca.ufrn.br/~lmarcos/courses/visao

Profundidade da disparidade e ângulos de vergência

Vergência

Vergência

Orientação relativa

Orientação Relativa

• Restabelecer as posições relativas que uma câmera tinha em relação à outra, no momento de tomada das imagens

• Não importa os pontos de mundo, apenas de imagem.

Orientação relativa

rlll

rlll

rlll

zrzryrxr

yrzryrxr

xrzryrxr

34333231

24232221

14131211

r

rr

r

rr

z

y

f

y

z

x

f

x

e

•Achar R, de modo que:

•Sendo que

Orientação relativa

• Então, dados n pontos com coordenadas nas imagens conhecidas, devemos montar um sistema de equações para achar R

• 9 incógnitas para R

• 3 incógnitas para T

• Total de 12 incógnitas (ou graus de liberdade)

Orientação relativa

3 equações (restrições normalidade de R) +1 equação (restrição de ortogonalidade de R)4 pontos correspondentes no sistema de câmeraTotal de 12 restrições seria OK?

Problema de escala

Orientação relativa

Mínimo de 5 pontos = 5x2 = 1010 + 4 = 14 > 131 incógnita para S

yl

y

P(x,y,z)

yr

xl xr

xO b

Figura 2.1 - Modelo estéreo

y

l

y P(x, y, z)

y

rx

l

x

r

xO bFigura 2.1 - Modelo estéreo

Solução

• 5 pontos com coordenadas de imagem conhecidas (não coplanares) em ambas as imagens

Orientação absoluta (exterior)

Orientação absoluta

• Colocar o par (orientado relativamente) em escala em relação ao mundo. Dada a disparidade de um ponto, determinar a coordenada 3D deste.

• O sistema completo fica orientado em relação ao frame de mundo.

Orientação absoluta (exterior)

• Com 4 pontos não co-planares

• 16 equações e 16 incógnitas

Orientação absoluta

Algoritmos estéreos1) Extração de feições ou características das

imagens;

2) Estabelecimento de correspondência (matching) entre as feições extraídas;

3) Reconstrução tridimensional.

Objeto

Olhoesquerdo

Olhodireito

Matching

• Podemos pensar, a princípio, em determinar detalhes que sejam inconfundíveis nas imagens, tais como contornos de objetos, certos ângulos, linhas, etc, em uma imagem e tentar sua localização na outra

• Usar as diferenças de tons de cinza entre pixels vizinhos (textura) e tentar estabelecer a correspondência.

Corresp. estéreo (matching)

• estereogramas de pontos randômicos • evidências da fase de correspondências • correlação de áreas ou de features

(elementos)• as imagens são pré-filtradas (eliminar altas

freqüências e realce de características)• Ideal: correspondênca para todos os pixels

nas imagens (na prática impossível).

Problemas - ruídos - erros• Valores da luminância dos pixels

correspondentes podem ser diferentes.

– Diferenças na quantização da luminância

– Características dos sistemas de aquisição

– Diferentes pontos de vista (diferentes ângulos)

– Distorções ocorridas no processo de aquisição

– Má localização dos elementos

– Ruídos.

• Ocultação de um elemento numa imagem.

Métodos de matching

• Matching baseado em áreas (completo)– correlacão entre janelas– minimização de erros– relaxação

• Matching baseado em elementos (esparso)– encontrar elementos– correlação entre elementos (esparso)

Pré-processamento

• Redução de ruídos

• Realce de elementos (arestas, cantos, textura)

• Normalização (em torno da média)

• Outras atenuações ou facilitações (wavelets, multi-resolução, segmentação)

Pré-processamento (filtragem)

Imn(,) =

(,)(,)

mnImn 2 =

2

(,)(,)

mnImn

2

Correlação

• Dada uma janela numa imagem, encontrar uma janela na outra imagem cujos pixels sejam o mais similar possível aos pixels da primeira janela

Correlação

• Determinar mínimo em:

• ou determinar máximo em:

Correlação

Correlação

Correlação cruzada normalizada

Correlação cruzada normalizada

Correlação cruzada normalizada

CORRELAÇÃO DE SINAIS

• Nishihara (1982)

primitiva “and” em imagem reduzida (32x32 posições)

Imagem 2G(8) Corr. Sinais Mapa de

Digital Disparid.

JANELAS ADAPTATIVAS

• 1) restringir tamanho de janela por contornos e por um tamanho máximo

• 2) Cálculo da disparidade para cada ponto da imagem com precisão a nível de píxel.

• 3) Completar o mapa de disparidade iterativamente

• 4) Densificar o mapa de disparidade

MATCHING POR NÍVEIS DE CINZA E RELAXAÇÃO

x

E

x

EEEdd rl

llnji

nji

2

1)(

1

)(

2

)( 4

4

22

4

4

4 22

jiji ddkyyxxx

CLIQUE MAXIMAL• Considere o grafo completo completo cujos nós são os

píxels (ou elementos) de cada imagem

• Ligações ou ramos estão definidos entre cada par deste conjunto de nós, nos dois sentidos.

• Uma esfera, onde os pontos sobre a superfície de cada hemisfério é o conjunto de píxels de cada uma das duas imagens respectivamente, havendo arestas ligando a todos.

• Estabelecer um subgrafo que indique a melhor semelhança entre cada píxel destas imagens. O subgrafo solução é denominado clique maximal.

CORRELAÇÃO de ELEMENTOS

• Encontrar numa das imagens elementos que possuam características semelhantes a dados elementos (pixels ou grupos de pixels) da outra imagem, através do cômputo de valores de correlação

Métodos baseados em elementos

CORRELAÇÃO DE CANTOS

• 1) Extração de elementos tais como sequências de arestas ou aproximações de polígonos e localizar cantos nestes.

• 2) Aplica-se um operador diferencial e relaciona-se pontos que são cantos por limiarização (thresholding).

• 3) Uso de um modelo explícito da estrutura local da imagem na vizinhança dos cantos e procurar similares numéricos para tal modelo por uma minimização não linear.

CORRESPONDÊNCIA de ARESTAS

• 1) Extração de arestas. Definição de estruturas lineares compostas por sequencias de pixels.

• 2) Cálculos de valores de correlação nestas estruturas

• 3) Pode-se eliminar algumas arestas na busca da correspondente, examinando o tamanho da estrutura (comprimento), a curvatura, etc...

VARREDURA DE LINHAS EPIPOLARES COM USO DE PROGRAMAÇÃO DINÂMICA

),( )(

e ),()(( )(

onde , )(

21121

3222132

32

1

2

3

xxhMinxf

xxhxfMinxf

xfMin

x

x

x

),,( 321

,, 321

xxxhMinxxx

Divide-se o espaço de disparidade dentro de cadalinha epipolar em dois sub-espaçosResolve-se o problema em um deles e depois no outroInter e intra-scan-line

UTILIZAÇÃO DE SNAKES• tracking de objetos em sequências de imagens

• snake minimiza energia numa spline, guiada por restrições de forças externas e influenciada pelas forças da imagem que a empurram em direção a elementos (features) tais como linhas e arestas

• snakes são contornos ativos que estacionam-se nas proximidades de arestas, localizando-as de forma precisa.

• Usa-se a continuidade de espaços de escala para enlarguecer a região de captura nos arredores de um elemento, ou seja, uma borração inicial da imagem com um filtro. 2)()( sVsVE R

sL

sest

Usando Gabor Wavelets e Fourier

• Deslocamento no espaço corresponde a um deslocamento de fase na transformada de Fourier

• Wavelets aproxima Fourier

• (Sanger, Qian)

Matching recursivo (LM)

Marcos Medeiros

• Imagem é decomposta em um espaço de escalas usando Wavelets ou Gaussianas

• Correlação começa em um nível grosseiro e até chegar ao nível de melhor precisão

• Ganha em tempo de busca, para o melhor nível

• Gargalo de ter que computar o espaço de escalas

Trabalho de casa

• Implementar um método de Reconstrução Estéreo (diferente para cada equipe), para 15/11/06

• Passos (todos):– Determinar o estado da arte em métodos baseados em área– Determinar o estado da arte em métodos baseados em features

(elementos)– Determinar o estado da arte em métodos baseados em biologia

(Gabor, Wavelets, Phase based methods, etc). – Escolher 4 métodos diferentes e implementá-los (usando imagens

providas pelas câmeras cedidas a cada grupo).– Entregar um relatório (todos) com o estado da arte.


Recommended