繁体   English   中英

从源代码成功构建 Opencv,但无法导入 anaconda 中的 python

[英]Built Opencv from source successfully, but can't import to python in anaconda

我想使用 opencv 和 GPU 以加快速度。 所以我遵循了一些关于如何从源代码构建 opencv 以及 CUDA 和 cudnn 的教程。

我按照本教程没有任何问题,直到他的部分

在他的终端中import cv2

我的终端显示在 python 环境中找不到 cv2。

Python 3.8.5 (default, Sep  3 2020, 21:29:08) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
import cv2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'cv2'

我查找了这其中的原因,并找到了一些线索。 这篇文章表明他遇到了和我一样的问题。

使用 Cmake GUI 创建构建文件夹后,从 OpenCV.lsn 中没有binding文件夹开始图片在这里

另外,我在我的build/bin/release/opencv_version_win32.exe的 To build session 下没有 python2 或 python3,而是它们不可用 session。 图片在这里

但是,经过数小时的努力寻找有效的解决方案,我仍然找不到任何可以帮助我的东西。 所以我希望有人也面临这个问题并且可以帮助我解决这个问题。

经过一番挖掘,我发现了一些非常有趣的东西。 我通过stackoverflow,github和opencv官网看到了很多关于缺少python解释器和相关库的建议。

所以我只是想尝试一下,发现基础 python 解释器中缺少我的numpy ,并在我尝试导入 numpy 时显示以下错误。

错误与这篇文章相同(我无法再重现错误,所以我将它链接给你看)

为了检查这一点,您不能只从基础环境中导入 numpy。 You have to go to C:\{MY DIRECTORY}\anaconda3\python.exe , click the file python.exe and try to import numpy

我以前从未注意到这一点,因为我总是在由 Anaconda 创建的虚拟环境中工作,所以 numpy 已经存在。 (我不知道遇到这个问题的每个人是否总是这样,我不知道对于不使用anaconda的人来说这是否是相同的解决方案)

我所要做的就是找到我的 Anaconda 基础库的路径(在我的情况下是)

C:\{MY DIRECTORY}\anaconda3\Library\bin

复制路径并将其添加到系统 PATH。

之后,我再次重做 CMake 构建过程,一切正常

希望这可以帮助其他面临同样问题的人。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM