我正在尝试在直播视频上使用色度键算法。我需要进行实时网络摄像头输入,实时处理并显示它。我已经在图像上使用了色度键算法。
如何处理网络摄像头输入并立即显示。我尝试使用snapshot()并将图像传递给色度键算法,但即使我提高了快照的速度,它也太慢了。我想要一个流畅的输出。
[另外,如果有比Matlab更好的选择,请告诉我。 ]
答案 0 :(得分:1)
尝试使用视频输入,然后使用getsnapshot()
连接:http://www.mathworks.de/de/help/imaq/preview.html
如图所示,您甚至可以定义一个回调处理函数,该函数在每个新接收的帧上调用。
答案 1 :(得分:0)
您必须将TriggerType
设置为manual
,否则getsnapshot()
每次需要一个帧时都会创建(并销毁)相机的连接。通过将其设置为手动,您可以启动相机一次,获取相框并在完成后停止相机。
以下是一个例子:
vidobj = videoinput('winvideo', 1, 'RGB24_640x480');
triggerconfig(vidobj, 'manual');
start(vidobj);
while true % Or any stop condition
img = getsnapshot(vidobj);
% Process the frame.
...
imshow(img);
drawnow;
end