0

これは私がしばらくの間苦労してきた問題です: 彩度や露出などのカメラのプロパティを変更しても、カメラからキャプチャした画像に影響しないのはなぜpreview()ですか?

OS: Windows7

MATLAB: R2010b

カメラ: Microsoft Lifecam Studio

私が試したこと:

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

1 に答える 1

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 つのフレームを取得し、2 番目のフレームを使用するとうまくいきました。FramesPerTriggerこれが一貫していない場合は、後のフレームを試してください。プロパティを介して必要な数だけ取得していることを確認してください。

于 2013-07-05T19:40:20.877 に答える