Linux環境下同時繪製Caffe的多個pr曲線

2021-10-01 09:14:21 字數 2380 閱讀 7168

linux環境下同時繪製caffe的多個pr曲線

pr曲線是衡量目標檢測網路模型的重要指標,有時候在做演算法對比實驗的時候,需要將多個pr曲線繪製在同一張圖上進行對比分析。python提供了很好的繪圖函式。在caffe深度學習框架下,pr存放在./output/faster_rcnn_end2end/voc_2007_test/zf_faster_rcnn_iter_50000的ship_pr.pkl檔案(本人是用faster_rcnn的end2end模型下迭代50000次訓練出的結果)。通過修改本人程式的.pkl檔案路徑就可以將多個pr曲線繪製在一張圖上

#!/usr/bin/env python  

#-*-coding:utf-8-*-

import cpickle as pickle

import numpy as np

import matplotlib.pyplot as plt

import pylab

import mpl_toolkits.axisartist as aa

from pylab import figure, show, legend

from mpl_toolkits.axes_grid1 import host_subplot

np.set_printoptions(threshold=np.nan)

fr = open('/home/wei/program/pr_10.pkl') # open 的引數是 pkl 檔案的路徑

inf = pickle.load(fr)    # 讀取 pkl 檔案的內容, 即反序列化

precision = inf["prec"]     # precision資料

recall = inf["rec"]                 # recall資料

ap = inf["ap"]                 # ap資料

fr.close()                # 關閉檔案

fr2 = open('/home/wei/program/pr_17.pkl') # open 的引數是 pkl 檔案的路徑

inf2 = pickle.load(fr2)                # 讀取 pkl 檔案的內容, 即反序列化

precision2 = inf2["prec"]                # precision資料

recall2 = inf2["rec"]               # recall資料

ap2 = inf2["ap"]                # ap資料

fr2.close()                # 關閉檔案

host = host_subplot(111, axes_class=aa.axes)        #確定圖示形狀

plt.subplots_adjust(right=0.75)               #確定圖示邊距

part2 = host.twinx()                      #定義第二條曲線

host.set_xlim([0,1.1])                     #設定x軸的座標範圍

host.set_ylim([0,1.1])                     #設定y軸的座標範圍

host.set_xlabel("recall")                    #設定x軸的標籤

host.set_ylabel("precision")                 #設定y軸的標籤

p1, = host.plot(recall, precision, label='ship (pr1 = )'.format(ap)) #確定第1條曲線的資料引數

p2, = part2.plot(recall2, precision2, label='ship (pr2 = )'.format(ap2)) #確定第2條曲線的資料引數

part2.set_ylim([0,1.1])                     #確定第二條曲線的座標範圍

host.legend(loc=1)

pylab.title("precision-recall")                 # 確定標題

plt.draw()                          #畫圖

plt.show()

``![pr曲線](

Linux下同時啟動兩個Tomcat進行設定

linux版本 linux version 2.6.32 431.11.2.el6.x86 64 解壓tar.gz tar zxvf apache tomcat 6.0.41.tar.gz 至相應的路徑下,可解壓至兩個不同的路徑或者相同的路徑下不同的資料夾,不需要安裝,直接部署程式即可。接下來修改t...

Linux下LNMP環境中同時執行多個PHP版本

www.php.net distributions php 7.2.24.tar.gz no check certificate2 解壓檔案 解壓後會生成乙個php 7.2.24資料夾 tar zxvf php 7.2.24.tar.gz3 進入到解壓資料夾 cd php 7.2.244 prefi...

Linux環境C搭建

一 安裝vim sudo apt get update 若還是不行,則需要更新ubuntu源列表,參考 二 vim的使用 具體基本使用方法在此不做過多說明,總結一些比較好用 常用的幾個功能 1 一般模式下輸入gg g可對 自動進行縮排,使 可讀性更好。2 一般模式下輸入ctrl v可進入塊操作模式,...