yolov5 目标检测代码

 

复制代码
import torch
import cv2
import time
import os

box_color = (0, 255, 0)

def get_milsecond():
    t = time.time()
    return (int(round(t * 1000)))

if __name__ == '__main__':
    # 模型
    model = torch.hub.load('F:\\openvino+yolov5\\yolov5-6.1', 'custom', 'yolov5s.pt', source='local') # yolov5s.pt best.pt

    url = 'bus.jpg' #'smoking.mp4'

    cap = cv2.VideoCapture(url)

    while True:
        ret, frame = cap.read()
        if not ret or frame is None:
            break

        starttime = get_milsecond()
        results = model(frame)
        pd = results.pandas().xyxy[0]

        for obj in pd.to_numpy():
            box_l, box_t = int(obj[0]), int(obj[1])
            box_r, box_b = int(obj[2]), int(obj[3])
            confidence = obj[4]
            classid = obj[5]
            classname = obj[6]
            frame = cv2.rectangle(frame, (box_l, box_t), (box_r, box_b), box_color, 2)
            frame = cv2.putText(frame, str(classid) + " " + str(classname) + " " + str(confidence), (box_l, box_t + 15), cv2.FONT_HERSHEY_SIMPLEX, 0.4, (0, 0, 255), 2)

        cv2.imshow('result', frame)
        endtime = get_milsecond();
        print('检测耗时:' + str(endtime - starttime))

        if cv2.waitKey(5) & 0xFF == ord('q'):
            break

    os.system('pause')
复制代码

 

posted @   CHHC  阅读(111)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示