MODELO DE CLASIFICACIÓN DE
IMÁGENES VIOLENTAS BASADO EN UN MODELO DE DETECCIÓN DE OBJETOS
Autor
Alvaro Andres Niño Rincon
Tutor
MEng. Alejandro Paolo Daza Corredor
UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS Facultad de Ingeniería
Proyecto Curricular de Ingeniería de Sistemas Bogotá, Colombia
Abril 2022
Dedicatorias
No es sencillo hacer una dedicatoria ya que en el transcurso de mi carrera fueron muchas personas que de una manera u otra me apoyaron para estar en este punto.
Sin embargo, quiero dedicar este trabajo a aquellos que estuvieron presentes desde el principio hasta el final sin permitir que desfalleciera cuando mis fuerzas me fallaron.
Primero que todo agradecerle a mi compañera de vida, quien aporto todo su amor, tiempo y esfuerzo, a mis padres y hermana, quienes nunca me dejaron solo recibiendo de ellos su apoyo incondicional y su motivación para seguir adelante; y no puedo dejar atrás a mi tutor quien me brindo su sabiduría para sacar adelante este trabajo.
Álvaro Andrés Niño Rincón 3
CONTENIDO
Introducción ... 6Palabras Clave ... 6
1. Problema de Investigación ... 7
1.1 Planteamiento del Problema ... 7
1.2 Formulación del Problema ... 8
1.3 Sistematización del Problema ... 8
2. Objetivos... 10
2.1 Objetivo General ... 10
2.2 Objetivos Específicos ... 10
3. Justificación ... 11
3.1 Justificación Metodológica ... 11
3.2 Justificación Práctica ... 11
4. Marco de Referencia ... 12
4.1 Marco Teórico ... 12
4.2 Marco Conceptual... 15
4.3 Marco Espacial ... 17
5. Hipótesis ... 18
6. Metodología ... 19
7. Impacto esperado ... 21
8. Recursos y Presupuesto ... 23
9. limitaciones y alcance ... 24
10. Desarrollo ... 25
10.1 Objetivo especifico 1 ... 25
10.2 Objetivo especifico 2 ... 29
10.3 Objetivo especifico 3 ... 31
Álvaro Andrés Niño Rincón 4
10.4 Objetivo especifico 4 ... 39
10.5 Objetivo especifico 5 ... 46
11. Ejemplo de resultados ... 50
12. Conclusiones... 57
13. Referencias ... 58
ÍNDICE DE TABLAS Tabla 1: Generación de conocimiento y nuevos desarrollos tecnológicos ... 21
Tabla 2: Fortalecimiento de la capacidad científica y la capacidad institucional ... 21
Tabla 3: Apropiación social del conocimiento. ... 22
Tabla 4: Costos del proyecto ... 23
Tabla 5: Cantidad de imágenes por objeto violento ... 35
Tabla 6: Resultados obtenidos entrenamiento ... 38
Tabla 7: Resultado de precisión data set validación ... 45
ÍNDICE DE FIGURAS Figura 1: Imágenes Conflicto armado en Colombia... 27
Figura 2 :Imagen Guerra Colombia ... 28
Figura 3: Imagen Secuestrados Colombia ... 28
Figura 4: Ejemplo de uso de LabelImg ... 31
Figura 5: Deteccion de objetos ELN ... 36
Figura 6: Detección de objeto uniforme ... 37
Figura 7: Detección de objeto FARC EP ... 38
Figura 8: YoloV4 Model: epochs vs accurancy... 40
Figura 9: YoloV4 Model: epochs vs loss ... 41
Figura 10: Retinanet Model: epochs vs accurancy ... 42
Figura 11: Retinanet Model: epochs vs loss ... 43
Figura 12: SSD Model: epochs vs accurancy ... 44
Figura 13: SSD Model epochs vs loss ... 45
Álvaro Andrés Niño Rincón 5
Figura 14: Retinanet vs SSD vs YoloV4 (train, loss) ... 47
Figura 15: Retinanet vs SSD vs YoloV4 (train, accurancy) ... 48
Figura 16: Retinanet vs SSD vs YoloV4 (valid, accurancy) ... 49
Figura 17: Imagen detectada con el API ... 50
Figura 18: Respuesta del API en JSON ... 51
Figura 19: Imagen detección Jesús Santrich ... 52
Figura 20: Resultado detección Figura 19 ... 52
Figura 21: Imagen detección liberación ... 54
Figura 22: Resultados detección Figura 21 ... 54
Álvaro Andrés Niño Rincón 6
INTRODUCCIÓN
El presente proyecto pretende desarrollar un modelo de deeplearning que permita clasificar imágenes violentas por medio de la identificación de objetos, para lograrlo se construye un dataset con diferentes imágenes con el fin de determinar que objetos se consideran violentos, se realizan modelos con diferentes algoritmos y/o modelos de deeplearning los cuales se evalúan en términos de eficiencia y se determina cual es el óptimo para usar.
Este proyecto es parte de la base de la tesis de maestría que consiste en un modelo de software para el manejo de imágenes culturales basado en Multiview Learning en donde se utiliza el modelo que se desarrolla en este trabajo como un módulo del modelo Multiview Learning, además la tesis de maestría compone parte del trabajo de doctorado sobre un modelo de navegación utilizando técnicas de inteligencia computacional para mejorar la experiencia en la visualización de datos históricos y culturales.
PALABRAS CLAVE
Detección de Objetos, Imágenes Culturales, Clasificación de imágenes, Deeplearning.
Álvaro Andrés Niño Rincón 7
1. PROBLEMA DE INVESTIGACIÓN
1.1 PLANTEAMIENTO DEL PROBLEMA
En los últimos años la inteligencia artificial ha tenido un gran auge en diferentes campos de estudio, entre muchos de estos han sido para el bien de la sociedad, sin embargo, gran parte se usa para temas bélicos que de alguna forma perjudican a la humanidad. La motivación de la guerra siempre ha tenido un mismo objetivo, el de la confrontación entre distintas ideologías y esto implica un daño colateral a comunidades que no deberían ser parte de esta disputa. Pero la inteligencia artificial debería ser utilizada para fines más limpios y pacifistas en pro de la sociedad (Feldmann, 2018).
La violencia ha estado presente a lo largo de la historia de la humanidad, es un problema creciente que afecta a la sociedad actual. Los jóvenes y niños están bombardeados con actos violentos ya sea en la realidad como en los aparatos tecnológicos que operan a diario.
Estos contenidos dispuestos intentan ser controlados por administradores de las páginas web, buscando eliminar o censurar aquellos actos de material violento. Esto conlleva a una ardua labor que consume bastante tiempo y esfuerzo. La inteligencia artificial puede y podrá sustituir en gran medida esta labor con mayor eficiencia y exactitud (Ashikin Ali, 2016).
Otros contenidos violentos ofertados y accesibles por la juventud e infantes son las películas, aquellas que, aunque tenga un control parental por las diferentes plataformas son fácilmente evadidas por estos individuos. La inteligencia artificial busca encubrir las escenas violentas y así evitar que se vean estas escenas, sin embargo, el proceso para realizar esto tiene una gran complejidad (Samee Ullah Khan, 2019).
Han surgido grandes avances en el campo de la inteligencia artificial y más precisamente en la visión por computadora, entre ellas aplicaciones de vigilancia. Estas cámaras han sido instaladas en los últimos y van en aumento, el propósito de estas es garantizar la seguridad.
Los sistemas de vigilancia inteligentes son un aporte inmenso puesto que la vigía no será realizada por humanos sino por modelos de inteligencia artificial, lo que implica una detección más rápida y temprana de actividad violenta (Fath U Min Ullah, 2019).
Álvaro Andrés Niño Rincón 8 La violencia es parte de la vida cotidiana de la sociedad ya sea en las guerras entre ideologías, violencia social, robos, matanzas entre otros; que pueden ser promovidas y proyectadas en videos de internet o películas. Si esto continua en aumento exponencial, la sociedad futura sustentada por la juventud e infancia actual tendrá acceso a este tipo de contenidos sin un control eficiente.
Para evitar este problema y sus consecuencias futuras se quiere buscar una forma de detectar la violencia ocurrida en la vida real logrando controlar estas acciones y evitando muertes y/o heridos, en cuanto a la violencia mostrada en películas y otros formatos podrán censurar o eliminar estos actos que permitirán un mejor control parental.
Para tal fin se propone una solución de clasificación de imágenes de violencia por medio de técnicas de deeplearning para detección de objetos. Para ello se tiene en cuenta una agrupación de objetos que permiten la identificación de imágenes violentas.
1.2 FORMULACIÓN DEL PROBLEMA
A partir del planteamiento del problema se puede construir la siguiente pregunta que abarcara el propósito del proyecto:
¿Como clasificar imágenes violentas utilizando algoritmos y modelos de deeplearning por medio de detección de objetos?
1.3 SISTEMATIZACIÓN DEL PROBLEMA
La formulación del problema admite una serie de sub-preguntas, que permiten especificarla de mejor manera:
• ¿Qué objetos permiten identificar la violencia en imágenes?
• ¿Qué herramientas de deeplearning para detección de objetos utilizar para implementar los modelos de clasificación de imágenes violentas?
• ¿Los modelos de clasificación de imágenes usando herramientas de deeplearning permiten la identificación de violencia?
Álvaro Andrés Niño Rincón 9
• ¿Qué modelo de clasificación de imágenes permite la mejor detección de violencia?
Álvaro Andrés Niño Rincón 10
2. OBJETIVOS
2.1 OBJETIVO GENERAL
Desarrollar un modelo que permita identificar la violencia mediante algoritmos y/o modelos de deeplearning por medio de detección de objetos para facilitar la clasificación de imágenes violentas.
2.2 OBJETIVOS ESPECÍFICOS
1) Recolectar imágenes violentas por medio de búsqueda de repositorios libres para la construcción del dataset.
2) Determinar los objetos que se consideran violentos en una imagen para estructurar la base de objetos a detectar mediante un análisis del dataset.
3) Implementar modelos de clasificación de imágenes utilizando diferentes herramientas de deeplearning para detección de objetos que se consideren violentos.
4) Verificar que los modelos de clasificación de imágenes violentas cumplan con su objetivo mediante la comprobación de un conjunto de imágenes de prueba.
5) Comparar los modelos de clasificación de imágenes violentas evaluando la eficiencia de cada uno para determinar el modelo óptimo.
Álvaro Andrés Niño Rincón 11
3. JUSTIFICACIÓN
Esta investigación permite identificar la violencia que se encuentran en imágenes por medio de la detección de objetos aplicando modelos de deeplearning que facilitan la identificación y/o clasificación de imágenes violentas.
3.1 JUSTIFICACIÓN METODOLÓGICA
Este trabajo busca la identificación de violencia en imágenes, en donde se detectan objetos particulares que permiten la correcta clasificación, por tal motivo es necesario el desarrollo de modelos y algoritmos para la detección de objetos.
Puesto que el desarrollo de este trabajo busca plantear e implementar un modelo de clasificación de imágenes violentas mediante algoritmos y modelos de deeplearning por medio de detección de objetos, lo que conlleva a que este modelo pueda ser usado en otras investigaciones que vayan por la línea social y tecnológica de clasificación de imágenes violentas.
3.2 JUSTIFICACIÓN PRÁCTICA
Esta investigación propone un modelo de clasificación de imágenes, identificando objetos que se consideran violentos, con el fin de obtener resultados óptimos con respecto a la correcta selección por parte del modelo de las imágenes violentas de las que no.
La búsqueda del mejor modelo de clasificación soportado por este trabajo de investigación brinda resultados que podrían ser aprovechados por diferentes sectores de la sociedad;
como lo son las actividades sociales, culturales y de seguridad.
Álvaro Andrés Niño Rincón 12
4. MARCO DE REFERENCIA
4.1 MARCO TEÓRICO
Se realiza una búsqueda del estado de arte necesaria según el planteamiento del problema de las temáticas referentes a clasificación de imágenes y detección de objetos con modelos de deeplearning.
En una primera instancia se busca lo relacionado al contexto militar, de conflicto armado, de violencia y de actos bélicos:
En el artículo titulado “CNN Image Classification on Military Pictures” se implementa un modelo clasificador de imágenes militares usando una red neuronal convolucional, el entrenamiento de este modelo se hace con base de imágenes de tanques. Como resultados se obtuvo que le modelo clasificador permite una precisión del 82,05% al identificar tanques en una imagen, sin embargo, el autor estima un error por sobreajuste de los datos en la red convolucional lo que implica una menor eficacia al clasificar correctamente las imágenes (Feldmann, 2018).
El artículo del 2016 con el nombre de “A Review on Violence Video Classification Using Convolutional Neural Networks” se propone el diseño de un modelo de detección de videos violentos usando redes neuronales convolucionales con el propósito de generar una herramienta con una mejor precisión y exactitud al filtrar contenido de actos violentos. El autor realiza una búsqueda exhaustiva de las diferentes técnicas actuales para la clasificación de videos. Se concluye que las redes neuronales convolucionales son una herramienta poderosa para clasificar, no obstante, se dice que los algoritmos de deeplearning deben ser más eficientes, robustos y flexibles, ya así mejorar la clasificación (Ashikin Ali, 2016).
En el 2019 se publica el artículo “Cover the Violence: A Novel Deep-Learning-Based Approach Towards Violence-Detection in Movies”, en este se propone un esquema de detección de actos bélicos en películas. Este esquema consiste en tres pasos: el primero segmenta el video en fotogramas que represente las escenas; el segundo consiste en pasar
Álvaro Andrés Niño Rincón 13 estos fotogramas a un modelo de aprendizaje profundo en donde se clasificaran estos fotogramas en violentos y no violentos, con la particularidad del modelo que tiene un enfoque de aprendizaje por trasferencia; y por último se unen aquellos fotogramas que han sido detectados como no violentos formando así unas películas libres de violencia. Se usa un modelo MobileNet que es entrenado con tres conjuntos de datos de referencia. Como conclusión, el autor propone que en investigaciones posteriores usara parámetros de aprendizaje secuencial para la detección eficaz de actos violentos en escenas complejas (Samee Ullah Khan, 2019).
El autor Fath U Min Ullah del trabajo “Violence Detection Using Spatiotemporal Features with 3D Convolutional Neural Network” expone un marco de detección de violencia por medio de deeplearning con el fin de ser usados en el ámbito de los sistemas de seguridad.
Este marco radica en 3 etapas: la primera es la detección de las personas en los videos de vigilancia usando un modelo de una red convolucional; en la segunda etapa se pasa una secuencia de fotogramas con las personas detectadas a una red convolucional 3D, esta red utiliza una optimización desarrollada por Intel lo cual lo hace más eficiente para la predicción de actividad violenta; por último, se transmite una alerta a la policía. Los resultados generados permiten que la detección de violencia en la vigilancia sea mucho mejor que en otros métodos, dando una mayor precisión al identificar las acciones (Fath U Min Ullah, 2019).
Buscando algo más concreto en la detección de objeto se investigan elementos relacionados con violencia:
El trabajo “Firearm Detection and Segmentation Using an Ensemble of Semantic Neural Networks” del 2020, se muestra el desarrollo e implementación de un modelo de deeplearning para la detección de presencia de armas en imágenes o videos en tiempo real con la intención de prevenir ataques terroristas. Para esto se usó varios modelos de deeplearning basados en redes neuronales convolucionales de tal manera que el problema inicial de detectar un arma se divide en pequeños relacionado con componentes individuales del arma. Esto conduce a modelos más simples que no necesitan grandes recursos de máquina. Los resultados mostrados dan como garantía la detección del arma
Álvaro Andrés Niño Rincón 14 usada para el entrenamiento (AR-15), no obstante, se debe utilizar otros tipos de armas para ampliar el espectro de detección del modelo (Alexander Egiazarov, 2020).
La investigación “A Handheld Gun Detection using Faster R-CNN Deep Learning” del 2017 presenta la detección de armas usando un modelo de redes neuronales convolucionales de última generación basado en Faster Region, a través del aprendizaje por trasferencia. Se compara tres modelos clasificadores: máquina de vectores de soporte (SVM), vecino más cercano (KNN) y árbol de ensamble para clasificación. El autor plantea una serie de problemas con respecto a detección de armas y la oclusión de estas mismas, causadas por diferentes elementos; entre otros. Este modelo es probado y evaluado con un dataset IMFDB (Internet Movie Firearms Data base) de referencia. Los resultados muestran en cuanto a el problema de oclusión un rendimiento mucho mejor, además de ser más eficiente que los otros modelos (Gyanendra K. Verma, 2017).
En el trabajo “Towards Grafiti Classification in WeaklyLabeled Images Using Convolutional Neural Networks” del 2017 se propone el uso de redes convolucionales para la clasificación de imágenes débilmente etiquetadas en donde se identifican la presencia o ausencias de grafitis. Se usa un conjunto de datos extraídos de Flickr y una red VGG-16 entrenada previamente con datos de ImageNet, se propone un cambio en la capa FC original y de otras de sus clases con el fin de que convergiera rápidamente el entrenamiento. Los resultados de este trabajo muestras que este nuevo enfoque posee beneficios para el entrenamiento (Glauco R. Munsberg, 2017).
Ahora se centra en la búsqueda de las últimas técnicas usadas para detección de objetos y clasificación de imágenes:
El 2019 se implementa un modelo de deeplearning basado en redes neuronales convolucionales y redes neuronales recurrentes para clasificación de imágenes en la investigación titulada “Combined convolutional and recurrent neural networks for hierarchical classification of images” con el fin de mejorar las técnicas usadas con redes neuronales actuales. El modelo clasificación consiste en un modelo jerárquico en donde se combina una red neuronal convolucional que extrae representaciones jerárquicas de imágenes y una red neuronal recurrente que captura un árbol jerárquico de clases. Las redes usadas están compuestas por tres partes: la inicial es una red convolucional la cual
Álvaro Andrés Niño Rincón 15 toma una imagen sin procesar como entrada y produce características convolucionales en cada capa; en la siguiente etapa se toman las características de las capas de la red convolucional y se transforman en un vector de dimensión fija; y por último una red recurrente toma este vector como entrada y genera predicciones en cada nivel del árbol.
Para facilitar el entrenamiento se usa el aprendizaje residual y mejorar la generacional del modelo. Los resultados muestran que el modelo propuesto es mejor que las redes neuronales convolucionales de última generación y los modelos VGG-16 y Resnet-50 (Jaehoon Koo, 2018).
Con la literatura consultada se puede notar los problemas y posibles soluciones que conllevan en la actualidad los temas expuestos relacionados a detección de objetos, clasificación de imágenes y en casos particulares a la identificación de imágenes de violencia.
4.2 MARCO CONCEPTUAL
Para entender de una mejor manera todas las nociones de las temáticas a tratar en este trabajo se establecen los conceptos básicos para el entendimiento del marco teórico.
• Deeplearning (Aprendizaje profundo): “El aprendizaje profundo permite que los modelos computacionales que se componen de múltiples capas de procesamiento aprendan representaciones de datos con múltiples niveles de abstracción. Estos métodos han mejorado drásticamente el estado de la técnica en reconocimiento de voz, reconocimiento de objetos visuales, detección de objetos y muchos otros dominios, como el descubrimiento de fármacos y la genómica. El aprendizaje profundo descubre una estructura intrincada en grandes conjuntos de datos mediante el uso del algoritmo de retro propagación para indicar cómo una máquina debe cambiar sus parámetros internos que se utilizan para calcular la representación en cada capa a partir de la representación en la capa anterior. Las redes convolucionales profundas han producido avances en el procesamiento de imágenes, video, voz y audio, mientras que las redes recurrentes han arrojado luz sobre datos secuenciales como texto y voz.” (Lecun Y., 2015)
Álvaro Andrés Niño Rincón 16
• Transfer Learning (Aprendizaje por trasferencia): “El aprendizaje por transferencia es un método de aprendizaje automático en el que un modelo de aprendizaje desarrollado para una primera tarea de aprendizaje se reutiliza como punto de partida para un modelo de aprendizaje en una segunda tarea de aprendizaje. Es un problema de investigación en aprendizaje automático que se centra en almacenar el conocimiento adquirido al resolver un problema y aplicarlo a un problema diferente pero relacionado.” (Bozinovski, 2019)
• MobileNets: “Una clase de modelos eficientes para aplicaciones de visión integradas y móviles. MobileNets se basa en una arquitectura optimizada que utiliza convoluciones separables en profundidad para construir redes neuronales profundas ligeras. Presentamos dos hiper parámetros globales simples que equilibran de manera eficiente entre latencia y precisión. Estos hiper parámetros permiten al constructor del modelo elegir el modelo del tamaño correcto para su aplicación en función de las limitaciones del problema.” (Andrew G. Howard, 2017)
• Recurrent Neural Network (Red neuronal recurrente): “RNN se refería a un tipo estándar de red neuronal que se extendía a lo largo del tiempo, con bordes que alimentan el siguiente paso de tiempo en lugar de alimentar el tiempo de paso simultáneo de la siguiente capa. RNN se construye para el reconocimiento de secuencias, por ejemplo, un texto o una señal de voz. Tiene ciclos dentro que indican la presencia de memoria corta en la red. A diferencia de una red neuronal recurrente, un RNN es como una red jerárquica donde la entrada necesita procesarse jerárquicamente en forma de árbol porque no hay tiempo para la secuencia de entrada.” (Oludare Isaac Abiodun, 2018)
• 3D Convolution Net (Red convolucional 3D): “Una convolución 3D es un tipo de convolución donde el núcleo se desliza en 3 dimensiones en lugar de 2 dimensiones con convoluciones 2D. Un caso de uso de ejemplo son las imágenes médicas donde se construye un modelo utilizando cortes de imágenes en 3D. Además, los datos basados en video tienen una dimensión temporal adicional sobre las imágenes, lo que los hace adecuados para este módulo.” (Papers with code, 2021)
• Faster Region CNN: “Este un método de red convolucional basado en región rápida para la detección de objetos. Fast R-CNN se basa en clasificar de manera eficiente las propuestas de objetos utilizando redes convolucionales profundas. Fast R-CNN
Álvaro Andrés Niño Rincón 17 emplea varias innovaciones para mejorar la velocidad de entrenamiento y prueba al mismo tiempo que aumenta la precisión de detección.” (Girshick, 2015)
4.3 MARCO ESPACIAL
Para este proyecto se define un marco de trabajo enmarcado en el contexto de contenidos referidos al conflicto armado, a la violencia y los actos bélicos, con el fin de que esta línea se explore el mejoramiento en la clasificación de este tipo de contenidos a partir de la definición de características propias (objetos relacionados con el tema de estudio), así definir a este conjunto de imágenes y diferenciar con otras de otro tipo.
Álvaro Andrés Niño Rincón 18
5. HIPÓTESIS
Al implementar modelos de deeplearning para la clasificación de imágenes violentas, se podrá utilizar la detección de objetos con el fin de identificar violencia y así encontrar el modelo optimo.
Álvaro Andrés Niño Rincón 19
6. METODOLOGÍA
En este trabajo se usa la metodología de desarrollo de un modelo de deeplearning. Esta propone y comprende varias fases y etapas que conducen al desarrollo de un modelo, además de su comprobación o validación:
• Fase 1: Herramientas tecnológicas:
En esta fase se busca inicialmente las herramientas que permitan el desarrollo total del modelo, entre ellas librerías, lenguajes de programación y plataformas. Con el fin de que estas conduzcan un desarrollo adecuado, confortable y fácil de usar.
• Fase 2: Elección de algoritmos y modelos de deeplearning:
En esta fase se busca los algoritmos y modelos de deeplearning necesarios para la detección de objetos y la correcta clasificación de las imágenes en cuestión.
• Fase 3: Búsqueda y elección del data set:
Los datos que son usados para el entrenamiento y testeo del modelo de redes neuronales son la base esencial que conlleva a una implementación correcta y eficiente, dando lugar a los resultados óptimos y necesarios para el propósito del modelo. Por esta razón se busca las imágenes adecuadas para el entrenamiento de los modelos que se desarrollan en este trabajo.
• Fase 4: Tratamiento del data set:
En esta fase se realiza un tratamiento de los datos recolectados como data set, en donde se busca normalizar los datos, suprimir datos erróneos, redimensionar entre otros elementos que permitan mejorar el data set.
• Fase 5: Contextualización:
En esta fase se busca contextualizar las imágenes del data set escogido en fases anteriores buscando los objetos necesarios para hacer la correcta clasificación de estas.
Álvaro Andrés Niño Rincón 20
• Fase 6: Construcción del modelo:
Teniendo los pilares básicos del modelo, se procede a la construcción del modelo teniendo en cuenta cada elección, parámetros que se han determinado en fases anteriores. Este paso es el más importante porque del parte que todo el funcionamiento sea el adecuado y óptimo.
• Fase 7: Entrenamiento del modelo:
Ya con el modelo implementado se utiliza el data set ya tratado y contextualizado anteriormente para el entrenamiento correspondiente. Antes del entrenamiento se define el número de épocas que permitirán la correcta elección de parámetros por parte del modelo.
• Fase 8: Comprobación de modelo:
El modelo ya entrenado, se procede a realizar el testeo que permite definir qué tan acertado ha quedado después del entrenamiento de la fase anterior.
• Fase 9: Mantenimiento del modelo:
Esta fase es utilizada para posteriores retroalimentaciones para el modelo, es decir, para mejoras que se puedan realizar al modelo, con el fin de que el modelo se vuelva óptimo.
• Fase 10: Comparación de modelo:
En este punto se compara los resultados obtenidos de los diferentes modelos.
• Fase 11: Resultados.
• Fase 12: Conclusiones.
En esta fase final, se busca la interpretación de los resultados obtenidos en los modelos implementados, entrenados y comprobados, y con ellos construir las conclusiones con respecto a los objetivos planteados en este trabajo.
Álvaro Andrés Niño Rincón 21
7. IMPACTO ESPERADO
Del proyecto se derivarán productos de investigación, así como los siguientes aportes que conllevan al desarrollo académico en diversos niveles.
• Generación de conocimiento y nuevos desarrollos tecnológicos:
Tabla 1: Generación de conocimiento y nuevos desarrollos tecnológicos Resultado/Producto
esperado
Indicador Beneficiario
Modelo de identificación de imágenes violentas
Artículo Publicado y Documento de tesis
Entidades sociales y de seguridad.
Estudio de diferentes algoritmos de deeplearning de detección objetos
Artículo Publicado Comunidad académica interesada en el tratamiento de imágenes.
Fuente: Elaboración propia
• Fortalecimiento de la capacidad científica y la capacidad institucional:
Tabla 2: Fortalecimiento de la capacidad científica y la capacidad institucional Resultado/Producto
esperado
Indicador Beneficiario
Estudiante en formación a nivel de Pregrado
Documento de trabajo de grado.
Acta de Grado
El estudiante.
La Universidad Distrital.
Fuente: Elaboración propia
Álvaro Andrés Niño Rincón 22
• Apropiación social del conocimiento:
Tabla 3: Apropiación social del conocimiento.
Resultado/Producto esperado
Indicador Beneficiario
Artículo publicado en revista Indexada
Artículo Publicado y carta de aceptación.
La Universidad Distrital.
Comunidad académica interesada en dichas
temáticas.
Documento de trabajo de grado.
Carta de Aceptación El estudiante La Universidad Distrital.
Fuente: Elaboración propia
Álvaro Andrés Niño Rincón 23
8. RECURSOS Y PRESUPUESTO
El presupuesto debe cubrir en detalle los rubros de recursos humanos, infraestructura física, equipos, materiales, viajes, bibliografía y otros. Cuando sea del caso se debe dimensionar la dedicación o duración en el tiempo del recurso y su costo. Se debe especificar la fuente de los recursos (personal, universidad, institución, etc.), en todos los casos se debe valorar cada ítem.
Tabla 4: Costos del proyecto
Fuente: Elaboración propia
Categoria Item Cantidad Tiempo Horas/Semana
o disponibilidad Valor uniario u Hora ¿Es indispensable? ¿Se cuenta con ello? Valor total
Investigador 1 20 $ 30.000,00 SI SI $ 10.200.000,00
Tutor 1 10 $ 50.000,00 SI SI $ 8.500.000,00
Equipos Computador 1 1 $ 2.000.000,00 SI SI $ 2.000.000,00
python 1 1 $ - SI SI $ -
R studio 1 1 $ - SI SI $ -
Internet 1 1 $ 54.000,00 SI SI $ 918.000,00
Luz 1 20 $ 2.498,00 SI SI $ 849.320,00
Cursos de maching learning 1 1 $ 200.000,00 SI NO $ 200.000,00
Cursos de programación 1 1 $ 160.000,00 SI NO $ 160.000,00
Papeleria 1 1 $ 100.000,00 SI NO $ 100.000,00
Imprevistos 1 1 $ 1.000.000,00 SI NO $ 1.000.000,00
Total $ 23.927.320,00 Personal
Software Sevicios Capacitación
Otros
Álvaro Andrés Niño Rincón 24
9. LIMITACIONES Y ALCANCE
Las limitaciones del proyecto son aquellos factores que disminuirán o influirán en el alcance del proyecto y/o en el desarrollo de las actividades.
Factores limitantes:
1 La capacidad de abordar una gran cantidad de algoritmos o modelos la cual debe ser controlada para que estos sean manejables en el tiempo establecido
2 La cantidad de datos que se puedan obtener de los repositorios libres que se logren integrar a la solución.
3 La capacidad computacional a la hora de la ejecución de cada uno de los algoritmos y como esta se tendrá que manejar en la parte del entrenamiento de cada uno de los algoritmos elegidos.
Alcances
1 El presente proyecto solamente contempla la clasificación de imágenes en el contexto del conflicto armado en Colombia.
2 Este trabajo desarrollará un modelo de deeplearning para la clasificación de imágenes violentas mediante algoritmos y/o modelos de detección de objetos considerados violentos, para esto se definirían un conjunto limitado de objetos según el análisis del dataset.
Álvaro Andrés Niño Rincón 25
10. DESARROLLO
10.1 OBJETIVO ESPECIFICO 1
Recolectar imágenes violentas por medio de búsqueda de repositorios libres para la construcción del dataset.
• Introducción
La recolección de imágenes para este proyecto se basa en la búsqueda de repositorios libres que contengan imágenes en el contexto del conflicto armado en Colombia y así formar el dataset que es usado para el entrenamiento y pruebas de los modelos.
• Desarrollo
Se da inicio con la búsqueda de imágenes de manera manual identificando que estas sean de libre uso, sin embargo, este proceso no brindo los resultados esperados por lo cual se ideo una manera de automatizar la búsqueda de estas imágenes con el fin de recolectar mayor número de imágenes.
Se implementó una herramienta en Python que permite la búsqueda en Google de imágenes y la descarga de estas de manera automática (Niño, github, 2021).
Esta herramienta es un script que se puede usar en una terminal y permite pasar los siguientes argumentos:
1. -page, -p: link de la página web en donde se buscará (Para el caso de este trabajo se usa la página de Google Imágenes).
2. -path_saved, -d: directorio donde serán guardadas las imágenes encontradas.
3. -list_searching_texts, -s: listas de palabras o frases que se van a buscar.
4. -limit, -l: número máximo de imágenes a descargar.
5. -copyright, -c: esta opción permite descargar imágenes con copyright (Para el caso de este trabajo no usa esta opción con el fin de obtener solamente imágenes libres).
Álvaro Andrés Niño Rincón 26 Ejemplo de uso de la herramienta:
python main.py -p "https://www.google.com.co/imghp?hl=es- 419&authuser=0&ogbl" -d ./images -s "conflicto armado en Colombia" -l 5 -c
La herramienta descrita anteriormente se empleó para facilitar la recolección de imágenes debido a que lo hace de una manera más rápida y en gran escala con el fin de lograr consolidar un gran número de imágenes que hacen parte del dataset para el entrenamiento y pruebas de los modelos, se utilizaron las siguientes frases que abarcan el contexto de la investigación como filtro de búsqueda:
1. Conflicto armado en Colombia.
2. Desplazados Colombia.
3. Secuestrados Colombia.
4. Conflicto Armado.
5. Guerra Colombia.
• Resultados
El script logró descargar 4400 imágenes de uso libre.
Algunos ejemplos de las imágenes recolectadas son:
Álvaro Andrés Niño Rincón 27 Figura 1: Imágenes Conflicto armado en Colombia.
Fuente: Google Imágenes
Álvaro Andrés Niño Rincón 28 Figura 2 :Imagen Guerra Colombia
Fuente: Google Imágenes
Figura 3: Imagen Secuestrados Colombia
Fuente: Google Imágenes
Álvaro Andrés Niño Rincón 29 10.2 OBJETIVO ESPECIFICO 2
Determinar los objetos que se consideran violentos en una imagen para estructurar la base de objetos a detectar mediante un análisis del dataset.
• Introducción
Con el dataset recolectado anteriormente se analiza cada una de las imágenes identificando los objetos considerados violentos en el contexto del conflicto armado colombiano, se construye un dataset para cada uno de estos objetos.
• Desarrollo y Resultados
Para lograr la identificación de los objetos se evidencio que el contexto del conflicto armado colombiano no solo está conformado por objetos, también hacen parte personas que han participado en esta guerra y que se identificaron en algunas de las imágenes recolectadas, por lo cual se decidió incluirlos.
Para lograr cumplir este objetivo se realizó una revisión de cada una de las imágenes recolectadas en el objetivo 1 con el fin de determinar cuáles objetos dentro de cada imagen son considerados como violentos y que se presentan con frecuencia en varias de las imágenes, en algunos casos la combinación de dos o más objetos determina si la imagen en su contexto se considera violenta.
Este análisis determina los siguientes objetos como elementos representativos para la detección de imágenes violentas:
1. Pistola 2. Escopeta 3. Metralleta
4. Uniforme ejercito 5. ELN
6. FARC-EP 7. Carros guerra 8. Balas
9. Bala
10. Mono Jojoy
Álvaro Andrés Niño Rincón 30 11. Jesús Santrich
12. Tirofijo
13. Defensoría del Pueblo 14. Cruz Roja
15. Paloma de la Paz
Se hace uso de la herramienta en Python descrita anteriormente con el fin de obtener un conjunto de imágenes para cada uno de los 15 objetos determinados como violentos y así lograr un entrenamiento optimo en los modelos que se implementan a continuación.
Con los data sets construidos se realiza una revisión que busca eliminar las imágenes que no aporten al entrenamiento de los modelos.
Por último, se etiquetan todos los objetos considerados violentos en cada imagen de manera manual, para esto se utiliza la herramienta de LabelImg que permite etiquetar objetos encerrándolos en cuadros sobre imágenes.
El tipo de etiquetado aplicado a las imágenes es el formato para detección de objetos VOC pascal, este formato realizar anotaciones en un archivo XML.
Álvaro Andrés Niño Rincón 31 Figura 4: Ejemplo de uso de LabelImg
Fuente: Google Imágenes
10.3 OBJETIVO ESPECIFICO 3
Implementar modelos de clasificación de imágenes utilizando diferentes herramientas de deeplearning para detección de objetos que se consideren violentos.
• Introducción
El propósito de un modelo de detección de objetos es determinar el tipo de objeto y en donde se encuentra ubicado dentro de una imagen.
Gracias a las redes convolucionales se ha logrado mejorar la precisión tanto de los modelos de una etapa como los de dos etapas, un modelo de detección de objetos por lo general está conformado por:
• Backbone: Este componente extrae las características de las imágenes.
• Neck: Esta unido al Backbone y fusiona las características de varios niveles.
• Region proposal network: Una red que genera predicciones sobre las características extraídas.
Álvaro Andrés Niño Rincón 32
• Head: Este realiza la clasificación y ubicación final de los objetos. (Jianyuan Guo, 2020)
Para determinar si un modelo mejora a través de las épocas de entrenamiento se verifica el valor de la función de pérdida del modelo. Esta función es aquella que calcula la distancia entre la salida actual y la salida esperada del modelo, entre más pequeña es la distancia la precisión del modelo es mejor, buscando acercarse al valor de 0.
(Yang, 2020).
Para la selección de los modelos de clasificación de imágenes para la detección de objetos violentos se investiga sobre las herramientas actuales de deeplearning.
• Desarrollo
Al desarrollar redes neuronales convolucionales se tiene una gran cantidad de características que pueden ayudar a mejorar la precisión de esta. Se necesita pruebas prácticas de tales características con grandes data sets y una justificación del porque usarlos, algunas de estas características operan exclusivamente sobre algunos modelos o solo para un conjunto de datos a cierta escala, sin embargo, otras son aplicables a la mayoría de los modelos y data sets como las conexiones residuales, normalización por lotes, entre otros, se quiere encontrar una combinación de estos últimos que permitan obtener resultados óptimos y de última generación, para esto se construyen diferentes arquitecturas que permiten utilizar estas características y poder optimizar el aprendizaje del modelo.
Entre algunas arquitecturas utilizadas por los modelos se tienen dos tipos los de una y dos etapas. Para el grupo de dos etapas los principales modelos son los relacionados al R-CNN. El grupo de una etapa se tienen como los modelos más representativos a YOLO, SSD y RetinaNet.
Con el fin de lograr comparar modelos que tengan una arquitectura similar se elige el grupo de modelos de una etapa para tal caso YoloV4, SSD MobileNet y RetinaNet.
(Bochkovskiy, 2020)
A partir de esta investigación se escogen tres modelos: YOLOv4, RetinaNet y SSD MobileNet.
Álvaro Andrés Niño Rincón 33 1) El modelo YOLOv4
El modelo YOLOv4 es un modelo de detección de objetos tiene una arquitectura basada en los siguientes elementos (Chien-Yao Wang, 2020):
• Backbone: CSPDarknet53
CSPDarknet53 es una red neuronal convolucional para detección de objetos basada en la red neuronal convolucional Darknet-53 usa principalmente 3 x 3 filtros y duplica la cantidad de canales después de cada paso de agrupación utiliza la agrupación promedio global para hacer predicciones, así como filtros para comprimir la representación de características entre convoluciones. La normalización por lotes se utiliza para estabilizar el entrenamiento, acelerar la convergencia y regularizar el lote del modelo. (Chien-YaoWang, 2019)
• Neck: SPP, PAN
SPP(Spatial Pyramid Pooling) es una capa de agrupación que elimina la restricción de tamaño fijo de la red, es decir, en una red neuronal convolucional no requiere la imagen de entrada un tamaño fijo. (Kaiming He X. Z., 2015) PAN(Path Aggregation Network) es una red que impulsa el flujo de información en un marco de segmentación de instancias basado en propuestas. (Shu Liu, 2018)
• Head: YOLOv3
YOLOv3 es un modelo de una etapa de detección de objetos en tiempo real, usa conexiones residuales(Darknet-53). (Joseph Redmon, 2018)
2) El modelo RetinaNet
El modelo RetinaNet es un modelo de detección de objetos que utiliza como base una función de perdida local (Focal Loss Function) que trabaja en el equilibrio de clases en el entrenamiento. Esta función de perdida local aplica un término de modulación a la perdida de entropía cruzada que enfoca el aprendizaje del modelo.
(Tsung-Yi Lin, 2018)
La arquitectura del modelo RetinaNet consta de 4 partes:
Álvaro Andrés Niño Rincón 34
• Backbone: ResNet
ResNet o red residual, esta red aprende por medio de funciones residuales que referencia las entradas de las capas. Es la red principal utilizada para extraer las características de la imagen de entrada. (Kaiming He X. Z., 2015)
• Feature Pyramid Net (FPN)
FPN es una red neuronal convolucional en forma piramidal con capacidad de generalización de alta resolución, pero de baja semántica en las capas inferiores y lo contrario en las capas superiores. (Tsung-Yi Lin1, 2017)
• Subred de clasificación
Esta red realiza la clasificación de los objetos del FPN.
• Subred de regresión
Esta red extrae las coordenadas de los objetos de la imagen desde la red FPN.
3) El modelo SSD MobileNet
El modelo SSD MobileNet es una red convolucional que aprende y puede predecir las coordenadas y clasificación de objetos en una sola pasada. (Menglong Zhu, 2017)
Este modelo está construido sobre capas de convolución separable en profundidad:
• Standard Convolutional Layer (capa convolucional estándar)
Esta capa es un tipo de operación matricial. Consiste en un kernel, una pequeña matriz de pesos, esta se desliza sobre los datos de entrada en donde se multiplica por los elementos con la parte de la entrada en la que se encuentra y luego se suman los resultados en una salida. (Vincent Dumoulin, 2018)
• Depthwise seperable Convolution Layer (capa convolucional separable en profundidad)
Esta capa divide el cálculo en dos pasos: la convolución en profundidad aplica un único filtro convolucional por cada canal de entrada y la convolución en punto se usa para crear una combinación lineal de la salida de la convolución en profundidad. (Chollet, 2017)
Álvaro Andrés Niño Rincón 35
• Resultados
Para la construcción de los modelos utilizamos como entorno de desarrollo Google Colab que permite trabajar con Python y las librerías necesarias para la implementación y funcionamiento de los 3 modelos.
Se tienen la siguiente cantidad de imágenes por objeto:
Tabla 5: Cantidad de imágenes por objeto violento Objeto # Imágenes
Pistola 289
Escopeta 398
Metralleta 227
Uniforme ejercito 256
ELN 305
FARC-EP 333
Carros guerra 272
Balas 150
Bala 58
Mono Jojoy 323
Jesús Santrich 378
Tirofijo 336
Defensoría del pueblo 413
Cruz Roja 421
Paloma de Paz 241
TOTAL 4400
Fuente: Elaboración propia
De este conjunto de imágenes se toman para entrenar los modelos el 70% de cada objeto, para un total 3080 para entrenamiento.
Este dataset esta etiquetado en formato VOC pascal.
Para los tres modelos el número de iteraciones o épocas para el entrenamiento es de 9000, este valor se toma ya que los modelos brindan sus mejores resultados en la época 8000 a la 9000, además que ejecutar más épocas implicarían más tiempo y potencia de la maquina usada (Google Colab).
Álvaro Andrés Niño Rincón 36
✓ Modelo YOLOv4:
Se usa como base el repositorio darknet (AlexeyAB, 2022) Duración del entrenamiento 6 horas.
La mejor época ocurre en la 5801 con un valor de función de perdida 5.41 y una precisión de 92.35%.
Figura 5: Deteccion de objetos ELN
Fuente: Elaboración propia
Álvaro Andrés Niño Rincón 37
✓ Modelo RetinaNet:
Se usa como base el repositorio keras-retinanet (fizyr, 2022) Duración del entrenamiento 8 horas.
Figura 6: Detección de objeto uniforme
Fuente: Elaboración propia
La mejor época ocurre en la 4101 con un valor de función de perdida 370 y una precisión de 74.5%.
Álvaro Andrés Niño Rincón 38
✓ Modelo SSD:
Se usa como base el repositorio SSD-Mobilenet-Custom-Object-Detector-Model- using-Tensorflow-2 (Abhimanyu, 2020).
Duración del entrenamiento 8 horas.
Figura 7: Detección de objeto FARC EP
Fuente: Elaboración propia
La mejor época ocurre en la 7001 con un valor de función de perdida 100 y una precisión de 82.28%.
En la Tabla 6 se presenta el consolidado de los resultados obtenidos del entrenamiento de los modelos en donde se puede observar que el modelo YoloV4 es superior en precisión y tiempo de convergencia.
Tabla 6: Resultados obtenidos entrenamiento YOLOv4 RetinaNet SSD
Tiempo (hora) 6 8 8
Perdida 5,41 370 100
Precisión 92,35% 74,50% 82,28%
Mejor época 5801 4101 7001
Fuente: Elaboración propia
Álvaro Andrés Niño Rincón 39 10.4 OBJETIVO ESPECIFICO 4
Verificar que los modelos de clasificación de imágenes violentas cumplan con su objetivo mediante la comprobación de un conjunto de imágenes de prueba.
• Introducción
Para realizar la verificación de los modelos se utiliza el 30% restante de cada grupo de imágenes de los objetos que determinan violencia, un total de 1320 imágenes que validaran los modelos.
• Desarrollo y Resultados
Para el desarrollo de este objetivo se validan los modelos con grupos de imágenes distintas a las usadas en el entrenamiento obteniendo en cada época del entrenamiento el valor de función perdida y la precisión con este dataset de validación.
Se realizaron gráficas en las cuales se comparan los valores de la función de pérdida del dataset de entrenamiento y dataset de validación.
Para el dataset de imágenes de prueba o validación se obtuvieron los siguientes resultados:
✓ Modelo YOLOv4:
La mejor época del dataset de validación ocurre en la 7401 posee una precisión del 81.77%.
Se puede comparar la precisión y el valor de la función de pérdida del modelo SSD durante el entrenamiento de los dataset de validación y entrenamiento. En la Figura 8 se visualiza que el dataset de entrenamiento es mejor que la del dataset de validación. En la Figura 9 se observa que el valor de perdida de la validación está por encima que la de entrenamiento.
Álvaro Andrés Niño Rincón 40 Figura 8: YoloV4 Model: epochs vs accurancy
Fuente: Elaboración propia
Álvaro Andrés Niño Rincón 41 Figura 9: YoloV4 Model: epochs vs loss
Fuente: Elaboración propia
✓ Modelo RetinaNet:
La mejor época para el data set de validación ocurre en la 3701 posee una precisión del 71.97%.
Se observa el comportamiento del modelo RetinaNet en el transcurso de las épocas del entrenamiento para el data set de validación y el data set de entrenamiento en donde se puede ver que la precisión Figura 10 de las imágenes de validación está un poco por debajo que la de las imágenes de entrenamiento y el valor de Función de perdida en la Figura 11 es más pequeño en la del entrenamiento que en el de la validación.
Álvaro Andrés Niño Rincón 42 Figura 10: Retinanet Model: epochs vs accurancy
Fuente: Elaboración propia
Álvaro Andrés Niño Rincón 43 Figura 11: Retinanet Model: epochs vs loss
Fuente: Elaboración propia
✓ Modelo SSD:
La mejor época del data set de validación ocurre en la 8101 posee una precisión de 77.89%.
En la Figura 12 y Figura 13 se observa la superioridad del data set de entrenamiento tanto en el valor de la función de perdida y la precisión en el transcurso de las épocas del entrenamiento.
Álvaro Andrés Niño Rincón 44 Figura 12: SSD Model: epochs vs accurancy
Fuente: Elaboración propia
Álvaro Andrés Niño Rincón 45 Figura 13: SSD Model epochs vs loss
Fuente: Elaboración propia
En la Tabla 7 se presenta el consolidado de los resultados de la precisión obtenida en la mejor época del data set de validación de cada modelo.
Tabla 7: Resultado de precisión data set validación YOLOv4 RetinaNet SSD Precisión 81,77% 71,97% 77,89%
Época de mejor resultado
7401 3701 8101
Fuente: Elaboración propia
Álvaro Andrés Niño Rincón 46 10.5 OBJETIVO ESPECIFICO 5
Comparar los modelos de clasificación de imágenes violentas evaluando la eficiencia de cada uno para determinar el modelo óptimo.
• Introducción
Para lograr cumplir este objetivo se determinan los aspectos más relevantes para determinar cuál modelo es el óptimo como lo son la función de perdida y la precisión.
• Desarrollo y Resultados
Después de haber entrenado los modelos se obtienen los resultados de los valores de la función de perdida y la precisión en cada época. Con estos datos se comparan los modelos de clasificación imágenes violentas y se determina el modelo optimo.
Las siguientes gráficas muestran estas comparaciones y permiten el análisis y evaluación de la eficiencia de los tres modelos.
Álvaro Andrés Niño Rincón 47 Figura 14: Retinanet vs SSD vs YoloV4 (train, loss)
Fuente: Elaboración propia
Podemos observar en la Figura 14 los valores de función de perdida de los modelos de las 9000 épocas de entrenamiento, en donde el modelo YoloV4 logra un valor de perdida menor que los otros modelos.
Álvaro Andrés Niño Rincón 48 Figura 15: Retinanet vs SSD vs YoloV4 (train, accurancy)
Fuente: Elaboración propia
En la Figura 15 se comparan la precisión de los modelos a través de las 9000 épocas para el data set de entrenamiento mostrando que el modelo YoloV4 es superior obteniendo una precisión aproximada de 90%.
Álvaro Andrés Niño Rincón 49 Figura 16: Retinanet vs SSD vs YoloV4 (valid, accurancy)
Fuente: Elaboración propia
En la Figura 16 se muestra la precisión obtenida en cada época para el data set de prueba o validación, se puede observar que, aunque el modelo YoloV4 converge más lentamente que los modelos de SSD y RetinaNet a mitad de las épocas comienza a ser más preciso.
Álvaro Andrés Niño Rincón 50
11. EJEMPLO DE RESULTADOS
Se implementa un API en local que permite la detección de los objetos definidos como característicos de la violencia desde el contexto del conflicto armado en Colombia, esta devuelve los objetos detectados, sus coordenadas y el porcentaje de precisión en la detección (Niño, github, 2021). Un ejemplo de la detección y su salida se muestran a continuación:
Figura 17: Imagen detectada con el API
Fuente: Elaboración propia
La Figura 17 se clasifica como “violenta” en el contexto del conflicto armado colombiano ya que se identifica en la bandera el nombre de uno grupo guerrillero.
En formato JSON se encuentra la información de los objetos detectados, la precisión con la que se detectó y la posición donde se encuentra cada objeto, además de identificar si la imagen es violenta o no y hace un conteo de los objetos detectados.
Álvaro Andrés Niño Rincón 51 Figura 18: Respuesta del API en JSON
Fuente: Elaboración propia
La Figura 18 indica que el objeto “ELN” se detectó con una precisión del 99.05%.
Álvaro Andrés Niño Rincón 52 Figura 19: Imagen detección Jesús Santrich
Fuente: Elaboración propia
Figura 20: Resultado detección Figura 19
Álvaro Andrés Niño Rincón 53
Fuente: Elaboración propia
La Figura 19 es identificada como “Violenta” dentro del contexto del conflicto armado colombiano, registra 2 objetos detectados: Jesús Santrich y Mono Jojoy, con una precisión del 87.33% y del 88.04% respectivamente.
Álvaro Andrés Niño Rincón 54 Figura 21: Imagen detección liberación
Fuente: Elaboración propia
Figura 22: Resultados detección Figura 21
Álvaro Andrés Niño Rincón 55
Álvaro Andrés Niño Rincón 56
Fuente: Elaboración propia
La Figura 201 se clasifica como imagen “No Violenta” ya que contiene elementos asociados a la paz y seguridad en el entorno del conflicto armado colombiano como lo son el logo de la Cruz Roja, la Defensoría del pueblo y en efecto la imagen corresponde a una liberación de secuestrados. Se detectaron 12 objetos en las ubicaciones indicadas Figura 22, algunos de los objetos identificados tienen una precisión del 52% - 58% debido a que la resolución de la imagen es de baja calidad.
Se propone para continuar con el desarrollo de este proyecto fortalecer la recolección de imágenes que permita un mejor entrenamiento de los modelos, debido a que se encuentra limitada por cuestiones de copyright, se sugiere diversificar las palabras clave de búsqueda para incrementar la cantidad de datos recolectados y adicionalmente contar con una maquina más robusta que permita la óptima ejecución de los modelos y mejorar los tiempos computacionales.
Álvaro Andrés Niño Rincón 57
12. CONCLUSIONES
En el desarrollo de este proyecto se dio cumplimiento a los objetivos establecidos, las imágenes recolectadas, su correspondiente etiquetado y organización permitieron el entrenamiento de los modelos.
La correcta ejecución de los modelos permitió obtener los resultados (precisión y valor de función de perdida) que determinarían cual modelo es el óptimo a partir de los data set de entrenamiento y validación.
Después de realizar el análisis de la eficiencia de los tres modelos se puede concluir que el modelo optimo es el modelo YoloV4 que tiene una precisión de aproximadamente el 90%
después de un entrenamiento de 9000 épocas.
Álvaro Andrés Niño Rincón 58
13. REFERENCIAS
Abhimanyu. (19 de Oct de 2020). github.com. Obtenido de https://github.com/abhimanyu1990/SSD-Mobilenet-Custom-Object-Detector-Model- using-Tensorflow-2
Alexander Egiazarov, V. M. (2020). Firearm Detection and Segmentation Using an Ensemble of Semantic Neural Networks. Cornell University(arxiv).
AlexeyAB. (10 de Enero de 2022). github.com. Obtenido de https://github.com/AlexeyAB/darknet.
Andrew G. Howard, M. Z. (2017). MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications. Cornell University(arxiv).
Ashikin Ali, N. S. (2016). A Review on Violence Video Classification Using Convolutional Neural Networks. Soft Computing and Data Mining, (págs. 130-140). Bandung, Indonesia.
Bochkovskiy, A. (2020). YOLOv4: Optimal Speed and Accuracy of Object Detection.
Bozinovski, S. (2019). Reminder of the First Paperon Transfer Learning in Neural Networks.
Informatica (An International Journal of Computing and Informatics).
Chien-Yao Wang, H.-Y. M. (2020). YOLOv4: Optimal Speed and Accuracy of Object Detection.
Chien-YaoWang, H.-Y. M.-H.-H. (2019). CSPNET: A NEW BACKBONE THAT CAN ENHANCE LEARNING. arxiv.
Chollet, F. (2017). Xception: Deep Learning with Depthwise Separable Convolutions. arxiv.
Fath U Min Ullah, A. U. (2019). Violence Detection Using Spatiotemporal Features with 3D Convolutional Neural Network. MDPI.
Álvaro Andrés Niño Rincón 59 Feldmann, J. U. (2018). CNN Image Classification on Military Pictures. Radboud University.
fizyr. (15 de Ene de 2022). github.com. Obtenido de https://github.com/fizyr/keras-retinanet Girshick, R. (2015). Fast R-CNN. IEEE, Computer Vision Foundation.
Glauco R. Munsberg, P. B. (2017). Towards Graffiti Classification in Weakly Labeled Images Using Convolutional Neural Networks. Latin American Workshop on Computational Neuroscience. Pelotas, Brasil.
Gyanendra K. Verma, A. D. (2017). A Handheld Gun Detection using Faster R-CNN Deep Learning. the 7th International Conference(researchgate). Allahabad, India.
Jaehoon Koo, D. K. (2018). Combined convolutional and recurrent neural networks for hierarchical classification of images. Cornell University(arxiv).
Jianyuan Guo, K. H. (2020). Hit-Detector: Hierarchical Trinity Architecture Search for Object Detection.
Joseph Redmon, A. F. (2018). YOLOv3: An Incremental Improvement. arxiv.
Kaiming He, X. Z. (2015). Deep Residual Learning for Image Recognition. arxiv.
Kaiming He, X. Z. (2015). Spatial Pyramid Pooling in Deep Convolutional. arxiv.
Lecun Y., B. Y. (2015). Deep learning. Nature.
Menglong Zhu, A. G. (2017). MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications.
Niño, A. (Abril de 2021). github. Obtenido de
https://github.com/Alvaruto1/get_images_google
Niño, A. (Junio de 2021). github. Obtenido de https://github.com/Alvaruto1/docker-model- detection-violent-yolov4
Álvaro Andrés Niño Rincón 60 Oludare Isaac Abiodun, A. J. (2018). State-of-the-art in artificial neural network applications:
A survey. Heliyon.
Papers with code. (2021). paperswithcode. Obtenido de
https://paperswithcode.com/method/3d-convolution
Samee Ullah Khan, I. U. (2019). Cover the Violence: A Novel Deep-Learning- BasedApproach Towards Violence-Detection in Movies. MDPI.
Shu Liu, L. Q. (2018). Path Aggregation Network for Instance Segmentation. arxiv.
Tsung-Yi Lin, P. G. (2018). Focal Loss for Dense Object Detection.
Tsung-Yi Lin1, P. D. (2017). Feature Pyramid Networks for Object Detection. arxiv.
Vincent Dumoulin, F. V. (2018). A guide to convolution arithmetic for deep. arxiv.
Yang, I.-S. (2020). A Loss-Function for Causal Machine-Learning. ResearchGate.