亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python:目標檢測模型預(yù)測準確度計算方式(基于IoU)

 更新時間:2020年01月18日 11:00:45   作者:sestien  
今天小編就為大家分享一篇python:目標檢測模型預(yù)測準確度計算方式(基于IoU),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

訓(xùn)練完目標檢測模型之后,需要評價其性能,在不同的閾值下的準確度是多少,有沒有漏檢,在這里基于IoU(Intersection over Union)來計算。

希望能提供一些思路,如果覺得有用歡迎贊我表揚我~

IoU的值可以理解為系統(tǒng)預(yù)測出來的框與原來圖片中標記的框的重合程度。系統(tǒng)預(yù)測出來的框是利用目標檢測模型對測試數(shù)據(jù)集進行識別得到的。

計算方法即檢測結(jié)果DetectionResult與GroundTruth的交集比上它們的并集,如下圖:

藍色的框是:GroundTruth

黃色的框是:DetectionResult

綠色的框是:DetectionResult ⋂GroundTruth

紅色的框是:DetectionResult ⋃GroundTruth

基本思路是先讀取原來圖中標記的框信息,對每一張圖,把所需要的那一個類別的框拿出來,與測試集上識別出來的框進行比較,計算IoU,選擇最大的值作為當前框的IoU值,然后通過設(shè)定的閾值(漏檢0, 0.3, 0.5, 0.7)來進行比較統(tǒng)計,最后得到每個閾值下的所有的判定為正確檢測(IoU值大于閾值)的框的數(shù)量,然后與原本的標記框的數(shù)量一起計算準確度。

其中計算IoU的時候是重新構(gòu)建一個背景為0的圖,設(shè)定框所在的位置為1,分別利用原本標注的框和測試識別的框來構(gòu)建兩個這樣的圖,兩者相加就能夠讓重疊的部分變成2,于是就可以知道重疊部分的大?。ń患?,從而計算IoU。

構(gòu)建代碼如下:

#讀取txt-標準txt為基準-分類別求閾值-閾值為0. 0.3 0.5 0.7的統(tǒng)計
import glob
import os
import numpy as np
 
#設(shè)定的閾值
threshold1=0.3
threshold2=0.5
threshold3=0.7
 
#閾值計數(shù)器
counter0=0
counter1=0
counter2=0
counter3=0
 
stdtxt=''#標注txt路徑
testtxt=''#測試txt路徑
 
txtlist=glob.glob(r'%s\*.txt' %stdtxt)#獲取所有txt文件
for path in txtlist:#對每個txt操作
  
  txtname=os.path.basename(path)[:-4]#獲取txt文件名
  label=1
  eachtxt=np.loadtxt(path) #讀取文件
  for line in eachtxt:
    if line[0]==label:
      #構(gòu)建背景為0框為1的圖
      map1=np.zeros((960,1280))
      map1[line[2]:(line[2]+line[4]),line[1]:(line[1]+line[3])]=1
      
      testfile=np.loadtxt(testtxt + txtname + '.txt')
      c=0
      iou_list=[]#用來存儲所有iou的集合
      for tline in testfile:#對測試txt的每行進行操作
        if tline[0]==label:
          c=c+1
          map2=np.zeros((960,1280))
          map2[tline[2]:(tline[2]+tline[4]),tline[1]:(tline[1]+tline[3])]=1
          map3=map1+map2
          a=0
          for i in map3:
            if i==2:
              a=a+1
          iou=a/(line[3]*line[4]+tline[3]*tline[4]-a)#計算iou
          iou_list.append(iou)#添加到集合尾部
          
      threshold=max(iou_list)#閾值取最大的
      #閾值統(tǒng)計
      if threshold>=threshold3:
        counter3=counter3+1
      elif threshold>=threshold2:
        counter2=counter2+1
      elif threshold>=threshold1:
        counter1=counter1+1
      elif threshold<threshold1:#漏檢
        counter0=counter0+1

以上這篇python:目標檢測模型預(yù)測準確度計算方式(基于IoU)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python爬蟲基礎(chǔ)之urllib的使用

    python爬蟲基礎(chǔ)之urllib的使用

    這篇文章主要介紹了python爬蟲基礎(chǔ)之urllib的使用,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-12-12
  • python利用Appium實現(xiàn)自動控制移動設(shè)備并提取數(shù)據(jù)功能

    python利用Appium實現(xiàn)自動控制移動設(shè)備并提取數(shù)據(jù)功能

    這篇文章主要介紹了python利用Appium自動控制移動設(shè)備并提取數(shù)據(jù),本文以控制抖音app滑動并獲取抖音短視頻發(fā)布者為例,通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2021-09-09
  • Python生成一個迭代器的實操方法

    Python生成一個迭代器的實操方法

    在本文里小編給大家分享了關(guān)于Python怎么生成一個迭代器的相關(guān)操作方法,有需要的朋友們可以學(xué)習(xí)參考下。
    2019-06-06
  • 詳解Python?AdaBoost算法的實現(xiàn)

    詳解Python?AdaBoost算法的實現(xiàn)

    Boosting是機器學(xué)習(xí)的三大框架之一。Boost也被稱為增強學(xué)習(xí)或提升法,其中典型的代表算法是AdaBoost算法。本文介紹了AdaBoost算法及python實現(xiàn),感興趣的可以學(xué)習(xí)一下
    2022-10-10
  • python 圖像處理畫一個正弦函數(shù)代碼實例

    python 圖像處理畫一個正弦函數(shù)代碼實例

    這篇文章主要介紹了python 圖像處理畫一個正弦函數(shù)代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • python3利用ctypes傳入一個字符串類型的列表方法

    python3利用ctypes傳入一個字符串類型的列表方法

    今天小編就為大家分享一篇python3利用ctypes傳入一個字符串類型的列表方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • 利用Python生成Excel炫酷圖表

    利用Python生成Excel炫酷圖表

    XlsxWriter是一個用來寫Excel2007和xlsx文件格式的python模塊。它可以用來寫文本、數(shù)字、公式并支持單元格格式化、圖片、圖表、文檔配置、自動過濾等特性。本文將用這個模塊生成酷炫的Excel圖表,需要的可以參考一下
    2022-02-02
  • 利用Python實現(xiàn)從PDF到CSV的轉(zhuǎn)換

    利用Python實現(xiàn)從PDF到CSV的轉(zhuǎn)換

    將PDF轉(zhuǎn)換為CSV極大地提升了數(shù)據(jù)的實用價值,Python作為一種強大的編程語言,能夠高效完成這一轉(zhuǎn)換任務(wù),本文將介紹如何利用Python實現(xiàn)從PDF到CSV的轉(zhuǎn)換,需要的朋友可以參考下
    2024-07-07
  • Python?Pygame實戰(zhàn)之打磚塊小游戲

    Python?Pygame實戰(zhàn)之打磚塊小游戲

    打磚塊最早是由雅達利公司開發(fā)的一款獨立游戲,也是無數(shù)人的童年記憶。本文將利用Python中的Pygame模塊制作經(jīng)典的打磚塊游戲,需要的可以參考一下
    2022-02-02
  • python爬蟲模塊URL管理器模塊用法解析

    python爬蟲模塊URL管理器模塊用法解析

    這篇文章主要介紹了python爬蟲模塊URL管理器模塊用法解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-02-02

最新評論