这是论文的代码
交通标志检测系统深度神经网络的评估
阿尔瓦罗·阿尔科斯-加西亚、胡安·安东尼奥·阿尔瓦雷斯-加西亚、路易斯·M·索里亚-莫里洛
本文解决了交通标志检测问题,分析了几种目标检测系统(Faster R-CNN、R-FCN、SSD 和 YOLO V2)的最新技术,并结合了各种特征提取器(Resnet V1 50、 Resnet V1 101、Inception V2、Inception Resnet V2、Mobilenet V1 和 Darknet-19)。我们的目标是探索这些对象检测模型的属性,这些模型通过迁移学习进行修改并专门适应交通标志检测问题领域。特别是,在 Microsoft COCO 数据集上预训练的各种公开可用的对象检测模型在德国交通标志检测基准数据集上进行了微调。这些模型的评估和比较包括关键指标,例如平均精度(mAP)、内存分配、运行时间、浮点运算数量、模型参数数量以及交通标志图像尺寸的影响。
我们提供:
如果您发现此代码对您的研究有用,请引用:
"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.
[链接][bibtex]
该项目是在 Tensorflow 中实现的,它基于两个存储库:Tensorflow 对象检测 API 和 darkflow。
您可以从 Google Drive 下载 GTSDB 数据集的 TFRecords。将其解压缩到gtsdb_data
文件夹。您可以从 Google Drive 下载预先训练的模型。将它们解压缩到models
文件夹。
我们的研究结果表明,Faster R-CNN Inception Resnet V2 获得了最佳 mAP,而 R-FCN Resnet 101 在准确性和执行时间之间实现了最佳权衡。 YOLO V2 和 SSD Mobilenet 值得特别一提,前者实现了有竞争力的准确率结果,是第二快的检测器,而后者是内存消耗最快、最轻的模型,使其成为部署在移动和嵌入式设备。
模型 | 地图 | 参数 | 失败 | 内存_mb | 总执行毫秒数 | Accelerator_exec_millis | cpu_exec_millis |
---|---|---|---|---|---|---|---|
更快的 R-CNN Resnet 50 | 91.52 | 43337242 | 533575386662 | 5256.454615 | 104.0363553 | 75.93395395 | 28.10240132 |
更快的 R-CNN Resnet 101 | 95.08 | 62381593 | 625779295782 | 6134.705805 | 123.2729175 | 90.33714433 | 32.9357732 |
更快的 R-CNN Inception V2 | 90.62 | 12891249 | 120621363525 | 2175.206857 | 58.53338971 | 38.76813971 | 19.76525 |
更快的 R-CNN Inception Resnet V2 | 95.77 | 59412281 | 1837544257834 | 18250.446008 | 442.2206796 | 366.1586796 | 76062 |
R-FCN 重网 101 | 95.15 | 64594585 | 269898731281 | 3509.75153 | 85.45207971 | 52.40321739 | 33.04886232 |
SSD移动网络 | 61.64 | 5572809 | 2300721483 | 94.696119 | 15.14525 | 4.021267857 | 11.12398214 |
SSD Inception 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 |
模型 | 小的 | 中等的 | 大的 |
---|---|---|---|
更快的 R-CNN Resnet 50 | 53.57 | 86.95 | 86.72 |
更快的 R-CNN Resnet 101 | 70.89 | 94.17 | 88.87 |
更快的 R-CNN Inception V2 | 56.72 | 81.02 | 88.53 |
更快的 R-CNN Inception Resnet V2 | 68.60 | 86.62 | 82.10 |
R-FCN 重网 101 | 60.37 | 82.03 | 79.56 |
SSD移动网络 | 22.13 | 55.32 | 82.06 |
SSD Inception V2 | 26.85 | 64.71 | 78.76 |
YOLO V2 | 42.93 | 78.99 | 75.67 |
我们提供了一个 Jupyter Notebook,其中包含在新图像上运行预训练模型的说明。
训练模型所需的配置文件包含在每个 zip 文件中,您可以从预训练模型部分下载该文件。对tensorflow和darkflow的基本源代码进行了最小的更改,因此您应该能够使用上述存储库的最新版本重现我们的结果。例如,要训练 SDD Mobilenet 模型,您可以运行以下命令行:
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/
我们提供了一个 Jupyter Notebook,其中包含评估我们预训练模型获得的结果的说明。
该项目的源码主要基于Tensorflow对象检测API和darkflow。