YOLOv5s訓練結果result.txt繪制loss/mAP等曲線對比圖
引用代碼文章來源:http://www.zghlxwxcb.cn/news/detail-534168.html
'''
我的訓練完是csv格式,另存為txt格式即可
畫loss圖的代碼,前提是results.txt文檔中只能是數(shù)字,先刪除掉txt中的字符
我的第1列是epoch是0,1,2,...的格式,刪掉逗號
第2、3、4列分別是box、objectness、classification 的loss值
'''
import os
import numpy as np
import matplotlib.pyplot as plt
import pylab as pl
from mpl_toolkits.axes_grid1.inset_locator import inset_axes
data1_loss =np.loadtxt("D:/code/yolov5s/results.txt") #result.txt地址
#print(data1_loss[0])
x = data1_loss[:,0] #冒號左邊是行范圍,冒號右邊列范圍。取第1列
y = data1_loss[:,1] #取第2列
y1 = data1_loss[:,2] #取第3列
y2 = data1_loss[:,3] #取第4列
fig = plt.figure(figsize = (7,5)) #figsize是圖片的大小`
ax1 = fig.add_subplot(1, 1, 1) # ax1是子圖的名字`
pl.plot(x,y,'r-',label=u'Box_Loss')
pl.plot(x,y1,'g-',label=u'Objectness_Loss')
pl.plot(x,y2,'y-',label=u'Classification_Loss')
# ‘’g‘’代表“green”,表示畫出的曲線是綠色,“-”代表畫的曲線是實線,可自行選擇,label代表的是圖例的名稱,一般要在名稱前面加一個u,如果名稱是中文,會顯示不出來,目前還不知道怎么解決。
# p2 = pl.plot(x,y,'r-', label = u'Box_Loss')
#顯示圖例
# p3 = pl.plot(x,y1, 'b-', label = u'Objectness_Loss')
# p4 = pl.plot(x,y2, 'y-', label = u'Classification_Loss')
pl.legend()
pl.xlabel(u'epoch')
pl.ylabel(u'loss')
# plt.title(' loss for yolov3 models in training')
plt.savefig(os.path.join('D:/code/yolov5s/pic', 'loss.png'))#保存圖片,第一個是指存儲路徑,第二個是圖片名字
plt.show()
另外奉上各種線性顏色:參考
大概是夠用了?。?!文章來源地址http://www.zghlxwxcb.cn/news/detail-534168.html
到了這里,關于YOLOv5s訓練結果result.txt繪制loss/mAP等曲線對比圖的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!