VideoCapture无法在OpenCV 2.4.2中工作
我最近在Ubuntu 12.04中安装了OpenCV 2.4.2。VideoCapture无法在OpenCV 2.4.2中工作
cap = VideoCapture(0)
正在工作。但我无法从某些视频源抓取帧。
cap = VideoCapture("input.avi")
img = cap.read()
给我一个所有零元素的numpy。
我还安装了ffmpeg的0.11,X264,为v41-0.8.8(全部是最新的稳定版本)的最新快照
cmake -D WITH_QT=ON -D WITH_FFMPEG=ON -D WITH_OPENGL=ON -D WITH_TBB=ON -D BUILD_EXAMPLES=OFF WITH_V4L=ON ..
make
sudo make install
当我做cmake的,我得到这个
- - 检测到的GNU GCC的版本:46(406)
- 实测值的OpenEXR:/usr/lib/libIlmImf.so
- 寻找LINUX/videodev.h
- 寻找LINUX/videodev.h - 不发现
- 寻找LINUX/videodev2.h
- 寻找LINUX/videodev2.h - 发现
- 寻找了libavformat/avformat.h
- 寻找了libavformat/avformat.h - 发现
- 寻找的ffmpeg/avformat.h
- 寻找的ffmpeg/avformat.h - 没有找到
- 检查模块 'TBB'
- 包 'TBB' 未找到
而且
-- Video I/O:
-- DC1394 1.x: NO
-- DC1394 2.x: YES (ver 2.2.0)
-- FFMPEG: YES
-- codec: YES (ver 54.23.100)
-- format: YES (ver 54.6.100)
-- util: YES (ver 51.54.100)
-- swscale: YES (ver 2.1.100)
-- gentoo-style: YES
-- GStreamer:
-- base: YES (ver 0.10.36)
-- app: YES (ver 0.10.36)
-- video: YES (ver 0.10.36)
-- OpenNI: NO
-- OpenNI PrimeSensor Modules: NO
-- PvAPI: NO
-- UniCap: NO
-- UniCap ucil: NO
-- V4L/V4L2: Using libv4l (ver 0.8.8)
-- XIMEA: NO
-- Xine: NO
我看了videodev.h等
- /usr/include/linux/videodev2.h存在
- /usr/include/libavformat/avformat.h存在
- 的/ usr /local/include/libavformat/avformat.h存在
但我找不到ffmpeg/avformat.h
这里有什么问题?
所以,我意识到ffmpeg有一些问题。我重建并安装了ffmpeg,然后更改了cmake的标志以使opencv成为可能。
对于ffmpeg的,
./configure --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-nonfree --enable-postproc --enable-version3 --enable-x11grab
make
sudo make install
对于OpenCV的,
cmake -D CMAKE_BUILD_TYPE=RELEASE ..
make
sudo make install
下面是完整的脚本安装OpenCV 2.4.2 https://github.com/jayrambhia/Install-OpenCV/blob/master/Ubuntu/2.4/opencv2_4_2.sh
,这里是我的约2.4 OpenCV的博客帖子。2安装详细http://jayrambhia.com/blog/install-opencv-2-4-in-ubuntu-12-04-precise-pangolin/
我根本不明白他们如何使它变得如此复杂,这应该是默认的 – 2012-09-06 15:03:42
如果我通过apt-get安装所有东西,该怎么办?你认为我可以运行吗? – 2014-11-07 16:06:28
我想这可能是一些许可证问题,必须这样做。 – Russj 2014-12-05 03:13:25
要运行一个完全安装的OpenCV的请尝试以下操作:
sudo apt-get install libopencv-dev python-opencv
有关详细信息请查看以下链接http://milq.github.io/install-opencv-ubuntu-debian/
我也有videoCapture一个问题,当试图打开视频时崩溃... – 2012-09-06 15:02:56