procesamiento digital de imágenes lcc-594daniel.valdes/docs/pdi-5-opgeo-1.pdfinterpolación de los...

62
Procesamiento Digital de Imágenes LCC-594 Benemérita Universidad Autónoma de Puebla Facultad de Ciencias de la Computación Daniel Alejandro Valdés Amaro, Ph.D

Upload: dohanh

Post on 21-Jun-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

Procesamiento Digital de Imágenes LCC-594Benemérita Universidad Autónoma de Puebla

Facultad de Ciencias de la Computación

Daniel Alejandro Valdés Amaro, Ph.D

Page 2: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

5. Operaciones geométricas

Page 3: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

Objetivo: Conocer los métodos de

transformaciones geométricas sobre una

imagen digital.

Page 4: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

I. Traslación

II. Rotación

III. Escala

IV. Ampliación y reducción simples

V. Métodos de interpolación

5. Operaciones geométricas

Page 5: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Al igual que en los gráficos por computadora, en el procesamiento de imágenes existen operaciones que cambian la posición y el tamaño de las imágenes.

• Es decir, las transformaciones geométricas modifican las relaciones espaciales entre pixeles ya que los valores de los pixeles se mantienen y cambia su posición espacial.

• Una transformación geométrica consiste de dos operaciones básicas:

Operaciones geométricas

Page 6: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

1. Una transformación espacial que define la reubicación de los pixeles en el plano imagen.

2. Interpolación de los niveles de grises, los cuales tienen que ver con la asignación de los valores de intensidad de los pixeles en la imagen transformada.

• Las transformaciones afines son las más usadas en imágenes digitales 2D por su representación y manejo matricial.

• Las transformaciones afines son generalizaciones de las transformaciones Euclidianas y bajo éstas no se preservan ni el largo ni el ángulo de los objetos transformados.

Operaciones geométricas

Page 7: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Las distancias sólo se preservan entre puntos en la misma línea o en líneas paralelas (colineales). La escala y el inclinación pertenece a este tipo de transformaciones.

• Hay que tomar en cuenta que en muchos casos al aplicar una operación geométrica se cambia el tamaño de las imágenes, lo cuál es importante para el desplegado y las operaciones de la interfase de deshacer y rehacer.

Operaciones geométricas

Page 8: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

5.1 Traslación

Page 9: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Esta operación consiste en desplazar un pixel original p(xi, yi) en la imagen original hasta una nueva posición, utilizando:

• A veces será necesario realizar algún tipo de interpolación ya que los desplazamiento pueden no ser enteros.

• Un detalle a considerarse en el proceso de traslación es el hecho de que la imagen se desplaza con respecto a la posición original y una zona de la imagen contenida en el lienzo rectangular deberá ser llenada con un color arbitrario.

Traslación

(1)

Page 10: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

Traslación

(a) (b)

(a) Imagen original y (b) imagen trasladada.

Page 11: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

5.2 Rotación

Page 12: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• El proceso de rotación consiste en girar la imagen en un ángulo definido. La rotación se encuentra dada por las ecuaciones:

donde x0 y y0 son las coordenadas del centro de rotación y 𝜃 es el ángulo de rotación en sentido de manecillas del reloj.

• Entre los problemas que debemos atender para aplicar esta transformación están los siguientes:

Rotación

(2)

Page 13: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

1. Se debe definir un centro de rotación para aplicar la transformación.

Rotación

Page 14: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

1. Se debe definir un centro de rotación para aplicar la transformación.

2. Antes de aplicar la transformación será necesario calcular el tamaño de la imagen rotada y de éste las dimensiones de la matriz donde se almacenará.

Rotación

Page 15: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

1. Se debe definir un centro de rotación para aplicar la transformación.

2. Antes de aplicar la transformación será necesario calcular el tamaño de la imagen rotada y de éste las dimensiones de la matriz donde se almacenará.

3. Dado que los lienzos son rectangulares, se deben rellenar las esquinas de la imagen rotada con algún color arbitrario, ya que para la mayoría de los valores de 𝜃, la imagen rotada será más grande que la original (las excepciones se dan para 𝜃 = ±90º y 180º). Esto introducirá información que no esta presente en la imagen original.

Rotación

Page 16: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

4. Como 𝜃 es arbitrario en general al transformar la coordenada (x, y) de algún pixel, dado que x y y son enteros, la transformación nos regresará un número real y nos veremos obligados a redondear, esto puede provocar que más de un pixel de la imagen original se mapee en el mismo en la imagen transformada. Esto puede provocar que algunos pixeles no se llenen y se produzcan huecos (que forman patrones de tipo mosaico) en la imagen transformada.

• El primer aspecto se puede resolver usando el “centro” de la imagen como eje de rotación, esto implica que se debe aplicar una transformación de translación, rotar y luego deshacer la traslación inicial, esta es la regla que las técnicas estándares de graficado indican.

Rotación

Page 17: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Es normal que este proceso genere coordenadas negativas, motivo por el cual se debe introducir una corrección ya que los índices de las matrices no deben ser negativos en general.

• El segundo problema se puede resolver mapeando las esquinas de la imagen original, es decir transformar los puntos (0, 0), (N - 1, 0), (0, M - 1) y (N - 1, M - 1), y a partir de su mapeo encontrar las dimensiones del lienzo que contiene a la imagen rotada.

Rotación

Page 18: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• El tercer problema se puede resolver eligiendo un color de fondo, se llena la matriz de destino ya dimensionada y luego se mapea la imagen original punto a punto.

• Y finalmente el cuarto problema (redondeo), se incluye en el algoritmo al momento de hallar los índices del pixel transformado.

Rotación

Page 19: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

Rotación

Imagen original e imagen rotada en 90º.

Page 20: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

Rotación

Imagen rotada en 180º y 45º.

Page 21: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

5.3 Escala

Page 22: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Las operaciones más frecuentes corresponden a las de cambio de tamaño o escala, a estas muchas veces se les llama operaciones de zoom por su analogía con el efecto que hace una lente en una cámara analógica o digital.

• Se pueden distinguir dos clases de métodos: aquellos que reducen el tamaño y los que lo incrementan. A los primeros se les llama de reducción y a los segundos de ampliación.

• En el primer caso es claro que se producirá una pérdida de información en la imagen resultante debido a que el tamaño de la misma es menor y en el segundo caso se tendrán que proponer algoritmos que propongan como estimar el tono o color de los pixeles nuevos que se crean al ampliar la imagen.

Escala

Page 23: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• En este caso se debe estar consciente de que se “inventar” información que no esta presente en la imagen original, lo cual puede producir artefactos en la imagen ampliada.

• Diremos que un artefacto es un elemento que es producido por un algoritmo de transformación que no está presente en la imagen original, pero aparece en la imagen producto de la transformación.

• En general los artefactos no son deseables pues introducen elementos indeseables que se pueden considerar como ajenos a los datos originales.

Escala

Page 24: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Las transformaciones más simples de cambio de tamaño corresponden a la ampliación por 2 en ambas dimensiones y la reducción a la mitad de ellas.

• De forma general tenemos que esta operación es similar a un cambio de escala, la cuál se puede generalizar con las ecuaciones:

Escala

(3)

Page 25: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

5.3.1 Ampliación y reducción simples

Page 26: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Las transformaciones más simples de cambio de tamaño corresponden a la ampliación por 2 en ambas dimensiones y la reducción a la mitad de ellas.

• En el caso de a ampliación simple, el algoritmo consiste en la duplicación de cada pixel en la imagen resultante, es decir ya que el alto y ancho de la imagen final corresponden al doble del valor de las propiedades correspondientes originales lo mas simple es reproducir el pixel original en los vecinos mapeados.

• Si nos enfocamos en el pixel que se encuentra en la coordenada corriente (x, y), entonces en la imagen ampliada le corresponderán cuatro pixeles en la coordenada (2x, 2y) en la imagen ampliada, en la figura siguiente se muestra el fenómeno.

Ampliación y reducción simples

Page 27: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

Ampliación y reducción simples

Pixeles correspondientes al mapeo de duplicación de un pixel dado.

Page 28: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Para el caso de la reducción simple, hay que considerar que la imagen resultante tendrá la mitad de ancho y alto respecto a la original, por lo que el método consiste la inserción de los pixeles pares de la imagen original (0, 2, 4, 6,…) en la imagen resultante y en la eliminación sistemática de pixeles intercalados (1, 3, 5, 7,… ) de la imagen original.

• El proceso se debe hacer en las dos dimensiones de la imagen original, por tanto en este caso se perderá información al realizarse la reducción.

Ampliación y reducción simples

Page 29: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Es claro que al realizar este proceso se pierde el 75% de la información que contiene la imagen original y en caso que no se guarde una copia de ella el proceso inverso no recuperará dicha información.

• En la figura siguiente se hace muestra el efecto de éstos dos procesos.

Ampliación y reducción simples

Page 30: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

Ampliación y reducción simples

(a) (b) (c)

(a)Imagen ampliada al doble, (b) Imagen original y (c) imagen reducida a la mitad.

Page 31: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

5.3.2 Métodos de interpolación

Page 32: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• En general se denomina interpolación a la obtención de nuevos puntos partiendo del conocimiento de un conjunto discreto de puntos.

• De este modo, el problema trata de que a partir de n parejas de puntos (xk, yk), se pueda obtener una función f que verifique:

a la que se denomina función interpolante de dichos puntos con k = 1,…,n. A los puntos xk se les llama nodos.

Métodos de interpolación

(4)

Page 33: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• A l g u n a s f o r m a s d e interpolación que se utilizan con frecuencia son la interpolación lineal, la interpolación polinómica (de la cual la anterior es un caso par ticular), la interpolación por medio d e s p l i n e o l a interpolación polinómica de Hermite.

Métodos de interpolación

Interpolación lineal: la línea azul representa la interpolación lineal entre los puntos rojos.

Page 34: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Por ejemplo, en la interpolación lineal se utilizan dos puntos, (xa, ya) y (xb, yb), para obtener un tercer punto interpolado (x, y) a partir de la siguiente fórmula:

• La interpolación lineal es rápida y sencilla, pero no muy precisa.

• En el campo de la fotografía y de las imágenes digitales, la interpolación aplica este mismo método para conseguir un tamaño mayor de la imagen inicial, rellenando la información que falta con datos que no existen en la imagen original a partir de un algoritmo.

Métodos de interpolación

(5)

Page 35: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Así, la interpolación consiste en el proceso para estimar los valores de intensidad de los pixeles de una imagen en una posición cualquiera, como una función de los pixeles que lo rodean.

Métodos de interpolación

Proceso de interpolación para la ampliación de imágenes.

Page 36: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Los algoritmos de interpolación se pueden agrupar en dos categorías.

• Algoritmos no adaptativos: estos métodos tratan a todos los pixeles por igual. Dependiendo de su complejidad, estos usan cualquier número, desde 0 a 256 (o más) de los pixeles adyacentes para la interpolación. Mientras más pixeles adyacentes se incluyan, la interpolación será más precisa, a expensas del tiempo de procesamiento. Estos algoritmos se pueden usar tanto para distorsionar como cambiar el tamaño de una foto. Aquí se incluyen los métodos del vecino más cercano, bilineal, bicúbica, esplines, sinc, lanczos y otros.

Métodos de interpolación

Page 37: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Algoritmos adaptativos: cambian dependiendo de lo que están interpolando, es decir, intentan encontrar un balance entre los bordes nítidos y las textura suaves. En muchos casos se aplica una versión diferente del algoritmo (que trabajan pixel por pixel) cuando detectan la presencia de un borde, con el objetivo de minimizar los artefactos de interpolación antiestéticos en las regiones donde son más evidentes. Estos algoritmos están diseñados principalmente para maximizar detalles libres de artefactos en fotografías ampliadas, por lo que algunos no pueden ser utilizados para distorsionar o girar una imagen. En esta categoría se incluyen muchos algoritmos en software con licencia, tales como: Qimage, Pro PhotoZoom, Genuine Fractals y otros.

Métodos de interpolación

Page 38: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Se verán tres métodos no apdaptativos para realizar la interpolación y los tres funcionan de forma similar.

• En cada caso para determinar el valor de un pixel interpolado primero se encuentra el punto en la imagen original que corresponde a la imagen interpolada.

• Luego, se asigna el valor del pixel interpolado calculando el promedio ponderado de el conjunto de pixeles hallados en la vecindad de dicho punto.

• Los tres métodos difieren en general el conjunto de pixeles que se consideran.

Métodos de interpolación

Page 39: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Uno de los algoritmos más simples de interpolación es interpolación de vecino más cercano. En este método, la parte fraccionaria de las coordenadas del pixel se descartan y el valor de brillo de los pixeles en la dirección resultante en la imagen de origen se copia en la imagen ampliada.

• Debido a la inexactitud de la correspondencia espacial entre las dos imágenes, se harán más copias de ciertos pixeles de la imagen original que a otros.

• Esto puede resultar en distorsión espacial de las características de la imagen con zoom y la interpolación resultante del vecino más próximo es por lo tanto poco confiable.

Interpolación del vecino más cercano

Page 40: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Para factores de zoom pares (como 2X y 4X), la interpolación del vecino más cercano produce los mismos resultados que el método de ampliación y reducción simples antes visto.

• En este caso, se supone que el pixel a ser interpolado toma el mismo valor que el más cercano de entre los cuatro que lo rodean; por eso el nombre de vecino más próximo.

Interpolación del vecino más cercano

Page 41: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• En matemáticas, la interpolación bilineal es una extensión de la interpolación lineal para interpolar funciones de dos variables (por ejemplo, x y y) en un plano de 2D regular.

• La función de interpolación no debe usar el término de x2 o y2, pero si el xy, que es la forma bilineal de x y y.

• La idea clave es realizar la interpolación lineal primero en una dirección y luego en la otra. Aunque cada paso es lineal en los valores de las muestras y en la posición, la interpolación en su conjunto no es lineal sino cuadrática en la ubicación de la muestra.

Interpolación bilineal

Page 42: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Supongamos que se desea encontrar el valor d e l a f u n c i ó n f , desconocida en el punto P = (x, y) (ver figura).

• S e s upone que s e conoce el valor de f en los cuatro puntos Q11 = (x, y1), Q12 = (x1, y2), Q21 = (x2, y1) y Q22 = (x2, y2).

Interpolación bilineal

Los cuatro puntos rojos muestran los puntos de los datos y el punto verde es el punto a interpolar.

Page 43: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• En el contexto de imágenes digitales, la interpolación bilineal utiliza los 4 valores de los pixeles más próximos que están situados en direcciones diagonales de un pixel dado con el fin de encontrar los valores de los colores apropiados de intensidad de dicho pixel.

• Es decir, considera la vecindad más cercana de 2×2 valores de pixeles circundantes en cada posición calculada del pixel desconocido.

• Luego toma un promedio ponderado de los 4 pixeles para obtener el valor final interpolado.

Interpolación bilineal

Page 44: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• El peso de cada uno de los 4 valores de pixeles se basa en la distancia calculada de cada pixel (en el espacio 2D) de cada uno de los puntos conocidos.

Interpolación bilineal

Page 45: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• De forma geométrica (figura siguiente-(a)), el valor en el punto negro es la suma del valor en cada punto de color multiplicado por el área del rectángulo del mismo color, dividida por el área total de todos los cuatro rectángulos.

Interpolación bilineal

Page 46: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

Interpolación bilineal

(a) (b)(a) Representación geométrica de la interpolación bilineal y (b) ejemplo numérico del cálculo de un pixel utilizando

interpolación bilineal.

Page 47: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Teniendo en cuenta lo anterior, como se ve en el ejemplo de la figura anterior-(b), el valor de intensidad en el pixel calculado para estar en la fila 20.2, columna 14.5 se puede calcular primero interpolando linealmente entre los valores en la columna 14 y 15 en cada una de las filas 20 y 21, dando:

y después se interpola linealmente entre estos valores, dando como resultado:

Interpolación bilineal

Page 48: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Este algoritmo reduce parte de la distorsión visual causada por el cambio de tamaño de una imagen en un factor de zoom no entero, a diferencia de la interpolación del vecino más cercano, lo que hará aparecer algunos pixeles más grandes que otros en la imagen redimensionada.

• La interpolación bilineal tiende sin embargo a producir un mayor número de artefactos de interpolación (como aliasing, efectos de difuminado y halos de borde) que técnicas computacionalmente más exigentes, tales como la de interpolación bicúbica.

Interpolación bilineal

Page 49: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• En matemáticas, la interpolación bicúbica es una extensión de la interpolación cúbica para la interpolación de puntos de datos en base a una malla regular dimensional.

• La interpolación bicúbica se puede lograr ya sea utilizando polinomios de Lagrange, esplines cúbicos, o con el algoritmo de convolución cúbica.

• En el procesamiento de imágenes, la interpolación bicúbica se prefiere generalmente en lugar de la interpolación bilineal o la del vecino más cercano para el remuestreo de imagen, cuando la velocidad no es un problema.

Interpolación bicúbica

Page 50: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• En contraste con la interpolación bilineal, que sólo toma en cuenta 4 pixeles (2×2), la interpolación bicúbica considera 16 pixeles (4×4).

• Así, el método de la Interpolación bicúbica implica ajustar una serie de polinomios cúbicos a los valores de brillo contenidos en una matriz de pixeles de 4×4 que rodean la dirección calculada.

• En primer lugar, cuatro polinomios cúbicos, f(i) (con i = 0, 1, 2, 3) están instalados en los puntos de control en la dirección y (la elección de la dirección de partida es arbitraria).

Interpolación bicúbica

Page 51: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• A continuación, la parte fraccionaria de la dirección del pixel calculada en la dirección del eje y se usa para encajar con otro polinomio de tercer grado en la dirección x, en base a los valores de brillo interpolados que se encuentran en las curvas.

• Sustituyendo la parte fraccionaria de la dirección del pixel calculada en la dirección x en el polinomio cúbico resultante proporciona entonces el valor de brillo del pixel interpolado.

• Lo anterior se resumen en la figura siguiente.

Interpolación bicúbica

Page 52: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

Interpolación bicúbica

Representación gráfica del proceso de la interpolación bicúbica.

Page 53: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• La elección del polinomio utilizado en el algoritmo de interpolación bicúbica puede tener un impacto significativo en la precisión y la calidad visual de la imagen interpolada.

• Los esplines son funciones polinómicas a trozos que se suelen utilizar en los algoritmos de interpolación bicúbica.

• Un requisito importante de los esplines utilizados para la interpolación bicúbica es que siempre se deben interpolar los valores de brillo de los pixeles contenidos en la rejilla de control de 4×4.

Interpolación bicúbica

Page 54: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Debido a que muchas de las funciones de esplines tienen parámetros de control que están sujetos a la elección del programador, la posibilidad de poder reproducir los resultados, se convierte en un problema cuando se desean comparan los resultados de los algoritmos de interpolación bicúbica entre imágenes.

• Dado que las imágenes remuestreadas usando la interpolación bicúbica son más suaves y tienen menos artefactos de interpolación, es el método usada por programas como Adobe Photoshop o Paint Shop Pro, y es el método de interpolación considerado estándar (promedia 16 pixeles adyacentes).

Interpolación bicúbica

Page 55: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Photoshop además usa algunas variaciones como interpolación bicúbica enfocada o interpolación bicúbica suavizada que se basa en aplicar algunos cambios a la imagen final.

Interpolación bicúbica

Page 56: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

Ejemplos interpolación

Page 57: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

Ejemplos interpolación

Vecino más cercano

Page 58: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

Ejemplos interpolación

Bilineal

Page 59: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

Ejemplos interpolación

Bicúbica

Page 60: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• En la reducción, es evidente que se pierde información original de la imagen, generalmente sin efectos de pixelado.

• Sin embargo, en caso de existir cambios bruscos en la tonalidad de los pixeles, se pueden presentar efectos indeseables.

• En el caso de la reducción simple, la imagen resultante va a contener los pixeles en las renglones/columnas pares (o impares) de la imagen original.

Reducción de pixeles

Page 61: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

• Pero para disminuir la posibilidad de artefactos, al igual que en la ampliación, un valor de pixel se puede obtener a partir de la aplicación de algún método, ya sea de interpolación o de otro tipo.

• Por ejemplo, un valor de pixel se puede obtener a partir del promedio de los pixeles vecinos (figura siguiente):

Reducción de pixeles

(6)

Page 62: Procesamiento Digital de Imágenes LCC-594daniel.valdes/docs/PDI-5-OpGeo-1.pdfInterpolación de los niveles de grises, los cuales tienen que ... el alto y ancho de la imagen final

Reducción de pixeles

Reducción de pixeles por medio del promedio de los pixeles vecinos.