我需要使用完全相同的相机参数(曝光,快门速度等)拍摄多张照片。我想将摄像头设置为自动模式,获取由摄像头计算的参数,设置获取的值并将摄像头设置为手动模式,以使这些值不再更改。但这是行不通的,我只得到默认参数(如曝光-7.5850,这显然是错误的),而不是计算得出的值,因此图像是完全黑色的。
我的代码:
src1 = getselectedsource(vidobj1);
triggerconfig(vidobj1, 'manual');
disp(src1.Exposure); % Returns default value -7.5850
src1.ExposureMode = 'Auto';
pause(10); % Wait some time until camera calculate parameters
calculatedExposure = src1.Exposure;
disp(calculatedExposure); % I want to get calculated value here (like 1.1), but I get default value -7.5850
src1.ExposureMode = 'Manual';
src1.Exposure = calculatedExposure;
当我在“图像采集工具”中开始相机预览时,我会看到为当前场景计算的值是多少(例如,曝光值为1.1120,快门速度为8.861)。问题是我无法在代码中获得此值!我只能从手动模式(曝光-7,快门0.04)中获得一些值,而不能由相机计算得出的值