Calibração de câmeras e projetores
Paulo Cezar P. Carvalho
Luis Antonio Rivera Escriba
Reconstrução tridimensional
• Princípio: estereoscopia (visão binocular)
• Necessário conhecer a relação entre pontos da imagem e os pontos correspondentes do espaço.
Modelagem e calibração de câmeras
• Modelagem
Qual é a forma da função que associa a cada ponto do espaço sua posição na imagem? De que parâmetros depende?
• Calibração
Para uma câmera específica, quais são os valores destes parâmetros?
Modelos de câmera
• Câmera pin-holeequivalente
• Deformação radial causada pelas lentes (modelo empírico)
Modelos de câmera
Câmera pin-hole
• Projeção perspectiva
• Que técnicas matemáticas são apropriadas para lidar com projeções perspectivas?
Geometria Projetiva
• Espaço projetivo RPn
Retas pela origem em Rn+1
• Coordenadas homogêneas (x, y) [x, y, 1] [x, y, ]
[u, v, w] = {(u, v, w) | ≠ 0}
ponto (u/w, v/w)
[u’, v’, 0] = {(u’, v’, 0) | ≠ 0}
vetor (u’, v’)
R2
1
Colineações e transformações projetivas
• Transformações lineares em Rn+1 Colineações em RPn Transformações projetivas em Rn
wv
wu
w
v
u
y
x
Py
x
y
x
/
/
1
][
1R2
1
A
B
C
A’
B’
C’A’’ B’’
C’’
Projeção Perspectiva
10100
000
000
1Z
Y
X
f
f
y
x
Z
fYy
Z
fXx ,
X
Y
Z
x
y P = (X,Y,Z)
p = (x, y)
f
Transformação de câmera
• Quatro sistemas de coordenadas– do mundo (SCM)
– da câmera (SCC)
– da imagem (SCI)
– em pixels (SCP)
• Três transformações
X~
x
y P = (X,Y, Z)
X
Y
Z
u
v (u,v)
O
Y~
O~
Z~
SCM
SCC
SCI
SCP
SCM SCC
• Mudança de referencial
1
10
1
~
~
~
Z
Y
X
TR
Z
Y
X
X~
x
y P = (X,Y, Z)
X
Y
Z
u
v (u,v)
O
Y~
O~
Z~
SCM
SCC
SCI
SCP
SCC SCI
• Projeção perspectiva
1
~
~
~
0100
000
000
1Z
Y
X
f
f
y
x
X~
x
y P = (X,Y, Z)
X
Y
Z
u
v (u,v)
O
Y~
O~
Z~
SCM
SCC
SCI
SCP
SCI SCP
• Transformação afim
0
00
1 10 0 1
x
y
u s u x
v s v y
X~
x
y P = (X,Y, Z)
X
Y
Z
u
v (u,v)
O
Y~
O~
Z~
SCM
SCC
SCI
SCP
Compondo as transformações
1
100100
000
000
100
0
10
0
Z
Y
X
TRf
f
vs
us
v
u
y
x
1100
0
10
0
Z
Y
X
TRvf
ucf
v
u
y
x
PTRKp ][
parâmetros extrínsecos
parâmetros intrínsecos
Calibração de câmera
• Problema: obter os parâmetros extrínsecos (R, T) e intrínsecos (K) da transformação projetiva de câmera.
• Dados: n pares de pontos correspondentes (Pi, pi) na cena e na imagem.
Calibração de câmeras
• Calibração estimação de parâmetros otimização
2,,
,,|)(|min iTRKi
TRKPfp
pontos da cena
pontos da imagem
projeção (função não linear)
Resolvendo o problema de otimização
• Otimização não-linear
• Obtenção de uma boa solução inicial
• Utilização de um método iterativo para melhorar a solução obtida
Resolvendo o problema de otimização
• Otimização não-linear
• Obtenção de uma boa solução inicial– método de Tsai– método de Zhang
• Utilização de um método iterativo para melhorar a solução obtida– método de Levenberg-Marquardt
Resolvendo o problema de otimização
• Otimização não-linear
• Obtenção de uma boa solução inicial– método de Tsai– método de Zhang
• Utilização de um método iterativo para melhorar a solução obtida– método de Levenberg-Marquardt
Método de Tsai
• Padrão de calibração bidimensional (também há uma versão para padrão tridimensional).
• Modelo mais restrito de câmera (ponto principal conhecido e pixels quadrados).
• Resolve uma sequência de problemas de mínimos quadrados lineares
100
00
00
f
f
K
Método de Tsai
• Parâmetros
• Dados
Pi = (Xi, Yi, 0), pi = (ui, vi, 0), i = 1, 2, ..., n
)pixels em(),metros em(
)ortonormalmatriz(
fTTTT
rrr
rrr
rrr
R
zyx
zzzyzx
yzyyyx
xzxyxx
Método de Tsai
• Cada par cena-imagem fornece uma equação envolvendo U1=rxx/Ty, U2=rxy/Ty, U3=Tx/Ty. U4=ryx/Ty, U5=ryy/Ty
iiiiiiiiii
iy
yyi
y
yx
y
xi
y
xyi
y
xx
yiyyiyx
xixyixx
i
i
zizyizx
yixyixxi
zizyizx
xixyixxi
uUYuUXuUvUYvUXv
YT
rX
T
r
T
TY
T
rX
T
r
TYrXr
TYrXr
v
u
TYrXr
TYrXrfv
TYrXr
TYrXrfu
54321
1
,
Método de Tsai
• Os valores de U1, ..., U5 são encontrados resolvendo um sistema de equações lineares com mais equações do que incógnitas (mínimos quadrados).
• As condições de ortonormalidade permitem, a partir daí, obter R, Tx e Ty.
(ficam faltando f e Tz)
Método de Tsai
• Os valores de f e Tz são encontrados por meio de outro problema de mínimos quadrados.
)()(
)()(
,
izyizxiziyiyyiyx
izyizxizixixyixx
zizyizx
yixyixxi
zizyizx
xixyixxi
YrXrvTvfTYrXr
YrXruTufTYrXr
TYrXr
TYrXrfv
TYrXr
TYrXrfu
Exemplo
Exemplocena: (0, 13.84, 0)imagem: (15, 254)
X
YZ
14.1755,
7600.56
6184.3
2297.20
,
2690.07526.06010.0
9629.02231.01515.0
0201.06195.07847.0
fTR
Posição da câmera: RtT (49 m, 29 m, 18 m)
Possíveis arquiteturas
• Somente câmeras (calibradas)
• Câmera e projetor (ambos calibrados)
• Câmeras (calibradas) e projetor (não calibrado)
Calibração conjunta de câmeras
• Padrão de calibração estacionário• Parâmetros extrínsecos com relação a este sistema
Calibração câmera-projetor
• Projetor não pode ser calibrado diretamente através de padrão de calibração!
Calibração câmera-projetor
• Câmera calibrada normalmente (com padrão de calibração)
• Projetor calibrado através da câmera: projeção de padrão conhecido sobre o plano do padrão de calibração
Calibração câmera-projetor
• Câmera já calibrada, com parâmetros K, R, t• Para cada ponto, correspondência entre
– ponto (u, v) da imagem projetada (em pixels)– ponto do plano z = 0 do mundo, obtido resolvendo
onde (u’, v’) são as coordenadas na imagem capturada
w
wv
wu
y
x
tRK '
'
0
][
Exemplo
CAMERA
fc: 539.464252
Rc:
0.948741 -0.195518 0.248319
0.009372 0.802746 0.596248
-0.315915 -0.563358 0.763430
Tc:
-26.773141 -18.953860 118.435571
PROJETOR
fp: 1682.618801
Rp:
0.999570 -0.022836 0.018382
0.002219 0.684199 0.729292
-0.029231 -0.728938 0.683955
Tp:
-20.237278 -11.698420 221.246040
CAMERA PROJETORRcp: Tcp:
0.957363 0.001997 -0.288881 39.645942 -11.929347 113.928842
0.049429 0.984097 0.170614
0.284627 -0.177619 0.942040