0% encontró este documento útil (0 votos)
105 vistas5 páginas

Codigos - Actividas Colaborativa - Kevin Ramirez Padilla - Paso 3

Este documento contiene el desarrollo de actividades propuestas en la guía de aprendizaje correspondiente al paso 3 de aprendizaje de máquinas. El estudiante implementa códigos en Matlab para analizar 6 imágenes (3 enfermas y 3 sanas) y extraer características como el número de objetos, áreas máxima y mínima. Luego clasifica las imágenes mediante un clasificador SVM y un experto, guardando los resultados en una hoja de cálculo.

Cargado por

ana
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
105 vistas5 páginas

Codigos - Actividas Colaborativa - Kevin Ramirez Padilla - Paso 3

Este documento contiene el desarrollo de actividades propuestas en la guía de aprendizaje correspondiente al paso 3 de aprendizaje de máquinas. El estudiante implementa códigos en Matlab para analizar 6 imágenes (3 enfermas y 3 sanas) y extraer características como el número de objetos, áreas máxima y mínima. Luego clasifica las imágenes mediante un clasificador SVM y un experto, guardando los resultados en una hoja de cálculo.

Cargado por

ana
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 5

TRATAMIENTO DE IMAGENES.

PASO 3 - APRENDIZAJE DE MÁQUINAS


Grupo N° 208054_11

Kevin Leonardo Ramírez Padilla. Código 1047429957, [email protected]; Celular


3126983376
Escuela de Ciencias Básicas Tecnologías e Ingeniería
Universidad Nacional Abierta y a Distancia UNAD
Abril de 2019. Cartagena - Bolivar, Colombia

Abstract Nota2: Para que el código sea válido, debe tener


This document contains the development of the individual una línea con su nombre.
activities proposed by the activity guide corresponding to
step 2: image segmentation.
Resumen
Este documento contiene preguntas y respuestas
resultas en la búsqueda del desarrollo grupal a las
actividades propuestas por la guía integrada de
actividades correspondientes al paso 3 –
aprendizaje de máquinas e implantando los
aprendido en el códigos.

1. Introducción
El presente trabajo correspondiente al paso 3 del
curso Tratamiento de imágenes, que tiene como
objetivo evidenciar el desarrollo individual y
colaborativo, en lo concerniente a la investigación
e implementación que dé respuestas a unos
interrogantes relacionados con las temáticas de la
unidad II, y que sirven para propiciar la
conceptualización practica de este paso.
2. Objetivos
Dar respuesta a los interrogantes planteados en la
guía de aprendizaje.
a. Explique cada línea de código.
Desarrollo del componente practico, en la
implementación de codigos. Clc Borra todas las entradas y salidas de la pantalla dela
ventana de comandos, brindándole una"pantalla limpia"
3. Desarrollo de la actividad clear all Elimina todas las variables del espacio del trabajo
3.1 Implementación de Códigos en Software. actual, liberándolas de la memoria del sistema.

3.1.1 Desarrolle el siguiente código en el script de Matlab. %Kevin Ramirez


Vitiligio=imread('Enferma3.jpg'); Lee la imagen del
(Asegúrese de
estar trabajando en la carpeta que ya se ha creado). Para esta archivo especificado por filename, infiriendo el formato del
acrchivo a partir de su contenido.
unidad el estudiante debe trabajar con 3 imágenes enfermas y
3 imágenes sanas (la base de datos será proporcionada por el Vitiligio=im2double(Vitiligio); Permite converit la imagen
al doble de la precisión.
tutor, por favor, solicitarla por correo interno)
El código a utilizar es el que ya se implementó en el paso 2, figure; Se hace llamado a un marco donde se mostrara la
imagen.
en elejercicio 1. La combinación de numpixel y umbral, debe
ser única para las 6 imágenes y debe ser la que detecte por lo imshow(Vitiligio) Comando para mostrar la imagen.
umbral=0.85; El umbral seá de 0.85
menos el 70% de la “enfermedad” en las 3 imágenes
enfermas. Es decir, el estudiante no debe hacer un código por binVitiligio=im2bw(Vitiligio,umbral); Permite convertir la
imagen en escala de grises a una imagen binaria.
cada imagen, sino un código para todas las imágenes
proporcionadas por el tutor. figure; Se hace llamado a un marco donde se mostrara la
imagen.
Nota1: Si no está trabajando en la carpeta donde se encuentra imshow(binVitiligio) Comando para mostrar la imagen.
numpixels=90; Establece el numero de pixeles para mostrar
la imagen
guardada, al realizar el código le saldrá error. la imagen.
Filtro1=bwareaopen(binVitiligio,numpixels); Permite
eliminar algunos pixeles de la imagen en modo binario.
figure; Se hace llamado a un marco donde se mostrará la  ENTRENAMIENTO
imagen.
imshow(Filtro1) Comando para mostrar la imagen.
Enferma 1 (Enferma 3)
%Kevin Ramirez
se3=strel('line',8,3); Representa un elemento estructurante
morfológico plano, que es una parte esencial de las
operaciones de dilatación y erosión morfológicas.
dilatacion1=imdilate(Filtro1,se3); Dilata la escala de grises,
binario o una imagen binaria, volviendo a la imagen dilatada.
figure; Se hace llamado a un marco donde se mostrará la
imagen.
imshow(dilatacion1) Comando para mostrar la imagen.
[Lo num]=bwlabel(dilatacion1); bwlabel se utiliza para
contar los objetos que contiene la imagen después de
binariada.
prop=regionprops(Lo); Devuelve mediciones para el
cojunto de propiedades especificadas por properties paracada
componente.
figure; Se hace llamado a un marco donde se mostrará la Original Binarización Filtración Dilatación Bwlabel

imagen.
imshow(Lo) Comando para mostrar la imagen.
MinArea-min ([prop. Area]); Permite conocer el área
mínima de la imagen que se esté trabajando.
Enferma 2 (Enferma 4)
MinArea-max ([prop. Area]); Permite conocer el área
maxima de la imagen que se esté trabajando.

b. ¿Cómo funciona y que datos obtienen de la función


“bwlabel”?
bwlabel se utiliza para contar los objetos que contiene la
imagen después de binamizada.

c. ¿Qué valor se obtiene en las variables “Lo” y en “num”?


Lo: Es una matriz la cual me permite identificar de acuerdo al
filtro de pixeles toda la imagen para encontrar los objetos y
toma el valor correspondiente. 

Núm: finamente identifica la cantidad de objetos que hay en


la imagen y nos muestra el resultado Original Binarización Filtración Dilatación Bwlabel

d. ¿Cómo funciona y que datos obtienen de la


función “regionprops”?
La función realiza el procesamiento morfológico
de una imagen el cual cuenta elnúmero de objetos
de una imagen ubicándolos en su respectiva
posición.

Nota 3: El filtro utilizado para este experimento es el Enferma 3 (Enferma 10)


generado después
de la binarización (Paso 2, ejercicio 1), si el estudiante utiliza
el filtro que
se obtuvo después de la dilatación no obtendrá el puntaje
correcto de este
experimento.

3.1.2 Cada estudiante debe obtener las siguientes


características de cada una de 3 imágenes enfermas y de las 3
imágenes sanas. Las características las debe guardar en una
matriz de Excel donde se tenga la siguiente información:

Entorno practico en Matlab.


 PRUEBA
Original Binarización Filtración Dilatación Bwlabel

Enferma 1 (Enferma 7)
Sana 1

Original Binarización Filtración Dilatación Bwlabel

Original Binarización Filtración Dilatación Bwlabel

Sana 2

Enferma 2 (Enferma 8)

Original Binarización Filtración Dilatación Bwlabel

Original Binarización Filtración Dilatación Bwlabel

Sana 3 (Sana 5)
Enferma 3 (Enferma 9)

Original Binarización Filtración Dilatación Bwlabel

DATOS
Cantidad de
Área Área Clasificación Clasificación
objetos en la
máxima mínima SVM Experto
imagen Original Binarización Filtración Dilatación Bwlabel
Enferma 3 6 4177 197 1 1
Enferma 4 0 0 0 1 1
Enferma 10 4 535 221 1 1
Sana 1 0 0 0 0 0
Sana 2 0 0 0 0 0 Sana 1 (Sana 7)
Sana 5 0 0 0 0 0
3.1.3 Desarrolle el siguiente código en el script de Matlab.
(Asegúrese de estar trabajando en la carpeta que ya se ha
creado).
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. donde datos.xlsx es la
tabla anteriormente creada y prueba.xlsx es una
tabla que contiene nuevas características con
imágenes diferentes a las 3 imágenes enfermas y
las 3 imágenes sanas del punto anterior, ya que
estas son con las que se entrenó la máquina
Original Binarización Filtración Dilatación Bwlabel (solicitar por correo interno a su tutor, la base de
datos de las imágenes de prueba).
Sana 2 (Sana 11) • El estudiante debe incluir en el documento de entrega tanto
la tabla de las características con las que entreno la máquina,
es decir las contenidas en datos.xlsx y la tabla que contiene
las características nuevas contenidas en prueba.xlsx.

Gráfico tabla datos en Excel

Original Binarización Filtración Dilatación Bwlabel

Sana 3 (Sana 12)

Gráfico tabla prueba en Excel

Datos obtenidos con la Maquina

Original Binarización Filtración Dilatación Bwlabel

• Explique cada línea del código.

PRUEBA Borra todas las


Cantidad de
Área Área Clasificación Clasificación
entradas y salidad
objetos en la
imagen
máxima mínima SVM Experto de la pantalla de la
Enferma 7 3 1010 202 1 1 Clc ventana de
Enferma 8 0 0 0 1 1
Enferma 9 0 0 0 1 1 comandos,
Sana 7 0 0 0 0 0 brindándole
Sana 11 1 12928 12928 0 0
Sana 12 0 0 0 0 0 “Pantalla limpia”
Elimina todas las
variables de
espacio de trabajo
Clear
actual, liberándolas 4. REFERENCIAS BIBLIOGRAFICAS
de la memoria del
sistema.  Larrañaga P. (2015). Redes Neuronales. abril 5,
Borra todas las 2019, de Universidad del Paıs Vasco Sitio web:
figuras cuyos http://www.sc.ehu.es/ccwbayes/docencia/mmcc/doc
Close all
controladores no s/t8neuronales.pdf
están ocultos.
Datos=xlsread(‘datos.xlsx’); Lee archivo datos.  Roncagliolo P. (2007). Procedimiento Digital de
Define el tamaño Imágenes. abril 05, 2019, de ELO Sitio web:
del vector en el que http://www2.elo.utfsm.cl/~elo328/pdf1dpp/PDI21_
Características=datos(1:end,1:3); se almacenaran los RedesNeuronales_1dpp.pdf
datos.
Declara la variable
Entrenamiento=datos(1:end;4);
entrenamiento.  Anonimo. (2015). Conceptos Básicos Sobre Redes
Fitcsvmv entrena o Neuronales. abril 5, 2019, de Alojamientos.us.es
valida de forma Sitio web:
cruza un modelo http://alojamientos.us.es/gtocoma/pid/pid10/RedesN
de maquina de euronales.htm
SvmStruct=fitcsvm(caracteristicas
vectores de una
,
soporte (SVM)  Sancho F. (2018). Clasificación Supervisada y No
entrenamiento,'Standardize',
para la Supervisada. abril 5, 2019, de Blog Cs Sitio web:
true,'KernelFunction','linear',
clasificación de
'KernelScale','auto'); http://www.cs.us.es/~fsancho/?e=77
dos clases (binario)
en un conjunto de
datos de predictor  Aguado, A. S. (2012). Feature Extraction and Image
de dimensión baja Processing for Computer Vision.Oxford: Academic
o moderada. Press 2012. Available from: eBook
Permite leer el Collection (EBSCOhost), pp. 37 -81. Recuperado
Prueba=xlsread('prueba.xlsx'); archivo guardado de:http://bibliotecavirtual.unad.edu.co:2048/login?
como prueba. user=proveedor&pass=danue0a0&url=http://bibliote
cavirtual.unad.edu.co:2051/login.aspx?
3.1.4 Clasificador de umbral o perceptrón: con las dos direct=true&db=nlebk&AN=477505&lang=es&site
primeras características (cantidad de objetos y área máxima), =ehost-live
el estudiante realizará el clasificador por umbral. El
estudiante debe investigar cómo realizar este clasificador,
anexar el código y resultados obtenidos.  Bovik, A. C. (2005).Handbook of Image and Video
Processing Amsterdam: AcademicPress, 2005.
eBook Collection (EBSCOhost), pp. 57– 73.
datos=xlsread('datos.xlsx'); Recuperado
caracteristicas=datos(1:end,1:3); de:http://bibliotecavirtual.unad.edu.co:2048/login?
user=proveedor&pass=danue0a0&url=http://bibliote
entrenamiento=datos(1:end,4); cavirtual.unad.edu.co:2051/login.aspx?
svmStruct=fitcsvm(caracteristicas,entrenamiento,' direct=true&db=nlebk&AN=214674&lang=es&site
KernelFunction','linear'); =ehost-live 

num=xlsread('prueba.xlsx');  Mateus, P. (2017, junio 26), Transformadas. [OVI].


xprueba=num(1:end,1:3); Recuperado de:http://hdl.handle.net/10596/12679 
yprueba=num(1:end,4);thrue=yprueba;  
 Hemanth, D. J., & Estrela, V. V. (2017). Deep
clasificacion=predict(svmStruct,xprueba) Learning for Image Processing
Applications.Amsterdam, Netherlands. Recuperado
de:http://bibliotecavirtual.unad.edu.co/login?
Representación en Matlab
url=http://search.ebscohost.com/login.aspx?
direct=true&db=nlebk&AN=1791226&lang=es&sit
e=eds-live&ebv=EB&ppid=pp_Cover  

También podría gustarte