WongKinYiu / CrossStagePartialNetworks

Cross Stage Partial Networks
https://github.com/WongKinYiu/CrossStagePartialNetworks
894 stars 172 forks source link

YOLOv4和YOLOv5的性能比較咨詢 #35

Closed amusi closed 4 years ago

amusi commented 4 years ago

Chien-Yao Wang,您好!我是Amusi,我想了解壹下妳測試關於YOLOv4和YOLOv5的性能比較結果。因為我今天剛看到妳在妳CSPNet開源項目中提交的issue,裏面還@了我https://github.com/WongKinYiu/CrossStagePartialNetworks/issues/32

但我當時沒有及時看到,所以今天才看到這個已關閉的issue。 不知道您有沒有微信(wechat)或者知乎也性,能即時通訊的應用即可。我想快速跟您了解壹下您測試的YOLOv4和YOLOv5! 如有打擾,還請諒解

WongKinYiu commented 4 years ago

@amusi 您好

這是目前的比較 (於今天早上測試比較完成) image

由於YOLOv5在6月9日更新了第二版CSP版本, 因此與YOLOv4更接近了 (初版YOLOv5表現較YOLOv3-SPP差). 更多細節可以在YOLOv5的issue 6中找到.

WongKinYiu commented 4 years ago

@amusi

YOLOv5的表格中 (下表), 其速度是測在 input size 640x640, batch size 32; 然而其數據 AP/APtest/AP50是測在 input size 736x736. 因此造成了許多文章對於其性能的誤解, 例如. 在同樣的測試基準下 (batch size 32), 我們可以明顯看到當前 YOLOv4 仍顯著優於 YOLOv5 (上圖), image

另外, 在 YOLOv5 的圖中 (下圖), YOLOv5 的推論速度為 batch size 32 所測得, EfficientDet 則為 batch size 8 所測得. 同樣在 YOLOv5 issue 6 中已建議 repository 擁有者刪除圖中的 EfficientDet. image

amusi commented 4 years ago

感謝大佬回復,因為今天看到壹些平臺發文,很有誤導性,所以我專門調研了壹些YOLOv4和YOLOv5的比較,然後就看到了妳的這個issue,然後節省時間就來直接問妳了。

  1. 最上面的那張測試圖,是在input size = 640x640 還是736x736情況下測得的
  2. 請問測試環境是什麽?比如Tesla V100 GPU
WongKinYiu commented 4 years ago

@amusi

最上面那張圖 YOLOv3-SPP 與 YOLOv5 是在 input size range(288, 736, 64) 測試. (由於YOLOv5使用 320\~960 訓練) YOLOv4 是在 input size range(416, 608, 64) 測試. (由於YOLOv4使用448\~736訓練)

都是在Tesla V100 GPU 以 batch size 32 測試, 皆包含 inference time 與 NMS time. 詳細測試方法於 YOLOv5 的 test.py 中的 task='study'.

josephofiowa commented 4 years ago

Hi, all, we have published additional details on the YOLOv5 versus YOLOv4 comparison, including the discussion of batch size unfairly skewing inference speed. That post contains notebooks and a walkthrough to reproduce the results. We have updated the original post as well.