1. Desarrolle el siguiente código en el script de Matlab. (Asegúrese de estar trabajando en
la carpeta que ya se ha creado). Para esta unidad el estudiante debe trabajar con 3 imágenes enfermas y 3 imágenes sanas de la base de datos de entrenamiento y 3 imágenes diferentes enfermas y 3 sanas de la base de datos de prueba (las dos bases de datos serán proporcionadas por el tutor, por favor, solicitarla por correo interno) El código a utilizar es el que ya se implementó en el paso 2, en el ejercicio 1. La combinación de numpixel y umbral, debe ser única para las 6 imágenes y debe ser la que detecte por lo menos el 70% de la “enfermedad” en las 3 imágenes enfermas. Es decir, el estudiante no debe hacer un código por cada imagen, sino un código para todas las imágenes proporcionadas por el tutor. 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.
Implementación del código Imagen de entrenamiento Enferma 1
Implementación del código Imagen de entrenamiento Enferma 2
Implementación del código Imagen de entrenamiento Enferma 5
Implementación del código Imagen de entrenamiento Sana 1
Implementación del código Imagen de entrenamiento Sana 2
Implementación del código Imagen de entrenamiento Sana 3
a. Explique cada línea de código clc: Borra todas las entradas y salidas de la pantalla de la ventana de comandos, brindándole una "pantalla limpia. Clear: Elimina todas las variables del espacio de trabajo actual, liberándolas de la memoria del sistema Close all: Borra todas las figuras cuyos controladores no están ocultos Enf1=imread('enferma1.jpg'): Lee la imagen del archivo especificado por filename, infiriendo el formato del archivo a partir de su contenido. Enf1=im2double(Enf1): El comando im2double permite convertir la imagen al doble de la precisión Figure: Se hace llamado a un marco donde se mostrar la imagen. imshow(Enf1): Comando para mostrar la imagen umbral=0.38: El umbral será de 0.38 bincerebro=im2bw(cerebro,umbral): Permite convertir la imagen en escala de grises a una imagen binaria numpixels=1: Establece el número de pixeles para mostrar la imagen filtroEnf1=bwareaopen(binEnf1,numpixels): perrmite eliminar algunos pixeles de la imagen en modo binario imshow(filtroEnf1): Comando para mostrar la imagen. 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 dilatacionEnf1=imdilate(FiltroEnf1,se3): dilata la escala de grises, binario, o una imagen binaria lleno I, volviendo la imagen dilatada, J. [LoEnf1 num1]=bwlabel(FiltroEnf1): bwlabel se utiliza para contar los objetos que contiene la imagen después de binarizada propEnf1=regionprops(LoEnf1): Devuelve mediciones para el conjunto de propiedades especificadas por properties para cada componente 8-conectado (objeto) en la imagen binaria, BW. MinAreaEnf1=min([propEnf1.Area]): Permite conocer el área mínima dentro de la imagen que se está trabajando. MaxAreaEnf1=max([propEnf1.Area]); Permite conocer el área máxima dentro de la imagen que se está trabajando b. ¿Cómo funciona y que datos obtienen de la función “bwlabel”? El comando bwlabel funciona parecido a un conector de una imagen con un objeto y dato donde se obtiene un matriz con la información y cuando se encuentra un objeto en la imagen este se etiqueta con el valor de 1 todos los pixeles que la conforman y en el próximo objeto encontrado esta toma el valor de 2 y así sucesivamente cuando se van encontrando los objetos estos toman un valor ascendente según como sean hallados. c. ¿Qué valor se obtiene en las variables “Lo” y en “num”? Lo: Es una matriz la cual nos permite representar pixel a pixel toda la imagen con la que se está trabajando y donde se encuentre un objeto esta matriz toma el valor correspondiente según sea su orden de hallazgo es decir puede tomar valor de uno todos los pixeles que conforman el objeto 1 y así sucesivamente con los diferentes pixeles que conforman los demás objetos de la imagen. Núm: este valor que se obtiene es numérico lo que quiere decir que es la cantidad de objetos que hay en mi imagen y esta varía de acuerdo a la cantidad de objetos que tenga la misma. 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 el número de objetos de una imagen ubicándolos en su respectiva posición. 2. Cada estudiante debe obtener las siguientes características de cada una de 3 imágenes enfermas y de las 3 imágenes sanas de la base de datos de entrenamiento. Las características las debe guardar en una matriz de Excel donde se tenga la siguiente información. 2. Cada estudiante debe obtener las siguientes características de cada una de 3 imágenes enfermas y de las 3 imágenes sanas de la base de datos de entrenamiento. Las características las debe guardar en una matriz de Excel donde se tenga la siguiente información: Cantidad de objetos en la imagen Área Área Clasifficación máxima Mínima SVM Enferma 1 20 1152 11 1 Enferma 2 12 1141 29 1 Enferma 5 16 1560 26 1 Sana 1 1 7491 7491 0 Sana 2 1 18196 18196 0 Sana 3 1 67378 67378 0
3. Desarrolle el siguiente código en el script de Matlab. (Asegúrese de estar trabajando en
la carpeta que ya se ha creado). Cada estudiante debe obtener las siguientes características de cada una de 3 imágenes enfermas y de las 3 imágenes sanas de la base de datos de prueba. Las características las debe guardar en una matriz de Excel que se llame “prueba.xlsx” donde se tenga la siguiente información: Cantidad de objetos en Área máxima Área Mínima Clasifficación Clasificación la imagen SVM Experto Enferma 6 11 1560 49 1
Enferma 7 12 5103 17 1
Enferma 8 15 1404 18 1
Sana 4 1 147840 147840 0
Sana 5 1 57831 57831 0
Sana 6 1 18752 18752 0
Implementación código imagen de prueba enferma 6
Implementación de código imagen de prueba enferma 7
Implementación de código imagen de prueba enferma 8
Matriz fundamental de visión por computadora: Por favor, sugiera un subtítulo para un libro con el título 'Matriz fundamental de visión por computadora' dentro del ámbito de 'Visión por computadora'. El subtítulo sugerido no debe tener ':'.