gpt4 book ai didi

python - 从视频/图像中提取元数据

转载 作者:太空宇宙 更新时间:2023-11-03 22:05:52 25 4
gpt4 key购买 nike

我正在从正在查看并保存在我的计算机上的 IP 摄像机获取 MJPEG 流。可以找到我如何做的代码here .答案解释了如何从流中提取图像并保存它们。

为了提取图像,我使用答案中列出的方法并保存它,我只是使用 OpenCV 将图像放入 avi 容器中。代码如下。

writer=cv.CreateVideoWriter("video1.avi", cv.CV_FOURCC('X', '2', '6', '4'), fps, (320,240))
cv_image = cv2.imdecode(np.fromstring(jpg, dtype=np.uint8),cv2.CV_LOAD_IMAGE_COLOR)bitmap=cv.CreateImageHeader((cv_image.shape[1], cv_image.shape[0]), cv.IPL_DEPTH_8U, 3)
cv.SetData(bitmap, cv_image.tostring(), cv_image.dtype.itemsize * 3 * cv_image.shape[1])
cv.WriteFrame(writer, bitmap)

这里的位图是我正在显示并放入avi容器中的图像。

由于图像来自 IP 摄像机,因此它必须具有一些元数据,例如摄像机插入的时间戳。

问题:如何提取元数据?

我想到了两种方法:

  1. 从视频中提取帧,然后访问它们以访问时间戳。
  2. 从视频本身中提取时间戳。

我该如何进行?我使用哪种方法?我正在使用 Python 和 Opencv,并在 Windows 7 上工作。

我还读了this就像与我正在尝试做的事情有关。它没有解决我的问题。

最佳答案

如果有任何元数据附加到(单个图像)文件,不幸的是,opencv 将丢弃它。

此外,mjpeg 协议(protocol)本身没有任何时间戳(它只是一个与图像交错的 http-multi-part-form [非常类似于电子邮件附件],所以内容类型和内容长度就是你的全部到达那里 [并且仅当您使用 http1.1 时])。

很抱歉回答是否定的,但是为此您必须研究除 opencv 之外的图像处理工具。

关于python - 从视频/图像中提取元数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22396761/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com