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

相关推荐
song150265372986 小时前
M12 X-Code 8芯 PoE 相机/远程IO 针脚定义完整详解
数码相机
皓悦编程记1 天前
【免费数据集010期】Grape Leaf Diseases 葡萄叶病害检测数据集(4类):面向智慧农业的叶片病害识别基准
yolo·目标检测·视觉检测·数据集·yolo26
田里的水稻2 天前
FA_数字相机成像原理、分级和分类
运维·数码相机·机器人·自动驾驶
Python图像识别-12 天前
基于yolov8的钢铁缺陷检测系统-2027毕业版(UI界面+Python项目源码+模型+标注好的数据集)
开发语言·python·yolo
1024+2 天前
YOLO 转 RKNN 识别率降低调优操作手册(新手篇)
android·yolo·kotlin
guo_xiao_xiao_3 天前
YOLOv11道路桥梁裂缝与坑洼目标检测数据集
人工智能·yolo·目标检测
gaosushexiangji3 天前
基于多视角高速成像与体素建模的特斯拉线圈放电电弧三维重建实验研究
数码相机
皓悦编程记3 天前
【YOLO26系列】基于YOLO26的面部表情检测系统【python源码+Pyqt5界面/WEB+数据集+训练代码】
人工智能·yolo·目标检测·开源·yolo26
神经智研社3 天前
ROS2-16章:机器人仿真软件Gazebo
数码相机
中微极客3 天前
剪枝与量化:让YOLO在边缘设备上高效部署
算法·yolo·剪枝