序言

面试过程中遇到的问题,如何对2Dbox、3Dbox和旋转box求iou。

2D Box计算代码

def cal_2dbox(box1, box2):"""box format: xyxy"""x1 = max(box1[0], box2[0])y1 = max(box1[1], box2[1])x2 = min(box1[2], box2[2])y2 = min(box1[3], box2[3])union = (x2 - x1) * (y2 - y1)area1 = (box1[2]-box1[0]) * (box1[3]-box1[1])area2 = (box2[2]-box2[0]) * (box2[3]-box2[1])iou = union/(area1+area2-union)return iou

3D Box计算代码

def cal_2dbox(box1, box2):"""box format: xyxy"""x1 = max(box1[0], box2[0])y1 = max(box1[1], box2[1])x2 = min(box1[2], box2[2])y2 = min(box1[3], box2[3])union = (x2 - x1) * (y2 - y1)area1 = (box1[2]-box1[0]) * (box1[3]-box1[1])area2 = (box2[2]-box2[0]) * (box2[3]-box2[1])iou = union/(area1+area2-union)return iou

旋转 Box计算代码

def cal_skewbox(box1, box2):"""box format: cxcywh angle"""area1 = box1[2]*box1[3]area2 = box2[2]*box2[3]box1_inp = ((box1[0], box1[1]), (box1[2], box1[3]), box1[4])box2_inp = ((box2[0], box2[1]), (box2[2], box2[3]), box2[4])int_pts = cv2.rotatedRectangleIntersection(tuple(box1_inp), tuple(box2_inp))[1]#order_pts = cv2.convexHull(int_pts, returnPoints=True)union = cv2.contourArea(int_pts)iou = union/(area1+area2-union)return iou

结果

if __name__ == "__main__":#2Dbox1_2d = [50, 100, 100, 200]box2_2d = [50, 50, 100, 200]iou_2d = cal_2dbox(box1_2d, box2_2d)print("二维box的计算结果:", iou_2d)#3Dbox1_3d = [50, 100, 30, 100, 200, 60]box2_3d = [50, 50, 30, 100, 200, 90]iou_3d = cal_3dbox(box1_3d, box2_3d)print("三维box的计算结果:", iou_3d)#skewbox1_skew = [50, 100, 100, 200, 0]box2_skew = [50, 100, 100, 200, 90]iou_skew = cal_skewbox(box1_skew, box2_skew)print("旋转box的计算结果:", iou_skew)

终端结果:

二维box的计算结果: 0.6666666666666666
三维box的计算结果: 0.3333333333333333
旋转box的计算结果: 0.3333333333333333

2DBox和3DBox和旋转Box的iou计算相关推荐

  1. 计算机视觉:两个旋转检测框bbox的IoU计算

    计算机视觉:两个旋转检测框bbox的IoU计算 IoU简介 两个旋转检测框bbox的IoU计算 IoU简介 在目标检测中,经常会使用到IoU.IoU 的全称为交并比(Intersection over ...

  2. [CV] Rotated IoU 计算旋转矩形之间的重叠面积

    [CV] Rotated IoU 计算旋转矩形之间的重叠面积 文章目录 [CV] Rotated IoU 计算旋转矩形之间的重叠面积 简介 旋转包围盒的编码方式 矢量的旋转公式 包围盒转化为角点 代码 ...

  3. python绘制四边形_python shapely.geometry.polygon任意两个四边形的IOU计算实例

    在目标检测中一个很重要的问题就是NMS及IOU计算,而一般所说的目标检测检测的box是规则矩形框,计算IOU也非常简单,有两种方法: 1. 两个矩形的宽之和减去组合后的矩形的宽就是重叠矩形的宽,同比重 ...

  4. yolov3前向传播(三)-- 坐标转换,iou计算,权重加载,图片显示

    坐标转换,iou计算,权重加载,图片显示 一.坐标转换 1.分析 2.实现 # =====================================坐标值转化函数================ ...

  5. python图片截取斜四边形_python shapely.geometry.polygon任意两个四边形的IOU计算实例...

    在目标检测中一个很重要的问题就是NMS及IOU计算,而一般所说的目标检测检测的box是规则矩形框,计算IOU也非常简单,有两种方法: 1. 两个矩形的宽之和减去组合后的矩形的宽就是重叠矩形的宽,同比重 ...

  6. python中geometry_python shapely.geometry.polygon任意两个四边形的IOU计算实例

    在目标检测中一个很重要的问题就是NMS及IOU计算,而一般所说的目标检测检测的box是规则矩形框,计算IOU也非常简单,有两种方法: 1. 两个矩形的宽之和减去组合后的矩形的宽就是重叠矩形的宽,同比重 ...

  7. 车流量检测实现:多目标追踪、卡尔曼滤波器、匈牙利算法、SORT/DeepSORT、yoloV3、虚拟线圈法、交并比IOU计算

    日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) CNN:RCNN.SPPNet.Fast RCNN.Faste ...

  8. PLC实验—西门子S7 1200读取旋转编码器数据并计算电机转速

    PLC实验-西门子S7 1200读取旋转编码器数据并计算电机转速 注意PTO控制步进电机实验博途软件需要V14版本,不然没有PTO功能块 软件的下载请点击下方百度网盘的链接 链接:https://pa ...

  9. matlab实现iou计算,python实现IOU计算案例

    计算两个矩形的交并比,通常在检测任务里面可以作为一个检测指标.你的预测bbox和groundtruth之间的差异,就可以通过IOU来体现.很简单的算法实现,我也随便写了一个,嗯,很简单. 1. 使用时 ...

最新文章

  1. 解决Visual Code安装中文插件失败问题
  2. zookeeper的名词复盘-Watcher
  3. Android之获取证书文件(pfx格式)的公钥和私钥
  4. groovy lambda_Java Lambda流和Groovy Clouse的比较
  5. 实现基于AD的MOSS的FORM认证方式
  6. 计算机的时代背景,学生计算机论文,关于新时代背景下的中专计算机教学相关参考文献资料-免费论文范文...
  7. 智能合约语言 Solidity 教程系列5 - 数组介绍
  8. Learun快速开发平台,一个开源可视化的开发平台
  9. Spyder单步调试
  10. 元器件中关于晶体二极管的小小知识 2021-09-07
  11. 4种Word文档解除密码保护的方法
  12. [AC自动机]luoguP3966
  13. 微博上一些有用的话(六)
  14. 点云特征提取--vfh
  15. python3 + wxpython 实现RSA加密聊天室
  16. SSM开发笔记-尚硅谷-佟刚-Spring4.0.0
  17. MATLAB 2020a的参考安装教程
  18. dw怎么在框架中加入网页_如何在Dreamweaver中创建框架结构? dw设置框架结构的教程...
  19. react-player一个很好用的直播组件,可以播放视频等等
  20. Linux文件服务站

热门文章

  1. rsync+sersync实时同步数据
  2. bizhubc226说明书_柯尼卡美能达复印机C226|C266扫描功能设置
  3. sumatrapdf关闭当前tab快捷键
  4. 6大Word报告模板 , 这个年底,不再熬夜加班写材料
  5. 活塞运动c语言编程,动网格的相关知识介绍
  6. 计算机网络技术电子科技大学出版社答案,计算机网络技术与应用(西安电子科技大学出版社)(2010.9)课后习题参考答案...
  7. 杰理之ANC 方案开发流程-篇
  8. 2023 K8s 认证工程师 CKA 考题分析和题库练习(上)
  9. 基于simulink的FM调制解调系统仿真
  10. oracle jdbc中文,oracle jdbc