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

在加载“cv2”二进制扩展时检测到递归

马侯林
2023-03-14

我有一个小程序,在pyinstaller编译后返回opencv错误。但如果没有编译,这就是工作!

我在Windows 10上使用Python 3.8.10

程序

导入pyautogui
将numpy作为np导入
导入cv2
尝试:
从PIL导入图像
除了导入错误:
导入图像

屏幕截图=pyautogui。屏幕截图('screenshot.png',region=(97059184101))#开始
img=cv2。imread('screenshot.png')
img=cv2。CVT颜色(img,cv2。颜色为灰色)
img=cv2。按位\u非(img)

错误:

['C:\Users\n1kro\AppData\Local\Temp\MEI83642\base\u library.zip','C:\Users\n1kro\AppData\Local\Temp\MEI83642\lib dynload','C:\Users\n1kro\AppData\Local\Temp\MEI83642']
回溯(最后一次调用):
文件“test.py”,第3行,在执行模块
文件“cv2\init.py”中的第476行,导入错误:加载“cv2”二进制扩展时检测到递归。检查OpenCV安装。[3416]由于未处理的异常,无法执行脚本“测试”

我试图重新安装所有,但它没有帮助!

查找此帖子:https://github.com/opencv/opencv/issues/13202但是不明白,该怎么办:(需要你的帮助,请!

共有2个答案

李洋
2023-03-14

打开cmd并使用pip安装不同的版本:

 pip install opencv-python==4.5.3.56

安装后pyinstaller没有问题

易炳
2023-03-14

我能够通过卸载opencv并安装旧版本来解决这个问题。版本4.5.3运行良好。

 类似资料:
  • 扩展说明 扩展点本身的加载容器,可从不同容器加载扩展点。 扩展接口 org.apache.dubbo.common.extension.ExtensionFactory 扩展配置 <dubbo:application compiler="jdk" /> 已知扩展 org.apache.dubbo.common.extension.factory.SpiExtensionFactory org.a

  • 我将开始使用PyQt5及其sqlite的Sql类。我想将扩展加载到sqlite中。为此,必须在运行时为sqlite启用扩展加载。在python模块sqlite3中,这是通过enable_load_扩展启用的。 在C中,句柄可以这样获得(取自https://doc.qt.io/qt-5/qsqldriver.html#handle): python的等价物是 作为旁注,在Pyside2中,handl

  • 我有一张时间和二进制值的表, 我想在一秒钟后检查二进制列中的值是1还是0,然后创建新值的新列。这里的时间没有继续。例如,这里的第一个值是(358.214),二进制值是1,如果我添加第二个值,它将是(359.214),基于上一个值,该值仍然是1,因为(359.214)不在数据集中。 我想添加两个新列,一个用于秒递增,一个用于新的二进制值。 我如何在R中做到这一点? 数据集, 更新我的尝试: 首先,我

  • 我有一个代码,其中矩阵hip_dir表示一个RGB图像。如果我检查它的形状,python返回(1080, 1920, 3)。如果我写 我得到保存在文件夹中的正确图像。然而,当我这样做的时候 我得到了同样的图像,黑色和白色(有一些蓝色像素,但是,使这更奇怪)。 如何正确使用imshow? 编辑: 使用命令cv2。cvtColor导致以下错误: Edit2:我发现发生这个错误的原因很简单,因为矩阵是n

  • 我有一个问题加载我的扩展在PHP在windows 7.我已经在我的windows上安装了php和IIS,当我检查phpinfo()页面时,我发现我的extension_dir是c:/php/exts。所以我将我的dll文件复制到那个目录中,并添加php.ini文件,然后我重启IIS并检查我的扩展名是否已加载: 但每次我运行这段代码时都会得到“否”。谢谢你的帮助。

  • 扩展点配置 来源: Dubbo 的扩展点加载从 JDK 标准的 SPI (Service Provider Interface) 扩展点发现机制加强而来。 Dubbo 改进了 JDK 标准的 SPI 的以下问题: JDK 标准的 SPI 会一次性实例化扩展点所有实现,如果有扩展实现初始化很耗时,但如果没用上也加载,会很浪费资源。 如果扩展点加载失败,连扩展点的名称都拿不到了。比如:JDK 标准的