深度学习Tricks,第一时间送达

目标检测 YOLOv5 常见的边框(bounding box )坐标表示方法

边框是在图像上标记目标的矩形。边框的标注有多种格式。每种格式都使用其特定的边框坐标表示。常见的包括Pascal VOC、COCO、YOLO。

pascal_voc
边框坐标编码是[x_min, y_min, x_max, y_max]
x_min和y_min表示边框左上角坐标,x_max和y_max表示边框的右下脚坐标。
例:[98, 345, 420, 462]

coco
边框坐标编码是[x_min, y_min, width, height]
表示左上角的坐标以及边框的宽度和高度。
例:[98, 345, 322, 117]

yolo
边框坐标编码[x_center, y_center, width, height],这4个值是经过数据规范化(normalized )的。
x_center, y_center表示边框的中心位置, width, height分别表示边框的宽度和高度
边框的宽度是322,高度是117

不规范化是

[(98 + (322 / 2)), (345 + (117 / 2)), 322, 117]=[259, 403.5, 322, 117]

规范化方法是

[259 / 640, 403.5 / 480, 322 / 640, 117 / 480]

最终结果是

[0.4046875, 0.840625, 0.503125, 0.24375].

问题1:

由于不同数据集中图片分辨率存在一定的差异性,比如自身数据集图片大小为1920×1080,发现在预测过程中bbox检测框太细,最终甚至无法看清楚实际预测值。

问题2:

部分小伙伴的检测框太粗而导致检测目标被遮挡,尤其是当目标较小并且很密集时,目标很容易就被框挡住,不容易观察整体检测效果如何。

解决方法:

在detect.py文件中找到下面这行:

# Process detectionsfor i, det in enumerate(pred):  # detections per imageif webcam:  # batch_size >= 1p, s, im0, frame = path[i], '%g: ' % i, im0s[i].copy(), dataset.countelse:p, s, im0, frame = path, '', im0s, getattr(dataset, 'frame', 0)p = Path(p)  # to Pathsave_path = str(save_dir / p.name)  # img.jpgtxt_path = str(save_dir / 'labels' / p.stem) + ('' if dataset.mode == 'image' else f'_{frame}')  # img.txts += '%gx%g ' % img.shape[2:]  # print stringgn = torch.tensor(im0.shape)[[1, 0, 1, 0]]  # normalization gain whwhif len(det):# Rescale boxes from img_size to im0 sizedet[:, :4] = scale_coords(img.shape[2:], det[:, :4], im0.shape).round()# Print resultsfor c in det[:, -1].unique():n = (det[:, -1] == c).sum()  # detections per classs += f"{n} {names[int(c)]}{'s' * (n > 1)}, "  # add to string# Write resultsfor *xyxy, conf, cls in reversed(det):if save_txt:  # Write to filexywh = (xyxy2xywh(torch.tensor(xyxy).view(1, 4)) / gn).view(-1).tolist()  # normalized xywhline = (cls, *xywh, conf) if opt.save_conf else (cls, *xywh)  # label formatwith open(txt_path + '.txt', 'a') as f:f.write(('%g ' * len(line)).rstrip() % line + '\n')if save_img or view_img:  # Add bbox to imagelabel = f'{names[int(cls)]} {conf:.3f}'############################
plot_one_box(xyxy, im0, label=label,
color=colors[int(cls)], line_thickness=6)

​各位小伙伴可自行调整line_thickness值大小,就可以改变预测框的粗细啦~


 

目标检测算法——YOLOv5/YOLOv7如何改变bbox检测框的粗细大小相关推荐

  1. 目标检测算法——YOLOv5/YOLOv7改进之结合GAMAttention

    >>>深度学习Tricks,第一时间送达<<< 目录 超越CBAM,全新注意力GAM:不计成本提高精度! (一)前沿介绍 1.GAM结构图 2.相关实验结果 (二) ...

  2. 目标检测算法——YOLOv5/YOLOv7改进之结合​RepVGG(速度飙升)

    >>>深度学习Tricks,第一时间送达<<< 目录 RepVGG--极简架构,SOTA性能!!! (一)前沿介绍 1.RepVGGBlock模块 2.相关实验结果 ...

  3. 目标检测算法——YOLOv5/YOLOv7改进之结合​PP-LCNet(轻量级CPU网络)

    >>>深度学习Tricks,第一时间送达<<< 目录 ​PP-LCNet--轻量级且超强悍的CPU级骨干网络!! (一)前沿介绍 1.PP-LCNet主要模块 2. ...

  4. ​目标检测算法——YOLOv5/YOLOv7改进之结合​SOCA(单幅图像超分辨率)

    >>>深度学习Tricks,第一时间送达<<< 目录 CVPR19 单幅图像超分辨率来了!!! (一)前沿介绍 论文题目:Second-order Attentio ...

  5. 目标检测算法——YOLOv5/YOLOv7改进之结合BiFPN

    >>>深度学习Tricks,第一时间送达<<< 论文题目:<EfficientDet: Scalable and Efficient Object Detec ...

  6. 目标检测算法——YOLOv5/YOLOv7改进|将IOU Loss替换为EIOU Loss

    >>>深度学习Tricks,第一时间送达<<< 论文题目:<Focal and Efficient IOU Loss for Accurate Boundin ...

  7. 目标检测算法——YOLOv5/YOLOv7改进结合轻量型Ghost模块

    >>>深度学习Tricks,第一时间送达<<< 论文题目:<GhostNet:More Features from Cheap Operations> ...

  8. 目标检测算法——YOLOv5/YOLOv7改进之结合无参注意力SimAM(涨点神器)

    >>>深度学习Tricks,第一时间送达<<< 目录 (一)前言介绍 1.摘要 2.不同注意力步骤比较 (二)相关实验 (三)YOLOv5结合无参注意力SimAM ...

  9. 目标检测算法——YOLOv5/YOLOv7改进之结合CBAM注意力机制

    深度学习Tricks,第一时间送达 论文题目:<CBAM: Convolutional Block Attention Module> 论文地址:  https://arxiv.org/p ...

最新文章

  1. 边缘计算 — 边缘网络
  2. 哈希表(散列查找)(c/c++)
  3. Handler 系列二:如何通信
  4. 2019天梯赛(总结-无题解)
  5. python安装成功第三方库但import出问题_解析pip安装第三方库但PyCharm中却无法识别的问题及PyCharm安装第三方库的方法教程...
  6. Struts1.x系列教程(1):用MyEclipse开发第一个Struts程序(二)
  7. ppt手动放映怎么设置_一键解决PPT的动画播放和动画排序问题!
  8. idea编辑区光标问题
  9. Linux 命令(70)—— size 命令
  10. python基础教程-Python基础
  11. c语言炒股软件公式,股票软件怎么使用指标选股公式
  12. python音乐播放器以及美观化_Python3.4的标准库
  13. July 16th 模拟赛C T2 奶牛晒衣服 Solution
  14. nacos实现服务注册与两种消费方式
  15. 在运行局域网中另一台电脑上的程序时,总是弹出“无法验证发行者,确定要运行此软件吗”
  16. # 电脑端的应用无法上传附件,点击没有反应怎么办?
  17. bat脚本删除目录下的文件
  18. 【物联网学习笔记——人人学IoT系列】二、IoT平台,能力开放
  19. 10行Python代码批量实现pdf转txt,word,提取表格到excel
  20. 被裁了,39 岁阿里 P9,攒下 1.5 亿....

热门文章

  1. MDX Step by Step 读书笔记 - 个人专题(一) 如何理解 MDX 查询中WHERE 条件如何对应Cube 中的切片轴 Slicer Axis...
  2. Eigen 库常用基本用法 备忘
  3. 基于tensorflow深度学习的猫狗分类识别
  4. Fuzzing test
  5. php全单词是什么意思,是php单词
  6. 【Spark】Could not locate executable null\bin\winutils.exe in the Hadoop binaries
  7. linux下的shell脚本,linux下的shell脚本的使用
  8. 一文详解 Android multidex 使用方式及实现原理
  9. 什么软件可以测试鬼,PP助手新奇App推荐 《鬼魂探测器》能抓鬼?
  10. python绘制生日快乐图片_python如何实现生日快乐代码