当前位置: 首页 > 知识库问答 >
问题:

Python 3.5中的Python OpenCV导入错误

龙欣德
2023-03-14

我在用python 3.5安装opencv时遇到一些困难。

我已经链接的cv文件,但在导入cv2我得到一个错误说重要错误:dlopens(/库/框架/Python.framework/Versions/3.5/lib/python3.5/site-packages/cv2.so,2):符号未找到:_PyCObject_Type或更具体地说:

/库/框架/Python。framework/Versions/3.5/bin/python3。5/用户/杰米/桌面/测试仪/测试。py回溯(最后一次调用):文件“/Users/Jamie/Desktop/tester/test.py”,第2行,导入cv文件“/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site packages/cv.py”,第1行,来自cv2。cv import*ImportError:dlopen(/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/cv2.so,2):未找到符号:_-PyCObject_-Type引用自:/Library/Frameworks/Python。framework/Versions/3.5/lib/python3。5/现场包/cv2。在/Library/Frameworks/Python中也应如此:平面名称空间。framework/Versions/3.5/lib/python3。5/现场包/cv2。所以

我已经链接了简历。py和cv2。因此,从位置/usr/local/ceral/opencv/2.4。12_2/lib/python2。7/站点包正确地装入/Library/Frameworks/Python。框架/版本/3.5/bin

有谁能帮忙吗?

非常感谢

共有3个答案

高勇
2023-03-14

回答得很好,杰米,我也关注了那个网站。我试图通过这些make目标使整个过程可重复。。

opencv-build:
    source $(VENV_DIR)/bin/activate && \
    cd $(OPENCV_SRC) && \
    mkdir -p build && \
    cd build && \
    cmake -D CMAKE_BUILD_TYPE=RELEASE \
    -D CMAKE_INSTALL_PREFIX=$(realpath $(BUILD_DIR)) \
    -D PYTHON3_NUMPY_INCLUDE_DIRS=$(realpath $(VENV_DIR)/lib/python3.5/site-packages/numpy/core/include) \
    -D BUILD_opencv_python3=ON \
    -D INSTALL_C_EXAMPLES=OFF \
    -D INSTALL_PYTHON_EXAMPLES=ON \
    -D OPENCV_EXTRA_MODULES_PATH=$(realpath $(OPENCV_CONTRIB_SRC)/modules) \
    -D BUILD_EXAMPLES=ON ..  && \
    make -j4 -C . 

要使它出现在python3虚拟环境,但是你需要这样做,然后:

so-copy:
    cp $(realpath $(OPENCV_SRC)/build/lib/cv2.so) $(realpath $(VENV_DIR)/lib/python3.5/site-packages/)
    cp $(realpath $(OPENCV_SRC)/build/lib/python3/cv2.cpython-35m-darwin.so) $(realpath $(VENV_DIR)/lib/python3.5/site-packages/)

然后你可以测试它是否有效。。

import cv2  # Imports without problems...

我认为osx的cv2。cpython-35m-darwin。所以这是你唯一需要的,但我只是复制了两者。

解晟睿
2023-03-14

找到答案-按照本网站上的说明进行操作,但您必须更改为您正在使用的python版本。

此外,我没有打扰虚拟环境。

最后cv2.so实际上被称为构建/lib文件夹中的cv2.cpython-35m-darwin.so。

然后它就起作用了。

康文昌
2023-03-14

无需更改python版本,只需使用pip命令opencmd(管理模式)并键入

pip安装opencvpython

 类似资料:
  • 问题内容: 我与此线程有关twilio-python的问题相同: twilio python模块版本2.0.8中缺少twilio.rest吗? 但是我有同样的问题,但是我已经安装了3.3.3。尝试导入twilio.rest时,仍然出现“没有名为rest的模块”的信息。 从独立的python脚本加载库是可行的。所以我知道安装软件包的pip可行。 但这不起作用: 您知道我接下来可以尝试什么吗? 问题答

  • System:oxe Python来源:Python.org 我使用pip安装matplotlib,下面是我得到的结果 当前用户不拥有目录“/Users/clarence/Library/Caches/pip/http”或其父目录,缓存已被禁用。请检查该目录的权限和所有者。如果使用sudo执行pip,您可能需要sudo的-H标志。当前用户不拥有目录“/Users/clarence/Library/

  • 还尝试了文件->无效缓存\restart。

  • 我正试着用这本手册开始tensorflowhttps://www.tensorflow.org/install/install_windows 所有安装都成功完成,我正在使用python 3.5.2和最新版本的pip,遇到这个错误,有人告诉我应该怎么做吗? 在swig\parth\AppData\Local\Programs\Python35\lib\site-p tensorflow\Pytho

  • 我收到一份 第二次在spyder中从子文件夹导入库时出错,但第一次(在重新启动spyder后)或在spyder之外时,它工作正常。 代码是: 这里是测试库。py只是 输出是: 如果库不在子文件夹中,即。 他经常胡闹。然而,我有足够的功能,没有子文件夹将是非常烦人的。 这是spyder-3.3。2,但spyder 3.3版也出现了这种情况。0-py36_1。python版本是3.6。4.,spyde

  • 我不知道它为什么要在HDFS中寻找avro jar文件。 和设置为Hadoop目录。我使用的是Hadoop 2.6.0和sqoop 1.4.5版本