又到一年樱花开。
我是图片\1.jpg
今年武汉大学的樱花依然开得灿烂,但受疫情影响,少了很多去赏花的朋友。
为了让大家看到樱花开放,各路高手纷纷亮出了自己的绝技。要说最秀的,当属用Python让樱花开放。
一时间,“武大学生代码敲出樱花开放”登上了热搜,阅读3.2亿、讨论3.8万,武汉大学、央视新闻等官号纷纷转发。
我是图片\2.jpg
四个小时搞定,用代码为武汉加油
这位“武大学生”是武汉大学2017级信息管理与信息系统本科生朱永春,他用代码敲出的樱花开放作品系采用Python创作。
我是图片\3.jpg
我是图片\4.jpg
我是图片\5.jpg
樱花放大后是一个个的“武汉加油”
据悉,朱永春同学曾在武汉大学官方微博担任编辑,去年在参加由武汉大学官方微博策划开展的“樱花开放季-用专业向樱花表白”活动中,他就曾用Python创作出了“用代码画樱花树”,反响良好。
谈到这次创作,朱永春同学表示:“整个过程花了三四个小时,构思是以去年武汉大学官方微博发布的樱花初绽视频作为源视频,逐帧提取像素信息之后,再赋上由‘武汉加油'组成的新图片,而后重新拼接。”
这波神操作也得到了网友的一致认可,纷纷称赞朱永春同学太优秀:
我是图片\6.jpg
见证奇迹的时刻,让武汉如樱花般绽放!
此外,为了能让大家在自己的电脑上实现樱花开放全过程,武大微博开源了代码,下面我们就动手亲自实现一下。
首先我们看下项目结构 pic 文件夹下存放的是待处理的每帧图片,new 文件夹为处理后的图片,video 文件夹为生成的视频。
我是图片\7.jpg
主要用到的两个 Python 包,OpenCV,PIL,如有报错,通过 pip 安装对应的包即可。小编将关键步骤做了注释,下面简单介绍下每个脚本的用处。cv2.py 主要用来将视频帧保存为图片。
我是图片\8.jpg
cv3.py 功能是用带颜色的文字将所有原始图片的像素替换,并保存到 new 文件夹下。
我是图片\9.jpg
cv4.py 功能稍微复杂点,是用来将生成的图片重新合成视频。resort 函数用来重排图片,因为系统默认的排序可能会导致图片顺序错误,picvideo 函数将对应的图片循环写入视频。
我是图片\10.jpg
如果想制作自己的文字视频,将对应的视频放入 video 文件下,命名为 video.avi 的话,就不用修改代码了。
如果是其他格式视频,修改 OpenCV 的读取代码即可。
准备工作做好,在当前目录下打开命令行,windows 下用 Shift+右键即可看到。
最后依次在命令行执行 python cv2.py,python cv3.py,python cv4.py。在 video 文件夹下就生成新视频了。
来一起欣赏下这部樱花绽放为武汉加油的视频作品:
开源代码获取:
提取码: px9u
中软国际招聘啦!
我是图片\11.jpg
-END-
去企业,学习企业需要的编程技能!
中软卓越,真实企业背景,
送你企业入场券!
唯有企业,更懂企业