- -

Arquitectura para la detección facial mediante técnicas de computación distribuida y visión por computador en entornos de ancho de banda reducido, implementada en un entorno kubernetes

RiuNet: Institutional repository of the Polithecnic University of Valencia

Share/Send to

Cited by

Statistics

Arquitectura para la detección facial mediante técnicas de computación distribuida y visión por computador en entornos de ancho de banda reducido, implementada en un entorno kubernetes

Show simple item record

Files in this item

dc.contributor.advisor Mossi García, José Manuel es_ES
dc.contributor.author Sánchez Mompó, Carlos Adrián es_ES
dc.date.accessioned 2020-10-19T15:25:57Z
dc.date.available 2020-10-19T15:25:57Z
dc.date.created 2020-10-02 es_ES
dc.date.issued 2020-10-19 es_ES
dc.identifier.uri http://hdl.handle.net/10251/152367
dc.description.abstract [ES] En este proyecto se propone y desarrolla un sistema de reconocimiento facial basado en los conceptos de visión máquina con redes neuronales convolucionales (CNNs), aprendizaje máquina y computación distribuida. El proyecto está formado por tres partes: el diseño de una arquitectura centrada en la reducción del ancho de banda necesario para transportar las imágenes desde las cámaras a los servidores en la nube; el diseño e implementación del software que comprime los datos cerca de las cámaras; y el diseño e implementación de una API REST adaptable a grandes despliegues para el procesado de las imágenes en la nube. La reducción del ancho de banda requerido para la transmisión de las imágenes de las cámaras a la nube se consigue mediante el preprocesado de los datos en un nodo intermedio cerca de su generación mediante el uso de técnicas de computación en el borde (edge computing). En la etapa de preprocesado se identifican y extraen las caras contenidas en cada uno de los fotogramas capturados por las cámaras pertenecientes a ese nodo. Las imágenes que ya sólo contienen las caras son entonces enviadas a la nube, en la cual se clasifican entre las personas conocidas. Al sólo enviar las porciones que contienen caras en lugar de enviar los fotogramas enteros se consigue una reducción significativa del ancho de banda requerido. En el extremo cloud, se ha diseñado e implementado una API REST en contenedores manejados por un despliegue de Kubernetes en la nube Azure. En estos contenedores se ejecuta el sistema que reconoce las caras recibidas desde el edge. La carga está distribuida entre los diferentes contenedores, cuyo número puede variarse para adaptarse a la carga de trabajo. En esta API no sólo se permite el reconocimiento de personas para las que el modelo se ha entrenado; también se puede incorporar personas al set de datos, eliminar personas del set de datos, así como reentrenar el modelo de reconocimiento para identificar las personas en el nuevo set de datos y empezar a usar el nuevo modelo de forma inmediata y sin downtime. Toda la información extraída en este proceso es almacenada en una base de datos que permite su posterior análisis. es_ES
dc.description.abstract [EN] In this project, a facial recognition system based on the concepts of machine vision with convolutional neural networks (CNNs), machine learning and distributed computing is proposed, developed and deployed to Azure. The project consists of three parts: the design of an architecture focused on reducing the bandwidth required to transport the images from the cameras to the cloud servers; the design and implementation of the software that compresses the data near the cameras; and the design and implementation of a REST API for image processing easily scalable to large deployments in the cloud. The reduction of the bandwidth required for the transmission of images from the cameras to the cloud is achieved by pre-processing the data in an intermediate node near their generation through the use of edge computing techniques. In the pre-processing stage, the faces contained in each of the frames captured by the cameras belonging to that node are identified and extracted. The new images that only contain the faces are then sent to the cloud, where they are classified among the known people. By only sending the portions containing faces instead of sending the entirety of the frames, a significant reduction in the required bandwidth is achieved. At the cloud, a REST API has been designed and implemented in containers handled by a Kubernetes deployment in the Azure cloud. In these containers, the system that recognizes the faces received from the edge is executed. The load is distributed among the different containers, whose number can be scaled to suit the workload. This API not only allows the recognition of people for whom the model has been trained; it can also incorporate people into the dataset, remove people from the dataset, as well as retrain the recognition model to identify people in the new dataset and start using the new model immediately and without any downtime. All the information extracted in this process is stored in a database that allows its later analysis. en_EN
dc.format.extent 99 es_ES
dc.language Inglés es_ES
dc.publisher Universitat Politècnica de València es_ES
dc.rights Reconocimiento - No comercial - Compartir igual (by-nc-sa) es_ES
dc.subject Inteligencia artificial es_ES
dc.subject Aprendizaje Máquina es_ES
dc.subject Redes Neuronales Convolucionales es_ES
dc.subject CNN es_ES
dc.subject Visión por ordenador es_ES
dc.subject Computación en el borde es_ES
dc.subject Computación distribuida es_ES
dc.subject Computación en la nube es_ES
dc.subject Kubernetes es_ES
dc.subject Contenedores es_ES
dc.subject API es_ES
dc.subject API REST es_ES
dc.subject Vídeo es_ES
dc.subject Videovigilancia es_ES
dc.subject Vigilancia es_ES
dc.subject Ciber es_ES
dc.subject Seguridad es_ES
dc.subject Privacidad es_ES
dc.subject Ancho de banda es_ES
dc.subject Reconocimiento Facial es_ES
dc.subject OpenCV es_ES
dc.subject Facenet es_ES
dc.subject Pytorch es_ES
dc.subject Numpy es_ES
dc.subject Flask es_ES
dc.subject UWSGI es_ES
dc.subject Python es_ES
dc.subject SQL es_ES
dc.subject RESTPlus es_ES
dc.subject TorchVision es_ES
dc.subject Azure es_ES
dc.subject Nube es_ES
dc.subject Scikit es_ES
dc.subject Tensorflow es_ES
dc.subject Keras es_ES
dc.subject Artificial Intelligence en_EN
dc.subject Machine Learning en_EN
dc.subject Convolutional Neural Networks en_EN
dc.subject Computer Vision en_EN
dc.subject Edge Computing en_EN
dc.subject Distributed Computing en_EN
dc.subject Cloud Computing en_EN
dc.subject Containers en_EN
dc.subject REST API en_EN
dc.subject Video en_EN
dc.subject Surveillance en_EN
dc.subject Cyber en_EN
dc.subject Security en_EN
dc.subject Cybersecurity en_EN
dc.subject Privacy en_EN
dc.subject Bandwidth en_EN
dc.subject Facial Recognition en_EN
dc.subject Cloud en_EN
dc.subject.classification TEORIA DE LA SEÑAL Y COMUNICACIONES es_ES
dc.subject.other Máster Universitario en Ingeniería de Telecomunicación-Màster Universitari en Enginyeria de Telecomunicació es_ES
dc.title Arquitectura para la detección facial mediante técnicas de computación distribuida y visión por computador en entornos de ancho de banda reducido, implementada en un entorno kubernetes es_ES
dc.type Tesis de máster es_ES
dc.rights.accessRights Abierto es_ES
dc.contributor.affiliation Universitat Politècnica de València. Departamento de Comunicaciones - Departament de Comunicacions es_ES
dc.contributor.affiliation Universitat Politècnica de València. Escuela Técnica Superior de Ingenieros de Telecomunicación - Escola Tècnica Superior d'Enginyers de Telecomunicació es_ES
dc.description.bibliographicCitation Sánchez Mompó, CA. (2020). Arquitectura para la detección facial mediante técnicas de computación distribuida y visión por computador en entornos de ancho de banda reducido, implementada en un entorno kubernetes. http://hdl.handle.net/10251/152367 es_ES
dc.description.accrualMethod TFGM es_ES
dc.relation.pasarela TFGM\134357 es_ES


This item appears in the following Collection(s)

Show simple item record