User Tools

Site Tools


reconocimientovoz

Sobre Reconocimiento de patrones de voz

En este proyecto trabajamos las diferentes alternativas para el reconocimiento de patrones de voz basadas en la librería Resemblyzer de Python. Utilizando la versión 3.9 de Python para realización del proyecto y con Django en su versión 4.0.6 que beneficia en la creación de los servicios que expone la aplicación.

Trabajando con la librería

En el proyecto nos encontraremos con el archivo requirements.txt donde estan descriptas las versiones de cada librería necesaria para la implementación. Además es necesario que su entorno cuente con una base de datos MySQL para guardar el registro de valores correspondientes a las llamadas a los servicios expuestos.

Iniciar proyecto

Luego de la instalación de las librerías necesarias, el siguiente paso es iniciar la aplicación. Ejecutando el siguiente comando la aplicación se ejecutará:

python manage.py runserver

Ten en cuenta que el siguiente comando se ejecutará si tu versión por default de Python ya es la 3.9 La aplicación te brindará el puerto 8000 para tu aplicación, puedes cambiar ese puerto indicandoselo de la siguiente manera:

python manage.py runserver http://127.0.0.1:8080

Registro de Usuario

Luego de inciada la aplicación puedes acceder a los servicios a través de los siguentes endpoints

http://127.0.0.1:8000/api/

El primero de los servicios es el de Registro, para utilizarlo debes consumir el siguiente endpoint enviando como parametros, el DNI, nombre y el Wav codificado en base64 que corresponde al usuario que deseas registrar.

http://127.0.0.1:8000/api/register

Enviando en formato JSON los datos comentados anteriormente. La confirmación de que nuestro registro a funcionado correctamente se da a través de una respuenta en formato también JSON con un success

Chequeo de usuario

Como en el anterior apartado realizamos la registración de nuestro primer usuario, ahora debemos chequear coincidencia enviando un nuevo archivo wav encripado utilizando un nuevo servicio.

http://127.0.0.1:8000/api/check

En este caso nuestro JSON, solo contará con el DNI y el archivo wav encriptado en base64. La respuesta nos confirmará mediante otro JSON si el usuario es el mismo o no, comparando los dos archivos wavs, el que se guardo en el registro y el que estamos enviando. Devolviendo dos mensajes como Different Speaker para responder que no son los mismos usuarios o Same Speaker para mostrar la coincidencia.

Verificando existencia de usuario

Contamos con un servicio más que nos indica si el usuario existe dentro de la base de datos con su correspondiente valor de archivo wav codificado.

http://127.0.0.1:8000/api/whois

Este servicio solo aceptará 1 valor que es el wav encriptado en base64 que responderá solamente de quien es el wav (siempre que se encuentre registrado) con un saludo al nombre de usuario guardado en la registración

reconocimientovoz.txt · Last modified: 2023/11/14 12:22 by 127.0.0.1