Utp pdi_2015-2_ea8 transformaciones geometricas

33
Procesamiento de Imágenes y Visión Artificial (WEE2) Sesión: 8 MSc. Ing. José C. Benítez P. Transformaciones geométricas

Transcript of Utp pdi_2015-2_ea8 transformaciones geometricas

Page 1: Utp pdi_2015-2_ea8 transformaciones geometricas

Procesamiento de Imágenes

y Visión Artificial

(WEE2)

Sesión: 8

MSc. Ing. José C. Benítez P.

Transformaciones geométricas

Page 2: Utp pdi_2015-2_ea8 transformaciones geometricas

Logros de aprendizaje

1. Conocer las transformaciones geométricas aplicadas a los

diferentes tipos de imágenes digitales.

2. Transformar geométricamente las imágenes digitales.

3. Implementar funciones para las transformaciones

geométricas de las imágenes digitales.

4. Aplicar transformaciones rígidas sobre una imagen digital.

5. Transformar por afinidad una imagen digital.

6. Conocer las coordenadas homogéneas.

7. Combinar transformaciones geométricas.

2

Page 3: Utp pdi_2015-2_ea8 transformaciones geometricas

3

ContenidoTransformaciones geométricas:

• Introducción

• Transformaciones Rígidas

� Traslación

� Rotación

� Reflexión

• Transformaciones Afines

� Escalado

� Cizalladura

� Similitud

• Transformaciones Proyectivas

� Coordenadas Homogéneas

• Combinación de Transformaciones

• Transformaciones geométricas con MATLAB

Page 4: Utp pdi_2015-2_ea8 transformaciones geometricas

Introducción a las TG

Esquema general del análisis de imágenes

Page 5: Utp pdi_2015-2_ea8 transformaciones geometricas

Introducción a las TG

• Utilizando el histograma, se obtiene una transformación que

asigna para cada nivel de gris de la imagen de entrada un

nuevo nivel de gris. Este tipo de transformaciones se llaman

puntuales pues sólo hace falta conocer el nivel de gris en

cada punto de la imagen de entrada para obtener el valor en

el mismo punto de la imagen de salida.

• Ahora nos ocuparemos de las TG. Determinaremos qué

posición tomará en la imagen destino cada píxel de la imagen

original cuando sobre ella aplicamos una transformación

geométrica tales como traslación, rotación, escalado... Es

decir, el valor de un píxel en la imagen de salida se asignará

en base a las coordenadas (x,y) de ese píxel.

Page 6: Utp pdi_2015-2_ea8 transformaciones geometricas

Introducción a las TG

• Las TG que veremos no son distintas de las

transformaciones básicas de la geometría. Sin

embargo, debido a la naturaleza discreta de las

imágenes, aparecen ciertos problemas que es preciso

analizar y resolver.

• Este tipo de transformaciones resultan útiles para

facilitar el reconocimiento de formas cuando no

existen unas condiciones preestablecidas de escala o

posición en las piezas a analizar.

Page 7: Utp pdi_2015-2_ea8 transformaciones geometricas

Introducción a las TG

• Las transformaciones geométricas también son utilizadas para

eliminar distorsiones debidas a óptica y a la perspectiva o

bien para reajustar imágenes de una misma escena tomadas

bajo distintas condiciones y poder de esta forma establecer

correspondencias entre unas y otras.

Page 8: Utp pdi_2015-2_ea8 transformaciones geometricas

Introducción a las TG

Podemos clasificar las TG en:

• Transformaciones rígidas o euclídeas, que

preservan las distancias, ángulos y áreas.

• Transformaciones afines, que preservan la

colinealidad de los puntos, paralelismos y las

razones entre los puntos pertenecientes a una

línea.

• Transformaciones proyectivas, que preservan

solo la colinealidad de los puntos.

Page 9: Utp pdi_2015-2_ea8 transformaciones geometricas

Introducción a las TG

En transformaciones rígidas y afines las coordenadas de la imagen de salida se obtienen a partir de la ecuación lineal en las coordenadas de la imagen

M debe cumplir la condición de ser invertible.

),( yx ′′

Page 10: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones rígidas

Las transformaciones rígidas se caracterizan

por preservar las distancias. M es una matriz

ortogonal. Son transformaciones rígidas :

� Traslación

� Rotación

� Reflexión

Page 11: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones rígidas. Traslación

y

x

tyy

txx

+=′

+=′

+

=

y

x

t

t

y

x

y

x.

10

01

La traslación es una transformación que desplaza una

cierta magnitud vectorial cada uno de los píxeles de la

imagen de entrada.

Page 12: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones rígidas. Rotación

La rotación consiste en girar la imagen original un cierto

ángulo. La rotación en principio se establece respecto al

origen de coordenadas

)cos()sin(

)sin()cos(

θθ

θθ

⋅+⋅=′

⋅−⋅=′

yxy

yxx

−=

y

x

sen

sen

y

x

θθ

θθ

cos

cos

Page 13: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones rígidas. Reflexión

−=

y

x

y

x

10

01

Ejemplo: reflexión respecto al eje vertical:

Page 14: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones rígidas. Combinación

Page 15: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones afines.

Las transformaciones afines preservan la colinealidad

de los puntos (las rectas siguen siendo rectas tras la

transformación), el paralelismo y las razones entre los

puntos de pertenecientes a una recta.

M es una matriz invertible.

Page 16: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones afines.

Las transformaciones afines incluyen:

� Escalado

� Cizalladura

� Similitud

Page 17: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones afines. Escalado

El escalado es una transformación que se origina al

multiplicar por un factor ambas coordenadas de cada píxel de

la imagen de entrada.

ysy

xsx

y

x

·

·

=′

=′

=

y

x

s

s

y

x

y

x

0

0

El factor de escala no tiene necesariamente que ser el mismo

para ambas coordenadas (escalado anisotrópico)

Page 18: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones afines. Cizalladura

La cizalladura de x respecto a y desplaza cada píxel de la

imagen original en la dirección x un espacio proporcional a

su coordenada y.

yy

ycxxx

=′

⋅+=′

=

y

xc

y

xx

10

1

Page 19: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones afines. Similitud

Similitud: Traslación + Rotación + Escalado Isotrópico.

En las transformaciones afines de similitud se conservan

también los ángulos

Page 20: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones afines. Caso general

Afín: Similitud + Escalado anisotrópico + Cizalladura

Page 21: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones proyectivas

En las transformaciones proyectivas ya no se conserva el

paralelismo, ni las razones entre puntos de una recta. Sólo

se conservan las líneas rectas.

Page 22: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones proyectivas

Page 23: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones proyectivas

Page 24: Utp pdi_2015-2_ea8 transformaciones geometricas

Coordenadas homogéneas

La expresión matricial de la traslación y la rotación:

+

=

y

x

t

t

y

x

y

x.

10

01

La traslación tiene una forma distinta del resto de las

transformaciones pues no se reduce a un único producto

de matrices sino que además contiene un sumando.

−=

y

x

sen

sen

y

x

θθ

θθ

cos

cos

Page 25: Utp pdi_2015-2_ea8 transformaciones geometricas

Coordenadas homogéneas

• Interesa que todas las transformaciones tengan una

representación uniforme mediante un producto de

matrices. Esto permitirá operar más eficientemente,

especialmente cuando hay que realizar una secuencia

de transformaciones.

• Para lograr esta representación matricial uniforme

recurriremos a la utilización de coordenadas

homogéneas.

• En coordenadas homogéneas los puntos del plano se

representan con tres coordenadas.

Page 26: Utp pdi_2015-2_ea8 transformaciones geometricas

Coordenadas homogéneas

Un punto (x, y) tiene la forma (hx, hy, h), donde h toma un

valor arbitrario distinto de 0 que representa un factor de

escala.

Un mismo punto tiene infinitas representaciones en

coordenadas homogéneas. El punto (2, 3) puede

expresarse como:

(2, 3, 1), (4,6,2), (6, 9, 3), …

No obstante, lo habitual es tomar h=1, con lo que el punto

(x, y) pasa a ser (x, y, 1)

Page 27: Utp pdi_2015-2_ea8 transformaciones geometricas

Coordenadas homogéneas

La traslación se expresará entonces en coordenadas

homogéneas de la forma:

=

1

·

1001

2221

1211

y

x

tmm

tmm

y

x

y

x

=

1

·

100

10

01

1

y

x

t

t

y

x

y

x

Y en general cualquier transformación afín como:

Page 28: Utp pdi_2015-2_ea8 transformaciones geometricas

Coordenadas homogéneas

=

1

·

100

10

01

1

y

x

t

t

y

x

y

x

=

1

·

100

0cos

0cos

1

y

x

sen

sen

y

x

θθ

θθ

=

1

·

100

00

00

1

y

x

s

s

y

x

y

x

=

1

·

100

cos

cos

1

y

x

tsen

tsen

y

x

y

x

θθ

θθ

Traslación

Rotación

Escalado

Euclídea

⋅⋅

⋅−⋅

=

1

·

100

cos

cos

1

y

x

tssens

tsenss

y

x

y

x

θθ

θθSimilitud

Page 29: Utp pdi_2015-2_ea8 transformaciones geometricas

Combinación de transformaciones

Page 30: Utp pdi_2015-2_ea8 transformaciones geometricas

Combinación de transformaciones

En el caso anterior, el orden en que se efectúen las

traslaciones no tiene importancia pero en general sí

que hay que tener en cuenta el orden en que se hacen

las operaciones.

En general, el producto de las matrices de

transformación no será conmutativo. Las matrices de

trasformaciones posteriores irán multiplicando por la

izquierda a las transformaciones previas.

Page 31: Utp pdi_2015-2_ea8 transformaciones geometricas

Transformaciones geométricas con MatLab

>> R = imrotate(I, angGrados,'bilinear');

Rota la imagen I el ángulo especificado en grados con

interpolación bilineal.

>> T = maketform('affine',t);

Crea una estructura de datos para aplicar la transformación

geométrica.

>> J = imtransform(I,T);

Aplica la transformación geométrica a la imagen I especificada en

la estructura T.

>> C = imcrop(I,[x0 y0 ancho alto]);

Recorta de la imagen I la ventana especificada y la guarda en C.

>> E = imresize(I,2,'bilinear');

Reescala la imagen I con un factor 2 usando una interpolación

bilineal.

Page 32: Utp pdi_2015-2_ea8 transformaciones geometricas

32

Preguntas

Al término de la experiencia de aprendizaje el alumno

debe ser capaz de responder las siguientes preguntas:

1. Concepto y clasificación de las TG.

2. Concepto y clasificación de las TG-rígidas.

3. Concepto y clasificación de las TG-afines.

4. Concepto de las coordenadas homogéneas

5. Las TG mediante las coordenadas homogéneas.

6. Las TG mediante MatLab.

Page 33: Utp pdi_2015-2_ea8 transformaciones geometricas

33

Sesion8. Transformaciones geométricas

Procesamiento de Imágenes

y Visión Artificial

Blog del curso:

http://utppdiyva.blogspot.com