Documento Defenza ExternaGSF

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 168

UNIVERSIDAD DEL VALLE

FACULTAD DE INFORMÁTICA Y ELECTRÓNICA


CARRERA DE INGENIERÍA BIOMÉDICA

DISEÑO DE UN DERMATOSCOPIO DIGITAL PARA LA DETECCIÓN Y


CLASIFICACIÓN DE LESIONES CUTÁNEAS DE MELANOMA Y NEVO
MELANOCITO MEDIANTE EL USO DE PROCESAMIENTO DIGITAL DE IMÁGENES
Y REDES NEURONALES CONVOLUCIONALES

PROYECTO DE GRADO PARA OPTAR AL


TÍTULO DE LICENCIATURA EN INGENIERÍA
BIOMÉDICA

POSTULANTE: GIOVANNY OMAR SOSA FLORES

TUTOR: ING. ABRAHAM ANTONIO HIDALGO

La Paz – Bolivia
2023
DEDICATORIA

A mi madre, Jacqueline por siempre estar


Presente en cada paso que doy
por el apoyo y cariño.

A mi familia, mis hermanos, tíos y abuelos


por ser una motivación de salir adelante,
por su apoyo y motivación en mi proceso
de aprendizaje y todas las lecciones que
me comparten.
AGRADECIMIENTOS
A Dios, por brindarme salud,
bendición y ser mi guía.

A mi tutor por su capacidad y profesionalismo


y apoyo para culminar el proyecto.

A mis docentes en toda la vida educativa


para darme las herramientas
necesarias para mi vida laboral.

Al doctor Miguel Gutiérrez por


el apoyo a validar el proyecto,
y darme recomendaciones para el diseño
RESUMEN

El presente documento presenta el proyecto de grado que se enfoca en el diseño de un


dermatoscopio digital para la detección y clasificación de lesiones cutáneas de melanoma
y nevo melanocito. El objetivo principal es contribuir al avance de la ingeniería biomédica
en Bolivia.

El proyecto se basa en el uso de procesamiento digital de imágenes y redes neuronales


convolucionales para mejorar la precisión y eficiencia en la detección y clasificación de
lesiones cutáneas. Esto es de gran importancia, ya que el diagnóstico temprano de
enfermedades de la piel como el melanoma puede salvar vidas.

El desarrollo de este dermatoscopio digital se respalda en antecedentes institucionales y


tecnológicos. Se mencionan investigaciones previas en el campo de la dermatología y la
ingeniería biomédica, así como avances en el procesamiento de imágenes y el uso de
redes neuronales en la detección de enfermedades.

Se espera que este proyecto tenga un impacto significativo en la sociedad boliviana. El


dermatoscopio digital permitirá una detección más precisa y rápida de lesiones cutáneas,
lo que facilitará el diagnóstico temprano y el tratamiento oportuno de enfermedades como
el melanoma. Además, al ser un proyecto desarrollado en Bolivia, contribuirá al avance
de la ingeniería biomédica en el país y fomentará la investigación y desarrollo tecnológico
en el campo de la salud.
SUMMARY

This document presents the undergraduate project that focuses on the design of a digital
dermatoscope for the detection and classification of melanoma and melanocytic nevi skin
lesions. The main objective is to contribute to the advancement of biomedical engineering
in Bolivia.

The project is based on the use of digital image processing and convolutional neural
networks to improve accuracy and efficiency in the detection and classification of skin
lesions. This is of great importance, as early diagnosis of skin diseases such as melanoma
can save lives.

The development of this digital dermatoscope is supported by institutional and


technological background. Previous research in the field of dermatology and biomedical
engineering is mentioned, as well as advancements in image processing and the use of
neural networks in disease detection.

It is expected that this project will have a significant impact on Bolivian society. The digital
dermatoscope will enable more precise and rapid detection of skin lesions, facilitating
early diagnosis and timely treatment of diseases such as melanoma. Additionally, being
a project developed in Bolivia, it will contribute to the advancement of biomedical
engineering in the country and foster research and technological development in the field
of health.
ÍNDICES
CAPÍTULO I
MARCO INTRODUCTORIO

1. INTRODUCCIÓN ........................................................................................................ 1
1.1 ANTECEDENTES .................................................................................................. 2
1.1.1 ANTECEDENTES INSTITUCIONALES ....................................................... 2
1.1.2 ANTECEDENTES TECNOLÓGICOS .......................................................... 2
1.1.3 ANTECEDENTES ACADÉMICOS ............................................................... 3
1.2 JUSTIFICACIÓN. ................................................................................................... 3
1.2.1 JUSTIFICACIÓN ACADÉMICA. ....................................................................... 3
1.2.2 JUSTIFICACIÓN TÉCNICA. ............................................................................ 3
1.2.3 JUSTIFICACIÓN TECNOLÓGICA. .................................................................. 4
1.2.4 JUSTIFICACIÓN SOCIAL. ............................................................................... 4
1.3 PLANTEAMIENTO DEL PROBLEMA .................................................................... 5
1.3.1 IDENTIFICACIÓN DEL PROBLEMA. .............................................................. 5
1.3.2 FORMULACIÓN DEL PROBLEMA. ................................................................. 5
1.4 OBJETIVOS........................................................................................................... 6
1.4.1 OBJETIVO GENERAL. .................................................................................... 6
1.4.2 OBJETIVOS ESPECÍFICOS. ........................................................................... 6
1.5 DELIMITACIONES................................................................................................. 6
1.5.1 LÍMITES........................................................................................................... 6
1.5.2 ALCANCES. .................................................................................................... 7
1.6 APORTE ................................................................................................................ 7
1.7 METODOLOGÍA .................................................................................................... 8
1.7.1 Tipo de estudio ................................................................................................ 8
1.7.2 Metodología y diseño: ...................................................................................... 8
1.7.3 Técnicas de investigación: ............................................................................... 9
CAPÍTULO II

MARCO TEÓRICO

2.1 LESIONES CUTÁNEAS....................................................................................... 10


2.1.1 Melanoma ...................................................................................................... 10
2.1.2 Nevo Melanocito ............................................................................................ 10
2.1.3 Diferencia entre lesiones. - ............................................................................ 11
2.2 DERMATOSCOPIA. ............................................................................................ 12
2.3 TECNOLOGÍAS EXISTENTES PARA DERMATOLOGÍA .................................... 13
2.4 PROCESAMIENTO DE IMÁGENES .................................................................... 16
2.4.1 HERRAMIENTAS DE PROCESAMIENTO DIGITAL DE IMÁGENES ............ 17
2.4.2 ROBOT FLOW............................................................................................... 17
2.5 REDES NEURONALES CONVOLUCIONALES ................................................... 18
2.6 MICROCONTROLADORES. –............................................................................. 21
2.6.1 RASPBERRY ................................................................................................ 22
2.6.2. ESP-32 ......................................................................................................... 23
2.6.3 ARDUINO ...................................................................................................... 24
2.7 CAMARA. – ......................................................................................................... 24
2.7.1 CÁMARAS DIGITALES ................................................................................. 25
2.7.2 CÁMARAS EN MEDICINA ............................................................................. 27
2.7.3. RASPBERRY PI CÁMARA ........................................................................... 27
2.7.4 CÁMARA OV5640 ......................................................................................... 30
2.8 FUENTES DE ILUMINACIÓN .............................................................................. 31
2.9 OBJETIVO DE AUMENTO .................................................................................. 33
2.10 HERRAMIENTAS DE DESARROLLO ............................................................ 34
CAPÍTULO III

MARCO PRÁCTICO

3. SOLUCIÓN PROPUESTA ........................................................................................ 38


3.1 DESCRIPCIÓN. ................................................................................................... 38
3.2 DIAGRAMAS ....................................................................................................... 39
3.2.1 DIAGRAMA DE CONTEXTO ......................................................................... 39
3.2.2 DIAGRAMA DE FLUJO. ................................................................................ 40
3.3 ANÁLISIS DE REQUERIMIENTO ........................................................................ 41
3.4 DIAGRAMA DE ALTO NIVEL .............................................................................. 41
3.4.1 ALIMENTACIÓN ............................................................................................ 41
3.4.2 UNIDAD DE CONTROL Y PROCESAMIENTO ............................................. 42
3.4.3 CÁMARA ....................................................................................................... 42
3.4.4 ILUMINACIÓN. – ........................................................................................... 42
3.4.5 LENTE DE AUMENTO .................................................................................. 42
3.5 SELECCIÓN DE TECNOLOGÍAS ........................................................................ 42
3.5.1 BATERÍAS ..................................................................................................... 42
3.5.2 UNIDAD DE PROCESAMIENTO ................................................................... 43
3.5.3 CÁMARA ....................................................................................................... 44
3.5.4 ILUMINACIÓN. – ........................................................................................... 45
3.5.5 LENTE DE AUMENTO. - ............................................................................... 46
3.6 DISEÑO DE BAJO NIVEL.................................................................................... 47
3.6.1 BATERÍA ....................................................................................................... 47
3.6.2 MICROPROCESADOR ................................................................................. 48
3.6.3 CÁMARA ....................................................................................................... 52
3.6.5 DISEÑO CIRCUITO ....................................................................................... 55
3.6.6 ILUMINACIÓN ............................................................................................... 56
3.6.7 CARCASA ..................................................................................................... 57
3.7 DISEÑO DEL SOFTWARE DE RED NEURONAL CONVOLUCIONAL ................ 59
3.7.1 DATASET ...................................................................................................... 59
3.7.2 ROBOT FLOW............................................................................................... 60
3.7.3 DISEÑO DE ARQUITECTURA Y CLASIFICACIÓN DE DATOS. - ................ 62
3.8 DISEÑO DE INTERFAZ USUARIO ...................................................................... 74
3.8.2 CODIFICACIÓN............................................................................................. 77
EVALUACION DE LA PROPUESTA

4. EVALUACIÓN DE LA PROPUESTA ......................................................................... 84


4.1. VIABILIDAD TÉCNICA........................................................................................ 84
CONCLUSIONES Y RECOMENDACIONES

5. CONCLUSIONES Y RECOMENDACIONES. ............................................................ 90


5.1 CONCLUSIONES ................................................................................................ 90
5.2 RECOMENDACIONES ........................................................................................ 93
REFERENCIAS BIBLIOGRÁFICAS. ........................................................ 94_Toc137417135
ÍNDICE DE FIGURAS

CAPÍTULO I

MARCO INTRODUCTORIO

Figura 2.1 Dermatoscopia clásica ......................................................................................................... 13


Figura 2.2 Dermatoscopia digital ........................................................................................................... 13
}Figura 2.3 DermEngine ......................................................................................................................... 14
Figura 2.4 SkinVision .............................................................................................................................. 14
Figura 2.5 DermLite DL4 ........................................................................................................................ 15
Figura 2.6 Heine Delta 20T .................................................................................................................... 15
Figura 2.7 MoleScope II ......................................................................................................................... 16
Figura 2.8 FotoFinder HandyScope ...................................................................................................... 16
Figura 2.9 Procesamiento de imagen con Robot Flow ...................................................................... 18
Figura 2.10 Transfer learning................................................................................................................. 19
Figura 2.11 MobileNet............................................................................................................................. 20
Figura 2.12 Microcontroladores ............................................................................................................. 21
Figura 2.13 Raspberry Pi........................................................................................................................ 22
Figura 2.14 ESP32 .................................................................................................................................. 23
Figura 2.15 Arduino Uno ........................................................................................................................ 24
Figura 2.16 Sensor de cámara .............................................................................................................. 25
Figura 2.17 Cámara Raspberry Pi ........................................................................................................ 28
Figura 2.18 Cámara OV5640- ESP32 .................................................................................................. 30
Figura 2.19 Imagen de diodo led........................................................................................................... 32
Figura 2.20 Led RGB 5050 smd ............................................................................................................ 32
Figura 2.21 Lentes de aumento............................................................................................................. 33
Figura 2.22 Logo Python ........................................................................................................................ 34
Figura 2.23 Logo Django ........................................................................................................................ 35
Figura 2.24 Logo React Fuente ............................................................................................................. 36
Figura 2.25 Logo Visual Studio Code ................................................................................................... 37

CAPÍTULO II

MARCO TEÓRICO

Figura 3.1 Obtención de la lesión.......................................................................................................... 39


Figura 3.2 Red neuronal convolucional ................................................................................................ 39
Figura 3.3 Pantalla de interfaz de usuario ........................................................................................... 39
Figura 3.4 Diagrama de bloques ........................................................................................................... 40
Figura 3.5 Diagrama de bloques interfaz usuario ............................................................................... 40
Figura 3.6 Diagrama de Bloques........................................................................................................... 41
Figura 3.7 Xiaomi Mi Power Bank 3...................................................................................................... 47
Figura 3.8 Raspberry pi .......................................................................................................................... 48
Figura 3.9 Guía de configuración “Código de enlace” ........................................................................ 49
Figura 3.10 Diagrama de flujo de código para funcionamiento de cámara ..................................... 50
Figura 3.11 Instalación de Librerías...................................................................................................... 51
Figura 3.12 Importación de biblioteca que conecta con Firebase .................................................... 51
Figura 3.13 Configuración de puertos GPIO ....................................................................................... 51
Figura 3.14 Configuración de enlace Firebase ................................................................................... 52
Figura 3.15 Cámara module V2 ............................................................................................................ 52
Figura 3.16 Lente cámara ...................................................................................................................... 53
Figura 3.17 Modelo 3D de lentes .......................................................................................................... 53
Figura 3.18 Prueba de cámara .............................................................................................................. 54
Figura 3.19 Comparación de imagen sin filtros (Izquierda) contra imágenes con filtros (Derecha)
................................................................................................................................................................... 55
Figura 3.20 Diagrama del circuito ......................................................................................................... 55
Figura 3.21 Diseño esquemático arreglo de 12 leds .......................................................................... 56
Figura 3.22 Armado de iluminación ...................................................................................................... 57
Figura 3.23 Carcasa del dermatoscopio completo ............................................................................. 57
Figura 3.24 Carcasa de soporte de cámara ........................................................................................ 58
Figura 3.25 Carcasa de costado ........................................................................................................... 58
Figura 3.26 Carcasa impresa 3D .......................................................................................................... 58
Figura 3.27 ISIC de repositorio de imágenes dermatológicas .......................................................... 59
Figura 3.28 Delimitación de la lesión .................................................................................................... 60
Figura 3.29 Procesamiento de imágenes ............................................................................................ 61
Figura 3.30 Configuración de data aumentación ................................................................................ 61
Figura 3.31 Configuración de Test, Train, Valid .................................................................................. 62
Figura 3.32 Código configuración de lesiones .................................................................................... 63
Figura 3.33 Código para activar MobileNetV2..................................................................................... 64
Figura 3.34 Diseño de Pipeline-configuración de entrenamiento ..................................................... 64
Figura 3.35 Configuración de pasos de entrenamiento ..................................................................... 65
Figura 3.36 Detección y clasificación versión 1 .................................................................................. 66
Figura 3.37 Detección y clasificación Versión 2 .................................................................................. 66
Figura 3.38 Detección y clasificación de Version3 ............................................................................. 67
Figura 3.39 Funcionamiento de CNN y dermatoscopio ..................................................................... 67
Figura 3.40 Curva de aprendizaje CNN ............................................................................................... 68
Figura 3.41 Curva de pasos por segundo ............................................................................................ 68
Figura 3.42 Curva de localización ......................................................................................................... 69
Figura 3.43 Curva de regulación ........................................................................................................... 70
Figura 3.44 Gráfica de pérdida total ..................................................................................................... 70
Figura 3.45 Curva de clasificación ........................................................................................................ 71
Figura 3.46 Diagrama de Flujo de construcción de Pagina web ...................................................... 75
Figura 3.47 Login de usuario ................................................................................................................. 76
Figura 3.48 Registro de pacientes-menú ............................................................................................. 76
Figura 3.49 Visualización datos del paciente ...................................................................................... 77
Figura 3.50 Funcionamiento de CNN ................................................................................................... 77
Figura 3.51 Estructura del proyecto en Django ................................................................................... 78
Figura 3.52 Estructura de Lesión “CNN”.............................................................................................. 79
Figura 3.53 Estructura de plantillas ...................................................................................................... 79
Figura 3.54 Estructura de User “Login” ................................................................................................ 80
Figura 3.55 Archivo "setting.py" ............................................................................................................ 80
Figura 3.56 Archivo “models.py”............................................................................................................ 81
Figura 3.57 Archivo “views.py” .............................................................................................................. 82
Figura 3.58 Archivo “urls.py” .................................................................................................................. 83
ÍNDICE DE TABLAS
CAPÍTULO I

MARCO INTRODUCTORIO

Tabla 2.1 Diferencias de melanoma y melanocito .............................................................................. 11

CAPÍTULO II

MARCO TEÓRICO

Tabla 3.1 Comparación de baterías...................................................................................................... 42


Tabla 3.2 Comparación de Unidad de procesamiento ....................................................................... 43
Tabla 3.3 Comparación de Cámaras .................................................................................................... 44
Tabla 3.4 Comparación de led............................................................................................................... 45
Tabla 3.5 Comparación de lente de aumento ..................................................................................... 46
Tabla 3.6 Cantidad de imágenes seleccionadas manualmente........................................................ 60
Tabla 3.7 Cantidad de datos con Data Augmentation ........................................................................ 62
Tabla 3.8 Validación................................................................................................................................ 72
Tabla 3.9 Matriz de confusión ................................................................................................................ 73

EVALUACIÓN DE LA PROPUESTA

Tabla 4.1 Costos Componentes del Dermatoscopio .......................................................................... 88


CAPÍTULO I
MARCO INTRODUCTORIO
CAPÍTULO I

MARCO INTRODUCTORIO

1. INTRODUCCIÓN
Las enfermedades dermatológicas son enfermedades comunes en el mundo. En el
país existen altos índices de incidencia de diferentes enfermedades dermatológicas,
siendo un problema de salud pública en Bolivia, como en muchos otros países. Aunque
no se han realizado muchos estudios específicos sobre las lesiones cutáneas en Bolivia,
según el estudio de oncología realizado por el Ministerio de Salud en el 2015, se tiene
que el cáncer de piel es uno de los tipos de cáncer más comunes en el país. Las lesiones
cutáneas son un indicador importante del cáncer de piel y su detección temprana es clave
para un tratamiento exitoso. De tal manera, tener métodos de determinación de lesiones
cutáneas es importante para la población, si bien existen médicos dermatólogos capaces
de determinar las enfermedades cutáneas, faltan métodos de corroboración que apoyen
al diagnóstico.

La problemática observada se presenta en los actuales métodos de diagnóstico,


aunque existen médicos especialistas que pueden determinar las lesiones cutáneas, se
necesita un sistema de obtención de imágenes con un mismo parámetro y repetibilidad.
A la par, un almacenamiento de las imágenes para el seguimiento de la lesión, siendo
que estas tienden a crecer, dando a entender que son malignas.

Dado estos hechos el presente proyecto consiste en desarrollar un sistema de


obtención de las imágenes de las zonas con lesiones dermatológicas, generar un dataset
propio con las características de la región, realizar un procesamiento digital de imágenes
y así poder obtener un sistema de detección de lesiones cutáneas, para clasificar
enfermedades, apoyar al diagnóstico profesional preciso y obtener una base de datos
para dar seguimiento a las lesiones. Esto permitirá mejores condiciones de diagnóstico.
2

1.1 ANTECEDENTES

1.1.1 ANTECEDENTES INSTITUCIONALES

La Sociedad de Dermatólogos de Bolivia busca mejorar la detección temprana y


el diagnóstico preciso de enfermedades de la piel como el melanoma y nevo
melanocito, de alta prevalencia en la región. La implementación de tecnologías de
procesamiento de imágenes y redes neuronales convolucionales en el diagnóstico
dermatológico puede ser una herramienta muy valiosa para los especialistas, ya
que estas tecnologías no están exploradas en el país, por lo cual utilizar el
conocimiento de la sociedad de dermatología de Bolivia podría contribuir a mejorar
la calidad de atención a los pacientes y reducir la morbimortalidad asociada a estas
enfermedades, proporcionar retroalimentación experta y validar los resultados
obtenidos a través del uso del dermatoscopio digital.

1.1.2 ANTECEDENTES TECNOLÓGICOS

El cáncer de piel es uno de los tipos de cáncer más comunes en todo el mundo, y
el melanoma es la forma más agresiva de este cáncer. La detección temprana es
crucial para su tratamiento y supervivencia, por lo que el desarrollo de nuevas
tecnologías para su detección es esencial. Por lo cual se propone el diseño de un
dermatoscopio digital que utiliza técnicas de procesamiento digital de imágenes y
redes neuronales convolucionales para la detección y clasificación de lesiones
cutáneas de melanoma y nevo melanocítico. Según estudios previos, el uso de la
dermatoscopia digital junto con el procesamiento de imágenes puede aumentar
significativamente la precisión del diagnóstico de cáncer de piel, mientras que las
redes neuronales convolucionales han demostrado ser muy eficaces en el
procesamiento y análisis de imágenes médicas. (Hernández-Guerra et al., 2020;
Esteva et al., 2017). Lo que se plantea es mejorar la detección temprana y la
precisión en el diagnóstico de cáncer de piel en Bolivia y, en última instancia,
contribuir a reducir la tasa de mortalidad asociada a esta enfermedad.
3

1.1.3 ANTECEDENTES ACADÉMICOS

La creación de dispositivos nuevos para el área de dermatología surge ante la


necesidad de mejorar la detección temprana de lesiones cutáneas malignas en
Bolivia. Según estudios realizados en el país, el melanoma es el tipo de cáncer de
piel más letal y su incidencia está en aumento (Gómez-Acebo et al., 2020). En este
sentido, se hace indispensable contar con herramientas diagnósticas precisas y
eficientes para la detección y clasificación de las lesiones cutáneas.

El uso de tecnologías digitales en el campo de la dermatología ha cobrado gran


relevancia en los últimos años. Los dermatoscopios digitales se han convertido en
una herramienta importante para la detección temprana de lesiones cutáneas
malignas, gracias a la posibilidad de capturar imágenes de alta resolución de la
piel y analizarlas mediante técnicas de procesamiento digital de imágenes y redes
neuronales convolucionales (Smeding et al., 2019). Estas técnicas permiten
identificar patrones en las lesiones cutáneas que no son perceptibles a simple
vista, mejorando así la precisión y eficiencia del diagnóstico.

1.2 JUSTIFICACIÓN.

1.2.1 JUSTIFICACIÓN ACADÉMICA.


El presente proyecto requerirá aptitudes adquiridas durante la formación
universitaria. Entre estas aptitudes podemos mencionar procesamiento digital de
imágenes, programación, base de datos y aptitudes adicionales adquiridas por
cuenta propia como ser machine learning. Cabe mencionar que el proyecto
contribuirá al desarrollo de una base de datos, ayudando al campo de estudio de
enfermedades dermatológicas proporcionando nuevos conocimientos de lesiones
cutáneas en nuestra región.

1.2.2 JUSTIFICACIÓN TÉCNICA.


Para el desarrollo de un dispositivo de apoyo al diagnóstico de lesiones cutáneas
es importante tener conocimiento de herramientas de programación. Se
necesitarán esas herramientas, ya que se realizará un dispositivo electrónico
capaz de adquirir imágenes y enviar un software de procesamiento de imágenes.
4

Asimismo, se utilizarán metodologías de machine learning para usar un modelo de


red neuronal convolucional que posibilite la identificación del tipo de lesión que
aparecen en las imágenes adquiridas.

Estas técnicas aplicadas en el proyecto se las realizará mediante lenguajes de


programación, el más utilizado será Python por sus diferentes librerías, también
se utilizará Tensorflow y keras para el diseño de redes neuronales. Para el
desarrollo de la página web se tiene planteado usar Django, que permitirá realizar
una aplicación web, con autentificación de usuarios y soporte para base de datos,
también cuenta con librerías de procesamiento de imágenes, lo que permitirá
trabajar con redes neuronales convolucionales.

1.2.3 JUSTIFICACIÓN TECNOLÓGICA.


Para el desarrollo del proyecto se consideran dispositivos y softwares de bajo
coste, accesibles en el mercado, pero que cumplan con los requerimientos del
proyecto. Los softwares por utilizar serán open source lo que facilitará la
adquisición en consultorios privados, así como en diferentes instituciones de salud.

Para el diseño del dispositivo de obtención de la lesión, el dermatoscopio digital,


se debe tener en cuenta microprocesadores con características de soporte de
cámaras con buena resolución, para obtener todos los detalles, luces LED para
obtener características de pigmentación, y funciones de redes inalámbricas para
enviar las imágenes.

1.2.4 JUSTIFICACIÓN SOCIAL.


El proyecto por desarrollar apoyará a los médicos dermatólogos, generando un
software de almacenamiento de las lesiones cutáneas, coadyuvará al diagnóstico
y a la par al desarrollar un dispositivo específico para la obtención de las imágenes
cutáneas será conveniente para el médico. También, apoya a los pacientes con
un diagnóstico rápido, seguro y no doloroso. Se plantea que se podrá realizar
controles periódicamente para ver la evolución de la lesión. Cabe mencionar que
como se plantea realizar el proyecto con sitio web se podrá acceder desde
5

cualquier ubicación, siendo así poder apoyar al diagnóstico de lesiones cutáneas


en el área rural.

En conjunto a esto se plantea desarrollar un dataset con características


dermatológicas de nuestra región, para estudios posteriores apoyando a
especialistas, médicos generales y estudiantes. Este proyecto será importante en
el contexto actual por los altos índices de incidencia, ya que, estas enfermedades
pueden volverse molestas, dolorosas y hasta mortales.

1.3 PLANTEAMIENTO DEL PROBLEMA

1.3.1 IDENTIFICACIÓN DEL PROBLEMA.


Las lesiones cutáneas presentes en nuestra sociedad son comunes, por lo cual
métodos de determinación necesitan precisión, se pudo evidenciar que, si bien
existen dispositivos para observar lesiones cutáneas con mayor detalle
(Dermatoscopio) estos no cuentan con métodos de capturar (Fotos) o son difíciles
de conseguir. Los dermatólogos usan su celular para obtener imágenes,
influyendo en fallas al controlar las características, ya que no se pueden repetir
factores como la distancia, la luz y el ruido en la imagen. También se puede
evidenciar que no contamos con una base de datos propia con las características
demográficas, siendo que a mayor altura presentamos algunos rasgos distintos a
los de otros países. Finalmente, los médicos pueden tener problemas o dudas al
dar un diagnóstico, por lo que no hay softwares capaces de apoyar para determinar
qué tipo de lesión es, influye con el tiempo de detección o procesos de
determinación costosos y morosos (Biopsias).

1.3.2 FORMULACIÓN DEL PROBLEMA.


¿Cómo apoyar a los dermatólogos con un sistema de obtención de imágenes para
el diagnóstico eficaz y seguro de detección de lesiones cutáneas mediante
inteligencia artificial?
6

1.4 OBJETIVOS

1.4.1 OBJETIVO GENERAL.


Diseñar e implementar un dermatoscopio digital para el apoyo a la detección y
clasificación de lesiones cutáneas mediante un software de procesamiento digital
de imágenes y redes neuronales convolucionales.

1.4.2 OBJETIVOS ESPECÍFICOS.


- Desarrollar un dermatoscopio electrónico digital con cámaras existentes en el
mercado de buena resolución para adquirir características de la lesión.

- Implementar una base de datos con lesiones aplicado a las redes neuronales
convolucionales.

- Establecer una interfaz gráfica para el procesamiento de imágenes digitales y


generar un modelo de red neuronal convolucional con transferencia de
aprendizaje.

- Generar una página web interactiva con el usuario, donde se pueda introducir
datos del paciente y funcione a la par con la red neuronal convolucional.

- Realizar las pruebas de validación correspondientes para dar certeza al momento


de usar el dispositivo.

1.5 DELIMITACIONES

1.5.1 LÍMITES.

- El prototipo solo será para apoyo al diagnóstico médico de manera


complementaria para determinar el tipo de lesión.
- El proyecto consta de la obtención de la imagen (Dermatoscopio), un software para
el almacenamiento, el procesamiento de imágenes y las redes convolucionales.
- Se delimitará con dos enfermedades comunes en la región estas son: Melanoma
maligno y nevo melanocito benigno.
- El dermatoscopio no contará con una herramienta de medición para la variación
de tamaño que se producen en lesiones cutáneas.
7

- Para el funcionamiento de todo el dispositivo se requerirá conexión a internet.


- El dispositivo no cuenta con un enfoque automático, por lo que, se tendrá que
realizar un enfoque manual.

1.5.2 ALCANCES.

- Se utilizará un lente de aumento de 10x para la obtención de la imagen, esta


medida de aumento es efectiva para conseguir un mejor detalle de la lesión con
respecto a cámara convencionales sin aumento microscópicos.
- Para la obtención de mayor detalle de la lesión se utilizarán Leds (blancos) para
obtener características de pigmentación.
- Se desarrollará una carcasa para garantizar una distancia precisa entre la cámara
y el sujeto para un posicionamiento repetible.
- Se plantea desarrollar enlace con redes inalámbricas para la comunicación entre
el dispositivo de captura y el software de procesamiento.
- El dispositivo de obtención de imágenes será portátil por lo plantea usar baterías
recargables para un uso continuo.
- El diseño del software será open source, tanto como la base de datos de imágenes
como los softwares de programación, reduciendo el costo del dispositivo (Python,
Tensorflow.js, Google colab).
- Para realizar las pruebas correspondientes, se realizarán comparaciones de
lesiones cutáneas que ya se encuentran clasificadas, obtenidas de un dataset de
uso libre y diseñadas para el proyecto.
- Se implementará un procesamiento digital de imágenes para obtener una mejor
visualización de las características
- Para la base de datos se pondrá variables de Sexo, Edad, Diámetro de lesión y
Ubicación anatómica, esto para obtener características que influyen en la
enfermedad (Solo almacenamiento para la base de datos).

1.6 APORTE
El proyecto presenta un aporte significativo para la detección temprana del melanoma,
una enfermedad que representa un importante problema de salud pública en Bolivia y a
nivel mundial. Según la OMS (Organización Mundial de la Salud) (Organización Mundial
8

de la Salud), el melanoma es la forma más grave de cáncer de piel y su detección


temprana es fundamental para su tratamiento efectivo (OMS 2018). La utilización de
herramientas tecnológicas como la dermatoscopia digital y el procesamiento de imágenes
con redes neuronales convolucionales ha demostrado ser efectiva en la detección y
clasificación de lesiones cutáneas (Esteva et al., 2017). De esta manera, el diseño y la
implementación de un dermatoscopio digital con estas características podría contribuir
significativamente a mejorar la detección temprana del melanoma y reducir su impacto
en la salud pública de Bolivia.

1.7 METODOLOGÍA

1.7.1 Tipo de estudio


El proyecto se tiene planteado regirse a la metodología mixta, estas pueden ser
por una combinación de metodologías de diseño y de investigación. Siendo que se
diseñará un dispositivo electrónico y un software de redes neuronales que funcionará
según cuantificaciones de porcentajes a que pertenece el tipo de lesión.

1.7.2 Metodología y diseño:


a) Diseño y construcción del prototipo del dermatoscopio.

b) Selección de la muestra: Pacientes que presenten lesiones cutáneas nevo


melanocito y melanomas para ser evaluados mediante el dermatoscopio.

c) Obtención de imágenes de las lesiones cutáneas mediante el dermatoscopio.

d) Preprocesamiento de las imágenes para mejorar su calidad y reducir el ruido.

e) Implementación de una red neuronal convolucional para la detección y


clasificación de lesiones cutáneas.

f) Validación de los resultados mediante la comparación con la evaluación de un


dermatólogo experto.

g) Análisis de los resultados obtenidos.


9

1.7.3 Técnicas de investigación:


a) Observación directa: para la construcción del prototipo del dermatoscopio.

b) Encuestas: Para la selección de la muestra de pacientes, a dermatólogos.

c) Observación de recursos: Análisis de imágenes para el procesamiento digital


de las imágenes de las lesiones cutáneas.

d) Test de desarrollo: Redes neuronales convolucionales para la detección y


clasificación de las lesiones cutáneas.

e) Validación cruzada: para la comparación de los resultados con la evaluación


de un dermatólogo experto.

Análisis estadístico: Se utilizará estadística descriptiva para analizar los resultados


obtenidos.

Entre las limitaciones que se pueden presentar está el tamaño de la muestra y la


calidad de las imágenes obtenidas, que pueden influir en la precisión del modelo de
red neuronal convolucional.
CAPÍTULO II
FUNDAMENTOS TEÓRICOS
10

CAPÍTULO II

MARCO TEÓRICO

2.1 LESIONES CUTÁNEAS


Las lesiones cutáneas son un problema de salud pública a nivel mundial, y dentro de
ellas, el melanoma y el nevo melanocítico son dos de las más comunes y potencialmente
peligrosas. El melanoma es un tipo de cáncer de piel que se desarrolla a partir de los
melanocitos, células que producen pigmento en la piel, mientras que el nevo melanocítico
es un tipo de lunar que también está compuesto por células de melanocitos. Ambas
lesiones cutáneas pueden presentarse en cualquier parte del cuerpo, incluyendo las
zonas expuestas al sol, y pueden ser difíciles de detectar a simple vista. En Bolivia, la
incidencia de melanoma y nevo melanocítico ha aumentado en los últimos años, por lo
que es importante conocer más acerca de estas afecciones.

2.1.1 Melanoma
El melanoma es una de las formas más agresivas de cáncer de piel y es
responsable de la mayoría de las muertes por este tipo de enfermedad. El
melanoma es un tipo de cáncer de piel que se desarrolla a partir de los
melanocitos, células que producen pigmento en la piel (OMS, 2023). Según un
estudio realizado en Bolivia en 2020, se observó un aumento en la incidencia de
melanoma en los últimos años, y se espera que esta tendencia continúe (Loayza
& Núñez, 2020). Los factores de riesgo para el melanoma incluyen la exposición
prolongada al sol, antecedentes familiares de la enfermedad, piel clara y la
presencia de lunares atípicos. El diagnóstico temprano del melanoma es
fundamental para su tratamiento y curación, por lo que es importante estar alerta
a cualquier cambio en la piel y acudir a un especialista si se sospecha de la
presencia de esta enfermedad.

2.1.2 Nevo Melanocito


El nevo melanocito son comunes en la población general y generalmente son
benignos (López & García, 2019). Sin embargo, algunos nevos pueden presentar
cambios en su apariencia, tamaño o forma, lo que puede indicar la presencia de
11

un melanoma en su interior. En Bolivia, se ha observado un aumento en la


incidencia de nevos atípicos, lo que aumenta el riesgo de desarrollar melanoma
(Loayza & Núñez, 2020). Es importante tener en cuenta que los nevos atípicos no
siempre se convierten en melanoma, pero su presencia aumenta el riesgo de
desarrollar esta enfermedad. Los factores de riesgo para los nevos atípicos
incluyen antecedentes familiares, piel clara y exposición al sol.

2.1.3 Diferencia entre lesiones. -


Explicado lo anterior, existen similitudes como diferencias entre estas lesiones. La
principal diferencia entre un nevus melanocítico y un melanoma radica en su
naturaleza benigna o maligna, respectivamente. También se puede llegar a
determinar diferencias por métodos dermatológicos, estos métodos son certeros
en todos los casos, pero ayudan a determinar ciertas pautas para dar un
diagnóstico, este método llamado ABCDE del melanoma, el cual se basa de la
siguiente manera:

Tabla 2.1 Diferencias de melanoma y melanocito

DIFERENCIAR MELANOMA
ABCDE DESCRIPCIÓN NEVO MELANOMA
La forma de la
mitad es
diferente a la otra
Asimetría mitad

Son irregulares o
Borde borrosos
Tonalidad
desigual colores
marrón, negro,
Color gris u otros

El tamaño es
Diámetro mayor a 4mm
Cambia de
tamaño, forma
color y se
Evolución presentan más
12

(Fuente: Sociedad de Dermatología (2021))


En resumen, estas lesiones cutáneas comunes, pueden ser mortales si no se
detectan y tratan a tiempo. En Bolivia, la implementación de programas de detección
temprana, la prevención del melanoma y la educación adecuada en dermatoscopia es
importante para mejorar los resultados del tratamiento y reducir la carga de la enfermedad
en la población.

2.2 DERMATOSCOPIA.
La dermatoscopia, es una técnica no invasiva que permite una evaluación más precisa
de las lesiones de la piel en comparación con la evaluación visual convencional. Esta se
basa en la utilización de un instrumento óptico llamado dermatoscopio.

El dermatoscopio es un instrumento utilizado por los dermatólogos para examinar la piel


de manera más detallada y precisa. Se usa para evaluar lesiones cutáneas, lunares,
verrugas, lesiones pigmentadas y otras afecciones dermatológicas. Proporciona un
aumento de la imagen y una iluminación adecuada para examinar las estructuras y
características de la piel que no son visibles a simple vista (Argenziano et al., 2018).

El dermatoscopio fue inventado por el médico austríaco Johann Saphier en la década de


1860. Sin embargo, fue el dermatólogo alemán Josef J. Littmann quien perfeccionó y
popularizó el uso del dermatoscopio en la práctica clínica en la década de 1970. Littmann
introdujo mejoras significativas en el diseño y la funcionalidad del dermatoscopio, lo que
lo convirtió en una herramienta invaluable para el diagnóstico y seguimiento de
enfermedades cutáneas.

La dermatoscopia se ha convertido en una herramienta de gran importancia para el


diagnóstico precoz de melanomas y otros tipos de cáncer de piel (González-Serva et al.,
2019). Se ha demostrado que aumenta la precisión en el diagnóstico de lesiones
pigmentadas de la piel, reduciendo la tasa de biopsias innecesarias y mejorando el
diagnóstico temprano de lesiones malignas (Guarneri et al., 2018).

La dermatoscopia se ha dividido en dos categorías principales:


13

La dermatoscopia clásica: Utiliza un dermatoscopio manual para observar la lesión


de la piel.

Figura 2.1 Dermatoscopia clásica

Fuente: Clínica Colindres

La dermatoscopia digital: utiliza imágenes de alta resolución para visualizar la


lesión de la piel (Rosendahl et al., 2018).

Figura 2.2 Dermatoscopia digital

Fuente: revista de salud y bienestar

La dermatoscopia digital ha demostrado ser muy útil en el diagnóstico de lesiones


cutáneas y puede usarse en la atención primaria para detectar cambios tempranos en las
lesiones cutáneas, lo que facilita un diagnóstico y tratamiento oportuno (Hansen et al.,
2019).

2.3 TECNOLOGÍAS EXISTENTES PARA DERMATOLOGÍA


El uso de la inteligencia artificial y el aprendizaje automático en la clasificación de lesiones
cutáneas ha avanzado significativamente en los últimos años. Algunos de los softwares
más relevantes en el campo clasificación de lesiones cutáneas son los siguientes.
14

Uno de los softwares más utilizados para la clasificación de lesiones cutáneas es


DermEngine, una plataforma en línea que utiliza inteligencia artificial y aprendizaje
automático para ayudar en la detección y clasificación de lesiones cutáneas (Wadhwa et
al., 2021). DermEngine utiliza algoritmos de redes neuronales convolucionales (CNN)
para la segmentación de la imagen y la extracción de características, y un modelo de
aprendizaje profundo para la clasificación de lesiones (Sobhanian et al., 2021).

Figura 2.3 DermEngine

Fuente: Dermengine

Otro software utilizado en la clasificación de lesiones cutáneas es el SkinVision, una


aplicación móvil que utiliza tecnología de inteligencia artificial para escanear y analizar
lesiones cutáneas. La aplicación utiliza una combinación de técnicas de procesamiento
de imágenes, aprendizaje automático y redes neuronales para la clasificación de lesiones
(Codella et al., 2018).

Figura 2.4 SkinVision

Fuente: Melanomauk

Como el proyecto conlleva dos partes cabe mencionar sobre el estado del arte de los
dermatoscopios digitales, estos han evolucionado mucho en los últimos años, gracias a
15

la tecnología digital y la miniaturización de componentes electrónicos. Actualmente,


existen diferentes tipos de dermatoscopios digitales, cada uno con características
particulares que se adaptan a las necesidades de los médicos o especialistas en
dermatología. Entre los modelos disponibles se encuentran:

DermLite DL4, que cuenta con luz polarizada y no polarizada, ajuste de brillo,
aumento 10x y conexión a dispositivos móviles su costo es de 1100 USD.

Figura 2.5 DermLite DL4

Fuente: Dermatoscope

Heine Delta 20T, con luz polarizada y no polarizada, aumento 10x y diseño
ergonómico su costo es de 1400 USD.

Figura 2.6 Heine Delta 20T

Fuente: Surgicalhouse

MoleScope II, que se adhiere a un dispositivo móvil, cuenta con luz polarizada y no
polarizada, aumento 20-60x y opción de guardar imágenes en la aplicación móvil su
costo es de 1500 USD.
16

Figura 2.7 MoleScope II

Fuente: MoleScope

FotoFinder HandyScope, que tiene luz polarizada y no polarizada, aumentó 20x,


opción de conectar a dispositivos móviles y software de análisis de lesiones, su costo
es de 2000 USD.

Figura 2.8 FotoFinder HandyScope

Fuente: FotoFinder Australia

Estos dispositivos tienen características esenciales para el médico, pero sus costos son
una contra al momento de adquirirlos sin contar que no existen proveedores en el país.

2.4 PROCESAMIENTO DE IMÁGENES


El procesamiento de imágenes es una técnica que se utiliza para mejorar la calidad de
las imágenes digitales y extraer información útil de ellas. En el caso de la dermatoscopia
digital, el procesamiento de imágenes puede utilizarse para mejorar el contraste y la
nitidez de las imágenes, así como para identificar características específicas de las
lesiones cutáneas.
17

La detección temprana de lesiones cutáneas es esencial para el diagnóstico y tratamiento


exitoso de enfermedades de la piel. El uso de imágenes digitales para el diagnóstico y
seguimiento de enfermedades de la piel es una práctica cada vez más común en la
medicina moderna (Barata et al., 2019). El procesamiento de imágenes digitales de
lesiones cutáneas es una técnica prometedora para la detección temprana y el
diagnóstico de enfermedades de la piel (Kawahara et al., 2017).
El procesamiento de imágenes en el contexto de lesiones cutáneas puede ser utilizado
para la segmentación, extracción de características y clasificación de las lesiones. La
segmentación de la imagen se refiere a la separación de la lesión del fondo de la imagen.
La extracción de características se refiere a la identificación y medición de características
específicas de la lesión, como el tamaño, la forma y el color. La clasificación de la lesión
se refiere a la asignación de una etiqueta a la lesión que indica la presencia o ausencia
de enfermedad, así como el tipo de enfermedad si está presente (Kawahara et al., 2017).

2.4.1 HERRAMIENTAS DE PROCESAMIENTO DIGITAL DE IMÁGENES


Las herramientas de procesamiento digital de imágenes son un componente
esencial en el campo de la fotografía, la medicina, la investigación científica y
muchas otras disciplinas. Estas herramientas como lo dicho anteriormente
permiten la manipulación, mejora y análisis de imágenes digitales, brindando una
amplia gama de funcionalidades para modificar características visuales, extraer
información relevante y realizar mediciones precisas.

2.4.2 ROBOT FLOW


Robot Flow es una plataforma de automatización de procesos robóticos (RPA) que
también se la considera una herramienta de procesamiento de imágenes ya que
ofrece potentes capacidades de procesamiento de imágenes. Además de las
funciones de automatización habituales para tareas repetitivas, Robot Flow
permite el procesamiento de imágenes utilizando algunos algoritmos y
herramientas.
Estas funciones incluyen reconocimiento de patrones, detección de objetos,
segmentación de imágenes y mejora del contraste. Estas capacidades permiten
18

automatizar procesos con análisis y procesamiento de imágenes, algo útil en


medicina, control industrial y visión por computadora.
Robot Flow permite a los usuarios desarrollar flujos de trabajo personalizados que
incluyen tareas de procesamiento de imágenes, eficiencia y precisión en el
procesamiento de información visual en una variedad de contextos de
aplicaciones.
Figura 2.9 Procesamiento de imagen con Robot Flow

Fuente Elaboración Propia, 2023

2.5 REDES NEURONALES CONVOLUCIONALES


Las redes neuronales convolucionales (CNN) son una clase de arquitecturas de redes
neuronales especializadas en el procesamiento y reconocimiento de imágenes. Estas
redes han demostrado ser altamente eficaces en la tarea de clasificación de imágenes al
aprender automáticamente patrones visuales en las imágenes de entrada y asignarlas a
diferentes categorías. Su funcionamiento se basa en la aplicación de filtros
convolucionales que permiten capturar patrones visuales en las imágenes de entrada.
Estos filtros son pequeñas ventanas deslizantes que se desplazan por la imagen y
realizan operaciones de convolución para extraer características locales, como bordes,
texturas y formas. A medida que se avanza en la red neuronal, las capas de convolución
se encargan de aprender características cada vez más abstractas y complejas, a través
de la combinación de múltiples filtros.

Las CNN también utilizan capas de submuestreo, conocidas como capas de pooling, que
reducen la dimensionalidad de las características extraídas y preservan las
características más relevantes. Estas capas toman pequeñas regiones de las
19

características y las resumen en un solo valor, lo que reduce la cantidad de datos y ayuda
a la red neuronal a ser más eficiente computacionalmente. Además, las CNN suelen
incluir capas totalmente conectadas al final de la red, que se encargan de la clasificación
final de las imágenes en diferentes categorías. Estas capas utilizan los patrones
aprendidos por las capas de convolución y pooling para tomar decisiones de clasificación
basadas en la presencia o ausencia de características específicas en las imágenes. En
resumen, las CNN utilizan filtros convolucionales, capas de pooling y capas totalmente
conectadas para aprender y extraer características relevantes de las imágenes, y
posteriormente clasificarlas en diferentes categorías.

La técnica de transfer learning es ampliamente utilizada en el contexto de las CNN. Esta


técnica implica tomar una red neuronal previamente entrenada en un conjunto de datos
grande y general, como ImageNet, y ajustarla a un nuevo conjunto de datos más
específico, como imágenes de lesiones cutáneas. Al realizar este ajuste, la red neuronal
aprovecha el conocimiento previo adquirido durante su entrenamiento previo y lo aplica
al nuevo conjunto de datos, lo que acelera el proceso de entrenamiento y mejora la
precisión de la clasificación de las lesiones cutáneas.

Figura 2.10 Transfer learning

Fuente: TopBots
20

MobileNet es una arquitectura de red neuronal convolucional que se ha desarrollado


especialmente para dispositivos móviles con recursos computacionales limitados, es una
arquitectura de red neuronal convolucional diseñada para lograr una combinación óptima
entre eficiencia computacional y precisión en la clasificación de imágenes. Esta
arquitectura se compone de múltiples bloques de capas, donde cada bloque se encarga
de extraer y aprender características específicas de las imágenes de entrada. Una de las
características clave de MobileNet es el uso de capas de convolución separables en
profundidad, cada bloque consiste en una secuencia, seguidas de una capa de activación
lineal ReLU6. Las capas convolucionales separables en profundidad se dividen en dos
etapas: la primera etapa realiza la convolución espacialmente, aplicando filtros separados
a cada canal de entrada, mientras que la segunda etapa realiza una convolución en el
espacio de características, combinando la información de los diferentes canales. Este
enfoque reduce significativamente la cantidad de operaciones requeridas, lo que hace
que MobileNetV2 sea más eficiente computacionalmente. Esta técnica permite reducir
significativamente la cantidad de operaciones necesarias para realizar la convolución y,
en consecuencia, hace que la red neuronal sea más adecuada para su ejecución en
dispositivos móviles
Además de las capas convolucionales separables en profundidad, MobileNetV2 también
utiliza capas de pooling llamadas "bottleneck" para reducir la dimensionalidad de las
características extraídas. Estas capas de pooling capturan información esencial y
preservan las características más relevantes, al resumir las características en un solo
valor.

Figura 2.11 MobileNet

Fuente: MobileNet-Tiny
21

Al utilizar una CNN basada en MobileNet y entrenada mediante transfer learning en el


contexto de las lesiones cutáneas, se pueden obtener resultados precisos y confiables
en la detección y clasificación de diferentes tipos de lesiones, como melanomas, nevos y
queratosis seborreicas, entre otros. Esta tecnología puede ser de gran utilidad en la
prevención y el tratamiento de enfermedades de la piel, al permitir una detección
temprana y precisa de lesiones sospechosas, lo que facilita la intervención médica
oportuna y mejora la calidad de vida de los pacientes.

2.6 MICROCONTROLADORES. –
Los microcontroladores son dispositivos electrónicos altamente integrados que combinan
un microprocesador, memoria y periféricos en un solo chip. Son componentes esenciales
en muchos sistemas electrónicos que van desde electrodomésticos, automóviles y
dispositivos médicos.

El funcionamiento de un microcontrolador se basa en la ejecución de instrucciones


almacenadas en su memoria para realizar diversas tareas de procesamiento y control.
Un microcontrolador típico consta de varios elementos básicos. El núcleo del
microcontrolador es el microprocesador, el cual es responsable de ejecutar instrucciones
y cálculos. La memoria del microcontrolador se utiliza para almacenar el programa y los
datos necesarios para su funcionamiento.

Figura 2.12 Microcontroladores

Fuente: Microcontroladores2

Los microcontroladores suelen tener dos tipos de memoria: ROM (memoria de solo
lectura) para el almacenamiento permanente de programas y RAM (memoria de acceso
22

aleatorio) para el almacenamiento temporal de datos durante la ejecución. Además de la


memoria, los microcontroladores también contienen periféricos integrados, como puertos
de entrada/salida (GPIO), convertidores de analógico a digital (ADC), convertidores de
digital a analógico (DAC), temporizadores y comunicación en serie (como UART). (SPI,
I2C). Estos periféricos permiten que el microcontrolador se comunique con el entorno
externo y facilitan el control de dispositivos y sensores.

2.6.1 RASPBERRY
Un microcontrolador popular es Raspberry Pi, este dispositivo se compone de una
serie SBC (Single Board Computers) desarrollada por la Fundación Raspberry Pi,
que se ha convertido en una herramienta popular y versátil para varios proyectos
informáticos. (Upton y Halfacree, 2014), los SBC de Raspberry Pi son conocidos
por su diseño compacto, bajo costo y enfoque en el avance de la educación
informática. Estos dispositivos ofrecen una amplia gama de especificaciones,
incluidos procesadores ARM multinúcleo, capacidad de memoria variable y
opciones de almacenamiento como tarjetas microSD. Además, la Raspberry Pi
cuenta con varios puertos como USB, Ethernet, HDMI y GPIO que te permiten
conectarte a periféricos externos y realizar proyectos electrónicos.

Figura 2.13 Raspberry Pi

Fuente: Big Mess

El Raspberry Pi destaca por sus cualidades y características técnicas que lo hacen


atractivo para proyectos de desarrollo y educativos. De acuerdo con Monk (2016),
estos SBC ofrecen una arquitectura abierta y flexible que permite a los usuarios
instalar y ejecutar diferentes sistemas operativos, incluyendo Linux y Windows 10
23

IoT Core. Además, el Raspberry Pi cuenta con capacidad de conectividad


inalámbrica a través de Wi-Fi y Bluetooth, lo que facilita la comunicación y la
interacción con otros dispositivos. Asimismo, el Raspberry Pi se destaca por sus
capacidades multimedia, ya que es capaz de reproducir videos en alta definición
y cuenta con interfaces de audio para conectar altavoces y micrófonos. Estas
características técnicas hacen del Raspberry Pi una herramienta poderosa para
proyectos de IoT, automatización del hogar, robótica, telemedicina y muchos otros
campos de aplicación.

2.6.2. ESP-32
ESP32 es un microcontrolador de bajo consumo y alto rendimiento desarrollado
por “Espressif Systems”. Tiene muchas características excelentes que lo
convierten en una opción popular para proyectos de Internet de las cosas (IoT) y
aplicaciones inalámbricas. Una de las características sobresalientes del ESP32 es
su capacidad de conectividad, compatible con Wifi y Bluetooth de modo dual, lo
que permite una amplia gama de opciones de comunicación inalámbrica. Además,
ESP32 está equipado con una CPU de doble núcleo de 32 bits que funciona hasta
a 240 MHz para garantizar un alto rendimiento y potencia informática. Además,
tiene una amplia gama de interfaces periféricas como UART, SPI, I2C, PWM y
GPIO, lo que facilita la conexión con otros dispositivos y sensores.

Figura 2.14 ESP32

Fuente Altroniks
24

2.6.3 ARDUINO
Arduino consta de varias placas de desarrollo que brindan diferentes funciones
para sus proyectos electrónicos. Una de las características distintivas de las placas
Arduino es su facilidad de uso y programación. un entorno de desarrollo integrado
(IDE) que proporciona una interfaz fácil de usar para escribir código y cargarlo en
su placa.

Figura 2.15 Arduino Uno

Fuente: Bricolage

La placa Arduino Uno es uno de los microcontroladores más populares y


ampliamente utilizados en electrónica y programación. Tiene muchas
características excelentes que lo convierten en una opción popular para proyectos
de creación rápida de prototipos. Una de las principales características del Arduino
Uno es su facilidad de uso y su amplia compatibilidad con diversos sensores,
actuadores y módulos electrónicos del mercado. Cuenta con un microcontrolador
ATmega328P de 16 MHz de 8 bits, que proporciona un rendimiento suficiente para
la mayoría de las aplicaciones de gama media y básica. Otra característica
importante es el amplio conjunto de pines de entrada/salida digital y analógica, que
permite la conexión de una amplia gama de componentes externos.

2.7 CAMARA. –
Las cámaras son dispositivos que capturan imágenes o videos mediante la utilización de
un sensor de imagen. El proceso básico de funcionamiento implica que la luz pasa a
25

través del objetivo de la cámara, que enfoca la luz sobre el sensor de imagen. El sensor
convierte la luz en señales eléctricas que se procesan para generar una imagen digital.

Figura 2.16 Sensor de cámara

Fuente: Foto24

2.7.1 CÁMARAS DIGITALES


Las cámaras digitales han experimentado un rápido avance tecnológico en las
últimas décadas, convirtiéndose en dispositivos versátiles y ampliamente
utilizados en diversas áreas, incluyendo la medicina. En particular, la dermatología
ha encontrado aplicaciones prometedoras en el uso de cámaras para la captura y
analizar las imágenes de la piel.

Para hablar un poco sobre las cámaras veremos su funcionamiento,


características relevantes y su aplicación en dermatología.

2.7.1.1 PRINCIPIOS BÁSICOS DE LAS CÁMARAS DIGITALES


Las cámaras se componen de varios elementos para que funcionen uno de
los componentes importantes son los sensores de imagen, este se encarga
de capturar la luz y convertirla en señales eléctricas. Hay dos tipos de
sensores de imagen

● CCD

CCD (Dispositivo de carga acoplada): Tecnología utilizada en sensores de


imagen que convierten la luz en carga eléctrica y luego se lee para formar
una imagen. Los sensores CCD ofrecen buena calidad de imagen, pero
pueden ser más costosos y consumir más energía.
26

● CMOS

CMOS (Semiconductor de óxido metálico complementario): Otra


tecnología utilizada en sensores de imagen que convierte la luz en
señales eléctricas y se lee para formar una imagen. Los sensores
CMOS son más comunes debido a su menor costo, menor consumo
de energía y capacidad de integrar funciones adicionales en el
mismo chip.

2.7.1.2 CARACTERÍSTICAS DE CÁMARAS DIGITALES


● Resolución: Se refiere a la cantidad de detalles y la nitidez de la
imagen capturada. Se mide en megapíxeles y representa la cantidad
de píxeles que forman la imagen.

● Sensibilidad a la luz: La capacidad de la cámara para capturar


imágenes en condiciones de poca luz. (“Las 15 mejores cámaras
antiguas para fotógrafos profesionales en 2023” “Nikon D1X by
MYT”) Se mide en valores ISO, donde una mayor sensibilidad ISO
permite capturar imágenes en condiciones de luz baja, pero puede
aumentar el ruido en la imagen.

● Velocidad de obturación: Determina la duración de tiempo en la


que el obturador de la cámara permanece abierto, lo que afecta a la
cantidad de luz que llega al sensor y la nitidez de los objetos en
movimiento.

● Apertura del diafragma: Controla la cantidad de luz que ingresa al


sensor y la profundidad de campo de la imagen

● Enfoque: La capacidad de la cámara para enfocar nítidamente los


objetos. Puede ser enfoque automático o manual, y se basa en
sistemas de detección de contraste, detección de fase u otros
métodos.
27

2.7.2 CÁMARAS EN MEDICINA

La aplicación de cámaras en la medicina ha abierto nuevas posibilidades en el


campo de la salud, permitiendo la evaluación y el diagnóstico remoto de pacientes
(Telemedicina). La telemedicina es el uso de tecnologías de la información y las
comunicaciones para brindar servicios médicos a distancia. (“La telemedicina qué
es, usos, avances tecnológicos y cifra”). Utiliza dispositivos y sistemas de
telecomunicaciones para facilitar la comunicación entre médicos y pacientes,
permitiendo la evaluación y el tratamiento a distancia. Las cámaras desempeñan
un papel fundamental en la telemedicina al permitir la captura y transmisión de
imágenes médicas de alta calidad.

Una de las áreas de la salud, donde la influencia de cámaras es especialmente útil


es en dermatoscopia. Las cámaras digitales de alta resolución han mejorado la
calidad de las imágenes dermatoscópicas, permitiendo una evaluación más
precisa y detallada de las lesiones cutáneas. Estas imágenes se pueden capturar
con cámaras integradas en dispositivos dermatoscópicos o utilizando adaptadores
para conectar cámaras a dermatoscopios convencionales. La captura de
imágenes dermatoscópicas de alta calidad es crucial para el análisis y la
interpretación precisa de las lesiones cutáneas.

2.7.3. RASPBERRY PI CÁMARA


Parte de la tecnología que hay mencionar es sobre la cámara Raspberry Pi es una
cámara de circuito impreso (PCB) diseñada específicamente para ser compatible
con las placas Raspberry Pi. Dichas cámaras se encuentran disponibles en
diferentes versiones y modelos, con diversas características y capacidades.
28

Figura 2.17 Cámara Raspberry Pi

Fuente: Microbot Electrónica

Para entender un poco más sobre estas cámaras, hablaremos de las que existen
actualmente y parte de sus características

● Cámara Raspberry Pi v1: Esta fue la primera versión de la cámara lanzada por
la Raspberry Pi Foundation. Tiene una resolución de 5 megapíxeles y puede
capturar imágenes fijas y videos.
● Cámara Raspberry Pi v2: Esta versión mejorada tiene una resolución de 8
megapíxeles y también permite capturar imágenes fijas y videos. Cuenta con
un sensor Sony IMX219 y se conecta a la placa Raspberry Pi mediante un
cable plano flexible.
● Cámara Raspberry Pi NoIR: Esta versión es similar a la cámara v2, pero está
diseñada específicamente para aplicaciones de visión nocturna. Cuenta con un
filtro infrarrojo removible, lo que permite capturar imágenes en condiciones de
poca luz o con iluminación infrarroja.
● Cámara Raspberry Pi HQ: La cámara Raspberry Pi HQ (High Quality) fue
lanzada en 2020 y presentó una mejora significativa en la calidad de imagen.
Tiene un sensor Sony IMX477 de 12.3 megapíxeles y permite la captura de
imágenes fijas y videos de alta resolución. También incluye un sistema de
enfoque ajustable.

2.7.3.1. VENTAJAS Y LIMITACIONES DE LA CÁMARA DEL RASPBERRY PI


29

Ventajas:

● Asequible: La cámara del Raspberry Pi es relativamente económica en


comparación con muchas cámaras independientes en el mercado.
● Integración con Raspberry Pi: La cámara está diseñada específicamente
para ser utilizada con las placas Raspberry Pi, lo que facilita su conexión y
uso. Se conecta directamente a los conectores CSI (Interfaz de cámara
serie) de la placa Raspberry Pi, eliminando la necesidad de adaptadores
adicionales.
● Tamaño compacto: La cámara del Raspberry Pi es pequeña y liviana.
● Software y soporte: La cámara del Raspberry Pi cuenta con un sólido
soporte de software.
● Flexibilidad y versatilidad: La cámara del Raspberry Pi puede utilizarse para
una variedad de aplicaciones, desde la captura de imágenes y videos
simples hasta proyectos más avanzados de visión artificial y detección de
movimiento. Hay una variedad de opciones de configuración disponibles
para ajustar la calidad de imagen, el enfoque y otros parámetros.

Limitaciones:

● Calidad de imagen limitada: La calidad de imagen de la cámara del


Raspberry Pi ha mejorado en versiones recientes, no se puede comparar
con las cámaras profesionales o de alta gama en cuanto a resolución, rango
dinámico y rendimiento con poca luz.
● Limitaciones de enfoque: Algunas versiones de la cámara del Raspberry Pi
tienen enfoque fijo, lo que significa que no se puede ajustar manualmente
el enfoque.
● La sensibilidad a la luz de la cámara del Raspberry Pi puede ser limitada
comparada con cámaras más avanzadas. Puede tener dificultades para
capturar imágenes claras y nítidas en entornos con poca iluminación.
30

● Limitaciones de opciones de lentes: A diferencia de algunas cámaras


independientes, la cámara del Raspberry Pi no tiene una amplia selección
de lentes intercambiables disponibles.

Las cámaras digitales, incluida la del Raspberry Pi, han demostrado ser
herramientas valiosas en dermatología, captando imágenes de alta resolución,
facilitando la documentación y el diagnóstico, y habilitando el análisis y
procesamiento de imágenes para detectar enfermedades de la piel. A pesar de las
limitaciones inherentes a las cámaras de bajo costo, el Raspberry Pi ofrece una
solución accesible y versátil para la adquisición y análisis de imágenes
dermatológicas, abriendo nuevas posibilidades en el campo de la telemedicina y
el desarrollo de sistemas de apoyo al diagnóstico.

2.7.4 CÁMARA OV5640


El sensor de cámara OV5640 es un componente comúnmente utilizado en la placa
ESP32-CAM para capturar imágenes y videos. Presenta varias características
notables que se utilizan en amplia variedad de aplicaciones, desde dispositivos
móviles, sistemas de visión artificial y captura de imágenes en proyectos de
Internet de las cosas (IoT).

Figura 2.18 Cámara OV5640- ESP32

Fuente: ELKIN
31

La cámara OV5640 utiliza un sensor de imagen CMOS de 5 megapíxeles con una


matriz de píxeles de 2592x1944, lo que proporciona una resolución nítida y
detallada. Además, cuenta con una interfaz de comunicación serie (I2C) que
permite la configuración y el control de parámetros de la cámara, como el balance
de blancos, la exposición y la saturación, entre otros. La cámara OV5640 también
incluye una lente integrada que permite el enfoque automático y manual, lo que
brinda flexibilidad en la captura de imágenes. Además, este módulo es compatible
con la placa ESP32, lo que facilita su integración en proyectos basados en esta
plataforma.

2.8 FUENTES DE ILUMINACIÓN


Los Leds (diodos emisores de luz, por sus siglas en inglés) son dispositivos
semiconductores que han revolucionado la industria de la iluminación debido a sus
numerosas ventajas en comparación con las fuentes de luz tradicionales. A diferencia de
las bombillas incandescentes o fluorescentes, los Leds son más eficientes
energéticamente, duraderos, compactos y versátiles.

Los Leds son dispositivos de estado sólido que emiten luz cuando una corriente eléctrica
pasa a través de ellos. Están compuestos por capas de materiales semiconductores,
donde se crea una unión pn (unión de tipo p y tipo n) que permite el flujo de corriente en
una sola dirección. Al aplicar una tensión adecuada a través de la unión pn, los electrones
en la capa de tipo n adquieren energía suficiente para saltar a la capa de tipo p, liberando
fotones en el proceso. La longitud de onda de la luz emitida está determinada por las
propiedades del material semiconductor y puede variar desde el ultravioleta hasta el
infrarrojo, pero los Leds más comunes emiten luz visible.
32

Figura 2.19 Imagen de diodo led

Fuente PygmalionTech

Uno de los avances más significativos en la tecnología de los Leds es la incorporación


de módulos RGB. Estos módulos están compuestos por múltiples Leds de colores
primarios: rojo (R), verde (G) y azul (B). Al combinar estas tres luces primarias en
diferentes proporciones, se pueden generar millones de colores y tonalidades,
permitiendo una amplia gama de efectos de iluminación. Los módulos RGB son
especialmente populares en aplicaciones de iluminación decorativa, pantallas de
visualización, señalización y sistemas de iluminación inteligente.

Figura 2.20 Led RGB 5050 smd

Fuente: LC LED

En los módulos RGB, cada LED de color primario se controla de forma independiente
mediante circuitos electrónicos integrados. Esto permite ajustar la intensidad luminosa de
cada color y crear efectos dinámicos, como transiciones suaves, cambios de color y
patrones intermitentes. Los módulos RGB también pueden ser controlados mediante
33

señales digitales, como el protocolo de comunicación PWM (modulación por ancho de


pulso), que facilita la sincronización y el control preciso de los colores emitidos.

2.9 OBJETIVO DE AUMENTO

El objetivo de aumento, también conocido como objetivo de magnificación, es un


componente óptico utilizado en microscopios, lupas y otros dispositivos de ampliación
para aumentar el tamaño aparente de un objeto o muestra. El objetivo de aumento se
utiliza en conjunto con otros componentes ópticos, como oculares y sistemas de
iluminación, para permitir la visualización detallada de objetos pequeños.

El propósito es proporcionar una ampliación específica para permitir la observación y el


análisis de muestras con un mayor nivel de detalle (Smith, 2017). El grado de ampliación
se refiere a la medida en que la muestra aparece más grande en comparación con su
tamaño original (Johnson, 2019).

Los objetivos de ampliación suelen expresarse como una relación numérica, como 10x,
40x, 100x, entre otros. Esta cifra indica cuántas veces se aumenta el tamaño de la
muestra.

Figura 2.21 Lentes de aumento

Fuente: Wordpress

El objetivo de aumento permite examinar detalles finos y estructuras microscópicas en la


muestra (Smith, 2017). En combinación con otros objetivos de ampliación y sistemas de
iluminación, se logra un rango de ampliación variable y una visualización detallada en
diferentes niveles de aumento (Johnson, 2019; Brown, 2018).
34

2.10 HERRAMIENTAS DE DESARROLLO


Para desarrollar los softwares de deben implementar OPEN SOURCE que ayuden a
reducir el costo y sean accesibles, por lo tanto, se debe describir las herramientas que se
plantean utilizar en el desarrollo de los sistemas.

2.10.1 LENGUAJE DE PROGRAMACIÓN

2.10.1.1 PYTHON
Figura 2.22 Logo Python

Fuente: Ilustre

Python es un lenguaje de programación interpretador, lo que implica que no requiere


compilar el código fuente antes de ejecutarlo. Además, es versátil y se puede utilizar en
diferentes plataformas. Python es un lenguaje multiparadigma diseñado con orientación
hacia objetos, para abordar muchos programas, para diseñar aplicaciones de escritorio y
entornos web.

Al ser un lenguaje de programación de código abierto y libre, quiere decir que cualquier
persona puede adquirir y utilizar, así crear sus propios programas con ayuda de las
diferentes librerías con las que cuenta.

2.10.2 BACKEND

El back-end del sitio web consiste en un servidor, una aplicación y una base de datos.
(“¿Qué es Back end y Front end? – NovaTech”) Se toman las imágenes, los datos del
paciente y se procesa con la red neuronal convolucional, dando al doctor los resultados
del procesamiento con la red neuronal.

Cuando se habla de “back-end” se refiere al interior de las aplicaciones que viven en el


servidor y a menudo se le denomina “El servidor “.
35

En síntesis, el back-end se refiere aquellos aspectos que las personas no pueden ver en
el navegador, entre ellos el servidor y la base de datos.

2.10.2.1 FRAMEWORK DJANGO


Django es un framework de aplicaciones web open source escrito en Python, que cumple
en cierta medida el paradigma de modelo, vista y controlador.

Django se encarga de gran parte de las molestias del desarrollo web, por lo que puede
concentrarse en escribir su aplicación sin necesidad de comenzar de nuevo el proceso
con la base de datos y el controlador del framework. Django fue diseñado para ayudar a
los desarrolladores a llevar la aplicación desde el concepto hasta su finalización lo más
rápido posible. (“Udemy Gratis: Curso para crear una aplicación web con Django -
Facialix”)

Figura 2.23 Logo Django

Fuente: Django

Arquitectura

Django se acomoda a la filosofía de arquitectura Modelo-Vista-Controlador (MVC) como


muchos otros frameworks de una manera particular

Modelo
Una de las partes más potentes de Django es su modelo de datos. Cada modelo creado
se mapea en diferentes tablas en la base de datos. Esto permite aislar la base de datos
del código y olvidarse de los diferentes querys.
Vista
36

La capa de presentación se basa en plantillas HTML. Django presenta un template engine


y un template loader que permite presentar al usuario diversas páginas HTML usando
una base como plantilla, (“Django - EcuRed”)
Controlador.
En Django se llama view, pero su función es la de actuar como controlador. Cada vista,
escrita en código Python puro, cada view sirve para atender una consulta de HTML según
base en mapas de URL.
En cuanto a la base de datos, viene con SQLite 3 por defecto y soporta MySQL y
PostgreSQL

2.10.3 FRONT-END
Esta es la cara del proyecto, lo que las personas llegan a ver, para desarrollarlo se incluye
el diseño y ciertos lenguajes de programación. Además, hay que destacar su
característica funcional, ya que el usuario puede interactuar con el sitio web. Siendo así
cumplir altos estándares de usabilidad y estética. Se lo puede conocer como la capa que
se encuentra encima del Back-end, por sus menús desplegables, imágenes, iconos,
colores, elementos gráficos, animaciones, etc.

2.10.3.1 React

Para el front-end se usará React, esta una biblioteca de JavaScript popular para construir
interfaces de usuario interactivas y reactivas. Permite crear componentes reutilizables
que representan partes específicas de la interfaz de usuario y los actualiza de manera
eficiente cuando cambian los datos.

Figura 2.24 Logo React Fuente

Fuente: Aulab
37

2.10.4 EDITOR DE CÓDIGO


Para concluir se necesita un editor de código. Este es una herramienta de software
diseñada específicamente para escribir, editar y administrar código fuente de programas.
Proporciona características y funcionalidades que facilitan la escritura y edición de
código, como resaltado de sintaxis, autocompletado, navegación por el código,
depuración y muchas otras.

2.10.4.1 Visual Studio Code (VS Code)

Es un popular editor de código fuente desarrollado por Microsoft. Es gratuito, de código


abierto y compatible con una amplia gama de lenguajes de programación y tecnologías.

Figura 2.25 Logo Visual Studio Code

Fuente: Ubuntu

Después de la instalación, se podrá abrir Visual Studio Code y comenzar a utilizarlo como
editor de código para desarrollar aplicaciones en diferentes lenguajes de programación.
Este editor de código es de gran utilidad ya que se puede personalizar según las
preferencias y aprovechar las numerosas extensiones disponibles para ampliar su
funcionalidad.
CAPÍTULO III
MARCO PROPOSITIVO O
INGENIERÍA DEL PROYECTO
38

CAPÍTULO III

MARCO PRÁCTICO

3. SOLUCIÓN PROPUESTA
3.1 DESCRIPCIÓN.
El proyecto se plantea realizar por tres partes, la primera sería la captura de la imagen
con la lesión.

Se diseñará un dispositivo para la obtención correcta de todos los detalles de la lesión.


Se plantea desarrollar un dermatoscopio, utilizando un lente de aumento de 10x, un
microcontrolador capaz de compartir datos mediante redes inalámbricas, también
compatible con un cámara de buena resolución en megapíxeles, cámara con
características de autoenfoque y calidad. Para obtener detalles más específicos se
implementará leds RGB (blanco).

Como segunda parte se tiene el procesamiento de imágenes por redes convolucionales.


Donde se realizará de la siguiente manera:

● Base de datos de imágenes con lesiones dermatológicas. -


Como base de datos de imágenes dermatológicas se utilizará un dataset de La
International Skin Imaging Collaboration (ISIC), donde se tiene imágenes
dermatoscopias obtenidas de diferentes poblaciones, adquiridas y almacenadas
por diferentes modalidades, este es de libre uso. A la par se realizará una base de
datos propia con las imágenes que se obtendrá, estas se etiquetan y almacenan
para generar un dataset propio.
● Preprocesamiento de imágenes. –
Para hacer una manipulación correcta del dataset y la red neuronal convolucional
pueda funcionar, se hará un preprocesamiento de las imágenes y etiquetas,
también el procesado de color y ruido.
● Procesamiento de imágenes. –
Las enfermedades dermatológicas presentan características de pigmentación,
tamaño y forma, por lo que se realizará la segmentación de los límites de la lesión,
seguido de detectar atributos de lesiones mediante la herramienta web Robot Flow
39

que facilitará procesamiento de imágenes y será útil para construir la red neuronal
convolucional.
● Diseño de arquitectura y clasificación de datos. -
Para el diseño de la arquitectura se utilizará Google colabs, con el framework de
Deep learning “Tensor Flow”, donde se realizará el entrenamiento de la red
neuronal, ya que el dataset cuenta con imágenes procesadas y etiquetas de las
lesiones más comunes.
Para finalizar se tendrá la clasificación de datos donde presentará el tipo de lesión.

Finalmente, en la tercera parte se diseñará una interfaz de usuario amigable, esta se la


desarrollará mediante Django, como backend y React como fronten, esta será útil para
ingresar los datos del paciente y la imagen que desea procesar, dando la clasificación
esperada y desplegará las características de los dos tipos de lesiones.

3.2 DIAGRAMAS

3.2.1 DIAGRAMA DE CONTEXTO


Figura 3.1 Obtención de la lesión

Fuente Elaboración Propia, 2023

Figura 3.2 Red neuronal convolucional

Fuente: Efficient Backprop, 1998

Figura 3.3 Pantalla de interfaz de usuario

Fuente: depositphotos, 2022


40

3.2.2 DIAGRAMA DE FLUJO.


Figura 3.4 Diagrama de bloques

Fuente Elaboración Propia, 2023

Figura 3.5 Diagrama de bloques interfaz usuario

Fuente Elaboración Propia, 2023


41

3.3 ANÁLISIS DE REQUERIMIENTO

Para el proyecto se requiere, un dispositivo compatible con cámaras de alta


resolución, pero disponibles en el mercado, que sea portable y que tenga conexión con
redes inalámbricas como wifi o bluetooth. En cuanto a su uso debe ser accesible y fácil
para la manipulación del doctor.
Principalmente, se requiere una placa de control capaz de procesar toda la información,
adquirir las imágenes dermatológicas y poder enviarlas.
El desarrollo del proyecto se generará según normas y reglamentos establecidos,
ayudando al médico dermatólogo con su trabajo, generando un dispositivo económico y
cumpliendo requerimientos médicos.

3.4 DIAGRAMA DE ALTO NIVEL


En breve introducción se presentará el diagrama de bloques del dispositivo para
obtener lesiones cutáneas.
Figura 3.6 Diagrama de Bloques

Fuente Elaboración Propia, 2023

3.4.1 ALIMENTACIÓN

Para la alimentación del microcontrolador y todos los requerimientos del proyecto


se necesita una fuente portátil, está para cumplir los requerimientos de funcionamiento,
también tener protección del dispositivo y seguridad del paciente y usuario.
42

3.4.2 UNIDAD DE CONTROL Y PROCESAMIENTO

El microcontrolador será encargado de hacer funcionar la cámara mediante un


código, tiene que ser capaz de adquirir las imágenes, también será encargado de enviar
dichas imágenes a una base de datos en la nube, Este método de envió será mediante
wifi, por lo cual debe tener la cualidad de poder conectarse a internet.

3.4.3 CÁMARA

Para obtener la lesión, se utilizará un módulo de cámara que cumpla los


requerimientos del proyecto, tanto en parte técnica como la resolución, el tamaño del
sensor, el cual debe ser importante ya que debe entrar con el lente de aumento.

3.4.4 ILUMINACIÓN. –

Para que exista una fotografía con mejor detalle de la zona, se requerirá luces led
de color blanco RGB, se necesita esto para adquirir la pigmentación de la lesión, también
para mejorar la imagen como un procesamiento de la imagen.

3.4.5 LENTE DE AUMENTO

Finalmente, en el dispositivo se necesitará un lente de aumento, para poder ver


detalles de la lesión, respectivamente el lente tiene que ser de aumento microscópico o
de gran aumento.

3.5 SELECCIÓN DE TECNOLOGÍAS

3.5.1 BATERÍAS

Como la unidad de procesamiento es un mini pc se necesitará la fuente de


alimentación de alta capacidad y con requerimientos específico, por lo cual se
consideraron estos componentes:
Tabla 3.1 Comparación de baterías
Xiaomi Power Bank 3 Ultra
CRITERIO Anker PowerCore 20100
Compact.

TAMAÑO 90.3mm x 63.9mm 166mm x 58mm

VOLTAJE 3.7V 3.7V


43

CORRIENTE 2.4A 4.8A

POTENCIA 22.5Wh 70Wh

PROTECCIÓN SI SI

COSTO ACCESIBLE COSTOSO

BATERÍA DE POLÍMERO DE
TIPO BATERÍA PORTATIL (LI-ION)
LITIO (LI-PO)

Fuente Elaboración Propia, 2023

Se escogió el power bank 3 ultra compact de Xiaomi, por la disponibilidad en el mercado,


la accesibilidad en costo y el tamaño. También cabe mencionar sobre los circuitos de
protección que cuenta el power bank.

3.5.2 UNIDAD DE PROCESAMIENTO

Para los requerimientos del proyecto se debe tener en consideración microcontroladores


que sean compatibles con módulos de cámara, por lo cual se tomaron en consideración
los siguientes:
Tabla 3.2 Comparación de Unidad de procesamiento

CRITERIO ESP-32 CAM RASPBERRY PI

Procesador ESP32 (dual Core, 32-bit) Broadcom BCM2711 (quad core, 64-bit)

Velocidad de reloj Hasta 240 MHz 1.5 Hz

2 GB, 4 GB o 8 GB (dependiendo del


Memoria RAM 4 MB modelo)

Ranura para tarjeta


Almacenamiento microSD Ranura para tarjeta microSD

Conectividad Wi-Fi, Bluetooth Ethernet, Wi-Fi, Bluetooth

Puertos USB 1x micro USB 2x USB 3.0, 2x USB 2.0

Salida de video No 2x micro HDMI (hasta 4K a 60 Hz)

GPIO 9 pines GPIO disponibles 40 pines GPIO


44

5 V o 3.3 V (dependiendo de la
Voltaje de entrada 5V configuración)

SOPORTE CAMARA Si, solo 3 megapíxeles Si, de 3, 5 y 8 megapíxeles

Fuente Elaboración Propia, 2023

Contemplando lo anterior, se escogió el minicomputador Raspberry pi, principalmente por


la compatibilidad con la cámara de 8 megapíxeles mejorando la resolución de la imagen
de la lesión, aparte de contar con conexión HDMI para visualizar antes de la captura.

3.5.3 CÁMARA

Parte central del proyecto es la cámara para obtener las imágenes necesarias de la
lesión, en este caso, se consideran estas cámaras de diferentes módulos.
Tabla 3.3 Comparación de Cámaras

Raspberry Pi Cámara HQ Raspberry Pi


Característica Module 2 Cámara OV5640 Cam
Resolución de
imagen 8 megapíxeles 5 megapíxeles 12,3 megapíxeles
Tipo de sensor Sony IMX219 OV5640 Sony IMX477
Tamaño del
sensor 1/4" 1/4" 1/2.3"
Tamaño del píxel 1.12 µm 1.4 µm 1.55 µm
Apertura máxima f/2.0 f/2.8 f/2.0
Campo de visión 62.2 grados 69 grados 77 grados
Enfoque Fijo Ajustable Ajustable
Conexión Conector CSI Conector CSI Conector CSI
Raspberry Pi y Raspberry Pi 3 y
Compatibilidad Raspberry Pi 2 y 3 otras posteriores
Ventajas Alta resolución Bajo costo Alta calidad de imagen
Sensor más Resolución más
Desventajas pequeño baja Mayor costo
Fuente Elaboración Propia, 2023

Con las respectivas comparaciones se planteaba escoger la cámara HQ de Raspberry,


pero no se encuentra disponible en el mercado y el coste de importación es muy elevado.
Por lo cual se escogió la cámara Module V2, que igual cumple con la calidad de
megapíxeles, y la compatibilidad con la unidad de procesamiento.
45

3.5.4 ILUMINACIÓN. –

Como parte complementaría del dermatoscopio debe tener una luz blanca, en este caso
se consideraron estas opciones:
Tabla 3.4 Comparación de led

Módulo LED RGB WS2812 LED Diodo Blanco


Característica de 12 bits Convencional

Tipo de LED RGB Blanco


No se puede
Control de color Cada LED se puede controlar cambiar el color
Resolución de
color 12 bits por canal N/A
Posibilidad de
mezclar colores Sí No

Brillo ajustable Sí No
Consumo de
energía Variable Variable
Directo a una
fuente de
alimentación o
Requiere controlador o resistencia
Conexión microcontrolador compatible limitadora
Iluminación decorativa,
Uso común efectos de luz, pantallas LED Iluminación general
Capacidad de crear efectos Mayor
de luz y colores disponibilidad y
Ventajas personalizados menor costo
Requiere controlador Limitado a una sola
Desventajas adicional tonalidad de color
Fuente Elaboración Propia, 2023

Para la selección de la tecnología en cuanto a la iluminación se tenía planteado utilizar el


módulo RGB led WS2812, este por temas de importación no se pudo conseguir con el
tamaño adecuado al lente, por lo tanto, se utilizó los leds convencionales con un diseño
de regulación del brillo, y un armado simétrico.
46

3.5.5 LENTE DE AUMENTO. -

Finalmente, para la adquisición de la lesión con aumento microscópico se requerirá un


lente de aumento que pueda integrarse con la cámara. Las opciones del dermatoscopio
son.
Tabla 3.5 Comparación de lente de aumento

Lente de
Lente Ocular Lente Objetivo aumento
Característica 10x 40x 100x

Aumento de la
imagen 10x 40x 100x

Campo de visión Amplio Reducido Reducido

Distancia de
enfoque 20mm 300mm 500mm

Resolución Menor Mayor Menor

Observación de Aumento
Observación detalles más como lente
Aplicación general pequeños de cámaras

Observación
Exploración Observación detallada, de
inicial, detallada, análisis
Uso búsqueda de análisis microscópic
recomendado objetos microscópico o

Amplio campo Mayor No es


de visión, aumentó, voluminoso,
mayor resolución más mayor
Ventajas comodidad alta aumento

Menor Menor campo No enfoca


aumento, de visión, fácilmente y
menor mayor dificultad distancias
Desventajas resolución para enfocar amplias
47

Fuente Elaboración Propia, 2023

En este caso se puso a prueba los diferentes lentes de aumento, se terminó a usar el
lente ocular más que todo por la distancia a enfocar y el amplio campo de visión.

3.6 DISEÑO DE BAJO NIVEL

Para introducirnos en el diseño del dermatoscopio, se tuvo en consideración varios


aspectos tanto en la portabilidad, comodidad y factores de uso. Es por eso, que se
realizaron diseños, códigos y diferentes aspectos para cumplir con los
requerimientos necesarios planteados anteriormente.

3.6.1 BATERÍA

Como parte inicial se tiene la batería, esta será la Xiaomi Mi Power Bank 3 10000
mAh
Figura 3.7 Xiaomi Mi Power Bank 3

Fuente: Xiaomi

Esta batería será encargada de alimentar al raspberry pi, a la cámara y al módulo


de iluminación por lo cual se consideró el tiempo de funcionamiento, donde se
tiene una estimación aproximada con los cálculos que se presentaran a
continuación

● Capacidad del Power Bank:

10000 mAh Voltaje de salida: 5 V


48

● Consumo total aproximado:

Raspberry Pi 4B: 2.5 A * 5 V = 12.5 W


Cámara Module V2: 0.25 A * 5 V = 1.25 W
Consumo total: 12.5 W + 1.25 W = 13.75 W

● Tiempo aproximado de funcionamiento:

Capacidad del Power Bank / Consumo total


10000 mAh / 13.75 W ≈ 727.27 mAh / W

Por lo tanto, aproximadamente, el Mi Power Bank 3 de 10000 mAh podría


alimentar el Raspberry Pi 4B y la cámara Module V2 durante unas 52-53 horas.

3.6.2 MICROPROCESADOR

Para que se pueda controlar el dermatoscopio se está usando el minicomputador


Raspberry pi 4b este será encargado de mandar las señales correspondientes
para que la cámara adquiera la imagen, la procese y la envié a la base de datos
en la nube.
Figura 3.8 Raspberry pi

Fuente: Bricolabs
Principalmente en este apartado se hablará sobre cómo funcionan los procesos
de instalación de librerías el raspberry mediante comandos de activación, el código
para adquirir las imágenes y también sobre los pasos para poder enviar las
imágenes a la base de datos.
49

3.6.2.1 LIBRERÍAS
Para el funcionamiento de cámara se requiere de la instalación de librerías dentro
del raspberry.
1. Dentro de la consola de comandos ingresar el siguiente comando:
cd Desktop.
2. El comando nos llevará al escritorio del raspberry, donde ingresamos los
siguientes códigos.
pip3 install picamera (instala librerías de la cámara).
pip3 install pyrebase (instala librerías de fire data base).

3.6.2.2 BASE DE DATOS. -

En el planteamiento del proyecto se tiene que él envió de las imágenes será


mediante redes inalámbricas por lo cual se utilizó Firebase, la cual es una
plataforma de desarrollo de aplicaciones en la nube que ofrece una amplia gama
de servicios y herramientas para ayudar a los desarrolladores a crear aplicaciones
móviles y web de alta calidad de manera rápida y eficiente, sin contar que es open
source.
Para poder enlazar el dispositivo y la base de datos es necesario obtener parte de
código para enviar las imágenes. Se tiene que realizar una configuración en
Firebase. (Anexo Base de datos)
Figura 3.9 Guía de configuración “Código de enlace”

Fuente Elaboración Propia, 2023


50

Con la obtención del código de enlace se podrá obtener las fotos tomadas con el
dermatoscopio y se podrá visualizar, descargar y analizar desde una página web.
Para luego poder implementarla a la página web de procesamiento con redes
neuronales convolucionales.

3.6.2.3 CÓDIGO. –
Para desarrollar el funcionamiento de la cámara se desarrolló un código basado
en un diagrama de bloques, que da instrucciones de como activar la cámara, el
código se lo desarrolló Python.

Figura 3.10 Diagrama de flujo de código para funcionamiento de cámara

Fuente Elaboración Propia, 2023


51

3.6.2.3.1 EXPLICACIÓN DE PARTES DE CÓDIGO


La primera parte encargada de importar bibliotecas y librerías necesarias.
necesarias para la manipulación de fechas y horas, el control de la cámara, los
retrasos de espera y las funciones del sistema operativo. RPi.GPIO que activa los
pines del Raspberry, nos permite controlar cada pin dependiendo del código.
Figura 3.11 Instalación de Librerías

Fuente Elaboración Propia, 2023

Esta línea importa la biblioteca pyrebase, que proporciona una interfaz de Python
para interactuar con los servicios de Firebase.
Figura 3.12 Importación de biblioteca que conecta con Firebase

Fuente Elaboración Propia, 2023

En esta parte se establecen los pines GPIO como entradas con resistencia pull-
down habilitadas. Esto significa que los pines están en estado bajo de forma
predeterminada y leerán alto cuando se conecten a una fuente de voltaje.

Figura 3.13 Configuración de puertos GPIO

Fuente Elaboración Propia, 2023

Este es un diccionario que almacena la configuración para conectarse a Firebase.


Incluye la clave de API, el ID del proyecto, el almacenamiento en la nube y otras
credenciales. Obtenidas anteriormente de Firebase
52

Figura 3.14 Configuración de enlace Firebase

Fuente Elaboración Propia, 2023

La parte continua del código monitorea constantemente dos pines GPIO en la


Raspberry Pi. Si se detecta un estado alto en el pin 10, se inicia la vista previa de
la cámara. Luego, si se detecta un estado alto en el pin 11, se captura una imagen,
se guarda en el almacenamiento de Firebase, se muestra un mensaje en la
consola y se elimina el archivo de imagen. El bucle continúa ejecutándose
infinitamente, esperando nuevas interacciones con los botones.

3.6.3 CÁMARA

Para obtener imágenes se adquirió la cámara module v2 de Raspberry, que se


encargará de obtener imágenes las lesiones cutáneas. Esta cámara cuenta con una
resolución de 8 megapíxeles y de enfoque ajustable.

Figura 3.15 Cámara module V2

Fuente: Ja-Bots

Como parte del diseño del dermatoscopio al implementar la cámara se tuvieron


inconvenientes, donde se hicieron varias pruebas de la calidad de la imagen, estos
53

inconvenientes salieron del tamaño del lente del sensor, al ser muy pequeño no se
adquiere una imagen de buena calidad.
Por tal motivo, se quitó el lente de la cámara, quedando expuesto el sensor, al realizar
pruebas con los objetivos de aumento no se tenía un enfoque fijo, por lo cual se
procedió a realizar un soporte mediante impresión 3D para poder acoplar un lente de
mayor ángulo, dicho lente obtenido de una cámara web.

Figura 3.16 Lente cámara

Fuente: Logitech

Como lo mencionado anteriormente se desarrolló un modelo 3D mediante FreeCAD,


este modelo es para que se pueda enroscar el lente, ajustar el enfoque y a la vez se
pueda acoplar al lente ocular.
Figura 3.17 Modelo 3D de lentes

Fuente Elaboración Propia, 2023

Para finalizar se hicieron pruebas realizando esta adaptación, teniendo una mejor
calidad de la imagen y un enfoque óptimo.
54

Figura 3.18 Prueba de cámara

Fuente Elaboración Propia, 2023

3.6.4 PROCESAMIENTO DE IMÁGENES

Para una mejor calidad de imagen se hizo un procesamiento de imágenes mediante


software, se implementó un código que realiza dicho procesamiento digital de imágenes
directamente desde la cámara.

Se aplicó como primer procesamiento un recorte de dimensión de la imagen en este caso


se hizo un recorte de 380 x 380, esta medida es similar a las imágenes que ingresaron al
modelo para su entrenamiento. Proseguido, se aplicó un filtro Gaussiano para suavizar
una imagen y reducir el ruido. El objetivo principal de este filtro es eliminar las variaciones
bruscas de intensidad entre los píxeles adyacentes, lo que ayuda a mejorar la calidad
visual de la imagen.

Finalmente se aplicó la función cv2.detailEnhance() que es parte del módulo de mejora


de detalles de OpenCV su función es resaltar los detalles finos y mejorar el contraste en
una imagen. Esta función ayuda a mejorar la claridad y los detalles en la imagen,
acentuando las transiciones entre los píxeles y realzando los bordes.
55

Figura 3.19 Comparación de imagen sin filtros (Izquierda) contra imágenes con filtros
(Derecha)

Fuente Elaboración Propia, 2023

3.6.5 DISEÑO CIRCUITO

Para el diseño del proyecto se tiene el siguiente diagrama donde se detalla los pines
GPIO a utilizar para la activación de los botones y la conexión de la cámara.

● En el pin 10 (GPIO 15) se conecta el botón de activación de cámara, para la


previsualización.
● En el pin 11 (GPIO 17) se conecta el botón de captura de la imagen.
● En el pin 1 (3.3 V) se conectan las patitas de ambos botones por la configuración
pull-down
● El Flex de la cámara se conecta al puerto CSI

Figura 3.20 Diagrama del circuito

Fuente Elaboración Propia, 2023


56

3.6.6 ILUMINACIÓN

Para obtener detalles de pigmentación con el dermatoscopio es importante


implementar una fuente de iluminación. En este caso se hizo el diseño de un
arreglo de diodos led para que se pueda iluminar la zona de manera simétrica. Se
tuvo en consideración que es un factor que puede influir en la calidad de la imagen
por lo que se diseñó un dispositivo regulable de brillo.

Figura 3.21 Diseño esquemático arreglo de 12 leds

Fuente Elaboración Propia, 2023

En este diseño para regular el brillo se implementaron 12 diodos Leds de alto brillo,
se utiliza un transistor NPN BC547 en conjunto con un potenciómetro. Los ánodos
de los Leds se conectan en paralelo, mientras que a cada cátodo se le agrega una
resistencia de 220 ohm para limitar la corriente. La conexión de los cátodos se
dirige al colector del transistor BC547, y su emisor se conecta al terminal negativo
de la fuente de alimentación. El potenciómetro, un dispositivo de 100k ohmios, se
utiliza para regular el brillo de los Leds. Su terminal central se conecta a la base
del transistor BC547 a través de una resistencia de 1k ohmio. Uno de los
terminales exteriores del potenciómetro se conecta al terminal positivo de la fuente
de alimentación, mientras que el otro se conecta al terminal negativo (tierra). La
salida del potenciómetro se conecta al terminal de base del transistor a través de
la resistencia de 1k ohmio.
57

Figura 3.22 Armado de iluminación

Fuente Elaboración Propia, 2023

Al girar el potenciómetro, se varía la corriente de base del transistor BC547, lo que


a su vez controla la corriente que fluye a través de los Leds. Esto permite regular
el brillo de los 12 Leds de alto brillo conectados en el circuito. La resistencia en
serie con cada LED garantiza que la corriente se mantenga dentro de los límites
seguros para evitar daños. Este diseño proporciona una solución sencilla y efectiva
para controlar la luminosidad de los Leds, brindando flexibilidad y ajuste
personalizado.

3.6.7 CARCASA

Para desarrollar la cámara dermatoscopia se diseñó una carcasa completa para


almacenar todos los componentes y que este sea portátil. Para el desarrollo se
utilizó freeCAD con las medidas de cada componente, ensamblado con tornillos,
como se ve a continuación

Figura 3.23 Carcasa del dermatoscopio completo

Fuente Elaboración Propia, 2023


58

Figura 3.24 Carcasa de soporte de cámara

Fuente Elaboración Propia, 2023

Figura 3.25 Carcasa de costado

Fuente Elaboración Propia, 2023

Figura 3.26 Carcasa impresa 3D

Fuente Elaboración Propia, 2023


59

3.7 DISEÑO DEL SOFTWARE DE RED NEURONAL CONVOLUCIONAL

El presente subtítulo abordará sobre la construcción de la red neuronal convolucional que


realizará el diagnóstico de las lesiones consideradas en el proyecto, como una
metodología ágil de la creación de la red neuronal convolucional. Se utilizaron
herramientas en la web para facilitar el proceso de creación de la red neuronal.

3.7.1 DATASET
El requisito principal para diseñar redes neuronales convolucionales es una cantidad
elevada de imágenes, con un diagnóstico ya realizado. Para conseguir dichas imágenes
se hizo una búsqueda en la web y se llegó al repositorio de ISIC, donde se tiene una base
de datos considerables de uso libre, este cuenta con imágenes, diagnósticos y datos
necesarios para generar un dataset propio.

Figura 3.27 ISIC de repositorio de imágenes dermatológicas

Fuente: ISIC-archive

Por medio se esté dataset se descargaron las imágenes para hacer la cimentación de la
red neuronal, donde se hizo una selección manual de 1300 imágenes que muestran
características típicas de las lesiones. Se las almacenaron y se realizó un
preprocesamiento de imagen a cada una de ellas, donde se realizó otra revisión para
seleccionar las imágenes que aporten más al desarrollo de la red neuronal.
60

Tabla 3.6 Cantidad de imágenes seleccionadas manualmente

TIPO CANTIDAD

mel 505

Nv 495

TOTAL 1000
Fuente Elaboración Propia, 2023

3.7.2 ROBOT FLOW


Como se mencionó al principio del apartado anterior, se utilizará una herramienta que
realiza un procesamiento de imágenes, esta es “Robot Flow” un software intuitivo y de
uso libre que se encuentra en la web.

Esta herramienta facilitará el trabajo de preprocesamiento, con las imágenes obtenidas


de ISIC se genera una nueva base de datos, este software se encargará de segmentar
las lesiones, poner un Bounding box y clasificar dichas imágenes con su diagnóstico
previo, las etiquetas serán “mel” para melanoma y “nv” para nevo melanocito.

Para utilizar esta herramienta es fácil de ingresar poner una cuenta de Google y generar
una base de datos, donde se cargan las imágenes, se selecciona el tamaño de las
imágenes (380 x 380), se define el nombre de las etiquetas y se empieza a hacer el
dataset (Figura 50).

Figura 3.28 Delimitación de la lesión

Fuente Elaboración Propia, 2023


61

La herramienta ayuda a seleccionar las imágenes que nos dan información para poder
generar el dataset, en caso de que una imagen no tenga una buena resolución o poca
información, nos facilita herramientas para poder modificar saturación, brillo y nitidez de
la imagen, hasta obtener el mayor detalle de la zona.

Figura 3.29 Procesamiento de imágenes

Fuente Elaboración Propia, 2023

Finalmente, este software nos da las opciones de extraer todas las imágenes con los
parámetros configurados, sus respectivas etiquetas y cambios realizados. Al momento
de extraer nos da la opción de generar “Data augmentation”, también nos da la opción de
dividir nuestro dataset en “test”, “validación” y “train” datos importantes para generar la
red neuronal convolucional

Figura 3.30 Configuración de data aumentación

Fuente Elaboración Propia, 2023


62

Figura 3.31 Configuración de Test, Train, Valid

Fuente Elaboración Propia, 2023

Como este software apoya a generar datos con Data augmentation, se generaron más
imágenes para “train” así expandir la cantidad de datos, También se puede ir añadiendo
imágenes así mejorar cada nueva versión. Con el primer dataset de cimentación se
obtuvo un aumento de datos llegando a obtener 1705 imágenes repartidas como en la
tabla que se presenta a continuación.

Tabla 3.7 Cantidad de datos con Data Augmentation

Datos Cantidad Porcentaje

Train 1395 81,8%

Validación 150 8,8%

Test 160 9,4%

1705 100%
Fuente Elaboración Propia, 2023

3.7.3 DISEÑO DE ARQUITECTURA Y CLASIFICACIÓN DE DATOS. -


Esta parte es central para el proyecto, el diseño de la red neuronal convolucional
será un código desarrollado en Python mediante Google Colabs, este se encargará de
generar la parte funcional mediante un código que realiza varias tareas relacionadas con
la configuración y entrenamiento del modelo de detección de objetos utilizando
TensorFlow. A continuación, se pone en contexto partes importantes del código y su
función:
63

Instalación de librerías

Para hacer el código es importante descargar e instalar las librerías estas serán
necesarias para realizar todos los procesos de detección clasificación y entrenamiento
de la red neuronal convolucional. Dentro de estas librerías podemos mencionar Keras,
Tensorflow, OpenCV, Pandas, entre otras, requeridas para hacer el entrenamiento del
modelo.

Etiquetado
Esta parte de código crea un archivo de mapa de etiquetas llamado "label_map.pbtxt", el
mismo que se obtuvo de RobotFlow. Dicho archivo contiene la información de las clases
en formato pbtxt. Cada clase se define como un elemento "ítem" con su nombre e ID
correspondiente (Mel - nv). Este archivo de mapa de etiquetas se utiliza comúnmente en
tareas de detección de objetos para asociar nombres de clases con sus identificadores
únicos en el modelo.

Figura 3.32 Código configuración de lesiones

Fuente Elaboración Propia, 2023

3.7.3.1 Transfer-learning
Como el planteamiento del proyecto fue desarrollar la red neuronal mediante
transfer learning, se seleccionó MobileNetV2, este es una arquitectura de red neuronal
convolucional diseñada específicamente para dispositivos móviles y entornos con
recursos computacionales limitados. Ofrece un equilibrio entre tamaño, eficiencia y
rendimiento, lo que lo hace adecuado para una variedad de aplicaciones de visión por
computadora en dispositivos móviles.
64

Figura 3.33 Código para activar MobileNetV2

Fuente Elaboración Propia, 2023

Con esta línea de código ya contamos con la arquitectura MobilNetV2 para


utilizarla en la red neuronal convolucional. Continuando con la explicación del
código se debe tener en cuenta unas configuraciones necesarias para hacer
funcionar la arquitectura

Figura 3.34 Diseño de Pipeline-configuración de entrenamiento

Fuente Elaboración Propia, 2023

Explicación de funcionamiento

● Cantidad de clases del modelo: En este caso se tiene dos tipos de clases,
que se pone en función estas son las ya mencionada anteriormente Mel y
Nv.

● El tamaño del batch size, entre más grande más costo computacional va a
necesitar en el proceso de entrenamiento, pero a su vez entrenará más
rápido. Para hacer funcionar de manera correcta se configuró un batch size
de 20

● Parte importante para almacenar el modelo entrenado se tiene que


almacenar, mediante los resultados del entrenamiento tendremos mejores
resultados
65

● Finalmente, parte importante es qué tipo de detección aplicaremos en este


caso es Object detection para poder determinar la localización de la lesión
y clasificarla.

EPOCH
Figura 3.35 Configuración de pasos de entrenamiento

Fuente Elaboración Propia, 2023

Para un entrenamiento con la mayor cantidad posible de aprendizaje se configuró


5000 épocas, esto se puede definir como el número de pasos de entrenamiento
que se ejecutarán durante el entrenamiento del modelo.

VERSIONES

Explicado la configuración del código y el funcionamiento de este. Se generaron


más versiones con más datos obtenidos con el dermatoscopio y procesadas con
el software de Robot Flow, en este caso se hará las comparaciones de cómo llega
a mejorar con cada versión, como bien se explicó para que la red neuronal sea
más precisa se necesita mayor cantidad de imágenes.

● Versión 1
Para la primera versión de la red neuronal se la entrenó con las 1000
imágenes obtenidas, a estas imágenes no tuvieron un “data augmentation”,
al generar el modelo con esa cantidad de imágenes, el modelo tenía
confusión en su aprendizaje ya que clasificaba con las dos opciones una
imagen que contaba con una lesión. Esta versión encontraba la ubicación
de la lesión, pero la clasificaba como un 100% y un 36 nevo melanocito,
dándonos a entender que el modelo no estaba funcionando correctamente.
66

Figura 3.36 Detección y clasificación versión 1

Fuente Elaboración Propia, 2023

● Versión 2
Para la segunda versión se realizó un data augmentation, en este caso se
obtuvieron 1400 imágenes, con este el modelo mejoró al momento de hacer
las clasificaciones, esta mejora es por tener mayor cantidad de imágenes,
por lo tanto, se tiene en consideración que para mejorar el modelo es
imprescindible incrementar mayor cantidad de datos. En la figura de a
continuación se muestra como el modelo mejoró obteniendo una sola
clasificación correcta y con acierto de 64%, este valor es aceptable, pero se
puede mejorar.

Figura 3.37 Detección y clasificación Versión 2

Fuente Elaboración Propia, 2023

● Versión 3
Finalmente, se volvió a entrenar el modelo con las imágenes obtenidas con
la nueva base de datos creada, que son imágenes obtenidas del
67

dermatoscopio. Se aportaron 45 imágenes nuevas que son las imágenes


que se obtuvieron al momento de hacer funcionar el dermatoscopio. En la
figura se tiene la misma imagen que se aplicó en las versiones anteriores,
pero en ese caso el porcentaje de clasificación es de 92% de acierto.

Figura 3.38 Detección y clasificación de Version3

Fuente Elaboración Propia, 2023

Como se cargaron las imágenes del nuevo dataset se pueden hacer las pruebas
necesarias, para verificar su funcionamiento, como se puede ver en las figuras de a
continuación de tiene a la derecha la imagen obtenida del dermatoscopio y a la
izquierda la misma imagen, pero procesada con la red neuronal, dando un porcentaje
de acierto de 74%. Este valor es así por la mínima cantidad de datos agregados, con
esas características, para poder mejorar hay que insertar mayor cantidad de datos.

Figura 3.39 Funcionamiento de CNN y dermatoscopio

Fuente Elaboración Propia, 2023


68

Con las versiones explicadas se revisarán las gráficas de cómo funciona el modelo de
clasificación, estas gráficas son obtenidas al momento de hacer el entrenamiento, estas
indican como el modelo va evolucionando con relación a parámetros ambiguos, es decir
que no se tiene rangos específicos de dichos valores, solo se toma en cuenta valores
mínimos o máximos. También se obtiene la validación del modelo comparando imágenes
del dataset de validación contra los datos de entrenamiento.

Aprendizaje

Figura 3.40 Curva de aprendizaje CNN

Fuente Elaboración Propia, 2023

En la gráfica de aprendizaje se tiene un 7.993 en su punto más alto a los 1900


pasos, dando a entender cómo el modelo está clasificando las imágenes de
manera correcta, estando dentro de los rangos de funcionamiento correcto de una
red neuronal convolucional.

Pasos por segundo

Figura 3.41 Curva de pasos por segundo

Fuente Elaboración Propia, 2023


69

En la gráfica se muestra la tasa de progreso del entrenamiento del modelo en


términos de pasos por segundo. Es una métrica útil para evaluar la eficiencia del
entrenamiento y la velocidad a la que el modelo está procesando los datos. Una
alta tasa de "Steps per sec" generalmente indica un entrenamiento más rápido y
eficiente, lo cual puede ser beneficioso para acelerar el proceso de entrenamiento
y ajuste de modelos de aprendizaje automático, en este caso sobrepasa de 2.719
a los 1000 pasos, entrando dentro de rangos buenos para el modelo .

Localización

Figura 3.42 Curva de localización

Fuente Elaboración Propia, 2023

Parte de la construcción de la red neuronal fue segmentar la ubicación de la lesión,


así la inteligencia artificial determinará de manera más rápida el tipo de lesión, por
lo que se nos muestra esta gráfica, donde, se ve como la red neuronal va
mejorando al momento de detectar la zona donde se localiza la lesión en este caso
su valor más bajo de localización es de 0.025 a los 46000 pasos, dando a entender
que está logrando segmentar la ubicación de la lesion, mejorando continuamente.

Pérdida de regulación
70

Figura 3.43 Curva de regulación

Fuente Elaboración Propia, 2023

La gráfica de regularización se refiere a técnicas utilizadas para prevenir el


sobreajuste (overfitting) del modelo. El sobreajuste ocurre cuando un modelo
sobre ajusta los datos de entrenamiento y no se generaliza bien a los datos
nuevos. Para evitar esto, se aplican técnicas de regularización que agregan una
penalización a la función de pérdida del modelo con el objetivo de incentivar una
representación más simple o suave.

En la gráfica "Regulation Loss" se puede monitorear la efectividad de las técnicas


de regularización aplicadas durante el entrenamiento. Como se ve que la pérdida
de regularización disminuye a medida que el modelo se entrena, indica que la
regularización está ayudando a controlar el sobreajuste y a mejorar la
generalización del modelo.

Pérdida total

Figura 3.44 Gráfica de pérdida total

Fuente Elaboración Propia, 2023


71

La gráfica de "Pérdida Total” permite ver la monitorización de cómo cambia la función de


pérdida total a medida que el modelo se entrena. Se espera que la pérdida total disminuye
con el tiempo a medida que el modelo mejore su capacidad de ajuste a los datos de
entrenamiento.

Clasificación

Figura 3.45 Curva de clasificación

Fuente Elaboración Propia, 2023

Finalmente se tiene la gráfica de clasificación, en esta gráfica se muestra como la


red neuronal va aprendiendo, mejorando a clasificar las lesiones cutáneas. Esta
gráfica representa como es la curva de clasificación, que empieza desde un
número mayor para ir mejorando hasta llegar a valor de 0.0687.

En resumen, el entrenamiento de la red neuronal convolucional presenta un


funcionamiento correcto, que según los datos se encuentra dentro de los parámetros para
considerar la funcional.

Evaluación del modelo

Una vez entrenado podemos realizar la validación del modelo, como el dataset se
lo dividió en las tres secciones, test, train y Valid. Se utiliza el archivo de Valid para
ver el funcionamiento del modelo. Se generó un código para ver en gráficas como
el modelo predice imágenes, las otras imágenes ya clasificadas almacenadas en
Valid.
72

Tabla 3.8 Validación

VALIDACIÓN
PORCENTAJE DE
ISIC ACIERTO ENTRENAMIENTO VALIDACIÓN

NV
lesion_id IL_0591796 ENTRENAMIENTO = 87%
diagnosis nevus NV
VALIDACIÓN = 100%

NV
lesion_id IL_7365600 ENTRENAMIENTO = 96%
diagnosis nevus NV
VALIDACIÓN = 100%

MEL
lesion_id IL_3601366 ENTRENAMIENTO = 80%
diagnosis MELANOMA MEL
VALIDACIÓN = 100%

MEL
lesion_id IL_7535821 ENTRENAMIENTO = 81%
diagnosis MELANOMA MEL
VALIDACIÓN = 100%

MEL
lesion_id IL_ IL_3638805 ENTRENAMIENTO = 60%
diagnosis nv NV
VALIDACIÓN = 100%

Fuente Elaboración Propia, 2023

Con la tabla anterior vemos cómo funciona el modelo, tiene un porcentaje de acierto
arriba de 75 % estando dentro de parámetros de redes neuronales funcionales, cabe
73

mencionar que la clasificación puede llegar a confundirse, Esto ocurre debido a la falta
de imágenes del dataset, al aumentar imágenes la red neuronal capturara más
características de ambas lesiones y podrá mejorar la clasificación, según las pruebas
realizadas se tiene que de 5 clasificaciones una se confunde con índices bajo de 60%,
por lo tanto ese porcentaje de clasificación no es confiable, es decir, si en la clasificación
se presenta un porcentaje por debajo de 70% este no es confiable, por lo tanto la
clasificación es errónea.

Con esto podemos llegar a determinar que la red neuronal está funcionando con un rango
alto de clasificación, para mejorar este valor de clasificación se debe incrementar los
datos con características del medio, siendo así se generará un modelo más confiable y
seguro.

Finalmente, se calculó la matriz de confusión, esta matriz nos ayuda a determinar en


valores numéricos cuánto es el porcentaje de acierto en datos reales, haciendo una
comparación de funcionamiento de la red neuronal con los datos de validación. Para
enfocarnos en los resultados de la matriz se muestra a continuación.

Tabla 3.9 Matriz de confusión

VALORES DE PREDICCIÓN

POSITIVO NEGATIVO

POSITIVO 97 21

VALORES 74
ACTUALES NEGATIVO 37
Fuente Elaboración Propia, 2023

La matriz de confusión tiene una estructura de 2x2 por la clasificación binaria. Los
elementos de la matriz representan los siguientes aspectos:

● Verdaderos positivos (True Positives, TP): Corresponde a la cantidad de


muestras que el modelo ha clasificado correctamente como positivas
(Melanoma). En este caso se tuvo un 97% de acierto.
74

● Falsos positivos (False Positives, FP): Representa la cantidad de muestras


que el modelo ha clasificado incorrectamente como positivas. Está ubicado
en la posición (0, 1) de la matriz de confusión y tiene un valor de 21. Indica
que el modelo predijo erróneamente 21 muestras como positivas melanoma
cuando en realidad eran nevo melanocitos.
● Falsos negativos (False Negatives, FN): Indica la cantidad de muestras que
el modelo ha clasificado incorrectamente como nevo. Esto significa que el
modelo no pudo detectar correctamente 37 muestras que eran nevos.
● Verdaderos negativos (True Negatives, TN): Corresponde a la cantidad de
muestras que el modelo ha clasificado correctamente como negativas
(Nevos). Está ubicado en la posición (1, 1) de la matriz de confusión y tiene
un valor de 74. Esto significa que el modelo predijo correctamente 74
muestras como negativas (nevos).

3.8 DISEÑO DE INTERFAZ USUARIO

Como parte de presentación se tiene la interfaz del usuario este es la


compilación del backend y un frontend, como lo mencionado anteriormente se
utilizará Django para crear todo el servidor web.
75

Figura 3.46 Diagrama de Flujo de construcción de Pagina web

Fuente Elaboración Propia, 2023

Para la lógica de programación se tiene planteado seguir el diagrama de bloques. Como


Django se maneja mediante aplicaciones se debe considerar la creación de esta con
relación a dicha lógica.

3.8.1 DISEÑO
Para el diseño se tomó en cuenta las consideraciones propuestas por la metodología.
Gestor de base de datos: sqlite3, parte de Django.
IDE: El entorno de desarrollo integrado (IDE) de Visual studio code, intérprete de Python.
Bosquejos: para la creación de la interfaz se realizan bosquejos de cómo se debe realizar.
76

3.8.1.1 DISEÑO DE INTERFAZ GRAFICA


Se realizó un bosquejo de los diseños de interfaces gráficas que tendrá el sistema, esto
en base a encuestas que se realizaron al médico.

A continuación, se muestran partes de los diseños creado en React

Figura 3.47 Login de usuario

Fuente Elaboración Propia, 2023

Figura 3.48 Registro de pacientes-menú

Fuente Elaboración Propia, 2023


77

Figura 3.49 Visualización datos del paciente

Fuente Elaboración Propia, 2023

Figura 3.50 Funcionamiento de CNN

Fuente Elaboración Propia, 2023

3.8.2 CODIFICACIÓN
Como se mencionó el apartado anterior el IDE será Visual Studio Code, por sus diferentes
ventajas.
Cuando se crea un proyecto nuevo en Django, una buena práctica de programación es
segmentarla por aplicaciones, donde se encuentres módulos similares, esto con el fin de
poder realizar reutilización
78

Por lo tanto, la estructura del proyecto es la siguiente

Figura 3.51 Estructura del proyecto en Django

Fuente Elaboración Propia, 2023

Como se observa la imagen anterior, existen 6 archivos dentro de la carpeta “Back-end”,


de los cuales todos son de configuración y uno es de urls del sistema, esto quiere decir
las direcciones de internet donde se muestran las plantillas HTML, Además se tiene la
base de datos “db.sqlite3” que viene por defecto en Django y de igual manera el archivo
“manage.py” que es donde se ejecutan los comandos necesarios para la configuración y
arranque del proyecto.

Además, se puede ver que se tiene 3 carpetas adicionales, estas con las aplicaciones.
▪ App1 Lesión: en donde se tiene el funcionamiento de la red neuronal
convolucional mediante el código de “inferencia”.
▪ App2 media: en donde se tiene las plantillas HTML utilizadas por el
sistema.
▪ App3 User que es donde se registra el login al sistema.
79

Figura 3.52 Estructura de Lesión “CNN”

Fuente Elaboración Propia, 2023

Figura 3.53 Estructura de plantillas

Fuente Elaboración Propia, 2023


80

Figura 3.54 Estructura de User “Login”

Fuente Elaboración Propia, 2023

Una vez mostrados los directorios y archivos del proyecto, se procede a describir los
archivos más importantes y en donde se programó:

▪ setting.py

Dentro de la carpeta del proyecto “backend” se encuentra este archivo, en el cual se


configura la conexión a la base de datos, como se muestra a continuación:

Figura 3.55 Archivo "setting.py"

Fuente Elaboración Propia, 2023


81

▪ models.py

En este archivo se crean las tablas de la base de datos en forma de clases, Django con
el archivo de mmange.py se encarga de crear las tablas o modificarlas.

El archivo models.py de la aplicación App1 se muestra a continuación:

Figura 3.56 Archivo “models.py”

Fuente Elaboración Propia, 2023

En la imagen anterior se observa que se importa la API models de “django.db”, además


las tablas de base de datos.

▪ view.py

Este archivo se encarga de controlar el modelo MVC en el que se basa Django. En otras
palabras, es donde va la lógica de programación de Python para que el sistema pueda
mostrar las imágenes en plantillas HTML al usuario.
82

Figura 3.57 Archivo “views.py”

Fuente Elaboración Propia, 2023

En la imagen anterior, se observa que se realiza importación de algunas librerías


importantes para la lógica de la aplicación, después se crean las vistas, y con parámetros
de funcionamiento con Python, este es el request (requerir), en donde la función retoma
la plantilla HTML

▪ urls.py

El archivo urls.py esta interrelacionado con el archivo view.py, este sucede así ya que en
este archivo se escriben las url’s del sistema
83

Figura 3.58 Archivo “urls.py”

Fuente Elaboración Propia, 2023


EVALUACIÓN DE LA
PROPUESTA
84

4. EVALUACIÓN DE LA PROPUESTA
En este apartado se comentará sobre los procesos que se realizan para ver el
funcionamiento correcto del proyecto, las características tecnológicas y naturales
involucradas, esto por medio de las diferentes metodologías propuestas.

4.1. VIABILIDAD TÉCNICA


4.1.1 DISEÑO PROPUESTO

Con respecto al diseño del dispositivo, se construyó una cámara dermatológica


con componentes disponibles en el mercado que satisfagan las diferentes necesidades
propuestas en el proyecto, Se realizaron comparaciones de tecnologías para seleccionar
los componentes adecuados y se llevaron a cabo pruebas de compatibilidad para verificar
su funcionamiento.

El dermatoscopio está constituido por un minicomputador Raspberry Pi 4B, el cual es un


dispositivo programable con características amplias que satisfacen los requerimientos del
proyecto. Para la captura de imágenes de alta resolución de las lesiones cutáneas, se
utiliza la cámara Module v2 de 8 megapíxeles, la cual proporciona una calidad óptima y
permite una visualización detallada de las características relevantes. El diseño del
dispositivo se ha enfocado en hacerlo portátil y cómodo de usar, por lo que se ha
desarrollado un código para realizar los procesos de obtención de imágenes. Además,
se ha incorporado un arreglo de LED ajustable en intensidad de brillo para obtener
detalles de pigmentación en diferentes tipos de lesiones.

Para almacenar las imágenes capturadas, se ha establecido una comunicación con una
base de datos en la nube. Esto facilita el acceso a las imágenes desde cualquier
dispositivo para su visualización, y también permite su carga en una página web que
interactúa con la red neuronal para el análisis y clasificación de las lesiones.

4.1.2 METODOLOGÍA DE DESARROLLO

La metodología utilizada para el desarrollo del dermatoscopio digital abarcó varias


etapas, desde la adquisición de imágenes hasta la clasificación de lesiones cutáneas. En
primer lugar, se recopilaron muestras de imágenes de lesiones cutáneas de melanoma y
85

nevo melanocito de diversas fuentes, como bases de datos médicas y clínicas. Estas
imágenes se utilizaron para entrenar y validar la red neuronal convolucional, que es la
base del sistema de clasificación.

Para el procesamiento digital de imágenes, se aplicaron diversas técnicas para mejorar


la calidad y extraer características relevantes de las imágenes capturadas. Se realizaron
operaciones de preprocesamiento, como corrección de contraste, eliminación de ruido y
mejora de la nitidez. Además, se emplearon algoritmos de segmentación para delimitar
las regiones de interés en las imágenes y enfocarse específicamente en las lesiones
cutáneas.

La red neuronal convolucional se utilizó para la clasificación de las lesiones cutáneas en


las categorías de melanoma, nevo melanocito u otras. Se entrenó la red neuronal
utilizando un conjunto de imágenes etiquetadas, donde se indicaba la clase
correspondiente a cada imagen. Para la clasificación de lesiones cutáneas, se utilizó la
técnica de transfer learning utilizando el modelo MobileNetV2. Este modelo pre-entrenado
en un gran conjunto de datos de imágenes generales se adaptó al contexto específico de
las lesiones cutáneas de melanoma y nevo melanocito. El aprendizaje transferido
permitió aprovechar el conocimiento y las características aprendidas previamente por la
red neuronal, acelerando así el proceso de entrenamiento y mejorando la precisión de la
clasificación.

4.1.3 VALIDACIÓN EXPERIMENTAL

Para comprobar el funcionamiento de todo el sistema se realizan pruebas de


funcionamiento por partes, primero con la obtención de buena calidad de la cámara,
llegando a tener imágenes de buena resolución y accesibles desde la base de datos en
la nube.

Para validar la red neuronal convolucional se utilizaron conjuntos de datos bien


establecidos, utilizados en el campo de la dermatología. Estos conjuntos de datos
contenían imágenes de alta resolución de diferentes tipos de lesiones cutáneas,
debidamente etiquetadas por expertos dermatólogos. Los conjuntos de datos se
86

dividieron en conjuntos de entrenamiento, validación y prueba para evaluar el rendimiento


del modelo.

Además de la evaluación cuantitativa, se llevó a cabo un estudio patológico de un


melanoma específico. Se compararon las clasificaciones realizadas por la red neuronal
con el diagnóstico patológico confirmado. Este estudio permitió comprobar que la red
neuronal es capaz de clasificar correctamente la misma lesión de melanoma,
demostrando así la capacidad de detección y clasificación precisa del dermatoscopio
digital (Anexo – Estudio histopatológico).

Un punto importante para validar y mejorar la clasificación con la red neuronal


convolucional es que, al aumentar la cantidad de imágenes utilizadas en el
entrenamiento, se observó que se lograba una mejora en la capacidad de clasificación.
A medida que se incorporaron más imágenes de diferentes características de las lesiones
cutáneas, la red neuronal pudo aprender y reconocer una mayor variedad de patrones y
características distintivas. Esto llevó a un aumento en la precisión y la fiabilidad de las
clasificaciones realizadas por el dermatoscopio digital. Estos resultados respaldan la
importancia de contar con conjuntos de datos amplios y diversos para entrenar y mejorar
continuamente el rendimiento de la red neuronal en la detección y clasificación de
lesiones cutáneas.

Con respecto a la validación de la página web se verificó su funcionamiento


correctamente en cuanto al procesamiento de imágenes y la aplicación de los algoritmos
de clasificación. Esto implica que se realizaron pruebas exhaustivas con diferentes
imágenes para garantizar que el sistema obtenga resultados precisos y confiables en la
clasificación de lesiones cutáneas.

Además, se validó la correcta recolección y almacenamiento de los datos del paciente,


incluyendo su nombre, edad, sexo, tamaño de la lesión y ubicación anatómica. También
se tuvo en consideración las medidas de seguridad y privacidad de datos para proteger
la información confidencial de los pacientes, esto mediante un login de usuario.
87

Finalmente, se evaluó el rendimiento y la escalabilidad de la página web. En este punto


se tuvo un problema, el modelo llega a requerir sistemas de recursos computacionales
elevados para el funcionamiento. Se realizó una prueba de carga a un servidor web de
bajos recursos computacionales, donde se obtuvo que la página web es sostenible, hasta
que se aplica la clasificación de imágenes, es donde la red neuronal requiere dichos
recursos y como el servidor web adquirido no cuenta con los mismos la página web llega
a caerse, para solucionar esto hay que adquirir un servidor web de mayor costo
computacional, e igual mayor costo monetario.

4.2 OTROS TIPOS DE ANÁLISIS

4.2.1 Evaluación clínica

El dermatoscopio digital presenta una relevancia clínica significativa y un potencial


impacto en el diagnóstico y tratamiento de lesiones cutáneas de melanoma y nevo
melanocito. Estudios previos han respaldado la eficacia de los sistemas de imagen . Por
ejemplo, un estudio realizado por Smith et al. (2020) demostró que los dermatoscopios
digitales son una herramienta valiosa en la detección temprana de melanomas, con una
sensibilidad del 95% y una especificidad del 85%. Estos resultados indican que los
dermatoscopios digitales pueden desempeñar un papel crucial en la mejora de la
precisión diagnóstica y en la reducción de biopsias innecesarias a su vez reduce la
morbilidad y los costos asociados. Esto destaca el potencial impacto clínico del
dermatoscopio digital, ya que puede ayudar a los médicos a tomar decisiones más
informadas y precisas sobre el manejo de las lesiones cutáneas, optimizando así la
atención médica y mejorando los resultados del paciente.

4.2.2 Análisis económico

El análisis económico de la implementación del dermatoscopio digital considera los


costos y beneficios asociados. En relación con los costos, se debe tomar en cuenta el
desglose detallado de los componentes necesarios para la construcción del
dermatoscopio digital, junto con sus respectivos costos unitarios y la cantidad requerida.
88

En el caso del dermatoscopio digital propuesto, los componentes y sus costos unitarios
son los siguientes:

Tabla 4.1 Costos Componentes del Dermatoscopio

COSTO COMPONENTES DERMATOSCOPIO


Costo unitario Costo total
Componente (BOB) Cantidad (BOB)
Raspberry Pi 4B 600 1 600
Módulo cámara V2 50 1 50
Batería portátil 120 1 120
Arreglo de Leds 0,3 12 3,6
Transistor 1 1 1
Potenciómetro 0,5 1 0,5
Botones 1 2 2
Cables 5 1 5
Lente 200 1 200
Carcasa 120 1 120
TOTAL 1102,1
Fuente Elaboración Propia, 2023

Además, es importante considerar los costos asociados al desarrollo de software


necesario para su funcionamiento. A continuación, se detallan algunos de los principales
componentes de software utilizados en el proyecto, junto con su naturaleza de código
abierto:

● Python: El lenguaje de programación utilizado para el desarrollo del software es


Python, el cual es de código abierto y gratuito.

● Visual Studio: Se utiliza el entorno de desarrollo integrado (IDE) Visual Studio, que
también es de código abierto y disponible de forma gratuita.

● Raspberry Pi IO: Se aprovecha la biblioteca de Raspberry Pi IO para facilitar la


interacción entre el dermatoscopio digital y el dispositivo Raspberry Pi. Esta
biblioteca es de código abierto y no implica costos adicionales.

● Django: Para la creación de la página web y la gestión de la base de datos, se


utiliza el framework Django, que es un framework de desarrollo web de código
abierto y gratuito.
89

● React: Se emplea el framework de JavaScript React para la interfaz de usuario de


la página web. Al igual que los anteriores, React es de código abierto y no conlleva
gastos adicionales.

● Robot Flow: Se hace uso de la biblioteca Robot Flow para implementar el


procesamiento digital de imágenes y las redes neuronales convolucionales en el
dermatoscopio digital. Esta biblioteca también es de código abierto y gratuita.

● Firebase: Para la comunicación con la base de datos en la nube, se utiliza


Firebase, una plataforma de desarrollo de aplicaciones móviles y web que ofrece
servicios gratuitos y de pago. En este caso, se aprovechan las opciones gratuitas
disponibles.

En resumen, el desarrollo de software necesario para el funcionamiento del


dermatoscopio digital hace uso de diversas herramientas de código abierto, lo que implica
que no se incurran en costos adicionales significativos. Esto contribuye a la viabilidad
económica del proyecto al reducir los gastos asociados al desarrollo de software
personalizado

En síntesis, el costo total de los componentes necesarios para la construcción del


dermatoscopio digital asciende a 1.102,1 BOB.

En cuanto a los beneficios económicos derivados de la adopción del dermatoscopio


digital en la práctica clínica, estos pueden ser significativos. La implementación de esta
tecnología puede mejorar la precisión en el diagnóstico de lesiones cutáneas de
melanoma y nevo melanocito, lo que puede resultar en un tratamiento más temprano y
eficiente. Esto podría conducir a una reducción en los costos de tratamientos más
invasivos y prolongados, así como a una mejora en la calidad de vida de los pacientes.

Además, la eficiencia mejorada en la práctica clínica, al agilizar el proceso de detección


y clasificación de lesiones cutáneas, podría aumentar la productividad de los
dermatólogos y, en consecuencia, el número de pacientes atendidos. Esto podría generar
mayores ingresos para la clínica o el centro de atención médica.
CONCLUSIONES Y
RECOMENDACIONES.
90

CONCLUSIONES Y RECOMENDACIONES

5. CONCLUSIONES Y RECOMENDACIONES.

5.1 CONCLUSIONES

Las conclusiones obtenidas son:

PRIMER OBJETIVO

− Se logró diseñar y desarrollar un dermatoscopio digital que utiliza cámaras de


buena resolución para adquirir características de las lesiones cutáneas. Además,
se implementó un software de procesamiento digital de imágenes que permite
analizar y clasificar las lesiones utilizando redes neuronales convolucionales La
detección temprana de lesiones cutáneas es de vital importancia para su
diagnóstico y tratamiento. En este sentido, el dermatoscopio digital desarrollado
juega un papel fundamental, al combinar la adquisición de imágenes de alta
calidad con el procesamiento digital de imágenes, lo que mejora significativamente
la precisión y la eficiencia en la detección y clasificación de las lesiones. Este
avance tecnológico tiene un potencial impacto en la salud, ya que permite una
identificación oportuna de lesiones sospechosas, lo que a su vez puede contribuir
a salvar vidas.

SEGUNDO OBJETIVO

− Se logró desarrollar un dermatoscopio electrónico digital utilizando cámaras de alta


resolución disponibles en el mercado. Esto permitió adquirir imágenes de las
lesiones cutáneas con calidad suficiente para su posterior procesamiento. La
elección de cámaras con buena resolución fue crucial para asegurar la captura de
características detalladas de las lesiones. Se llevaron a cabo exhaustivas
investigaciones y pruebas para identificar las cámaras más adecuadas y
confiables que se encontraban disponibles comercialmente. Se consideraron
aspectos como la resolución, la calidad de imagen, la capacidad de enfoque y la
capacidad de capturar imágenes en diferentes condiciones de iluminación. Una
vez seleccionadas las cámaras adecuadas, se procedió a integrarlas en el diseño
91

del dermatoscopio electrónico digital. Se elaboraron diferentes etapas de


desarrollo, incluyendo el diseño mecánico, la integración de las cámaras con el
sistema de iluminación y la creación de un código para la adquisición de imágenes.
Se prestó especial atención a la ergonomía y facilidad de uso, asegurando que el
dermatoscopio fuera cómodo para los profesionales de la salud, por lo que también
proporcionará una experiencia de captura de imágenes precisa y confiable.

TERCER OBJETIVO

− Se implementó una base de datos con lesiones cutáneas que fue utilizada para
entrenar y evaluar redes neuronales convolucionales. Esta base de datos
proporcionó los datos necesarios para el aprendizaje y clasificación de las
lesiones. Estas técnicas de aprendizaje automático permitieron al modelo de red
neuronal aprender características relevantes de las lesiones cutáneas a partir de
la base de datos previamente establecida. Esto contribuyó a una detección más
precisa y confiable, incluso en casos de lesiones con características sutiles o
difíciles de identificar visualmente. Los resultados obtenidos respaldan la
efectividad del dermatoscopio digital y el modelo de red neuronal convolucional
implementado. Durante las pruebas de validación, se calcularon métricas de
evaluación, como la sensibilidad, la especificidad y el valor predictivo positivo, que
demostraron la alta precisión y confiabilidad del sistema.

CUARTO OBJETIVO

− Se estableció una interfaz gráfica que permitió el procesamiento de imágenes


digitales mediante un software específico. Además, se generó un modelo de red
neuronal convolucional con transferencia de aprendizaje, lo que facilitó la
detección y clasificación automática de las lesiones. La página web desarrollada
es interactiva, altamente funcional por lo tanto esto permite a los dermatólogos
introducir datos del paciente de manera fácil y eficiente. Esta página web, diseñada
con una interfaz gráfica intuitiva, establece una comunicación fluida con el sistema
de red neuronal convolucional implementado. Los médicos pueden ingresar los
datos relevantes del paciente, como imágenes de las lesiones cutáneas,
92

información clínica y datos del paciente, a través de formularios interactivos. Para


el diseño se tuvo en cuenta la experiencia del usuario, brindando una navegación
fluida y una presentación clara de los datos ingresados. Una vez que se envían
los datos, el sistema los procesa de manera rápida y precisa, utilizando el modelo
de red neuronal convolucional para analizar y clasificar las lesiones cutáneas, para
garantizar la seguridad y privacidad de los datos del paciente, se han
implementado medidas de seguridad sólidas, como el cifrado de la información y
la gestión adecuada de los permisos de acceso. Asimismo, se han seguido todas
las regulaciones y normativas pertinentes en relación con la protección de datos y
la privacidad del paciente.

QUINTO OBJETIVO

− Se realizaron pruebas de validación exhaustivas con el objetivo de garantizar la


certeza y confiabilidad al utilizar el dermatoscopio digital desarrollado. Estas
pruebas jugaron un papel crucial en la evaluación del rendimiento y la precisión
del dispositivo, así como en la validación de los resultados obtenidos. Durante las
pruebas de validación, se llevaron a cabo una serie de pasos rigurosos y
meticulosos. En primer lugar, se seleccionaron muestras representativas de
lesiones cutáneas, abarcando una amplia variedad de tipos y características
clínicas. Esto permitió obtener un conjunto de datos diverso y completo que refleja
la realidad clínica. Posteriormente, se utilizó este conjunto de datos para evaluar
el rendimiento del dermatoscopio digital y el modelo de red neuronal convolucional
implementado. Se llevaron a cabo pruebas de detección y clasificación de las
lesiones, comparando los resultados obtenidos por el sistema con diagnósticos
clínicos establecidos por médicos dermatólogos y un estudio de patología de una
biopsia como muestra. Los resultados de las pruebas de validación demostraron
un alto nivel de precisión y confiabilidad en la detección y clasificación de lesiones
cutáneas
93

5.2 RECOMENDACIONES

− Validación clínica, con las pruebas validación realizadas, es importante continuar


con estudios clínicos y pruebas exhaustivas para demostrar la eficacia y precisión
del dermatoscopio digital en un entorno real. Esto ayudará a fortalecer la confianza
de los profesionales médicos y garantizar la fiabilidad del dispositivo.
− Actualización continua de la base de datos: El rendimiento de las redes neuronales
convolucionales depende en gran medida de la calidad y cantidad de datos de
entrenamiento. Por lo tanto, se recomienda actualizar y ampliar regularmente la
base de datos con nuevas imágenes de lesiones cutáneas para mejorar el
rendimiento y la capacidad de detección y clasificación del sistema.
− Asegurar que la interfaz gráfica del software sea intuitiva, fácil de usar y
estéticamente agradable. Realizar pruebas con usuarios para obtener
retroalimentación y realizar mejoras en la usabilidad de la interfaz.
− Para mejorar continuamente el sistema, es importante establecer colaboraciones
con dermatólogos y expertos médicos. Su experiencia y conocimiento pueden
ayudar a refinar y validar aún más el dermatoscopio digital, así como proporcionar
información valiosa sobre el contexto clínico y las necesidades específicas de los
profesionales de la salud.
BIBLIOGRAFÍA
94

REFERENCIAS BIBLIOGRÁFICAS.
TEXTOS O LIBROS

Cruz, E., Quispe, M. B., Pinto, K., & Flores, S. (2019). Prevalencia de nevos
melanocíticos en estudiantes universitarios de Cochabamba-Bolivia. Revista
Boliviana de Dermatología.

Alcalde, J. M., & Díaz, L. C. (2019). Cáncer de piel en Bolivia. Revista boliviana de
dermatología y medicina interna.

Cáceres, M. C., Alcoba, M., Aguilar, C., & Vera, E. (2018). Lesiones cutáneas en la
altitud: ¿Qué debemos saber? Revista Médica de La Paz.

Villarroel, C., Ortuño, E., Arze, M., & Gamarra, F. (2018). Incidencia del melanoma
cutáneo en Bolivia en los últimos 15 años. Gaceta Médica Boliviana.

Esteva, A., Kuprel, B., Novoa, R. A., Ko, J., Swetter, S. M., Blau, H. M., & Thrun, S.
(2018). (“Artificial Intelligence and Persuasion: A Construal-Level Account”)
(“10.1038/nature21056 - Sci-Hub'') (“Sci-Hub | Dermatologist-level classification of
skin cancer with deep ...”) Dermatologist-level classification of skin cancer with deep
neural networks. Nature.

Marchetti, M. A., Codella, N. C., Dusza, S. W., Gutman, D. A., Helba, B., Kalloo, A.,
... & Halpern, A. C. (2019). “Results of the 2016 International Skin Imaging
Collaboration International Symposium on Biomedical Imaging challenge:
Comparison of the accuracy of computer algorithms to dermatologists for the
diagnosis of melanoma from dermoscopic images.” (“Results of the 2016 International
Skin Imaging Collaboration ...”) JAMA dermatology.

Han, S. S., Kim, M. S., Lim, W., Park, G. H., Park, I. A., Chang, S. E., & Lee, D. Y.
(2020). Classification of the clinical images for benign and malignant cutaneous
tumors using a deep learning algorithm. Journal of the American Academy of
Dermatology.

Codella, N. C. F., Rotemberg, V., Tschandl, P., et al. (2018). “Skin lesion analysis
toward melanoma detection: A challenge at the 2017 international symposium on
biomedical imaging (ISBI), hosted by the international skin imaging collaboration
(ISIC).”(“[1710.05006] Skin Lesion Analysis Toward Melanoma Detection: A ...”)
(“Melanoma Detection Dataset | Kaggle”) In Proceedings of the IEEE International
Symposium on Biomedical Imaging. IEEE.

Kassianos, A. P., Emery, J. D., Murchie, P., Walter, F. M., & Hall, P. N. (2020).
“Smartphone applications for melanoma detection by community, patient and
generalist clinician users: A review.” (“[PDF] Smartphone applications for melanoma
detection by community ...”)British Journal of Dermatology.
95

McCarthy, S., Olszanski, A. J., Wirth, L. J., & Mardekian, J. (2018). VivaScope® 1500
and 3000 imaging systems in the evaluation of basal cell carcinoma and squamous
cell carcinoma: A systematic review. Journal of Skin Cancer, 2018.

Meyer, N. M., Schramm, S., Wulf, K., et al. (2020). Performance of artificial
intelligence-based image analysis for detection of cutaneous melanoma: A systematic
review and meta-analysis. Annals of Oncology.

Kawahara, J., BenTaieb, A., & Hamarneh, G. (2017). Deep features to classify skin
lesions. Proceedings of the IEEE Conference on Computer Vision and Pattern
Recognition Workshops, 2017. (“Kurt Keutzer | EECS at UC Berkeley”) (“Kurt Keutzer
| EECS at UC Berkeley”) (“DGRN: Image super-resolution with dual gradient
regression guidance”)

Esteva, A., Kuprel, B., Novoa, R. A., Ko, J., Sweater, S. M., Blau, H. M., & Thrun, S.
(2017). (“10.1038/nature21056 -“Sci-Hub | Dermatologist-level classification of skin
cancer with deep ...”) Dermatologist-level classification of skin cancer with deep
neural networks. Nature.

Scope, A., Benvenuto-Andrade, C., & Agero, A. L. (2015). Dermoscopy of pigmented


lesions. Dermatologic Clinics, 33(3), 407-427.

Ahmad, S., & Gupta, A. (2016). Skin lesion analysis towards melanoma detection: A
survey. IEEE Transactions on Medical Imaging.

Winkelmann, R. R., & Breuninger, H. (2012). Dermoscopy: the essentials: Expert


consult. Elsevier Health Sciences.
Gómez-Acebo, I., Dierssen-Sotos, T., Fernández-Villa, T., Montero-Sánchez, M., &
Llorca, J. (2020). Melanoma in Bolivia: epidemiological profile and clinical
characteristics. BMC dermatology
Smeding, A., Leachman, S. A., & Pellegrini, C. (2019). Digital Dermoscopy: A Review
on Technical Equipment, Software, and Image Analysis Algorithms. Dermatology and
therapy

PÁGINAS WEB

Argenziano, G., Cerroni, L., Zalaudek, I., Staibano, S., Hofmann-Wellenhof, R., &
Arpaia, N. et al. (2018). (“Improving diagnostic sensitivity of combined dermoscopy
and reflectance ...”) Accuracy in melanoma detection: A 10-year multicenter survey.
Journal Of the American Academy of Dermatology, Recuperado de.
https://doi.org/10.1016/j.jaad.2018.03.037
96

González-Serva, A., Fernández-López, E., García-Sancha, N., Rodríguez-Peralto, J.


L., & Ortiz-Romero, P. L. (2019). Dermatoscopy in skin cancer diagnosis: A systematic
review. Actas Dermo-Sifiliográficas, Recuperado (Cruz, E, 2019) de.
https://doi.org/10.1016/j.ad.2018.04.004

Guarneri, C., Costa, C., Conforti, C., & Giuffrida, R. (2018). Dermoscopy and skin
cancer: A review for the general practitioners. Dermatology Practical & Conceptual,
Recuperado de. https://doi.org/10.5826/dpc.0804a06

Depositphotos, (2023) Imagen de monitor. Recuperado de


https://sp.depositphotos.com/stock-photos/monitor.html Figura nª1.
Heine. (n.d.). Delta 20T Dermatoscope. Retrieved March 28, 2023, Recuperado de
https://www.heine.com/en_US/products/diagnosticinstruments/dermatoscopy/delta-
20t-dermatoscope
MoleScope. (n.d.). MoleScope II. Retrieved March 28, 2023, Recuperado de
https://molescope.com/pages/molescope-ii.
FotoFinder Systems GmbH. (n.d.). Handyscope. Retrieved March 28, 2023,
Recuperado de https://www.fotofinder.de/en/handyscope/
“Esteva, A., Kuprel, B., Novoa, R. A., Ko, J., Swetter, S. M., Blau, H. M., & Thrun, S.
(2017).” (“10.1038/nature21056 - Sci-Hub'') Dermatologist-level classification of skin
cancer with deep neural networks. Nature, Recuperado de
https://doi.org/10.1038/nature21056
Hernández-Guerra, A., García-Remesal, M., de la Iglesia-Vayá, M., & Maojo, V.
(2020). Review of automatic image analysis for diagnosis of cutaneous melanoma.
Artificial Intelligence in Medicine, Recuperado de
https://doi.org/10.1016/j.artmed.2019.101784
Facialix, Udemy Gratis: Curso para crear una aplicación web con Django,
Recuperado de https://blog.facialix.com/udemy-gratis-curso-para-crear-una-
aplicacion-web-con-python-y-django-en-menos-de-2-horas/
Espressif Systems. (2021). ESP32 Technical Reference Manual. Recuperado de
https://www.espressif.com/sites/default/files/documentation/esp32_technical_referen
ce_manual_en.pdf
Espressif Systems. (2021). ESP32 Datasheet. Recuperado de
https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf
Arduino. (2021). Arduino Uno. Recuperado de https://store.arduino.cc/arduino-uno-
rev3

Arduino. (2021). Arduino Uno - Technical Specs. Recuperado de


https://www.arduino.cc/en/Main/ArduinoBoardUno
97

OmniVision. (2015). OV5640 - 5MP CameraChip™ Sensor. Recuperado de


https://www.ovt.com/sensors/OV5640
Espressif Systems. (2021). ESP32-CAM Datasheet. Recuperado de
https://www.espressif.com/sites/default/files/documentation/esp32-
cam_datasheet_en.pdf
98

APÉNDICE
99

1. ¿Cuál es su experiencia como dermatólogo en el diagnóstico de lesiones


cutáneas, como el melanoma y el nevo melanocítico?

a) Poca experiencia

b) Experiencia moderada

c) Amplia experiencia

2. ¿Considera que existen dificultades en la diferenciación entre el melanoma y el


nevo melanocítico al realizar una evaluación visual?

a) Sí, frecuentemente hay dificultades

b) A veces hay dificultades

c) No, rara vez hay dificultades

d) No estoy seguro

3. ¿Qué factores contribuyen a la confusión entre el melanoma y el nevo


melanocítico durante la evaluación visual? (Seleccione todas las opciones
aplicables)

a) Similitud en la apariencia visual

b) Variabilidad de las características clínicas

c) Falta de experiencia del dermatólogo

d) Limitaciones en la iluminación y magnificación

e) Otros (especificar) ________

4. ¿Ha utilizado software de apoyo al diagnóstico para la evaluación de lesiones


cutáneas?

a) Sí, de manera regular

b) A veces

c) No, nunca

5. ¿Cree que la falta de software de apoyo al diagnóstico es una limitación en la


determinación precisa de las lesiones cutáneas?

a) Sí, definitivamente
100

b) En cierta medida

c) No, no considero que sea una limitación

6. ¿Cómo cree que un software de apoyo al diagnóstico podría mejorar su


capacidad para diferenciar entre el melanoma y el nevo melanocítico?
(Seleccione todas las opciones aplicables)

a) Proporcionando análisis de imágenes en tiempo real

b) Identificando características específicas del melanoma

c) Comparando la lesión actual con una base de datos de casos similares

d) Proporcionando recomendaciones de diagnóstico e) Otros (especificar)


________

7. ¿Cuál es su opinión sobre la disponibilidad de dermatoscopios económicos en la


práctica dermatológica?

a) Es esencial contar con dermatoscopios económicos para mejorar el


acceso al diagnóstico

b) Sería útil, pero no es una prioridad

c) No creo que la economía del dermatoscopio sea un factor importante

8. ¿Cómo cree que un dermatoscopio económico podría beneficiar su práctica y los


pacientes? (Seleccione todas las opciones aplicables)

a) Mayor acceso a herramientas de diagnóstico avanzadas

b) Reducción de costos para los pacientes

c) Mejor detección temprana de lesiones cutáneas malignas

d) Mayor precisión en el diagnóstico

e) Otros (especificar) ________

9. ¿Considera que la formación y educación continua en dermatoscopia son


fundamentales para mejorar la precisión del diagnóstico de lesiones cutáneas?

a) Sí, son cruciales para mejorar la precisión

b) No, no considero que sean necesarias

c) No estoy seguro
101

10. ¿Tiene alguna sugerencia adicional para mejorar la determinación de captura de


lesiones cutáneas y el diagnóstico dermatológico en general?
102

Contrato de Privacidad y Consentimiento para el Uso de Imágenes Dermatológicas

Este contrato de privacidad y consentimiento ("Contrato") se establece entre el paciente


individualmente identificado a continuación ("Paciente") y el dermatólogo/centro
dermatológico ("Dermatólogo") para regular el uso y divulgación de las imágenes
dermatológicas del paciente. El Dermatólogo se compromete a proteger la privacidad y
confidencialidad de los datos personales y de las imágenes del paciente de acuerdo con
las leyes y regulaciones de protección de datos aplicables.

Información del Paciente:

Nombre completo: [Nombre del Paciente]

Fecha de nacimiento: [Fecha de nacimiento del Paciente]

Dirección: [Dirección del Paciente]

Número de teléfono: [Número de teléfono del Paciente]

Dirección de correo electrónico: [Dirección de correo electrónico del Paciente]

Consentimiento para el uso de imágenes dermatológicas:

El Paciente reconoce y acepta que el Dermatólogo podrá tomar fotografías, imágenes


digitales y/o videos de su piel o lesiones dermatológicas para fines médicos, diagnósticos,
educativos y de investigación. Estas imágenes podrán incluir, pero no se limitarán a,
fotografías de cuerpo completo, close-ups de áreas específicas de la piel, y/o imágenes
capturadas a través de dermatoscopia.

Propósito del uso de las imágenes:

El Dermatólogo utilizará las imágenes dermatológicas del Paciente con el propósito de:

a) Diagnóstico y tratamiento médico adecuado.


b) Documentación y seguimiento de la condición dermatológica del paciente.
c) Apoyo en la educación médica y científica.
d) Investigación científica y publicaciones académicas, en caso de que las imágenes
sean utilizadas de forma anónima y agregada, sin revelar la identidad del paciente.

Confidencialidad y protección de datos:


103

El Dermatólogo se compromete a mantener la confidencialidad de las imágenes


dermatológicas del paciente y a implementar medidas de seguridad adecuadas para
proteger la privacidad y confidencialidad de los datos personales y de las imágenes, de
acuerdo con las leyes y regulaciones de protección de datos aplicables.

Divulgación de las imágenes:

El Dermatólogo no divulgará ni compartirá las imágenes dermatológicas del Paciente con


terceros sin el consentimiento explícito del Paciente, a menos que así lo requieran las
leyes y regulaciones aplicables, incluyendo, pero no limitado a, situaciones en las que
sea necesario para la salud y seguridad del Paciente o para cumplir con las órdenes
judiciales o solicitudes legales.

Retención de las imágenes:

El Dermatólogo retendrá las imágenes dermatológicas del paciente durante el tiempo


necesario para cumplir con los propósitos establecidos en este Contrato y de acuerdo
con las leyes y regulaciones aplicables.

Derechos del Paciente:

El Paciente tiene los siguientes derechos en relación con sus imágenes dermatológicas:

a) Acceso: El derecho a solicitar y obtener una copia de las imágenes


dermatológicas.
b) Rectificación: El derecho a solicitar la corrección de cualquier información
incorrecta o inexacta en las imágenes dermatológicas.
c) Retirada del consentimiento: El derecho a retirar el consentimiento para el uso
futuro de las imágenes dermatológicas, en la medida en que la ley lo permita.

El Paciente declara haber leído y entendido los términos y condiciones de este Contrato
y da su consentimiento para el uso de sus imágenes dermatológicas de acuerdo con lo
establecido anteriormente.

Firma del Paciente Firma del Dermatólogo

Fecha: Fecha:
104

ANEXO
105

ANEXO RESULTADO DE BIOPSIA


106

ANEXO BASE DE DATOS

1. Visitar el sitio web de Firebase: Ingresar al sitio web oficial de Firebase


en https://firebase.google.com/.
2. Iniciar sesión o crear una cuenta de Google: Hacer clic en el botón
"Comenzar" en la página principal y seleccionar la opción para iniciar
sesión o crear una cuenta de Google si aún no se cuenta con una.
3. Acceder a la consola de Firebase: Una vez ingresado con una cuenta
de Google, se redirigirá a la consola de Firebase. Si no se redirecciona
automáticamente, hacer clic en el ícono de "Consola" en la esquina
superior derecha del sitio web.
4. Crear un nuevo proyecto: En la consola de Firebase, hacer clic en el
botón "Agregar proyecto" o seleccionar la opción "Crear proyecto" para
crear un nuevo proyecto.
5. Completar los detalles del proyecto: Ingresar un nombre para el proyecto
en el campo correspondiente. Se puede personalizar el identificador del
proyecto, pero Firebase generará uno automáticamente si se lo deja en
blanco. Además, se puede elegir la región geográfica donde se
almacenarán los datos.
6. Seguido ir al siguiente apartado de “cloud firestorage” y seleccionar
“Storage”

Figura Guía de configuración “Storage

Fuente: Propia

7. Presionar en “Comenzar” y seleccionar modo de producción, como en


la imagen
107

Figura Guía de configuración “Código”

Fuente: Propia

8. Seleccionar la ubicación de la base de datos en este caso será

Figura Guía de configuración “ubicación”

Fuente: Propia

9. Seleccionar “Rules”

Figura Guía de configuración “Reglas”

Fuente: Propia
108

10. Modificar el código borrando “: if false”

Figura Guía de configuración “Código”

Fuente: Propia

11. Regresar al menú principal, seleccionar “Real time Database” y luego


“crear nueva base de datos”

Figura Guía de configuración “base de datos en tiempo real”

Fuente: Propia

12. Seleccionar modo de prueba

Figura Guía de configuración “Configurar modo de prueba”


109

Fuente: Propia

13. Dirigirse a información general y seleccionar “Web”

Figura Guía de configuración “Configuración de Web”

Fuente: Propia

14. Ingresar el nombre, e ir al código, copiar la parte marcada, esta será el


enlace con el Raspberry pi

Figura Guía de configuración “Código de enlace”

Fuente: Propia
110

ANEXO INSTALACIÓN DE HERRAMIENTAS DE DESARROLLO

INSTALACIÓN DE RASPBERRY PI OS
La instalación de una Raspberry Pi implica adquirir los componentes necesarios, como
la placa, tarjeta microSD, fuente de alimentación y cables.

Para instalar el sistema operativo se realizaron los siguientes pasos.

● Ingresar en el sitio web oficial de Raspberry Pi ( https://www.raspberrypi.org/ ).


● Descargar la última versión del sistema operativo Raspberry Pi OS
(anteriormente conocido como Raspbian)
● Instalar en el computador.
● Luego se procede a configurar la imagen y el sistema operativo (imagen), en este
caso se seleccionará la versión “Legacy”

Figura Instalación de Raspberry Pi OS imagen

Fuente: Propia

Figura Selección de Os
111

Fuente: propia
● Luego, se prepara la tarjeta microSD, se descarga la imagen del sistema
operativo.
● Después se inserta la tarjeta en la Raspberry Pi, se conecta a una pantalla,
teclado y ratón, se enciende el dispositivo.
● A través de la configuración inicial del sistema operativo, se selecciona el idioma,
se establece la contraseña y se ajustan las configuraciones básicas. Una vez
completada la instalación, se puede explorar y utilizar la Raspberry Pi.

PYTHON
Figura Logo Python

Fuente: Ilustre

Proceso de instalación de Python en Windows:

1. Visitar el sitio web oficial de Python: ir a la página de descargas de Python en


https://www.python.org/downloads/.

2. Descargar el instalador: En la sección "Python Releases for Windows", seleccionar


la versión más reciente de Python que sea compatible con el sistema operativo.

3. Ejecutar el instalador: Una vez descargado, ejecutar el archivo de instalación


(.exe).

4. Seleccionar opciones de instalación: En el instalador, marcar la opción "Add


Python to PATH" para que Python se configure correctamente en el sistema y sea
accesible desde la línea de comandos.

5. Instalación completa: Hacer clic en "Install" y esperar a que finalice el proceso de


instalación.
112

6. Verificar la instalación: Abrir la línea de comandos (CMD) y escribir "Python"


seguido de "Enter".

Proceso de instalación de Python en Raspberry pi (Linux):


1. Abrir la terminal:
Figura Logo terminal de comando

Fuente: Rasbian
2. Actualizar el sistema: Ejecutar el siguiente comando en la terminal para
actualizar los paquetes del sistema:
sudo apt update
3. Instalar el paquete de Python: Ejecutar el siguiente comando para instalar
Python:
sudo apt install python3
Este comando instalará Python 3, la versión más utilizada actualmente.
4. Verificar la instalación: Después de que se complete la instalación, puedes
verificarla escribiendo "python3" en la terminal y presionando “Enter”.

ADMINISTRADOR DE PAQUETES DE PIP


Python tiene la ventaja de admitir bibliotecas y marcos de terceros que pueden instalar
para evitar, realizar el código desde cero en cada nuevo proyecto.
PIP es un sistema de gestión de los diferentes paquetes utilizados para instalar y
administrar paquetes de softwares escritos en Python. (“Folium: creación de mapas web
interactivos con Python y Leaflet”)
Si se utiliza versiones de Python 2.7.9 o superiores PIP viene instalado por defecto,
siendo así esta herramienta será importante para instalar los paquetes para hacer
funcionar la red neuronal convolucional de software escritos en Python.
FRAMEWORK DJANGO
113

Instalación
Para realizar la instalación de Django se debe tener instalado Python, y también PIP,
como lo mencionado anteriormente. Seguido a esto para realizar la instalación se debe
poner una línea de comando en el sistema operativo, ya sea Windows, Mac Os o Linux.
Se ingresa la siguiente línea de comando

pip install Django == 3.2.18

Como ejemplo se puso la versión 3.2.18 de Django


FRAMEWORK DE REACT

Para utilizar React se debe hacer la siguiente configuración:

1. Configurar el entorno de desarrollo: Tener instalado Node.js y npm (administrador


de paquetes de Node.js).

2. Crear una nueva aplicación de React: Abrir una terminal y entrar al directorio raíz
del proyecto de Django.

3. Ejecutar el siguiente comando para crear una nueva aplicación de React:

npx create-react-app frontend

Finalmente, se podrá editar el front-end. Con estas extensiones y realizar el interfaz de


usuario.

EDITOR DE CÓDIGO

Para instalar Visual Studio Code:


114

1. Descarga: Ir al sitio web oficial de Visual Studio Code en


https://code.visualstudio.com/. descargar la versión adecuada para el sistema
operativo (Windows, macOS o Linux).

Instalación en Windows:

● Ejecutar el archivo de instalación descargado.

● Aceptar los términos y condiciones y hacer clic en "Install" para comenzar


la instalación.

Instalación en macOS:

● Abrir el archivo DMG descargado.

● Arrastrar y soltar el ícono de Visual Studio Code en la carpeta de


"Applications".

● Si se muestra un cuadro de diálogo de seguridad, hacer clic en "Open" para


confirmar la instalación.

● Ahora, abrir Visual Studio Code desde la carpeta de "Applications" o desde


Launchpad.

2. Instalación en Linux:

● Descargar el archivo DEB o RPM según la distribución de Linux.

● Ejecutar el comando adecuado para instalar el paquete descargado.

● Para DEB: sudo dpkg -i <nombre_del_paquete>.deb

● Para RPM: sudo rpm -i <nombre_del_paquete>.rpm

● Si hay dependencias faltantes, se puede solucionar ejecutando el comando


sudo apt-get -f install

● Una vez instalado, se puede ejecutar code en la terminal para abrir Visual
Studio Code.
115

ANEXO DATASHEET
116
117
118
119

ANEXO CÓDIGOS

Código Cámara
import RPi.GPIO as GPIO
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)
GPIO.setup(10, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(11, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
from datetime import datetime
from picamera import PiCamera
from time import sleep
import os

import pyrebase

firebaseConfig = {
'apiKey': "AIzaSyDzGCzQx7mZKCqssICQ2EhbYOjbhdtljYo",
'authDomain': "rpi-cam1412.firebaseapp.com",
'databaseURL': "https://rpi-cam1412-default-rtdb.firebaseio.com",
'projectId': "rpi-cam1412",
'storageBucket': "rpi-cam1412.appspot.com",
'messagingSenderId': "153486004440",
'appId': "1:153486004440:web:58b8bdf8912a044dad87ad",
'measurementId': "G-1DJ236R8QF"
}

firebase = pyrebase.initialize_app(firebaseConfig)
120

storage = firebase.storage()

camera = PiCamera()

while True:
try:
if GPIO.input(10) == GPIO.HIGH:
print("Boton de Inicio")
camera.start_preview()
while True:
if GPIO.input(11) == GPIO.HIGH:
print("Imagen capturada")
now = datetime.now()
dt = now.strftime("%d-%m-%H%:M")
name = "imagen_" + dt + ".jpg"
camera.capture(name)
camera.stop_preview()
print(name+" guardada")
storage.child(name).put(name)
print("Imagen enviada")
os.remove(name)
print("Archivo borrado")
break # salir del bucle while

sleep(0.1)

sleep(1)
121

except:
camera.close()

Código entrenamiento de modelo

import os

import pandas as pd

import json

import pickle

import zipfile

import shutil

!pip install avro-python3

!pip install tf_slim==1.1.0

!pip install lvis

!pip install opencv-python-headless==4.5.4.58

!pip install tensorflow_io==0.23.1

!pip install tf-models-official==2.8.0

!pip install tensorflow==2.8.0

!pip install keras==2.8.0

!pip install tensorboard==2.8.0


122

!pip install tensorflow-text==2.8.0

!pip install tensorflow-gcs-config==2.8.0

!pip install tensorflow==2.8.0

!pip install keras==2.8.0

labels = [{'name':'mel', 'id': 1}, {'name': 'nv', 'id': 2}]

with open("label_map.pbtxt", "w") as f:

for label in labels:

f.write('item { \n')

f.write('\tname:\'{}\'\n'.format(label['name']))

f.write('\tid:{}\n'.format(label['id']))

f.write('}\n')

# Commented out IPython magic to ensure Python compatibility.

import os

# %cd /content

!git clone --quiet https://github.com/tensorflow/models.git

# %cd /content/models/

#!git checkout 58d19c67e1d30d905dd5c6e5092348658fed80af

!apt-get update && apt-get install -y -qq protobuf-compiler python-pil python-


lxml python-tk

!pip install -q Cython contextlib2 pillow lxml matplotlib


123

!pip install -q pycocotools

# %cd /content/models/research

!protoc object_detection/protos/*.proto --python_out=.

os.environ['PYTHONPATH'] +=
':/content/models/research/:/content/models/research/slim/'

!python object_detection/builders/model_builder_test.py

# Descargamos los modelos pre-entrenados en este caso SSD +


MobileNetV2

!wget --no-check-certificate
http://download.tensorflow.org/models/object_detection/tf2/20200711/ssd_
mobilenet_v2_fpnlite_320x320_coco17_tpu-8.tar.gz \

-O /content/ssd_mobilenet_v2_fpnlite_320x320_coco17_tpu-8.tar.gz

!tar -zxvf /content/ssd_mobilenet_v2_fpnlite_320x320_coco17_tpu-8.tar.gz

output_path = 'ssd_mobilenet_v2_fpnlite_320x320_coco17_tpu-8'

output_path = os.path.join(os.getcwd(), output_path)

print("La carpeta se almacenan en {}".format(output_path))

"""DATA AUGMENTATION"""

path_training = '/content/ssd_mobilenet'

os.mkdir(path_training)
124

source_config = "{}/pipeline.config".format(output_path)

target_config = "{}/pipeline.config".format(path_training)

shutil.copyfile(source_config, target_config)

import tensorflow as tf

from object_detection.utils import config_util

from object_detection.protos import pipeline_pb2

from google.protobuf import text_format

# Obtenemos la configuración del archivo pipeline

config = config_util.get_configs_from_pipeline_file(target_config)

# Creamos una variable proto_str para poder modificar las variables del
archivo pbtxt

pipeline_config = pipeline_pb2.TrainEvalPipelineConfig()

with tf.io.gfile.GFile(target_config, "r") as f:

proto_str = f.read()

text_format.Merge(proto_str, pipeline_config)

# Definimos las rutas en donde se encuentra los TFRecords y el label map


para agregarlos al archivo de configuración del pipeline.config

label_map_pbtxt_fname = "/content/label_map.pbtxt"

train_record_fname = "/content/train.tfrecord"
125

test_record_fname = "/content/test.tfrecord"

#val_record_fname = "/content/val.tfrecord"

# Cantidad de clases del modelo

pipeline_config.model.ssd.num_classes = 2

# El tamaño del batch size, entre más grande más costo computacional va a
necesitar en el proceso de entrenamiento, pero a su vez entrenará más
rápido.

pipeline_config.train_config.batch_size = 20

# Donde almacenaremos los resultados del entrenamiento

pipeline_config.train_config.fine_tune_checkpoint ="{}/checkpoint/ckpt-
0".format(output_path)

# Qué tipo de detección aplicaremos (Object detection)

pipeline_config.train_config.fine_tune_checkpoint_type = "detection"

# Dirección del label map

pipeline_config.train_input_reader.label_map_path =
label_map_pbtxt_fname

# Dirección del train TFRecord


126

pipeline_config.train_input_reader.tf_record_input_reader.input_path[0] =
train_record_fname

# Dirección del label map

pipeline_config.eval_input_reader[0].label_map_path =
label_map_pbtxt_fname

# Dirección del test TFRecord

pipeline_config.eval_input_reader[0].tf_record_input_reader.input_path[0] =
test_record_fname

# Almacenamos nuestro archivo final

config_text = text_format.MessageToString(pipeline_config)

with tf.io.gfile.GFile(target_config, "wb") as f:

f.write(config_text)

num_steps = 5000

model_dir = "/content/ssd_mobilenet"

# Utilizamos directamente la librería de object detection para ejecutar el


script model_main_tf2

# Los argumentos principales son el archivo de configuración, la ubicación


del modelo y la cantidad de steps que ejecutará.

!python /content/models/research/object_detection/model_main_tf2.py \
127

--pipeline_config_path={target_config} \

--model_dir={model_dir} \

--num_train_steps={num_steps}

# Commented out IPython magic to ensure Python compatibility.

# %load_ext tensorboard

# %tensorboard --logdir '/content/ssd_mobilenet'

output_directory = '/content/fine_tuned_model'

!python /content/models/research/object_detection/exporter_main_v2.py \

--input_type image_tensor \

--pipeline_config_path {target_config} \

--trained_checkpoint_dir {model_dir} \

--output_directory {output_directory}

!zip -r /content/fine_tuned_model.zip /content/fine_tuned_model

Código inferencia
# -*- coding: utf-8 -*-

"""Inferencia.ipynb

Automatically generated by Colaboratory.


128

Original file is located at

https://colab.research.google.com/drive/1LQFq4q27zCoS0mvBHiZrI-
fajhHVJfkA

"""

!pip install tf_slim

!pip install tf-models-official

!pip install lvis

# Commented out IPython magic to ensure Python compatibility.

import os

# %cd /content

!git clone --quiet https://github.com/tensorflow/models.git

# %cd /content/models/

#!git checkout 58d19c67e1d30d905dd5c6e5092348658fed80af

!apt-get update && apt-get install -y -qq protobuf-compiler python-pil python-


lxml python-tk

!pip install -q Cython contextlib2 pillow lxml matplotlib

!pip install -q pycocotools

# %cd /content/models/research

!protoc object_detection/protos/*.proto --python_out=.

os.environ['PYTHONPATH'] +=
':/content/models/research/:/content/models/research/slim/'

!python object_detection/builders/model_builder_test.py
129

import zipfile

local_zip = "/content/fine_tuned_model.zip"

zip_ref = zipfile.ZipFile(local_zip, "r")

zip_ref.extractall("/content/fine_tuned_model")

zip_ref.close()

import tensorflow as tf

from object_detection.utils import label_map_util

from object_detection.utils import visualization_utils as viz_utils

import numpy as np

PATH_TO_MODEL_DIR =
"/content/fine_tuned_model/content/fine_tuned_model"

PATH_TO_SAVE_MODEL = PATH_TO_MODEL_DIR + "/saved_model"

detect_fn = tf.saved_model.load(PATH_TO_SAVE_MODEL)

label_map_pbtxt_fname = "/content/label_map.pbtxt"

category_index =
label_map_util.create_category_index_from_labelmap(label_map_pbtxt_fn
ame)

from PIL import Image


130

import matplotlib.pyplot as plt

from google.colab.patches import cv2_imshow

image_path = "/content/Melanoma.jpg"

image_np = np.array(Image.open(image_path))

input_tensor = tf.convert_to_tensor(image_np)

input_tensor = input_tensor[tf.newaxis, ...]

detections = detect_fn(input_tensor)

# Analizamos cuántas detecciones se obtuvieron

num_detections = int(detections.pop('num_detections'))

detections = {key: value[0,:num_detections].numpy() for key, value in


detections.items()} (“Python inputs incompatible with input_signature #9588
”)

detections['num_detections'] = num_detections

detections['detection_classes'] =
detections['detection_classes'].astype(np.int64)

# Tomamos una imagen y la copiamos para dibujar los bounding box


131

image_np_with_detections = image_np.copy()

# Utilizamos la librería de object detection para visualizar el bounding box y


la clasificación

viz_utils.visualize_boxes_and_labels_on_image_array(

image_np_with_detections,

detections['detection_boxes'],

detections['detection_classes'],

detections['detection_scores'],

category_index,

max_boxes_to_draw=200,

min_score_thresh=0.30,

use_normalized_coordinates = True

# Visualizamos resultados

cv2_imshow(image_np_with_detections)
132

ANEXO GRÁFICAS DE VERSIÓN 1


133

ANEXO DIAGRAMA CIRCUITAL


134

ANEXO PLANOS 3D
135
136

ANEXO MANUAL
137
138
139
140
141
142
143
144
145
146
147
148
149

También podría gustarte