Escolar Documentos
Profissional Documentos
Cultura Documentos
CALIBRACIN EXPLCITA DE
CMARAS DIGITALES CON
DISTORSIN MEDIANTE REDES
NEURONALES ARTIFICIALES
Eduardo Caicedo Ph. D.
Humberto Loaiza Ph. D.
Jess Alfonso Lpez M. Sc.
Ing. Julio Csar Milln Barco
Palabras claves: calibracin de cmaras, visin
artificial, parametrizacin de modelos no
lineales,
Redes
Neuronales
Artificiales,
correccin de distorsin radial.
Resumen: Este artculo presenta los resultados
de una parte de una investigacin que busca
1. INTRODUCCIN
El procedimiento de calibracin explcita de
cmaras digitales es un paso indispensable en las
aplicaciones de visin artificial que requieren
medidas de distancia.
A lo largo de las
investigaciones en el campo se han llegado a
presentar distintos mtodos de calibracin basados
generalmente en el modelo pinhole de las cmaras
digitales. [HORAUD 95]
Las distintas alternativas van desde las soluciones
en que se reduce el problema a un sistema lineal y
se resuelve con una aproximacin llamada de
forma cerrada, hasta aquellas que utilizan
algoritmos iterativos no lineales, especialmente si
el modelo pinhole [TSAI 87] es ampliado para
incluir un parmetro de distorsin que permita
corregir esta aberracin ptica propia de cada
lente. [CHAUMETTE 89]
En este artculo se presentan los resultados
tericos y experimentales de una investigacin
que cuyo objetivo es comparar estas tcnicas ya
conocidas con soluciones bio-inspiradas tales
como Algoritmos genticos o Redes Neuronales
Artificiales. [JI 01] [DO 00] [ZHOU 92] [AHMED 99(1)]
En
Eeste documento se depositan las
investigaciones con respecto a las soluciones que
pueden ofrecer las RNA's, al problema de la
calibracin de cmaras.
2. MARCO CONCEPTUAL
EIEE
GRUPO PSI
Agosto 2004
2.1. MODELO
CMARA
GEOMTRICO
DE
UNA
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
EIEE
GRUPO PSI
Agosto 2004
z
y
y
X
Marco de referencia de
la cmara
Distancia focal
O
(x*, y*, f)
Coordenadas segn el
marco de referencia
del mundo en R3
bu
v
F
Centro de la cmara o
foco
Coordenadas de la
proyeccin del punto B en
el plano imagen (punto b)
con la cmara como marco
de referencia
x
y
z
x*
y*
z*
x
y
z
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
EIEE
GRUPO PSI
Agosto 2004
H(0,0,z')
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
EIEE
GRUPO PSI
Agosto 2004
2.2.
2.3.
x'
y'
z'
r11 r12
= r21 r22
r
31 r32
r13 x
tx
r23 y + t y
t
r33 z
z
(1)
r11
r21
D =
r
31
0
r12
r13
r22
r32
0
r23
r33
0
tx
t y R t
,
=
t z 0 1
1
(2)
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
EIEE
(punto B proyectado en
el eje Y de las
coordenadas de la
cmara)
GRUPO PSI
Agosto 2004
con
< 0 , (4)
(5)
donde
u = - ku f
y
v =
kv f
(6)
H
O
[HORAUD 95]
(3)
x'
su
y'
sv A.
z'
s
(7)
A=
0
0
0
v
0
u0
v0
1
0
0
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
(8)
EIEE
GRUPO PSI
Agosto 2004
r11 r12
r21 r22
=
r
r
31 32
0
0
x'
y'
z'
1
tx
r13
r23 t y
r33 t z
0 1
y
z
1
(9)
sv
s
u
0
=
0
v
0
u0
v0
1
0
0
21 r22 r23 t y y (1
r
r
r
t
31 32 33 z z
0
0
0
1
0)
=A.D. y
z
s
su
sv
(11)
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
(12)
m11
su
sv = m21
s
m
31
m12
m13
m22
m32
m23
m33
m14
y
m24 .
z
m34
1
(13)
EIEE
GRUPO PSI
Agosto 2004
(14)
m 21 .x m 22 y m 23 z m 24
m31 x m32 y m33 z m34
(15)
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
EIEE
GRUPO PSI
Agosto 2004
(16)
([AHMED 99(1)] )
i 1
N
m 21 .x i m 22 y i m 23 z i m 24
v i
m
x
m
y
m
z
m
31 i
32 i
33 i
34
El
aspecto
central
es la alinealidad.
MoummenAhmed [AHMED 01] , introduce una
variable nueva a entrenar para rodear este
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
, (17)
EIEE
GRUPO PSI
Si definimos
(18)
r11
r12
r13
tx
r22
r23
r33
i 2 vi
o
i3
(19)
u0
Salida=y'
ty
0
0
Salida=z'
tz
v0
r31
1
Matriz de pesos D
Parmetros
extrnsecos
oi1
ui
oi 3
i 1
Salida=x'
r21
r32
Agosto 2004
1
0
0
Salida=1
Matriz de pesos A
Parmetros
intrnsecos
Capa de neuronas de
salida, con funcin de
transferencia lineal y
pendiente variable
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
r11
r12
r13
tx
r22
r23
10
Agosto 2004
u0
Salida=y'
ty
Salida=z'
tz
v0
r31
1
Matriz de pesos D
Parmetros
extrnsecos
GRUPO PSI
Salida=x'
r21
r32
r33
EIEE
1
0
0
Salida=1
0
0
Matriz de pesos A
Parmetros
intrnsecos
Capa de neuronas de
salida, con funcin de
transferencia lineal y
pendiente variable
Si definimos
(18)
oi1
ui
oi 3
i 1
i 2 vi
oi 3
(19)
1 / S1
0
0
0
1 / S1
1 / S1
0 su
0 sv
1 s
AD
y
z
1
(20)
Reemplazando:
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
S1
S1 = 0
0
0
S1
0
EIEE
(21)
-1
( S1 ) sv
s
Siguiendo
hacemos:
la
x
y
( S1 )-1 AD
notacin
de
(23)
x
su
y
-1
( S 1 ) . sv W D z
s
(24)
1/ S 2
( S2 ) =
( S 1 )-1 .
x
su
y
sv W Vini ( S2 )
s
z
1/ S 2
1/ S 2
ui S1
vi S1 i W Vini
(28)
i =1/oi3
xi
ui oi 3
yi
-1
( S 1 ) . vi oi3 W Vini ( S2 ) z
o
i
i3
1
MoummenAhora
W = ( S1 )-1 A
11
Agosto 2004
(22)
GRUPO PSI
xi S 2
yi S 2
z S2
i
(29)
(30)
(25)
ui ( S1 FESC )
1 FESC
su
( S1 ). sv W D
s
x
y
( S2 )-1 S2 z
1
(26)
Si hacemos:
Vini = D( S2 )-1
(27)
xi S 2
yi S 2
z S2
i
(31)
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
EIEE
GRUPO PSI
12
Agosto 2004
V jl Zil
Yj
(35)
l 1
ioi1 ui 2 i oi 2 vi 2 ioi3 1 2
i 1
(32)
Ya tenemos como relacionar la nueva variable i con
el error final de las neuronas en la capa de salida.
Siguiendo la notacin de Moummen, lLlamamos
a cada patrn deseado
ui ( S1 FESC )
di = vi ( S1 FESC )
1 FESC
di
(33)
d i iW3 x 4V4 x 4 Zi
(34)
j 1
(36)
Oi=ioi
(37)
Oi = iWkjYj
j 1
(38)
Ei
WkjYj
oi =
1
( dik Oik ) 2
2 k 1
(39)
Vij 1 i
(40)
(d ik Oik )Wkj Z il
k 1
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
(41)
(d ik Oik )
k 1
i 2
GRUPO PSI
W kj Y j
j 1
FESC
S2
(42)
13
Agosto 2004
EIEE
(46)
(47)
donde
Eort1 = (V11V21 + V12V22 + V13V23)2 +
(V11V31 + V12V32 + V13V33)2 +
(V21V31 + V22V32 + V23V33)2,
(48)
(45)
l 1
(49)
por la segunda condicin.
De esta manera el error total ser igual a:
1
2
Etotal =
(44)
Vl12 Vl 2 2 Vl 3 2 a 2
3
(d ik Oik ) 2 + E
ort
(50)
k 1
Vij 1 i
(d ik Oik )Wkj Z il
k 1
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
EIEE
GRUPO PSI
14
Agosto 2004
donde
Cmara 1:
para : l 1
para : l 2
para : l 3
(52)
Las ecuaciones (51) y (52) permiten entrenar
especficamente los elementos de la matriz V que
deben cumplir con las condiciones de
ortonormalidad, indispensable para darle una
solucin exacta al problema de la calibracin de
cmaras. [AHMED 99(2)] Como puede apreciarse por
la complejidad del clculo matemtico que soporte
la RNA, por aqu se inicia por un camino ms difcil
que la solucin por el metodo clsico. Debe tenerse
en cuenta para el anlisis de resultados, que la
minimizacin del entrenamiento de la RNA es una
minimizacin multiobjetivo, pues deben cumplirse
las condiciones del error cuadrtico medio y adems
las de las condiciones de la ortonormalidad, porque
si se hiciera la minimizacin cumpliendo slo el
objetivo de reducir el error cuadrtico medio, lo ms
seguro es que se llegara a una solucin en donde la
submatriz 3x3 de V, no correspondera realmente a
una matriz de rotacin y no habra, por tanto,
calibracin explcita.
45.
RESULTADOS
EXPERIMENTALES
MODELO CLSICO CON RNA
Se implement el algoritmo explicado en las
secciones anteriores.
Se aplic el programa
programa en MATLAB a la calibracin de tres
cmaras distintas, una de ellas escogida con un
parmetro de distorsin relativamente grande y cuya
definicin e influencia se explicar en la segunda
parte de este informe.
Previamente se obtuvo un estimativo de los
parmetros a travs del mtodo de Fougerais-
Desperada
Dfinal
0.7427
0.031982
0.67001
0
0.67007
0.037852
0.74049
0
0.67585
0.73704 0.00247 24.623
0.73602
0.67509
0.002855
0.99932
0.05242
0
0.050335 1526.3
0
176
799.89
144
Aespe
783.47
Afinal
0
0
846
0
176
144
1
0
0
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
25.0
211.
144
1
EIEE
0.1764
Error de reconstruccin para la cmara 1 con RNA:
0.1
Error de reconstruccin para la cmara 1 con F-T
0.3128
7895
Error de reconstruccin para la cmara 1 con F-T
0.3128
Cmara 2
Cmara 2
GRUPO PSI
15
Agosto 2004
300
Afinal
0
160
290
120
Cmara 3.
0.24249
0.92787
208.94
0.2854
Desperada
0.66773 0.7443 0.012342 796.95
0.83
0.051812 39.293
0.52618
0
0
0
1
0.13641
0.92031
7.302
0.3063
Despe
1827.9
0.62506 0.37325
68.8 0.78092 0.47551 0.40503
0.68555
0
0
0
1
0
.
26972
0
.
25816
0
.
92769
190
.
78
Dfinal
0
0
0
1
0.82
0.059 34.4
0.56
0.04660.6311
Dfinal
0.764 0.550 0.332 1632.2
0
0
0
1
0
160 0
265.61
Aespe
0
259.03 120 0
Error relativo promedio en parametros extrinsecos:
0.059351
0
0
1
0
0.9048
0.68811
0.6236
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
811.18
Aespe
0
320
812.31
240
EIEE
GRUPO PSI
Agosto 2004
16
700
Afinal
0
0
709.25
0
320
240
1
0
0
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
EIEE
GRUPO PSI
17
Agosto 2004
x
u
(uidealxd,videal yd)
Md
u
6. EL MODELO CON DISTORSIN
El modelo pinhole de la cmara es un modelo ideal
que no tiene en cuenta varias aberraciones pticas
propias de los lentes. Entre ellas la ms destacada es
la llamada distorsin radial en la que de todas
formas hay una relacin punto a punto entre la
escena y la imagen, pero en el que el
correspondiente de cada punto se desva de su
proyeccin en una magnitud proporcional a su
distancia al eje ptico. Se puede observar la figura 3
para analizar la distorsin radial mediante un crculo
que describe la situacin. En este caso se sigue que
(u, v) son las coordenadas de un punto determinado
en el marco de referencia del plano de la imagen tal
como se ven en la pantalla del computador, mientras
que (uideal, videal) son las coordenadas del mismo
punto pero aquellas que se obtienen al asumir el
modelo pinhole ideal sin distorsin. [CHAUMETTE 89].
Entre ms alejado est el punto del centro de la
imagen mayor ser su alejamiento del punto ideal, es
decir el desplazamiento que ocasiona la distorsin
(que es visto como un error), es ms grande, entre
uideal
Mp
u0
v0
videal v
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
(27)
(28)
u = Kd . r2 . (uideal - u),
v = Kd. r2. (videal - v),
EIEE
GRUPO PSI
(29)
(30)
x'
r2 = u .
z'
y'
v .
z'
x'
z'
+ u0,
(32)
+ v0 ,
(33)
Kd. u..
x'
z'
=
+ Kd..
v .
y'
z'
v. .
y'
z'
u0
. x '
u z'
x' 2
r
z'
x' 4
r
z'
(36)
y' 2
r
z'
(37)
Kd2. r4 ) (38)
Kd2. r4 ) (39)
u ideal u 0 r 2
v ideal v 0 r
Kd1. u..
y'
+ v0 + Kd.. v.
z'
x' 4
+ Kd2. u..
r
z'
u .
Kd2. u..
(31)
Tenemos que:
u
+ u0 +
v = v.
x'
z'
u = u.
18
Agosto 2004
u ideal u 0 r 4
v ideal v 0 r 4
Kd 1 u u ideal
Kd 2 v v ideal
(40)
y'
v .
z'
(34)
Dk d
(41)
donde:
+
. x '
u z'
v0
2
y'
v .
z'
uideal u0 r 2
(35)
2
videal v0 r
uideal u0 r 4
videal v0 r 4
(42)
k Kd1
d u u ideal
Kd 2 T
v videal
(43)
T
(44)
7. ASUMIENDO EL PROBLEMA DE LA
DISTORSIN RADIAL MEDIANTE RNAs
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
EIEE
GRUPO PSI
19
Agosto 2004
(47)
[MARTN 02]
7.1. DISEO
Para la neurona 1:
PAT _ ENT1
INP1
INP3
Para la neurona 2:
PAT _ ENT 2
INP 2
INP 4
, INP2 = uideal u 0 r 4 ,
INP3= videal v0 r 2 ,
PAT _ ENT1
INP4 = videal v0 r 4 ,
OUT1= u u ideal
y OUT2= v videal
(45)
Kd1
PAT _ SAL
Kd 2
PAT _ ENT 2
PAT _ ENT 2
Kd1
(49)
PAT _ SAL
Kd2
(46)
PAT _ ENT1
(48)
7.2. IMPLEMENTACIN
Se implement un algoritmo para hacer converger la
red que resolviera este sistema de ecuaciones.
Tngase en cuenta que el nmero de ecuaciones es
igual a 2 veces el nmero de puntos tomados del
patrn de calibracin, aproximadamente 520 puntos,
para encontrar tan slo 2 incgnitas.
.
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
EIEE
GRUPO PSI
Agosto 2004
20
(50)
EIEE
GRUPO PSI
Agosto 2004
21
8. CONCLUSIONES
En esta investigacin se ha logrado un interesante
aporte al campo de la parametrizacin de modelos
mediante Redes Neuronales Artificiales, al tiempo
que se genera un nuevo mtodo para la calibracin
explcita del modelo clsico y del modelo con
distorsin de las cmaras digitales.
Basndonos en un trabajo previo hemos formalizado
el marco terico de una forma ms accesible y ms
interrelacionado al campo que enmarca a la
aplicacin: la visin artificial. Adems se han
introducido tcnicas originales que pueden llegar a
mejorar el algoritmo en que se basa nuestra
implementacin.
De esta manera, se ha llegado a un codigo original
en MATLAB, basado en RNA que calibra el modelo
clsico de las cmaras digitales, arrojando resultados
que pueden ser comparados con otros mtodos
tambin implementados en este programa tan
ampliamente usado en ingeniera.
Adicional a sto, se ha introducido un algoritmo
nuevo para detectar dos parmetros de distorsin con
Redes Neuronales Artificiales basados en la
linealizacin matemtica que hace Zhang, [ZHANG
99]. En este cdigo implementado en MATLAB, ha
podido demostrarse la eficacia de la red ADALINE
para parametrizar modelos lineales.
Sin embargo, tambin es importante sealar las
limitaciones. La parametrizacin del modelo clsico
con redes neuronales sufre de varios inconvenientes.
El primero est unido a la dificultad para
implementar el algoritmo, ya que hay que derivar la
funcin de error por cada capa de la red y
adicionarle un parmetro, que no puede relacionarse
directamente con un peso de interconectividad entre
neuronas.
De all, proviene el segundo
inconveniente. Computacionalmente, hay que
detectar ms pesos que el nmero de neuronas de la
red en una proporcin inusual. Adicionalmente hay
que arrastrar a la red hacia dos objetivos a la vez:
cumplir que las salidas de la red sean iguales a los
patrones de salida y adems hacer que los pesos
cumplan ciertas condiciones, entre ellas la ms
importante la condicin de ortonormalidad de un
subconjunto de los pesos. Si comparamos con
Fougerais-Toscani, vemos que en este mtodo la
condicin de ortonormalidad de la matriz de rotacin
se cumple a priori e incluso facilita encontrar los
parmetros, ya que divide el vector de incgnitas en
dos.
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
EIEE
GRUPO PSI
Agosto 2004
22
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
EIEE
89]
Chaumette F.;
Rives P.
Realisation
et
calibration
dun
systeme
experimental de vision compose dune camera
mobile embarquee sur un robot-manipulateur
Rapports de Recherche. No. 994. Programme 6.
INRIA. 1989
[CHAUMETTE
GRUPO PSI
[HORN 86]
[LUO 01]
[DO 00]
23
[HORAUD 95]
[CICHOCKI
[CHOI 94]
Agosto 2004
M. Mitchell, An Introduction to
Genetic Algorithms. Cambridge, MA: MIT Press,
1996.
[MITCHELL 96]
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
EIEE
GRUPO PSI
Agosto 2004
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
24
EIEE
GRUPO PSI
Agosto 2004
CALIBRACIN EXPLCITA DE CMARAS DIGITALES CON DISTORSIN MEDIANTE REDES NEURONALES ARTIFICIALES
25