在Python中从网络摄像头捕获图像

0 投票
1 回答
2608 浏览
提问于 2025-04-18 17:38
import cv2.cv as cv 
import numpy as np

Capture = cv.CaptureFromCAM(0)
image = cv.QueryFrame(Capture) #here you have an IplImage
imgarray = np.asarray(image[:,:]) #this is the way I use to convert it to numpy ar

我正在使用这段代码从网络摄像头捕捉图像,我想把它显示在画布上,请帮帮我。上面的代码只是启动了摄像头,没有任何错误。请问你能帮我把这个图像保存到硬盘上,或者显示在画布上吗?真的很急。这是我正在做的项目的一部分。非常感谢你的帮助。

我使用的是pygame这个库。

import pygame
import pygame.camera
from pygame.locals import *
import pygame.image

pygame.init()
pygame.camera.init()

camlist = pygame.camera.list_cameras()
cam = pygame.camera.Camera(camlist[0],(640,480))

if camlist:
    cam = pygame.camera.Camera(camlist[0],(640,480))
cam.start()
image = cam.get_image()

我用这段代码从网络摄像头捕捉图像,想做同样的事情,但它什么都不做。请帮我,要么把图像存到硬盘上,要么显示在画布上。

1 个回答

2
import cv2
cam = cv2.VideoCapture(0)
winName = "image"
cv2.namedWindow(winName, cv2.CV_WINDOW_AUTOSIZE)
s, im = cam.read() # captures image
cv2.imshow(winName, im) # displays captured image
cv2.imwrite("test.bmp",im) # writes image test.bmp to disk
cv2.waitKey()

当然可以!请把你想要翻译的内容发给我,我会帮你把它变得简单易懂。

撰写回答