SDK的下载
Sapera_LT_8.31_SDK 百度网盘下载地址:链接:密码:ckm7。
SDK的安装
解压运行.exe文件,按照提示确定,下一步即可。
帮助文档和demo
如果要获得完整的帮助文档和demo,在SDK安装时选择full安装,路径可以自己选择,默认路径为 C:\Program Files\Teledyne DALSA\。
主要demo简介
在C:\Program Files\Teledyne DALSA\Sapera\Demos\Classes\VC中提供了多个开发Demo供用户参考。
Grab Demo (Dialog Box Interface 对话框)
路径:\Sapera\Demos\Classes\Vc\GrabDemo\Release\GrabDemo.exe
功能:
1.显示了基本的采集功能
2.允许获得连续或单帧图像
3.同时调整采集参数
Grab Demo (Single Document Interface 单文档)
路径:\Sapera\Demos\Classes\Vc\GrabDemo\Release\GrabDemoSDI.exe
功能:
1.显示了基本的采集功能
2.允许获得连续或单帧图像
3.同时调整采集参数
Sequential Grab Demo
路径:\Sapera\Demos\Classes\Vc\SeqGrabDemo\Release\SeqGrabDemo.exe
功能:
1.采集序列图像至内存而后显示
2.程序允许录制多段视频
3.并可存储、导入AVI文件
4.每一图像存储于不同buffer中
5.可通过对话框设置buffer大小等参数
Bayer Demo
路径:\Sapera\Demos\Classes\Vc\BayerDemo\Release\BayerDemo.exe
功能:
1.显示Bayer 转换功能
2.进行Bayer转换参数设置
Flat-field Demo
路径:\Sapera\Demos\Classes\Vc\FlatFieldDemo\Release\FlatFieldDemo.exe
功能:
1.显示平场校正功能
2.平场校正Flat FieldCorrection (FFC) 包括调整模式噪声FixedPattern Noise (FPN),像素置换 Pixel Replacement, Photo Response Non Uniformity (PRNU), 和斑点校正 Shading Correction.
I/O Demo
路径:\Sapera\Demos\Classes\Vc\IODemo\Release\IODemo.exe
功能:
1显示一般I/O设备的使用
2.允许监视当前输入输出状态
3.改变高低极性状态;允许监视输入中断并记录中断数
GigE-Vision Camera Demo
路径:\Sapera\Demos\Classes\Vc\GigeCameraDemo\Release\GigeCameraDemo.exe
功能:怎样使用DALSAGigE Vision™ 相机获得图像. 可导入相机配置文件
使用opencv读取图片
以 GigeCameraDemo 为例,找到 XferCallback 函数,修改代码如下:
void CGigeCameraDemoDlg::XferCallback(SapXferCallbackInfo *pInfo)
{
CGigeCameraDemoDlg *pDlg= (CGigeCameraDemoDlg *) pInfo->GetContext();
// If grabbing in trash buffer, do not display the image, update the
// appropriate number of frames on the status bar instead
if (pInfo->IsTrash())
{
CString str;
str.Format(_T("Frames acquired in trash buffer: %d"), pInfo->GetEventCount());
pDlg->m_statusWnd.SetWindowText(str);
}
// Refresh view
else
{
BYTE pData;
void* pDataAddr = &pData;
BOOL success = pDlg->m_Buffers->GetAddress(static_count, &pDataAddr);
int width = pDlg->m_Buffers->GetWidth();
int height = pDlg->m_Buffers->GetHeight();
cv::Mat img = cv::Mat::zeros(cv::Size(width, height), CV_8U);
memcpy(img.data, pDataAddr, width*height);
//Find_and_Draw_LeftLines(img, 10, 150, 5, left_deta_width);
//line(left_pic, cv::Point(left_detect_width, 0), cv::Point(left_detect_width, 32), cv::Scalar(255, 255, 0), 2, 4);
//cv::imshow("image", left_pic);
cv::imshow("image", img);
cv::waitKey(1);
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
运行代码即可。
效果图
运行 GigeCameraDemo 后,产生如下界面。可以选择Acquisition Server和Acquisition Device,也可以选择CCF配置文件,默认是初始化的配置。
点击OK按钮进入相机的操作界面,点击Grab进行图像采集,此处设置了图片大小为4096*32,使用opencv中imshow函数显示出来,效果图如下。