YoloV5的TensorFlow版開源


開源

自從yolov5開源以來,(不管因為啥原因算是)深受矚目,最近我用tensorflow實現了其主要部分。就孤陋的我看來,是第一個純正的tensorfow2版本,歡迎try and star:
https://github.com/LongxingTan/Yolov5

之前在工作中接觸過yolov3(跑過demo應該就算接觸過了),效果驚艷。我在視覺領域只是個新人(悲傷的是我一個中年人卻在哪兒哪兒都TM是新人),能力有限,疏漏難免。從頭開始實現,對我來說是一次不錯的經歷,遇到和解決了一些細節問題。
在這里插入圖片描述

如readme中所指出的,主要特點如下:

  • 純tensorflow2的實現
  • 用yaml文件來配置模型和控制模型大小
  • 支持自定義數據訓練
  • 馬賽克數據增強
  • 通過iou或長寬比匹配anchor
  • 相鄰正樣本增強
  • 支持多GPU訓練
  • 相對詳細的代碼注釋
  • 缺點多,提升空間巨大

原理

結合代碼簡單回顧一下其主要原理和改進。當然知乎上已經有不少非常不錯的解析文章可以參考,尤其是下面列舉的。當然,如有可能,讀代碼應該是更清晰、細節的了。

損失函數部分,還沒有完全和v5的設置一樣。v5中做了一些優化,如不同scale的平衡,如目標confidence損失的權重等。

效果

如果想要效果最佳,還是推薦原版pytorch,畢竟一直在更新中,v4和v5的作者也一直還在發力優化。如果對tensorflow有謎之愛好,或者想通過代碼了解yolov5,我覺得我的版本寫的更清楚一些(與之相應的代價是可能有細節遺漏甚至不對的地方),總之歡迎大家嘗試。
在MNIST檢測數據上的效果:
在這里插入圖片描述

在voc2012數據集上的效果(效果還有待加強):
在這里插入圖片描述
在這里插入圖片描述

再大的數據集我就跑不動啦,畢竟只有1080Ti可用。
歡迎關注公眾號YueTan


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM