目标检测yolo, voc, coco的BBox格式转换
yolo, voc, coco bbox格式互转函数
yolo: [xmid, ymid, w, h],归一化到0-1
voc: [x1, y1, x2, y2]
coco: [xmin, ymin, w, h]
def voc2yolo(bboxes, image_height=720, image_width=1280):"""voc => [x1, y1, x2, y2]yolo => [xmid, ymid, w, h] (normalized)"""bboxes = bboxes.copy().astype(float) # otherwise all value will be 0 as voc_pascal dtype is np.intbboxes[..., [0, 2]] = bboxes[..., [0, 2]]/ image_widthbboxes[..., [1, 3]] = bboxes[..., [1, 3]]/ image_heightw = bboxes[..., 2] - bboxes[..., 0]h = bboxes[..., 3] - bboxes[..., 1]bboxes[..., 0] = bboxes[..., 0] + w/2bboxes[..., 1] = bboxes[..., 1] + h/2bboxes[..., 2] = wbboxes[..., 3] = hreturn bboxesdef yolo2voc(bboxes, image_height=720, image_width=1280):"""yolo => [xmid, ymid, w, h] (normalized)voc => [x1, y1, x2, y2]""" bboxes = bboxes.copy().astype(float) # otherwise all value will be 0 as voc_pascal dtype is np.intbboxes[..., [0, 2]] = bboxes[..., [0, 2]]* image_widthbboxes[..., [1, 3]] = bboxes[..., [1, 3]]* image_heightbboxes[..., [0, 1]] = bboxes[..., [0, 1]] - bboxes[..., [2, 3]]/2bboxes[..., [2, 3]] = bboxes[..., [0, 1]] + bboxes[..., [2, 3]]return bboxesdef coco2yolo(bboxes, image_height=720, image_width=1280):"""coco => [xmin, ymin, w, h]yolo => [xmid, ymid, w, h] (normalized)"""bboxes = bboxes.copy().astype(float) # otherwise all value will be 0 as voc_pascal dtype is np.int# normolizinigbboxes[..., [0, 2]]= bboxes[..., [0, 2]]/ image_widthbboxes[..., [1, 3]]= bboxes[..., [1, 3]]/ image_height# converstion (xmin, ymin) => (xmid, ymid)bboxes[..., [0, 1]] = bboxes[..., [0, 1]] + bboxes[..., [2, 3]]/2return bboxesdef yolo2coco(bboxes, image_height=720, image_width=1280):"""yolo => [xmid, ymid, w, h] (normalized)coco => [xmin, ymin, w, h]""" bboxes = bboxes.copy().astype(float) # otherwise all value will be 0 as voc_pascal dtype is np.int# denormalizingbboxes[..., [0, 2]]= bboxes[..., [0, 2]]* image_widthbboxes[..., [1, 3]]= bboxes[..., [1, 3]]* image_height# converstion (xmid, ymid) => (xmin, ymin) bboxes[..., [0, 1]] = bboxes[..., [0, 1]] - bboxes[..., [2, 3]]/2return bboxesdef voc2coco(bboxes, image_height=720, image_width=1280):bboxes = voc2yolo(bboxes, image_height, image_width)bboxes = yolo2coco(bboxes, image_height, image_width)return bboxes
目标检测yolo, voc, coco的BBox格式转换相关推荐
- yolov3网络结构图_目标检测——YOLO V3简介及代码注释(附github代码——已跑通)...
GitHub: liuyuemaicha/PyTorch-YOLOv3github.com 注:该代码fork自eriklindernoren/PyTorch-YOLOv3,该代码相比master分 ...
- 目标检测YOLO系列------YOLO简介
目标检测YOLO系列------YOLO简介 1.为什么会出现YOLO算法 2.YOLO算法会逐渐成为目标检测的主流吗 YOLO以及各种变体已经广泛应用于目标检测算法所涉及到的方方面面,为了梳 ...
- 目标检测任务中常用的数据集格式(voc、coco、yolo)
在目标检测任务中,常见的数据集格式有三种,分别为voc(xml).coco(json).yolo(txt). 一.Pascal VOC Pascal VOC数据集是目标检测的常用的大规模数据集之一,从 ...
- 深度学习目标检测数据VisDrone2019(to yolo / voc / coco)---MMDetection数据篇
1.VisDrone2019数据集介绍 配备摄像头的无人机(或通用无人机)已被快速部署到广泛的应用领域,包括农业.航空摄影.快速交付和监视.因此,从这些平台上收集的视觉数据的自动理解要求越来越高,这使 ...
- 【小样本目标检测实践VOC格式】Frustratingly Simple Few-Shot Object Detection
文章目录 数据准备 数据来源 数据预处理 FSDet step1.配置环境,跑通demo.py step2.准备base model step3.制作自己的few-shot数据集 builtin.py ...
- 目标检测 YOLO v3 验证 COCO 模型
YOLO,是You Only Look Once的缩写,一种基于深度卷积神经网络的物体检测算法,YOLO v3是YOLO的第3个版本,检测算法更快更准. 本文源码:https://github.com ...
- Tensorflow框架:目标检测Yolo思想
Yolo-You Only Look Once YOLO算法采用一个单独的CNN模型实现end-to-end的目标检测: Resize成448448,图片分割得到77网格(cell) CNN提取特征和 ...
- [目标检测]YOLO原理
1 YOLO 创新点: 端到端训练及推断 + 改革区域建议框式目标检测框架 + 实时目标检测 1.1 创新点 (1) 改革了区域建议框式检测框架: RCNN系列均需要生成建议框,在建议框上进行分类与回 ...
- 目标检测 | YOLO系列超全讲解v1,v2,v3
前言 一.YOLOv1 1. 网络结构 2. 实现方法 3. 损失函数 4. 缺点 二.YOLOv2 1. 网络结构 2. 改进方法 3. YOLO9000 4. 网络训练细节 三.YOLOv3 1. ...
- 目标检测 YOLO系列算法
文章目录 1. YOLO算法 1.1 Yolo算法思想 1.2 Yolo的网络结构 1.2.1 网络输入 1.2.2 网络输出 1.7X7网格 2x30维向量 1.3 Yolo模型的训练 1.3.1训 ...
最新文章
- Pytorch之GPU加速计算问题以及model=model.to(device)
- 设计模式原则--单一职责原则
- metasploit 模块和位置
- 电商课题I:集群环境下业务限流
- docker虚拟机动态扩展内存
- EOS 智能合约源代码解读 (10)token合约“简介”
- 安卓scrollview无法滑动_安卓上线前,小光有话想对你们说
- python代码打开可执行文件_将自己的Python代码打包成exe文件(更换设备可运行的)...
- 控制器及其中$scope
- Java图形 图像与多媒体基础,十一. 图形、图像与多媒体1.绘图基础
- 异常(Exception )
- js中ajax的异步性
- flask json传输失败_GO小知识之实例演示 json 如何转化为 map 和 struct
- js prototype 原型对象
- excel随机数_软网推荐:Windows环境下快速生成随机数
- ie select option css,ie浏览器不支持select option italic
- Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day1】 —— 基础篇1
- 08-3 Kubernetes 调度器 - 污点
- balsamiq原型工具
- 3dmax 建模插件 Rappa Tools 3 笔记
热门文章
- 自然语言处理(NLP):国内会议
- python应用程序无法正常启动0xc000007b_应用程序无法正常启动0xc000007b怎么解决
- js对象的三种继承方式
- 图计算论文笔记--SPARC: Self-Paced Network Representation for Few-Shot Rare Category Characterization
- SNF快速开发平台MVC-集成了百度开源项目echars
- 英语3500词(16/20)trade主题(2022.1.28)
- 数据库的研究内容主要有哪些方面?
- jupyter notebook 拒绝连接 以及 查 IP
- AtCoder Beginner Contest 224题解 A-G
- postgresql中DROP OWNED BY user_name对普通用户和只读用户的区别