从ip camera的实时视频源中提取图像

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从ip camera的实时视频源中提取图像相关的知识,希望对你有一定的参考价值。

我想使用opencv从网络摄像头实时视频源每5分钟提取一次图像。我有以下代码从视频中提取。但是不知道如何为来自ipcamera的实时视频流做这件事

下面的代码用于从有效视频每隔5秒获取一个图像

import cv2

videoFile = "folder-path"
cap = cv2.VideoCapture(videoFile)
success, image = cap.read() 
success = True
count = 0

while success:
    # Capture frame-by-frame
    cap.set(cv2.CAP_PROP_POS_MSEC,(count*1000)
    success, image = cap.read()
    cv2.imwrite("file path/frame%d.jpg" % count, image)
    count = count + 5
答案

cv2.VideoCapture()与您关注的相机的索引一起使用。如果你只有一个摄像头,那么cv2.VideoCapture(0)就可以了。如果您有多个,则需要增加索引,直到您访问正确的相机。

此代码将每隔5分钟从摄像机0捕获一帧:

camera = cv2.VideoCapture(0)   # start a connection to the camera
ret, frame = camera.read()     # read a frame
cv2.waitKey(300000)            # wait 5 minutes

以上是关于从ip camera的实时视频源中提取图像的主要内容,如果未能解决你的问题,请参考以下文章

利用Android Camera2 的照相机api 实现 实时的图像采集与预览

Android Camera详解

Android 实时视频采集—Camera预览采集与显示(平台系统camera功能理解分享)

从实时视频设备捕获图像以供基于 Java 的应用程序使用的最佳方法是啥?

Android使用camera2复制内置视频录制质量和帧率

Android平台Camera实时滤镜实现方法探讨--磨皮算法探讨