這是論文的程式碼
交通標誌偵測系統深度神經網路的評估
阿爾瓦羅·阿爾科斯-加西亞、胡安·安東尼奧·阿爾瓦雷斯-加西亞、路易斯·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。