Recently I use image acquistion toolbox, the image captured is very gloomy
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Recently I use image acquistion toolbox, the image captured is very gloomy, but the image in preview figure is clear bright.
% This is copyed from Image acquistion toolbox
vid = videoinput('winvideo', 1, 'I420_640x480');
src = getselectedsource(vid);
% Set video input object properties for this application.
set(vid,'TriggerRepeat',Inf);
vid.FrameGrabInterval = 1;
% Set value of a video source object property.
vid_src = getselectedsource(vid);
set(vid_src,'Tag','motion detection setup');
preview(vid);
% Create a figure window.
figure;
% Start acquiring frames.
start(vid)
% display it.
while(vid.FramesAcquired<=100) % Stop after 100 frames
frame = getsnapshot(vid);
imshow(frame); %%This is used to show the snapshot, very gloomy
end
stop(vid)
closepreview(vid)
0 comentarios
Respuesta aceptada
David Tarkowski
el 5 de Dic. de 2012
You're trying to display an image in the YCbCr color space (that's what the I420 in your videoinput line means) with a function that is expecting RGB data.
If you do:
vid = videoinput('winvideo', 1, 'I420_640x480');
vid.ReturnedColorSpace = 'RGB';
then the toolbox will convert the data to RGB data when you call getsnapshot or getdata. If you actually want the YCbCr data you can omit changing the ReturnedColorSpace property and instead convert the data before displaying it:
frame = getsnapshot(vid);
imshow(ycbcr2rgb(frame));
0 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre DALSA Sapera Hardware en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!