330 likes | 754 Views
Procesamiento Digital de Imágenes. Ideas Básicas. Introducción. Una imagen digital es una fotografía que ha sido convertida a un formato binario (consistente de 1s y 0s) que puede ser leído por una computadora.
E N D
Procesamiento Digital de Imágenes Ideas Básicas Lino Evgueni Coria Mendoza
Introducción • Una imagen digital es una fotografía que ha sido convertida a un formato binario (consistente de 1s y 0s) que puede ser leído por una computadora. • Se obtienen normalmente convirtiendo señales continuas en formato digital, aunque recientemente se han popularizado los sistemas completamente digitales (cámaras de fotografía y video digitales). Lino Evgueni Coria Mendoza
Aplicaciones • astronomía • radiología • ultrasonido • microscopía • robots • vigilancia • física de partículas • sensado remoto Lino Evgueni Coria Mendoza
Aplicaciones • radar • reconocimiento aéreo y mapeo • oceanografía • inspección industrial • navegación autónoma • sismología • meteorología Lino Evgueni Coria Mendoza
Temas • Tipos de imágenes • Digitalización de imágenes • Imágenes en color • El histograma • Operaciones lineales de punto • Operaciones no lineales de punto • Operaciones aritméticas entre imágenes • Operaciones geométricas en imágenes Lino Evgueni Coria Mendoza
Tipos de Imágenes • Imágenes de reflexión: sensan la radiación que ha sido reflejada por las superficies de los objetos (información obtenida: forma, textura, color). • Imágenes de emisión: los objetos que se transforman en imágenes son originalmente luminosos (focos, estrellas). • Imágenes de absorción: proporcionan información sobre la estructura interna del objeto (la radiación pasa a través de él). Lino Evgueni Coria Mendoza
Digitalización de Imágenes • Las imágenes disponibles de manera natural son por lo regular analógicas, una vez que la imagen es sensada debe convertirse a formato digital, es decir, la señal está definida en un dominio discreto (espacio) [muestreo], y toma valores de un conjunto finito [cuantización]. Lino Evgueni Coria Mendoza
Muestreo • Es el proceso de convertir un espacio continuo en uno discreto. • Es importante que con el proceso de muestreo no se pierda información visual. • Las imágenes digitales son indexadas mediante números enteros a lo largo de cada dimensión, permitiendo así ser procesadas como arreglos multidimensionales de números (o sea, matrices). • Cada uno de los elementos recibe el nombre de picture element (pixel para los cuates). • El número de filas y columnas en una imagen es por lo regular una potencia de dos (¿por qué?). Lino Evgueni Coria Mendoza
Ejemplos de muestreo:256x256, 128x128, 64x64 Lino Evgueni Coria Mendoza
Es el proceso de convertir una imagen con valores continuos (un número infinito de posibles intensidades) en una imagen con valores discretos (un número finito de posibles intensidades). Esto se logra normalmente redondeando o truncando. Cuando se toma un pixel de una imagen en ‘blanco y negro’ (en realidad, tonalidades de grises) y se cuantiza, se le asigna un número que es parte de un conjunto finito (el rango de nivel de gris, o sea, los valores redondeados). Por lo regular el conjunto finito comprende enteros no negativos que van de 0 a K-1, donde K = 2B. Entonces el número de posibles niveles de gris es K y el número de bits por cada pixel es B. Cuantificación Lino Evgueni Coria Mendoza
Ejemplo de cuantificación • La misma imagen (256x256) cuantificada con 7 bits (128 niveles de grises) y con 3 bits (8 niveles de grises). Lino Evgueni Coria Mendoza
Imágenes en color • Un ojo humano normal sensa los colores como combinaciones casi lineales de señales con distintas longitudes de onda, que corresponden aproximadamente a tres colores primarios que se usan en las cámaras de video: Rojo (R), Verde (G), y Azul (B). • Existen otros sistemas de colores, como el YIQ (luminance, in-phase chromatic, quadratic chromatic) que separa el brillo de la imagen de sus componentes cromáticos vía una transformación lineal invertible: Lino Evgueni Coria Mendoza
Imágenes en color (cont.) • El sistema RGB se usa en las cámaras de video de color, y el YIQ es el estándar para las transmisiones por televisión. • La mayoría de los algoritmos del procesamiento digital de imágenes están hechos para el caso monocromático (blanco y negro) y después se aplican a las imágenes en color. Lino Evgueni Coria Mendoza
IMREAD Read image from graphics file. • A = IMREAD(FILENAME,FMT) reads the image in FILENAME into A. If the file contains a grayscale intensity image, A is a two-dimensional array. If the file contains a truecolor (RGB) image, A is a three-dimensional (M-by-N-by-3) array. FILENAME is a string that specifies the name of the graphics file, and FMT is a string that specifies the format of the file. The file must be in the current directory or in a directory on the MATLAB path. If IMREAD cannot find a file named FILENAME, it looks for a file named FILENAME.FMT. Lino Evgueni Coria Mendoza
IMSHOW Display image. • IMSHOW(I,N) displays the intensity image I with N discrete levels of gray. If you omit N, IMSHOW uses 256 gray levels on 24-bit displays, or 64 gray levels on other systems. Lino Evgueni Coria Mendoza
Procesamiento básico de imágenes en escala de grises • Tipos de operaciones: • Operaciones de punto: se aplican a pixels de manera individual. La clave para estas operaciones es usar el histograma (se explica a continuación). • Operaciones aritméticas: se realizan entre imágenes de mismas dimensiones. Se usan para reducción de ruido y detección de movimiento. • Operaciones geométricas: Mediante ellas se cambia la apariencia de las imágenes. Como ejemplos están la traslación, rotación y distorsión. Lino Evgueni Coria Mendoza
El histograma de una imagen • Es la herramienta básica para las operaciones a nivel de pixel. • El histograma Hfde una imagen digital f es una gráfica de la frecuencia de ocurrencia de cada nivel de gris en f. • Hf es una función unidimensional con dominio {0, ..., K-1} y un rango de amplitud que puede ir de 0 hasta el número de pixels en la imagen, NM. Lino Evgueni Coria Mendoza
El histograma (cont.) • El histograma se obtiene con la ecuación si f contiene exactamente J pixels con el nivel de gris k, para cada k = 0, ..., K-1. • Nótese que la imagen no puede obtenerse en base a su histograma (¿por qué?) excepto para casos triviales (¿cuáles?) Lino Evgueni Coria Mendoza
El histograma (cont.) • El histograma es un método para determinar la distribución de niveles de gris en una imagen. • Para medir la brillantez de una imagen se obtiene la densidad óptica promedio (AOD por sus siglas en inglés). Puede obtenerse a partir de la imagen o empleando el histograma. Lino Evgueni Coria Mendoza
IMHIST Display histogram of image data. • IMHIST(I,N) displays a histogram with N bins for the intensity image I above a grayscale colorbar of length N. If you omit the argument, IMHIST uses a default value of N=256 if I is a grayscale image, or N=2 if I is a binary image. • Ejemplo: • I = imread('pout.tif'); • imhist(I) Lino Evgueni Coria Mendoza
Operaciones lineales de punto • Proporcionan un desplazamiento aditivo L y un factor de escala P para el nivel de gris. Analizaremos cada uno de estos efectos por separado. • Se deben evitar las condiciones de saturación |g[n]|<0 y |g[n]|>K-1, porque los niveles de grises pueden quedar mal definidos. • Una forma de hacer esto es truncar los valores que salgan de los límites, es decir, |g[n0]|<0 se convierte en |g[n0]|=0 y |g[n0]|>K-1 se fija como |g[n0]|=K-1. Lino Evgueni Coria Mendoza
Desplazamiento aditivo en una imagen • Suponiendo que P = 1 y |L| ≤ K-1. Un desplazamiento aditivo tiene la forma • Si L > 0, la imagen resultante g[n] será una versión más brillante de f[n]. Si L < 0, g[n] será una versión más oscura de la imagen original. • Esta es la relación entre los histogramas: Lino Evgueni Coria Mendoza
Una aplicación • Calibración de una serie de imágenes a un nivel de brillantez promedio. Útil para comparar imágenes de la misma escena tomadas en tiempos distintos. Se ecualizan las AODs de las imágenes a K/2. • Si Lm=AOD(fm), para m = 1, ..., n, las imágenes con AOD ecualizada g1, ..., gm están dadas por Lino Evgueni Coria Mendoza
Escalamiento de la imagen • Supóngase ahora que L = 0 y P > 0. • Hacemos un ajuste para asegurarnos que el valor resultante es un entero. INT[R] denota el entero más cercano que es menor que o igual a R. • Si P > 1, los niveles de gris de g cubrirán un rango mayor que los de f. Por el contrario, si P < 1, entonces g tendrá una distribución de grises más angosta. Lino Evgueni Coria Mendoza
El negativo de una imagen • ¿Qué valores de L y P utilizarías para obtener el negativo de una imagen? • ¿Cómo sería el histograma del negativo con respecto al de la imagen original? • Piensa en posibles aplicaciones. Lino Evgueni Coria Mendoza
Histograma expandido a la máxima escala • Se trata de una operación lineal de punto que expande el histograma de una imagen para que llene todo el rango de grises disponible. • Supóngase que una imagen f contiene un histograma comprimido con un nivel de gris mínimo de valor A y un nivel de gris máximo de valor B. • Encuentra valores para P y L que mapeen los valores A y B en 0 y K-1, respectivamente. Lino Evgueni Coria Mendoza
HISTEQ Enhance contrast using histogram equalization. • J = HISTEQ(I,N) transforms the intensity image I, returning in J an intensity image with N discrete levels. A roughly equal number of pixels is mapped to each of the N levels in J, so that the histogram of J is approximately flat. (The histogram of J is flatter when N is much smaller than the number of discrete levels in I.) The default value for N is 64. • Ejemplo: • I = imread('tire.tif'); • J = histeq(I); • imshow(I), figure, imshow(J) Lino Evgueni Coria Mendoza