opencv——连接/控制工业相机(海康)

这篇具有很好参考价值的文章主要介绍了opencv——连接/控制工业相机(海康)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

使用Python/opencv连接及控制海康工业相机

1.自动抓取图像

通过接受前步传输的指令而实现相机的自动抓取图像

import cv2
from datetime import datetime
while True: # 循环以不断拍摄

    ## 此处添加发出指令的程序
    B = 1  # 假定前步给的指令/信号

    if B == 1: # 接收到捕捉图像指令
        cap = cv2.VideoCapture(1, cv2.CAP_DSHOW)
        cap.set(cv2.CAP_PROP_FRAME_WIDTH, 3072)  # 设置图像宽度
        cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 2048)  # 设置图像高度
        cap.set(cv2.CAP_PROP_FPS , 6)   # 设置帧率

        while True:
            reg, frame = cap.read()
            frame_1 = cv2.resize(frame, (640, 512))
            # 展示图片
            cv2.imshow('capture', frame_1)
            now = datetime.now()
            time = now.strftime("%Y-%m-%d,%H.%M.%S")
            filename = str(time) + '.jpg'  # filename为图像名字,将采集时间作为编号命名保存的截图
            cv2.imwrite('D:\\Project\\picture' + '\\' + filename, frame_1)  # 截图 前面为放在桌面的路径 frame为此时的图像
            print(filename + '保存成功')  # 打印保存成功
            break

        # 释放资源
        cap.release()
        cv2.destroyAllWindows()
        B = 0 # 等待下一次的指令
    else:
        print("未收到拍摄指令,等待下一次指令")
        B = 0 # 等待下一次的指令
2.定时抓取图像

通过自定义设置延时时间而实现相机的定时抓取图像

import cv2
import time

cap = cv2.VideoCapture(1, cv2.CAP_DSHOW)
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 3072)  # 设置图像宽度
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 2048)  # 设置图像高度
cap.set(cv2.CAP_PROP_FPS , 6)   # 设置帧率

i = 0  # 定时装置初始值
a = 1  # 截图数量控制

while True:
    i = i + 1
    reg, frame = cap.read()
    frame_1 = cv2.resize(frame, (640, 512))
    # 展示图片
    cv2.imshow('capture', frame_1)
    time = time.strftime("%Y-%m-%d,%H.%M.%S", time.localtime())
    if i == 50:  # 定时装置,定时截屏,可以修改。
        filename = str(time) + '.jpg'  # filename为图像名字,将采集时间作为编号命名保存的截图
        cv2.imwrite('D:\\Project\\picture' + '\\' + filename, frame_1)  # 截图 前面为放在桌面的路径 frame为此时的图像
        print(filename + '保存成功')  # 打印保存成功
        i = 0  # 清零
        a = a + 1
        if a > 20:  # 最多截图20张(自定义) 然后退出
            break

    if cv2.waitKey(1) & 0xff == ord('q'):
        break
# 释放资源
cap.release()
cv2.destroyAllWindows()
3.特定按键控制抓取图像

通过自定义特定按键而实现相机的人为控制抓取图像

import cv2
import time
cap = cv2.VideoCapture(1,cv2.CAP_DSHOW)
# cap.set(cv2.CAP_PROP_POS_FRAMES,50)
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 3072)  # 设置图像宽度
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 2048)  # 设置图像高度
cap.set(cv2.CAP_PROP_FPS , 6)   # 设置帧率
i = 1

# 也可写成while True
while(1):
    """
    ret:True或者False,代表有没有读取到图片
    frame:表示截取到一帧的图片
    """
    ret,frame = cap.read()
    frame_1 = cv2.resize(frame, (640, 512))
    # 展示图片
    cv2.imshow('capture',frame_1)
    time = time.strftime("%Y-%m-%d,%H.%M.%S", time.localtime())
    # 保存图片
    k=cv2.waitKey(1)
    if k==ord('k'): #自定义按键
        cv2.imwrite(r"D:\Project\picture\\"+ str(time) + ".jpg",frame_1) #存储路径
        i = i + 1
    if k==ord('q'):
        break
#释放对象和销毁窗口
cap.release()
cv2.destroyAllWindows()

以上就是三种实现Python/opencv工业相机控制的方法啦!文章来源地址https://www.toymoban.com/news/detail-661962.html

到了这里,关于opencv——连接/控制工业相机(海康)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 海康工业相机SDK + OpenCV实例(4):相机参数设置详解

    前文海康工业相机SDK + OpenCV实例(3):相机初始化Bug调试讲述了相机初始化可能遇到的问题。本文讲解海康工业相机设置参数的相关接口,其中,会重点讲解 自动曝光时间调整亮度 , 图像对比度调整 。 海康SDK提供一系列参数设置的接口,本节主要讲解几个万能接口的使用,

    2024年02月11日
    浏览(70)
  • 海康威视监控相机的SDK与opencv调用(非工业相机)

    本篇主要对海康威视的监控相机的SDK回调进行研究,并于opencv结合,保存图像,以供后续其他处理,开发语言为C++ 2.1 海康SDK介绍 海康SDK下载地址 根据自身编译环境,下载对应的SDK,需要注意的是,不要和工业相机SDK相混淆,工业相机好像是MVS是什么玩意儿,现在暂时没研究

    2024年02月04日
    浏览(60)
  • C++下OPENCV驱动调用海康GigE工业相机

    第一章 Ubuntu22下OpenCV4.6.0+contrib模块编译安装 第二章 ubuntu22下C++ kdevelop环境搭建:OpenCV示例 第三章 C++下OPENCV驱动调用海康GigE工业相机 在前两章内笔者详细叙述了如何编译以及加载opencv库,本文将从opencv出发,在linux系统下利用海康工业摄像机的SDK完成基于海康工业相机的o

    2024年02月06日
    浏览(52)
  • (三)Qt+OpenCV调用海康工业相机SDK抓拍示例

    提示:这里是该系列文章的所有文章的目录 第一章: (一)Qt+OpenCV调用海康工业相机SDK示例开发 第二章: (二)Qt多线程实现海康工业相机图像实时采集 第三章: (三)Qt+OpenCV调用海康工业相机SDK抓拍示例 在这系列文章中,讲述了Qt下结合OpenCV与海康工业相机的使用,对

    2024年04月08日
    浏览(85)
  • (一)Qt+OpenCV调用海康工业相机SDK示例开发

    提示:这里是该系列文章的所有文章的目录 第一章: (一)Qt+OpenCV调用海康工业相机SDK示例开发 第二章: (二)Qt多线程实现海康工业相机图像实时采集 近期在Qt环境下进行海康工业相机的使用开发,发现海康提供的示例没有Qt的demo,而其中有基于MFC框架的示例,所以在这

    2024年02月03日
    浏览(91)
  • 海康工业相机SDK连接demo,Qt界面显示

    在机器视觉开发过程中,经常使用工业相机采集图像,以下采用海康机器人提供的SDK开发demo,使用语言C++,界面显示使用的Qt。SDK来自MVS 3.1版本中附属的Development文件夹。完整的项目链接地址为: 海康工业相机SDK的Demo源代码C++版本 附录海康工业相机的命名方式: 海康工业相

    2024年02月13日
    浏览(54)
  • 海康工业相机SDK基于C#关于IO输入输出的控制

    海康工业相机功能模块sdk提供了很多相机的接口,本文主要介绍下相机的io相关的控制。例如在通过io输入触发相机拍照。通过io输出传递拍照成功,或者存图成功的信号等。 IO输入的主要作用就是,相机通过IO管脚,收到1个IO信号,来触发相机拍照; 触发模式:TriggerMode设置

    2024年02月03日
    浏览(223)
  • 关于海康工业相机连接电脑时出现链接速度低于1Ggps解决办法

    一、电脑端网卡配置 打开电脑设置——网络和Internet——高级网络设置——更改适配器选项——双击以太网 网络和Internet点击属性、打开配置 点击配置 点击高级 巨型帧9KB 连接速度和双工模式_1.0Gbps全双工 电源管理取消勾选 二、MVS相机软件参数设置 将相机连接至电脑 打开

    2024年02月02日
    浏览(72)
  • 【项目实践】海康威视工业相机SDK开发小白版入门教程(VS2015+OpenCV4.5.1)

      由于学校要求暑期实习,于是找了一位学长开的公司,接了一个项目,是 对海康威视工业相机(MV_CE200_10GM)进行二次开发,读取其图像并做分析处理。 于是花了一点时间查找的相关资料并记录一些 入门要点 。   想先说说一些 “尝试授人与渔” 的话,也是自己的一

    2024年02月04日
    浏览(49)
  • 工业4.0 - Industrial 4.0领域的研究已经形成了一个完整体系,涉及机器人技术、生物技术、信息技术、工业控制系统、计算机视觉、大数据、人工智能、机器学习、人工神经网络等众多领域。

    作者:禅与计算机程序设计艺术 5月30日,由德国汉堡消费品有限公司发布了2020年度“汉堡行业报告”,预测,2020 年“汉堡市场规模将达到 2000亿美元”。这种估算引起轰动,而作为全球食品巨头,汉堡行业的估值也已超过了5000亿美元。与此同时,全球的“工业4.0”领域也走

    2024年02月10日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包