2014-02-05 156 views
2

这是我的测试代码,用于从网络摄像头捕获帧。馈送提前终止。我不知道为什么。有人帮忙。只有两帧或三帧被捕获,然后过早退出。从网络摄像头获取帧

vid = videoinput('winvideo', 1); 
triggerconfig(vid, 'manual'); 
set(vid, 'FramesPerTrigger', 1); 
set(vid, 'TriggerRepeat', inf); 
set(vid, 'ReturnedColorSpace', 'grayscale'); 

start(vid); 

try 
    while(vid.FramesAcquired <= 3) 
     trigger(vid); 

     img = getdata(vid); 
     imshow(img); 
     hold on; 

     disp('acquired'); 
    end 
catch 
    disp('Error'); 
    stop(vid); 
end 
disp('exit'); 
stop(vid); 
+1

如果您可以提供错误消息,这将更容易。 – bdecaf

回答

1

检查这行代码:

while(vid.FramesAcquired <= 3) 

变化数(3)你所需要的帧数。