Más contenido relacionado La actualidad más candente (20) Similar a Imagen Morfologicas (8) Imagen Morfologicas6. Dilatación: Escala de grises % Ejemplo de dilatación % Imagen de entrada I=[0 0 0 0 0 0 0; 0 0 0 0 0 0 0; 0 0 15 27 8 0 0; 0 0 100 95 1 0 0; 0 0 125 30 2 0 0; 0 0 0 0 0 0 0; 0 0 0 0 0 0 0]; imshow(imresize(I,[520,520])); % Se define el elemento estructural Ele=strel('square',3); % Se aplica dilatación I1=imdilate(I, Ele); figure; imshow(imresize(I1,[520,520])); 15 27 8 100 95 1 125 30 2 1 1 1 1 1 1 1 1 1 15 27 8 100 125 1 125 30 2 7. Dilatación: Escala de grises(II) >> I1 0 0 0 0 0 0 0 0 15 27 27 27 8 0 0 100 100 100 95 8 0 0 125 125 125 95 8 0 0 125 125 125 95 2 0 0 125 125 125 30 2 0 0 0 0 0 0 0 0 % Ejemplo de dilatación % Imagen de entrada I=[0 0 0 0 0 0 0; 0 0 0 0 0 0 0; 0 0 15 27 8 0 0; 0 0 100 95 1 0 0; 0 0 125 30 2 0 0; 0 0 0 0 0 0 0; 0 0 0 0 0 0 0]; imshow(imresize(I,[520,520])); % Se define el elemento estructural Ele=strel('square',3); % Se aplica dilatación I1=imdilate(I, Ele); figure; imshow(imresize(I1,[520,520])); 10. Erosión: Escala de grises Si en el ejemplo anterior del programa MATLAB se sustituye la función imdilate por imerode resulta: I=[0 0 0 0 0 0 0; 0 0 0 0 0 0 0; 0 0 15 27 8 0 0; 0 0 100 95 1 0 0; 0 0 125 30 2 0 0; 0 0 0 0 0 0 0; 0 0 0 0 0 0 0]; I1 =[ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ] Entrada Salida 12. Elemento Estructural Elemento estructural: Define la forma y el tamaño de la vecindad del píxel que será analizado, para posteriormente alterar su valor Composición: Formada por ceros y unos de forma y tamaño arbitrario en la cual las posiciones donde está el uno define la vecindad Matriz que define el elemento estructural : Tiene un tamaño muy inferior al tamaño de la matriz original que define la imagen a la que modificará 13. Elemento Estructural (II) Origen del elemento estructural Centro=(tamaño+1)/2 Para el elemento estructural cuadrado de tamaño 3x3 el centro será: Centro=(3+1x3+1)/2=2x2 (3x3) 1 1 1 1 1 1 1 1 1 14. Elemento Estructural (III) >> ee=strel('diamond', 3) 0 0 0 1 0 0 0 0 0 1 1 1 0 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 1 1 1 0 0 0 0 0 1 0 0 0 >> ee=strel('disk', 4) 0 0 1 1 1 0 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 1 1 1 0 0 15. Elemento Estructural (IV) >> a=[0 1 0 1; 0 0 0 0; 0 0 0 0; 1 0 1 0]; >> se=strel('arbitrary',a) 0 1 0 1 0 0 0 0 0 0 0 0 1 0 1 0 >> ee=strel('line', 7, 135) 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 16. Elemento Estructural (V) >> ee=strel('octagon', 3) 0 0 1 1 1 0 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 1 1 1 0 0 >> ee=strel('rectangle', [4 3]) 1 1 1 1 1 1 1 1 1 1 1 1 20. Ejemplo de aplicación de la dilatación >> I=imread('pirata.jpg'); >> II=im2bw(I); % Se define el elemento estructural >> eI1=strel('disk', 2) % Se aplica la dilatación >> I1=imdilate(II, eI1); 24. Ejemplo de aplicación de la erosión % Se define el elemento estructural >> eI1=strel('disk', 3) % Se aplica la erosión >> I1=imerode(II, eI1); 31. Cerradura ee=strel('diamond', 3); I2=imclose(I,ee); 32. Cerradura (II) % Se define el elemento estructural >> eI1=strel('disk', 5); % Se aplica la cerradura >> III=imclose(II,eI1); Aumentar la definición de formas 36. Ejemplos de Aplicación >> RGB = imread('pillsetc.png'); imshow(RGB); I = rgb2gray(RGB); threshold = graythresh(I); bw = im2bw(I,threshold); Definición de formas 37. Ejemplos de Aplicación (II) bw = bwareaopen(bw,30); Se eliminan los objetos con menos de 30 píxeles 8 conectados 38. Ejemplos de Aplicación (III) se = strel('disk',2); bw = imclose(bw,se); Llena espacio existente en el casquillo de la pluma 41. Otras operaciones compuestas: Transformada de ganancia o pérdida (hit-or-miss) Se define por la siguiente expresión: Imagen Complemento de la imagen Elemento Estructural 1 Elemento Estructural 2 Operación AND de la imagen, erosionada con un elemento estructural y el complemento de la imagen, erosionada con otro elemento estructural 42. Operaciones lógicas entre imágenes >> III=Iⅈ (AND) >> IV=I|II; (OR) >> V=~II;(NO) >> VI=II&~I;(Diferencia) I II 43. Transformada de ganancia o pérdida (hit-or-miss) Conjunto de puntos a los que simultáneamente coinciden B1 en A y B2 en el complemento de A >>b1=strel([0 0 0; 0 1 1; 0 1 0]); >>c1=imerode(a, b1); >>b2=strel([1 1 1; 1 0 0; 1 0 0]); >>c2=imerode(imcomplement(a), b2); >>c3=c1&c2; Función general >>c3=bwhitmiss(a, b1, b2); 45. Transformada de ganancia o pérdida (hit-or-miss) (III) % Se definen los elementos estructurales >> b11=strel([0 0 0; 0 1 1; 0 1 0]); >> b12=strel([1 1 1; 1 0 0; 1 0 0]); >> b21=strel([0 0 0; 1 1 0; 0 1 0]); >> b22=strel([1 1 1; 0 0 1; 0 0 1]); >> b31=strel([0 1 0; 1 1 0; 0 0 0]); >> b32=strel([0 0 1; 0 0 1; 1 1 1]); >> b41=strel([0 1 0; 0 1 1; 0 0 0]); >> b42=strel([1 0 0; 1 0 0; 1 1 1]); % Se identifican los píxeles que definen las esquinas del rectángulo >> III=bwhitmiss(II, b11, b12); >> IV=bwhitmiss(II, b21, b22); >> V=bwhitmiss(II, b31, b32); >> VI=bwhitmiss(II, b41, b42); % Se unen las esquinas identificadas >> VII=III+IV+V+VI; % Se amplía para visualizar >> VIII=imdilate(VII,ee); >> imshow(VIII) 46. Obtención del perímetro Sustracción a la imagen la erosión de la imagen >>ee = strel('diamond',3) >>bw1=imerode(bw, ee); >>bw2=bw-bw1; El perímetro puede ser más delgado en función del elemento estructural que se utilice 47. Obtención del perímetro (II) Sustracción a la dilatación de la imagen la erosión de la propia imagen >>I1=imdilate(I,ee); >>I2=imerode(I,ee); >>I3=imsubtract(I1,I2); 48. Obtención del perímetro (III) % Se erosiona y sustrae >> eI1=strel('square', 5); >> V=imerode(IV,eI1); >> VI=imsubtract(IV,V); % Se dilata y sustrae la imagen erosionada >> VII=imdilate(IV,eI1); >> VIII=imsubtract(VII,V); 51. Llenar huecos (II) >> points=[122,147;146,396;308,233] points = 122 147 146 396 308 233 >> II = imfill(I,points); 52. Conectividad % Función para calcular el perímetro BW2 = bwperim(BW1,conn) Conectividad Depende de la vecindad de un píxel Vecindad horizontal/vertical Vecindad diagonal 53. Conectividad (II) >> conndef(2,'min') 0 1 0 1 1 1 0 1 0 >> conndef(2,'max') 1 1 1 1 1 1 1 1 1 Función que define conectividad (dimensión 2) Vecindad 8 Conectividad definida por el programador >> vertical [0 1 0 0 1 0 0 1 0] 54. Conectividad (III) Si conectividad 4: 2 objetos Si conectividad 8: 1 objeto >> conndef(2,'max') 1 1 1 1 1 1 1 1 1 ¿Cuántos objetos? A = 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 1 1 0 >> conndef(2,'min') 0 1 0 1 1 1 0 1 0 55. Conectividad (IV) Determinar el número de objetos n conectados A = 0 0 0 0 0 0 0 0 1 1 0 1 1 0 0 1 1 0 1 1 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 bwlabel(I,n) X=bwlabel(A,4) % Cuatro conectados X = 0 0 0 0 0 0 0 0 1 1 0 2 2 0 0 1 1 0 2 2 0 0 0 0 2 2 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 0 X=bwlabel(A,8) % Ocho conectados X = 0 0 0 0 0 0 0 0 1 1 0 1 1 0 0 1 1 0 1 1 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 2 objetos 4 conectados 1 objeto 8 conectados 56. Conectividad (V) Perímetro y objetos n conectados I = 1 1 1 0 0 0 0 0 1 1 1 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 0 1 0 1 1 1 0 0 0 1 0 1 1 1 0 0 0 1 0 1 1 1 0 0 1 1 0 1 1 1 0 0 0 0 0 III=bwperim(II,4); IV=bwperim(II,8); Misma salida 57. Conectividad (VI) >> bwlabel(III,4) 1 1 1 1 0 0 0 0 1 0 1 0 2 2 0 0 1 0 1 0 2 2 0 0 1 0 1 0 0 0 3 0 1 0 1 0 0 0 3 0 1 0 1 0 0 0 3 0 1 0 1 0 0 3 3 0 1 1 1 0 0 0 0 4 >> bwlabel(III,8) 1 1 1 1 0 0 0 0 1 0 1 0 1 1 0 0 1 0 1 0 1 1 0 0 1 0 1 0 0 0 1 0 1 0 1 0 0 0 1 0 1 0 1 0 0 0 1 0 1 0 1 0 0 1 1 0 1 1 1 0 0 0 0 1 Perímetro 4 conectado: Combinación de 4 objetos 4 conectados Perímetro 8 conectado: Un objeto 8 conectados 59. Transformación top hat Sustrae a la imagen la apertura de la imagen Aplicación: Extrae detalles brillantes en presencia de sombras >> se=strel('square',3); >> IV=imsubtract(II,imopen(II,se)); >> III=bwmorph(II,'tophat'); >> II=im2bw(I); Equivale a 60. Transformación bottom hat Sustrae a la imagen la cerradura de la imagen Aplicación: Detalles oscuros en zonas iluminadas >> se=strel('square',3); >> IV=imsubtract(II,imclose(II,se)); >> III=bwmorph(II,‘bothat'); >> II=im2bw(I); Equivale a 61. Relleno de píxeles interiores aislados Aplicación: Clasificar formas Función bwmorph(‘fill’) I = 1 1 1 1 0 1 1 1 1 >> II=bwmorph(I,'fill'); II = 1 1 1 1 1 1 1 1 1 Función find : Devuelve puntero a valor I = 1 1 1 1 0 0 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 0 1 0 1 1 1 0 0 1 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 >> II=bwlabel(I,4) >> III=find(II==4) >> II(III)=6 II = 1 1 1 1 0 0 0 0 1 1 1 0 2 2 0 0 1 1 1 0 0 0 3 0 1 1 1 0 0 3 3 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 II = 1 1 1 1 0 0 0 0 1 1 1 0 2 2 0 0 1 1 1 0 0 0 3 0 1 1 1 0 0 3 3 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 62. Identificar objetos y relleno >>III=bwlabel(II,4) >> IV=max(max(III)) IV = 6 %Índices a valores zona 4 >>V=find(III==4); % Los lleno de ceros (negro) >> II(V)=0; %Clasifica zonas 4 conectadas %Cantidad de zonas 63. Elimina píxeles interiores aislados Aplicación: Limpiar imagen Función bwmorph(‘clean’) >> B=bwmorph(A,’clean'); A = 0 0 0 0 1 0 0 0 0 B = 0 0 0 0 0 0 0 0 0 64. Elimina píxeles interiores de una vecindad Aplicación: Obtener perímetro Función bwmorph(‘remove’) >> B=bwmorph(A,’remove'); A = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 B = 1 1 1 1 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 1 1 1 1 65. Adiciona píxeles a un perímetro hasta mantener una vecindad Aplicación: Agrandar objetos Función bwmorph('thicken’) >> B=bwmorph(A,’thicken‘ ); A = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 B = 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 1 1 1 0 1 1 1 0 0 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 67. Esqueleto de un conjunto Función Matlab para la obtención del esqueleto Esqueleto: Se obtiene a partir de sucesivas erosiones de la imagen hasta que la misma no se convierta en un conjunto vacío (las sucesivas erosiones se realizan hasta que los píxeles sucesivos no se separen) >> bw1=bwmorph(bw, 'skel', Inf); 68. Esqueleto de un conjunto (II) A = 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 1 1 1 1 1 0 0 0 0 1 1 1 1 1 0 0 0 0 1 1 1 1 1 0 0 0 0 1 1 1 1 1 0 0 0 0 1 1 1 1 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 B = 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 >> B=bwmorph(A,'skel',Inf) Reduce píxeles del contorno sin separar el objeto 70. Reconocimiento de caracteres escritos Ejecutar un algoritmo que lea el código postal en un sobre escrito a mano, tome como referencia los siguientes pasos: a.- Binarizar la imagen b.- Erosionar para separar las posibles uniones entre números c.- Dilatar para recomponer números que tengas discontinuidades d.- Calcular el esqueleto de cada componente e.- Identificar con un sistema de inteligencia artificial (redes neuronales o sistemas neuroborrosos) 71. Operaciones en escala de grises Se define como aquel conjunto de píxeles con conectividad n en una imagen que poseen un nivel de intensidad t , los píxeles que le rodean poseen un nivel de intensidad inferior a t Región máxima I2 = 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 128 128 128 128 128 51 51 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 128 51 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 51 51 51 51 51 51 128 128 128 150 192 192 150 150 128 128 128 51 51 51 51 51 128 128 128 150 192 255 192 150 128 128 128 51 51 51 51 51 128 128 128 150 192 192 192 150 128 128 128 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 51 51 51 51 51 51 128 128 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 51 51 128 128 128 128 128 128 51 51 51 51 51 51 51 51 51 51 51 51 128 128 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 72. Operaciones en escala de grises (II) Función: BW = imregionalmax(I,CONN); Aplicación: Max=imregionalmax(I2) Región máxima Max = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 73. Operaciones en escala de grises (III) Se define como aquel conjunto de píxeles con conectividad n en una imagen que poseen un nivel de intensidad t , los píxeles que le rodean poseen un nivel de intensidad superior a t Región mínima I2 = 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 128 128 128 128 128 51 51 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 128 51 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 51 51 51 51 51 51 128 128 128 150 192 192 150 150 128 128 128 51 51 51 51 51 128 128 128 150 192 255 192 150 128 128 128 51 51 51 51 51 128 128 128 150 192 192 192 150 128 128 128 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 51 51 51 51 51 51 128 128 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 51 51 128 128 128 128 128 128 51 51 51 51 51 51 51 51 51 51 51 51 128 128 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 74. Operaciones en escala de grises (IV) Región mínima Min = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Función: BW = imregionalmin(I,CONN); Aplicación: Min=imregionalmin(I2) 75. Operaciones en escala de grises (V) Región máxima con umbral Píxeles con valores de intensidad máximo en un intervalo Intensidad = [ I_min ; I_max ] Región máxima: [ I_max - nmin ; I_max ] Ejemplo: nmin = 63 == [192; 255] I2 = 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 128 128 128 128 128 51 51 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 128 51 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 51 51 51 51 51 51 128 128 128 150 192 192 150 150 128 128 128 51 51 51 51 51 128 128 128 150 192 255 192 150 128 128 128 51 51 51 51 51 128 128 128 150 192 192 192 150 128 128 128 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 51 51 51 51 51 51 128 128 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 51 51 128 128 128 128 128 128 51 51 51 51 51 51 51 51 51 51 51 51 128 128 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 76. Operaciones en escala de grises (VI) Región máxima con umbral Función : BW = imextendedmax(I,H,CONN) Aplicación : I22 = imextendedmax(I2,63) I22 = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Región mínima con umbral : BW = IMEXTENDEDMIN(I,H,CONN) 77. Operaciones en escala de grises (VII) Región mínima con umbral Píxeles con valores de intensidad mínimo en un intervalo Intensidad = [ I_min ; I_max ] Región mínima: [ I_min ; I_min+nmax ] Ejemplo: nmax = 77 == [51; 128] I2 = 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 128 128 128 128 128 51 51 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 128 51 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 51 51 51 51 51 51 128 128 128 150 192 192 150 150 128 128 128 51 51 51 51 51 128 128 128 150 192 255 192 150 128 128 128 51 51 51 51 51 128 128 128 150 192 192 192 150 128 128 128 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 51 51 51 51 51 51 128 128 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 51 51 128 128 128 128 128 128 51 51 51 51 51 51 51 51 51 51 51 51 128 128 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 78. Operaciones en escala de grises (VIII) Región mínima con umbral I22 = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Función : BW = imextendedmin(I,H,CONN) Aplicación : I22 = imextendedmin(I2,77) 79. Operaciones en escala de grises (X) Suprimir región máxima Reduce a la intensidad mínima determinado umbral Intensidad = [ I_min ; I_max ] Región máxima: [ I_max - nmin ; I_max ] Ejemplo: nmin = 105 == [150; 255]=150 I2 = 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 128 128 128 128 128 51 51 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 128 51 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 51 51 51 51 51 51 128 128 128 150 192 192 150 150 128 128 128 51 51 51 51 51 128 128 128 150 192 255 192 150 128 128 128 51 51 51 51 51 128 128 128 150 192 192 192 150 128 128 128 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 51 51 51 51 51 51 128 128 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 51 51 128 128 128 128 128 128 51 51 51 51 51 51 51 51 51 51 51 51 128 128 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 80. Operaciones en escala de grises (XI) Suprimir región máxima I22 = 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 128 128 128 128 128 51 51 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 128 51 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 51 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 128 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 128 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 128 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 51 51 51 51 51 51 128 128 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 51 51 128 128 128 128 128 128 51 51 51 51 51 51 51 51 51 51 51 51 128 128 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 Función : I2 = imhmax(I,H,CONN) Aplicación : I22=imhmax(I2, 105) ¡Altera la imagen original! 81. Operaciones en escala de grises (XII) Suprimir región mínima Reduce a la intensidad mínima determinado umbral Intensidad = [ I_min ; I_max ] Región máxima: [ I_min ; I_min+nmax ] Ejemplo: nmin = 77 == [51; 128]=128 I2 = 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 128 128 128 128 128 51 51 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 128 51 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 51 51 51 51 51 51 128 128 128 150 192 192 150 150 128 128 128 51 51 51 51 51 128 128 128 150 192 255 192 150 128 128 128 51 51 51 51 51 128 128 128 150 192 192 192 150 128 128 128 51 51 51 51 51 128 128 128 150 150 150 150 150 128 128 51 51 51 51 51 51 128 128 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 128 128 128 128 128 128 128 128 51 51 51 51 51 51 51 51 51 128 128 128 128 128 128 51 51 51 51 51 51 51 51 51 51 51 51 128 128 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 51 82. Operaciones en escala de grises (XIII) Suprimir región mínima I22 = 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 150 150 150 150 150 128 128 128 128 128 128 128 128 128 128 128 150 192 192 150 150 128 128 128 128 128 128 128 128 128 128 128 150 192 255 192 150 128 128 128 128 128 128 128 128 128 128 128 150 192 192 192 150 128 128 128 128 128 128 128 128 128 128 128 150 150 150 150 150 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 Función : I2 = imhmin(I,H,CONN) Aplicación : I22=imhmin(I2, 77) 83. Operaciones en escala de grises (XIV) >> max_val=max(max(II(:,:))) 254 >> min_val=min(min(II(:,:))) 0 >> III=imhmax(II, 127); >> max_val=max(max(III(:,:))) 127 84. Operaciones en escala de grises (XV) >> max_val=max(max(II(:,:))) 254 >> min_val=min(min(II(:,:))) 0 >> IV=imhmin(II, 128); >> min_val=min(min(IV(:,:))) 128