computer vision calibração de câmeras paulo sérgio rodrigues pel205

51
Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

Upload: internet

Post on 16-Apr-2015

110 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision

Calibração de Câmeras

Paulo Sérgio RodriguesPEL205

Page 2: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Revisão de Transformações

• Modelo de Translação

0*

0*

0*

ZZZ

YYY

XXX

Page 3: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Revisão de Transformações

• Modelo de Translação

vAv

Z

Y

X

Z

Y

X

Z

Y

X

1100

010

001

*

0

0

0

*

*

*

Page 4: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Revisão de Transformações

• Modelo de Translação

vTv

Z

Y

X

Z

Y

X

Z

Y

X

11000

100

010

001

1*

0

0

0

*

*

*

Page 5: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Revisão de Transformações

• Modelo de Escalonamento

vSv

Z

Y

X

S

S

S

Z

Y

X

z

y

x

11000

000

000

000

1*

*

*

*

Page 6: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Revisão de Transformações

• Modelo de Rotação

Page 7: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Revisão de Transformações

• Modelo de Rotação

1000

0100

00cossin

00sincos

R

Rotação no Eixo Z

Page 8: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Revisão de Transformações

• Modelo de Rotação

1000

0cossin0

0sincos0

0001

R

Rotação no Eixo X

Page 9: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Revisão de Transformações

• Modelo de Rotação

1000

0cos0sin

0010

0sin0cos

R

Rotação no Eixo Y

Page 10: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Revisão de Transformações

• Concatenação e Transformação Inversa

Av

TvSRv

*

Onde A é uma matriz 4 x 4 STRA

Page 11: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Revisão de Transformações

• Concatenação e Transformação Inversa

1000

100

010

001

0

0

0

1

Z

Y

X

T

Page 12: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Revisão de Transformações

• Concatenação e Transformação Inversa

1000

0100

00cossin

00sincos

1

R

Page 13: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Transformação Perspectiva

Z

Y

Z

YyZ

X

Z

Xx

Page 14: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Transformação Perspectiva

Z

Yy

Z

Xx

e

Z

Yy

Z

Xx

e

Page 15: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Transformação Perspectiva

Coordenadas cartesiana e Coordenadas homogêneas

k

kZ

kY

kX

w

Z

Y

X

w h e

Page 16: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Transformação Perspectiva

Matriz de Transformação em Perspectiva

11

00

0100

0010

0001

P

Page 17: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Transformação Perspectiva

Matriz de Transformação em Perspectiva

kkZkZ

kY

kX

k

kZ

kY

kX

c

Pwc

h

hh

1

100

0100

0010

0001

Page 18: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Transformação Perspectiva

Matriz de Transformação em Perspectiva

Z

ZZ

YZ

X

z

y

x

c

Page 19: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Transformação Perspectiva

Matriz de Transformação em Perspectiva Inversa

11

00

0100

0010

0001

1

1

P

cPw hh

Page 20: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Transformação Perspectiva

kkZkZ

kY

kX

c

Z

ZZ

YZ

X

z

y

x

c

k

kZ

kY

kX

w

Z

Y

X

w hh

hh Pwc

Transformação em Perspectiva: resumo

hh cPw 1

11

00

0100

0010

0001

P

11

00

0100

0010

0001

1

P

Page 21: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Transformação Perspectiva

k

ky

kx

cyx h 0 0,, 0

0

00

hh cPw 1 com acorco de

ambigüidade colinear

0

0 0

00

0

y

x

Z

Y

X

w

k

ky

kx

wh

Page 22: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Transformação Perspectiva

0

0

0

0,, 0

00

0

0

0

00 y

x

Z

Y

X

w

k

ky

kx

w

k

ky

kx

cyx hh

ambigüidade colinear

Resultado Inesperado!!!

Page 23: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Transformação Perspectiva

Z

Yy

Z

Xx

e

ambigüidade colinear

Zy

YZx

X

00 e

Page 24: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Transformação Perspectiva

k

kz

ky

kx

czyx h0

0

00 ,,

hh cPw 1 com acorco de

ambigüidade colinear

z

zz

yz

x

Z

Y

X

w

kkz

kz

ky

kx

wh

0

0

0

0

Page 25: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Transformação Perspectiva

z

zz

yz

x

Z

Y

X

w

kkz

kz

ky

kx

wh

0

0

0

0

z

zZ

z

yY

z

xX

0

0

0

ambigüidade colinear

Zy

Y

Zx

X

0

0

Page 26: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Modelo de Câmersa

Page 27: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Modelo de Câmera

R

R

• Para alinhar o plano da imagem (x,y) com o plano emcoordenadas do mundo (X,Y), pode-se fazer a seguinteseqüência de passos:

1. Translação do suporte para origem, G2. Rotação no eixo x, 3. Rotação no eixo z,

4. Translação do plano da imagem com relação ao suporte, C

Page 28: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Modelo de Câmera

1000

100

010

001

0

0

0

Z

Y

X

G

Translação para origem:

hGw

Page 29: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Modelo de Câmera

1000

0100

00cossin

00sincos

1

R

Rotação no eixo x

1000

0cossin0

0sincos0

0001

1

R

Rotação no eixo z

Page 30: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Modelo de Câmera

Rotação nos eixos x e z

1000

0cossincossinsin

0sincoscoscossin

00sincos

RRR

Page 31: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Modelo de Câmera

Translação do plano da imagem com relação ao suporte

1000

100

010

001

3

2

1

r

r

r

C

Page 32: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Modelo de Câmera

1000

100

010

001

0

0

0

Z

Y

X

G

1000

0cossincossinsin

0sincoscoscossin

00sincos

R

Translação para origem:

Rotação:

Translação:

1000

100

010

001

3

2

1

r

r

r

C

Page 33: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Modelo de Câmera

hh GwRRPCc )(

Combinando as duas translações e as duas rotações:

hh PCRGwc

Page 34: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Modelo de Câmera

3000

2000

3000

100

cossincossinsin

sincoscoscossin

cossincossinsin

sin)(cos

:será quarto, pelo scomponente

segundo e primeiro o dividindo e , equeção a doconsideran

imagem, da plano no sCarteziana scoordenada em entecorrespond

seu o mundo, do scoordenada em ,, ponto um Dado

rZZYYXX

rZZYYXXy

rZZYYXX

rYYXXx

PCRGwc

ZYXw

hh

Page 35: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Modelo de Câmera

o321000

3000

2000

3000

100

0 e 0

quando e a reduzem se equações Essas

cossincossinsin

sincoscoscossin

cossincossinsin

sin)(cos

rrrZYX

Z

Yy

Z

Xx

rZZYYXX

rZZYYXXy

rZZYYXX

rYYXXx

Page 36: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Modelo de Câmera

Exemplo

Suponha que queiramos encontrar as coordenadas deum dos cantos do bloco da figura abaixo:

Nessa posição, a câmera foiTransladada apenas no eixoZ de Z0= 1 m; rotacionado nono mesmo eixo de α = 135o;rotacionado no eixo X de β = 135o; e deslocado no Suporte segundo o vetor r = (0.03, 0.02, 0.035) m.Assuma uma distância focal deλ = 0.035 m.

Page 37: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Modelo de Câmera

Exemplo

Page 38: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Modelo de Câmera

035.053.1

03.0035.0

53.1

03.0

x

035.053.1

42.0035.0

53.1

42.0

y

Exemplo

Se o canto em questão possui coordenadas do mundo (X,Y,Z) = (1,1,0.2), as coordenadas no plano da imagem são dadas por:

x = 0.0007m

y = -0.009m

Page 39: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision

Calibração de Câmera e Realidade Aumentada

Page 40: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision

Calibração de Câmera e Realidade Aumentada

Page 41: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Calibração de Câmera e Realidade Aumentada:

Marcador Artificial

Page 42: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision O problema de calibração de câmera

– Ache [K] e [R T]– Dados pares de pontos [P] e [p]

1100

0

0

333231

232221

131211

w

w

w

z

y

x

yy

xx

Z

Y

X

Trrr

Trrr

Trrr

of

of

z

y

x

PTRKp

Padrões com pontos em posições conhecidas

Page 43: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Calibração de Câmera

• Calibração de câmera é o processo de determinar quaisos parâmetros da câmera, intrínsecos e extrínsecos, paraum conjunto de coordenadas do mundo e da imagem.

Page 44: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Calibração de Câmera

hh Awc

A = PCRG

hh PCRGwc

Page 45: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Calibração de Câmera

hh Awc

Se K = 1 na representação homogênea:

144434241

34333231

24232221

14131211

4

3

2

1

Z

Y

X

aaaa

aaaa

aaaa

aaaa

c

c

c

c

h

h

h

h

Page 46: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Calibração de Câmera

42

41

/

/

hh

hh

ccy

ccx

As coordenadas da projeção perspectiva do ponto(X,Y,Z) na forma Cartesiana são:

144434241

34333231

24232221

14131211

4

3

2

1

Z

Y

X

aaaa

aaaa

aaaa

aaaa

c

c

c

c

h

h

h

h

Page 47: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Calibração de Câmera

Substituindo ch1 = xch4 e ch2 = ych4 no sistema lineare expandindo, temos:

444342414

343232313

242322214

141312114

aZaYaXac

aZaYaXac

aZaYaXayc

aZaYaXaxc

h

h

h

h

Assumindo ch3 = 0 uma vez que z = 0, temos:

Page 48: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Calibração de Câmera

444342414

242322214

141312114

aZaYaXac

aZaYaXayc

aZaYaXaxc

h

h

h

0

0

2444434241232221

1444434241131211

ayayZayYayXaZaaXa

axaxZaxYaxXaZaYaXa

Y

Substituindo ch4 na primeira e segunda equações, obtemos duas equaçõescom 12 variáveis!

Page 49: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Calibração de Câmera

• O procedimento de calibração consiste então em:

(a) Obter pelo menos 6 pontos de coordenadas do mundom ≥ 6 com valores conhecidos (Xi, Yi, Zi ) i = 1,2,..,m. Isso gera um Sistema Linear de 12 equações e 12 incógnitas!

0

0

0

0

0

0

24622621

14612611

24222221

14212211

24222121

14112111

aYaXa

aYaXa

aYaXa

aYaXa

aYaXa

aYaXa

Page 50: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Calibração de Câmera

• O procedimento de calibração consiste então em:

(b) Resolver o Sistema Linear para obter os pontos correspondentesna imagem (xi, yi), i = 1, 2, ..., m.

66666

55555

44444

33333

22222

11111

,,,

,,,

,,,

,,,

,,,

,,,

yxZYX

yxZYX

yxZYX

yxZYX

yxZYX

yxZYX

Page 51: Computer Vision Calibração de Câmeras Paulo Sérgio Rodrigues PEL205

ComputerVision Calibração de Câmera

• O procedimento de calibração consiste então em:

(c) Tendo então a matriz de transformação A da câmera, pode-se mapear qualquer ponto w do mundo no plano da imagem:

p = (xi, yi) w = (X,Y,Z) A

P = Aw