27_将视频按帧率获取图片

复制代码
# 导入所需要的库
import cv2
import numpy as np

# 定义保存图片函数
# image:要保存的图片名字
# addr;图片地址与相片名字的前部分
# num: 相片,名字的后缀。int 类型
def save_image(image, addr, num):
    address = addr + str(num) + '.jpg'
    cv2.imwrite(address, image)


# 读取视频文件
videoCapture = cv2.VideoCapture("D:/pycharm/pycharm-cope/opencv/resource/videos/00_Scenery.mp4")
# 通过摄像头的方式
"""这里是读取本地的视频,如果要真正实现实时预览,可以利用摄像头,通过推流方式实现实时预览。采用摄像头方式如下:
videoCapture=cv2.VideoCapture(1),这里的1表示的是摄像的前置还是后置镜头"""
# videoCapture=cv2.VideoCapture(1)

# 读帧
success, frame = videoCapture.read()
i = 0
"""当我们想按秒提取时,只要我们能知道视频每秒有多少帧,然后在上面的代码基础上每隔那么多帧提取一次就行了,
这就需要查看视频的帧率。一般情况下随便用一个播放器打开视频后右键查看其属性就可以看到帧率。现在我的视频帧率为12 ,
每隔12帧提取一次就可以得到每秒的图片。"""
timeF = 12
j = 0
while success:
    i = i + 1
    if (i % timeF == 0):
        j = j + 1
        save_image(frame, 'D:/pycharm/pycharm-cope/opencv/resource/videos/photo', j)
        print('save image:', i)
    success, frame = videoCapture.read()
复制代码

 

posted @   tuyin  阅读(234)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示