运行环境:
ubuntu kylin 14.04
OpenCV 2.4.11
一、安装OpenCV2.4.11
1、下载opencv
在opencv官网下载源代码:https://github.com/Itseez/opencv/archive/2.4.11.zip
2、然后解压得到opencv-2.4.11文件夹,我把它放在主文件夹~/下面
unzip opencv-2.4.11.zip
3.进入源码目录
cd opencv-2.4.11
4. 事先安装一些软件
sudo apt-get install build-essential cmake libgtk2.0-dev pkg-config python-dev python-numpy libavcodec-dev libavformat-dev libswscale-dev
5. 进入cmake文件夹
cd cmake
若没有cmake文件夹,则需要编译源码安装
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
sudo make install
6. cmake编译生成Makefile,
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
安装所有的lib文件都会被安装到/usr/local目录
7. 编译,并安装(Y430P耗时半小时)
sudo make install
8.测试,在某个目录下建立一个test.cpp文件
#include <cv.h>
#include <highgui.h>
using namespace cv;
int main(int argc, char* argv[]) {
Mat image;
image = imread(argv[1], 1);
if (argc != 2 || !image.data) {
printf("No image data\n");
return -1;
}
namedWindow("Display Image", CV_WINDOW_AUTOSIZE);
imshow("Display Image", image);
waitKey(0);
return 0;
}
同目录,新建一个文件CMakeLists.txt,写入如下内容
project(test)
find_package(OpenCV REQUIRED)
add_executable(test test)
target_link_libraries(test ${OpenCV_LIBS})
cmake_minimum_required(VERSION 2.8)
编译成可执行文件
cmake .
make
随便弄个jpg图片做个测试,注意要和上面那个可执行文件放在同一目录下面,我这里名字取的是test.jpg。
./test test.jpg
如果能看到照片,那就表示成功了。
二、卸载OpenCV2.4.11
1. Going to the “build” folder directory of opencv from terminal, and execute the following:
$ sudo make uninstall
$ cd ..
$ sudo rm -r build
$ sudo rm -r /usr/local/include/opencv2 /usr/local/include/opencv /usr/include/opencv /usr/include/opencv2 /usr/local/share/opencv /usr/local/share/OpenCV /usr/share/opencv /usr/share/OpenCV /usr/local/bin/opencv* /usr/local/lib/libopencv*
这一步可能有error
下面执行如下操作:
sudo apt-get –purge remove opencv-doc o##**pencv-data python-opencv
三、错误总结
1、运行opencv打开笔记本内置摄像头摄像处理程序,
报错如下:
VIDEOIO ERROR: V4L/V4L2: VIDIOC_S_CROP
原因:
val/v4l2等必要的依赖库安装在opencv之后,opencv库编译时没有编译进去
参考文章:
[1] ubuntu14.04中安装opencv2.4.11
[2] ubuntu14.04安装opencv2.4.10
[3] ubuntu14.04下安装opencv2.4.9–YongqiangGao
[4] Ubuntu14.04安装 OpenCV 2.4.9–项脊轩
[5] ubuntu卸载opencv并重装opencv3.0.0
[6] 报错VIDEOIO ERROR: V4L/V4L2: VIDIOC_S_CROP的解决