getsnapshot - Dark image compared to Fly Cap
2 ビュー (過去 30 日間)
古いコメントを表示
I've got a problem while using getsnapshot to automatize my image acquisition instead of using PointGrey FlyCap.
All I do is intializing my device and setting all the cam settings I want to have.
This is the Image that is provided by Fly Cap:

And it is of course the image I want to have. When i try to get a picture, with the same device and the same setting via Matlab getsnapshot, this will be the result:

Do I miss any settings?
The values i modify are: Brightness, Exposure, Sharpness, Gain, Gamma, FrameRate(15) and Shutter. But as I said i modify them to be smiliar to Fly Cap. Of course I change the Mode to 'manual' for every of the mentioned settings.
Anybody who could help?
1 件のコメント
回答 (1 件)
Bhanu Prakash
2024 年 1 月 23 日
編集済み: Bhanu Prakash
2024 年 1 月 23 日
Hi Pascal,
As per my understanding, you are facing an issue when you capture an image using the ‘getsnapshot’ function in MATLAB.
This is likely because of a digital artifact with your hardware. The first couple of frames provided by some hardware devices, especially webcams and video cards, may be of low quality and may appear as a dark image .
This artifact can be a result of the image sensor not having warmed up or the device just being started.
You can try the following options while capturing the image:
- When using the ‘getsnapshot’ function, keep the preview window running to avoid starting up the device and to maintain an active image stream.
- You can skip the starting frames (appearing as a dark image) after the device is triggered, using the ‘TriggerFrameDelay’ function in MATLAB as follows:
% Number of image frames to acquire.
N = 10;
% Access the device.
vid = videoinput('winvideo');
% Skip the first few frames after the device is %triggered.
set(vid, 'TriggerFrameDelay', 3);
% Configure the number of frames to acquire.
set(vid, 'FramesPerTrigger', N);
% Start the acquisition and have it trigger %immediately. Then access the data.
triggerconfig(vid, 'Immediate');
start(vid)
data = getdata(vid);
For more information on the ‘TriggerFrameDelay’ function, kindly refer to the following documentation:
Hope this helps!
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Point Grey Hardware についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!