430 likes | 691 Views
Procesamiento de Imágenes Médicas. Lección # 6-7: Algoritmos sobre imágenes. Noviembre , 2012. Agenda. Procesamiento del Histograma Análisis Ecualización Expansión / Contracción Segmentación de imágenes Thresholding Region Growing Watershed Percepción del Color Pseudocolor.
E N D
Procesamiento de ImágenesMédicas Lección #6-7: Algoritmossobreimágenes Noviembre, 2012
Agenda • Procesamiento del Histograma • Análisis • Ecualización • Expansión/Contracción • Segmentación de imágenes • Thresholding • Region Growing • Watershed • Percepción del Color • Pseudocolor Procesamiento de imágenes médicas
Procesamiento del histograma Trabajar con el histograma Procesamiento de imágenes médicas
Histograma • En unaimagen en gris, es la representacióngráfica de la frecuencia de ocurrencia de cadanivel de gris en unaimagen • Arreglounidimensional de valores h h(k) = nk = card{(x,y) | f(x,y) = k} • k = 0, 1, …, L-1 y Les el nro. de niveles de gris • carddenota la cardinalidad de un conjunto • En Matlab, la funciónimhist Procesamiento de imágenes médicas
Histograma • Un histogramanormalizado se define como: • nes el número total de píxeles • p(rk)es la probabilidad del k-ésimonivel de gris • Histograma de unaimagen de 8-bits: • Crear un arreglo de 256 posiciones • Inicializarlo en cero • Leer c/intensidad de píxel y sumar 1 en cadaposición Procesamiento de imágenes médicas
Analizando un Histograma Procesamiento de imágenes médicas
Analizando un Histograma Procesamiento de imágenes médicas
Ecualización • Cambiar la distribución de los valores de grisesparaobteneruna forma más “distribuida” • Función de distribuciónacumulativa • skes el nuevonivel de grisesparatodos los píxelesrk • En Matlab, empleando la funciónhisteq Procesamiento de imágenes médicas
Ecualización • Global (histeq) y local (adapthisteq) Procesamiento de imágenes médicas
Ecualización • Global (histeq) y local (adapthisteq) Procesamiento de imágenes médicas
Desplazamiento • El desplazamiento se puederealizar con imadd y imsubtract B = shift(I, +50) A-B A = original Procesamiento de imágenes médicas
Expansión • También conocidacomoinput cropping • Expande el histograma en el rango[rmin, rmax] del rangocompleto[0, L-1] • Cada valor r, esmapeado a un valor scomo • La expansiónaumenta el contraste • En Matlab, la funciónimadjust Procesamiento de imágenes médicas
Expansión Procesamiento de imágenes médicas
Contracción • También conocidacomooutput cropping • Contrae el histograma en el rango[rmin, rmax] a un rangomenor[smin, smax] • Cada valor r, esmapeado a un valor scomo • La contracción reduce el contraste • En Matlab, la funciónimadjust Procesamiento de imágenes médicas
Segmentación de imágenes Extraerregiones de interés Procesamiento de imágenes médicas
Segmentación • Proceso de particionarunaimagen en un conjunto de regionesdisjuntascuyaunión forma la imagencompleta • Estasregiones, generalmentecorresponden a objetos, fondo, etc. • La mayoría de los algoritmos de segmentación se basan en dos principios: • Discontinuidad • Similaridad Procesamiento de imágenes médicas
Segmentación • Procesocomplejodebido a: • Presencia de iluminacióndiscontinua • Sombras • Superposición de objetos • Pococontraste Procesamiento de imágenes médicas
Segmentación • Muchastécnicas ad-hoc • Las técnicaspuedenvariar de acuerdo a: • Tipo de imagen (binaria, gris, color) • Selección de la técnicamatemática (morfología, estadística, basada en grafos, etc.) • Tipo de característica (intensidad, color, textura, movimiento, etc.) • Enfoquealgoritmico (top-down, bottom-up, grafos) • Unaposibleclasificaciónes: métodosbasados en intensidad, basados en regiones y otrosmétodos. Procesamiento de imágenes médicas
Basados en intensidad • Conceptualmente, es un enfoquesencillo • Empleaestadísticas de los píxeles (usando un histograma) paradeterminarcuálespíxelespertenecen al background o foreground • Image thresholding: convertirunaimagen de variosniveles de intensidad a una con menos (usualmente 2) Procesamiento de imágenes médicas
Thresholding • IPT tieneunafunciónparaconvertirunaimagen en grises a binaria: im2bw • La funciónrecibecomoparámetro el threshold T • El algoritmo de unatécnicabásica de thresholdinges: • Inspeccionar el histograma (imhist) • Seleccionar el valor apropiado de T • Aplicar el valor seleccionado (im2bw) • Si el resultadoessatisfactorio, salvar la imagen. Sino, repetir los pasos 2-4 Procesamiento de imágenes médicas
Thresholding • Probemos el siguientealgoritmo: Ioriginal = imread('coins.jpg'); I = rgb2gray(Ioriginal); imshow(I); Id = im2double(I); % I is a uint8 grayscale image T = 0.5*(min(Id(:)) + max(Id(:))); deltaT = 0.01; % convergencecriterion done = false; while ~done g = Id >= T; Tnext= 0.5*(mean(Id(g)) + mean(Id(~g))); done = abs(T - Tnext) < deltaT; T = Tnext; end imshow(im2bw(I, T)); %whatmeans T? :-) Procesamiento de imágenes médicas
Thresholding • Ejercicio: empleando un thresholding “manual” compararlo con el algoritmo anterior y empleando la funcióngraythresh de Matlab Procesamiento de imágenes médicas
Basados en regiones • Concepto de conectividad. Partición de I en nregionesR1, R2, R3, R4 • Region growing • Comenzar en p e ir “creciendo” alrededor de éstamientras se cumpla el criterio de homogeneidad Procesamiento de imágenes médicas
Region Growing • Requiere de una(s) semilla(s) • Se necesitadefinir: • El criterio de similitud • ¿Cómo se selecciona la semilla? • El criterio de parada promedio de píxeles Procesamiento de imágenes médicas
Region Growing Procesamiento de imágenes médicas
Watershed • Técnicamorfológicaquesunombrederiva de la geografía • Watershed significa la líneadivisora (general-mente cordilleras/mon-tañas) que divide lasáreasdrenadaspordife-rentessistemasfluvia-les Procesamiento de imágenes médicas
Watershed • IPT tiene la funciónwatershed • Requiereunaimagen de entrada y el criterio de conectividad (4 u 8 vecinos) • Adicionalmente, en Matlabexisteunafunciónpara la distanciaque se usa en conjunto con watershed • Estafuncióncalcula la distancia de un píxel al píxelmáscercano de éstedistinto de 0. La función se llama bwdist y contienedistanciaEuclideana y de Ciudad (Manhattan) Procesamiento de imágenes médicas
Percepción del Color • Combinación de laspropiedades de la luz + el aspectopsicológico del sistema de visiónhumano • Los modelos de color esunaespecificación de un sistema de coordenadas y un subespacio, dondecada color esrepresentadocomo un punto • Puedenvariar de acuerdo al área de trabajo: • Fotografía • Física • Materiales • Algoritmos Procesamiento de imágenes médicas
Modelo RGB • Valoresdesde 0x00 hasta 0xFF por canal Procesamiento de imágenes médicas
Modelo CMY y CMYK • Emplea los 3 coloresprimarios (pigmentos): • Cyan • Magenta • Amarillo • Empleadoporlasimpresoras • El cuarto color: blacK(CMYK) • En Matlab, la conversión entre RGB y CMYK se realizar con la funciónimcomplement Procesamiento de imágenes médicas
Modelo HSV • Hue, describe el tipo de color (tono) • Saturation, medida de la “pureza” (diluido en blanco) • Value, intensidad de la luzreflejadadesde los objetos Procesamiento de imágenes médicas
Modelo HSV • Capacidad de distinguircoloresdistintospor un humano • Algoritmosbasados en HSV • Problemas con los valoresalrededor del rojo y conversión a RGB (costoso) • En Matlab: rgb2hsv y hsv2rgb Procesamiento de imágenes médicas
OtrosModelos • YIQ (NTSC), empleadopara la televisiónanalógica (América) • Y: luminancia, I: dos señales de color, Q: saturación • En Matlab, rgb2ntsc y ntsc2rgb • YCbCr, usadopara video digital • Y: luminancia, Cb: diferencia en azul, Cr: diferencia en rojo y valor referencia • En Matlab, rgb2ycbcr y ycbcr2rgb Procesamiento de imágenes médicas
PseudoColor • Realzarunaimagenmonocromaparapropósitosvisuales • Niveles de grises “opacan” regiones de interés (ejemplo: presencia de un tumor) • El ojohumanoescapaz de distinguir miles de intensidades de color, y solo 100 niveles de grises • Solucióntípica: usaruna LUT (lookup table) y contrastarcoloresconsecutivos • Diversastécnicasde pseudocolor Procesamiento de imágenes médicas
Intensity Slicing • En Matlab, la funcióngrayslice Procesamiento de imágenes médicas
Intensity Slicing Procesamiento de imágenes médicas
Otrastécnicas • Niveles de grises a transformaciones de color • Pseudocolor en el dominiode la frecuencia • Pseudolordespués de un proceso de segmentacióna cadaregión Procesamiento de imágenes médicas