Вы находитесь на странице: 1из 14

4.

DESCRIPCIN SOFTWARE DEL SISTEMA


En este captulo se explica el desarrollo de la herramienta de calibracin hecha en
MATLAB para esta investigacin.
Figura 4.. !istribucin del so"t#are del sistema
$rocesamiento de
la imagen
Ad%uisicin &
ordenamiento de los puntos
de calibracin
M'todos
cl(sicos
M'todos de )nteligencia
*omputacional
Tsai
Fougerais+
Toscani
,hang
*haumette Algoritmos
gen'ticos
-edes
.euronales
*AL)B-A*)/.
4.1. Deteccin de puntos
Figura 4.0. !iagrama de Flu1o !eteccin de puntos
$rimero se reali2a una deteccin de bordes por medio del m'todo de *ann&3 utili2ando
la "uncin edge de MATLAB3 %ue detecta los lmites de los ob1etos en una imagen.
*omo se sabe la deteccin de bordes busca las discontinuidades de niveles de
iluminacin en la imagen3 por lo %ue a%u se nota la necesidad de tener un patrn de
calibracin %ue mantenga caractersticas ampliamente distinguibles entre los puntos de
calibracin & el resto de la imagen 45!3 como es el caso del patrn utili2ado en este
pro&ecto.
El m'todo de *ann& encuentra bordes buscando los m(ximos locales del gradiente de la
imagen ).
$osteriormente3 se extraen las caractersticas de los elementos %ue %uedaron3 es decir
de los crculos del patrn de calibracin. La caracterstica m(s importante es el (rea3
ba1o la cual se coloca un umbral %ue slo puedan pasar los crculos %ue pertene2can a
los puntos de calibracin. Finalmente3 la caracterstica %ue permite un 6ltimo "iltro es
la excentricidad de los crculos del patrn. !ebe colocarse un umbral %ue permita
distinguir crculos de cual%uier otra "igura %ue ha&a pasado por los "iltros anteriores.
Binari2acin de la
imagen
Aplicacin de un "iltro
de *ann& para detectar
bordes de crculos
!eteccin del (rea de
los elementos con borde.
Eliminacin de .a%uellos elementos
%ue tengan un (rea no correspondiente
a un crculo del patrn de calibracin
!eteccin de la excentricidad de los
bordes detectados
Eliminacin de .a%uellos elementos %ue
tengan una excentricidad no
correspondiente a un crculo del patrn de
calibracin
-eordenamiento autom(tico de los puntos
por "ilas
$or lo tanto3 las car(ctersticas %ue de"inen los circulos del patron de calibraci7n son
(rea & excentricidad. 8na ve2 identi"icados los crculos3 se atrapan los centroides
mediante otra parametri2acin de la "uncin imfeature de MATLAB.
Esos centroides son los utili2ados como puntos de calibracin. 9in embargo para
calibrar correctamente3 es necesario reordenar los centroides extrados para %ue ha&a
una correspondencia uno a uno con los puntos del patron de calibracin re"erenciados
desde la escena 5!.
Este reordenamiento se hace por hileras de tal manera %ue se elige la primera hilera
como la m(s cercana al origen ubicado en la parte superior i2%uierda & de ese primer
punto se agrupa en "ila los m(s cercanos en la posicin vertical3 para lo cual se
establece un umbral %ue debe ser menor a la distancia entre "ilas. 8na ve2 agrupada &
ordenada esa "ila seg6n la coordenada u :se organi2an con la coordenada u de menor a
ma∨3 se eliminan de la base de datos los puntos de esa hilera & se procede a hacer lo
mismo con la segunda hilera de arriba hacia aba1o. .uevamente se elige el punto m(s
cercano al origen & a partir de all se agrupan los puntos en una hilera 0. El
procedimiento sigue hasta la 6ltima "ila. En la calibracin monocular3 como la %ue se
hace en este pro&ecto ha& %ue tener en cuenta %ue al elegir un patrn de calibracin con
pro"undidad :para darle una tercera coordenada;3 los puntos %ue %uedan m(s cercanos al
centro de la imagen se ven como si estuvieran m(s aba1o3 por lo %ue el umbral debe ser
elegido adecuadamente. Lo ideal es tomar la "oto de tal manera %ue %uede alineado el
patrn de calibracin con la c(mara. Esto no siempre es posible conseguirlo debido a
las di"erentes pruebas %ue son sometidos los m'todos< sin embargo el algoritmo de
deteccin de puntos tiene un buen comportamiento ante situaciones anmalas como
tener el patrn de calibracin inclinado hacia un lado. *on un umbral adecuado es
posible detectar si el patrn de calibracin est( inclinado hacia la derecha o hacia la
i2%uierda.
Figura 4.5. -epresentacin de la deteccin de puntos en el patrn de calibracin
=ilera
seg6n v
=ilera
seg6n u u
v
$unto inicial
m(s cercano al
origen
4.2. Descripcin de los mtodos clsicos
4.2.1. Mtodo de Fougerais-Toscani
. *onstruccin de la ecuacin :0.>; %ue se puede separar en dos sumas a partir de las
ecuaciones :0.>5; & :0.>4; & escribir as?

0n x @
. !
@
A C
0n x 5
. !
5
B C
donde

0n x @
B

,
_

i i i i
i i i i
v Z Y X
u Z Y X
C C C C
C C C C
&
C
0n x 5
B

,
_

i i i i i i
i i i i i i
Z u Y v X v
Z u Y u X u
Ec. 0.>@
El vector !

se ha convertido en dos vectores?


!
@
B :"

m
4
"
0
m
04
m
54
;
t
Ec.
0.>D
!
#
B :"
#
;
t
Ec.
0.EC
) (1 Q
3
t
3 9
t t
3 3
t t
9 3
t t
3 9
t t
9
x x x ! x !x x !x ! x x x + + + +
Ec. 0.E4
0. En el proceso de derivacin se obtiene?
C +
3
t
9
t
!x x
Ec. 0.EF
C + + ) (
3 9
t
3
t
x x ! !x !
Ec. 0.E>
!espe1ando se llega a?
3
t
9
x x C B
t
; :


Ec. 0.EE
D!
#
B G!
#
Ec. 0.ED
D $ !
t
! - !
t
"
t
#
-1

t
! Ec. 0.E@
$ara obtener

5 5 5 5
x x Dx x Q
t t
Ec.
0.DC
5. $ara minimi2ar H es necesario hallar el valor propio mnimo de ! & al
correspondiente vector? !
#
3 seg6n la ecuacin 0.E@. Es decir se calculan los valores
propios de !3 se escoge el vector asociado a ese valor propio mnimo3 ese sera !
#
&
"inalmente se calcula !
%
. As se resuelven las incgnitas de la matri2 M %ue haban sido
enmascaradas en el vector !
11
. $ara hallar los par(metros se utili2an las ecuaciones 0.5>.
Figura 4.4. !iagrama de "lu1o m'todo de Fougerais+Toscani
*onstruccin de las
matrices B & *
!eterminacin del
vector x53 a partir de
los valores propios de
la matri2 !
/btencin de la matri2
! a partir de las
matrices B & *
!eterminacin del
vector x@
/btencin de los
par(metros a partir de
los vectores x5 & x@
4. 2.2. Mtodo de Tsai
. Ad%uisicin de par(metros internos
,
_

x d
sx
I I
&

,
_

y dI

tal como se de"ine en la


ecuacin 0.FE
0. $ara cada punto de calibracin i obtener :Jdi3Kdi; Ecs. 0.FF & 0.F>.
5. -esolver la ecuacin 4. para sus siete incognitas?

r sx y T

3 0

r sx y T

3 5

r sx y T

3 Tx sx y T

3 4

r sx y T

3
F

r sx y T

3 >

r sx y T

3
[ ] Xdi
r sx Ty
r sx Ty
r sx Ty
Tx sx Ty
r sx Ty
r sx Ty
r sx Ty
Zwi Xdi XdiYwi Xwi Xdi Ydi Zwi Ydi Ywi Ydi Xwi Ydi
1
1
1
1
1
1
1
1
1
]
1

> . .
F . .
4 . .
. .
5 . .
0 . .
. .
. . . . .

Ec. 4.
!onde (Xwi,Ywi,Zwi) son las coordenadas del punto i en el espacio 5!.
4. /btener r1, r2, r3, r4, r, r!, r", r# y r$ y Tx y Ty a partir de

r sx y T

3
0

r sx y T

3
5

r sx y T

3
Tx sx y T

3
4

r sx y T

3
F

r sx y T

3
>

r sx y T

?
4.. /btener la norma de T& a partir de

r sx y T

3
0

r sx y T

3
5

r sx y T

3
Tx sx y T

3
4

r sx y T

3
F

r sx y T

3
>

r sx y T

. $ara ello se de"ine


a
i
con i B LE de tal manera %ue?
a
1
%

r sx y T

a
2
%
0

r sx y T

a
3
%
5

r sx y T

,
a
4
%
Tx sx y T

,
a

%
4

r sx y T

,
a
!
%
F

r sx y T

,
a
"
B
>

r sx y T

3
Tal como se obtuvieron al resolver la ecuacin 4..
$or lo tanto?
0

0
E
0
>
0
F
; :

+ + a a a Ty
Ec. 4.5
4.0. !eterminar el signo de Ty
4.0.. 9eleccionar un punto i del ob1eto cu&as coordenadas de la imagen (Xi,Yi)
est'n le1os del centro ptico3 recordando %ue las coordenadas de dicho punto en el
sistema del mundo son (Xwi,Ywi,Zwi)&
4.0.0. Elegir el signo de Ty como positivo.
4.0.5. /btener las siguientes expresiones %ue son parte de la matri2 de rotacin?
( )
y y
T r T r

Ecs. 4.4
( )
y y
T r T r 0 0

( )
y y
T r T r 4 4

( )
y y
T r T r F F

( )
y x y x
T T T T

x
T Ywi r Xwi r X' + + . 0 .
y
T Ywi r Xwi r Y' + + . F . 4
4.0.4. 9i (X' & Xi) tienen el mismo signo & tambi'n (Y' e Yi) tienen el mismo signo3
entonces el signo de T& es positivo3 de lo contrario es negativo.
4.5. /btener la matri2 de rotacin R
-esolver las siguientes ecuaciones ?
sx
Ty a
r

Ecs. 4.F
sx
Ty a
r
0
0
sx
Ty a
r
5
5
Ty a r
F
4
Ty a r
>
F
Ty a r
E
>
Ty a Tx
4

*omo &a se tienen las dos primeras "ilas de la matri2 de rotacin3 la tercera "ila es el
producto cru2 de las mismas3 para cumplir con el criterio de ortonormalidad.
[ ] [ ] [ ] > F 4 5 0 @ D E r r r r r r r r r
Ec. 4.>
4.4. /btener el valor aproximado de T2
$ara cada punto de calibracin3 establecer la siguiente ecuacin lineal?
[ ] Yi y d wi
T(
f
y d yi . I . I
1
]
1

Ec. 4.E
!onde
Ty Ywi r Xwi r yi + + F . 4
& Ywi r Xwi r wi D . F +
4.F. -eali2ar una optimi2acin iterativa para hallar todos los par(metros me1orados &
adem(s el par(metro de distorsin M
Figura 4.F. !iagrama de "lu1o M'todo de Tsai
Ad%uisicin de par(metros
internos
&
$ara cada punto de
calibracin i obtener
Jdi Kdi
-esolver ecuacin 4.
/btener norma de T&
!eterminar signo de T&
/btener la matri2 de
rotacin -
-esolver ecuacin 4.E para
obtener T2
-eali2ar optimi2acin
iterativa
E&'
Mostrar par(metros e
imagen
no
si
4.2.3. Mtodo de !$aumette
9e debe recordar %ue primero se asume un coe"iciente de distorsin nulo3 para resolver
el sistema lineal. El modelo de la c(mara puede ser escrito en la "orma de una matri2
homog'nea $ de tal manera %ue?
w
X
X)
3
w
Y
Y)
3
w
Z
f
3 Ecs.4.D
donde

,
_

,
_

,
_

,
_

(
y
x
f
f
Y'
*y
f
X'
*x
(
y
x
+
w
Z
Y
X

C C
C C

C
C

Ec. 4.@
*on *x &
*y
como los coe"icientes de proporcionalidad con respecto al tamaNo de los
pixeles en x & en y respectivamente.
X' 3 Y' es el centro ptico
w es un "actor de escala para hacer homog'nea la ecuacin.
Las coordenadas en la imagen de un punto p en la escena 45! son m(x,y,() & desde el
punto de re"erencia de la c(mara son ,(X,Y)& $or tanto las coordenadas seg6n el marco
de re"erencia de la imagen son ,ima-e.(X),Y))
*x
X
X' X) +
&
*y
Y
Y' Y) +
Ec. 4.C
*omo
(
x
f X
&
(
y
f Y
debido a la seme1an2a de tri(ngulos
Entonces?
X'
(
x
/x X) +
&
Y'
(
y
/y Y) +
Ec. 4.
!onde
*x
f
/x &
*y
f
/y
. !e esta manera *haumette evita calcular
explcitamente la distancia "ocal. Los par(metros a identi"icar son X',Y', /x y /y en el
modelo sin distorsin.
El algoritmo %ue se implement para poner en pr(ctica el m'todo de *haumette es el
siguiente?
. *onstruir la ecuacin matricial correspondiente a 0.CC?

,
_

,
_



C
C
C C C C
C C C C
C C C C C C
C C C C C C
I
Y) ( y x ( Y) y Y) x Y)
X) ( y x ( X) y X) x X)

Ec. 4.0
!onde % %0
1
con 1B hasta 0. Los elementos de % traen consigo los par(metros de
calibracin?
0
1
% a
31
0
2
%a
32
0
3
%a
33
0
4
%a
31
X
'
2 a
11
/
x
0

% a
32
X
'
2 a
12
/
x
0
!
%a
33
X
'
2 a
13
/
x
0
"
%a
31
Y
'
2 a
21
/
x
0
#
% a
33
Y
'
2 a
22
/
y
0
$
% a
33
Y
'
2 a
23
/
y
0
13
% X
'
Z
3
2/
x
X
3
0
11
%Y
'
& Z
3
2 /
y
Y
3
0
12
%Z
3
Ecs. 4.5
0. !ividir el sistema en dos asumiendo %ue?

0
55
0
50
0
5
+ + a a a
3 de tal manera %ue
&.'
1
( . '
2
B C Ec. 4.4
*on '
2
) 4(
T
)
-1

T
&.'
1
Ec. 4.F
*'
1
) '
1
Ec. 4.>
donde
* ) &
T
& 4 &
T
(
T
)
-1

T
& Ec. 4.E
5. =allar la matri2 * :sim'trica & positiva;3 encontrar sus valores propios3 elegir el
menor & escoger el vector propio asociado a ese valor propio mnimo. Ese ser( el vector
'
1
%ue sirve para hallar el vector '
2
. El vector de incgnitas % es la composicin de
:'
1
'
2
;.
/btener de % los coe"icientes de la matri2 de rotacin & el vector de translacin
a
31
% 0
1
a
32
% 0
2
a
33
% 0
3
a
11
% (0
4
4 a
31
X
'
) 5 /
x
a
12
% (0

4 a
32
&X
'
)5/
x
a
13
% (0
!
4 a
33
&X
'
)5/
x
a
21
% (0
"
4 a
31
Y
'
)5/
y
a
22
% (0
#
4 a
32
&Y
'
)5/
y
a
23
% (0
$
4 a
33
&Y
'
)5/
y
X
3
% (0
13
4 X
'
0
12
)5/
x
Y
3
% (0
11
4 Y
'
&0
12
)5/
y
Z
3
% 0
12
Ec. 4.D
F.9ometer el sistema total inclu&endo el par(metro de distorsin a una minimi2acin
iterativa utili2ando una t'cnica como Levenberg+Mar%uardt para minimi2ar el error
dado por?
C
2
%
0 0

; : ; O:
mi di mi
6
i
di
Y Y X X +

P Ec. 4.@
Figura 4.>. !iagrama de "lu1o M'todo de *haumette

*onstruccin del sistema
matricial dado por Ec.
0.CC
Aplicacin del criterio
9eparacin del sistema en
dos?
&.'
1
( . '
2
B C
/btencin de la matri2 E?
* ) &
T
& 4 &
T
(
T
)
-1

T
&

Encontrar los valores propios de
la matri2 E3 escoger el menor &
su valor propio asociado
!espe1ar los valores de la matri2 de
rotacin & el vector de translacin a
partir de las ecuaciones 0.CE
9ometer el sistema total inclu&endo un
par(metro de distorsin a una
minimi2acin iterativa con Levenberg+
Mar%uardt3 ba1o el criterio de Ec. 0.CD
Q*
0
R S T
!espliegue de
par(metros "inales &
correccin de imagen
4.2.4. Mtodo de +$ang
. *omo se haba explicado en la seccin 0.43 el m'todo de ,hang divide el proceso de
la extraccin de par(metros en cuatro etapas3 destac(ndose la tercera etapa en %ue
consigue una buena aproximacin a dos constantes de distorsin por medio de una
trans"ormacin lineal %ue hace el algoritmo mu& r(pido.
La primera etapa consiste en aplicar el m'todo de Fougerais+Toscani con la restriccin
UU !
5
UU B 3 tal como se explica en la seccin 0.5.
,hang de"ine?
1
1
1
]
1



55 50 5
05 00 0
5 0

B B B
B B B
B B B
7 7 B
T
Ec. 4.0C
!onde A es la matri2 de parVmetros intrnsecos.
0. !e"inir el vector columna 8
i
?
[ ]
5 0 i i i i
8 8 8 8
Ec. 4.0
!e manera %ue?
9 v B8 8
T
i1 1
T
i

Ec. 4.00
5. -esolver la ecuacin?

( )
C
00
0

1
]
1

9
v v
v
T
T
Ec. 4.05
Es decir?
( ) * Ec. 4.04
!onde * es una matri2 de 0nW>3 siendo . el n6mero de puntos de calibracin.
$or supuesto3 la solucin a esta ecuacin es conocida como el eigenvector de * *
T
asociado com el m(s pe%ueNo de los valores propios.
5. La etapa siguiente utili2a los resultados de la primera para aplicar un m'todo de
minimi2acin no lineal basado en el criterio?

.
i
m
1
1 i
, t

0
; 3 3 3 :
i i,
- & m m

Ec.4.0F
!onde
; 3 3 3 :
1 i
, t
i
- & m

es la pro&eccin del punto M


1
en la imagen i. Es decir para
todos los puntos de calibracin de la imagen se prueban di"erentes par(metros de tal
manera %ue se halle el con1unto de ellos %ue de cmo resultado el menor error entre los
puntos estimados por el modelo & los puntos reales de la imagen.
4. El modelo lineal en ,hang est( basado en el mismo modelo pin+hole de los m'todos
anteriormente explicados. .o obstante3 para modelar la distorsin radial3 ,hang utili2a
una trans"ormacin lineal.

u
B u 2 (u4u
3
)& :;
1
(x
2
2 y
2
) 2 ;
2
(x
2
2 y
2
)
2
< Ec. 4.0>

v
B v 2 (v 4 v
3
)& :;
1
(x
2
2 y
2
) 2 ;
2
(x
2
2 y
2
)
2
< Ec. 4.0E
En este caso3 con los par(metros obtenidos de las dos etapas anteriores :la lineal & la no
lineal; se estiman unas coordenadas imagen (u,v) %ue se suponen ideales3 es decir sin
distorsin & a ellas se les suma la distorsin dada por dos constantes ;3 para obtener las
coordenadas imagen reales
; X 3 X : v u
.
Este modelo puede ser descrito de manera matricial si tenemos en cuenta todos los
puntos de calibracin3 as?
1
]
1

1
]
1

1
]
1

+ +
+ +
v v
u u
;
;
y x v v y x v v
y x u u y x u u
X
X
; ;: : ; ;: :
; ;: : ; ;: :
0

0 0 0
C
0 0
C
0 0 0
C
0 0
C
Ec. 4.0D
!ados m puntos de calibracin se tienen 2&m ecuaciones de tal manera %ue?
D..)d Ec.4.0@
*on ! como una matri2 de 0m "ilas por 0 columnas & d como un vector vertical de 0m
"ilas. La solucin a este sistema se produce mediante la aplicacin de la matri2
pseudoinversa?
. ) "D
T
D#
-1
.D
T
.d Ec. 4.5C
8na ve2 estimados los par(metros de distorsin M

& M
0
3 se entra a la cuarta etapa en
donde se hace una optimi2acin de todo el con1unto de par(metros3 tomando como
estimaciones iniciales las encontradas en las tres etapas anteriores. El criterio de
minimi2acin sera el siguiente?

.
i
m
1
1 i
, t ; ;

0
0
; 3 3 3 3 3 : X
i i,
- & m m Ec.
4.5
!onde mX
es el punto correspondiente en la imagen al punto ,1 de acuerdo a las
ecuaciones :0.>; & :0.>0;.
Figura 4.E. !iagrama de "lu1o m'todo ,hang
!e"inir la matri2 B
!e"inir el vector columna
$
-esolver el sistema
*.) $ (
=acer una primera
optimi2acin con los
par(metros del modelo
lineal
Evaluar el criterio de error?

QError R S

T
Lineali2ar el modelo de distorsin
para dos par(metros seg6n las ecs.
0.0 & 0.5
-esolver el sistema matricial
representado en 0.4 & 0.F
. ) "D
T
D#
-1
.D
T
.d
=acer una segunda optimi2acin
inclu&endo los par(metros del
modelo de distorsin
Evaluar el criterio de error?
QError0 R S
0
T
!espliegue de par(metros
"inales & correccin de
imagen

Вам также может понравиться