GigE Vision是由自动化影像协会AIA发起指定的一种基于千兆以太网的图像传输标准。在工业机器视觉产品的应用中,GigE Vision允许用户在很长距离用廉价的标准线缆进行快速图像传输。该标准基于UDP协议,应用层协议采用GVCP(GigE Vision控制协议)与GVSP(GigE Vision流传输协议),分别用来对相机进行配置和数据流的传输,解决了标准千兆网的两个问题,即传输效率低与CPU占用率过高,因此在工业相机领域得到了大范围的应用。
协议优点有:
开放性
实现不同厂商的硬件,软件可以使用同一个使得维护更方便更容易
易升级
包括1000M,10000M等,适合在工业场合中使用
稳定性
加入心跳检测机制,Gvsp重发包实现了相机设备与图像数据的稳定传输
可扩展性
提供了革新与产品分化空间
在官网 https://www.visiononline.org/vision-standards-details.cfm?type=5 中有介绍

Gige Vision协议标准
可以下载协议文档 GigE_Vision_Specification2.0.pdf
通过该文档的说明,可以实现Giege Vision的GVCP/GVSP部分,完成设备取流操作。
只要准守了协议文档内容的相机设备,海康的取图软件MVS 是比较开放的软件,都可以接入这些相机,包括海康相机、大华相机、basler相机、灰点相机、映美精相机等等。
我这里使用一个控制台实现了GVCP和GVSP部分的内容,使得MVS可以认得我的这个设备,如下图,左边是我写的控制台程序, 在实际中可以当成这个是一个相机设备,起始就在我的这里面加入与FPGA的交互,加入硬件,就是一个相机设备,我的控制台程序使用本地图像取流,右边是海康的取图软件,最后边的参数列表是我的设备的描述文件,是我定义常用的相机参数。
实现GigeVision的控制台程序
虚拟相机控制台程序
所以大家也就明白了, 其实只要标准化了,大家都好做事, 不过basler相对于比较不开放,他的取图软件屏蔽掉了其他家的相机。