我对opencv很陌生,我试图通过OpenCV python访问我的Macbook内置摄像头,但它带来了一个错误。
import cv2
frameWidth = 640
frameHeight = 480
cap = cv2.VideoCapture(0)
cap.set(3, frameWidth)
cap.set(4, frameHeight)
cap.set(10,150)
while True:
success, img = cap.read()
cv2.imshow("Result", img)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
Traceback (most recent call last):
File "/Users/hasanaktas/PycharmProjects/OpencvPython/project3.py", line 12, in <module>
cv2.imshow("Result", img)
cv2.error: OpenCV(4.2.0) /Users/travis/build/skvark/opencv-python/opencv/modules/highgui/src/window.cpp:376: error: (-215:Assertion failed) size.width>0 && size.height>0 in function 'imshow'
已经尝试将VideoCapture(0)更改为VideoCapture(1)并添加以下代码,但仍然没有帮助。顺便说一下,使用PyCharm
cap.release()
cv2.destroyAllWindows()
发布于 2020-11-01 19:23:37
我想提两项建议。
#1:使您的终端或PyCharm能够到达摄像机。
System Preferences
-> Security and Privacy
-> Camera
并将PyCharm添加到列表中。-
#2而不是while True
使用while cap.isOpened()
,这样您就可以知道PyCharm
或terminal
可以访问您的相机。
视频捕获(0) cap.set(3,frameWidth) cap.set(4,frameHeight) cap.set(10,150)而cap.isOpened():成功,img = cap.read() if成功:cv2.imShow(“结果”,img),如果cv2.warkey(1)和0 0xFF == ord('q'):断裂(‘q’)
发布于 2022-03-15 17:38:18
我的Mac电脑上也有同样的问题。我只是替换了
cv2.VideoCapture(0)
使用
cv2.VideoCapture(1)
就像一种魅力。
发布于 2021-10-23 04:01:51
我也有同样的问题,但我没有找到任何解决办法。经过反复试验,我发现我的OpenCV
版本已经损坏。因此,我删除了它并安装了一个新的。您可以使用以下两个选项之一:1.终端运行brew uninstall opencv3
卸载opencv
,然后使用sudo apt-get install libopencv-dev python-opencv
命令进行安装。
2. Anaconda实际上,我用这个方法来解决我自己的问题。
然后单击installed并搜索opencv
:
选择opencv
包并卸载它。然后选择“未安装”并搜索opencv
,尝试重新安装opencv
。请小心安装正确的版本。
https://stackoverflow.com/questions/61979361
复制相似问题