收藏 分销(赏)

对海康GigE相机以Python程序连接方法的 研究.pdf

上传人:自信****多点 文档编号:568120 上传时间:2023-12-28 格式:PDF 页数:4 大小:1.29MB
下载 相关 举报
对海康GigE相机以Python程序连接方法的 研究.pdf_第1页
第1页 / 共4页
对海康GigE相机以Python程序连接方法的 研究.pdf_第2页
第2页 / 共4页
对海康GigE相机以Python程序连接方法的 研究.pdf_第3页
第3页 / 共4页
亲,该文档总共4页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、82ELECTRONIC ENGINEERING&PRODUCT WORLD 2023.8$网络连接电子产品世界Design设计应用&Application对海康GigE相机以Python程序连接方法的研究Research on the method of using Python programs to connect and use Haikang GigE cameras张雍斌,李 鑫,顾 彬(国网上海市电力公司,上海200235)摘 要:由于GigE相机在传输数据方面的特殊性,不同厂家需要自己设计自己的连接端口,这使得各常见提供的连接程序各不相同,同时由于多数情况下工业会采用C或C+程

2、序来编写控制软件,一般厂家对GigE相机连接Python程序的软硬件方法虽然会进行开发,但是在实际操作中缺少详细的说明文档以及足够的开发实例。本文介绍了使用海康GigE相机与Python程序进行连接使用的项目经验,可以为同类型的任务提供参考。关键词:GigE接口;Python;通信0 引言在工业上的视觉处理任务中,工业相机作为视觉任务的起点,起到采集图像数据的作用,肩负重要的职能。工业相机的款式多种多样,其中,区分它们的种类重要的一点就是相机接口标准。按照接口标准不同,工业相机常用的数字接口有 GigE、Camera Link、USB3.0、CoaXPress 等类型,不同相机接口在数据传输方

3、式、传输速度、可靠性等方面并不相同,其中 GigE 接口可以满足廉价的长距离高传输量的数据传输,相比于其他传输效果性价比更高,因此在工业上得到广泛应用。但GigE 相机相比于其他类型通信结构不同,无法被常见的通用调用指令所使用,需要安装专业的驱动程序,且对硬件有特殊的要求。为了实现视觉处理功能,需要将工业相机连接至计算机主机上,对软硬件进行设计与配置,以达到传输数据与指令的效果。这一部分的驱动程序一般由厂家提供1。将相机与计算机连接后,还需要将图像数据导入控制软件中,从而自动获取图像数据,进行视觉处理,同时为了根据实际情况进行修正,还需要实现让控制软件输出控制指令和参数到工业相机的职能。由于

4、GigE 相机在传输数据方面的特殊性,不同厂家需要自己设计自己的连接端口,这使得各常见提供的连接程序各不相同,同时由于多数情况下工业会采用 C 或 C+程序来编写控制软件,一般厂家对 GigE 相机连接 Python 程序的软硬件方法虽然会进行开发,但是在实际操作中缺少详细的说明文档以及足够的开发实例2。本文介绍了使用海康 GigE 相机与 Python 程序进行连接使用的项目经验,可以为同类型的任务提供参考。1 海康GigE相机的硬件连接与驱动配置1)对于 GigE 相机来说,其特殊的接口结构使得其在硬件连接方面具有一定优势,具体的硬件连接方案有两种:使用 1 根电缆线将 GigE 相机与网

5、络交换机或者其他有网络交换机功能的设备连接起来,供电由交换机进行,然后将交换机与上位计算机连接,进行数据传输。这样做的好处是相机只需要连接一根线就可以同时满足供电和传输数据的要求,当相机安装在复杂的现场时,单线传输能够有效降低布线成本,提高系统的稳定性。另一方面,单线传输的方法可以将多个相机连接在同一个交换机上,再由交换机对主机进行沟通,扩张接口比较容易,缺点是该方法对电缆线的使用要求较高,需要 2023.8电子产品世界设计应用网络连接Design&Application能够同时完成两种传输要求的电缆线,且一台相机使用的可用带宽有限,约为 125 Mbyte/s;2)使用一根电缆线连接 Gig

6、E 相机与计算机用于传输数据,再使用一根电源线连接 GigE 相机与电源,此种连接方式的成本要求低,对电缆的可靠性要求更低,传输数据的带宽不会受到严格限制,但增加一根线提高了布线难度,降低了可靠性。由于本项目对连接线的布线要求不高,出于节约成本的考虑,本次项目中采取了两根线连接 GigE 相机的方案。除了与计算机主机的连接,还要考虑相机本身的工作问题,为了保证相机的正常工作,一方面需要保证电源的安全稳定供应,另一方面需要配备充足的光照,且尽量不要受到外界光照过强的影响。在传输方面,传输电缆需要保证至少能够传输千兆大小的数据,从而使得图像数据能够稳定传输。为了使用 GigE 相机,需要在海康官网

7、下载对应的驱动程序并进行安装,其中不同客户端所使用的安装程序是不同的,且安装方式有一定差别。需要注意的是Windows 客服端的驱动程序在安装时会自动设置网卡为巨帧传输,Linux 系统则需要自己进行设置,可以选择在每次使用之前进行设置,也可以直接对常用网卡进行永久设置。图1 相机连接图安装后按照说明书配置 IP 地址,并使用海康提供的控制软件进行调试,保证能够顺利连接工作。具体的连接过程需要经过如下阶段:1)确认连接。对相机连接,首先需要确认物理连接成功,此时需要先查看相机上的指示灯,如果其由红色变为蓝色,说明电缆和电源线正常连接,否则需要检查连线;2)设置 IP 地址。如指示灯没有问题,开

8、始设置计算机中与相机连接的本地连接端口,将其 IP 设定为固定值。之后打开 MVS 控制软件,等待列表上出现对应相机。首次连接需要较常的时间,之后再使用连接会很快。出现相机后,此时应当显示黄色三角,意为 IP 地址不属于同一网段,不能正常通信。这时双击相机即可修改相机 IP,将相机 IP 设置为同一网段的不同 IP 地址即可。如果连接顺利,相机将变为可用状态;3)连接调试。当相机为可用状态时可以进行调试了。双击相机,即可正常打开相机界面,通过控制界面可以完成打开相机、设置相机参数等任务,以检测是否能够正常通信。需要注意的是相机默认设置曝光时间为 0,因此刚打开时相机画面是漆黑的,设置一个正常的

9、曝光时间即可。使用控制软件能够较为方便地测试相机状态,建议在每次对相机连接参数进行修改(如 IP 地址)以及在新计算机连接相机时先使用控制软件进行测试。2 海康GigE相机的Python程序连接使用连接调试完成后,接下来就可以使用 Python 程序调取运行相机了。GigE 相机的调取无法通过常用包如opencv 完成,因此要依赖海康专门开发的用于调取运行Gige 相机的 Python 包进行连接使用。海康给出了一些简单的实例程序演示如何利用 Python 包中的函数使用相机,海康给出的实例程序中,调取并使用相机要经过如下阶段3:2.1 发现并连接设备程序首先需要检索并连接设备,这个阶段首先是

10、找寻可连接的设备,输出可连接设备的信息,之后根据输入的需要连接的设备 IP 进行连接。海康给出了几种连接方式,包括直接使用 IP 连接,或者查找同一网段下可用于连接的相机,根据查找到的参数连接。2.2 打开设备并设置参数当确定了连接的设备后,接下来为了打开相机,首84ELECTRONIC ENGINEERING&PRODUCT WORLD 2023.8$网络连接电子产品世界Design设计应用&Application先要创建相机实例和对应的句柄,这是使用程序对相机进行操作的必要载体,1 个相机实例同时只能打开 1 个相机。将相机实例与相机绑定后,就可以打开设备。为了获取需要的图片数据,还需要对

11、相机的参数进行设置,实例程序中给出的调整包括探测网络最大包大小,设置触发模式和获取数据包大小。其中获取数据包大小对后面的获取图像数据有很大帮助。2.3 获取图片数据GigE 相机获取图片数据的方式是取流,即向相机发送信号,获取最近一帧的图片数据传回。为了获取图片数据,首先要打开取流,此时相机才开始启动。之后再获取所需的数据,主要包括两部分,一部分是图像数据的本体,另一部分是图像数据的参数,包括类型大小等。直接获取的图像数据是 1 个单一的矩阵数据,如果要显示出真实数据需要根据参数信息对其进行转换。获取图像数据的方式分为主动取流和被动取流两种,主动取流会向相机发送信号,之后获得传回的下一帧数据,

12、而被动取流不发送信号,被动接受下一帧数据。实际使用起来效果差距不大。实例还提供了使用句柄进行连续取图片的方法,可以提高获取图片的速度,连续取图片就可以达到视频的效果。2.4 停止获取并关闭设备使用完相机后,最后需要关闭相机,如果对相机直接采用断电等操作,会使一部分已经设置过的参数直接失效,下次需要重新设置。关闭设备主要分为三步,首先停止取流,不再获取图片,之后关闭设备,最后如果使用了句柄还需要销毁句柄。示例程序仅仅是对功能进行一定展示,为了实际使用需要在原有的实例基础上针对项目要求进行改进。要注意的是使用相机需要调用海康提供的包文件,这些包文件可以移动至任意位置。通信程序依赖于包文件,需要对包

13、文件进行调用,比较简单的方法是将程序与包文件以与实例程序类似的关系放置,调用起来比较简单。在调用了包文件后,主要改动如下:1)连接阶段将 IP 地址确定为设备使用的地址进行连接。可以使用事先设定好的 Ip 地址进行连接,也可以读取可连接设备的 IP 进行连接;2)设置参数阶段的改变。在设置参数阶段,比较重要的改变包括对曝光时间及一些必要参数的预设值,以及改变图像的输入格式。为了获得所需的图像,需要对相机的一些参数进行设置,如白平衡、曝光时间、亮度等。海康提供了修改参数的函数,但其接口比较简单,不方便使用,故需要对其编写专门的函数,以提高调用速度。改变图像的输入格式更为重要。预设的图像格式为黑白

14、图像,往往不能满足项目要求,具体图像要求要根据项目需要来设置。由于图像在不同格式下的数据大小和意义不同,对图像数据的操作也需要根据输入格式进行对应的改变;3)获取所需的图片。示例程序给的处理图片的功能并不完善,为了获取所需的图片需要对其进行改造。首先是添加图片转换的模块,新得到的图片数据并没有进行转换,首先要将其转换成常见的图片格式,这一情况下要根据所读取的图像类型而定,根据官方提供的图像类名对应表,根据相机结构体读取出的实际类型,对图像类型进行对应的格式变化。为了方便接下来的处理,还应在图像转换后添加格式替换的函数,转换为统一的格式。获得对应的图像后,要根据实际需求进行操作,最常见的操作就是

15、保存图片和展示图片,这些操作使用常用的包即可完成,为了更好地使用图像,可以在调用时对格式大小进行一定调整。为了完成实时操作,还需要调用上一阶段改变系统参数的函数,如此做到实时检测调控。如果需要对获取图片的情况做到实时预览,需要使用句柄创建进程进行操作。需要注意的是相机采集图像的频率与获取图片没有关系,因此同时使用多个线程获取图片并不会影响到相机的使用效率。4)关闭设备的过程不用调整太多,但是如之前使用了句柄方法实现多线程读取照片的功能后,应在关闭阶段加入结束句柄的语句,做到安全退出。在使用相机时,还有一些要点需要注意。1)句柄使用关闭后应当重启再使用,否则可能发生未知的错误;2)Windows

16、 系统和 Linux 系统中海康提供的包文 2023.8电子产品世界设计应用网络连接Design&Application件不同,不能混用,但可以调用相同的函数,因此在不使用冲突函数的情况下程序可以在两端同时使用。海康的 Linux 示例程序中使用了 Windows 不提供的包,这一部分在 Window 上是不能使用的。如果需要在另一个平台上使用程序,可以使用一些不会造成冲突的函数,之后替换掉对应位置的包文件,即可正常运行。或者可以选择调用绝对位置的包,以避免不互通的问题。3)有的包函数会输出一些不想要其输出的信息,可以进入对应的包函数中进行更改。4)有时候当相机在同一台主机上连接后换一个接口连

17、接,在程序中可能会出现两个相机同时出现的情况,这种状况下只需要连接第一个编号的相机即可,或者根据所连接的端口来判断应当连接哪一个相机。在程序设计完成后,对该方法进行了测试,程序能够完成之前所设计的全部功能,且之后使用该方法多次获取了 3 000 多张图片,该程序成功获取了图片,达到了预想的处理速度。图2 图像采集现场3 结束语本文设计了海康 GigE 相机使用 Python 程序的一种连接使用方法,该方法调用海康 GigE 相机,能够完成获取图像并显示图像,修改相机设置等功能,在实际测试过程中能够较好的完成任务,在资料较少的情况下,对于海康 GigE 相机使用 Python 程序调用有一定的借

18、鉴作用。该研究对于多线程图片的获取、多相机同时调用、多线程同时使用同一相机等高级操作还比较缺乏,在之后的研究中,还需要继续研究更好更快地调用方式,提高获取图像的速度性能。参考文献:1 张仰月.智能相机应用软件设计及GigE Vision协议实现D.南京:南京邮电大学,2019.2 阮晖雄.GIGE工业CIS相机关键技术的研究D.成都:电子科技大学,2022.3 罗潇磊.基于GigE接口的轻小型相机研究D.上海:中国科学院研究生院(上海技术物理研究所),2016.(上接第74页)技术细节、预警的准确性和可靠性还可以得到进一步的提高和优化,如结合老年人的其他生理指标进行综合判断,在阈值优化等场景采

19、取灵活的调整策略,又如基于深度学习的夜间离床预测模型等,以进一步提高老年人夜间离床的监测和预警效果。参考文献:1 朱建明,徐佩梁,史永梅,等.我国老龄化社会状况分析与对策研究J.经济师,2023(4):295.2 李强,艾静蕊,徐书彤.基于物联网技术的老人居家安全管理系统的设计与实现J.工业技术与职业教育,2022,20(3):25-27+108.3 张阳,李勇,王宇.基于智能手表的老年人健康监测系统J.环境智能与人性化计算,2019,10(2),663-673.4 吴春彩,陈玉春.一种用于监测睡眠呼吸暂停综合症的压力敏感床单J.传感器,2016,16(4):465.5 陈翔,杨广春,徐鹏.基于STM32的氧含量测量模块设计J.电子与封装,2020,20(5):24-29.6 高翔,李敏,苏将豪,等.基于PVDF压电电缆的睡眠质量检测系统的设计与实现J.电子器件,2022,45(4):991-996.7 高开文.老人养老安全服务市场探析J.中国安防,2022(6):88-92.8 王立.标志变异系数在统计分析中的作用J.科技与企业,2014(21):191.

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 论文指导/设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服