有无图像没图像
是否黑屏黑屏,白屏,花屏
是否亮灯亮红灯
是否开机不开机
故障设备找不到相机
下面是其中对于不同的工作要求,加载相机对象和卸载相机对象是通用的。而要使用其他模块,如事件对象时,相应的改为加载事件对象和卸载事件对象,以及使用事件对象完成相关任务即可。编程时一定要对整个流程做好规划,特别是硬件编程时一定留意内存泄露,前面分配的资源一定要在后面释放。
下面是五个大流程的详细解析,需要的地方已经加以说明,并注解了需要用到的函数
加载相机对象:
卸载相机对象:
加载数据流抓取对象:
卸载数据流抓取对象:
单帧或连续抓图过程:
按照以上介绍的流程即可实现实时图像采集:
很多人问我要源代码,翻了以前的程序文件夹找到了这个程序,演示了利用Pylon SDK进行相机采集的过程,使用MIL完成界面显示,采集部分封装成了类,可以直接重用。测试相机为Basler相机。注意Pylon仅完成Raw Data的采集,使用MIL的MbufPut完成图像数据的重组,然后MIL自动显示。
这里使用三个队列完成采集和处理同步。
DMA队列:
当CMOS或CCD芯片曝光然后将数据转到相机缓存后,这时候DMA会负责将缓存中数据写入到“DMA队列”头Buffer中。
准备队列:
一旦“DMA队列”头Buffer被填充完成,会被加到“准备队列”尾后,这时候会发送中断通知用户程序:当前又有一帧数据采集完成,您看着处理吧。
处理队列:
当用户接收到中断会自动跳转到中断函数中,使用GetFrame拿取“准备队列”头Buffer,然后加到当前用户程序“处理队列”尾,用户程序从“处理队列”头拿取Buffer处理完成后使用PutFrame将Buffer再添加到原始的“DMA队列”尾。
工业相机是机器视觉系统中的一个关键组件,相比于市面上普通相机来说,具有更高的传输力、抗干扰力以及稳定的成像能力。它由两大基本部件组成:图像感光芯片和数字化的数据接口。
Basler 作为计算机视觉行业的标准制定者,一直致力于为客户提供一站式解决方案。BASLER工业相机广泛应用在人工智能设备中,持续赋能智能制造,随着智能设备产品的增多,后期使用上坏的可能也很多,坏了就淘汰扔掉吗?对于现在的制造成本来说,对工业相机进行维修是非常理想的选择,不仅缩短设备维修的时间,也大大节省了设备购买的成本,对于深耕视觉设备工业相机维修10年以上的技优电子来说,不仅交期快,修复率也高。
如下Basler ace 系列型号的巴斯勒工业相机坏了是可以维修的。
相机型号 全系列产品 分辨率 感光芯片 帧速率 黑白/彩色 接口
a2A4096-9gmBAS ace 2 Basic 12.3 MP IMX545 标准帧速率: 9 fps Mono GigE
a2A4096-9gcBAS ace 2 Basic 12.3 MP IMX545 标准帧速率: 9 fps Color GigE
a2A4096-30umBAS ace 2 Basic 12.3 MP IMX545 标准帧速率: 30 fps Mono USB 3.0
a2A4096-30ucBAS ace 2 Basic 12.3 MP IMX545 标准帧速率: 30 fps Color USB 3.0
a2A4200-12gmBAS ace 2 Basic 9.1 MP GMAX2509 标准帧速率: 12 fps Mono GigE
a2A4200-12gcBAS ace 2 Basic 9.1 MP GMAX2509 标准帧速率: 12 fps Color GigE
a2A4200-40umBAS ace 2 Basic 9.1 MP GMAX2509 标准帧速率: 40 fps Mono USB 3.0
a2A4200-40ucBAS ace 2 Basic 9.1 MP GMAX2509 标准帧速率: 40 fps Color USB 3.0
a2A4504-5gmBAS ace 2 Basic 20.2 MP IMX541 标准帧速率: 5 fps Mono GigE
a2A4504-5gcBAS ace 2 Basic 20.2 MP IMX541 标准帧速率: 5 fps Color GigE
a2A4504-18umBAS ace 2 Basic 20.2 MP IMX541 标准帧速率: 18 fps Mono USB 3.0
a2A4504-18ucBAS ace 2 Basic 20.2 MP IMX541 标准帧速率: 18 fps Color USB 3.0
a2A5320-7gmBAS ace 2 Basic 16.1 MP IMX542 标准帧速率: 7 fps Mono GigE
a2A5320-7gcBAS ace 2 Basic 16.1 MP IMX542 标准帧速率: 7 fps Color GigE
a2A5320-23umBAS ace 2 Basic 16.1 MP IMX542 标准帧速率: 23 fps Mono USB 3.0
a2A5320-23ucBAS ace 2 Basic 16.1 MP IMX542 标准帧速率: 23 fps Color USB 3.0
a2A5328-4gmBAS ace 2 Basic 24.4 MP IMX540 标准帧速率: 4 fps Mono GigE
a2A5328-4gcBAS ace 2 Basic 24.4 MP IMX540 标准帧速率: 4 fps Color GigE
a2A5328-15umBAS ace 2 Basic 24.4 MP IMX540 标准帧速率: 15 fps Mono USB 3.0
a2A5328-15ucBAS ace 2 Basic 24.4 MP IMX540 标准帧速率: 15 fps Color USB 3.0
工作流程:
当相机工作时,就是连续的采集-处理-采集-处理...的过程,但是这就存在一个问题,如果采集的速度比处理速度快,处理不过来,怎么办?在实际中,我们使用队列来解决这个问题,当前帧没有处理完,下一帧到来时直接放入队列等待当前处理完成后再处理它。
http://jaso.cn.b2b168.com