Vous êtes sur la page 1sur 12

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD

EDUCACION SUPERIOR Y A DISTANCIA


ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA– ECBTI

Tratamiento de Imágenes
Paso 2 – Segmentación de Imágenes
Grupo No. 208054_16

Directora:
Ing. Paola Andrea Mateus

Por:
Flavio Ernesto Cortés Cabezas – Código No. 79436944

Ingeniería de Telecomunicaciones
Septiembre de 2019
Implementación de códigos en software

1. Desarrolle el siguiente código en el Command Window de Matlab. (Asegúrese de


estar trabajando en la carpeta que ya se ha creado). Debe trabajar con la imagen que
fue asignada y enviada por su tutor en el Paso 1. Esta imagen la debe guardar como
“Enferma5”.

Nota1: Si no está trabajando en la carpeta donde se encuentra la imagen guardada, al realizar


el código le saldrá error.
Nota2: Para que el código sea válido, debe tener una línea con su nombre.

SOLUCION

clc % Limpia la ventana de comandos


clear all % Borra todas las variables existentes
close all % Cierra todas las figuras
% Flavio Ernesto Cortes
Melanoma=imread('Enferma2.jpg'); % Lee la imagen Enferma2 y la almacena
en la variable Melanoma
Melanoma=im2double(Melanoma); % Convierte la imagen en una matriz y en
lenguaje binario
figure; % Crea ventana para visualizar la imagen
imshow(Melanoma) % muestra la imagen
umbral=0.5; % asigna umbral de 0.5
binMelanoma=im2bw(Melanoma,umbral); % Crea imagen binaria a partir de una
imagen de intensidad, basada en un umbral
figure;
imshow(~binMelanoma) % Muestra la imagen guardada en binMelanoma
numpixels=20; % asigna numpixels de 20
Filtro1=bwareaopen(~binMelanoma,numpixels); % Elimina todos los
componentes (objetos) que tienen menos pixeles de la imagen binaria
figure;
imshow(Filtro1) % muestra la imagen filtrada
Realizar el siguiente experimento modificando el código anterior.
Imagen umbral numpixels
1 0.6 5
2 0.65 10
3 0.55 4
4 0.6 2
5 0.7 10

 Explique cada línea de comando.

Para Umbral 0.6, numpixels 5:

clc % Limpia la ventana de comandos


clear all % Borra todas las variables existentes
close all % Cierra todas las figuras
% Flavio Ernesto Cortes
Melanoma=imread('Enferma2.jpg'); % Lee la imagen Enferma2 y la almacena
en la variable Melanoma
Melanoma=im2double(Melanoma); % Convierte la imagen en una matriz y en
lenguaje binario
figure; % Crea ventana para visualizar la imagen
imshow(Melanoma) % muestra la imagen
umbral=0.6; % asigna umbral de 0.6
binMelanoma=im2bw(Melanoma,umbral); % Crea imagen binaria a partir de una
imagen de intensidad, basada en un umbral
figure;
imshow(~binMelanoma) % Muestra la imagen guardada en binMelanoma
numpixels=5; % asigna numpixels de 5
Filtro1=bwareaopen(~binMelanoma,numpixels); % Elimina todos los
componentes (objetos) que tienen menos pixeles de la imagen binaria
figure;
imshow(Filtro1) % muestra la imagen filtrada

Figura 1 Figura 2

Figura 3

Se observa las 3 imágenes resultantes del procesamiento de combinar umbral y filtro


realizado a la foto Enferma2, con los valores descritos en la tabla.
PANTALLAZO CODIGO EN MATLAB

Para Umbral 0.65, numpixels 10:

clc % Limpia la ventana de comandos


clear all % Borra todas las variables existentes
close all % Cierra todas las figuras
% Flavio Ernesto Cortes
Melanoma=imread('Enferma2.jpg'); % Lee la imagen Enferma2 y la almacena
en la variable Melanoma
Melanoma=im2double(Melanoma); % Convierte la imagen en una matriz y en
lenguaje binario
figure; % Crea ventana para visualizar la imagen
imshow(Melanoma) % muestra la imagen
umbral=0.65; % asigna umbral de 0.65
binMelanoma=im2bw(Melanoma,umbral); % Crea imagen binaria a partir de una
imagen de intensidad, basada en un umbral
figure;
imshow(~binMelanoma) % Muestra la imagen guardada en binMelanoma
numpixels=10; % asigna numpixels de 10
Filtro1=bwareaopen(~binMelanoma,numpixels); % Elimina todos los
componentes (objetos) que tienen menos pixeles de la imagen binaria
figure;
imshow(Filtro1) % muestra la imagen filtrada
PANTALLAZO CODIGO EN MATLAB

Para Umbral 0.55, numpixels 4:

clc % Limpia la ventana de comandos


clear all % Borra todas las variables existentes
close all % Cierra todas las figuras
% Flavio Ernesto Cortes
Melanoma=imread('Enferma2.jpg'); % Lee la imagen Enferma2 y la almacena
en la variable Melanoma
Melanoma=im2double(Melanoma); % Convierte la imagen en una matriz y en
lenguaje binario
figure; % Crea ventana para visualizar la imagen
imshow(Melanoma) % muestra la imagen
umbral=0.55; % asigna umbral de 0.55
binMelanoma=im2bw(Melanoma,umbral); % Crea imagen binaria a partir de una
imagen de intensidad, basada en un umbral
figure;
imshow(~binMelanoma) % Muestra la imagen guardada en binMelanoma
numpixels=4; % asigna numpixels de 4
Filtro1=bwareaopen(~binMelanoma,numpixels); % Elimina todos los
componentes (objetos) que tienen menos pixeles de la imagen binaria
figure;
imshow(Filtro1) % muestra la imagen filtrada
PANTALLAZO CODIGO EN MATLAB

Para Umbral 0.6, numpixels 2:

clc % Limpia la ventana de comandos


clear all % Borra todas las variables existentes
close all % Cierra todas las figuras
% Flavio Ernesto Cortes
Melanoma=imread('Enferma2.jpg'); % Lee la imagen Enferma2 y la almacena
en la variable Melanoma
Melanoma=im2double(Melanoma); % Convierte la imagen en una matriz y en
lenguaje binario
figure; % Crea ventana para visualizar la imagen
imshow(Melanoma) % muestra la imagen
umbral=0.6; % asigna umbral de 0.6
binMelanoma=im2bw(Melanoma,umbral); % Crea imagen binaria a partir de una
imagen de intensidad, basada en un umbral
figure;
imshow(~binMelanoma) % Muestra la imagen guardada en binMelanoma
numpixels=2; % asigna numpixels de 2
Filtro1=bwareaopen(~binMelanoma,numpixels); % Elimina todos los
componentes (objetos) que tienen menos pixeles de la imagen binaria
figure;
imshow(Filtro1) % muestra la imagen filtrada
Para Umbral 0.7, numpixels 10:

clc % Limpia la ventana de comandos


clear all % Borra todas las variables existentes
close all % Cierra todas las figuras
% Flavio Ernesto Cortes
Melanoma=imread('Enferma2.jpg'); % Lee la imagen Enferma2 y la almacena
en la variable Melanoma
Melanoma=im2double(Melanoma); % Convierte la imagen en una matriz y en
lenguaje binario
figure; % Crea ventana para visualizar la imagen
imshow(Melanoma) % muestra la imagen
umbral=0.7; % asigna umbral de 0.7
binMelanoma=im2bw(Melanoma,umbral); % Crea imagen binaria a partir de una
imagen de intensidad, basada en un umbral
figure;
imshow(~binMelanoma) % Muestra la imagen guardada en binMelanoma
numpixels=10; % asigna numpixels de 10
Filtro1=bwareaopen(~binMelanoma,numpixels); % Elimina todos los
componentes (objetos) que tienen menos pixeles de la imagen binaria
figure;
imshow(Filtro1) % muestra la imagen filtrada

 ¿Qué hacen las funciones clc, clear all, clos all, im2bw y bwreaopen?

clc: Limpia la ventana de comandos


clear all: Borra todas las variables existentes
close all: Cierra todas las figuras
im2bw: Crea una imagen binaria a partir de una imagen de intensidad, imagen
indexada o RGB basada en un umbral de luminancia.
bwareaopen: Elimina todos los componentes conectados (objetos) que tienen
menos pixeles de la imagen binaria.

Vous aimerez peut-être aussi