利用2种路径法Python-OpenCV,将林心如图片转换成视频

1 说明:

======

1.1 图片来源:今日头条免费正版图库,下载林心如照片13张。

2种路径法Python-OpenCV:将林心如图片转换成视频

lxr1.jpeg

1.2 环境:python3.8,深度操作系统deepin-linux,微软编辑器vscode,opencv版本4.2.0。

1.3 向女神致敬,哎呀,暴露年龄了。

1.4 学习OpenCV图片转换视频的方法,复习python路径的2种方法。

2 方法一:OS法:

============

2.1 代码:

#第1步:导入模块
import osimport cv2#第2步:参数设置
#指定路径和文件夹path = \'/home/xgj/Desktop/python-clock/pic/\'
#用os法设置路径
filelist = os.listdir(path)
fps = 1 #视频每秒1帧,数值越大速度越快
size = (640, 480) #需要转为视频的图片的尺寸
#第3步:生成视频和路径,生成视频参数设置
#注意视频格式AVI,那么参数fourcc不同video = cv2.VideoWriter("/home/xgj/Desktop/python-clock/girl1.avi", cv2.VideoWriter_fourcc(\'I\', \'4\', \'2\', \'0\'), fps, size)
#读取图片for item in filelist:
    if item.endswith(\'.jpeg\'): 
    #找到路径中所有后缀名为.jpeg格式图片,注意其他格式需要上面修改        item = path   item
        img = cv2.imread(item)        #修改图片大小,为指定的统一大小,否则图片大小不一致会失败        shrink = cv2.resize(img, size, interpolation=cv2.INTER_AREA)          #写入图片为视频        video.write(shrink)
video.release()cv2.destroyAllWindows()

2.2 效果视频:

2种路径法Python-OpenCV:将林心如图片转换成视频

3 知识点:

=======

3.1 OpenCV的cv2.VideoWriter_fourcc函数:

视频格式为:avi时cv2.VideoWriter_fourcc(\’I\’, \’4\’, \’2\’, \’0\’)。

视频格式为:mp4时 cv2.VideoWriter_fourcc(*\’MJPG\’)。

3.2 注意:

cv2.VideoWriter_fourcc(*\’MJPG\’)

等同于:

cv2.VideoWriter_fourcc(\’M\’,\’J\’,\’P\’,\’G\’) #opencv 大于3.0版本

4 方法二:glob法

=============

4.1 代码:

# encoding: UTF-8
import glob as gbimport cv2#指定路径和文件夹下的所以jpeg文件img_path = gb.glob("/home/xgj/Desktop/python-clock/pic/*.jpeg") 
#写入视频videoWriter = cv2.VideoWriter(\'/home/xgj/Desktop/python-clock/girl2.mp4\', cv2.VideoWriter_fourcc(*\'MJPG\'), 2, (640,480))
for path in img_path:
    img  = cv2.imread(path)
    # 保证每张图片的分辨率一样,才能做出可以播放的视频    img = cv2.resize(img,(640,480))
    videoWriter.write(img)

4.2 修改图片大小为指定法,也嵌入到代码中,注意与代码一不同。

4.3 python glob模块相关知识。

4.3.1 glob是python自带的一个操作文件的相关模块,功能比较少。

4.3.2 功能:

用它可以查找符合特定规则的文件路径名。

查找文件只用到三个匹配符:”*”, “?”, “[]”。

“*”匹配0个或多个字符;

“?”匹配单个字符;

“[]”匹配指定范围内的字符,如:[0-9]匹配数字。

4.3.3 glob.glob

可以对文件夹下所有文件进行遍历,并保存为一个list列表。

内容出处:,

声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。文章链接:http://www.yixao.com/procedure/11330.html

发表评论

登录后才能评论