1、IOU=交集/并集

#include<iostream>
#include<algorithm>
#include<stdio.h>
#include <vector>
#include<string>
#include<sstream>
#include<map>
#include<set>
#include<iomanip>
#include <functional> // std::greater
using namespace std; double calcS(vector<int> num)
{
return (num[] - num[])*(num[] - num[]);
} vector<vector<double>> calcIOU(vector<vector<int>> &nums)
{
vector<vector<double>> res(nums.size(), vector<double>(nums.size(),0.0));
for (int i = ; i < nums.size(); ++i)
{
for (int j = i + ; j < nums.size(); ++j)
{ int x1 = max(nums[i][], nums[j][]);
int x2 = min(nums[i][], nums[j][]);
int y1 = max(nums[i][], nums[j][]);
int y2 = min(nums[i][], nums[j][]);
double inter_square = (x2 - x1)*(y2 - y1);
double union_square = calcS(nums[i]) + calcS(nums[j]) - inter_square;
res[i][j] = inter_square / union_square;
}
}
return res;
} int main()
{
vector<vector<int>> nums;
vector<vector<double>> res;
// 表示坐标位置,(x1,y1,x2,y2),分别是左上角和右下角的坐标
int a[][] = { { ,,, },{ ,,, },{ ,,, } };
for (int i = ; i < ; ++i)
{
vector<int> temp;
for (int j = ; j < ; ++j)
{
temp.push_back(a[i][j]);
}
nums.push_back(temp);
} res = calcIOU(nums);
for (int i = ; i < nums.size(); ++i)
{
for (int j = i + ; j < nums.size(); ++j)
cout << fixed << setprecision() <<res[i][j] << " ";
}
cout << endl;
system("pause");
return ;
}

目标检测 — 计算IOU的更多相关文章

  1. 【55】目标检测之IOU交并比

    交并比(Intersection over union) 你如何判断对象检测算法运作良好呢?在本笔记中,你将了解到并交比函数,可以用来评价对象检测算法.在下一个笔记中,我们用它来插入一个分量来进一步改 ...

  2. AI佳作解读系列(五) - 目标检测二十年技术综述

    计算机视觉中的目标检测,因其在真实世界的大量应用需求,比如自动驾驶.视频监控.机器人视觉等,而被研究学者广泛关注.   上周四,arXiv新出一篇目标检测文献<Object Detection ...

  3. 目标检测 IOU(交并比) 理解笔记

    交并比(Intersection-over-Union,IoU): 目标检测中使用的一个概念 是产生的候选框(candidate bound)与原标记框(ground truth bound)的交叠率 ...

  4. 目标检测中常提到的IoU和mAP究竟是什么?

    看完这篇就懂了. IoU intersect over union,中文:交并比.指目标预测框和真实框的交集和并集的比例. mAP mean average precision.是指每个类别的平均查准 ...

  5. 评价目标检测(object detection)模型的参数:IOU,AP,mAP

    首先我们为什么要使用这些呢? 举个简单的例子,假设我们图像里面只有1个目标,但是定位出来10个框,1个正确的,9个错误的,那么你要按(识别出来的正确的目标/总的正确目标)来算,正确率100%,但是其实 ...

  6. 目标检测评价标准(mAP, 精准度(Precision), 召回率(Recall), 准确率(Accuracy),交除并(IoU))

    1. TP , FP , TN , FN定义 TP(True Positive)是正样本预测为正样本的数量,即与Ground truth区域的IoU>=threshold的预测框 FP(Fals ...

  7. AAAI 2020 | DIoU和CIoU:IoU在目标检测中的正确打开方式

    论文提出了IoU-based的DIoU loss和CIoU loss,以及建议使用DIoU-NMS替换经典的NMS方法,充分地利用IoU的特性进行优化.并且方法能够简单地迁移到现有的算法中带来性能的提 ...

  8. ECCV 2018 目标检测 | IoU-Net:将IoU的作用发挥到极致

    常见的目标检测算法缺少了定位效果的学习,IoU-Net提出IoU predictor.IoU-guided NMS和Optimization-based bounding box refinement ...

  9. 目标检测中的IOU和CIOU原理讲解以及应用(附测试代码)

    上期讲解了目标检测中的三种数据增强的方法,这期我们讲讲目标检测中用来评估对象检测算法的IOU和CIOU的原理应用以及代码实现. 交并比IOU(Intersection over union) 在目标检 ...

随机推荐

  1. JavaWeb 之文件上传

    1. 文件上传的要求 1.1 上传对表单的限制 method="post"; enctype="multipart/form-data"; 表单中需要添加文件表 ...

  2. Ubuntu系统下完全卸载和安装Mysql

    删除 mysql sudo apt-get autoremove --purge mysql-server-5.0 sudo apt-get remove mysql-server sudo apt- ...

  3. CSS让一个元素一闪一闪的

    .heart{ animation:heart 1s ease infinite; } @keyframes heart { 0% {opacity:0.1;} 100%{;} }

  4. mui上传图片

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...

  5. redis3.2.11单机多实例集群部署并测试连接情况

    配置准备: redis3.2.11安装配置规划 机器 192.168.169.135(本机虚拟机) 系统 Red Hat Enterprise Linux Server release 6.4 (Sa ...

  6. flask实例化参数以及信号

    一.实例化补充 instance_path和instance_relative_config是配合来用的.这两个参数是用来找配置文件的,当用app.config.from_pyfile('settin ...

  7. C# 调用VS自带程序WebDev.WebServer40.EXE 源代码

    通过Process.Start启动,VS自带程序WebDev.WebServer40.EXE 在内网架设网站时,为安装IIS条件下用VS自带的小程序来测试效果非常不错! using System; u ...

  8. 每天一个Linux命令(64)shutdown命令

        shutdown以一种安全的方式关闭系统.     (1)用法:     用法:  shutdown [参数] [时间]     (2)功能:     功能:  系统关机命令,shutdown ...

  9. $git学习总结系列(2)——远程仓库

    本文主要介绍git本地仓库和GitHub远程仓库之间的交互和数据传输. 注:首先需要到github.com上注册一个账号. 1. 添加本地SSH Key到GitHub 要向GitHub远程仓库推送代码 ...

  10. 修改subline text3左侧样式

    安装PackageResourceViewer 快捷键 ⌘(command)+⇧(shift)+P 打开 Command Palette 输入 Package Control:Install 回车,等 ...