从视频中提取帧图片/根据文件名提取图片

  1. 下载FFmpeg,解压后将bin目录添加到环境变量 https://www.ffmpeg.org/
    添加环境变量
  2. 修改crop_time 后面的时间和videoPathimagePath 即可
    **注意:**images后面需要有 两个\\
import os

def getImage(videoPath, imagePath):
    img_count = 1
    crop_time = 0.0
    #转化多少秒的视频
    while crop_time <= 40.0:
        os.system('ffmpeg -i %s -f image2 -ss %s -vframes 1 %s.png' % (videoPath, str(crop_time), imagePath + str(img_count)))
        img_count += 1
        print('Geting Image ' + str(img_count) + '.png' + ' from time ' + str(crop_time))
        #每多少秒截取一张照片
        crop_time += 0.25
    print('Image Collected')

if __name__ == '__main__':
    videoPath = r'D:\ARDemo\2019_06_25_12_31_16_645.mp4'
    #注意:images后面需要有 两个\\
    imagePath = r'D:\ARDemo\images\\'
    getImage(videoPath, imagePath)

由于需求变更,需要对路口进行扩展补充,数据是间断的且分布在不同包
可以根据图片的名字批量提取对应的图片并保存到另一个文件夹
筛选

# -*- coding: UTF-8 -*- 

from PIL import Image

data = []
for line in open("C:/Users/Desktop/getimage.txt", "r"):
    data.append(line)

for a in data:
	im = Image.open('D:/2root_data/场景/{}'.format(a[:-1]))
	im.save('D:/2root_data/提取/{}'.format(a[:-1]))
	im.close()
发布了36 篇原创文章 · 获赞 3 · 访问量 1733

猜你喜欢

转载自blog.csdn.net/qq_38689395/article/details/103989719
今日推荐