关于如何将动作识别数据集UCF101中的每一小段视频按类别分割成一帧帧图片

关于如何将动作识别数据集UCF101中的每一小段视频按类别分割成一帧帧图片
本人搜索了好位博主的解决方案,效果始终不能满足我的要求,后来在他人的代码基础上加以改进,成功分割。代码如下:

import cv2
import os

video_path = '.../UCF-101/video/'  #补全文件路径
save_path = '.../UCF-101/img/'

action_list = os.listdir(video_path)

for action in action_list:
    if not os.path.exists(save_path+action):
        os.mkdir(save_path+action)
    video_list = os.listdir(video_path+action)
    for video in video_list:
        prefix = video.split('.')[0]
        if not os.path.exists(save_path+action+'/'+prefix):
            os.mkdir(save_path+action+'/'+prefix)
        save_name = save_path + action + '/' + prefix + '/'
        video_name = video_path+action+'/'+video
        cap = cv2.VideoCapture(video_name)
        fps = int(cap.get(cv2.CAP_PROP_FRAME_COUNT))
        fps_count = 0
        for i in range(fps):
            ret, frame = cap.read()
            if ret:
                cv2.imwrite(save_name+str(0000+fps_count)+'.jpg',frame)
                fps_count += 1
        cap.release()

文件目录格式:
UCF101/video/各类子视频集
UCF101/img/各类子视频分割图像集
最终分割效果如图:
关于如何将动作识别数据集UCF101中的每一小段视频按类别分割成一帧帧图片_第1张图片
本文链接:https://editor.csdn.net/md/?articleId=109194449

你可能感兴趣的:(动作识别,视频处理,opencv)