Python OpenCV在使用import cv2时给出错误
我在终端上用pip3安装opencv contrib python安装了cv2,它工作正常,但每当我尝试导入cv2或运行一个导入了cv2的vscode文件时,python就会空闲Python OpenCV在使用import cv2时给出错误,python,python-3.x,opencv,Python,Python 3.x,Opencv,我在终端上用pip3安装opencv contrib python安装了cv2,它工作正常,但每当我尝试导入cv2或运行一个导入了cv2的vscode文件时,python就会空闲 Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/sit
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/cv2/__init__.py", line 3, in <module>
from .cv2 import *
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/cv2/cv2.cpython-38-darwin.so, 2): Symbol not found: _inflateValidate
Referenced from: /Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/cv2/.dylibs/libpng16.16.dylib (which was built for Mac OS X 10.13)
Expected in: /usr/lib/libz.1.dylib
in /Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/cv2/.dylibs/libpng16.16.dylib
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/cv2/_-init___.py”,第3行,在
从cv2进口*
ImportError:dlopen(/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/cv2/cv2.cpython-38-darwin.so,2):未找到符号:_inflateValidate
引用自:/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site packages/cv2/.dylibs/libpng16.16.dylib(为Mac OS X 10.13构建)
应为:/usr/lib/libz.1.dylib
在/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site packages/cv2/.dylibs/libpng16.16.dylib中
在候机楼。
知道如何解决这个问题吗?OpenCV在Python中也称为cv2 OpenCV的安装因操作系统而异,因此下面Iam提供了Windows、Mac和Linux的说明: 在Windows上安装OpenCV 1.打开命令行并键入: pip安装opencvpython 2.然后打开Python会话并尝试: 进口cv2 3.如果没有错误,则OpenCV已成功安装,您可以跳过下一步 4.如果出现错误(通常说DLL加载失败),请从此链接下载预编译控制盘(.whl)文件,并使用pip安装。确保下载了适用于Windows版本和Python版本的正确文件。例如,对于Windows 64位上的Python 3.6,您可以执行以下操作: pip安装opencv_python3.2.0CP36Mwin_amd64.whl 5.然后再次尝试在Python中导入cv2。如果仍然存在错误,请在命令行中再次键入以下内容: pip安装opencvpython 6.现在您应该在Python中成功导入了TCv2 在Mac上安装OpenCV 目前Mac OS上的Python 3不支持OpenCV的某些功能,因此最好安装OpenCV for Python 2并使用Python 2运行包含SCV2代码的程序。值得一提的是,Python 2默认安装在Mac上,因此无需安装Python 2。以下是正确安装OpenCV的步骤:
我也有同样的问题,我发现这是因为我使用的是高版本的opencv(4.X.X),而我的系统版本是低版本的(MacOS10.12.5)。因此,我安装了opencv的较低版本(3.4.5.20),然后问题就解决了 可以使用以下命令列出opencv的版本:
pip install opencv-python==
错误:找不到满足opencv python==(版本:3.4.2.16、3.4.2.17、3.4.3.18、3.4.4.19、3.4.5.20、3.4.6.27、3.4.7.28、3.4.8.29、3.4.9.31、4.0.0.21、4.0.1.24、4.1.0.25、4.1.26、4.1.2.30、4.2.0.32)要求的版本
错误:找不到opencv python的匹配发行版==
然后,您可以尝试较低版本(例如3.4.5.20),并使用以下方法安装:
pip install opencv-python==3.4.5.20
然后您可以重试导入cv2以查看问题是否已解决。实际上,MacOS Catalina已经提出了此问题。我知道解决这个问题很痛苦,但到目前为止,唯一干净的方法是完全删除/卸载anaconda,然后重新安装,安装目录设置为/Users//anaconda3。目前,如果您注意到这是in/opt,它不适用于MacOS Catalina。我还建议使用命令行安装程序 更多信息:
问题报道:。我困惑了几个小时,对我来说,有效的方法是在conda环境中通过pip降低opencv(cv2)版本的等级(我是VirtualEnvironment的忠实粉丝,但目前还不能顺利地与apple silicon M1合作) 在激活的虚拟环境中执行这些步骤。要设置虚拟环境,请按照中的“安装conda”部分进行操作
操作系统:MacOS Big Sur 11.3.1可能您安装了两个Python,而cv2安装了一个Python,但IDLE可能使用其他Python。首先检查
pip3-V
是否显示它使用了Python 3.8
尝试使用wheel文件安装它,该文件的格式为请将答案格式化,以便清楚地知道,哪些是命令,哪些是人工指令此答案毫无帮助;首先,这个问题是针对macos的,所以你可以节省2/3的时间