yolov5实时目标检测,yolov5 目标跟踪
YOLOv5是一系列在椰子树数据集上预训练的对象检测架构和模型,下面这篇文章主要给大家介绍了关于如何使用yolov5输出检测到的目标坐标信息的相关资料,需要的朋友可以参考下
找到detect.py,在大概113行,找到绘图框
#写入结果
对于*xyxy,conf,cls in reversed(det):
如果save_txt: #写入文件
xywh=(xyxy 2 xywh(火炬。张量(xyxy)).视图(1,4))/gn).视图(-1)。tolist() #规范化xywh
用open(txt_path . txt , a )作为f:
f.write((%g * 5 \n) % (cls,*xywh)) #标签格式
如果保存_img或view_img: #将视频添加到图像
标签= % s %。2f %(names[int(cls)],conf)
plot_one_box(xyxy,im0,label=label,color=colors[int(cls)],line_thickness=3)
点进率鼠标点击,进入general.py,并自动定位到绘图框函数,修改函数为
定义plot_one_box(x,img,color=无,label=无,line _ thickness=无):
#在图像图像上绘制一个边界框
tl=线条厚度或四舍五入(0.002 *(img。形状[0]img。形状[1])/2)1 #线条/字体粗细
color=color or [random.randint(0,255) for _ in range(3)]
c1,c2=(int(x[0]),int(x[1])),(int(x[2]),int(x[3]))
cv2.rectangle(img,c1,c2,color,thickness=tl,lineType=cv2 .LINE_AA)
打印(左上点的坐标为:( str(c1[0]), str(c1[1])),右下点的坐标为( str(c2[0]), str(c2[1])))
即可输出目标坐标信息了
附:python yolov5检测模型返回坐标的方法实例代码
python yolov5检测模型返回坐标的方法直接搜索以下代码替换下
如果保存_img或view_img: #将视频添加到图像
label=f " { names[int(cls)]} { conf :2 f } "
c1,c2=(int(xyxy[0]),int(xyxy[1])),(int(xyxy[2]),int(xyxy[3]))
打印(左上点的坐标为:( str(c1[0]), str(c1[1])),右下点的坐标为( str(c2[0]), str(c2[1])))
return [c1,c2]
if __name__==__main__:
parser=argparse .ArgumentParser()
parser.add_argument( - weights ,nargs= ,type=str,default=yolov5s.pt ,help=model.pt path(s))
parser.add_argument( - source ,type=str,default=data/images ,help=source) # file/folder,0表示网络摄像机
parser.add_argument( - img-size ,type=int,default=640,help=推断大小(像素))
解析器。add _ argument(-conf-thres ,type=float,default=0.25,help=对象置信度阈值)
解析器。add _ argument(-iou-thres ,type=float,default=0.45,help= NMS的借据阈值)
parser.add_argument( - device ,默认= ,help=cuda设备,即0或0,1,2,3或CPU’)
parser.add_argument( - view-img ,action=store_true ,help=display results )
parser.add_argument( - save-txt ,action=store_true ,help=将结果保存到*。txt’)
解析器。add _ argument(-save-conf ,action=store_true ,help=在-save-txt标签中保存信心)
parser.add_argument( - nosave ,action=store_true ,help=不保存图像/视频)
parser.add_argument( - classes ,nargs= ,type=int,help=按类过滤:-类0或-类别0 2 3’)
parser.add_argument( -不可知-nms ,action=store_true ,help=不可知类NMS’)
parser.add_argument( - augment ,action=store_true ,help=augmented inference )
parser.add_argument( - update ,action=store_true ,help=更新所有模型)
parser.add_argument( - project ,default=runs/detect ,help=将结果保存到项目/名称)
parser.add_argument( - name ,default=exp ,help=将结果保存到项目/名称)
parser.add_argument( - exist-ok ,action=store_true ,help=现有项目/名称好吧,不递增)
opt=parser.parse_args()
check _ requirements(exclude=( pycocotools , thop ))
opt.source=data/images/1/
结果=检测()
打印(最终检测结果: ,结果);
总结
关于如何使用yolov5输出检测到的目标坐标信息的这篇文章到此为止。有关yolov5输出目标坐标的更多信息,请搜索热门IT软件开发工作室之前的文章或继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。