Dalsa线扫相机SDK开发-小试牛刀(1)

拿到了dalsa相机,可以用Sapera软件配置相机,进行图像采集。但是自己开发的话就得撸起袖子写代码了,查了两篇不错的博文,作为指导。

Sapera帮助文档 - 《好好先生》专栏 - 博客频道 - CSDN.NET http://blog.csdn.net/liubing8609/article/details/68485919

DALSA线阵CCD开发纪要(C++) - simplelove17的专栏 - 博客频道 - CSDN.NET http://blog.csdn.net/simplelove17/article/details/45393725

1、首先搞清楚要实现什么功能。

现在的应用是用编码器的脉冲触发相机来进行逐行扫描。

以C:Program FilesTeledyne DALSASaperaDemosBinaries 目录下的GigeCameraDemo.exe为例。

1)双击运行程序之后,首先是弹出一个界面让你选择相机和配置文件。也就是说,你可以先用Sapera把相机配置好,然后自己开发程序时只需要加载这个配置文件就行了,不用在自己的程序里对相机做配置。

Image 3

2)之后进入取图界面

Image 4

点击Grab按钮可以获取一帧图像(注意编码器给转动给相机脉冲信号),Snap是实时显示图像。

这时候还可以点击Load Config按钮来更换相机配置文件。

这些功能在测试阶段基本够用了。

2、然后是Visual Studio 开发C++的第一步,工程配置。

配置Dalsa的过程跟配置Opencv类似,主要是参考下文:

Sapera帮助文档 - 《好好先生》专栏 - 博客频道 - CSDN.NET http://blog.csdn.net/liubing8609/article/details/68485919

具体过程如下:

1)以GigECameraDemo为例,首先打开Debug 64的配置界面

Image 7

设置包含目录

Image 6

设置库目录

Image 8

附加库目录

Image 9

静态链接库名称(注意这里原来有halcon.lib,但是我的电脑里并没有装halcon,导致运行时报出“找不到halcon.lib”这样的错误,我就把halcon.lib从这个列表中移除了)

Image 10

如果编写GUI程序还得添加SapClassGui.lib和SapClassGuiD.lib。

Image 11

3、代码编写,参考dalsa的例程。

这里直接用Dalsa的代码做的测试,为了验证代码环境配置是否成功,对Demo做了一点改动。

在GigeCameraDemoDlg.cpp文件中OnInitDialog()函数中添加了一句代码:

BOOL CGigeCameraDemoDlg::OnInitDialog()
{
    CRect rect;

    MessageBox(_T("Welcome to GigE Camera Demo!"));

    CDialog::OnInitDialog();

  …

4、运行与调试。

我是直接打开的C:Program FilesTeledyne DALSASaperaDemosClassesVc目录下的SapDemos_2012.sln解决方案文件,进到VS之后会看到所有的程序都在这一个解决方案里。

Image 12

所以生成的时候一定要选中自己要调试的项目再点生成啊,不然会把整个解决方案都生成一遍,非常耗时。

Image 13

生成成功之后直接在VS里按F5,或点击运行按钮,会报下面的错误。

Image 1

正确的做法是进到Bubug 64 目录下找到生成好的exe文件,双击运行。。。

Image 2

结果就出现了之前修改的效果(简单粗暴了点)

Image 14

原文地址:https://www.cnblogs.com/oucsheep/p/6912753.html