Este es el código del documento.
Evaluación de redes neuronales profundas para sistemas de detección de señales de tráfico.
Álvaro Arcos-García, Juan Antonio Álvarez-García, Luis M. Soria-Morillo
El artículo aborda el problema de la detección de señales de tráfico analizando el estado del arte de varios sistemas de detección de objetos (Faster R-CNN, R-FCN, SSD y YOLO V2) combinados con varios extractores de características (Resnet V1 50, Resnet V1 101, Inception V2, Inception Resnet V2, Mobilenet V1 y Darknet-19). Nuestro objetivo es explorar las propiedades de estos modelos de detección de objetos que se modifican y adaptan específicamente al dominio del problema de detección de señales de tráfico mediante el aprendizaje por transferencia. En particular, varios modelos de detección de objetos disponibles públicamente que fueron entrenados previamente en el conjunto de datos COCO de Microsoft se ajustan en el conjunto de datos de referencia de detección de señales de tráfico alemán. La evaluación y comparación de estos modelos incluye métricas clave, como la precisión promedio promedio (mAP), la asignación de memoria, el tiempo de ejecución, la cantidad de operaciones de punto flotante, la cantidad de parámetros del modelo y el efecto de los tamaños de las imágenes de las señales de tráfico.
Proporcionamos:
Si encuentra útil este código en su investigación, cite:
"Evaluation of deep neural networks for traffic sign detection systems."
Álvaro Arcos-García, Juan A. Álvarez-García, Luis M. Soria-Morillo. Neurocomputing 316 (2018) 332-344.
[enlace][bibtex]
Este proyecto está implementado en Tensorflow y se basa en dos repositorios: API de detección de objetos de Tensorflow y darkflow.
Puede descargar TFRecords del conjunto de datos GTSDB desde Google Drive. Descomprímalo en la carpeta gtsdb_data
. Puede descargar modelos previamente entrenados desde Google Drive. Descomprímelos en la carpeta models
.
Nuestros hallazgos muestran que Faster R-CNN Inception Resnet V2 obtiene el mejor mAP, mientras que R-FCN Resnet 101 logra el mejor equilibrio entre precisión y tiempo de ejecución. YOLO V2 y SSD Mobilenet merecen una mención especial, ya que el primero logra resultados de precisión competitivos y es el segundo detector más rápido, mientras que el segundo es el modelo más rápido y liviano en términos de consumo de memoria, lo que lo convierte en una opción óptima para su implementación en Dispositivos móviles e integrados.
modelo | mapa | parámetros | fracasos | memoria_mb | total_exec_millis | acelerador_exec_millis | cpu_exec_millis |
---|---|---|---|---|---|---|---|
Resnet R-CNN 50 más rápido | 91,52 | 43337242 | 533575386662 | 5256.454615 | 104.0363553 | 75.93395395 | 28.10240132 |
Resnet R-CNN 101 más rápido | 95.08 | 62381593 | 625779295782 | 6134.705805 | 123.2729175 | 90.33714433 | 32.9357732 |
Inicio más rápido de R-CNN V2 | 90,62 | 12891249 | 120621363525 | 2175.206857 | 58.53338971 | 38.76813971 | 19.76525 |
R-CNN Inception Resnet V2 más rápido | 95,77 | 59412281 | 1837544257834 | 18250.446008 | 442.2206796 | 366.1586796 | 76062 |
R-FCN Resnet 101 | 95,15 | 64594585 | 269898731281 | 3509.75153 | 85.45207971 | 52.40321739 | 33.04886232 |
SSD móvil | 61,64 | 5572809 | 2300721483 | 94.696119 | 15.14525 | 4.021267857 | 11.12398214 |
Inicio SSD V2 | 66.10 | 13474849 | 7594247747 | 284.512918 | 23.74428378 | 9.393405405 | 14.35087838 |
Yolo V2 | 78,83 | 50588958 | 62780021160 | 1318.108256 | 21.4810122 | 18.13923171 | 3.341780488 |
modelo | pequeño | medio | grande |
---|---|---|---|
Resnet R-CNN 50 más rápido | 53,57 | 86,95 | 86,72 |
Resnet R-CNN 101 más rápido | 70,89 | 94,17 | 88,87 |
Inicio más rápido de R-CNN V2 | 56,72 | 81.02 | 88,53 |
R-CNN Inception Resnet V2 más rápido | 68,60 | 86,62 | 82.10 |
R-FCN Resnet 101 | 60,37 | 82.03 | 79,56 |
SSD móvil | 22.13 | 55,32 | 82.06 |
Inicio SSD V2 | 26,85 | 64,71 | 78,76 |
Yolo V2 | 42,93 | 78,99 | 75,67 |
Proporcionamos un Jupyter Notebook con instrucciones para ejecutar nuestros modelos previamente entrenados en nuevas imágenes.
Los archivos de configuración necesarios para entrenar nuestros modelos se incluyen en cada archivo zip que puede descargar desde la sección de modelos previamente entrenados. Se realizaron cambios mínimos en el código fuente base de tensorflow y darkflow, por lo que debería poder reproducir nuestros resultados utilizando las últimas versiones de los repositorios antes mencionados. Por ejemplo, para entrenar un modelo SDD Mobilenet, puede ejecutar las siguientes líneas de comando:
cd ~ /tensorflow/models/research
python3 object_detection/train.py --logtostderr --pipeline_config_path models/ssd_mobilenet_v1/ssd_mobilenet_v1_gtsdb3.config --train_dir models/ssd_mobilenet_v1/train/
Proporcionamos un Jupyter Notebook con instrucciones para evaluar los resultados obtenidos por nuestros modelos previamente entrenados.
El código fuente de este proyecto se basa principalmente en la API de detección de objetos de Tensorflow y Darkflow.