如何在Octave中捕获视频?

时间:2013-01-27 21:46:00

标签: video octave

Octave 中有捕获视频的原生方式吗?

在Matlab中,我习惯使用以下内容(也可能对其他人有用):

a = imaqhwinfo('linuxvideo',1)  # or "imaqhwinfo('winvideo',1)" in Windows
a.SupportedFormats              # check supported formats
vid = videoinput('linuxvideo', 1, 'YUYV_640x480'); # open video stream with one of supported formats

start(vid);                     # start processing video
preview(vid);                   # open preview window

pics = cell(1,20)               # create array to store images from video
for i = 1:20                    
   pause(1);                    # every 1 second ...
   pics{i} = getsnapshot(vid);  # get video frame and save into corresponding position in array
end

但在Octave中,视频相关功能都不起作用。也可以使用Octave bindings for OpenCV来捕获视频,但我主要是寻找更多便携式方式。

2 个答案:

答案 0 :(得分:3)

安装并加载图像采集包。 有关更多信息,请阅读Wiki:http://wiki.octave.org/Image_acquisition_package

答案 1 :(得分:1)

如果其他解决方案失败,您可以尝试逐帧捕获。您可以使用for循环并将帧添加/绑定在一起。 aviread已经在那里捕捉帧。至少这是我在其他一切都失败时的表现。