2013-07-05 24 views
0

這一直是我一直在努力的一個問題:當我改變相機屬性(如飽和度或曝光)時,爲什麼它對從相機拍攝的圖像沒有影響,除非我使用preview()爲什麼我的相機捕捉不能反映其屬性的變化?

操作系統:Windows 7

MATLAB:R2010b中

攝像頭:微軟的LifeCam Studio的

我試了一下:

vid = videoinput('winvideo',2); 
set(vid, 'ReturnedColorSpace', 'rgb'); 
set(getselectedsource(vid),'ExposureMode','manual'); 
set(getselectedsource(vid),'Exposure',-9); 
pic = getsnapshot(vid); 

回答

0

我一直沒能得到getsnapshot()工作,但preview()將始終閃爍舊設置作爲第一幀,幾乎立即切換到新設置。所以,你可以設定數量的幀在每次觸發抓住,那麼你只要抓住幀以後,將有新的設置:

set(vid, 'FramesPerTrigger', 2); % After setting up camera and its settings 
start(vid); 
pic = getdata(vid); 
stop(vid); 
figure,imshow(pic(:,:,:,2));  % The second frame has the new settings applied 

拼搶2幀,並使用我的第二個工作。如果這不一致,請嘗試更晚的幀,只要確保您通過FramesPerTrigger屬性抓取儘可能多的幀即可。

相關問題