1. 安装python:
一般Ubuntu会自带,如果需要其他自定版本,请自行下载安装。
2. 下载OpenCV的源码
- wget -O opencv.zip https://github.com/Itseez/opencv/archive/2.4.9.zip
- unzip opencv.zip
3. 编译安装
进入到OpenCV的文件夹中,创建一个build目录,进行编译:进入build目录
cd build
cmake选项:
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
结果发现如上配置会编译报错:
"nvcc fatal : Unsupported gpu architecture 'compute_11'"
改为如下选项可行:
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D CUDA_GENERATION=Kepler -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON
-D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=OFF -D WITH_OPENGL=ON -D BUILD_TIFF=ON ..
开始编译:
make -j 4
如果是安装opencv2.4.9可能会遇到如下错误
A、opencv-2.4.9/modules/gpu/src/nvidia/core/NCVPixelOperations.hpp(51): error: a storage class is not allowed in an explicit specialization
解决:
替换文件:NCVPixelOperations.hpp,所在目录:/Home/opencv-2.4.9/modules/gpu/src/nvidia/core
正确的NCVPixelOperations.hpp下载地址:http://download.csdn.net/download/znculee/9294885
B、cudalegacy/src/graphcuts.cpp:120:54: error: ‘NppiGraphcutState’ has not been declared
解决方法:
需要修改一处源码:
在graphcuts.cpp中将
#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)
改为
#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER) || (CUDART_VERSION >= 8000)
安装
sudo make install
4. 测试是否安装成功
python
>>>import cv2
>>>cv2.__version__
所有评论(0)