python+opencv将avi视频分解成图片输出

**

python+opencv将avi视频分解成图片输出

**
项目需要,一个小程序,将视频拆解成单个图片输出!

'''
# 脚本将采取用户输入的指定视频名称并将视频拆成图片存储在同名文件夹下面
# 如果存在同名文件夹那么报错退出
# 如果不存在视频.avi,报错退出
# 输出视频先快速展示然后保存
# 输出是以jpg存储,如果需要另存为其他格式文件,请修改相应源码!
'''
import cv2
import os

video_input_name = input("请输入视频的名称:(不含格式名称)")
cwd = os.getcwd()

dir = cwd+'/'+video_input_name
# 测试文件夹是不是存在,如果存在就警告退出程序。
if os.path.exists(dir):
    print("同名文件夹已经存在,请删去后再操作!")
    # 退出程序(-1)
    exit(0)
else:
    print("文件夹不存在,创建文件夹!")
    os.makedirs(dir)
    # 测试文件是不是存在,如果不存在退出程序
    if os.path.exists(dir+'.avi'):
        print("存在文件,加载视频!")
    else:
        print("文件不存在,请核对输入!")
        exit(0)
# 加载图像
video = cv2.VideoCapture(dir+'.avi')
c = 1
while(True):
    ret, frame = video.read()
    if ret:
        cv2.imshow('frame', frame)
        # 保存图片
        cv2.imwrite(dir+'/'+str(c)+'.jpg', frame)
        c = c+1
        cv2.waitKey(40)
    else:
        print("Video converts over!")
        break

# 等待按键释放资源
video.release()
cv2.destroyAllWindows()

控制台显示:
python+opencv将avi视频分解成图片输出_第1张图片
完成后效果:
python+opencv将avi视频分解成图片输出_第2张图片

你可能感兴趣的:(python)