Development of a longitudinal driving assistant using a Deep Learning Algorithm
Autor: | Vogulys Medina, Joseph Jhonas |
---|---|
Přispěvatelé: | Castillo Estepa, Ricardo Andrés |
Jazyk: | Spanish; Castilian |
Rok vydání: | 2020 |
Předmět: | |
Zdroj: | Repositorio UMNG Universidad Militar Nueva Granada instacron:Universidad Militar Nueva Granada |
Popis: | El presente proyecto implementa y desarrolla una simulación de un automóvil con asistente de conducción para una trayectoria longitudinal donde el automóvil frena o acelera al detectar objetos de interés (OI), esto con el uso de técnicas de redes neuronales convolucionales y visión de máquina. El automóvil es capaz de identificar seis (6) OI (bicicletas, motos, señal de pare, automóviles, semáforos y peatones), logrando realizar estimaciones de la ubicación de los objetos y la categoría a la que pertenecen, utilizando como técnica de aprendizaje profundo (DL) la arquitectura YOLO y como red neuronal convolucional (CNN), con varias capas residuales para una mejor precisión, la RESNET50. En la simulación se implementa una cámara RGB-D acoplada al automóvil cuya función permite estimar la distancia a la que se encuentran los OI desde el automóvil. El trabajo se desarrolla en Matlab, el cual cuenta con la interfaz gráfica para etiquetar y entrenar las clases mencionadas. Se importan alrededor de 1400 imágenes, donde se compara la mejor técnica de reconocimiento entre DL y aprendizaje automático (ML), arrojando una precisión del 98.13% con una red de pocas capas, como la ALEXNET, mientras que la técnica de máquina de vector soporte obtuvo un 84.2% respectivamente, siendo la CNN superior en un 16,5% de precisión general. Al identificar la técnica, se procede a realizar un entrenamiento, donde se etiquetan 2421 imágenes extraídas de las calles de la capital, de ellas se obtienen 4000 etiquetas divididas en las 6 clases mencionadas, las cuales son utilizadas para diseñar la arquitectura basada en regiones para la detección de objetos. Se entrena una red con 8000 imágenes de semáforos que trabaja en paralelo, la cual diferencia si los semáforos detectados se encuentran en estado verde o rojo a una precisión del 99,64%. Una vez obtenida la arquitectura capaz de reconocer y detectar por regiones los OI siguientes: carros, motos, bicicletas, personas, señal de pare, semáforos verde y rojo, se acopla a un ambiente virtual. Para proceder a la simulación, se construye un automóvil al cual se le acopla una cámara de profundidad capaz de visualizar y estimar la distancia del ambiente virtual, utilizando imágenes reales semejante a la realidad de las calles en Bogotá. Las ruedas, tendrán una velocidad angular constante, y mantienen una trayectoria lineal. El Automóvil utilizando la arquitectura de detección, al reconocer los OI a una distancia menor a 10 metros y utilizando la ecuación cinemática de aceleración uniforme, obtendrá las variables velocidad tiempo y posición- tiempo, reduciendo la velocidad angular de las ruedas, hasta detenerse totalmente a una distancia cercana a los dos metros, evitando de esta forma colisionar. La simulación corre en el ambiente virtual V-Rep y se acopla a tiempo real con Matlab, obteniendo como resultado con la base de datos de entrenamiento, un 93.3% de precisión – Recall de los 6 OI. Para la validación, se crea una base de datos de 600 imágenes, y se obtiene una precisión - Recall general del 60%. o AGRADECIMIENTOS 3 ● Tabla de contenido 4 ● Lista de Figuras 7 ● Tabla de Ecuaciones 9 ● Lista de tablas 10 o Lista de Anexos 11 ● Lista de Símbolos y abreviaturas 11 ● Resumen 1 ● Abstract 2 CAPITULO 1 INTRODUCCIÓN 4 o 1.1 Planteamiento del problema 5 o 1.2 Justificación 11 o 1.3 Objetivos 13 1.3.1 Objetivo General 13 1.3.2 Objetivos específicos 13 1.3.3 Delimitación 14 o PRESENTACIÓN DEL DOCUMENTO 15 METODOLOGIA 17 CAPITULO 2. MARCO REFERENCIAL 20 o 2.1 INTELIGENCIA Y VISIÓN ARTIFICIAL 20 ▪ 2.1.1 Visión de maquina 20 ▪ 2.1.2 Pasos para el reconocimiento de objetos 22 ▪ 2.1.3 Aprendizaje supervisado 23 ▪ 2.1.4 Redes neuronales 25 ▪ 2.1.5 Redes Neuronales Convolucionales (CNN) 28 ▪ 2.1.7 Detección de Objetos 36 ▪ 2.1.7 Red neuronal YOLO (You Only Look Once) 37 o 2.2 CARROS AUTONOMOS 44 ▪ 2.2.1 Niveles de autonomía en un automóvil. 44 ▪ 2.2.2 Carros autónomos y sensores 47 Caracterización de sensórica por coche autónomo 47 Comparación de cámara mono y estéreo 49 o 2.3 ANTECEDENTES 51 ▪ 2.3.1 Aprendizaje Profundo 51 ▪ 2.3.2 Redes neuronales convolucionales por región de interés(detección). 53 ▪ 2.3.2 Antecedentes en carros Autónomos 57 Renault Symbioz conducción autónoma nivel 4 [112] 58 ▪ 2.3.3 Algoritmos para la conducción autónoma 59 Segmentación semántica 60 Simulación de vehículo autónomo usando v-Rep bajo Ros [125] 61 Reconocimiento de carreteras utilizando Maquina de Vector Soporte (SVM) [8] 62 Un sistema eficiente y confiable de asesoramiento de velocidad óptima en semáforos con luz verde, para automóviles autónomos [122] 63 Piloto autónomo utilizando lógica difusa y control PID [6] 64 Conducción autónoma basada en Q Learning simulado en Unity [123] 64 Algoritmos de ética para coches autónomos [22] 65 Conducción autónoma inteligente en un ambiente virtual con redes neuronales para movimiento transversal y fuzzy para movimiento longitudinal [7] 66 Reconocimiento de coches utilizando la Red YOLOv2 en Opencv [38] 68 Reconocimiento de peatones y automóviles utilizando la Red YOLOv2 [97] 69 CAPITULO 3. ELABORACIÓN DE BASE DE DATOS 72 ▪ 3.1 Creación de base de datos #1 para evidenciar el algoritmo con mejor comportamiento en reconocimiento. 72 ▪ 3.2 Creación de base de datos #2 con etiquetado de objetos de interés para entrenamiento de la arquitectura YOLOv2. 74 CAPITULO 4. DESARROLLO DEL AMBIENTE VIRTUAL DE SIMULACIÓN 78 o 4.1 Creación del ambiente virtual 78 o 4.2 Obtención de Imágenes de prueba para simulación 82 o 4.3 Creación de interfaz gráfica para visualizar videos y la cámara del simulador 82 o 4.4 Reacción del móvil frente a obstáculos de interés 83 CAPITULO 5. EVALUACIÓN, SELECCIÓN E IMPLEMENTACIÓN DEL ALGORITMO DE CLASIFICACIÓN Y DETECCIÓN. 87 o 5.1 Extracción de características utilizando procesamiento de imágenes 88 o 5.2 Reconocimiento y clasificación de imágenes, utilizando técnicas clásicas de ML 89 o 5.3 Reconocimiento y clasificación de imágenes, utilizando Deep learning con una CNN. 92 o 5.4 Evaluación y selección de algoritmo de clasificación según las matrices de confusión con la base de datos #1. 97 ▪ Requerimientos del sistema 98 ▪ Selección software y hardware 99 o 5.5 Implementación de la red Neuronal Convolucional YOLOv2 con la base de datos #2 100 ▪ Acople entre el GUIDE y el entorno virtual 104 ▪ Pruebas en Video de reconocimiento sin discriminar color de semáforo. 105 ▪ Entrenamiento de CNN Alex Net para reconocimiento de color de semáforos. 105 ● CAPITULO 6. ANÁLISIS Y RESULTADOS 109 o 6.1 Comportamiento del móvil simulado en trayectoria longitudinal frente a obstáculos de interés. 109 ▪ 6.1.1 Toma de decisiones a partir de la cinemática. 109 Caso 1 112 Caso 2 113 Caso 3 113 Caso 4 114 Caso 5 116 o 6.2 IMPLEMENTACIÓN DE MÉTRICAS DE CALIDAD 118 ▪ 6.4 imágenes etiquetadas manualmente frente a las detectadas por la YOLOv2. 122 Verdaderos Positivos 123 Falsos Positivos 124 Falsos Negativos 125 Ejemplo de etiquetado múltiple 126 Ejemplo detección de objetos inexistentes 127 Detección de objeto lejano 129 ▪ Comparativa gráficos precisión – Recall de la base de datos entrenada frente a la base de datos de test. 130 ▪ 6.5 Implementación de velocidad, utilizando TIC TOC para la medición del tiempo de procesamiento 131 CAPITULO 7. CONCLUSIÓN Y TRABAJOS FUTUROS 134 ● Anexos. MATERIALES 139 o ¿Por qué MATLAB? 139 o Herramientas e Instrumentos 140 Toma de videos desde auto eléctrico 143 o Sujetos Interesados 144 o Consideraciones éticas 144 ● BIBLIOGRAFIA 145 The present project implements and develops a simulation of a car with a driving assistant for a longitudinal path where the car brakes or accelerates when detecting OI (objects of interest), this with the use of convolutional neural network techniques and machine vision. The car is able to identify six (6) RO (bicycles, motorcycles, stop signs, cars, traffic lights and pedestrians), making estimates of the location of the objects and the category to which they belong, using as a deep learning technique (DL) the YOLO architecture and as a convolutional neural network, the RESNET50. The simulation implements an RGB-D camera attached to the car whose function allows knowing the depth at which the OIs are located. The work is developed in Matlab, which has the graphic interface to label and train the mentioned classes. Around 1400 images are imported, where the best recognition technique between DL and machine learning (ML) is compared, yielding 98.13% accuracy in the DL network, the ALEXNET, while the support vector machine technique obtained a 84.2% respectively, the CNN being superior at 16.5% overall accuracy. When obtaining the technique, a training is carried out, where 2421 images extracted from the streets of the capital are labeled, of them 4000 labels are obtained divided into the 6 mentioned classes, which are used to design the architecture based on regions to Object detection. A network with 8000 traffic light images that work in parallel is trained, which differentiates whether the detected traffic lights are in a green or red state at an accuracy of 99.64%. Once the architecture has been obtained, capable of recognizing and detecting the following ROs by regions: cars, motorcycles, bicycles, people, stop signs, green and red traffic lights, it is coupled to a virtual environment. To proceed with the simulation, a car is built to which a depth camera is attached capable of visualizing and estimating the distance of the virtual environment, using real images similar to the reality of the streets in Bogotá. The wheels will have a constant angular speed, and maintain a linear trajectory. The Automobile using the detection architecture, recognizing the ROs at a distance of less than 10 meters and using the uniform acceleration kinematic equation, will obtain the variables speed time and position-time, reducing the angular speed of the wheels, until it stops completely at a distance close to two meters, thus avoiding colliding. The simulation runs in the virtual V-Rep environment and is coupled in real time with Matlab, resulting in a training database of 93.3% accuracy - Recall of the 6 OI. For validation, a database of 600 images is created, and an accuracy is obtained - General Recall of 60%. Maestría |
Databáze: | OpenAIRE |
Externí odkaz: |