python opencv PIL 视频分割成图片 图片合成为视频 修改图片大小(抗锯齿)

Python代码将原有的视频分割成图片,我的例子是一帧一帧的分割

 用python+opencv完成视频的分割

import cv2 #导入opencv模块
print(2) #测试是否运行
vc=cv2.VideoCapture("test.mp4") #读取视频,(***.***)例子:(test.mp4)
c=1 #一帧一帧的分割 需要几帧写几
if vc.isOpened():
    rval,frame=vc.read()
else:
    rval=False
while rval:
    rval,frame=vc.read()
    cv2.imwrite('out/'+str('%06d'%c)+'.jpg',frame) #('分割后图片的保存路径'+str(保存图片的名称)+'保存的图片的格式')
    c=c+1
    cv2.waitKey(1)
vc.release()

Python代码将分割之后的图片合成为视频

用python+opencv完成图片的合成

import os
import cv2
import numpy as np

path = 'out/' #原图片的路径,我的是在当前文件夹的out目录下
filelist = os.listdir(path)

fps = 24 #视频每秒24帧
size = (1280, 720) #需要转为视频的图片的尺寸,图片的尺寸多大,就写多大,例如:t1.jpg大小为480*640 (480,640)
#可以使用cv2.resize()进行修改

#视频的名称为VideoTest1,格式为.avi
video = cv2.VideoWriter("VideoTest1.avi", cv2.VideoWriter_fourcc('I', '4', '2', '0'), fps, size)
#视频保存在当前目录下

for item in filelist:
    if item.endswith('.jpg'):
    #找到路径中所有后缀名为.jpg的文件,可以更换为.png或其它
        item = path + item
        img = cv2.imread(item)
        video.write(img)

video.release()
cv2.destroyAllWindows()

Python代码更改图片大小 抗锯齿

用python+PIL完成图片大小的更改

import os

from PIL import Image

fileName = os.listdir('d:\\New_Project\\out1\\') #原图片存放的路径

width = 1280

height = 720

os.mkdir('d:\\newout1\\') #新建一个文件夹存放处理后的图片

for img in fileName:

    pic = Image.open('d:\\New_Project\\out1\\' + img) 

    newpic = pic.resize((width, height),Image.ANTIALIAS)

    print (newpic)

    newpic.save('d:\\newout1\\'+img)

猜你喜欢

转载自blog.csdn.net/qq_40900196/article/details/88757353