[英]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.