python - 从源代码安装 Opencv 到 conda 环境
问题描述
我想从源代码将 opencv 安装到我的 conda 环境中。由于我使用的是 Jetson,因此没有可用于 opencv 的 pip 或 conda 包。
我使用这个命令从源代码安装,
-D BUILD_EXAMPLES=OFF
-D BUILD_opencv_python2=ON
-D BUILD_opencv_python3=ON
-D CMAKE_BUILD_TYPE=RELEASE
-D CMAKE_INSTALL_PREFIX=${PREFIX}
-D CUDA_ARCH_BIN=5.3,6.2,7.2
-D CUDA_ARCH_PTX=
-D CUDA_FAST_MATH=ON
-D CUDNN_VERSION='8.0'
-D EIGEN_INCLUDE_PATH=/usr/include/eigen3
-D ENABLE_NEON=ON
-D OPENCV_DNN_CUDA=ON
-D OPENCV_ENABLE_NONFREE=ON
-D OPENCV_EXTRA_MODULES_PATH=/tmp/build_opencv/opencv_contrib/modules
-D OPENCV_GENERATE_PKGCONFIG=ON
-D WITH_CUBLAS=ON
-D WITH_CUDA=ON
-D WITH_CUDNN=ON
-D WITH_GSTREAMER=ON
-D WITH_LIBV4L=ON
-D WITH_OPENGL=ON"
如何将 python 依赖项安装到我的 conda 环境而不是将其安装到usr/local/python
?
解决方案
默认情况下,它将安装到您的系统 Python 路径,您可以通过输入以下命令查看:
which python
在终端。在您的 cmake 命令(您发布的上述列表)中,您需要告诉它您要构建到哪个 python 可执行文件路径。目前,您的构建指向上述默认 Python 位置,现在您希望将其指向您的 Conda Python 路径。例如,我在 Anaconda 中的 Python 环境的基本路径是:
/home/robert/anaconda3/
您可以通过在终端中输入以下内容来获取您的 Anaconda 环境及其位置的列表:
conda env list
为此,您需要更新 cmake 命令以告诉它您要构建的 Python 路径的位置。我之前使用过这篇文章来帮助我正确指定 Python 可执行文件构建路径,并且在为 venv 指定 Python 路径时它对我有用。
例如,如果我想安装到我的 Anaconda 环境之一,我会在我的 cmake 中执行以下操作:
-D PYTHON_DEFAULT_EXECUTABLE=$(/home/robert/anaconda3/envs/venv_openvcv/python3)
当您构建 cmake 时,滚动浏览输出并特别注意以下内容:
Python (for build): /home/robert/anaconda3/envs/venv_openvcv/python3
这是您确认是否要将 opencv 构建到正确的 Python 可执行文件(您指定的 Anaconda )的方式。
编辑:此外,这里是一个教程,详细概述了为 Anaconda 环境编译 OpenCV 的步骤 -为 Conda 虚拟环境安装 OpenCV
推荐阅读
- python - 如何使用 Flask 从 Postgresql 数据库中获取数据并显示 HTML 表
- react-native - 获取 Flatlist ItemSeparatorComponent 尾随项目?
- java - 在弹性搜索上创建自定义 CRUD
- python-3.x - 如何使用 SCRIPT 命令从 SPSS 语法窗口正确调用 Python 3 脚本(+ 运行时的其他问题)
- python - 比较 2 个列表并返回不匹配
- c# - 使用 SharpMap 在反子午线处包裹 OpenStreetMap
- laravel - Laravel Eloquent 通过一列作为键,另一列作为值来获取关系表数据
- mongodb - 如何将数组文档值收集到 MongoDB 中的父文档中
- microsoft-teams - 无法编写主动消息 Microsoft Teams Bot
- vue.js - Vue:如何使用新的修饰符扩展存在指令