在yolov5框框中-画中心点-四个点位置坐标-中心点坐标.(保姆教程, 解决问题)

本文介绍了如何在Yolov5的detect.py文件中添加中心点坐标显示和打印功能,通过找到并修改`box_label`函数和plotting.py中的相关代码实现,适合机器视觉初学者参考。

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

机器视觉小白 ,  逐步在成长中 , 分享一下今日所学 (也是参考各位大佬总结  做的希望对你有所帮助)

找到需要打印的位置

1.在 yolov5-master项目中找到 detect.py 文件 

2.按键盘 Ctrl+F 进入查找功能,输入box_label  找到对应的函数。如下图所示:

3.按住 Ctrl+鼠标左键 点击box_label函数, 进入plotting.py 找到要添加的位置 (我的是在180+行左右)

代码在最后面

     代码包括了中心点绘制,  中心点坐标显示,  中心点坐标打印可根据自己需求选择.

4.回到detect.py运行即可.    (我是需要中心点 所以注释了几行代码,大家可以根据需求更改)

# 更改位置---------------▼▼▼---------------------------↓↓↓------------------------------

p1, p2 = (int(box[0]), int(box[1])), (int(box[2]), int(box[3]))
cv2.circle(self.im, ((p1[0] + p2[0]) // 2, (p1[1] + p2[1]) // 2), self.lw, (0, 0, 255), self.lw)
创建了个中心点坐标变量
Center = (((p2[0] - p1[0]) / 2 + p1[0]), ((p2[1] - p1[1]) / 2 + p1[1]))
cv2.putText(self.im, str(Center), ((p1[0] + p2[0]) // 2, (p1[1] + p2[1]) // 2), 0, self.lw / 3, txt_color,
            thickness=4, lineType=cv2.LINE_AA)
打印坐标信息
print("左上点的坐标为:(" + str(p1[0]) + "," + str(p1[1]) + "),右上点的坐标为(" + str(p2[0]) + "," + str(
    p1[1]) + ")")
print("左下点的坐标为:(" + str(p1[0]) + "," + str(p2[1]) + "),右下点的坐标为(" + str(p2[0]) + "," + str(
    p2[1]) + ")")
print("中心点的坐标为:(" + str((p2[0] - p1[0]) / 2 + p1[0]) + "," + str((p2[1] - p1[1]) / 2 + p1[1]) + ")")

#更改结束-----------------▲▲▲----------------------↑↑↑----------------------------------

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值