武汉加油!武大本科生用Python敲出樱花绽放,满屏春天太浪漫

第一目录2020-03-21 15:52:23 5

新智元报道

来源:武汉大学等

编辑:白峰、张佳

【新智元导读】武汉大学的一位大三学生花了3、4个小时,用代码敲出樱花开放,一朵朵樱花由无数个“武汉加油”汇聚在一起,每个字都是一个像素点,网友纷纷点赞:理科生也太浪漫了吧!「新智元急聘主笔、编辑、运营经理、客户经理,添加HR微信(Dr-wly)了解详情。」

又到一年樱花开。

今年武汉大学的樱花依然开得灿烂,但受疫情影响,少了很多去赏花的朋友。

为了让大家看到樱花开放,各路高手纷纷亮出了自己的绝技。要说最秀的,当属用Python让樱花开放。

一时间,“武大学生代码敲出樱花开放”登上了热搜,阅读3.2亿、讨论3.8万,武汉大学、央视新闻等官号纷纷转发。

四个小时搞定,用代码为武汉加油

这位“武大学生”是武汉大学2017级信息管理与信息系统本科生朱永春,他用代码敲出的樱花开放作品系采用Python创作。

樱花放大后是一个个的“武汉加油”

‍据悉,朱永春同学曾在武汉大学官方微博担任编辑,去年在参加由武汉大学官方微博策划开展的“樱花开放季-用专业向樱花表白”活动中,他就曾用Python创作出了“用代码画樱花树”,反响良好。

谈到这次创作,朱永春同学表示:“整个过程花了三四个小时,构思是以去年武汉大学官方微博发布的樱花初绽视频作为源视频,逐帧提取像素信息之后,再赋上由‘武汉加油’组成的新图片,而后重新拼接。”

这波神操作也得到了网友的一致认可,纷纷称赞朱永春同学太优秀:

见证奇迹的时刻,让武汉如樱花般绽放!

此外,为了能让大家在自己的电脑上实现樱花开放全过程,武大微博开源了代码,下面我们就动手亲自实现一下。

首先我们看下项目结构pic 文件夹下存放的是待处理的每帧图片,new 文件夹为处理后的图片,video 文件夹为生成的视频。

主要用到的两个 Python 包,OpenCV,PIL,如有报错,通过 pip 安装对应的包即可。小编将关键步骤做了注释,下面简单介绍下每个脚本的用处。cv2.py 主要用来将视频帧保存为图片。

cv3.py 功能是用带颜色的文字将所有原始图片的像素替换,并保存到 new 文件夹下。

cv4.py 功能稍微复杂点,是用来将生成的图片重新合成视频。resort 函数用来重排图片,因为系统默认的排序可能会导致图片顺序错误,picvideo 函数将对应的图片循环写入视频。

如果想制作自己的文字视频,将对应的视频放入 video 文件下,命名为 video.avi 的话,就不用修改代码了。

如果是其他格式视频,修改 OpenCV 的读取代码即可。

准备工作做好,在当前目录下打开命令行,windows 下用 Shift+右键即可看到。

最后依次在命令行执行 python cv2.py,python cv3.py,python cv4.py。在 video 文件夹下就生成新视频了。

来一起欣赏下这部樱花绽放为武汉加油的视频作品:

开源代码获取:

链接: https://pan.baidu.com/s/10rUS5ji8jAHz9NsjVbKY_Q

提取码: px9u