报错信息:
Process finished with exit code 134 (interrupted by signal 6: SIGABRT)
一个在树莓派上完全没有问题的打开摄像头的脚本,在笔记本上跑时报错,摄像头无法打开:
#!/usr/bin/env python
# _*_ coding:utf-8 _*_
import cv2
import numpy
camera = cv2.VideoCapture(0)
while True:
ret, frame = camera.read()
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.imshow('frame', frame)
if cv2.waitKey(1) == ord('q'):
break
这个问题困扰了很久,外网上查了很久也没有找到解决方案。因为树莓派上挂了摄像头,插拔不是很方便,并且公司的显示器是VGA接口,所以今天出门没带树莓派。下午打开PyCharm想继续学习一下OpenCV,但是又被这个错给拦住了。
无意间想到会不会是Python没有权限调用系统摄像头导致的,然后在终端用管理员权限跑一下这个脚本,然后系统弹出一个弹窗,大概意思是询问“是否允许Python调用摄像头”,我还想思考一会儿,然后终端就报错了:
Process finished with exit code 134 (interrupted by signal 6: SIGABRT)
原来之前一直都是因为权限的原因,然后点了允许,之后就不报错了。