Yolov3訓練模型沒有框(理論上一定有用的解決方案)

問題描述

不知道有多少人遇到過和我一樣的情況,這個問題困擾了我很長時間,這裏特別做一下筆記。

本人在Windows10環境下,使用Pycharm進行模型訓練。訓練的時候一切正常,loss值也有明顯下降,但是在使用模型的時候發現與預料結果截然不同。

訓練結果如下圖:
在這裏插入圖片描述
圖片中並沒有出現錨框。

解決方案

既然是Yolo模型,那麼你的代碼中肯定有一部分是用來描述產生錨框的條件的。

在這裏插入圖片描述
每個人的代碼不同,但是一定有一部分類似的代碼。

其中score表示生成錨框的閾值,只有當預測的可信度高於你設定的閾值時,纔會顯示錨框。

iou表示預測的矩形框和真實目標的交集與並集之比。

換句話說,你只要把這兩個參數的值改小後,原本不會顯示出來的錨框就會顯示了。

修改後的效果:
在這裏插入圖片描述

總結

這種方案在理論上一定是可行的,但是這種做法治標不治本。

問題的本質是,你訓練模型的可行度太低。就算你把錨框顯示出來了,本質問題也沒有得到絲毫改善。

舉個例子:
在這裏插入圖片描述
在這張圖片中,你確實可以把這些錨框都顯示出來,但是這樣的顯示方式實在是沒有任何意義。

所以,調整這些參數只是爲了讓大家對Yolov3的顯示機制有進一步的體會,關於解決沒有錨框問題的核心方法請參照我的另一篇文章:Yolov3模型沒有框的解決方案之——提高訓練模型的置信度
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章