dvbbs
收藏本页
联系我们
论坛帮助
RS Image Library是日盛软件自主开发的一套图像处理开发包,包括图像采集,图像显示及绘图,内存管理,基本图像处理,Blob分析,精密边缘测量,图像匹配,边缘提取等,目前除了ORC和Code Reader模块外,其它模块都比较成熟。 联系方式见主页或者微信:RSSoftware。下载地址: 演示版下载
dvbbs

>> 大恒图像采集卡应用讨论区:DH-CG300,DH-CG400,DH-CG410,DH-QP300等产品。
搜一搜相关精彩主题 
机器视觉技术论坛|工业图像处理技术论坛大恒产品专区讨论区【大恒图像采集卡】 → [求助]QP300多路采集问题

您是本帖的第 3816 个阅读者
树形 打印
标题:
[求助]QP300多路采集问题
i03630211
帅哥哟,离线,有人找我吗?
等级:新手上路
文章:4
积分:85
注册:2009年3月4日
楼主
 点击这里发送电子邮件给i03630211

发贴心情
[求助]QP300多路采集问题

我用QP300进行图像采集显示,我的做法是定义2个HCG,分别BeginCGCard(1, &m_hcg);和BeginCGCard(2, &m_hcg1);,然后 打开视频卡

CGOpenSnapEx(m_hcg, SnapThreadCallbackEx, m_hWnd);
 CGOpenSnapEx(m_hcg1, SnapThreadCallback, m_hWnd);

然后用了CGStartSnapEx(m_hcg, 0, TRUE, 2);
 CGStartSnapEx(m_hcg1, 0, TRUE, 2);之后发现2个图像里有蓝色的画面,我在采集卡上只接了一个CCD,按理应该一个显示图像,另外一个是全蓝的画面啊,请大家帮忙

ip地址已设置保密
2009-3-4 9:15:46
i03630211
帅哥哟,离线,有人找我吗?
等级:新手上路
文章:4
积分:85
注册:2009年3月4日
2
 点击这里发送电子邮件给i03630211

发贴心情

请大家帮忙啊,给我个多路采集的例程也行,最好VC的

ip地址已设置保密
2009-3-4 9:23:57
菜鸟
帅哥哟,离线,有人找我吗?
等级:蜘蛛侠
文章:360
积分:3505
注册:2006年7月9日
3
 点击这里发送电子邮件给菜鸟

发贴心情

//图像卡LEFT
    //打开图像卡
    status = BeginCGCard(LEFT+1, &hCGCard[LEFT]);
    if ( ! CG_SUCCESS(status)){
        AfxMessageBox("CGCard Init Failed!");
    }
   //源路为复合视频一
    Source.type = COMPOSITE_VIDEO;
    Source.nIndex = 1;//第二路信号QP300
//    Source.nIndex = 0;//第一路信号CG300
    CG_VERIFY(CGSetVideoSource(hCGCard[LEFT], Source));
    //晶振, 默认为35M
    CryOsc = CRY_OSC_28M;  //QP300
// CryOsc = CRY_OSC_35M;  //CG300
    CG_VERIFY(CGSelectCryOSC(hCGCard[LEFT], CryOsc));
//图像卡2

    //打开图像卡
    status = BeginCGCard(MID+1, &hCGCard[MID]);
    if ( ! CG_SUCCESS(status)){
        AfxMessageBox("CGCard Init Failed!");
    }
..................其他的都一样

///////////////////////////////////////////
    //使用静态内存保存图象,先访问其大小,如果访问失败则退出操作
    if (CGGetStaticMem(&BlockSize) != CG_OK ){
        AfxMessageBox("Error in StaticMem Access!");
        return false;
    }
    //灰度图像
//    BufLength = WIDTH *HEIGHT;
    //锁定全部保留静态内存给图像卡使用
    CG_VERIFY(CGStaticMemLock(0, BlockSize*4096, &MemHandle, (void **)&LineAddr));

//第二幅及第三幅图像的偏移量
 for(int i=0;i<=2;i++)
 dwOffset[i]=IMG_WIDTH*IMG_HEIGHT*i;

//开始抓图
  CG_VERIFY(CGStartSnap(pApp->hCGCard[LEFT], pApp->dwOffset[LEFT], TRUE, 1));

  CG_VERIFY(CGStartSnap(pApp->hCGCard[MID], pApp->dwOffset[MID], TRUE, 1));
  CG_VERIFY(CGStartSnap(pApp->hCGCard[RIGHT], pApp->dwOffset[RIGHT], TRUE, 1));

注意点:
1,通道设置为1,不是0;
2,晶振为28M,不是35M;
3,不同的摄像头的图像保持到不同的线性内存中。
另外,我是用定时器来抓取图像的。

ip地址已设置保密
2009-3-4 10:09:18
i03630211
帅哥哟,离线,有人找我吗?
等级:新手上路
文章:4
积分:85
注册:2009年3月4日
4
 点击这里发送电子邮件给i03630211

发贴心情
我能把程序发给你帮我改改吗,谢谢了
ip地址已设置保密
2009-3-4 10:29:28
i03630211
帅哥哟,离线,有人找我吗?
等级:新手上路
文章:4
积分:85
注册:2009年3月4日
5
 点击这里发送电子邮件给i03630211

发贴心情

CGOpenSnapEx(m_DispDesc[0].hcg, SnapThreadCallbackEx, m_hWnd);
 CGOpenSnapEx(m_DispDesc[1].hcg, SnapThreadCallback,m_hWnd);

能解释下最后一个参数吗,这样写会不会产生串扰,应该怎么使用

ip地址已设置保密
2009-3-4 11:04:49
菜鸟
帅哥哟,离线,有人找我吗?
等级:蜘蛛侠
文章:360
积分:3505
注册:2006年7月9日
6
 点击这里发送电子邮件给菜鸟

发贴心情

发给我吧,我帮你看看:hw_ren@163.com

最后一个参数就是句柄,不产生串扰的关键是CGStartSnap(pApp->hCGCard[MID], pApp->dwOffset[MID], TRUE, 1));中的地址pApp->dwOffset[MID]要分开,并且留下足够的空间存放图像。

ip地址已设置保密
2009-3-4 11:40:07

 6   6   1/1页      1    
Copyright © 2006 日盛软件.Com
Powered By Dvbbs Version 7.1.0 Sp1