OpenCV - Ubuntu 安装

本文介绍了如何在Ubuntu上安装OpenCV并解决SURF专利问题。通过使用非免费存储库来安装包含SURF功能的OpenCV版本,文章提供了详细的步骤指导。

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

OpenCV - Ubuntu 安装

OpenCV有很多版本,参考官网,最近版本也发生了很多变化:

  • OpenCV3.3.1
  • 增加了DNN

nonfree文件或目录缺失问题

致命错误: opencv2/nonfree/nonfree.hpp:没有那个文件或目录
fatal error: opencv2/nonfree/nonfree.hpp: No such file or directory

出现这个问题的根本原因是SURF是有专利保护的,不是开源免费的,OpenCV里面并不包含。

sudo apt-get update
sudo add-apt-repository –yes ppa:xqms/opencv-nonfree
sudo apt-get update
sudo apt-get install libopencv-nonfree-dev


<think>好的,我需要帮用户在Ubuntu安装opencv-contrib-python。首先,用户提到他们用的是Ubuntu系统,所以我要考虑Ubuntu安装方式。根据提供的引用资料,用户可能有两种安装方法:通过pip直接安装预编译的包,或者从源码编译安装。 首先,检查引用中的信息。引用[1]给出了使用清华镜像源通过pip安装的命令,即`pip install opencv-contrib-python -i https://pypi.tuna.tsinghua.edu.cn/simple`。这是比较快捷的方法,适合不需要特定配置的用户。但用户需要注意Python版本,可能需要用pip3代替pip,特别是如果系统同时有Python2和3的话,如引用[2]提到的pip和pip3的区别。 另外,引用[3]和[4]提到了从源码安装的方法,包括下载opencvopencv_contrib的源码,编译安装。这可能适用于需要自定义模块或特定版本的情况。但源码安装步骤较多,容易出错,比如依赖项安装、CMake配置等。用户如果是新手,可能会觉得复杂,但如果有特殊需求,比如多版本控制或使用contrib模块中的额外功能,源码安装是更好的选择。 现在需要考虑用户的具体情况。如果用户只是想快速安装并使用基本功能,推荐使用pip安装。但需要提醒可能的限制,比如预编译包可能不包含某些功能。如果用户需要完整功能或特定配置,源码安装更合适。同时,用户可能遇到的问题包括依赖项缺失、版本冲突等,需要给出解决建议,例如如何卸载旧版本(引用[2]中的卸载步骤)。 此外,用户可能对Python环境不熟悉,需要明确说明使用pip还是pip3,并检查是否已安装pip工具。可能还需要安装python3-dev等开发包,确保编译时没问题。 总结步骤:首先建议使用pip安装,简单快捷。如果遇到问题或需要更多功能,再引导源码安装。同时提供卸载旧版本的方法,避免冲突。注意引用对应的参考资料,确保用户能找到详细步骤。</think>在Ubuntu系统上安装`opencv-contrib-python`可以通过以下两种方法实现,具体选择取决于需求: --- ### **方法一:使用pip直接安装(推荐)** 适用于快速安装预编译版本,但可能缺少部分非标准功能模块[^1]。 1. **安装依赖项**: ```bash sudo apt update sudo apt install -y python3-pip python3-dev libgtk2.0-dev libavcodec-dev libavformat-dev libswscale-dev ``` 2. **通过pip安装**(使用清华镜像加速下载): ```bash pip3 install opencv-contrib-python -i https://pypi.tuna.tsinghua.edu.cn/simple ``` > 注意:若系统存在多个Python版本,请用`pip3`代替`pip`[^2]。 --- ### **方法二:源码编译安装** 适用于需要自定义功能或多版本控制[^3][^4]。 1. **安装依赖项**: ```bash sudo apt update sudo apt install -y cmake g++ build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libswscale-dev libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libdc1394-22-dev ``` 2. **下载源码**: ```bash wget -O opencv.zip https://github.com/opencv/opencv/archive/4.6.0.zip wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.6.0.zip unzip opencv.zip && unzip opencv_contrib.zip ``` 3. **编译安装**: ```bash cd opencv-4.6.0 mkdir build && cd build cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.6.0/modules \ -D WITH_TBB=ON \ -D WITH_FFMPEG=ON .. make -j$(nproc) sudo make install ``` --- ### **验证安装** 运行Python终端输入以下代码: ```python import cv2 print(cv2.__version__) # 应输出类似"4.6.0" ``` --- ### **常见问题处理** 1. **卸载旧版本**: ```bash pip3 uninstall opencv-python opencv-contrib-python sudo apt purge python3-opencv # 若通过apt安装过 ``` 2. **版本冲突**:确保系统中仅存在一个OpenCV版本[^2]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值