Creación de un sistema de conducción asistido con Inteligencia Artificial en tiempo real
Abstract
Este proyecto se focaliza en el desarrollo de un sistema de reconocimiento de objetos utilizando la herramienta de inteligencia artificial YOLOv5 y en controlar el movimiento de un robot mediante el sistema operativo de robótica ROS, a partir del análisis de su entorno. De esta manera, al detectar a una persona a cierta distancia, se detendrá impidiendo que el usuario continue con la conducción asistida.
El proyecto se compone de las siguientes etapas:
En la primera etapa, se implementa y prueba el algoritmo de código abierto YOLOv5, modificando su código para obtener los metadatos necesarios a partir de la detección de objetos. Adicionalmente, se desarrolla el código principal encargado de gestionar el movimiento del robot, basado en una serie de requisitos propuestos por Nokia.
En la segunda etapa, una vez comprobado el funcionamiento del sistema de inteligencia artificial y del sistema ROS, se trasladan los códigos necesarios al robot físico. Se verifica que el código funciona correctamente y se añaden los ajustes necesarios para asegurar su óptimo funcionamiento.
En la tercera etapa, se genera una comunicación sin conexión mediante UDP entre el ordenador servidor y el robot. Esto permite que el ordenador reciba el flujo que se observa desde la cámara del robot y el robot puede recibir los mensajes de los metadatos analizados por el algoritmo YOLOv5. Al recibir estos metadatos, el robot puede identificar su entorno, y si se detecta una persona a una distancia muy cercana, se detendrá automáticamente, impidiendo al usuario controlar su movimiento.
La combinación de las distintas etapas consigue lograr los resultados deseados: el robot puede ser conducido a través de un mando a distancia y a medida que avanza reconoce su entorno mediante la detección de objetos, permitiéndole responder adecuadamente. This project focuses on the development of an object recognition system using the artificial intelligence tool YOLOv5 and controlling the robot’s movement with the Robotics Operating System (ROS), based on the analysis of its environment. Thus, when it detects a person at a distance, it will stop the user from continuing with the navigation of the robot.
The project is made up of the following stages:
In the first stage, the open-source YOLOv5 algorithm is implemented and tested, modifying its code to obtain the necessary metadata from object detection. In addition, the main code in charge of managing the robot's movement is developed, based on a series of requirements proposed by Nokia.
In the second stage, once the operation of the AI system and the ROS system has been checked, the necessary codes are transferred to the physical robot. The code is verified to be working correctly and the necessary adjustments are added to ensure its optimal operation.
In the third stage, offline communication is generated via UDP between the server computer and the robot. This allows the computer to receive the stream observed from the robot's camera and the robot can receive the metadata messages analyzed by the YOLOv5 algorithm. By receiving this metadata, the robot can identify its surroundings, and if a person is detected at a very close distance, it will automatically stop, preventing the user from controlling their movement.
The combination of the different stages achieves the desired results: the robot can be driven through a remote control and as it moves it recognizes its surroundings by detecting objects, allowing it to respond appropriately.
Trabajo Fin de Grado
Creación de un sistema de conducción asistido con Inteligencia Artificial en tiempo realTitulación / Programa
Grado en Ingeniería en Tecnologías de TelecomunicaciónMaterias/ categorías / ODS
KTT (GITT)Palabras Clave
Robot, Conducción asistida o autónoma, Inteligencia Artificial, Algoritmos, Tiempo realRobot, Assisted or Autonomous Driving, Artificial Intelligence, Algorithms, Real Time