t10. transformaciones geométricast10. transformaciones

56
T10. Transformaciones geométricas T10. Transformaciones geométricas

Upload: others

Post on 28-Jun-2022

16 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: T10. Transformaciones geométricasT10. Transformaciones

T10. Transformaciones geométricasT10. Transformaciones geométricasT10. Transformaciones geométricas

Page 2: T10. Transformaciones geométricasT10. Transformaciones

2Transformaciones geométricas

ÍndiceÍndice

MotivaciónClasificación de transformacionesRepresentación matricial; coordenadas homogéneasTransformación directa e inversaMétodos de interpolaciónOtras transformacionesWarpingMorphingAplicación: registrado

Page 3: T10. Transformaciones geométricasT10. Transformaciones

3Transformaciones geométricas

MotivaciónMotivación

Eliminar distorsiones debidas a…• la óptica (e.g. fish-eye lenses);• el tipo de sensor (e.g. imagen omnidireccional);• el punto de vista camara-escena;• etc.

Introducir distorsiones para…• registrar imágenes;• estimar movimiento;• crear imágenes panorámicas;• etc.

Reconocimiento de formas invariante a ciertas transformaciones

Page 4: T10. Transformaciones geométricasT10. Transformaciones

4Transformaciones geométricas

Ejemplos de distorsionesEjemplos de distorsiones

Lente “Ojo de pez” Omnidireccional

Page 5: T10. Transformaciones geométricasT10. Transformaciones

5Transformaciones geométricas

Corrección distorsionesCorrección distorsiones

Page 6: T10. Transformaciones geométricasT10. Transformaciones

6Transformaciones geométricas

RegistradoRegistrado

Page 7: T10. Transformaciones geométricasT10. Transformaciones

7Transformaciones geométricas

Creación de mosaicosCreación de mosaicos

A partir de 21 imágenes

A partir de 33 imágenes

Page 8: T10. Transformaciones geométricasT10. Transformaciones

8Transformaciones geométricas

Clasificación de transformacionesClasificación de transformaciones

Lineales• Traslación (T)• Rotación (R)• Escalado (isotrópico) (S)• Euclidea: T+R• Similitud: T+R+S• Afín

Similitud + S anisotrópico + Deformación (shear)

• ProyectivaPolinómicasGenerales

Page 9: T10. Transformaciones geométricasT10. Transformaciones

9Transformaciones geométricas

Escalado uniformeEscalado uniforme

Page 10: T10. Transformaciones geométricasT10. Transformaciones

10Transformaciones geométricas

Escalado no uniforme (Escalado no uniforme (anisotrópicoanisotrópico))

Page 11: T10. Transformaciones geométricasT10. Transformaciones

11Transformaciones geométricas

RotaciónRotación

Page 12: T10. Transformaciones geométricasT10. Transformaciones

12Transformaciones geométricas

Reflejo verticalReflejo vertical

Caso particular de escalado no

uniforme

Page 13: T10. Transformaciones geométricasT10. Transformaciones

13Transformaciones geométricas

Inclinación (Inclinación (ShearShear))

Page 14: T10. Transformaciones geométricasT10. Transformaciones

14Transformaciones geométricas

Transformación afínTransformación afín

Combinación de las anteriores (traslación, escalado, rotación, inclinación)Se conservan:• Líneas rectas• Líneas paralelas• Ratios de longitudes a lo largo de una recta

Page 15: T10. Transformaciones geométricasT10. Transformaciones

15Transformaciones geométricas

Representación matricialRepresentación matricial

Page 16: T10. Transformaciones geométricasT10. Transformaciones

16Transformaciones geométricas

Usando coordenadas homogéneasUsando coordenadas homogéneas

Page 17: T10. Transformaciones geométricasT10. Transformaciones

17Transformaciones geométricas

Composición de transformacionesComposición de transformaciones

Rotación, traslación Traslación, rotación

Escalar, rotar Rotar, escalar

Page 18: T10. Transformaciones geométricasT10. Transformaciones

18Transformaciones geométricas

Otras transformacionesOtras transformaciones

Proyectiva (u homografía), 8 parámetrosCuadrática (o parabólica), 12 parámetrosPolinómica

Polinomio de 2º orden

Page 19: T10. Transformaciones geométricasT10. Transformaciones

19Transformaciones geométricas

Ejemplos de transformacionesEjemplos de transformaciones

Page 20: T10. Transformaciones geométricasT10. Transformaciones

20Transformaciones geométricas

Cuestiones prácticasCuestiones prácticas

Pixels fuera de la imagen• Comprobar límites

Coordenadas no enteras• Obtener coordenadas enteras más cercanas

Page 21: T10. Transformaciones geométricasT10. Transformaciones

21Transformaciones geométricas

Transformación directa e inversaTransformación directa e inversa

Transformación directa (forward mapping)• Pérdida de tiempo: se transforman píxels que caen

fuera de la imagen• Hay píxels que se consideran más de una vez• Hay píxels que no se consideran nunca

Page 22: T10. Transformaciones geométricasT10. Transformaciones

22Transformaciones geométricas

Transformación directa e inversaTransformación directa e inversa

Page 23: T10. Transformaciones geométricasT10. Transformaciones

23Transformaciones geométricas

Transformación generalTransformación general

x0 = Tx(x, y)y0 = Ty(x, y)

ú

Page 24: T10. Transformaciones geométricasT10. Transformaciones

24Transformaciones geométricas

¿Cómo rellenamos ¿Cómo rellenamos pixelspixels??

Page 25: T10. Transformaciones geométricasT10. Transformaciones

25Transformaciones geométricas

CopiandoCopiando del del pixelpixel más cercanomás cercano

Page 26: T10. Transformaciones geométricasT10. Transformaciones

26Transformaciones geométricas

Variando Variando gradualmentegradualmente el nivel de grisel nivel de gris

Page 27: T10. Transformaciones geométricasT10. Transformaciones

27Transformaciones geométricas

Métodos de interpolaciónMétodos de interpolación

Page 28: T10. Transformaciones geométricasT10. Transformaciones

28Transformaciones geométricas

Interpolación: el vecino más próximoInterpolación: el vecino más próximo

Orden cero

Page 29: T10. Transformaciones geométricasT10. Transformaciones

29Transformaciones geométricas

Interpolación Interpolación bilinealbilineal

Page 30: T10. Transformaciones geométricasT10. Transformaciones

30Transformaciones geométricas

Interpolación Interpolación bicúbicabicúbica

Page 31: T10. Transformaciones geométricasT10. Transformaciones

31Transformaciones geométricas

Comparando métodosComparando métodos

(Bi)cúbicaVecino más próximo (Bi)lineal

Page 32: T10. Transformaciones geométricasT10. Transformaciones

32Transformaciones geométricas

Interpolación en un Interpolación en un zoomzoom digital x450digital x450

Vecino m

ás próxim

o

Bilineal

Bicúbica

Page 33: T10. Transformaciones geométricasT10. Transformaciones

33Transformaciones geométricas

Interpolación Interpolación SincSinc

Page 34: T10. Transformaciones geométricasT10. Transformaciones

34Transformaciones geométricas

Vecinos más cercanos Vecinos más cercanos vs. vs. sincsinc

Page 35: T10. Transformaciones geométricasT10. Transformaciones

35Transformaciones geométricas

BilinealBilineal vsvs. . sincsinc

Bilineal Sinc

Page 36: T10. Transformaciones geométricasT10. Transformaciones

36Transformaciones geométricas

Los 4 métodosLos 4 métodos

Nea

rest

neig

hbor

Bili

near

Bic

ubic

Sin

c

Page 37: T10. Transformaciones geométricasT10. Transformaciones

37Transformaciones geométricas

Otros métodos de interpolaciónOtros métodos de interpolación

Clásicos: promediado que sólo depende de la posiciónAdaptativos: también consideran el nivel de gris

Sinc no adaptativo Sinc adaptativo

Page 38: T10. Transformaciones geométricasT10. Transformaciones

38Transformaciones geométricas

Coste computacionalCoste computacional

Page 39: T10. Transformaciones geométricasT10. Transformaciones

39Transformaciones geométricas

ConformalConformal mappingsmappings

Una transformación conforme, conserva la forma (localmente)

Page 40: T10. Transformaciones geométricasT10. Transformaciones

40Transformaciones geométricas

Efectos con transformaciones espacialesEfectos con transformaciones espaciales

http://www.jhlabs.com/ip/distortion.html

Page 41: T10. Transformaciones geométricasT10. Transformaciones

41Transformaciones geométricas

WarpingWarping

Quadratic warp (12 coeficientes)Cubic warps (20 coeficientes)Puntos de control: 6 (o 10) para resolver sistemaCon más de 6 (o 10) puntos: sistema sobredeterminado; resolución por mínimos cuadradosPiecewise warping (“a trozos”), rejilla de control

Page 42: T10. Transformaciones geométricasT10. Transformaciones

42Transformaciones geométricas

MorphingMorphing

Transformación incremental de una imagen en otra• Secuencia de imágenes intermedias

Se consigue con• Warping• Registrado• “Color blending”

Aplicación en películas, videos, etc.

Page 43: T10. Transformaciones geométricasT10. Transformaciones

43Transformaciones geométricas

MorphingMorphing (técnica 1): (técnica 1): CrossCross--dissolvedissolve

It(x, y) = (1à t) á I0(x, y) + t á I1(x, y)

Muy simple: interpolación pixel a pixelResultado• Poco realista• Transiciones no suaves

Page 44: T10. Transformaciones geométricasT10. Transformaciones

44Transformaciones geométricas

MorphingMorphing (técnica 2): (técnica 2): crosscross--dissolvedissolve a trozos a trozos

Puede manejar más situacionesWarps diferentes a diferente trozos de la imagenElección manual de los trozos (o automática!)Considera correspondencias de características

Page 45: T10. Transformaciones geométricasT10. Transformaciones

45Transformaciones geométricas

MeshMesh warpingwarping

Page 46: T10. Transformaciones geométricasT10. Transformaciones

46Transformaciones geométricas

RegistradoRegistrado

Problema: alinear dos (o más) imágenesEncontrar la transformación (función de warping)Proceso:• Selección de características (puntos, líneas,…)• Correspondencia de características

Page 47: T10. Transformaciones geométricasT10. Transformaciones

47Transformaciones geométricas

Selección de característicasSelección de características

punt

osP

icos

/val

les

Características prominentes, distinguiblesDistribuidas por toda la imagenInvariantes a transformaciones, robustas a ruido,…

Page 48: T10. Transformaciones geométricasT10. Transformaciones

48Transformaciones geométricas

Detección de esquinasDetección de esquinas

Harris & Stephens 88. A Combined Corner and Edge Detector, AlveyVision Conf.’87, 147-151

Page 49: T10. Transformaciones geométricasT10. Transformaciones

49Transformaciones geométricas

InvarianzaInvarianza locallocal

Page 50: T10. Transformaciones geométricasT10. Transformaciones

50Transformaciones geométricas

Búsqueda de los parámetrosBúsqueda de los parámetros

Optimización• Descenso de gradiente• Simulated annealing• Búsqueda tabú• Algoritmos genéticos• …

Estrategias• Multi-resolución

En la imagenEn los parámetros

Page 51: T10. Transformaciones geométricasT10. Transformaciones

51Transformaciones geométricas

¿Ya están registradas?¿Ya están registradas?

Page 52: T10. Transformaciones geométricasT10. Transformaciones

52Transformaciones geométricas

Ejemplo de NCC: Ejemplo de NCC: templatetemplate matchingmatching

Page 53: T10. Transformaciones geométricasT10. Transformaciones

53Transformaciones geométricas

EnlacesEnlaces

Transformaciones y su estimaciónhttp://vision.uji.es/~sicandel

Tricks on doing rotationhttp://www.leptonica.com/rotation.html

Geometric Transformation of Digital Images.Interpolation and Image Rotationhttp://microscopy.fsu.edu/primer/java/digitalimaging/

processing/geometricaltransformation/Interpolation and Morphinghttp://www.biomachina.org/courses/processing/051.pdf

Sinc interpolation (code)http://slacy.com/upsample/sinc.C

Turbo-charged linear interpolation (demo)http://bigwww.epfl.ch/demo/jshiftlinear/start.php

JIM - Java Image Manipulatorhttp://www.jhlabs.com/ip/imageeditor.html

Page 54: T10. Transformaciones geométricasT10. Transformaciones

54Transformaciones geométricas

BibliografíaBibliografíaBásica• Nick Efford. Digital Image Processing: a practical

introduction Using Java. Addison-Wesley 2000. (Cap. 9)• D. Vernon. Machine Vision. Automatic inspection and

Robot vision. Prentice-Hall, 1991 (Cap. 4.3)http://homepages.inf.ed.ac.uk/rbf/BOOKS/VERNON/vernon.htm

• D. Phillips. Image processing in C. Analyzing andEnhancing Digital Images. RanD Publications, 1994. (Cap. 13 y 14) [incluye código]http://homepages.inf.ed.ac.uk/rbf/BOOKS/PHILLIPS/

• G. Pajares, J. M. de la Cruz. Visión por computador: imágenes digitales y aplicaciones. Ra-Ma,2001. (Cap. 3.4)

Avanzada• William K. Pratt. Digital Image Processing (3rd. edition). John

Wiley & Sons, 2001 (Cap. 13)• Bernd Jähne. Image processing for Scientific Applications.

CRC Press, 1997 (Cap. 8)

Page 55: T10. Transformaciones geométricasT10. Transformaciones

55Transformaciones geométricas

Propuestas de artículosPropuestas de artículos

J. Shi, C. Tomasi. Good features to track. Proceedings of the IEEE Conference on ComputerVision and Pattern Recognition, pages 593-600, June1994http://www.cs.duke.edu/~tomasi/papers/shi/shiCvpr94.pdf

Thomas M. Lehmann, Claudia Gönner, Klaus Spitzer.Survey: Interpolation Methods in Medical ImageProcessing, IEEE Transactions on Medical Imaging, 18(11), Nov.1999http://www.cvgpr.uni-mannheim.de/hornegger/MEDBV/handouts/lehmann.pdf

Bojan Vrcelj, P. P. Vaidyanathan. EfficientImplementation of All-Digital Interpolation. IEEE Transactions on Image Processing, (10)11, Nov. 2001http://www.systems.caltech.edu/dsp/ee112b-spring04/PPVsSplinePaperForClass.pdf

Page 56: T10. Transformaciones geométricasT10. Transformaciones

56Transformaciones geométricas

ProblemaProblema

¿Cómo eliminar las rectas horizontales?

outp

ut

inpu

t

http://www.leptonica.com/line-removal.html