我想知道是否有一种方法可以将每秒网络摄像头视频的每一帧作为像素数组进行分析。例如:
因此,如果我的网络摄像头的分辨率是 3 x 3(不是),我会得到一个不断刷新的这种形式的列表(或关闭)。
pixel_list = [[(R, G, B), (R, G, B)], [(R, G, B), (R, G, B)], [(R, G, B), (R, G, B)]}
谢谢!
我的很多谷歌搜索都将我推向了 opencv 的方向,但我不确定“如何”准确地完成我需要做的事情。
我想知道是否有一种方法可以将每秒网络摄像头视频的每一帧作为像素数组进行分析。例如:
因此,如果我的网络摄像头的分辨率是 3 x 3(不是),我会得到一个不断刷新的这种形式的列表(或关闭)。
pixel_list = [[(R, G, B), (R, G, B)], [(R, G, B), (R, G, B)], [(R, G, B), (R, G, B)]}
谢谢!
我的很多谷歌搜索都将我推向了 opencv 的方向,但我不确定“如何”准确地完成我需要做的事情。
给你!
import cv2
cap = cv2.VideoCapture(-1)
while True:
print(cap.read())
新的 OpenCV API(模块cv2
)使用 NumPy 数组存储图像。
我建议您使用 Video4Linux 打开您的网络摄像头并检索帧。一旦你得到帧,你就有像素数据。这是 v4l 的 Python 绑定的链接: https ://pypi.python.org/pypi/v4l2
根据您需要对帧执行的操作(哪些处理?),opencv 可能是一个不错的选择,但对于基本甚至更高级的视频数据分析,scipy 非常好。还有其他用于 Python 的图像处理工具包。