7

我正在使用Matlab从2点灰度相机(Flea2)捕捉图像,我想改变相机的一些参数,如自动曝光,增益和快门速度。到目前为止,我已经使用了这些命令:如何更改相机参数(自动曝光,快门速度,增益)?

%Creating the two video input of the two cameras 
cam1 = videoinput('dcam',1,'Y8_640x480'); 
cam2 = videoinput('dcam',2,'Y8_640x480'); 
%get devices properties 
src1 = getselectedsource(cam1); 
src2 = getselectedsource(cam2); 
%define and set parameters to be changed 
properties = {'AutoExposureAbsolute','AutoExposureControl', 'AutoExposureMode', 'GainAbsolute', 'GainControl', 'GainMode','ShutterAbsolute','ShutterControl', 'ShutterMode'}; 
values = {0,'absolute', 'manual', 0,'absolute', 'manual', 0, 'manual', 5e-06, 'absolute', 'manual'}; 
set(src1, properties, values) 
set(src2, properties, values) 

所以,如果我显示SRC1和SRC2变量上面的性能已被修改,但是当我预览相机什么都没有改变。

虽然总是使用相同的语法来改变帧速率,但我很成功。

+0

我假设你在驱动程序中遇到了一个错误。我会尝试与其他一些库(opencv?)并检查是否存在相同的错误。如果是这样,你可以确定相机制造商造成的问题。 – Daniel

+0

你问过点灰色支持了吗? – Piglet

回答

1

我解决了这个问题,安装了Image Acquisition Toolbox Support Package for Point Grey Hardware。 然后,你需要用点灰色驱动程序更改适配器类型:现在

cam = videoinput('pointgrey',1,'Mono8_640x480');

,您可以通过Matlab的设置通常相机的性能(自动曝光,快门速度,增益)。例如,如果你想这样设定快门的特定值:

src = getselectedsource(cam); 
set(src, 'Shutter', value) 

关于我的问题,我想这点灰色摄像机设备特定属性不能直接与DCAM司机编辑通过MATLAB,但为了修改这些属性,您需要使用Point Grey Hardware的Matlab支持包。