yolov5 取下边中心点 (解决问题 保姆教程)

这篇文章描述了如何在Python的detect.py文件中,通过cv2.circle函数添加一个中心点标记,具体操作是在给定坐标范围内计算并绘制圆圈。这个功能通常用于图像处理或计算机视觉应用中,如对象检测或标注。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

创建p1,p2

p1, p2 = (int(box[0]), int(box[1])), (int(box[2]), int(box[3]))

画下边中心点

cv2.circle(self.im, ((p1[0] + (p2[0] - p1[0]) // 2), p2[1]), self.lw, (0, 0, 255), self.lw)

这两行代码加在 datect.py 文件中

在detect.py 文件中 Ctrl+F 搜索bolx_labe 

Ctrl+鼠标左键 进入  找到下位置添加即可

运行detect.py 效果如图

### YOLOv5 输出目标检测中心点坐标 对于YOLOv5输出的目标检测结果,获取每个检测框的中心点坐标可以通过解析模型预测的结果来实现。通常情况下,YOLOv5会返回一系列边界框及其对应的类别和置信度分数。 假设已经获得了YOLOv5的检测结果`results`对象,在Python环境中可以按照如下方式计算并提各个检测框的中心点坐标: ```python import torch def get_center_points(results): # 提所有的检测框信息 detections = results.xyxy[0] # xyxy表示左上角右下角坐标 center_points = [] for detection in detections: x_min, y_min, x_max, y_max, conf, cls = detection # 计算中心点坐标 center_x = (x_min + x_max) / 2.0 center_y = (y_min + y_max) / 2.0 center_points.append((center_x.item(), center_y.item())) return center_points ``` 上述代码片段定义了一个名为`get_center_points`的函数[^1],该函数接收由YOLOv5产生的`results`作为输入参数,并遍历每一个检测框以计算其中心位置。注意这里的`detections`是从`results.xyxy[0]`获得的数据结构,它包含了图像中的所有检测结果;而`(x_min, y_min)`代表矩形区域的左上角顶点,`(x_max, y_max)`则是右下角顶点。通过简单的几何运算即可求得中心点位置。 为了进一步处理这些数据或将它们保存到文件中,可以根据需求调整此逻辑。例如,想要把得到的中心点写入CSV文件,则可以在循环内部加入相应的文件操作语句。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值