系统:Ubuntu 14.04
python : 2.7.10
opencv : 2.4.9
1、下载 opencv 源码 下载
2、解压到任意目录
unzip opencv-2.4.9.zip
3、进入源码目录,创建release目录(或者 build 目录都行)
cd opencv-2.4.9
mkdir release
4、可以看到在OpenCV目录下,有个CMakeLists.txt文件,这是用于编译opencv源码的,编译之前需要需要事先安装一些软件
sudo apt-get install build-essential cmake libgtk2.0-dev pkg-config python-dev python-numpy libavcodec-dev libavformat-dev libswscale-dev
5、 进入release目录,安装OpenCV是所有的文件都会被放到这个release目录下
cd release
6、 用cmake编译OpenCV源码,安装所有的lib文件都会被安装到/usr/local目录下
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
7、 安装
sudo make install
8、 测试,在某个目录下建立一个test.cpp文件
#include
#include
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;
}
9、在跟上面的test.cpp 同个目录下,写一个cmake的makefile,也叫CMakeLists.txt,用于编译 test.cpp
project(test)
find_package(OpenCV REQUIRED)
add_executable(test test)
target_link_libraries(test ${OpenCV_LIBS})
cmake_minimum_required(VERSION 2.8)
10、编译+运行(在跟8,9同个目录下)
cmake .
make
得到可执行文件 test,然后在该目录下放一张图片,比如 1.jpg,然后在命令行输入
./test 1.jpg
可以看到图片就是安装成功了。
编译安装好后的cv2.so,也就是python调用openc所需要的库,放在
/usr/local/lib/python2.7/site-packages
这个目录下,我们可以将这个目录添加到环境变量
export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages
这样便可以在python中 import cv2
如果用第三方python,则还需要将 /usr/local/lib/python2.7/site-packages 目录下的 cv2.so 复制到 第三方的python
/usr/local/lib/python2.7/site-packages 目录下,这里以 anaconda为例:
sudo cp /usr/local/lib/python2.7/site-packages/cv2.so ~/anaconda/lib/python2.7/site-packages