使用DALSA采集卡进行采图(C#版)

由于公司项目,所以接触到了一些,然后个人觉得DALSA官方的Demo有点不太好理解,所以“抄”了这篇文章,错误之处请各位大佬指出,我将尽快改正
废话不多说,先说说采集所需的硬件:
1、DALSA采集卡
2、相机(面阵相机或线阵相机)
3、一台不会卡的哭爹喊娘的电脑
除了上述硬件以外,还需要将采集卡安装至电脑并正确安装驱动,准备好与相机对应的CCF文件,准备工作完毕,直接正题
1、要想从DALSA采集卡拿到图像,就需要先将CCF加载至采集卡
2、创建DALSA的几个关键对象

 SapAcquisition m_Acq;                 //采集设备
 SapBuffer m_Buffers;                 //缓存对象
 SapAcqToBuf m_Xfer;                  //传输对象

3、设置回调函数

m_Xfer.XferNotify += new SapXferNotifyHandler(xfer_XferNotify);

 private void xfer_XferNotify(object sender, SapXferNotifyEventArgs argsNotify)
        {
            if (argsNotify.Trash)
            {
                //垃圾数据
            }
            else
            {
                //合理数据,拿到图像的地址
                IntPtr ImgDataPtr;
                m_Buffers.GetAddress(out ImgDataPtr);
            }
        }

4、采图、停止采图时调用DALSA提供的方法
连续采图

/// 
/// 连续采集
/// 
/// 
public bool Grab()
{
    return m_Xfer.Grab();
}

/// 
/// 停止取像
/// 
/// 
public bool Freeze()
{
    return m_Xfer.Freeze();
}
/// 
/// 采单帧
/// 
/// 
public bool Snap()
{
    return m_Xfer.Snap();
}

5、采完图后释放、销毁对象
附上资源链接 //download.csdn.net/download/lin873505600/12198970

你可能感兴趣的:(使用DALSA采集卡进行采图(C#版))