DALSA相机参数文件配置

之前遇到DALSA相机断电后,再开机还要通过配置软件重新设置一遍参数,太麻烦了,下面就是让相机参数随着工程一起加载。

拷贝工程目录
将DALSA相机默认配置文件.ccf拷贝到创建的MFC工程目录下,如下图:
相机配置文件
添加头文件
在工程头文件.h包含相机基础类头文件,并定义相机参数:
相机头文件

// 实现
protected:
	HICON m_hIcon;
	//相机参数
	SapManager			*m_smananger;
	SapAcqDevice		*m_AcqDevice;
      ...

OnInitDialog()函数中添加

...
SapLocation loc(OpenIndex, 0);
//m_AcqDevice = new SapAcqDevice(loc, FALSE);
m_AcqDevice = new SapAcqDevice(loc, "./T_Linea_C4096-7um_Default_Default.ccf");//读取工程目录下相机配置文件
	
m_Buffer = new SapBuffer(2, m_AcqDevice);
m_Xfer = new  SapAcqDeviceToBuf(m_AcqDevice, m_Buffer, XferCallback, this);
m_ColorConv = new SapColorConversion(m_AcqDevice, m_Buffer);

BOOL b = m_AcqDevice->Create();
//if (b)
//	MessageBox(_T("相机连接成功!"));
//else
//	MessageBox(_T("相机连接失败!"));

//m_AcqDevice->SetFeatureValue("Width", dlg2.m_edit_Width);//设定相机采集图片宽高, dlg2为子窗口编辑框中传过来的值
//m_AcqDevice->SetFeatureValue("Height", dlg2.m_edit_Height);

m_AcqDevice->SetFeatureValue("TriggerMode", 0);//触发模式关闭

m_AcqDevice->SetFeatureValue("ExposureTime", dlg2.m_edit_ExposureTime);//设定曝光时间

m_AcqDevice->SetFeatureValue("AcquisitionLineRate", dlg2.m_edit_LineRate);//设定行频

m_AcqDevice->SetFeatureValue("GainSelector","DigitalAll");//设定总增益
m_AcqDevice->SetFeatureValue("Gain", dlg2.m_edit_GainAll);
m_AcqDevice->SetFeatureValue("GainSelector", "DigitalRed");//R通道增益
m_AcqDevice->SetFeatureValue("Gain", dlg2.m_edit_GainRed);
m_AcqDevice->SetFeatureValue("GainSelector", "DigitalGreen");//G通道增益
m_AcqDevice->SetFeatureValue("Gain", (double)1.0);
m_AcqDevice->SetFeatureValue("GainSelector", "DigitalBlue");//B通道增益
m_AcqDevice->SetFeatureValue("Gain", dlg2.m_edit_GainBlue);

BOOL d = m_pAcqDevice->SaveFeatures("./T_Linea_C4096-7um_Default_Default.ccf");
if (d)
	MessageBox(_T("相机配置文件保存成功!"));
else
	MessageBox(_T("相机配置文件保存失败!"));

你可能感兴趣的:(C/C++)