Post on 17-Jul-2020
Capítulo 1. Formación de imagen
Luis Baumela. Vision por Computador.– p.2/19
Componentes de un sistema de visión
Luis Baumela. Vision por Computador.– p.3/19
Formación de imagen
Índice:
Modelo de lente fina
Modelo de proyección perspectiva
Modelo proyectivo de cámara
Modelo afín de cámara
Calibración
Bibliografía
Luis Baumela. Vision por Computador.– p.4/19
Modelo de lente fina
Hipótesis: La óptica de la lente puede modelarse comouna lente fina.
Luis Baumela. Vision por Computador.– p.5/19
Modelo de lente fina
Hipótesis: La óptica de la lente puede modelarse comouna lente fina.
Principio de funcionamiento: Refracción de la luz.
Lente
C
Imagen
Objeto
to
do
ti
di
f ′
f
FF ′
O
I
Ec fundamental:
1
f=
1
di
+1
do
Luis Baumela. Vision por Computador.– p.5/19
Modelo de lente fina
Hipótesis: La óptica de la lente puede modelarse comouna lente fina.
Principio de funcionamiento: Refracción de la luz.
Lente
C
Imagen
FF ′
O
I
Ec fundamental:
1
f=
1
di
+1
do
Luis Baumela. Vision por Computador.– p.5/19
Modelo de lente fina
Hipótesis: La óptica de la lente puede modelarse comouna lente fina.
Principio de funcionamiento: Refracción de la luz.
Lente
C
Imagen
FF ′
O
I
Ec fundamental:
1
f=
1
di
+1
do
f = di, si do ≈ ∞.
Luis Baumela. Vision por Computador.– p.5/19
Modelo de proyección perspectiva
Cámara oscura.
imagenvirtual
objetoplanoimagen
Luis Baumela. Vision por Computador.– p.6/19
Modelo de proyección perspectiva
Abstracción geométrica.La proyección de un punto viene dada por el corte del plano imagencon la visual que une el punto y el centro óptico de la cámara.
M(X,Y,Z)
C
m(u,v)
Plano imagen
Luis Baumela. Vision por Computador.– p.6/19
Modelo de proyección perspectiva
Abstracción geométrica.La proyección de un punto viene dada por el corte del plano imagencon la visual que une el punto y el centro óptico de la cámara.
M(X,Y,Z)
C
m(u,v)
Plano imagen
Z
v
Y
u
X
SREscena
SRImagen
Luis Baumela. Vision por Computador.– p.6/19
Modelo de proyección perspectiva
Modelo de proyección.Relaciona las posiciones de puntos en la escena con su proyecciónsobre el plano imagen.
M(X,Y,Z)
C
Plano imagen
Zu
m(u,v)
f
Z
X
X
u u = fX
Z
v = fY
Z
Luis Baumela. Vision por Computador.– p.6/19
Modelo proyectivo de cámara
1. El modelo es lineal empleando coordenadashomogéneas.
cartesianas homogéneas(X, Y, Z) ⇔ (λX, λY, λZ, λ)
(A
D, B
D, C
D) ⇔ (A , B, C, D)
Luis Baumela. Vision por Computador.– p.7/19
Modelo proyectivo de cámara
1. El modelo es lineal empleando coordenadashomogéneas.
cartesianas homogéneas(X, Y, Z) ⇔ (λX, λY, λZ, λ)
(A
D, B
D, C
D) ⇔ (A, B, C, D)
2. El modelo de proyección resultante, en forma matricial:
u = fX
Z
v = fY
Z
≡
λu
λv
λ
=
f 0 0 0
0 f 0 0
0 0 1 0
X
Y
Z
1
Luis Baumela. Vision por Computador.– p.7/19
Modelo proyectivo de cámara
3. Modelo intrínseco.Digitalización ≡ cambio de unidades + traslación.
v
(i ,j )0
CCD
0
uk
vk
Imagen
u
j i
PuntoPrincipal
1
1
Luis Baumela. Vision por Computador.– p.8/19
Modelo proyectivo de cámara
3. Modelo intrínseco.Digitalización ≡ cambio de unidades + traslación.
v
(i ,j )0
CCD
0
uk
vk
Imagen
u
j i
PuntoPrincipal
1
1
j = kuu + j0
i = kvv + i0
Luis Baumela. Vision por Computador.– p.8/19
Modelo proyectivo de cámara
3. Modelo intrínseco.Digitalización ≡ cambio de unidades + traslación.
v
(i ,j )0
CCD
0
uk
vk
Imagen
u
j i
PuntoPrincipal
1
1
j = kuu + j0
i = kvv + i0
λj
λi
λ
=
ku 0 i0
0 kv j0
0 0 1
u
v
1
donde
ku: Densidad píxeles horizontal
kv: Densidad píxeles vertical
Luis Baumela. Vision por Computador.– p.8/19
Modelo proyectivo de cámara
3. Modelo intrínseco.Digitalización ≡ cambio de unidades + traslación.
v
(i ,j )0
CCD
0
uk
vk
Imagen
u
j i
PuntoPrincipal
1
1
j = kuu + j0
i = kvv + i0
λj
λi
λ
=
fku s i0 0
0 fkv j0 0
0 0 1 0
X
Y
Z
1
Luis Baumela. Vision por Computador.– p.8/19
Modelo proyectivo de cámara
3. Modelo intrínseco.Digitalización ≡ cambio de unidades + traslación.
v
(i ,j )0
CCD
0
uk
vk
Imagen
u
j i
PuntoPrincipal
1
1
j = kuu + j0
i = kvv + i0
λj
λi
λ
=
fku s i0 0
0 fkv j0 0
0 0 1 0
X
Y
Z
1
Parámetros intrínsecos:
Punto principal: (i0, j0)
Focal horizontal: αu = fku
Focal vertical: αv = fkv
Sesgo: s
Luis Baumela. Vision por Computador.– p.8/19
Modelo proyectivo de cámara
4. Modelo extrínseco.Movemos el SR de la escena fuera de la cámara
M(X’,Y’,Z’)
C
m
Y
Z
Xt
RZ’
X’
Y’ Luis Baumela. Vision por Computador.– p.9/19
Modelo proyectivo de cámara
4. Modelo extrínseco.Movemos el SR de la escena fuera de la cámara
M(X’,Y’,Z’)
C
m
Y
Z
Xt
RZ’
X’
Y’
λX
λY
λZ
λ
=
(
R3×3 t3×1
01×3 1
)
X ′
Y ′
Z ′
1
donde
R: Rotación entre SR escena y
cámara.
t : Posición cámara en la escena.Luis Baumela. Vision por Computador.– p.9/19
Modelo proyectivo de cámara
5. Modelo de proyección perspectiva
M(X’,Y’,Z’)
C
Y
Z
X
m(i,j)
ji
X’
Y’
Z’
λj
λi
λ
= K (R3×3 | t3×1)
︸ ︷︷ ︸
P3×4
X′
Y′
Z′
1
11 parámetros del modelo:
P3×4 =
p1 1 p1 2 · · · p1 4
......
. . ....
p31 p32 · · · p34
Luis Baumela. Vision por Computador.– p.10/19
Modelo proyectivo de cámara
5. Modelo de proyección perspectiva
M(X’,Y’,Z’)
C
Y
Z
X
m(i,j)
ji
(i0,j0)
f
kv
ku
X’
Y’
Z’
λj
λi
λ
= K (R3×3 | t3×1)
X ′
Y ′
Z ′
1
5 parámetros intrínsecos:
K =
αu s j0
0 αv i0
0 0 1
Luis Baumela. Vision por Computador.– p.10/19
Modelo proyectivo de cámara
5. Modelo de proyección perspectiva
M(X’,Y’,Z’)
C
Y
Z
X
m(i,j)
ji
X’
Y’
Z’tR
αβ
γ
λj
λi
λ
= K (R3×3 | t3×1)
X ′
Y ′
Z ′
1
6 parámetros extrínsecos:
R3×3(α, β, γ), t3×1 =
tX
tY
tZ
Luis Baumela. Vision por Computador.– p.10/19
Modelo proyectivo de cámara
6. Caracterización del modelo de proyección perspectiva.
Sea P = (A | b) una matriz de dimensión 3 × 4 y sean (ai)>
(i = 1 . . . 3) las filas de la matriz A.
P es una matriz de proyección perspectiva ⇐⇒ d e t(A) 6= 0.
P es una matriz de proyección perspectiva sin sesgo (s = 0)⇐⇒ d e t(A) 6= 0 y (a1 × a
3) · (a2 × a3) = 0.
P es una matriz de proyección perspectiva sin sesgo y con
píxeles cuadrados(
αu
αv
= 1)
⇐⇒ d e t(A) 6= 0 y
(a1 × a3) · (a2 × a
3) = 0
(a1 × a3) · (a1 × a
3) = (a2 × a3) · (a2 × a
3)
Luis Baumela. Vision por Computador.– p.11/19
Modelo proyectivo de cámara
7. Propiedades.
M(X’,Y’,Z’)
C
m
Xt
RZ’
X’
Y’
Y
Z
Sea la matriz de proyección [A | b]
Centro Optico. c = −A−1
b.
Ya que:
P también puede expresarse como
P = K [R | − Rc]. Luego, A = KR
y b = −Ac, con lo que c = −A−1
b.
Luis Baumela. Vision por Computador.– p.12/19
Modelo proyectivo de cámara
7. Propiedades.
M(X’,Y’,Z’)
C
m
Xc
RZ’
X’
Y’
Y
Z
Sea la matriz de proyección [A | b]
Centro Optico. c = −A−1
b.
Ya que:
P también puede expresarse como
P = K [R | − Rc]. Luego, A = KR
y b = −Ac, con lo que c = −A−1
b.
Luis Baumela. Vision por Computador.– p.12/19
Modelo proyectivo de cámara
7. Propiedades.
M(X’,Y’,Z’)
C
m
Xc
RZ’
X’
Y’
Y
Z
Sea la matriz de proyección [A | b]
Centro Optico. c = −A−1b.
Filas de P Planos que pasan por c y:
(p1)>. contiene la línea j = 0.
Luis Baumela. Vision por Computador.– p.12/19
Modelo proyectivo de cámara
7. Propiedades.
M(X’,Y’,Z’)
C
m
Xc
RZ’
X’
Y’
Y
Z
Sea la matriz de proyección [A | b]
Centro Optico. c = −A−1b.
Filas de P Planos que pasan por c y:
(p1)>. contiene la línea j = 0.
(p2)>. contiene la línea i = 0.
Luis Baumela. Vision por Computador.– p.12/19
Modelo proyectivo de cámara
7. Propiedades.
M(X’,Y’,Z’)
C
m
Xc
RZ’
X’
Y’
Y
Z
Sea la matriz de proyección [A | b]
Centro Optico. c = −A−1b.
Filas de P Planos que pasan por c y:
(p1)>. contiene la línea j = 0.
(p2)>. contiene la línea i = 0.
(p3)>. es paralelo al plano imagen.
Luis Baumela. Vision por Computador.– p.12/19
Modelo proyectivo de cámara
7. Propiedades.
M(X’,Y’,Z’)
C
m
Xc
RZ’
X’
Y’
Y
Z
(i0,j0)
Sea la matriz de proyección [A | b]
Centro Optico. c = −A−1b.
Filas de P Planos que pasan por c y:
(p1)>. contiene la línea j = 0.
(p2)>. contiene la línea i = 0.
(p3)>. es paralelo al plano imagen.
Punto principal. Aa3. Ya que el eje axial
es λa3 − A−1b, y su imagen
[A | b]
[
λa3 − A−1b
1
]
= Aa3.
Luis Baumela. Vision por Computador.– p.12/19
Modelo afín de cámara
Si la matriz de proyección PA es de la forma
PA =
a11 a12 a13 b1
a21 a22 a23 b2
0 0 0 1
=
αu s 0
0 αv 0
0 0 1
r1> t1
r2> t2
0 1
entonces decimos que PA representa una cámara afín.
Tiene 8 parámetros:
.
Luis Baumela. Vision por Computador.– p.13/19
Modelo afín de cámara
Si la matriz de proyección PA es de la forma
PA =
a11 a12 a13 b1
a21 a22 a23 b2
0 0 0 1
=
αu s 0
0 αv 0
0 0 1
r1> t1
r2> t2
0 1
entonces decimos que PA representa una cámara afín.
Tiene 8 parámetros:
3 parámetros intrínsecos . No está definido el punto principal.
K2×2 =
αu s
0 αv
Luis Baumela. Vision por Computador.– p.13/19
Modelo afín de cámara
Si la matriz de proyección PA es de la forma
PA =
a11 a12 a13 b1
a21 a22 a23 b2
0 0 0 1
=
αu s 0
0 αv 0
0 0 1
r1> t1
r2> t2
0 1
entonces decimos que PA representa una cámara afín.
Tiene 8 parámetros:
3 parámetros intrínsecos .
5 parámetros extrínsecos.
R2×3 =
[
r1>
r2>
]
, t =
[
t1
t2
]
.
Luis Baumela. Vision por Computador.– p.13/19
Modelo afín de cámara
Propiedades:
Es una buena aproximación a una cámara “real” cuando el
relieve de la escena es pequeño en comparación a la distancia
media de la escena a la cámara.
Luis Baumela. Vision por Computador.– p.14/19
Modelo afín de cámara
Propiedades:
Es una buena aproximación a una cámara “real” cuando el
relieve de la escena es pequeño en comparación a la distancia
media de la escena a la cámara.
La proyección del centro de masas de una nube de puntos es
el centro de masas de las proyecciones.
En efecto, la proyección en cartesianas puede expresarse
como m2×1 = A2×3M3×1 + b, entonces basta comprobar que
1
N
∑
i
(AMi + b) = A
(
1
N
∑
i
Mi
)
+ b
Luis Baumela. Vision por Computador.– p.14/19
Modelo afín de cámara
Propiedades:
Es una buena aproximación a una cámara “real” cuando el
relieve de la escena es pequeño en comparación a la distancia
media de la escena a la cámara.
La proyección del centro de masas de una nube de puntos es
el centro de masas de las proyecciones.
Conserva el paralelismo.
Luis Baumela. Vision por Computador.– p.14/19
Modelo afín de cámara
Propiedades:
Es una buena aproximación a una cámara “real” cuando el
relieve de la escena es pequeño en comparación a la distancia
media de la escena a la cámara.
La proyección del centro de masas de una nube de puntos es
el centro de masas de las proyecciones.
Conserva el paralelismo.
La dirección de proyección ortogonal es el vector d tal que
A2×3d = 0.
Luis Baumela. Vision por Computador.– p.14/19
Modelo afín de cámara
Propiedades:
Es una buena aproximación a una cámara “real” cuando el
relieve de la escena es pequeño en comparación a la distancia
media de la escena a la cámara.
La proyección del centro de masas de una nube de puntos es
el centro de masas de las proyecciones.
Conserva el paralelismo.
La dirección de proyección ortogonal es el vector d tal que
A2×3d = 0.
Caracterización. Una matriz P2×4 = [A2×3 | b2×1] representa
una cámara afín ⇐⇒ el rango de A es 2.
Luis Baumela. Vision por Computador.– p.14/19
Calibración
¿Qué es?Proceso en el que se calculanlos parámetros de P para unacámara concreta.
¿Cómo?Proyectando un conjunto depuntos de posición conocida
Ecuaciones. Desarrollando:
λj
λi
λ
=
p11 p12 p13 p14
p21 p22 p23 p24
p31 p32 p33 p34
X
Y
Z
1
Luis Baumela. Vision por Computador.– p.15/19
Calibración
¿Qué es?Proceso en el que se calculanlos parámetros de P para unacámara concreta.
¿Cómo?Proyectando un conjunto depuntos de posición conocida
Ecuaciones.
p11X + p12Y + p13Z − p31jX − p32jY − p33jZ − p34j + p14 = 0
p21X + p22Y + p23Z − p31iX − p32iY − p33iZ − p34i + p24 = 0
Luis Baumela. Vision por Computador.– p.15/19
Calibración
Algoritmo:1. Extrae los bordes de la imagen (p.ej. Canny).2. Ajusta líneas rectas a los bordes extraidos.3. Calcula las esquinas de los cuadrados intersecando
rectas.
4. Dados un conjunto de n ≥ 6 correspondencias{mi ↔ Mi}, resuelve el sistema de ecuaciones:
M>
i0 −jM>
i
0 M>
i−iM>
i
︸ ︷︷ ︸
A(M)2n×9
p1
p2
p3
︸ ︷︷ ︸
x(P)12×1
= 02n×1
Luis Baumela. Vision por Computador.– p.16/19
Calibración
Resolución del sistema de ecuaciones:
1. Solución lineal. Calcula P mediante una solución lineal de Ax = 0.a) Normalización. Normalizamos las coordenadas de los puntos 2D y 3D para
mejorar el condicionamiento numérico:
Sean {mi = T3×3mi, i = 1 . . . n} y {Mi = U4×4Mi, i = 1 . . . n} sendosconjuntos de datos centrados en el origen y a una distancia media del origende
√2 y
√3 respectivamente.
b) Resuelve el sistema de ecuaciones A(M)x(P) = 0, s.a. ||x|| = 1.
Sea svd(A)=UD V>, la solución x es la columna de V asociada al menorvalor singular.
2. Minimiza el error de reproyección. Sea d(·, ·) una distancia, calculamos
mınP
∑
i
d(xi, PMi),
mediante un algoritmo iterativo (ej. Levenberg-Marquardt).
3. Desnormalización. La matriz de proyección para los datos originales P
P = T−1
PU.
Luis Baumela. Vision por Computador.– p.17/19
Calibración
Estimación de K, R y t.
Conocida P = [A | b], mediante descomposición RQ deA (Hartley, 2004) se puede obtener K y R.
Conocida K, t = K−1
b.
Luis Baumela. Vision por Computador.– p.18/19
Bibliografía
1. D. Forsyth, J. Ponce. “Computer Vision. A modernapproach.” Prentice Hall. 2003.
2. R. Hartley, A. Zisserman. “Multiple view geometry incomputer vision.” Cambridge University Press, 2004.
Luis Baumela. Vision por Computador.– p.19/19