吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2595|回复: 12
收起左侧

[Python 原创] 文件夹下所有mp4提取指定帧

  [复制链接]
16713720339 发表于 2022-12-13 10:17
粘贴路径,输入多少帧截图一次,就可以把文件夹下所有的mp4文件截图

[Python] 纯文本查看 复制代码
import cv2
import os


# 从.mp4 数据类型的视频中提取图像
def splitFrames_mp4(sourceFileName,zhenshu):

    # 在这里把后缀接上
    video_path = os.path.join(path, sourceFileName + '.mp4')
    times = 0   #照片标号从多少开始

    # 提取视频的频率,每25帧提取一个
    frameFrequency = zhenshu
    # 输出图片到当前目录vedio文件夹下
    outPutDirName = path +'/'+ sourceFileName + '/'

    # 如果文件目录不存在则创建目录
    if not os.path.exists(outPutDirName):
        os.makedirs(outPutDirName)

    camera = cv2.VideoCapture(video_path)
    while True:
        times+=1
        res, image = camera.read()
        if not res:
            # print('not res , not image')
            break

        if times%frameFrequency==0:
            #cv2.imwrite(outPutDirName + str(times)+'.jpg', image) #复制的时候带的方法

            #cv2.imwrite(outPutDirName + str(times)+'.jpg', image) #该方法不成功
 
            cv2.imencode('.jpg', image)[1].tofile(outPutDirName + str(times)+'.jpg') ##正确方法

            print(outPutDirName + str(times)+'.jpg')

        #cv2.imwrite(outPutDirName + str(times) + '.jpg', image)
        #print(times)
    print(sourceFileName+'图片提取结束')
    camera.release()

if __name__ == '__main__':
    path = input('输入地址,将会截取所有视频截图')
    zhenshu = int(input('多少帧截图一次'))

    im_file = path

    # for im_name in im_names:
    for im_name in os.listdir(im_file):
        suffix_file = os.path.splitext(im_name)[-1]
        
        print('开始截取'+im_name)

        sourceFileName = os.path.splitext(im_name)[0]
        splitFrames_mp4(sourceFileName,zhenshu)





自己打包一下吧,打包的exe太大了
1.png

免费评分

参与人数 6吾爱币 +8 热心值 +6 收起 理由
axinqd + 1 + 1 我很赞同!
love008 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
苏紫方璇 + 3 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
dtadsl + 1 + 1 我很赞同!
Tonyha7 + 1 + 1 谢谢@Thanks!
yuehanoo + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

dtadsl 发表于 2022-12-13 12:17
批量视频截图,但不同的视频需要截图的帧数可能不一样。

如果是要制作视频缩略图,可以用这个软件 Video Thumbnails Maker Platinum
官网:https://www.suu-design.com/downloads.html
 楼主| 16713720339 发表于 2022-12-13 19:14
dtadsl 发表于 2022-12-13 12:17
批量视频截图,但不同的视频需要截图的帧数可能不一样。

如果是要制作视频缩略图,可以用这个软件 Video ...

要是早知道有这软件我就不做这个了
seawaycao 发表于 2022-12-13 12:07
jackyyue_cn 发表于 2022-12-13 13:34
强大啊 学习了
这个截图能改成保存 png 格式的不?
ymhld 发表于 2022-12-13 13:48
jackyyue_cn 发表于 2022-12-13 13:34
强大啊 学习了
这个截图能改成保存 png 格式的不?

看cv2的处理能力,应该可以吧
leng5460 发表于 2022-12-13 14:36

强大啊 学习了

免费评分

参与人数 1吾爱币 -2 收起 理由
raito01 -2 复制他人回复

查看全部评分

Yruz 发表于 2022-12-13 15:21
感谢lz分享,cv2库真心强大啊
love008 发表于 2022-12-13 16:01
opencv-python是什么版本?
4.6.0.66会出现

camera = cv2.VideoCapture(video_path)
AttributeError: module 'cv2' has no attribute 'VideoCapture'
嬉皮笑脸 发表于 2022-12-13 18:31
mark一下
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-1 08:05

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表