ubuntu16.04 python opencv2.4.9安装

本文详细介绍了如何在Ubuntu环境下从源码编译安装OpenCV,并针对编译过程中可能出现的问题提供了具体的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 安装python:

一般Ubuntu会自带,如果需要其他自定版本,请自行下载安装。

2. 下载OpenCV的源码

OpenCV官网上有linux版本的源码包可以下载,不过最好是从git上下载,这样可以保证下载得到的是最新的代码:
  1. wget -O opencv.zip https://github.com/Itseez/opencv/archive/2.4.9.zip  
  2. unzip opencv.zip  

3. 编译安装

进入到OpenCV的文件夹中,创建一个build目录,进行编译:
 
cd opencv-2.4.9  
 
mkdir 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.youkuaiyun.com/download/znculee/9294885

 

Bcudalegacy/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__   

'2.4.9'
 
出现这个表示安装成功!
 
如果出现  ImportError: No module named cv2

安装扩展包即可:pip install opencv-python

或者:sudo apt-get install python-opencv

转载于:https://www.cnblogs.com/kaka7518/p/9183046.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值