opencv - 在 Jetson Nano 上安装 OpenCV 4.1.2 时出现问题。导入 cv2,没有名为 'cv2' 的模块

标签 opencv nvidia opencv-python nvidia-jetson nvidia-jetson-nano

我从源代码安装了具有 CUDA 支持的 OpenCV 4.1.2。没有问题。并创建了一个从 OpenCV 安装目录到我的 virtualenv 的符号链接(symbolic link)

ln -s /usr/local/lib/python3.6/site-packages/cv2/python3.6/cv2.cpython-36m-aarch64-linux-gnu.so cv2.so

我在导入 cv2 时遇到问题
$ python
Python 3.6.9 (default, Nov  7 2019, 10:44:02) 
[GCC 8.3.0] on linux
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'
>>> 

我检查了站点包目录,我可以看到 cv2.so。我显然错过了一些东西。
在我看来,这里的主要问题是我无法链接到我的 virtualenv,事实上我能够检查我的安装及其工作
 /usr/local/lib/python3.6/site-packages/cv2/python-3.6$ python
Python 3.6.9 (default, Nov  7 2019, 10:44:02) 
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>>

最佳答案

问题解决了一个非常非常小的错误
我把名字从

cv2.cpython-36m-aarch64-linux-gnu.so to cv2.so

我意识到这是其中一个文件夹的问题,这将起到神奇的作用:
ln -s /usr/local/lib/python3.6/site-packages/cv2/python-3.6/cv2.so cv2.so

在 cv2 之后注意它的 python-3.6 而不是 python3.6

关于opencv - 在 Jetson Nano 上安装 OpenCV 4.1.2 时出现问题。导入 cv2,没有名为 'cv2' 的模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61282070/

相关文章:

opencv - 3D 刚性/仿射变换

python - 检查变量是否为无,但如果只有一个对象/数组则让通过

tensorflow - 计算能力 3.0 卡可以运行 Tensorflow 1.8 tensorflow-gpu 运行时吗?

Tensorflow 提示未检测到支持 CUDA 的设备

opencv - 使用opencv删除硬币阴影

python - OpenCVs BlobDetector 崩溃

android - 将 OpenCV 轮廓从 JNI C++ 函数传递到 Android 中的 Java

python - 导入av时无法使用opencv显示图像

c++ - 如何创建 NVIDIA OpenCL 项目

python-3.x - python给视频opencv添加音频