OK图像采集卡 okCaptureTo 和 okCaptureSequence 采集方式比较

本文详细分析了在2.60GHz CPU平台上,通过选用嘉恒中自的OK系列图像采集卡,并采用okCaptureSequence采集方式,有效降低了程序的CPU占用率。比较了okCaptureTo和okCaptureSequence两种采集方式的性能,最终实现了优化图像采集过程,提升系统效率的目标。

最近发现程序cpu占用率偏高,排查原因,最后确定是图像采集模块导致。我们选用的是嘉恒中自的OK系列图像采集卡,有以下两种采集方式:

1、BOOL WINAPI okCaptureTo (HANDLE hBoard, TARGET target, LONG wParam, LPARAM lParam)

功能: 采集视频输入到指定的目标体。这里的目标体可以是VGA屏(SCREEN)、帧缓存(BUFFER)、帧存体(FRAME)。缺省状态下为不等采集结束立即返回。

参数:
hBoard: 输入卡句柄
target: 要采集到的目标体
wParam: 采集目标体的起始帧序号
lParam: >0表示采集的帧数;
=0表示连续采集,不支持回调函数;
=-1表示循环序列采集方式,支持回调函数

返回值: 如果调用成功,返回该目标支持的最大帧数。如果失败返回0;如果该目标不支持则返回-1。

2、BOOL WINAPI okCaptureSequence (HANDLE hBoard, LONG lStart, LPARAM lNoFrame)

功能: 中断控制的序列采集视频输入到缓存(BUFFER)。不等采集结束立即返回。

参数:
hBoard: 输入卡句柄
lStart: 采集目标体的起始帧序号
lNoFrame: >0表示采集的帧数;
=0表示不采集;
=-1表示循环序列采集方式,支持回调函数

返回值: 如果调用成功,返回该目标支持的最大帧数。如果失败返回0;如果该目标不支持则返回-1。

说明 : okCaptureTo 和okCaptureThread 均采用查询的方式,即查到有一帧图像采集完成便进行处理,支持多目标;okCaptureSequence采用中断方式,即采集卡采集完成一帧图像会通过消息通知进而触发采集处理,只支持采集到缓存,但okCaptureSequence效率更高, 可有效降低cpu使用率。

在我们的平台上(2.60GHz Cpu)测试结果cpu使用率明显得到降低。

okCaptureTo 采集方式:
这里写图片描述

okCaptureSequence采集方式:
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值