sdk是什么意思?(本文带你了解一下工业相机SDK )
如果有更好的建议或者想看更多关于电子数码技术大全及相关资讯,可以多多关注茶馆百科网。

市面上的工业相机,如巴斯勒、海康、大华、映美净、灰点、达尔萨等工业相机品牌,相机SDK各不相同,但都有共同点。今天就以海康的工业相机SDK为例,来解释一下里面有什么。
目前机器视觉的工业相机都符合AIA(自动成像协会)图像传输标准。例如,GigEVision、USB3.0Vision、CameraLink等通用图像传输标准是由AIA制定的。如果不让工业相机厂商遵守这些协议,他们会不好意思拿出来,肯定会被淘汰。这些协议标准规定了相机图像数据如何传输到应用程序,每个制造商将开发相应的图像流SDK。
标准协议图标,来自友邦保险官网。
工业照相机
我们先来了解一下相机。摄像头是集成了CCD/CMOS芯片的电路板子FPGA。我们把照相机看作一种装置。程序在FPGA中运行,FPGA工程师会编写一个xml描述文件,文件中描述了摄像机的硬件信息、设备控制、采集控制、数字信号控制和传输数据控制。
Xml文件是FPGA工程师和SDK工程师之间的桥梁。
SDK做了什么?SDK端主要工作解析设备端xml描述文件,然后通过AIA制定的标准协议发送数据。比如在网络端口,GigEVision通过UDP发送图像包,比TCP传输快几倍,但是UDP是无连接的,不安全,所以协议中规定了重传机制。当然,实际的SDK会考虑更多的问题。
可见每个厂商都是设备+SDK.真正重要的是一个设备厂商的硬件能力,也就是FPGA的设计能力。一个好的SDK也很重要。稳定和高效是一台工业相机最基本的条件。
摄像设备端
SDK做什么。
接下来,我们来看看相机SDK的具体知识。
GenICam
GenICam为工业摄像机提供统一的编程接口,GenICam有多个模块。吉尼卡姆
在开发中,我们不需要了解这一层,这一层是SDK完成的,主要是在设备端解析XML,读写寄存器操作FPGA。
比如我用海康机器人的MVS软件看图片。下图右侧的各个节点是一个摄像头XML描述文件,由GenICam解析。例如,在界面操作中设置曝光可以通过通用界面set float value(& quot;曝光& quot, 100).SDK收到该值后,通过XML中的寄存器操作FPGA和FPGA传感器。该接口的所有参数都由xml生成。
MVS
我们的设置参数,比如曝光、增益、心跳时间,都是控制通道,然后数据传输到设备端。
数据传输
这里主要是指图像数据的传输。比如GigEVsion中采用GVSP协议,SDK中实现GVSP协议。例如,我们的软触发流获取过程是SDK向FPGA发出指令。一旦有流,SDK就接收流数据。如果是回调方法,会通过回调直接取流。如果是主动获取,它需要在线程中一直获取流。
我们去看看GenICam,GigEVision,USB3.0Vision等协议标准。这些协议有数千页的文件。不就是为了发数据吗?为什么非要搞那一堆交互,理解几千页文档?我可以告诉你,只要符合标准,只要相机SDK厂商相对开放,那么他的SDK是可以接入的。比如海康工业相机SDK,可以用于市面上任何符合标准协议的相机。
巴斯勒相机通过Hikon SDK拍摄视频流。
可见设备端符合标准,SDK端协议开发,我可以用你。是不是方便多了?但是basler的SDK没那么发达,只要我自己的摄像设备就能拍流。
工业相机SDK取流流程
取流流程图
工业摄像机取流的所有过程都可以概括为上述过程,包括枚举摄像机、连接摄像机、设置取流模式、设置参数、启动取流、停止取流、关闭设备。了解这个过程,任何SDK都不是问题。
SDK接口
一般情况下,工业相机会提供C,C,C#等接口。这里我更倾向于使用C接口SDK,C接口包C#就可以,不需要了解C中的一些其他内容,比如你用C,有些相机兼容各种接口,还有相机工厂概念。所以,我个人更倾向于C接口的方法。
本文主要介绍了关于sdk是什么意思?(本文带你了解一下工业相机SDK )的相关养殖或种植技术,电子数码栏目还介绍了该行业生产经营方式及经营管理,关注电子数码发展动向,注重系统性、科学性、实用性和先进性,内容全面新颖、重点突出、通俗易懂,全面给您讲解电子数码技术怎么管理的要点,是您电子数码致富的点金石。
以上文章来自互联网,不代表本人立场,如需删除,请注明该网址:http://23.234.50.4:8411/article/99324.html