Mostrar el registro sencillo del ítem
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 |