【问题标题】:Why does my python script crash every time I run OpenCV function?为什么每次运行 OpenCV 函数时我的 python 脚本都会崩溃?
【发布时间】:2020-04-18 13:30:42
【问题描述】:

我使用的是 MacBook Air,每当我运行此代码时,系统都会在弹出窗口中显示一些错误,并显示如下长错误消息:

在终端显示:

"进程以退出代码 134 结束(被信号 6:SIGABRT 中断)

代码如下:

import cv2
cap = cv2.VideoCapture(0)
while True:
    ret, frame = cap.read()
    cv2.imshow('frame',frame)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

cap.release()
cv2.destroyAllWindows()

我尝试过使用 PyCharm 和 VS Code 等 IDE。当我尝试使用 Jupyter Notebook 时,它一直工作到我结束视频捕获,但当我尝试终止视频窗口时它又崩溃了。

【问题讨论】:

  • "系统抛出一些错误,弹出窗口带有大错误消息" : 弹出窗口中显示什么错误消息?它可以正常工作,就像我的 Mac 一样,来自 VS Code 和直接来自终端。您的 Mac OS 版本是多少?
  • 我添加了错误截图,mac 版本是 catalina,在编辑器、vs 代码和 pycharm 中都弹出错误,但是 jupyter notebook 一直运行到视频捕获,但是当我按“q”时它崩溃了使用“强制退出”

标签: python macos opencv


【解决方案1】:

您可能内存不足。

【讨论】:

  • 我的设备中有 35GB 可用空间
【解决方案2】:

我没有使用 Catalina,我无法重现您的错误,但启动 Mojave,Apple 现在要求用户明确允许应用程序访问相机。

Control access to your camera on Mac:

某些应用和网站可以使用您的相机拍摄照片或视频。 您可以决定允许哪些应用使用 Mac 上的相机。

  1. 在您的 Mac 上,选择 Apple 菜单 > 系统偏好设置,点击安全和隐私,然后点击隐私。

  2. 选择相机。

  3. 选择应用旁边的复选框以允许它访问您的相机。

    取消选中复选框以关闭对该应用的访问。

检查 PyCharm 和 VS Code 是否有权访问相机。此外,您的终端应该已经可以访问相机,所以如果它在终端中工作但在 IDE 中不工作,那么启用 IDE 的权限可以工作。

【讨论】:

    猜你喜欢
    • 2021-10-01
    • 2016-05-09
    • 1970-01-01
    • 2010-11-21
    • 1970-01-01
    • 1970-01-01
    • 2013-11-22
    • 2023-02-02
    • 1970-01-01
    相关资源
    最近更新 更多