我无法打开摄像机并读取帧。下面是Python代码。
import cv2 as cv
cap = cv.VideoCapture()
while True:
success, frame = cap.read()
... do something with the frame ...
... break on a certain key ...
cap.release()
我注意到success是假的,并且没有帧被读取。我不确定是否需要在我的MacBook专业版上设置特定权限。我研究了安全设置和辅助功能设置,但除了通常希望使用摄像机的应用程序之外,我找不到任何其他的设置。我也不知道我是否需要这样做,也不知道是否有什么方法可以打开Mac的摄像头。我使用的是PyCharm,我的macOS版本是10.15 (上周才升级)。
我目前的解决方法是将视频播放到文件中并读取该文件。这是可行的。如果你有什么建议让我试试,我会马上做的。谢谢。
发布于 2019-11-22 23:24:07
我找到了解决这个问题的办法。跳过接下来的3-4行,在没有逻辑的情况下查看解决方案。
信息:
在Mac /iOS/watches OS上的每个应用程序在访问相机/麦克风/画廊等功能之前都需要用户的隐私权限。这些权限存储在一个属性列表文件中,通常是"info.plist"。现在,由于此应用程序将在mac上运行,因此在运行之前,您需要指定权限。
解决方案:
在你的苹果电脑上打开以下内容: Finder -> Applications -> pycharm (右击以显示软件包内容) -> Contents ->你会看到一个名为info.plist的文件(如果没有,请搜索它)
现在,使用任何纯文本编辑器打开"info.plist“文件,并将以下代码粘贴到开始标记之后,开始标记最有可能位于第4行或第5行。
<key>Privacy - Camera Usage Description</key>
<string>py requires access to your camera.</string>
注释:如果您使用Xcode打开plist文件,它可能会在您未知的图形用户界面中打开。右键单击该文件并选择open as -> source code。
发布于 2020-03-11 18:19:48
为我尝试一下降级或升级到此特定版本的opencv: pip install opencv-python==4.1.2.30
发布于 2022-01-20 20:45:58
你的错误信息是什么?我无法使用python-opencv打开MacOS上的摄像头,错误消息是:
打开错误:(-215:断言失败)!函数‘
’中的info.backendFactory.empty()
我在初始化摄像头时添加了一个参数cv2.CAP_AVFOUNDATION
,它可以工作。
cap = cv.VideoCapture(0, cv2.CAP_AVFOUNDATION)
https://stackoverflow.com/questions/58404700
复制相似问题