Tema 4. Transformaciones geométricas.
|
|
|
- Encarnación Redondo Moya
- hace 9 años
- Vistas:
Transcripción
1 PROCESMIENTO UDIOVISUL Programa de teoría. dquisición y representación de imágenes. 2. Procesamiento global de imágenes. 3. Filtros y transformaciones locales. 4. Transformaciones geométricas. 5. Espacios de color y el dominio frecuencial. 6. nálisis de imágenes. 7. Vídeo y sonido digital. Tema 4. Transformaciones geométricas. 4.. Interpolación y transformaciones básicas. (c) Ginés García Procesamiento Mateos, udiovisual Dept. Tema de 4. Informática Transformaciones y Sistemas, geométricas. Universidad de Murcia Procesamiento udiovisual Interpolación y transf. básicas Entrada R(,y):= (f (,y), f 2 (,y)) 78 Transf. global Transf. local Tr. geométrica 69 Transformación geométrica: el valor de un píel depende de otro píel (o varios) cuya posición es calculada a través de un par de funciones f y f 2. El tamaño de la imagen de salida puede ser distinto del tamaño de la imagen de entrada. 2 Procesamiento udiovisual Salida 4.. Interpolación y transf. básicas. Ejemplo. Desplazamiento y recorte (trim): dada una imagen, seleccionar un trozo rectangular, desde el punto (, y ) con tamaño (t X, t ). R: imagen de (..t X -,..t -) R(,y):= (+, y+y ), (,y) R t X (,y ) Qué pasa si (+, y+y ) está fuera de rango? t signar alguna constante a R. No modificar lo que hubiera antes en R. Normalmente esta transformación no aparece de forma eplícita, sino implícitamente, al trabajar con ROI Procesamiento udiovisual 4 R 4.. Interpolación y transf. básicas. Reflejos y rotaciones eactas (s. horario) Sea la imagen de entrada, de (..m X,..m ) La esquina superior izquierda es (, ) Espejo horizontal: R(,y):= (m X -, y) R: (..m X,..m ) Espejo vertical: R(,y):= (, m -y) R: (..m X,..m ) Rotar 9º: R(,y):= (y, m -) R: (..m,..m X ) Rotar 8º: R(,y):= (m X -, m -y) R: (..m X,..m ) Rotar 27º: R(,y):= (m -y, ) R: (..m,..m X ) Procesamiento udiovisual Interpolación y transf. básicas. En general la transformación tendrá la forma: R(, y):= (f (,y), f 2 (,y)) Siendo f y f 2 dos funciones cualesquiera del tipo: f, f 2 : N N R f : posición en X del original para el píel resultante (,y) f 2 : posición en del original para el píel resultante (,y) Ejemplo. En la rotación de 8º f (,y):= m X - f 2 (,y):= m -y 2 2 R Procesamiento udiovisual 6
2 4.. Interpolación y transf. básicas.... R Qué ocurre si el resultado es un número no entero? Por ejemplo, se puede conseguir un aumento de 2 con una transformación del tipo: R(,y):= (/2, y/2), con R: (..2m X +,..2m +) R 2 3 R(, ):= (/2, /2) = (, ) OK R(, ):= (/2, /2) = (.5, ) R(, ):= (/2, /2) = (.5,.5) Índices no definidos en el array. Qué hacer ahí? Procesamiento udiovisual Interpolación y transf. básicas. Problema: las imágenes son señales discretas, pero la transformación geométrica las trata como si fueran continuas (definidas en todo el plano). 2 X Cuánto vale la imagen ahí? Solución: aplicar una interpolación. Tipos de interpolación: vecino más próimo, bilineal, bicúbica, supermuestreo. Procesamiento udiovisual Interpolación y transf. básicas. Interpolación: Vecino más próimo Cualquier punto del espacio toma el valor del píel más cercano. 2 X 4.. Interpolación y transf. básicas. Ejemplo. Zoom de con vecino más próimo. R(,y):= ( /, y/ ) Implementación: f (,y) f (,y) +,5 f 2 (,y) f 2 (,y) +,5 R(,y)= ( f (,y) +,5, f 2 (,y) +,5 ) Procesamiento udiovisual 9 Imagen original 2625 Imagen ampliada 2625 Ventajas: Es muy sencilla y rápida de calcular. Inconvenientes: El efecto de cuadriculado es evidente, y da lugar imágenes de poca calidad. Procesamiento udiovisual 4.. Interpolación y transf. básicas. Interpolación bilineal En una dimensión, una interpolación lineal significa trazar una línea recta entre cada par de puntos consecutivos. Valores interpolados Media ponderada, () a -a de los valores de i y d según la p 2 X distancia a Cálculo de la interpolación lineal. Sea p el punto que queremos interpolar. Sup. que p se encuentra entre i y d, es decir: i= p, d= i+ El valor interpolado en p será: (p):= (-a)(i) + a(d) siendo a= p-i Procesamiento udiovisual 4.. Interpolación y transf. básicas. En dos dimensiones, la interpolación bilineal consiste en aplicar dos interpolaciones lineales:. Interpolar la función horizontalmente, en las filas eistentes. 2. Interpolar la función verticalmente en todo el espacio (usando la anterior). (,y) 2 X º interpolar horizontalmt. 2º interpolar verticalmt. Cómo calcular el valor interpolado de un punto (p, py), (p,py)? Procesamiento udiovisual 2
3 4.. Interpolación y transf. básicas. Sea p= (p, py), con i= p, d= i+, s= py, r= s+ con a= p-i, b= py-s (,y) s r i d X (p,py) a -a Cálculo de la interpolación bilineal: (s, py) = (-a)(s, i) + a(s, d) (r, py) = (-a)(r, i) + a(r, d) (p, py) = (-b) (s, py) + b (r, py) (p, py) = (-a)(-b)(s, i) + a(-b)(s, d) + (-a)b(r, i) + ab(r, d) Procesamiento udiovisual 3 b -b Media ponderada de los 4 píeles circundantes Esto recuerda a una convolución, no? 4.. Interpolación y transf. básicas. Ejemplo. Zoom de con interpolación bilineal. R(,y):= (/, y/) Imagen original 2625 Vecino más próimo Interpolación bilineal Indicación: un zoom entero de K con interpolación bilineal es parecido (= a veces) a un zoom de K con vecino más próimo, seguido de un filtro de media de KK. Procesamiento udiovisual Interpolación y transf. básicas. La interpolación bilineal mejora la de vecino más próimo, pero produce un efecto de zonas rectangulares. Interpolación bicúbica: basada en dos interpolaciones cúbicas. En una dimensión, la interpolación cúbica consiste en trazar una cúbica entre los 4 puntos más próimos (2 a la izquierda y 2 a la derecha). () () = c 3 + c c 3 + c 4 Valores interpolados i- i p i+ i+2 X Procesamiento udiovisual Interpolación y transf. básicas. Cálculo de la interpolación cúbica. Sea p el punto que queremos interpolar. i= p Obtener las 4 ecuaciones: (i-)=(i-); (i)=(i); (i+)=(i+); (i+2)=(i+2) 4 ecuaciones, 4 incógnitas despejar y obtener c, c 2, c 3, c 4 plicar las constantes, obteniendo (p) Interpolación bicúbica. Igual que la bilineal, se basa en dos interpolaciones cúbicas:. Interpolación cúbica horizontal, en las filas eistentes (usando 4 puntos). 2. Interpolación cúbica vertical en todo el espacio usando 4 puntos (usando la anterior interpolación). En la interpolación bicúbica de un punto (p, py) intervienen los 6 puntos circundantes. Procesamiento udiovisual Interpolación y transf. básicas. Cálculo de la interpolación bicúbica. Igual que con la bilineal, el valor del punto se puede calcular como una media ponderada de los 44 píeles circundantes. i- i i+ i+2 j- j j+ j+2 (p,py) (p,py) = Σ n=-..2 Σ m=-..2 (i+n,j+m) P(n-a) P(b-m) Siendo: P(k) = /6(C(k+2) 3-4C(k+) 3 +6C(k) 3-4C(k-) 3 ) C(k) = ma(, k) Procesamiento udiovisual 7 a b X 4.. Interpolación y transf. básicas. Ejemplo. Zoom de con interpolación bicúbica. Imagen original 2625 umento de con interpolación bilineal umento de con interpolación bicúbica Procesamiento udiovisual 8
4 4.. Interpolación y transf. básicas. Comparación. Detalle del zoom de, con vecino más próimo, interpolación bilineal y bicúbica. Se ha aplicado un perfilado en las 3, para destacar el efecto del zoom. 4.. Interpolación y transf. básicas. La interpolación también es importante en las rotaciones no eactas (que veremos más adelante) y, en general, en cualquier transformación geométrica. Este artificio de escalonamiento abrupto es conocido como aliasing Vecino más próimo Interpolación bilineal Interpolación bicúbica En todos los casos se nota la falta de detalle (obviamente), pero en la bilineal son más evidentes los artificios horizontales y verticales que en la bicúbica. Procesamiento udiovisual 9 Vecino más próimo Interpolación bilineal Interpolación bicúbica La interpolación bicúbica siempre suele producir el mejor resultado, aunque es algo más costosa. Merece la pena el aumento de tiempo respecto a la bilineal? Procesamiento udiovisual Interpolación y transf. básicas. En las operaciones de reducción también se aplican interpolaciones, pero... Observar estas Reducción de k: R(, y):= (k, k y), con estructuras R: m X /k etrañas. m /k Ejemplo. Reducción de 5. Esto tb. es aliasing 4.. Interpolación y transf. básicas. El problema no se soluciona con interpolación bilineal o bicúbica. Imagen original 5386 Reducción de 5 con vecino más próimo Procesamiento udiovisual 2 Imagen original 5386 Reducción de 5 con interpolación bilineal Reducción de 5 con interpolac. bicúbica El problema se debe a que los detalles son más pequeños que la resolución de salida. Pero, además, los métodos de interpolación no mejoran la situación: cada píel de salida es un muestreo ordenado de uno de entrada. Procesamiento udiovisual Interpolación y transf. básicas. Ejemplo. Reducción de 3. R(,y) = (3, 3y) Todos esos píeles no influyen en el resultado R Solución: cada píel de salida debería ser la media de los 33 píeles de entrada correspondientes. Interpolación por supermuestreo (super sampling) Idea: considerar el píel como un volumen con cierto área. plicar varias veces la transformación y tomar la media. Procesamiento udiovisual Interpolación y transf. básicas. Supermuestreo uniforme, en rejilla cuadrada. R(,y) X (f (,.5), f 2 (,.5)) (f (.25,.75), f 2 (.25,.75)) (f (,), f 2 (,)) (f (.25,.5), f 2 (.25,.5)) R(,y):= media {(f (-.5,y-.5), f 2 (-.5,y-.5)),... (f (-.5,y+.5), f 2 (-.5,y+.5)),..., (f (,y-.5), f 2 (,y-.5)),..., (f (,y+.5), f 2 (,y+.5)),..., (f (+.5,y-.5), f 2 (+.5,y-.5)),..., (f (+.5,y+.5), f 2 (+.5,y+.5))} Procesamiento udiovisual 24
5 4.. Interpolación y transf. básicas. Ejemplo. Reducción de 5, con supermuestreo. 4.. Interpolación y transf. básicas. Una alternativa al supermuestreo es aplicar primero un filtro de suavizado (por ejemplo, de media) y después un simple vecino más próimo. Imagen original 5386 Reducción de 5 con interpolación bilineal Reducción de 5 con supermuestreo Resultado: el supermuestreo logra un resultado de mucha más calidad. Evita el problema del aliasing. Sin embargo, el supermuestreo es mucho más costoso, requiere más cálculos. Cuanto mayor reducción, mayor es el efecto del aliasing. Procesamiento udiovisual 25 Imagen suavizada con media de 55 Reducción de 5 con vecino más próimo, de la suavizada Reducción de 5 con supermuestreo, de la original Pero esto sólo es aplicable en las transformaciones que impliquen una reducción de resolución. Procesamiento udiovisual Interpolación y transf. básicas. Conclusiones Transformación geométrica: cada píel de salida depende de uno de entrada cuya posición es calculada de acuerdo a un par de funciones. Como las posiciones pueden ser no enteras, es necesario aplicar interpolaciones: vec. más próimo, bilineal, bicúbica. En zoom, funciona mejor la bicúbica. En reducción, el supermuestreo. Pero son más costosas que las otras. Las interpolaciones bilineal y bicúbica (y otras más avanzadas) dan la sensación de mejorar la resolución de la imagen, pero cuidado... Cualquier detalle aparente de resolución inferior a un píel es una mera alucinación. Procesamiento udiovisual 27 Las transformaciones afines son cualquiera de los cuatro tipos siguientes, o combinaciones de las mismas. Traslación Escala Rotación Inclinación Procesamiento udiovisual 28 Transformación de traslación (desplazamiento): R(,y):= (+d, y+d y ) Ejemplos. Traslación (, ) R (,y):= (+,y+) Traslación (-, -) R 2 (,y):= (-,y-) (d,d y ) t t X Trasladar (d, d y ) y recortar (t, t y ) R Si las imágenes y R tienen el mismo tamaño, algunos píeles caen fuera de la imagen. Qué valor toman? Más que una interpolación sería una etrapolación... Pero no tiene mucho sentido. Se puede usar mejor un valor constante predefinido. O no modificar el contenido previo. Procesamiento udiovisual 29 plicaciones: Seleccionar y recortar una región rectangular. unque, como ya hemos visto, no suele aparecer de forma eplícita, sino al manejar ROI. También suele aparecer en combinación con las otras operaciones, para centrar la imagen resultante. Ejemplo. Recordar la operación de rotación de 8º: R(, y):= (m X -, m -y) Procesamiento udiovisual 3
6 Transformación de escala: R(,y):= (e, e y y) e = escala en el eje X e y = escala en el eje Normalmente será igual en ambos ejes (e =e y ), aunque puede ser distinta. Pero es más intuitivo el concepto de aumento o zoom: R(,y):= (/a, y/a y ) a = aumento en el eje X = /e a y = aumento en el eje = /e y Si la imagen es de tamaño m X m, la imagen resultante R será de m X a m a y Procesamiento udiovisual 3 a, a y mayor que umento o zoom de la imagen plicar interpolación bilineal o bicúbica. a, a y menor que Reducción (decimate) de la imagen plicar supermuestreo o suavizado previo. Ejemplos. Transformaciones de escala. R a =a y =,8 Reducir al 8% El aumento sirve para hacer zoom digital, pero recordar sus limitaciones. R 2 a = 2 a y =,5 umentar el doble en X y reducir a la mitad en Procesamiento udiovisual 32 Transformación de rotación: Hemos visto las rotaciones eactas (9º, 8º, 27º), pero cómo realizar una rotación de un ángulo cualquiera α (en sentido horario)? Punto en Punto en R α α (,) X Punto en R (,y) Punto en El punto (, ) en R corresponde en a ( cos α, - sen α) El punto (, y) en R en a (y sen α, y cos α) (, y) en R ( cos α + y sen α, - sen α + y cos α) en Procesamiento udiovisual 33 Rotación de una imagen en un ángulo α: R(,y):= ( cos α + y sen α, - sen α + y cos α) La rotación se suele epresar matricialmente: Ejemplos. R(,y):= ( cos α -sen α sen α cos α ) y Lo que cae fuera de la imagen no se modifica Rotar º Rotar -º Ojo: estas rotaciones son respecto al punto (,). Cómo hacerlas respecto a un centro arbitrario (c,c y )? Procesamiento udiovisual 34 Rotación de en un ángulo α, respecto a un centro (c,c y ) Idea: es equivalente a una rotación respecto a (,), seguida de un desplazamiento (d, d y ) adecuado. Cuánto? El centro no se debe modificar: R(c,c y ):= (c,c y ) R(c,c y ):= (c cos α+c y sen α+d, -c sen α+c y cos α+d y ) Solución: d =c -c cos α -c y sen α ; d y =c y + c sen α -c y cos α Matricialmente, la rotación α con centro (c,c y ) sería: R(,y):= ( cos α -sen α sen α cos α c -c cos α -c y sen α c y + c sen α -c y cos α Procesamiento udiovisual 35 y ) Ejemplos. Rotaciones respecto a un centro cualquiera. Imagen de entrada Rotar -º Rotar º Se ha utilizado interpolación bicúbica. Recordar la importancia de la interpolación. Vecino más próimo Interpolación bilineal Procesamiento udiovisual 36
7 Transformación de inclinación (shear): La inclinación transforma una región rectangular en un rombo. Sirve para simular una perspectiva. Posibilidades: inclinación en X, en o en ambos ejes. Imagen de entrada Inclinación en X de b/a Inclinación en X de -b/a a b b Inclinación en de b/a Inclinación en de -b/a Inclinación en X e a b a b El valor de inclinación es la tangente del ángulo. Procesamiento udiovisual 37 a Cómo obtener la transformación de inclinación? Ejemplo. Inclinación en X de cantidad i. X Punto en a ( r, y r ) y a ( a, y a ) i Punto en R ( a, y a ) = ( r -g, y r ). Pero, cuánto vale g? Por analogía de triángulos: g/y r = i / g= i y r Inclinación en X en cantidad i : R(, y):= ( - i y, y) g Procesamiento udiovisual 38 De manera similar... inclinación en en cantidad i y : R(, y):= (, y - i y ) Inclinación X en i, en i y : R(, y):= ( - i y, y - i y ) Matricialmente: -i R(,y):= ( ) -i y y Ejemplos. Inclinación i =-,4; i y = Inclinación i =; i y =,2 Parte de la imagen se sale. Solución: igual que antes, aplicar un desplazamiento para centrar el resultado. De cuánto? O bien, ampliar el tamaño de la imagen resultado para que quepa toda la imagen. Cuánto? En X: abs(i ) m ; en : abs(i y ) m X Ejemplos. Inclinación i y =,2 Inclinación i =,;i y =,3 Inclinación i =-,4 Procesamiento udiovisual 39 Procesamiento udiovisual 4 Qué hay en común todas las transformaciones afines? Todas ellas se pueden epresar de forma matricial: R(,y):= ( c c 2 c 2 c 3 c 22 c 23 y ) Traslación Escala Rotación Inclinación d e cos α sen α -i -sen α cos α -i y d y e y Es más, cualquier combinación de transformaciones afines es una transformación afín, y se puede epresar de forma matricial. Procesamiento udiovisual 4 Podemos definir una transformación afín genérica: R(,y):= ( c c 2 c 2 c 3 c 22 c 23 y ) La matriz ((c,c 2,c 3 ),(c 2,c 22,c 23 )) son los parámetros de la transformación. Puede implicar escalas, traslaciones, rotaciones, etc. Cómo calcular la tr. afín equivalente a dos tr. afines? Usar el producto matricial, añadiendo una fila con (,, ). c c 2 c 3 d 2 d 3 c 22 c 23 d 22 d 23 c 2 d r r 2 r 3 d 2 = r 2 r 22 r 23 Procesamiento udiovisual 42
8 Ejemplo. Sobre una imagen aplicamos º) traslación (a, b), 2º) escala (c, d), 3º) rotación e, y 4º) traslación (f, g). Podemos calcular la matriz de transformación equivalente: f g cos e sen e c -sen e cos e d a b Uso. Una transformación afín permite mapear una región rectangular cualquiera en un rombo cualquiera. O, en general, cualquier rombo en otro rombo (se supone que un rectángulo es también un rombo). Transformación afín genérica = c cos e -c sen e d sen e d cos e a c cos e+f+b d sen e b d cos e+g-a c sen e En lugar de aplicar 4 transformaciones sobre toda la imagen, basta con aplicar la transformación equivalente. Procesamiento udiovisual 43 Cómo calcular los parámetros de esta transformación? Problema: dado un rombo en la imagen original y otro rombo en la imagen de destino, calcular la transformación afín que realiza ese mapeo. Procesamiento udiovisual 44 Nota: un rombo queda completamente definido por 3 puntos. Coordenadas en X ( a, y a ) ( 2a, y 2a ) Transformación afín genérica ((c,c 2,c 3 ), (c 2,c 22,c 23 )) Coordenadas en R X ( r, y r ) ( 2r, y 2r ) ( 3a, y 3a ) ( 3r, y 3r ) 6 incógnitas (c ij ) Necesitamos 6 ecuaciones para resolverlas. Cuáles? Cada punto produce ia c c 2 c 3 dos ecuaciones: y ir ia = c 2 c 22 c 23 y ir Procesamiento udiovisual 45 Ecuaciones a resolver: c a + c 2 y a + c 3 = r c 2 a + c 22 y a + c 23 = y r c 2a + c 2 y 2a + c 3 = 2r c 2 2a + c 22 y 2a + c 23 = y 2r c 3a + c 2 y 3a + c 3 = 2r c 2 3a + c 22 y 3a + c 23 = y 3r 6 ecuaciones y 6 incógnitas Se resuelven las incógnitas (método de Cramer) y despachados. Eistirá solución si los 3 puntos de no están en la misma recta, y los 3 de R tampoco. Una vez resueltas las incógnitas, aplicamos la transformación afín buscada: R(,y):= ( c c 2 c 2 c 3 c 22 c 23 y ) Procesamiento udiovisual 46 Ejemplo. La aplicación más inmediata y típica de las transformaciones afines es etraer y redimensionar un área de interés, dándole una forma predefinida de antemano. Esto es lo que se llama normalización. Por ejemplo, detectar una cara humana, seleccionar los ojos y la boca y mapearlos a un rectángulo predefinido. Imagen de entrada Cara detectada Cara normalizada Este proceso de normalización se puede aplicar sobre vídeo, para conseguir una estabilización de los objetos de interés. Transf. afín Procesamiento udiovisual 47 Procesamiento udiovisual 48
9 Ejemplo 2. La normalización es fundamental en muchas aplicaciones de reconocimiento de objetos, como los OCR (Optical Character Recognition). Se aplica: umbralización, segmentación, normalización y comparación. Rectificar: detectar Imagen de entrada Umbralizar orientación y rotar Sería conveniente una técnica adaptativa Procesamiento udiovisual 49 Teto rectificado Detectar y separar las líneas Segmentar los caracteres Normalizar cada carácter a un tamaño estándar quí se usan integrales proyectivas Comparar con un conjunto de patrones (p.ej. diferencia) a e i Tomar el máimo Es una a!! Procesamiento udiovisual 5 Las transformaciones bilineal y perspectiva se pueden ver como generalizaciones de las afines: Transformación afín: cualquier rombo se mapea en un rombo. Transf. bilineal y perspectiva: cualquier cuadrilátero se transforma en otro cuadrilátero (ambos conveos). Imagen original Transf. afín Transf. bilineal Las transformaciones afines conservan el paralelismo de las líneas; bilineales y perspectivas no. La transf. perspectiva es la proyección perspectiva de un plano, colocado en un espacio 3D. La transf. bilineal se suele usar como una variante rápida de la transf. perspectiva, aunque no es eactamente igual. Es decir, se debería aplicar perspectiva, pero se usa bilineal por eficiencia. Imagen original Transform. afín Transform. bilineal Transform. perspectiva Transf. perspectiva Procesamiento udiovisual 5 Procesamiento udiovisual 52 Transformaciones afines: c c 2 c 3 R(,y):= ( y ) c 2 c 22 c 23 Observar el nuevo factor Transformaciones bilineales: que aparece R(,y):= ( c c 2 c 2 c 22 c 3 c 23 Transformaciones perspectivas: R(,y):= ( /z, y /z ) con: y c 4 c 24 y y ) c c 2 c 2 c 22 c 32 c 3 c 23 z c 3 c 33 Procesamiento udiovisual 53 = Pero, cuántos grados de libertad hay aquí? y Recordar la proyección perspectiva en el proceso de formación de imágenes. Distancia focal = La proyección del X, punto P = (, y, z) Punto es P = (/z, y/z) principal Centro de P Proyección (,,) Plano de Proyección Eje óptico La idea de la transf. perspectiva es: dado un plano (la imagen de entrada) colocarlo en una posición cualquiera del espacio 3D y después proyectarlo sobre el plano de imagen Z=. Procesamiento udiovisual 54 Z P = (,y,z)
10 X Centro de Proyección Plano de Proyección ) Colocar la imagen plana en el espacio 3D c c 2 c 3 y = c 2 c 22 c 23 y z c 3 c 32 c 33 Procesamiento udiovisual 55 Z Eje óptico 2) Proyección perspectiva de la imagen en el espacio R(,y):= ( /z, y /z ) La transf. bilineal es una simulación de la perspectiva. También mapea un rectángulo en un cuadrilátero. Pero el resultado no es eactamente una perspectiva. La diferencia es mayor cuanto mayor efecto de perspectiva. Transformac. bilineales Transformac. perspectivas Procesamiento udiovisual 56 Problema: dados 4 puntos en la imagen original y otros 4 en la imagen de destino, calcular las transformaciones bilineal y perspectiva que producen ese mapeo. Solución: plantear los sistemas de ecuaciones correspondientes y resolver las incógnitas. Coordenadas en X ( a, y a ) ( 2a, y 2a ) ( 4a, y 4a ) ( 3a, y 3a ) Transformación bilineal / perspectiva Coordenadas en R X Procesamiento udiovisual 57 ( r, y r ) ( 2r, y 2r ) ( 4r, y 4r ) ( 3r, y 3r ) Transformación bilineal: 8 incógnitas. Cada par de puntos equivalentes produce 2 ecuaciones con 4 puntos es necesario y suficiente. R(,y):= ( c c 2 c 2 c 22 c 3 c 23 Ecuaciones a resolver: c a +c 2 y a +c 3 a y a +c 4 = r ; c 2 a +c 22 y a +c 23 a y a +c 24 = y r c 4a +c 2 y 4a +c 3 4a y 4a +c 4 = 4r ; c 2 4a +c 22 y 4a +c 23 4a y 4a +c 24 = y 4r Para que haya solución, los cuadriláteros deben ser conveos y no deben haber tres puntos en la misma recta. c 4 c 24 y ) y Procesamiento udiovisual 58 Transformación perspectiva: 9 incógnitas, 4 puntos...? y = z c c 2 c 2 c 22 c 3 c 32 c 3 c 23 c 33 y R(,y):= ( /z, y /z ) Cada par de puntos ( ia,y ia ), ( ir,y ir ) produce dos ecuaciones: (c ia +c 2 y ia +c 3 )/(c 3 ia +c 32 y ia +c 33 )= ir (c 2 ia +c 22 y ia +c 23 )/(c 3 ia +c 32 y ia +c 33 )= y ir Sistema homogéneo e indeterminado (8 ec., 9 inc.). Observar que aparece un factor de escala. Si multiplicamos todas las constantes por k el sistema no cambia. Se puede resolverlo fijando la incógnita c 33 =. Nos quedamos con 8 incógnitas, resolvemos y listos. Procesamiento udiovisual 59 Indicaciones: Las transformaciones bilineales y perspectivas contienen a las afines: Transf. bilineal: será equivalente a una afín si c 3 =c 23 = Transf. perspectiva: equivalente a una afín si c 3 =c 32 = Los tres tipos de transformaciones son invertibles: dada una transf. se puede definir la transf. inversa, de manera que se obtenga la imagen original (o casi). Procesamiento udiovisual 6
11 Transformaciones inversas: Cómo obtener las transformaciones inversas? Si una transf. perspectiva está definida por una matriz (33), la transf. perspectiva inversa usará la matriz -. En el caso de la transf. afín, se puede etender la matriz de (32) a una de (33) y obtener la inversa. c c 2 c 3 c c 2 c 3 c c c 2 c 22 c 2 c Calcular la inversa de la matriz Ejercicio. Calcular la inversa de una transf. bilineal dada por una matriz de coeficientes, de (42). Ejemplo. La invertibilidad de la proyección perspectiva puede ser útil en navegación de robots. Idea: dada una imagen tomada con una cámara desde el robot, obtener una vista superior. De esta forma, el robot puede conocer las zonas por las que se puede mover. Inverse Perspective Mapping: transformación inversa a la perspectiva producida por la cámara, respecto a cierto plano. Imagen de entrada I.P.M. quí se pueden tomar distancias y ángulos. En la original no Procesamiento udiovisual 6 Procesamiento udiovisual 62 La técnica de I.P.M. se ha aplicado en conducción automática de vehículos. I.P.M. de la imag. Imag. capturada capturada (vista desde el coche TOP) Si tenemos un robot con odometría, se pueden acumular las proyecciones para obtener un mapa del entorno. Imágenes capturadas Mapa del entorno (IPM + desde el robot combinación usando el mínimo) Procesamiento udiovisual 63 El proyecto es un poco antiguo, pero bueno... En todos los casos, el problema fundamental es la calibración: qué transformación perspectiva se debe aplicar? Es decir, cuál es la matriz (c,..., c 33 )? Procesamiento udiovisual 64 Ejemplo 2. Integración de elementos visuales artificiales en un entorno. El objetivo es hacer que algo que no está parezca que realmente está. Problema: qué transformación perspectiva se debe aplicar para que la integración sea realista. Calibración. Pasos: ) Detectar el suelo (color verde). 2) Transformación perspectiva del elemento. 3) Media ponderada entre el suelo y la imagen transformada. Procesamiento udiovisual 65 Cómo hacer la calibración? Manualmente: seleccionar el cuadrilátero en la imagen donde se proyectará el elemento. utomáticamente. Más complejo. P.ej. encontrando las líneas del campo, las blancas y las del corte del césped. Una vez localizado el campo, colocar los elementos en unos sitios predefinidos Procesamiento udiovisual 66
12 Ejemplo 3. Engañando a la perspectiva. Usando mapeo inverso de perspectiva, se puede hacer que un dibujo (real) visto en perspectiva parezca tener otra perspectiva, y por tanto ocupe un espacio que realmente no ocupa. Este efecto visual sólo funciona desde un punto de vista dado. Está diseñado para ese punto. Idea: el dibujo real a poner es el I.P.M. del original, según la transf. perspectiva observada en la escena. Procesamiento udiovisual 67 Pasos: ) Poner el panel donde irá el dibujo en la escena, y capturar una imagen desde el punto deseado. 2) Calibrar: encontrar los 4 puntos del rectángulo del panel. 3) ñadir sobre la imagen tomada el dibujo que se quiere poner (con la escala y traslación adecuadas). Procesamiento udiovisual 68 4) Sobre la imagen del paso 3, aplicar una transformación perspectiva, desde el cuadrilátero del paso 2, hasta el rectángulo dado por el tamaño del panel. 5) Imprimir el panel y colocarlo en el mismo sitio. 6)... Voilà!! Ejemplo 4. Transformaciones de malla. Es una transformación libre y que da mucho juego. Sobre la imagen original definimos una malla de puntos de control. Estos puntos se pueden mover, y la imagen resultande debe modificarse coherentemente con los puntos de control. Imagen original Imagen transformada Procesamiento udiovisual 69 Procesamiento udiovisual 7 Cómo conseguir la transformación de malla? La idea es muy sencilla: La malla define una serie de rectángulos de posiciones conocidas. Después de mover los puntos de la malla, conocemos el cuadrilátero al que se debe mapear cada rectángulo original. En este caso, suele ser más conveniente aplicar una transformación bilineal. Se repite el proceso para todos los rectángulos originales. Transformación bilineal específica para cada trozo Procesamiento udiovisual 7 Conclusiones: Las transformaciones afines, bilineales y perspectivas son esenciales en generación, procesamiento, análisis de imágenes, y en visión artificial. Transformaciones afines: mapean un rombo en otro rombo. 3 puntos en la imagen origen y 3 en el destino. Transf. bilineales y perspectivas: mapean un cuadrilátero conveo en otro cuadrilátero conveo. 4 puntos en el origen y 4 en el destino. Las transformaciones afines conservan el paralelismo de las rectas. Hay que conocer el significado de cada transformación para saber cuál conviene aplicar. Cómo se podría etender la idea a vídeo, considerando la escala temporal? Procesamiento udiovisual 72
13 Recordemos que una transformación geométrica es cualquier operación del tipo: R(, y):= (f (,y), f 2 (,y)) Siendo f y f 2 dos funciones cualesquiera: f, f 2 : N N R f : posición en X del original para el píel resultante (,y) f 2 : posición en del original para el píel resultante (,y) Las transformaciones vistas hasta ahora tienen formas particulares y son continuas. Un mapeo (mapping) es cualquier transformación arbitraria, definida por un par de funciones f y f 2, continuas o escalonadas. Procesamiento udiovisual 73 f (,y) R f 2 (,y) (,y) (,y) g (,y) g 2 (,y) Mapeo inverso: el mapeo puede venir dado al revés: R(g (,y), g 2 (,y)):= (,y) Significado: el píel (,y) en la imagen original se mueve a la posición (g (,y), g 2 (,y)). Normalmente trabajaremos con mapeo directo. Eisten infinitos mapeos. Cualquier par de funciones locas, (f, f 2 ), es posible, pero cuáles son plausibles? Procesamiento udiovisual 74 Ejemplo. Difuminado aleatorio, de radio a: f (,y):= +random(2a+)-a f 2 (,y):= y+random(2a+)-a R R 2 R 3 a = Ejemplo 2. Pielado: f (,y):= /8 *8; f 2 (,y):= y/8 *8 R plicado sólo en la ROI. Ejemplo 3. Efecto de cristal a cuadros: f (,y):= mod 3+y mod 3; f 2 (,y):= y y mod 3+ mod 3 R a = 5 a = 2 Procesamiento udiovisual 75 Procesamiento udiovisual 76 Los mapeos pueden servir para simular las deformaciones producidas por fenómenos físicos naturales. Por ejemplo, cómo se deforma una imagen pegada a un cilindro (como una etiqueta de una botella)? α = arcos (- R /(m /2)) = α m /π - - R /(m /2) m /2 m α R m m /2 Conclusión. Transformación cilíndrica en X: R(,y):= (arcos(-/(m /2)) m /π, y) La coordenada no se modifica: f 2 (, y):= y Qué pasa con la X? La X de R es el coseno del ángulo correspondiente en. R Representación de la función f():= arcos(-/(m /2)) m /π con m = Procesamiento udiovisual 77 Procesamiento udiovisual 78
14 Ejemplo. plicación de la transformación cilíndrica. Imagen de entrada Tr. cilíndrica en X Tr. cilíndrica en El efecto se puede graduar, si en lugar de un semicírculo consideramos una semielipse, más o menos ovalada. m m m R a a a Interpretación de la transformación cilíndrica hora tenemos que medir el ángulo en una elipse. Si tomamos = - R /(m /2), ent.: f (, y):= atan((a sqrt(- 2 )/ )m /π siendo a el segundo radio de la elipse (en relación al ancho de la imagen). a=4 a=2 a= a=/2 a=/4 Procesamiento udiovisual 79 Procesamiento udiovisual 8 Ejemplos. Transformaciones elípticas. a =,3 a =,2 a = 2 En De forma parecida, podemos definir otros muchos tipos de transformaciones, basados en deformaciones producidas por fenómenos físicos naturales (o no). Método: estudiar la forma (matemática) de la deformación, y obtener el par de funciones f (,y), f 2 (,y). Ejemplo. Transformaciones geométricas genéricas. En X Procesamiento udiovisual 8 Estirar: simula un panel abombado hacia afuera Pinchar: simula apretar la superficie del panel Ondulación: simula una deformación por ondas de agua Procesamiento udiovisual 82 Cómo unificar todas estas deformaciones? Es decir, crear un marco común a todas ellas. Idea: supongamos que sobre una imagen podemos colocar una capa de agua. Podemos poner gotas, hacer ondas, formar olas, etc. La deformación de la imagen es el resultado de la refracción de la luz, al pasar del aire al agua. Ojo, la superficie deformante, S, no es ni más ni menos que una imagen, donde el valor de un píel S(,y) indica la altura del agua en ese punto. S. Superficie de efecto pinchar/estirar S 2. Superficie de efecto de ondas marinas Imagen deformada Superficie de agua Imagen original Procesamiento udiovisual 83 R Esta es la idea, pero en 2D S S(,y):= e -((-c)2 +(y-cy) 2 )/σ 2 S(,y):= sen(f sqrt((-c) 2 +(y-cy) 2 )) hora sólo hay que calcular los rayos incidentes, el ángulo de refracción de cada uno, y el sitio donde choca con el fondo... Procesamiento udiovisual 84
15 Objetivo: dada una imagen, una superficie deformante S (imagen de solo canal) definir la transformación geométrica correspondiente: R(,y):= (f (,y,s), f 2 (,y,s)) En una dimensión: en el caso de mayor refracción, el rayo se desvía perpendicularmente a la superficie del agua. Imagen deformada Superficie deformante Imagen original R S S() α t Esto es lo que nos interesa! Cuánto vale? t/s() = tan(α) Pero tan(α) es la pendiente de S en t = S() S () Procesamiento udiovisual 85 a está! R():= ( + S() ds()/d ) en dos dimensiones: R(,y):= ( + S(,y) ds(,y)/d, y + S(,y) ds(,y)/dy ) le, todos a derivar! S(,y) ds(s,y)/d = e -((-c)2 +(y-cy) 2 )/σ 2 d(e-((-c)2 +(y-cy) 2 )/σ 2 )/d = = -2(-c)/σ 2 e-2((-c)2 +(y-cy) 2 )/σ 2... Cachis... no así para cualquier función... habrá una forma más sencilla? Pero, qué vimos en el tema anterior? La derivada en X (o en ) de una imagen se puede calcular con un filtro de convolución adecuado: Sobel, Prewitt, Scharr, etc. demás, de esta forma podemos usar cualquier superficie deformante arbitraria. Procesamiento udiovisual 86 lgoritmo. Transformación de una imagen según la superficie deformante S. S ) Calcular G:= S - siendo S una máscara de derivada en X ) Calcular Gy:= Sy - siendo Sy una máscara de derivada en Sy 3) Calcular MapaX(,y):= + a S(,y) G(,y) ) Calcular Mapa(,y):= y + a S(,y) Gy(,y) 5) Obtener la imagen resultante: 2 R(,y):= (MapaX(,y), Mapa(,y)) Notas: todas las imágenes (, S, G, Gy, MapaX, Mapa, R) son del mismo tamaño. El parámetro a indica el grado de la transformación. Cuanto mayor, más pronunciada. Procesamiento udiovisual 87 Ejemplo. plicación de la deformación de ondas. Im. de entrada, Sup. deformante, S Superficie en 3D Im. de salida, R Derivada X, G Derivada, Gy Mapa X, S G Mapa, S Gy Ojo: -=Negro, +=Blanco Procesamiento udiovisual 88 Transformación de ondas: S(,y):= sen(f sqrt((-c) 2 +(y-cy) 2 )+p) (c, cy): centro de las ondas f: frecuencia; p: fase Transformación apretar/pinchar: S(,y):= e -((-c)2 +(y-cy) 2 )/σ 2 (c, cy): centro de la deformación σ: anchura de la zona deformada a: fuerza de la deformación; a< pinchar, a> estirar Variación de frecuencia Variación de fase Variación de fuerza Lo interesante de esta transformación es que se puede usar cualquier imagen como superficie deformante. S R 2 S 2 R 2 Procesamiento udiovisual 89 Procesamiento udiovisual 9
16 Las transformaciones geométricas son esenciales en las composiciones panorámicas. Idea: obtener la imagen que debería estar pegada a un cilindro que envuelve todo el campo visual del sujeto. Cuestión: cómo se proyectan las imágenes individuales en el cilindro? Idea: la X en la panorámica es el ángulo en el cilindro. La proyección de un punto ( a,y a ) de la imagen viene dada por la intersección de la recta que pasa por ( a,y a,) y (,,), y el cilindro con radio, a lo largo del eje. R XR Vista superior X Z ( a,y a ) Imágenes de entrada Procesamiento udiovisual 9 Dónde toca la imagen con el cilindro? Centro: ( c,y c ) Imagen resultado Procesamiento udiovisual 92 X Si todas las fotos se toman desde el centro, sin mover la cámara (sólo girarla en ), el punto ( c,y c ) será el centro de la imagen (m X /2, m /2). Si hay giro arriba o abajo, sí que se modifica y c. también puede haber giro a lo largo de Z. Otro parámetro es cuántos grados corresponden al ancho de una foto, es decir cuánto es el campo visual. Lo podemos medir en el número de píeles que representan 45º, fp. Con estos parámetros, la transformación será: R := arctan (( - c )/fp) y R := (y -y c )/sqrt(( - c ) 2 + (y -y c ) 2 + fp)) R estará entre -9º y 9º, y R entre -m /2 y m /2. Ojo, esta fp no es ni más ni menos que la distancia focal Podrá variar según el valor del zoom Procesamiento udiovisual 93 Pero, cuidado, lo que necesitamos son las funciones f (,y) y f 2 (,y) (de R(,y):= (f (,y), f 2 (,y)) que vienen dadas por las inversas: f (,y):= c + fp tan f 2 (,y):= y c + y sqrt(+tan 2 ) En definitiva, tenemos una transformación con 3 parámetros: El centro de la imagen (c, cy). La distancia focal, en píeles, fp. Ejemplo. Variación de df, con centro (m /2, m y /2), df = 2 pi. df = 2 pi. df = 53 pi. Procesamiento udiovisual 94 La distancia focal no cambia, si no cambiamos el zoom entre una foto y otra. Se puede calibrar una vez y usarla en todas las fotos de la composición. El centro en X se puede dejar en la mitad de la imagen, si no cambiamos el eje de rotación. El centro en, c y, puede cambiar. El giro en el eje Z también. Se puede corregir con una rotación afín a priori. Por último, se debe encontrar el desplazamiento en X para ajustar las imágenes. Calibración previa Calibración para cada grupo de imágenes Procesamiento udiovisual 95 Proceso: ) Buscar puntos análogos (de forma manual o automática) entre cada par de imágenes consecutivas. 2) Calcular los parámetros de la transformación, usando los puntos definidos. 3) Transformar las imágenes individualmente. 4) Componer las imágenes resultantes. Procesamiento udiovisual 96
17 Versión simplificada (aunque ineacta): Normalmente la distancia focal será grande y se puede sustituir la transf. anterior por una simple transf. afín. Parámetros de la transf. afín: desplazamiento (d,dy), escala s (igual en ambos ejes) y rotación r. No hay inclinac. Con dos puntos análogos basta para resolver los 4 parámetros. Corrección de la distorsión radial La distorsión radial es una deformación introducida por las lentes de las cámaras, que da lugar a un curvado de las zonas periféricas de las imágenes. Observar la curvatura de la puerta Es mucho más sencillo, pero peor. Observar la línea quebrada del canal Procesamiento udiovisual 97 La distorsión radial se modela como un desplazamiento radial, según la distancia, r, al centro de la imagen de la forma: p ( + k r 2 + k 2 r 4 ) Procesamiento udiovisual 98 Corrección de la distorsión radial: R(,y):= ((-c)(+k r 2 +k 2 r 4 )+c, (y-cy)(+k r 2 +k 2 r 4 )+cy) con r 2 = (-c) 2 + (y-cy) 2 Para poder aplicarla, tenemos que encontrar valores adecuados de k, k 2, c y cy. Calibración. Posibilidades: hacer pruebas, o bien obtener 4 ecuaciones. Imagen de entrada (384288) Imagen resultante con k = -2,9-7, k 2 = Otro tipo de transformaciones geométricas interesantes son las de morphing, muy usadas en efectos especiales. El morphing es un efecto de transición suave y progresiva entre dos (o más) imágenes. Está basado en algunas ideas ya estudiadas: Una transformación geométrica, definida por un conjunto de puntos de origen, S, y otro de destino, D. El proceso es similar a la transformación de malla, pero con puntos en posiciones cualesquiera. La transf. geométrica está graduada, entre las posiciones de origen y de destino. %: posiciones de origen, %: posiciones de destino, 5%: término medio entre ambos. El color de un píel es una media ponderada, entre la imagen origen y destino, según el grado de la transformación. Procesamiento udiovisual 99 Procesamiento udiovisual Morphing entre dos imágenes. B Ejemplo. Morphing entre dos imágenes. Puntos de origen, S S= (s, s 2,..., s n ), D= (d, d 2,..., d n ) Puntos de destino, D En el paso g, los puntos intermedios son: i k = (-g)s k + g d k Transformar, moviendo los puntos de S a I R Transformar B, moviendo los puntos de D a I R 2 Media ponderada: R= (-g)r + g R 2 Procesamiento udiovisual La transformación entre pares de puntos equivalentes se podría asimilar con una transf. bilineal: 4 puntos de origen y 4 de destino. Pero normalmente es más complejo, y se usan funciones cúbicas. Procesamiento udiovisual 2
18 Conclusiones: Las transformaciones de mapeo son el caso general de las transformaciones geométricas. Permiten modelar los efectos producidos por fenómenos físicos naturales. Para simularlos (efecto de ondas, pinchar, estirar...). Para corregirlos (distorsión radial, aberraciones en las lentes...). también otras cosas no naturales: efectos especiales. La transformación de mapeo está definida por un par de funciones f, f 2, (RR R) o bien un par de imágenes mapa, mapa y. Procesamiento udiovisual 3 4. Transformaciones geométricas. Conclusiones: Eisten muchos tipos de transformaciones geométricas, desde las más simples a las más complejas: fines, bilineales, perspectivas, basadas en superficies deformantes, morphing, mapeo arbitrario, etc. Pero todas ellas tienen el mismo formato: R(, y):= (f (,y), f 2 (,y)) todas requieren usar interpolación. La cuestión clave: cómo están definidas las funciones f y f 2 para el efecto que necesitamos? Ojo, en algún caso podemos tener lo contrario: R(g (,y), g 2 (,y)):= (,y) En ese caso, habrá que obtener las funciones inversas. Procesamiento udiovisual 4 neo.4. Transformaciones geométricas en IPL. Transformaciones de ampliación/reducción Transformaciones afines Transformaciones bilineales y perspectivas Transformaciones de mapeo arbitrario Ejercicios Procesamiento udiovisual 5 Prácticamente todas las transformaciones geométricas de interés están en IPL. OpenCV incluye muy pocas. Podemos clasificar las operaciones en los siguientes tipos: ) mpliación/reducción; 2) transf. afines; 3) transf. bilineales y perspectivas; 4) transf. de mapeo arbitrario. La mayoría admiten como parámetro el tipo de interpolación a aplicar, que puede ser: IPL_INTER_NN (vecino más próimo), IPL_INTER_LINER (interpolación bilineal), IPL_INTER_CUBIC (interpolación bicúbica), IPL_INTER_SUPER (supermuestreo, en las reducciones). Todas las transformaciones geométricas: trabajan con ROI y máscaras, no permiten usar modo in-place. Si en una transf. el valor correspondiente a un píel (,y) cae fuera de la imagen origen, no se modifica lo que hubiera antes en (,y). Procesamiento udiovisual 6 Transformaciones de ampliación/reducción: iplzoom, iplzoomfit, ipldecimate, ipldecimatefit, ipldecimateblur, iplresize, iplresizefit Transformaciones afines: iplmirror, iplrotate, iplgetrotateshift, iplrotatecenter, iplshear, iplwarpffine, iplgetffinetransform, iplgetffinebound, iplgetffinequad Transformaciones bilineales y perspectivas: iplwarpbilinear, iplwarpbilinearq, iplwarpperspective, iplwarpperspectiveq, iplget{bilinear Perspective}Transform, iplget{bilinear Perspective}Bound, iplget{bilinear Perspective} Quad Transformaciones de mapeo arbitrario: iplremap Procesamiento udiovisual 7 mpliar una imagen: void iplzoom (IplImage* srcimage, IplImage* dstimage, int Dst, int Src, int ydst, int ysrc, int interpolate) mplía la imagen srcimage (hace un zoom) y guarda el resultado en dstimage. La ampliación en X es Dst/Src, y en es ydst/ysrc. Debe ser necesariamente Dst>Src e ydst>ysrc. Recordar, se permiten ROI, y si la imagen ampliada no ocupa todo dstimage, no se modifican los valores no afectados. El método de interpolación va en interpolate. Reducir una imagen: void ipldecimate (IplImage* srcimage, IplImage* dstimage, int Dst, int Src, int ydst, int ysrc, int interpolate) Reduce la imagen en X Dst/Src, y en ydst/ysrc. hora Dst<Src e ydst<ysrc. Procesamiento udiovisual 8
19 Suavizado y posterior reducción de una imagen: void ipldecimateblur (IplImage* src, IplImage* dst, int Dst, int Src, int ydst, int ysrc, int interpolate, int MaskSize, int ymasksize) Primero suaviza src, (MaskSize, ymasksize), y luego reduce. diferencia de ipldecimate, no admite interpolación IPL_INTER_SUPER (supermuestreo). Se supone que el suavizado tiene un efecto equivalente. En la práctica, puede ser unas 3 veces más rápido que ipldecimate con supermuestreo. Redimensionar una imagen: void iplresize (IplImage* srcimage, IplImage* dstimage, int Dst, int Src, int ydst, int ysrc, int interpolate) Reduce o amplía la imagen según las proporciones Dst/Src, e ydst/ysrc. Es la más general, se puede ampliar en una dimensión y reducir en otra. Procesamiento udiovisual 9 Las funciones anteriores tienen versiones Fit, que significa que el factor de aumento/reducción se ajusta según el tamaño de las imágenes (o de los ROI, en su caso). No hace falta pasar Dst, Src,... Las tres están definidas como simples macros: void iplzoomfit (IplImage *SRC, IplImage *DST, int INTER) void ipldecimatefit (IplImage *SRC, IplImage *DST, int INTER) void iplresizefit (IplImage *SRC, IplImage *DST, int INTER) La función de OpenCV cvresize es casi equivalente a iplresizefit, con la única diferencia de que no admite interpolación bicúbica. Procesamiento udiovisual Transformaciones afines Espejo de una imagen: void iplmirror (IplImage* src, IplImage* dst, int flipis) Calcula el espejo de una imagen. Según flipis: espejo horizontal; espejo vertical; - ambos. En OpenCV también está la operación de espejo: void cvflip (const Cvrr*, Cvrr* B=, int flip_mode=) Permite modo in-place. El parámetro flip_mode puede tomar los mismos valores que flipis. Nota: estas operaciones son importantes si el origen de las imágenes (origin) es bottom-left, ya que OpenCV trabaja con topleft. Esto ocurre, p.ej., al trabajar con vídeo en Windows. Hacer: if (img->origin==) { cvflip(img); img->origin= ; } Procesamiento udiovisual Rotar una imagen: void iplrotate (IplImage* src, IplImage* dst, double angle, double Shift, double yshift, int interpolate) Rota la imagen src en angle grados ( a 36) desde el punto (,), y después aplica una traslación de (Shift, yshift). Es importante calcular bien la traslación, para que la imagen resultante quede bien centrada. Para ello se puede usar iplgetrotateshift (calcula el desplazamiento adecuado a un centro) o iplrotatecenter. En interpolate se puede añadir (OR) IPL_SMOOTH_EDGE. Rotar una imagen con un centro dado: void iplrotatecenter (IplImage* src, IplImage* dst, double angle, double Center, double ycenter, int interpolate) Rota la imagen src en angle grados ( a 36) tomando como centro el punto (Center, ycenter). Procesamiento udiovisual 2 Recordar que todo lo que cae fuera de la imagen rotada en dst no se modifica. Ejercicio. Calcular el tamaño adecuado de la imagen destino, de manera que se pueda aplicar una rotación sin que se pierdan las esquinas. decir qué operaciones se deben aplicar para hacer esa rotación. Inclinar una imagen, en X y en : void iplshear (IplImage* src, IplImage* dst, double Shear, double yshear, double Shift, double yshift, int interpolate) Inclina la imagen en las cantidades dadas en Shear e yshear, y después desplaza la imagen en (Shift, yshift). Recordar que la inclinación indica una pendiente. Por ejemplo, el valor es 45º de inclinación. plicar una transformación afín arbitraria: void iplwarpffine (IplImage* src, IplImage* dst, const double c[2][3], int interpolate) Esta es la transformación afín genérica, dada por la fórmula: c[][] dest(,y):= src( c[][] c[][] c[][] c[][2] c[][2] y ) La clave aquí es calcular los coeficientes, c, que produzcan la transformación que buscamos 3 puntos de origen, 3 puntos de destino 6 ecuaciones y 6 incógnitas. La función iplgetffinetransform puede ayudar en esto. Procesamiento udiovisual 3 Procesamiento udiovisual 4
20 Calcular los coeficientes de una transformación afín: void iplgetffinetransform (IplImage* image, double c[2][3], const double quad[4][2]) image es la imagen a la que se aplicará después la función iplwarpffine; c es la matriz donde se almacenan los coeficientes resultantes; quad es una matriz con 4 puntos. Significado de la función: calcular la transformación afín necesaria para mapear image (o el ROI, en su caso) al cuadrilátero dado en quad. Nota. No se calcula cualquier rombo en cualquier otro rombo, sino el rectángulo (de toda la imagen o del ROI) en el rombo dado como parámetro. Ejercicio. Cómo calcular la transformación de rombo a rombo? Ver cvsolve. Procesamiento udiovisual 5 Nota 2. El orden de los puntos de quad debe ser: (quad[][],quad[][]) El es la X y el la (quad[3][],quad[3][]) (quad[][],quad[][]) (quad[2][],quad[2][]) Nota 3. Sólo hacen falta 3 puntos para definir un rombo. Por qué se pasan 4? De hecho, si los 4 puntos pasados no forman un rombo, la función produce un error. Ejercicio. Suponiendo que tenemos en quad 3 puntos, calcular el 4º punto de forma que resulte un rombo. quad[3][]:= quad[2][] + quad[][] - quad[][] quad[3][]:= quad[2][] + quad[][] - quad[][] Procesamiento udiovisual 6 Para conocer dónde será mapeada la imagen para una transformación dada, podemos usar las funciones: Calcular el rombo resultante de una transformación afín: void iplgetffinequad (IplImage* image, const double c[2][3], double quad[4][2]) Es la inversa a la iplgetffinetransform. Dados unos coeficientes en c, calcula en quad los 4 puntos a los que será mapeada la imagen (o el ROI seleccionado). Calcular el rectángulo contenedor de la transf. afín: void iplgetffinebound (IplImage* image, const double c[2][3], double rect[2][2]) Calcula, en rect, los vértices superior izquierdo e inferior derecho del menor rectángulo (alineado con los ejes) que contiene los 4 puntos anteriores. Realmente estas dos funciones no se suelen usar mucho. Procesamiento udiovisual 7 Ejemplo. plicar una transformación afín a una imagen img, suponiendo que tenemos 3 puntos, pts, de un rombo donde queremos mapearla. void Transformarfin (IplImage *img, IplImage *res, double pts[3][2]) { double quad[4][2]; double coef[2][3]; for (int i= ; i<3; i++) { quad[i][]= pts[i][]; quad[i][]= pts[i][]; } quad[3][]= quad[2][] + quad[][] - quad[][]; quad[3][]= quad[2][] + quad[][] - quad[][]; iplgetffinetransform(img, coef, quad); iplwarpffine(img, res, coef, IPL_INTER_CUBIC); } Procesamiento udiovisual 8 Para las transformaciones bilineales y perspectivas, las operaciones disponibles son similares a las afines. plicar una transformación: iplwarpffine iplwarpbilinear, iplwarpperspective Calcular los coeficientes: iplgetffinetransform iplgetbilineartransform, iplgetperspectivetransform Calcular el cuadrilátero donde se mapeará: iplgetffinequad iplgetbilinearquad, iplgetperspectivequad Calcular el rectángulo contenedor: iplgetffinebound iplgetbilinearbound, iplgetperspectivebound En la bilineal, los coeficientes son double c[2][4] y en la perspectiva double c[3][3]. demás, están iplwarpbilinearq y iplwarpperspectiveq que reciben directamente los 4 puntos (de origen o de destino) y calculan los coeficientes internamente. Procesamiento udiovisual 9 plicar una transformación bilineal: void iplwarpbilinear (IplImage* src, IplImage* dst, const double c[2][4], int warpflag, int interpolate) plica una transformación bilineal, con los coeficientes c. El parámetro warpflag indica si la transformación es desde el ROI de src hasta dst, o al revés. Si warpflag = IPL_WRP_R_TO_Q (ROI to Quadrangle): y dst(,y):= src( c[][] c[][] c[][2] c[][3] c[][] c[][] c[][2] c[][3] y ) Si warpflag = IPL_WRP_Q_TO_R (Quadrangle to ROI): src(,y):= dst( c[][] c[][] c[][2] c[][3] y ) c[][] c[][] c[][2] c[][3] y Procesamiento udiovisual 2
21 Los coeficientes se calculan resolviendo un sistema de ecuaciones (como vimos en teoría). Ver cvsolve. La función iplgetbilineartransform puede ser útil. Pero, igual que en afín, no se calcula cualquier cuadrilátero en cualquier otro, sino el rectángulo (de toda la imagen o del ROI) en el cuadrilátero pasado como parámetro. Calcular los coeficientes de una transformación bilineal: void iplgetbilineartransform (IplImage* image, double c[2][4], const double quad[4][2]) Los coeficientes resultantes son c. El cuadrilátero a transformar está dado en quad. El orden de los puntos es el mismo que en afín. El cuadrilátero no puede ser cóncavo. (quad[][], quad[][]) (quad[3][], quad[3][]) (quad[][], quad[][]) (quad[2][], quad[2][]) Procesamiento udiovisual 2 plicar una transformación bilineal dado un cuadrilátero: void iplwarpbilinearq (IplImage* src, IplImage* dst, const double quad[4][2], int warpflag, int interpolate) Esta función es equivalente a: double c[2][4]; iplgetbilineartransform(warpflag==ipl_wrp_q_to_r?dst:src, c, quad); iplwarpbilinear(src, dst, c, warpflag, interpolate); Trabaja directamente con los 4 puntos del cuadrilátero. Si warpflag = IPL_WRP_R_TO_Q, transforma el ROI de src en el cuadrilátero quad de dst. Si warpflag = IPL_WRP_Q_TO_R, transforma el cuadrilátero quad de src en el ROI de dst. Ver también iplgetbilinearbound e iplgetbilinearquad. Procesamiento udiovisual 22 plicar una transformación perspectiva: void iplwarpperspective (IplImage* src, IplImage* dst, const double c[3][3], int warpflag, int interpolate) La misma idea que antes, pero aplicando una transf. perspectiva. hora la matriz de coeficientes c es de 33. c[][] c[][] c[][2] y = c[][] c[][] c[][2] y z c[2][] c[2][] c[2][2] warpflag cómo es la transformación. Si warpflag = IPL_WRP_R_TO_Q (Quadrangle to ROI): dst(,y):= src( /z, y /z ) Si warpflag = IPL_WRP_Q_TO_R (ROI to Quadrangle): src(,y):= dst( /z, y /z ) Procesamiento udiovisual 23 Calcular los coeficientes de una transformación perspectiva: void iplgetperspectivetransform (IplImage* image, double c[3][3], const double quad[4][2]) Calcula la matriz de coeficientes de transformación perspectiva, c, dado el ROI de image y los puntos del cuadrilátero quad. El orden de los puntos en quad es el mismo que en afín y en bilineal. el cuadrilátero no puede ser cóncavo. c[2][2] siempre toma valor (recordar la teoría). (quad[][], quad[][]) (quad[3][], quad[3][]) (quad[][], quad[][]) (quad[2][], quad[2][]) Procesamiento udiovisual 24 lgunas propiedades interesantes de la matriz c: Si el cuadrilátero quad es un rombo, la transformación anterior será afín, con lo que c[2][]=, c[2][]=, c[2][2]=. La inversa de una transformación perspectiva asociada a c, se obtiene usando la matriz inversa de c, es decir, - c. Ver cvinvert para invertir matrices. Los modos IPL_WRP_R_TO_Q y IPL_WRP_Q_TO_R consisten simplemente en usar la matriz c o - c, respectivamente. La aplicación sucesiva de dos transf. perspectivas c y luego c2, equivale a la transf. asociada al producto matricial de c2 por c. Ver cvmatmuldd. Juntando lo anterior, cómo calcular la matriz asociada a un mapeo perspectivo de un cuadrilátero origen en otro de destino? Procesamiento udiovisual 25 Igual que antes, eiste una función que trabaja directamente con el cuadrilátero de origen o de destino. plicar una transformación perspectiva dado un cuadrilátero: void iplwarpperspectiveq (IplImage* src, IplImage* dst, const double quad[4][2], int warpflag, int interpolate) Esta función es equivalente a: double c[2][4]; iplgetperspectivetransform( warpflag==ipl_wrp_q_to_r?dst:src, c, quad); iplwarpperspective(src, dst, c, warpflag, interpolate); Si warpflag = IPL_WRP_R_TO_Q, transforma el ROI de src en el cuadrilátero quad de dst. Si warpflag = IPL_WRP_Q_TO_R, transforma el cuadrilátero quad de src en el ROI de dst. Ver también iplgetperspectivebound e iplgetperspectivequad. Procesamiento udiovisual 26
22 Transformaciones de mapeo arbitrario: Consisten en definir el par de funciones f (,y) y f 2 (,y) de la transformación geométrica genérica: R(,y):= (f (,y), f 2 (,y)) f y f 2 indican para cada píel de salida, cuál es el píel correspondiente de entrada. Recordar que f y f 2 se pueden ver, a su vez, como imágenes, que tendrán un solo canal. Cuando el valor de las funciones no sea entero, se aplicará algún método de interpolación. Si el valor asociado a un píel cae fuera de la imagen origen, no se modifica el contenido de lo que hubiera en la imagen resultado. La única función eistente es iplremap. Procesamiento udiovisual 27 plicar un mapeo arbitrario: void iplremap (IplImage* src, IplImage* Map, IplImage* ymap, IplImage* dst, int interpolate) plica la transformación de mapeo: dst(,y):= src(map(,y), ymap(,y)) Es decir, f está dada en Map, y f 2 en ymap. Map e ymap deben ser imágenes solo canal, de profundidad float (IPL_DEPTH_32F) y del mismo tamaño que dst. La profundidad de las imágenes src y dst debe ser la misma. No admite modo in-place. Lo realmente importante de esta función es cómo calcular las imágenes Map e ymap para conseguir el efecto deseado. Procesamiento udiovisual 28 Ejemplo. Transf. aleatoria, de una imagen img, con un radio m: IplImage* res= cvcloneimage(img); IplImage* img= cvcreateimage(ggmgetsize(img), IPL_DEPTH_32F, ); IplImage* imgy= cvcreateimage(ggmgetsize(img), IPL_DEPTH_32F, ); float v, vy; for (int yy= ; yy<img->height; yy++) for (int = ; <img->width; ++) { v= + rand()%(2*m+) - m; // Esta es la parte variable, en X vy= yy + rand()%(2*m+) - m; // y en iplputpiel(img,, yy, &v); iplputpiel(imgy,, yy, &vy); } iplremap(img, img, imgy, res, IPL_INTER_CUBIC); cvreleaseimage(&img); cvreleaseimage(&imgy); Ejemplo. Transf. de acristalado. Sustituir las líneas marcadas por: v= - %m + yy%m; vy= yy - yy%m + %m; Procesamiento udiovisual 29 Ejercicios:. Escribir una operación que dada una transformación afín, bilineal o perspectiva, compare cuantitativamente la diferencia del resultado usando interpolación bilineal, bicúbica o vecino más próimo. La medida es % de diferencia promedio de los píeles. 2. Implementar una operación que realice una transformación afín, tomando como parámetros la escala del resultado, la rotación, inclinación (en X e ) y la posición final del píel central. 3. Escribir sendas operaciones que permitan realizar transf. bilineales y perspectivas dados 4 puntos de origen y 4 de destino. 4. Implementar la transformación de malla, tal y como es vista en el tema, permitiendo un tamaño de malla variable. 5. Implementar la transformación de superficie deformante, permitiendo ajustar el grado de la deformación. 6. Usando la anterior, implementar las transformaciones de pinchar y estirar, con radio y fuerza variables. Procesamiento udiovisual 3
Tema 4. Transformaciones geométricas.
PROCESMIENTO UDIOVISUL Programa de teoría. dquisición y representación de imágenes. 2. Procesamiento global de imágenes. 3. Filtros y transformaciones locales. 4. Transformaciones geométricas. 5. Espacios
Proyecto. Tema 6 sesión 2: Generación de Rectas, Circunferencias y Curvas. Geometría Analítica. Isidro Huesca Zavaleta
Geometría Analítica Tema 6 sesión 2: Generación de Rectas, Circunferencias y Curvas Isidro Huesca Zavaleta La Integración de dos Ciencias La Geometría Analítica nació de la integración de dos ciencias
Función lineal Ecuación de la recta
Función lineal Ecuación de la recta Función constante Una función constante toma siempre el mismo valor. Su fórmula tiene la forma f()=c donde c es un número dado. El valor de f() en este caso no depende
Aplicación: cálculo de áreas XII APLICACIÓN: CÁLCULO DE ÁREAS
XII APLICACIÓN: CÁLCULO DE ÁREAS El estudiante, hasta este momento de sus estudios, está familiarizado con el cálculo de áreas de figuras geométricas regulares a través del uso de fórmulas, como el cuadrado,
A c) Determinantes. Ejercicio 1. Calcula los siguientes determinantes:
Determinantes 1. Contenido 1.1 Determinantes de orden 1, 2 y 3. 1.2 Menor complementario. Matriz adjunta. 1.3 Propiedades de los determinantes. 1.4 Determinantes de orden n. 1.5 Cálculo de determinantes
Tema 3: Sistemas de ecuaciones lineales
Tema 3: Sistemas de ecuaciones lineales 1. Introducción Los sistemas de ecuaciones resuelven problemas relacionados con situaciones de la vida cotidiana que tiene que ver con las Ciencias Sociales. Nos
Visión artificial y Robótica Modelos de movimiento y mapas. Depto. de Ciencia de la Computación e Inteligencia Artificial
Visión artificial y Robótica Modelos de movimiento y mapas Depto. de Ciencia de la Computación e Inteligencia Artificial Contenidos Sistemas de coordenadas Localización de objetos en el espacio Modelos
Tema 6: Trigonometría.
Tema 6: Trigonometría. Comenzamos un tema, para mi parecer, muy bonito, en el que estudiaremos algunos aspectos importantes de la geometría, como son los ángulos, las principales razones e identidades
Examen de Selectividad Matemáticas JUNIO Andalucía OPCIÓN A
Eámenes de Matemáticas de Selectividad ndalucía resueltos http://qui-mi.com/ Eamen de Selectividad Matemáticas JUNIO 5 - ndalucía OPCIÓN.- [,5 puntos] Se quiere construir un depósito abierto de base cuadrada
PAU Madrid. Matemáticas II. Año Examen modelo. Opción A. Ejercicio 1. Valor: 2 puntos.
PAU Madrid. Matemáticas II. Año 22. Examen modelo. Opción A. Ejercicio 1. Valor: 2 puntos. Se considera una varilla AB de longitud 1. El extremo A de esta varilla recorre completamente la circunferencia
Problemas métricos. 1. Problemas afines y problemas métricos
. Problemas afines y problemas métricos Al trabajar en el espacio (o análogamente en el plano) se nos pueden presentar dos tipos de problemas con los elementos habituales (puntos, rectas y planos): Problemas
RESOLUCIÓN DE SISTEMAS MEDIANTE DETERMINANTES
UNIDD 4 RESOLUCIÓN DE SISTEMS MEDINTE DETERMINNTES Página 00 Resolución de sistemas mediante determinantes x y Resuelve, aplicando x = e y =, los siguientes sistemas de ecuaciones: x 5y = 7 5x + 4y = 6x
Unidad 1: SISTEMAS DE ECUACIONES. MÉTODO DE GAUSS
Unidad 1: SISTEMAS DE ECUACIONES. MÉTODO DE GAUSS 1.1.- SISTEMAS DE ECUACIONES LINEALES Ecuación lineal Las ecuaciones siguientes son lineales: 2x 3 = 0; 5x + 4y = 20; 3x + 2y + 6z = 6; 5x 3y + z 5t =
Sistem as de ecuaciones lineales
Sistem as de ecuaciones lineales. Concepto, clasificación y notación Un sistema de m ecuaciones lineales con n incógnitas se puede escribir del siguiente modo: a x + a 2 x 2 + a 3 x 3 + + a n x n = b a
GIMP, aplicaciones didácticas. Herramientas de GIMP
GIMP, aplicaciones didácticas. Herramientas de GIMP Ministerio de Educación. ITE GIMP, aplicaciones didácticas. GIMP, aplicaciones didácticas Herramientas Para ampliar: Transformación. Aerógrafo. Relleno.
SISTEMAS DE ECUACIONES LINEALES. Método de reducción o de Gauss. 1º DE BACHILLERATO DPTO DE MATEMÁTICAS COLEGIO MARAVILLAS AUTORA: Teresa González.
SISTEMAS DE ECUACIONES LINEALES Método de reducción o de Gauss 1º DE BACHILLERATO DPTO DE MATEMÁTICAS COLEGIO MARAVILLAS AUTORA: Teresa González. SISTEMAS DE DOS ECUACIONES LINEALES CON DOS INCÓGNITAS.
El pipeline de visualización es el conjunto de
Sistemas de Visualización Pipeline de visualización 3D Definición del modelo geométrico Transformaciones geométricas Transformaciones de visualización Volumen de visualización Proyecciones Pipeline de
Tema 7: Geometría Analítica. Rectas.
Tema 7: Geometría Analítica. Rectas. En este tema nos centraremos en estudiar la geometría en el plano, así como los elementos que en este aparecen como son los puntos, segmentos, vectores y rectas. Estudiaremos
TRIGONOMETRÍA. MATEMÁTICAS I 1º Bachillerato Ciencias de la Salud y Tecnológico. 1.- Ángulos en la Circunferencia.
TRIGONOMETRÍA MATEMÁTICAS I 1º Bachillerato Ciencias de la Salud y Tecnológico 1.- Ángulos en la Circunferencia. 2.- Razones Trigonométricas de un Triángulo Rectángulo. 3.- Valores del Seno, Coseno y Tangente
IES Fco Ayala de Granada Sobrantes de 2011 (Modelo 4) Soluciones Germán-Jesús Rubio Luna
IES Fco Ayala de Granada Sobrantes de 011 (Modelo 4) Soluciones Germán-Jesús Rubio Luna Opción A Ejercicio 1 opción A, modelo 4 del 011 [ 5 puntos] Queremos hacer junto a la carretera un cercado rectangular
ÁREA DE FÍSICA GUÍA DE APLICACIÓN TEMA: ACÚSTICA Y ÓPTICA GUÍA: 1203 ESTUDIANTE: FECHA:
ÁREA DE FÍSICA GUÍA DE APLICACIÓN TEMA: ACÚSTICA Y ÓPTICA GUÍA: 1203 ESTUDIANTE: E-MAIL: FECHA: ACÚSTICA Resuelva cada uno de los siguientes problemas haciendo el proceso completo. 1. Un estudiante golpea
Profesorado de Nivel Medio y Superior en Biología Matemática - 1º Cuatrimestre Año 2013 FUNCIÓN CUADRÁTICA
Matemática - º Cuatrimestre Año 0 FUNCIÓN CUADRÁTICA Hemos definido anteriormente la función lineal como una función f: R R de la forma f()a+b con a R y b R, que se representa en el plano mediante una
Cálculo I (Grado en Ingeniería Informática) Problemas adicionales resueltos
Cálculo I (Grado en Ingeniería Informática) - Problemas adicionales resueltos Calcula el ĺımite lím ( n + n + n + ) n Racionalizando el numerador, obtenemos L lím ( n + n + n (n + n + ) (n + ) + ) lím
Sistemas de Ecuaciones Lineales
Sistemas de Ecuaciones Lineales 1 Sistemas de ecuaciones y matrices Definición 1 Una ecuación lineal en las variables x 1, x 2,..., x n es una ecuación de la forma con a 1, a 2... y b números reales. a
2.2 Rectas en el plano
2.2 Al igual que ocurre con el punto, en geometría intrínseca, el concepto de recta no tiene definición, sino que constituye otro de sus conceptos iniciales, indefinibles. Desde luego se trata de un conjunto
Sistemas de ecuaciones lineales
Sistemas de ecuaciones lineales Sistemas de ecuaciones lineales Generalidades Definición [Sistema de ecuaciones lineales] Un sistema de m ecuaciones lineales con n incógnitas, es un conjunto de m igualdades
TEMA 1. MATRICES, DETERMINANTES Y APLICACIÓN DE LOS DETERMINANTES. CONCEPTO DE MATRIZ. LA MATRIZ COMO EXPRESIÓN DE TABLAS Y GRAFOS.
TEMA 1. MATRICES, DETERMINANTES Y APLICACIÓN DE LOS DETERMINANTES. 1. MATRICES. CONCEPTO DE MATRIZ. LA MATRIZ COMO EXPRESIÓN DE TABLAS Y GRAFOS. DEFINICIÓN: Las matrices son tablas numéricas rectangulares
PROBLEMAS DE OPTIMIZACIÓN
1 PROBLEMAS DE OPTIMIZACIÓN Planteamiento y resolución de los problemas de optimización Se quiere construir una caja, sin tapa, partiendo de una lámina rectangular de cm de larga por de ancha. Para ello
Volumen de Sólidos de Revolución
60 CAPÍTULO 4 Volumen de Sólidos de Revolución 6 Volumen de sólidos de revolución Cuando una región del plano de coordenadas gira alrededor de una recta l, se genera un cuerpo geométrico denominado sólido
En la notación C(3) se indica el valor de la cuenta para 3 kilowatts-hora: C(3) = 60 (3) = 1.253
Eje temático: Álgebra y funciones Contenidos: Operatoria con expresiones algebraicas Nivel: 2 Medio Funciones 1. Funciones En la vida diaria encontramos situaciones en las que aparecen valores que varían
Unidad V. 5.1 Recta tangente y recta normal a una curva en un punto. Curvas ortogonales.
Unidad V Aplicaciones de la derivada 5.1 Recta tangente y recta normal a una curva en un punto. Curvas ortogonales. Una tangente a una curva es una recta que toca la curva en un solo punto y tiene la misma
Matemáticas UNIDAD 5 CONSIDERACIONES METODOLÓGICAS. Material de apoyo para el docente. Preparado por: Héctor Muñoz
CONSIDERACIONES METODOLÓGICAS Material de apoyo para el docente UNIDAD 5 Preparado por: Héctor Muñoz Diseño Gráfico por: www.genesisgrafica.cl LA RELACIÓN DE PROPORCIONALIDAD 1. DESCRIPCIÓN GENERAL DE
Resumen 3: Matrices, determinantes y sistemas de ecuaciones
Resumen 3: Matrices, determinantes y sistemas de ecuaciones lineales 1 Matrices Una matriz con coeficientes sobre un cuerpo K (normalmente K R) consiste en una colección de números (o escalares) del cuerpo
Dos matrices son iguales cuando tienen la misma dimensión y los elementos que ocupan el mismo lugar en ambas son iguales
Introducción Las matrices aparecen por primera vez hacia el año 1850, introducidas por J.J. Sylvester. El desarrollo inicial de la teoría se debe al matemático W.R. Hamilton en 1853. En 1858, A. Cayley
DIBUJO TÉCNICO II EJERCICIOS DE APOYO. Prof. Jesús Macho Martínez
DIBUJO TÉCNICO II EJERCICIOS DE APOYO Esta obra de Jesús Macho Martínez está bajo una Licencia Creative Commons Atribución-CompartirIgual 3.0 Unported 1º.- Deducir razonadamente el valor del ángulo α marcado
M.D.T. y TOPOCAL. Técnicas de Representación Gráfica. Curso DIGTEG 2010
M.D.T. y TOPOCAL Técnicas de Representación Gráfica Curso 2010-2011 Superficies Topográficas Superficies Topográficas No es geométrica La superficie terrestre No se puede representar con exactitud matemática
1 Curvas planas. Solución de los ejercicios propuestos.
1 Curvas planas. Solución de los ejercicios propuestos. 1. Se considera el lugar geométrico de los puntos del plano tales que la suma del cuadrado de las distancias a los puntos P 1 = (, 0) y P = (, 0)
Límites de funciones de varias variables.
Límites continuidad de funciones de varias variables Límites de funciones de varias variables. En este apartado se estudia el concepto de límite de una función de varias variables algunas de las técnicas
2. Cuál es el valor del cociente de la suma entre la diferencia de los senos de dos ángulos?
1. Qué relaciones ligan las razones trigonométricas de (45º-a) y (45º+a) 2. Cuál es el valor del cociente de la suma entre la diferencia de los senos de dos ángulos? 3. Demostrar la fórmula: 4. Expresar
PROF: Jesús Macho Martínez
DIBUJO TÉCNICO ELEMENTAL PROF: Jesús Macho Martínez 1º.- Trazar la perpendicular a r por el punto P. 2º.- Trazar la bisectriz del ángulo que forman r y s. P * r r s 3º.- Trazar las tangentes interiores
7. Difracción n de la luz
7. Difracción n de la luz 7.1. La difracción 1 7. Difracción de la luz. 2 Experiencia de Grimaldi (1665) Al iluminar una pantalla opaca con una abertura pequeña, se esperaba que en la pantalla de observación
RESOLUCIÓN DE SISTEMAS MEDIANTE DETERMINANTES
3 RESOLUCIÓN DE SISTEMAS MEDIANTE DETERMINANTES Página 74 Determinantes de orden 2 Resuelve cada uno de los siguientes sistemas de ecuaciones y calcula el determinante de la matriz de los coeficientes:
UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO PLANTEL IGNACIO RAMÍREZ CALZADA DE LA ESCUELA PREPARATORIA PROBLEMARIO GEOMETRÍA ANALÍTICA
UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO PLANTEL IGNACIO RAMÍREZ CALZADA DE LA ESCUELA PREPARATORIA PROBLEMARIO GEOMETRÍA ANALÍTICA ELABORO: ING. ROBERTO MERCADO DORANTES SEPTIEMBRE 2008 Sistemas coordenados
de la forma ), i =1,..., m, j =1,..., n, o simplemente por (a i j ).
INTRODUCCIÓN. MATRICES Y DETERMINANTES Las matrices se utilizan en el cálculo numérico, en la resolución de sistemas de ecuaciones lineales, de las ecuaciones diferenciales y de las derivadas parciales.
Funciones 1. D = Dom ( f ) = x R / f(x) R. Recuerda como determinabas los dominios de algunas funciones: x x
Funciones. DEFINICIÓN Y TERMINOLOGÍA.. Definición de función real de variable real. "Es toda correspondencia, f, entre un subconjunto D de números reales y R (o una parte de R), con la condición de que
Teoría Tema 9 Ecuaciones del plano
página 1/11 Teoría Tema 9 Ecuaciones del plano Índice de contenido Determinación lineal de un plano. Ecuación vectorial y paramétrica...2 Ecuación general o implícita del plano...6 Ecuación segmentaria
f: D IR IR x f(x) v. indep. v. dependiente, imagen de x mediante f, y = f(x). A x se le llama antiimagen de y por f, y se denota por x = f -1 (y).
TEMA 8: FUNCIONES. 8. Función real de variable real. 8. Dominio de una función. 8.3 Características de una función: signo, monotonía, acotación, simetría y periodicidad. 8.4 Operaciones con funciones:
I. E. S. ATENEA. SAN SEBASTIÁN DE LOS REYES EXAMEN GLOBAL. PRIMERA EVALUACIÓN. ANÁLISIS
Eamen Global Análisis Matemáticas II Curso 010-011 I E S ATENEA SAN SEBASTIÁN DE LOS REYES EXAMEN GLOBAL PRIMERA EVALUACIÓN ANÁLISIS Curso 010-011 1-I-011 MATERIA: MATEMÁTICAS II INSTRUCCIONES GENERALES
Bolilla 12: Óptica Geométrica
Bolilla 12: Óptica Geométrica 1 Bolilla 12: Óptica Geométrica Los contenidos de esta bolilla están relacionados con los principios primarios que rigen el comportamiento de los instrumentos ópticos. La
y cualquier par (x, y) puede escalarse, multiplicarse por un número real s, para obtener otro vector (sx, sy).
UNIDAD II: VECTORES EN DOS Y TRES DIMENSIONES Un espacio vectorial (o espacio lineal) es el objeto básico de estudio en la rama de la matemática llamada álgebra lineal. A los elementos de los espacios
ÁLGEBRA LINEAL II Algunas soluciones a la práctica 2.3
ÁLGEBRA LINEAL II Algunas soluciones a la práctica 2. Transformaciones ortogonales (Curso 2010 2011) 1. Se considera el espacio vectorial euclídeo IR referido a una base ortonormal. Obtener la expresión
TEMA 3 SISTEMAS DE ECUACIONES LINEALES
TEM SISTEMS DE ECUCIONES LINELES. Sistemas de ecuaciones lineales. Epresión matricial. Ejemplo Epresa en forma matricial los siguientes sistemas de ecuaciones lineales: 9 5, Solution is: 9, 9 Se trata
REPRESENTACIÓN DE FUNCIONES
8 REPRESENTACIÓN DE FUNCIONES Página 86 Descripción de una gráfica. Copia en tu cuaderno los datos encuadrados en rojo. A partir de ellos y sin mirar la gráfica que aparece al principio, representa esta
Sistemas de dos ecuaciones lineales de primer grado con dos incógnitas
Un sistema de dos ecuaciones lineales de primer grado con dos incógnitas tiene la siguiente forma Ax + By + C = 0 A x + B y + C (1) = 0 Ya sabemos que una ecuación lineal de primer grado con dos incógnitas
UNIVERSIDADES PÚBLICAS DE LA COMUNIDAD DE MADRID PRUEBA DE ACCESO A LAS ENSEÑANZAS UNIVERSITARIAS OFICIALES DE GRADO MATERIA: DIBUJO TÉCNICO II
UNIVERSIDADES PÚBLICAS DE LA COMUNIDAD DE MADRID PRUEBA DE ACCESO A LAS ENSEÑANZAS UNIVERSITARIAS OFICIALES DE GRADO Curso 2014-2015 MATERIA: DIBUJO TÉCNICO II INSTRUCCIONES GENERALES Y CALIFICACIÓN Después
UD Trigonometría Ejercicios Resueltos y Propuestos Col La Presentación
En este documento se da una relación de los tipos de ejercicios que nos podemos encontrar en el tema de Trigonometría de º de Bachillerato. En todo el documento se sigue el mismo esquema: Enunciado tipo
OPTIMIZACIÓN VECTORIAL
OPTIMIZACIÓN VECTORIAL Métodos de Búsqueda Directa Utilizan sólo valores de la función Métodos del Gradiente Métodos de Segundo Orden Requieren valores aproimados de la primera derivada de f) Además de
Matemáticas. Si un error simple ha llevado a un problema más sencillo se disminuirá la puntuación.
UNIVERSIDAD POLITÉCNICA DE CARTAGENA PRUEBAS DE ACCESO A LA UNIVERSIDAD DE LOS MAYORES DE 25 AÑOS CONVOCATORIA 2014 CRITERIOS DE EVALUACIÓN Matemáticas GENERALES: El examen constará de dos opciones (dos
Unidad III: Curvas en R2 y ecuaciones paramétricas
Unidad III: Curvas en R2 y ecuaciones paramétricas 2.1 Ecuación paramétrica de la línea recta. La recta constituye una parte fundamental de las matemáticas. Existen numerosas formas de representar una
A continuación se presenta la información de la altura promedio para el año de 1998 en Holanda de hombres y mujeres jóvenes.
M150: Creciendo A) Presentación del problema LOS JOVENES CRECEN MAS ALTO A continuación se presenta la altura promedio para el año de 1998 en Holanda de hombres y mujeres jóvenes. B) Preguntas del problema
Filtros digitales dominio del espacio dominio de la frecuencia
Tema 3: Filtros 1 Filtros digitales Los filtros digitales constituyen uno de los principales modos de operar en el procesamiento de imágenes digitales. Pueden usarse para distintos fines, pero en todos
Geometría Analítica Agosto 2016
Laboratorio #1 Distancia entre dos puntos I.- Demostrar que los puntos dados no son colineales. 1) A (0, 5), B(3, 1), C( 11, 27) 2) A (1, 4), B( 2, 10), C(5, 5) II.- Demostrar que los puntos dados forman
Sistemas lineales con parámetros
4 Sistemas lineales con parámetros. Teorema de Rouché Piensa y calcula Dado el siguiente sistema en forma matricial, escribe sus ecuaciones: 3 0 y = 0 z + y 3z = 0 y = Aplica la teoría. Escribe los siguientes
Tutorial sombras CE3X
Tutorial sombras CE3X 1 Introducción Este documento es un tutorial que explica detalladamente cómo calcular los patrones de sombras (caso general) para ser introducidos en el programa de certificación
ALGEBRA. Escuela Politécnica Superior de Málaga
ALGEBRA. Escuela Politécnica Superior de Málaga Tema 1. Espacios Vectoriales. Sistemas de ecuaciones. Espacio vectorial. Espacios vectoriales R n. Dependencia e independencia lineal. Base. Matrices y determinantes.
ÓPTICA GEOMÉTRICA: REFLEXIÓN Y REFRACCIÓN DE LA LUZ
1 ÓPTICA GEOMÉTRICA: REFLEXIÓN Y REFRACCIÓN DE LA LUZ INTRODUCCIÓN TEÓRICA: La característica fundamental de una onda propagándose por un medio es su velocidad (v), y naturalmente, cuando la onda cambia
ESTUDIO COMPLETO Y REPRESENTACIÓN DE UNA FUNCIÓN
ESTUDIO COMPLETO Y REPRESENTACIÓN DE UNA FUNCIÓN Teoría Práctica Los pasos a seguir para el estudio completo y representación de una Función son los siguientes: ) Hallar el Dominio de la función. En dicho
Tema 2.- Formas Cuadráticas.
Álgebra. 004 005. Ingenieros Industriales. Departamento de Matemática Aplicada II. Universidad de Sevilla. Tema.- Formas Cuadráticas. Definición y representación matricial. Clasificación de las formas
AYUDAS SOBRE LA LINEA RECTA
AYUDAS SOBRE LA LINEA RECTA AYUDA : Grafiquemos la función Solución: Se debe escoger algunos números que representan a la variable x, para obtener el valor de la variable y respectivamente así: El proceso:
95 EJERCICIOS de RECTAS
9 EJERCICIOS de RECTAS Forma paramétrica: 1. Dado el punto A(,3) y el vector director ur = (1, ), se pide: a) Hallar las ecuaciones paramétricas de la recta r que determinan. b) Obtener otros tres puntos
IES Fco Ayala de Granada Septiembre de 2011 (Septiembre Modelo 2) Solución Germán-Jesús Rubio Luna
IES Fco Ayala de Granada Septiembre de 0 (Septiembre Modelo ) Germán-Jesús Rubio Luna UNIVERSIDADES DE ANDALUCÍA PRUEBA DE ACCESO A LA UNIVERSIDAD CURSO 00-0. MATEMÁTICAS II Opción A Ejercicio opción A,
APLICACIONES DE LA DERIVADA
APLICACIONES DE LA DERIVADA Ejercicio -Sea f: R R la función definida por f ( ) = + a + b + a) [ 5 puntos] Determina a, b R sabiendo que la gráfica de f pasa por el punto (, ) y tiene un punto de infleión
La galería a la derecha de la interfaz muestra las fotos ( ) y videos ( ) que ha tomado. Para regresar a la consola de aplicación de la cámara web.
CamShot CamShot le permite tomar fotos y videos con facilidad. Para activar CamShot, haga clic en en la consola de aplicación de cámara web de Kworld. La interfaz de CamShot aparecerá y mostrará la imagen
5.5 LÍNEAS TRIGONOMÉTRICAS
5.5 LÍNES TRIGONOMÉTRIS Sea (O, ) una circunferencia con centro en el origen de coordenadas O(0, 0) radio la unidad. Si se construe un ángulo con vértice en el origen sentido positivo podemos obtener las
Unidad II. 2.1 Concepto de variable, función, dominio, condominio y recorrido de una función.
Unidad II Funciones 2.1 Concepto de variable, función, dominio, condominio y recorrido de una función. Función En matemática, una función (f) es una relación entre un conjunto dado X (llamado dominio)
CINEMÁTICA: ESTUDIO DEL MOVIMIENTO. Cinemática es la parte de la Física que estudia la descripción del movimiento de los cuerpos.
CINEMÁTICA: ESTUDIO DEL MOVIMIENTO Cinemática es la parte de la Física que estudia la descripción del movimiento de los cuerpos. 1. Cuándo un cuerpo está en movimiento? Para hablar de reposo o movimiento
III: Geometría para maestros. Capitulo 1: Figuras geométricas
III: Geometría para maestros. Capitulo : Figuras geométricas SELECCIÓN DE EJERCICIOS RESUELTOS SITUACIONES INTRODUCTORIAS En un libro de primaria encontramos este enunciado: Dibuja un polígono convexo
Hay veces que no basta con dos proyecciones para definir un objeto; es necesaria una tercera proyección.
U.T. 3.- REPRESENTACIÓN GRAFICA 1. SISTEMA DIEDRICO 2. PERSPECTIVA CABALLERA 3. PERSPECTIVA ISOMÉTRICA 4. NORMALIZACIÓN Y ACOTAMIENTO 1. SISTEMA DIEDRICO Un diedro es el ángulo formado por dos planos que
Algebra lineal y conjuntos convexos
Apéndice A Algebra lineal y conjuntos convexos El método simplex que se describirá en el Tema 2 es de naturaleza algebraica y consiste en calcular soluciones de sistemas de ecuaciones lineales y determinar
Evidentemente, la superficie es un triángulo rectángulo de base 1 y altura también la unidad, por tanto su área es 1/2.
LA INTEGRAL DEFINIDA En los dos temas anteriores se ha hecho el estudio de las primitivas de una función, descubriendo distintos procedimientos para el cálculo de primitivas, es decir, se han encontrado
Guía de Estudio Algebra y Trigonometría Para Ciencias Agropecuarias
Guía de Estudio Para Ciencias Agropecuarias Unidad: Geometría Analítica Los siguientes ejercicios están relacionados con los principales temas de Geometría Analítica e involucra todos los conocimientos
ANEXO 1. CALIBRADO DE LOS SENSORES.
ANEXO 1. CALIBRADO DE LOS SENSORES. Las resistencias dependientes de la luz (LDR) varían su resistencia en función de la luz que reciben. Un incremento de la luz que reciben produce una disminución de
Matemáticas 2 Agosto 2015
Laboratorio # 1 Línea recta I.-Determina la ecuación de la recta que satisface las siguientes condiciones y exprésala en la forma general. Pasa por el punto (1,5) y tiene pendiente 2 Pasa por y Pendiente
Tema 3 Álgebra Matemáticas I 1º Bachillerato. 1
Tema 3 Álgebra Matemáticas I 1º Bachillerato. 1 TEMA 3 ÁLGEBRA 3.1 FACTORIZACIÓN DE POLINOMIOS LA DIVISIBILIDAD EN LOS POLINOMIOS Un polinomio P(x) es divisible por otro polinomio Q(x) cuando el cociente
lím lím Veamos como ejemplo el límite de la función polinómica f(x)=3x 2-8 en 1: x 1 (3x2 )-lím 8 x 1 =2 x 1 x)2 -lím x 1 8 =
LÍMITES LECCIÓN 7 Índice: Cálculo de ites en un punto. Epresión indeterminada L/0. Epresión indeterminada 0/0. Algunos ites de funciones irracionales. Otras técnicas básicas para el cálculo de ites. Problemas..-
FUNCIONES REALES DE VARIABLE REAL.
FUNCIONES REALES DE VARIABLE REAL. CORRESPONDENCIA. Se llama CORRESPONDENCIA entre dos conjuntos A y B a toda ley que asocia elementos del conjunto A con elementos del conjunto B. Se denota por : A B A
TEMA 4: TRIGONOMETRÍA. RAZONES TRIGONOMÉTRICAS
IES IGNACIO ALDECOA 19 TEMA 4: TRIGONOMETRÍA. RAZONES TRIGONOMÉTRICAS 4.1 Medida de ángulos. Equivalencias. Un ángulo es la región del plano comprendida entre dos semirrectas con origen común. A las semirrectas
EJEMPLOS DE PREGUNTAS Y ORIENTACIONES GENERALES SEGUNDO CICLO DE EDUCACIÓN MEDIA PRUEBA MATEMÁTICA 2013
Coordinación Nacional de Normalización de Estudios / División de Educación General EJEMPLOS DE PREGUNTAS Y ORIENTACIONES GENERALES SEGUNDO CICLO DE EDUCACIÓN MEDIA PRUEBA MATEMÁTICA 2013 DESCRIPCIÓN DE
Guía de Live Movie Maker
QUÉ ES WINDOWS MOVIE MAKER Windows Movie Maker es un programa que viene incluido en Windows 7 (si tienes Windows 8 debes descargarlo de internet), sirve para crear presentaciones de imágenes y videos.
REPRESENTACIÓN DE FUNCIONES
REPRESENTACIÓN DE FUNCIONES Página 5 REFLEXIONA Y RESUELVE Descripción de una gráfica Copia en tu cuaderno los datos encuadrados en rojo. A partir de ellos, y sin mirar la gráfica que aparece al principio,
Ecuaciones Lineales en Dos Variables
Ecuaciones Lineales en Dos Variables Una ecuación lineal en dos variables tiene la forma general a + b + c = 0; donde a, b, c representan números reales las tres no pueden ser iguales a cero a la misma
MATEMÁTICAS 2º DE ESO
MATEMÁTICAS 2º DE ESO LOE TEMA VII: FUNCIONES Y GRÁFICAS Coordenadas cartesianas. Concepto de función. Tabla y ecuación. Representación gráfica de una función. Estudio gráfico de una función. o Continuidad
Distancia focal de una lente convergente (método del desplazamiento) Fundamento
Distancia focal de una lente convergente (método del desplazamiento) Fundamento En una lente convergente delgada se considera el eje principal como la recta perpendicular a la lente y que pasa por su centro.
I.E.S. Miguel de Cervantes (Granada) Departamento de Matemáticas GBG 1
PRODUCTO ESCALAR INTRODUCCIÓN El espacio vectorial de los vectores libres del plano se caracteriza por tener definidas dos operaciones: una interna, suma de vectores, y otra externa, producto de un número
El alumno debe responder a una de las dos opciones propuestas, A o B. En cada pregunta se señala la puntuación máxima. OPCIÓN A
Prueba de Acceso a la Universidad SEPTIEMBRE Bachillerato de Ciencias Sociales El alumno debe responder a una de las dos opciones propuestas, A o B En cada pregunta se señala la puntuación máima OPCIÓN
Elaboración de Documentos en Procesadores de Textos
Las tablas permiten organizar la información en filas y columnas, de forma que se pueden realizar operaciones y tratamientos sobre las filas y columnas. Por ejemplo, obtener el valor medio de los datos
FICHAS COMPLEMENTARIAS. REFLEXIÓN
FICHAS COMPLEMENTARIAS. REFLEXIÓN I.- DESCRIPCIÓN DE LOS COMPONENTES Para realizar las prácticas de óptica vas a usar: 1.- Banco óptico: es una base metálica sobre la que colocar los diferentes montajes.
LA CIRCUNFERENCIA. La circunferencia es la sección producida por un plano perpendicular al eje.
LA CIRCUNFERENCIA La circunferencia es la sección producida por un plano perpendicular al eje. β = 90º La circunferencia es un caso particular de elipse. Se llama circunferencia al lugar geométrico de
