☞ ░ 老猿Python博文目录:https://blog.csdn.net/LaoYuanPython ░
![](https://i-blog.csdnimg.cn/blog_migrate/4dc562f5363564064defef27a51d9df5.png)
用OpenCV-Python读取摄像头写入视频文件
一、引言
在《https://blog.csdn.net/LaoYuanPython/article/details/115586421 用Python制作灯光秀短视频》是基于Python+OpenCV+Moviepy实现的一个视频文件的生成,其实如果不需要音频时,这个生成也可以使用Python+OpenCV来实现,本文就基于上文基础之上介绍仅使用Python+OpenCV的实现。
二、实现思路
整体实现思路与上文的思路一致,只是在输出到视频时采用OpenCV的VideoWriter类类实现。
为了将视频输出到文件,通过VideoWriter_fourcc指定视频输出文件类型,采用OVideoWriter类的Open方法指定输出文件,通过write方法将一帧帧视频写入。
三、具体实现
其他实现内容与《https://blog.csdn.net/LaoYuanPython/article/details/115586421 用Python制作灯光秀短视频》完全一致,只是制作视频文件的函数进行了修改。新建了一个函数buildVideoByCV代替原有的buildVideo用于制作视频文件,按指定格式生成一个新的视频文件,然后循环调用makeframe生成一帧帧图像写入视频文件中。
def buildVideoByCV():
videoMake = cv2.VideoWriter()
fourcc = cv2.VideoWriter_fourcc(*'MP4V') #https://blog.csdn.net/whudee/article/details/108689420
fps = 12
videoMake.open(r"F:\video\lightShowCV.MP4", fourcc, fps, (800,600))
for t in range(65*fps):
img = makeframe(t*1.0/fps)
videoMake.write(img)
print(f'\r视频制作进度:{(t*100.0)/(66*fps):4.2f}%',end='')
videoMake.release()
上述函数构建后只需要调用buildVideoByCV函数即可完成视频制作。
3.6、视频效果
视频效果与上文完全一样:
四、小结
本文在《https://blog.csdn.net/LaoYuanPython/article/details/115586421 用Python制作灯光秀短视频》基础上,介绍了用Python+OpenCV通过给定图片制作一个视频的实现思路、过程、关键函数等,有助于理解OpenCV的图像操作、生成视频的实现。用该方案实现的视频是无声的视频,因此如果要给视频添加声音,需要使用其他Python的音视频剪辑库。
写博不易,敬请支持:
如果阅读本文于您有所获,敬请点赞、评论、收藏,谢谢大家的支持!
更多图像处理的介绍请参考专栏《OpenCV-Python图形图像处理 https://blog.csdn.net/laoyuanpython/category_9979286.html》和《https://blog.csdn.net/laoyuanpython/category_10581071.html OpenCV-Python初学者疑难问题集》相关文章。
关于老猿的付费专栏
- 付费专栏《https://blog.csdn.net/laoyuanpython/category_9607725.html 使用PyQt开发图形界面Python应用》专门介绍基于Python的PyQt图形界面开发基础教程,对应文章目录为《 https://blog.csdn.net/LaoYuanPython/article/details/107580932 使用PyQt开发图形界面Python应用专栏目录》;
- 付费专栏《https://blog.csdn.net/laoyuanpython/category_10232926.html moviepy音视频开发专栏 )详细介绍moviepy音视频剪辑合成处理的类相关方法及使用相关方法进行相关剪辑合成场景的处理,对应文章目录为《https://blog.csdn.net/LaoYuanPython/article/details/107574583 moviepy音视频开发专栏文章目录》;
- 付费专栏《https://blog.csdn.net/laoyuanpython/category_10581071.html OpenCV-Python初学者疑难问题集》为《https://blog.csdn.net/laoyuanpython/category_9979286.html OpenCV-Python图形图像处理 》的伴生专栏,是笔者对OpenCV-Python图形图像处理学习中遇到的一些问题个人感悟的整合,相关资料基本上都是老猿反复研究的成果,有助于OpenCV-Python初学者比较深入地理解OpenCV,对应文章目录为《https://blog.csdn.net/LaoYuanPython/article/details/109713407 OpenCV-Python初学者疑难问题集专栏目录 》
- 付费专栏《https://blog.csdn.net/laoyuanpython/category_10762553.html Python爬虫入门 》站在一个互联网前端开发小白的角度介绍爬虫开发应知应会内容,包括爬虫入门的基础知识,以及爬取CSDN文章信息、博主信息、给文章点赞、评论等实战内容。
前两个专栏都适合有一定Python基础但无相关知识的小白读者学习,第三个专栏请大家结合《https://blog.csdn.net/laoyuanpython/category_9979286.html OpenCV-Python图形图像处理 》的学习使用。
对于缺乏Python基础的同仁,可以通过老猿的免费专栏《https://blog.csdn.net/laoyuanpython/category_9831699.html 专栏:Python基础教程目录)从零开始学习Python。
如果有兴趣也愿意支持老猿的读者,欢迎购买付费专栏。