- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
大恒视频采集流程.
用OpenCV进行大恒CG400CG410视频采集卡的视频读取?(2013-04-27 16:12:02)转载▼标签:?杂谈分类:?opencv最近用到红外摄像头,要用到视频采集卡,采用的是大恒CG410的板子,CG410是CG400的升级版,虽然驱动不一样,SDK和适用环境是一样的。这是使用的是win7 32位系统。大恒的SDK的事例都是都是MFC的代码,奈何我需要的是在控制台下进行摄像头的读取,并转换到OpenCV可以识别的图像数据格式IplImage或者Mat结构,这个使用的是前者。下面是解决方法:在项目的库中包含CGVideo.lib?CGVidEx.lib头文件记得加入windows.h,因为要使用到windows句柄代码如下:1:?#include?opencv2/core/core.hpp2:?#include?opencv2/highgui/highgui.hpp3:?#include?opencv2/imgproc/imgproc.hpp4:?#include?opencv2/video/video.hpp5:?#include?iostream6:?#include?windows.h7:?8:?#include?CGVideo.h9:?#include?CGDef.h10:?#include?CGVidEx.h11:?12:?using?namespace?std;13:?using?namespace?cv;14:?15:?int?main()16:?{17:?//初始化所有成员变量,同时打开图像卡 */18:?CGSTATUS status = CG_OK;19:?HCG hcg = NULL;20:21:?//打开图像卡 1,返回状态值22:?status = BeginCGCard(1, hcg);23:24:?//检验函数执行状态,如果失败,则返回错误状态消息框*/25:?CG_VERIFY(status);26:27:?//初始化图像卡硬件状态,用户也可以在其他位置初始化图像卡,28:?//但应保证图像卡已经打开,建议用户在应用程序初始化时,同时初始化图像卡硬件。29:?// 设置视频制式(PAL / NTSC),由当前视频源制式决定30:?CGSetVideoStandard(hcg, PAL);31:?32:?// 扫描模式,包括 FRAME、FIELD33:?CGSetScanMode(hcg, FRAME);34:35:?//晶振,包括CRY_OSC_35M、CRY_OSC_28M36:?//对于DH-CG300图像卡,一般为CRY_OSC_35M,37:?//对于DH-QP300图像卡,一般为CRY_OSC_28M,38:?//其他类型图像卡没有此硬件设置,但可以调用此接口,并返回CG_NOT_SUPPORT_INTERFACE信息39:40:?CGSelectCryOSC(hcg, CRY_OSC_35M);41:42:?//视频格式,即采集图像数据描述方式,包括YUV422、RGB888、RGB565、RGB555、RGB8888、ALL8BIT、LIMITED8BIT,43:?//在采集图像到屏幕时,需要保证视频格式和当前系统屏幕位深度一致,而采集到内存没有此限制。44:?CGSetVideoFormat(hcg, RGB888);45:46:47:?//视频源路VIDEO_SOURCE包括视频类型和序号,48:?//各种图像卡支持的视频源路不尽相同,请参看相应硬件说明49:?VIDEO_SOURCE source;50:?source.type = COMPOSITE_VIDEO;?//视频类型为复合视频51:?source.nIndex = 0;?//序号为052:?CGSetVideoSource(hcg, source);53:54:?//视频输入窗口,即视频输入范围,输入窗口取值范围:55:?//对于视频制式为PAL制,水平方向为0-768,垂直方向为0-57656:?//对于视频制式为NTSC制,水平方向为0-768,垂直方向为0-57657:?//视频窗口左上角X坐标和窗口宽度应为4的倍数,左上角Y坐标和窗口高度应为2的倍数58:?CGSetInputWindow(hcg, 0, 0, 768, 576);?//视频输入窗口取最大59:?60:61:?//视频输出窗口,即视频输出范围,输出窗口取值范围必须在输入窗口范围以内,62:?//视频窗口左上角X坐标和窗口宽度应为4的倍数,左上角Y坐标和窗口高度应为2的倍数63:?//在采集到屏幕时,输出窗口的起始位置为图像屏幕输出位置的屏幕坐标,64:?//在采集到内存时,输出窗口的起始位置设置为(0, 0)即可。65:6
文档评论(0)