上篇解决了matlab控制basler的问题,可以通过Image Acquisition Toolbox工具箱提供的交互是界面进行各种操作,操作起来还是比较简单的,用交互界面进行图像保存的时候我保存的图总是过暗(低照度),工具箱提供的说明有一栏说“预热” ???这里没搞懂。。。
当然由于自动化控制的需求,手动保存也不现实,这里就跳过了过暗的问题
matlab调用工具包代码:
obj = videoinput('gentl',1,'Mono8');
% gentl表示USB接口(gige表示以太网接口) 1表示第一个设备 Mono8表示图像深度是8位(不同相机还有Mono12)
% obj.ROIPosition = [200 0 2048 2048];
% 可以调整CCD上感兴趣的区域
src = getselectedsource(obj);
src.AcquisitionFrameRateEnable = 'True';
%src.AcquisitionFrameRate = 10;
src.ExposureAuto = 'off';
src.ExposureTime = 9000;
% 曝光调整
%h = preview(obj);
% 预览相机画面
I = getsnapshot(obj);
% 捕获画面
imwrite(I,'result.jpg');
这里保存的图片没有过暗的情况,效果如下: