在Python中将网络摄像头视频表示为像素阵列流

时间:2013-10-05 07:10:39

标签: python opencv video video-streaming

我想知道是否有办法将每秒网络摄像头视频的每一帧分析为一个像素数组。例如:

因此,如果我的网络摄像头分辨率是3 x 3(不是),我会得到一个不断更新的此表格列表(或关闭)。

pixel_list = [[(R, G, B), (R, G, B)], [(R, G, B), (R, G, B)], [(R, G, B), (R, G, B)]}

谢谢!

我的很多谷歌搜索都把我推向了opencv的方向,但我不确定'如何'到达我需要做的事情。

2 个答案:

答案 0 :(得分:2)

这里你去!

import cv2
cap = cv2.VideoCapture(-1)
while True:
    print(cap.read())

新的OpenCV API(模块cv2)将NumPy数组用于图像。

答案 1 :(得分:1)

我建议您使用Video4Linux打开网络摄像头,并检索帧。完成帧后,您将获得像素数据。这是v4l的Python绑定的链接: https://pypi.python.org/pypi/v4l2

根据您需要对帧进行的操作(处理?),opencv可能会很好 选择但对于基本甚至更高级的视频数据分析,scipy非常好。那里 也是Python的其他图像处理工具包。