Python做了一个词云视频,以另一种角度来看小姐姐跳舞
首先需要下载一个小姐姐跳舞的视频,这里我用的是 you-get 工具,可借助 Python 的 pip 命令进行安装
you-get 支持下载平台包括:Youtube、Blili、TED、腾讯、优酷、爱奇艺(涵盖所有视频平台下载链接),
以 youtube 视频为例,you-get 下载命令

这里通过 os 模块来实现 you-get 下载命令,使用时传入三个参数即可:
1,视频链接,
2,要存放视频的文件路径;
3,视频命名;
关于 you-get 更多用法, 可参考官网,里面关于用法介绍的非常详细:
https://you-get.org/#getting-started

做词云图需要有文本数据支持,这里选取 B 站弹幕为素材;关于 B 站视频弹幕下载方式,这里一个快捷方法,用 requests 访问指定视频的 API 接口,就能得到该视频下的全部弹幕
但 API 小姐姐跳舞视频接口的构造,需要知道视频的 cid 编号
B站视频 cid 编号获取方式:
F12打开开发者模式->NetWork->XHR->v2?cid=… 链接 ,该网页链接中有一个”cid=一串数字“ 的字符串,其中等号后面的连续数字就是该视频的 cid 编号

以上面视频为例,291424805 就是这个视频的 cid 编号,
有了 cid 之后,通过 requests 请求 API 接口,就能获取到里面的弹幕数据


下载到视频之后,先把视频拆分成一帧一帧图像;

对每一帧中的小姐姐进行识别提取,也就是人像分割,这里借助了百度 API 接口,
将含有人像的图像转化为二值化图像,前景为人物,其余部分为背景

API 使用之前需要用自己账号在百度智能云平台创建一个 人体分析 应用,里面需要三个参数:ID、AK、SK

关于百度 API 使用方法,可参考官方文档资料

根据步骤 3 中得到了小姐姐 人像 Mask,
![]()

借助 wordcloud 词云库和采集到的弹幕信息,对每一张二值化图像绘制词云图(在制作之前,请确保每一张都是二值化图像,全部为黑色像素图像需要剔除)

词云图全部生成完毕之后,如果一张一张图像看肯定没意思,如果把处理后的词云图合成视频会更酷一点!
为了视频前后对比效果这里我多加了一个步骤,在合并之前先对原图和词云图进行拼接,合成效果如下:
小姐姐跳舞视频

再加上背景音乐,视频又能提升一个档次~
关于视频中的素材,特此声明
弹幕取自B站 Up 主 半佛仙人《【半佛】你知道奶茶加盟到底有多坑人吗?》
小姐姐跳舞视频取自Youtube Channel Lilifilm Official 《LILI's FILM #3 - LISA Dance Performance Video》
最后,感谢大家的阅读,我们下期见~
更多关于Python实现跳舞词云视频的资料请关注脚本之家其它相关文章!