Detección y análisis de gritos humanos para controlar la tasa de criminalidad: idea de proyecto

 Título del proyecto: Detección y análisis de gritos humanos para controlar la tasa de criminalidad mediante aprendizaje automático y aprendizaje profundo

La delincuencia es el mayor problema social de nuestra sociedad que se propaga día a día. Se cometen miles de delitos todos los días, y todavía muchos están ocurriendo en este momento también en todo el mundo. Un delito se da en muchos rostros, puede darse en cualquier rostro como robos, asesinatos, violaciones, asaltos agravados y simples, homicidios, etc. En muchos casos se observa la ausencia de policías en los lugares del crimen, puede ser porque no tienen una dirección adecuada o, a veces, nadie les informaba. Por lo tanto, hemos tratado de abordar el problema con la ayuda de nuestro proyecto en el que el enfoque sería la detección del delito a tiempo y ayudar a los oficiales de la estación de policía más cercana a llegar a tiempo al lugar del delito mediante el intercambio de ubicación a través de un mensaje de alerta en forma. de SMS (Servicio de Mensajería Corta). 

Introducción 

Como sugiere el título, el proyecto será una aplicación de escritorio que tiene una función para trabajar en segundo plano y mediante el uso de conceptos de aprendizaje automático y aprendizaje profundo , detectará y analizará los gritos humanos en un entorno en tiempo real y si esta aplicación encuentra algo serio a su alrededor, automáticamente enviará un mensaje de alerta a la estación de policía más cercana con la ubicación de su usuario. No solo esto, la aplicación será capaz de detectar un sonido humano claro a partir del ruido de fondo.

Objetivo: El objetivo de este proyecto es utilizar las tecnologías avanzadas de tal manera que puedan usarse para ayudar a alguien a salvar su vida y controlar la tasa de criminalidad.

Herramienta y Tecnologías Utilizadas :

  1. Todo el back-end del proyecto se desarrolla utilizando el lenguaje python.
  2. El marco Kivy se utiliza en este proyecto para diseñar la interfaz de la aplicación que es adecuada tanto para escritorio como para aplicaciones de Android.
  3. SVM (Support Vector Machine) de Machine Learning se utiliza para la detección y clasificación de gritos.
  4. El modelo de perceptrones multicapa de aprendizaje profundo se utiliza para la confirmación de los gritos detectados.

Conjunto de habilidades requerido:

  1. El conocimiento básico y avanzado de Python es obligatorio
  2. Se requiere conocimiento básico del marco Kivy
  3. Se requieren conocimientos básicos de SVM (Support Vector Machine) en el aprendizaje automático
  4. Se requiere conocimiento de redes neuronales en el aprendizaje automático
  5. Debe estar familiarizado con bibliotecas como pandas, NumPy, scikit-learn, TensorFlow y librosa.

Implementación

Veamos la implementación de este proyecto en diferentes pasos que se describen a continuación:

Paso 1: diseño de la interfaz de usuario

Primero, se desarrolla la UI o la interfaz de usuario del proyecto. Desarrollaremos la interfaz de usuario usando el marco Kivy (Python), que el usuario usará para interactuar. Veamos la interfaz de usuario de este proyecto.

Pantalla principal

Pantalla de grabación

Paso 2: preparar un conjunto de datos para la detección de gritos humanos 

Todo el conjunto de datos de este proyecto se divide en dos clases, una es una clase positiva que incluye alrededor de 2000 gritos humanos para entrenar al modelo y otra es una clase negativa que incluye alrededor de 3000 sonidos negativos que no se consideran gritos.

Nota: El conjunto de datos para este proyecto se recopila de diferentes sitios web como https://www.freesoundeffects.com/ .

Paso 3: Extracción de MFCC 

El siguiente paso es la extracción de MFCC del conjunto de datos utilizando la biblioteca de Librosa y guardar los MFCC extraídos en un archivo  CSV en su computadora.

Nota: MFCC significa Coeficientes cepstrales de frecuencia de Mel, es una función que se usa ampliamente en el reconocimiento automático de voz y hablantes.

Paso 4: Entrenamiento del modelo SVM y su guardado

A continuación, entrenaremos el modelo SVM (Support Vector Machine) sobre los MFCC que habíamos creado en el paso anterior y cuando se complete todo el entrenamiento, lo guardaremos usando la biblioteca TensorFlow. A continuación se muestra un diagrama para la detección de ruido, habla, gritos y gritos utilizando el clasificador SVM.

Detección de ruido, habla, gritos y chillidos mediante clasificador SVM

Paso 5: Entrenamiento del modelo MPN y su guardado

Ahora, entrenaremos MPN (modelo de perceptrones multicapa) sobre los sonidos presentes en el conjunto de datos para obtener una buena precisión del modelo y cuando se complete todo el entrenamiento, guárdelo nuevamente usando la biblioteca TensorFlow como lo hicimos anteriormente. El diagrama de trabajo de MPN se muestra a continuación.

Trabajo de MPN 

Paso 6: Enfoque para generar un mensaje de alerta

Ahora, después de entrenar y guardar con éxito ambos modelos, ahora iremos con la prueba de estos dos modelos y de acuerdo con la respuesta proporcionada por ambos modelos, decidiremos el nivel de riesgo y de acuerdo con el nivel de riesgo, generaremos mensajes de alerta. .

En este proyecto, se generarán dos tipos de mensajes de alerta, que son mensajes de alerta de alto riesgo y mensajes de alerta de riesgo medio según las condiciones del entorno.

  • Mensaje de alerta de alto riesgo: el sistema generará un mensaje de alerta de alto riesgo en el caso de que ambos modelos detecten el grito humano en los alrededores.
  • Mensaje de alerta de riesgo medio: el sistema generará automáticamente un mensaje de alerta de riesgo medio en el caso de que uno de los dos modelos detecte el grito humano en los alrededores.

Paso 7: Enviar SMS a la Estación de Policía más cercana

Sin embargo, el proyecto está actualmente en desarrollo, por lo que solo brindamos la idea de cómo se puede desarrollar esta función. Para el desarrollo de esta característica, podemos tomar la ayuda de bases de datos y podemos enviar SMS a ese número en el momento de cualquier emergencia detectada por el proyecto.

diagrama de trabajo

Se le proporciona un diagrama de trabajo de este proyecto, que explica el funcionamiento interno de ambos modelos y se utilizará para implementar el proyecto.

Funcionamiento interno combinado de ambos modelos (SVM y MPN)

Producción:

Aplicación de proyectos en la vida real

Este proyecto se propone para la seguridad de la sociedad. Este proyecto tiene como objetivo ayudar a reducir la tasa de criminalidad y también tiene como objetivo ayudar mucho a la policía en su trabajo. Además, el éxito de este proyecto también alentará a los desarrolladores a construir algo más útil para la seguridad de la sociedad.

Aceptación del proyecto

El artículo de investigación se publicó en la Conferencia Internacional sobre Sistemas y Control Inventivos [ICISC 2021] sobre el tema de la detección de gritos humanos a través del aprendizaje supervisado en tres etapas y el aprendizaje profundo .

Miembros del equipo

  1. Yash Mathur
  2. Riya Mathur

Enlace Github: https://github.com/themockingjester/Human_Scream_Detection_using_ml_and_deep_learning

Publicación traducida automáticamente

Artículo escrito por riyamathur y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *