从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预览采集与显示(平台系统camera功能理解分享)