YOLOv5调用海康工业相机实时检测

目录

一、调用海康工业摄像头

[1.1 DirectShow插件安装](#1.1 DirectShow插件安装)

[1.2 查找摄像头编号](#1.2 查找摄像头编号)

[1.3 摄像头调用测试](#1.3 摄像头调用测试)

二、修改YOLOv5相关参数

[2.1 detect.py修改](#2.1 detect.py修改)

[2.2 datasets.py修改](#2.2 datasets.py修改)


一、调用海康工业摄像头

现在可直接利用cv2.VideoCapture()接口调用海康机器人工业相机,首先在官网下载机器视觉工业相机客户端MVS【免费】机器视觉工业相机客户端MVS4.3.2版本资源-CSDN文库,进行安装。

1.1 DirectShow插件安装

我安装在D盘里的,但是D盘路径下没有,我在C盘这个路径下找到的,我建议就在C盘运行,因为我复制到D盘运行并不起效,这也导致我尝试了很久,最终在C盘运行后完成。

右键InstallDSSvc_x64.bat,以管理员身份运行,运行后显示终端,然后会自动关闭。至此DirectShow安装完成

1.2 查找摄像头编号

根据路径查找graphedt.exe,然后双击运行graphedt.exe文件。

进入页面后根据顺序点击,所展示的就是你摄像头编号顺序,从0开始计数。(但是我感觉这个顺序不是很准确,我的"0"是USB那个摄像头,"1"才是海康工业相机,仅供参考,大家可以多尝试一下。)

1.3 摄像头调用测试

完成上述工作后,可使用如下代码进行测试,看是否能正确调用工业相机。

python 复制代码
import cv2

cap = cv2.VideoCapture(1)  # 调用摄像头'0'一般是打开电脑自带摄像头,'1'是打开外部摄像头(只有一个摄像头的情况)

if False == cap.isOpened():
    print(0)
else:
    print(1)

cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1280)  # 设置图像宽度
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 1024)  # 设置图像高度
cap.set(cv2.CAP_PROP_FPS, 20)  # 设置帧率
# 显示图像
while True:
    ret, frame = cap.read()
    # print(ret)  #
    ########图像不处理的情况
    frame_1 = cv2.resize(frame, (640, 512))
    cv2.imshow("frame", frame_1)

    input = cv2.waitKey(1)
    if input == ord('q'):
        break

cap.release()  # 释放摄像头
cv2.destroyAllWindows()  # 销毁窗口

运行上面的代码千万要注意修改你图像大小,图像大小可在MVS终端进行查看,在运行测试代码时应断开MVS终端连接,避免冲突。

如果测试代码成功运行,那么基本工作就完成了!!!

二、修改YOLOv5相关参数

2.1 detect.py修改

将parse_opt中的source修改为相机编号,我这里设置为1。

2.2 datasets.py修改

对utils/datasets.py文件进行修改,定位到LoadStreams类,设置图像大小,注意图像大小一定要是32的倍数,同样和MVS终端上要对应。

至此YOLOv5调用海康工业摄像头就完成了!大家有什么问题,欢迎在评论区交流!!

相关推荐
学习3人组7 小时前
YOLO模型集成到Label Studio的MODEL服务
yolo
孤狼warrior7 小时前
YOLO目标检测 一千字解析yolo最初的摸样 模型下载,数据集构建及模型训练代码
人工智能·python·深度学习·算法·yolo·目标检测·目标跟踪
PPPPPaPeR.9 小时前
光学算法实战:深度解析镜片厚度对前后表面折射/反射的影响(纯Python实现)
开发语言·python·数码相机·算法
水中加点糖9 小时前
小白都能看懂的——车牌检测与识别(最新版YOLO26快速入门)
人工智能·yolo·目标检测·计算机视觉·ai·车牌识别·lprnet
前端摸鱼匠21 小时前
YOLOv8 环境配置全攻略:Python、PyTorch 与 CUDA 的和谐共生
人工智能·pytorch·python·yolo·目标检测
2501_941329721 天前
改进YOLOv8-seg-act__鸡只计数检测实战
yolo
weixin_395448911 天前
mult_yolov5_post_copy.c_cursor_0205
c语言·python·yolo
王锋(oxwangfeng)1 天前
YOLOWorld 实现开集障碍物检测
yolo
喵叔哟1 天前
02-YOLO-v8-v9-v10工程差异对比
人工智能·yolo·机器学习
2501_941333102 天前
数字识别与检测_YOLOv3_C3k2改进模型解析
人工智能·yolo·目标跟踪