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调用海康工业摄像头就完成了!大家有什么问题,欢迎在评论区交流!!

相关推荐
想取一个与众不同的名字好难5 小时前
在android studio上使用rknn模块下面的yolov8_pose模型
yolo
春末的南方城市20 小时前
CineMaster: 用于电影文本到视频生成的 3D 感知且可控的框架。
人工智能·数码相机·计算机视觉·语言模型·aigc·图像生成
Rverdoser1 天前
在 Centos7 上部署 ASP.NET 8.0 + YOLOv11 的踩坑实录
后端·yolo·asp.net
知来者逆1 天前
YOLOv12 ——基于卷积神经网络的快速推理速度与注意力机制带来的增强性能结合
深度学习·yolo·目标检测·计算机视觉·视觉检测·yolov12
徐行tag1 天前
PnP——根据3D与2d图片估计相机运动
人工智能·数码相机·3d·视觉slam
向哆哆1 天前
YOLOv8架构中的SAConv空洞卷积机制:性能优化与未来发展方向
yolo·yolov8
大学生毕业题目2 天前
毕业项目推荐:基于yolov8/yolov5/yolo11的番茄成熟度检测识别系统(python+卷积神经网络)
人工智能·python·深度学习·yolo·cnn·番茄成熟度
桑榆肖物2 天前
在 Centos7 上部署 ASP.NET 8.0 + YOLOv11 的踩坑实录
后端·yolo·asp.net
JANGHIGH3 天前
标定系列——基于标定板的相机内参与LiDAR-相机外参联合标定方法
数码相机
一勺汤3 天前
YOLO11改进-模块-引入混合结构模块Mix Structure Block 提高多尺度、小目标
yolo·目标检测·改进·魔改·yolo11·yolov11·yolo11改进