如何在rpi3上通过python运行网络摄像头

2024-09-29 17:14:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试着用MS lifecam和我的树莓-pi-3。当我键入以下命令时,它在命令行上工作:

$ fswebcam img.jpg
Trying source module v4l2...
/dev/video0 opened.
...
Writing JPEG image to 'img.jpg'  # this works fine

现在我想通过python代码运行摄影机:

^{pr2}$

报告的错误是:

SystemError: ioctl(VIDIOC_S_FMT) failure: no supported formats

我很困惑。相机是由rasp-pi支持的,所以我的python代码似乎需要在某个地方更新。你能帮忙吗?在


Tags: 命令行dev命令sourceimg键入pi树莓
3条回答

有问题,一旦我停止了使用视频流的进程,错误就解决了。在

详情

我也有同样的问题。当

/dev/video0

被列入名单,摄像机启动()导致了相同的错误。在

我跑了

^{pr2}$

早些时候。所以我验证了服务是否在运行,停止了它,然后尝试了pygame。而且成功了。在

   sudo service  status-all
   sudo service motion stop

试着用这个:

camera = pygame.camera.Camera(pygame.camera.list_cameras()[0])
camera.start()
img = camera.get_image()
pygame.image.save(img, FILENAME)

您也可以使用此选项:

 import cv2
cv2.namedWindow("preview")
vc = cv2.VideoCapture(0)
if vc.isOpened(): 
rval, frame = vc.read()
else:
rval = False

while rval:
cv2.imshow("preview", frame)
rval, frame = vc.read()
key = cv2.waitKey(20)
if key == 27:  # exit on ESC
    break
cv2.destroyWindow("preview")

相关问题 更多 >

    热门问题