LabVIEW使用视觉采集软件从GigE视觉相机进行采集 1

本文涉及的产品
云防火墙,500元 1000GB
简介: LabVIEW使用视觉采集软件从GigE视觉相机进行采集 1

LabVIEW使用视觉采集软件从GigE视觉相机进行采集 1


硬件和软件设置


为了从GigE Vision相机获取图像,首先需要确保拥有所有正确的硬件和软件。


硬件


GigE Vision相机:该相机必须符合GigE Vision标准。如果摄像机具有千兆以太网端口,但不兼容GigE Vision,则无法使用Vision Acquisition Software捕获图像。应该在相机的用户手册或市场营销文献中找到GigE Vision徽标。


千兆以太网端口:虽然可以使用分别支持10 MB/s和100 MB/s的以太网和快速以太网端口来获取图像,但这仅适用于非常慢的帧速率和小分辨率。强烈建议使用千兆以太网网络接口控制器(NIC)。


软件


视觉采集软件:将需要视觉采集软件8.2.1或更高版本,它将安装NI-IMAQdx 3.0或更高版本。 NI-IMAQdx是该驱动程序,具有从USB3 Vision,GigE Vision和IEEE 1394摄像机获取图像的功能。


应用程序开发接口(ADE) :可以使用LabVIEW,LabWindows / CVI,Visual Studio 6.0或任何ANSI C编译器来获取图像。


网络配置


正确安装硬件和软件后,还必须配置网络。GigE Vision摄像机可以从DHCP服务器获取IP地址,也可以使用链接本地寻址(LLA)为自己选择一个IP地址。如果使用DHCP服务器将摄像机连接到千兆位以太网,则会自动检测到摄像机。如果摄像机直接连接到计算机(使用常规电缆或交叉电缆),则需要等待一分钟左右,以使DHCP在DHCP请求上超时并使用LLA。 Windows操作系统可能会显示警告,指出网卡只能进行有限的操作。可以忽略此警告。注意:该延迟仅适用于Windows XP和2000,不适用于WindowsVista操作系统。


巨型数据包


通常,网络驱动程序会将大于1500字节的任何数据拆分为多个数据包。但是,GigE Vision标准允许最大9014字节的数据包大小。这些大数据包(也称为巨型数据包)使摄像机可以更有效地在网络上传输数据。通过右键单击网卡并选择属性,可以从Windows设备管理器中启用许多网卡中的巨型数据包。


网络防火墙


当摄像机获取图像时,它将立即将这些数据包流式传输到主机。但是,网络防火墙将不允许数据包到达其目的地,因为防火墙通常会阻止未发起的传入流量。因此,需要禁用防火墙才能从GigE Vision摄像机获取图像。可以从控制面板(开始»控制面板)禁用Windows防火墙。但是,如果网卡带有Intel PRO / 1000芯片组并且正在使用高性能驱动程序,则无需禁用防火墙。由于高性能驱动程序会在传入的GigE Vision数据包到达防火墙之前将其重定向到NI-IMAQdx内核驱动程序,因此防火墙设置不会影响图像的获取。


在MAX中获取图像


Measurement and Automation Explorer(MAX)用于验证已发现相机并可以获取图像。由于NI-IMAQdx驱动程序支持即插即用(PnP),与主机位于同一子网中的所有GigE Vision摄像机应自动出现在设备和接口子树中。 GigE Vision摄像机枚举在NI-IMAQdx子树下,并通过特殊图标标识。如果使用的是NI IMAQdx 4.3.5或更高版本,则GigE Vision摄像机将出现在网络设备子树中。


MAX将在与主机相同的子网上显示任何GigE Vision摄像机。但是,NI-IMAQdx也允许从远程子网中的摄像机获取图像。可以通过调用NI-IMAQdx API中的相应函数来发现远程子网中的摄像机。例如: C函数IMAQdxDiscoverEthernetCamera() 具有用于指定要在其上发现摄像机的子网的参数。


一旦能够在MAX中发现相机,下一步就是从相机中获取图像。从子树中选择摄像机以在主窗口中将其打开。以下是获取标签的各个部分及其说明.


视频模式:此属性仅对IEEE 1394摄像机有效。 GigE Vision相机为灰色。


像素格式:显示可用像素格式的列表。典型格式是Mono8,Mono16和YUV422Packed。


感兴趣区域:指定采集窗口的左右偏移量以及宽度和高度。


超时:设置驱动程序等待超时完成之前返回超时错误的毫秒数。


数据包大小:指定每个数据包中传输的字节数。此数字必须小于网卡允许的最大数据包大小(如果禁用了巨型数据包,则为1500;如果启用了巨型数据包,则为9014)。


正确设置采集参数后,单击捕捉以采集一幅图像,或单击抓取以连续采集图像。


在LabVIEW中获取图像


NI-IMAQdx提供了一个统一的API,可从IEEE 1394,USB3Vision和GigE Vision摄像机获取图像。虽然某些功能特定于一种类型的总线,但是大多数功能和VI均可用于两种类型的摄像机。这使得更多的总线不可知论的发展为图像采集。可以用GigEVision摄像机替换IEEE 1394摄像机,反之亦然,而无需更改代码。


NI-IMAQdx LabVIEW API分为高级VI和低级VI。使用高级VI,可以对简单的捕捉,抓取或序列操作进行编程。使用低级VI可以执行与高级VI相同的任务,但可以更好地控制执行细节。查看LabVIEW附带的示例,以了解如何使用NI-IMAQdx对图像采集进行编程。

上面的例子说明了在LabVIEW中的简单Grab采集。所获取的图像显示在图像指示器中。本示例在缓冲区编号指示器中显示了缓冲区编号。如果while循环的循环速率不高于相机的帧速率,则可能会丢失缓冲区。在这种情况下,在可以处理原始图像之前,复制到内存缓冲区中的图像会被另一个图像覆盖。在大多数机器视觉情况下,重要的是要通知用户是否遗漏了任何帧。


需要说明的是,上述的例程和文档,都是可以下载的,双击即可打开,其中压缩文件是可以采用粘贴复制的方式,拷贝到硬盘上。这不是图片,各位小伙伴看到后尝试一下,这个问题就不用加微信咨询了。有关LabVIEW编程、LabVIEW开发等相关项目,可联系们。

相关文章
|
4月前
|
数据采集 监控 算法
LabVIEW与3D相机开发高精度表面检测系统
LabVIEW与3D相机开发高精度表面检测系统
55 2
|
3月前
|
计算机视觉
在yolov5项目中如何使用自带摄像机不用网络摄像机进行实时检测?
这篇文章讨论了在yolov5项目中,如何避免使用网络摄像机而改用自带的本地摄像机进行实时目标检测,并提供了解决摄像头打开错误的具体步骤和代码示例。
在yolov5项目中如何使用自带摄像机不用网络摄像机进行实时检测?
|
4月前
|
传感器 编解码 监控
LabVIEW图像采集处理项目中相机选择与应用
LabVIEW图像采集处理项目中相机选择与应用
41 0
|
6月前
|
机器学习/深度学习 存储 数据采集
智能光栅光片显微成像技术的LabVIEW解决方案
智能光栅光片显微成像技术的LabVIEW解决方案
39 4
|
6月前
|
传感器 算法 计算机视觉
LabVIEW开发图像采集和图像处理程序
LabVIEW开发图像采集和图像处理程序
73 2
|
6月前
|
传感器 数据采集 人工智能
LabVIEW开发微控制器控制的并行机器人的实时视觉图像处理
LabVIEW开发微控制器控制的并行机器人的实时视觉图像处理
57 1
|
6月前
|
传感器 编解码 计算机视觉
事件相机 PROPHESEE EVK4紧凑基于事件的 高清视觉评估套件 视觉传感 EVK4
探索基于事件的视觉,从 PROPHESEE EVK4 HD 开始。这款超轻、紧凑的高清 Metavision ®评估套件,可承受现场测试条件。集成 IMX636(高清),堆叠式事件视觉传感器由索尼半导体解决方案公司发布,由索尼和 PROPHESEE 合作实现。
事件相机 PROPHESEE EVK4紧凑基于事件的 高清视觉评估套件 视觉传感 EVK4
|
6月前
|
传感器 开发工具 C#
[3D&Halcon] SmartRay激光3D传感器Halcon采集
[3D&Halcon] SmartRay激光3D传感器Halcon采集
102 0
|
6月前
|
传感器 编解码 算法
[硬件选型] 工业相机之相机分类
[硬件选型] 工业相机之相机分类
132 0
|
传感器 安全 API
Baumer相机使用CameraExplorer软件采集VCXG-51M相机图像时,发现图像显示界面无任何图像现象。
Baumer相机使用CameraExplorer软件采集VCXG-51M相机图像时,发现图像显示界面无任何图像现象。
131 0