抖音字符视频在去年火过一段时间。

反正我是始终忘不了那段极乐净土的音乐...

这一次自己也来实现一波,做一个字符视频出来。

主要用到的库有cv2,pillow库。

原视频如下,直接抖音下载的,妥妥的水印。

https://v.qq.com/x/page/p0845ze916t.html

不过并不影响本次的操作。

/ 01 / 视频转图片

在Pycharm上直接安装cv2库是成功不了的,具体什么原因我也不清楚。

经过我的实践,发现只需在Pycharm的虚拟环境下。

运行下面这个命令,即可成功安装cv2这个库。

pip3 install opencv-python

不过还是会出现下载速度过慢,导致超时。

如果实在不行就可以去官网,下个.whl格式来安装。

视频转图片代码如下。

import cv2

import os

# 在当前目录下新建文件夹

folder_path = "img_bear/"

os.makedirs(folder_path)

# 进行视频的载入

vc = cv2.VideoCapture('bear.mp4')

c = 0

# 判断载入的视频是否可以打开

ret = vc.isOpened()

# 循环读取视频帧

while ret:

c = c + 1

# 进行单张图片的读取,ret的值为True或者Flase,frame表示读入的图片

ret, frame = vc.read()

if ret:

# 存储为图像

cv2.imwrite('img_bear/'+str(c) + '.jpg', frame)

# 输出图像名称

print('img_bear/'+str(c) + '.jpg')

# 在一个给定的时间内(单位ms)等待用户按键触发,1ms

cv2.waitKey(1)

else:

break

# 视频释放

vc.release()

最后成功生成了369张图片。

呆萌呆萌的××熊,我是不知道什么品种的熊...

/ 02 / 图片转字符

普通图片转字符图片主要使用了pillow库。

对图片做灰度处理,然后根据图片像素点的灰度值,添加对应的字符。

具体代码如下。

from PIL import Image, ImageDraw, ImageFont

import numpy as np

import os

# 创建字符图片文件夹

folder_path = "bear/"

os.makedirs(folder_path)

for i in range(1, 1000):

filename = 'img_bear/' + str(i) + '.jpg'

# 字符列表

ascii_char = list("$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~            <>i!lI;:,\"^`'. ")

# 判断图片是否存在

if os.path.exists(filename):

# 将图片转化为灰度图像,并重设大小

img_array = np.array(Image.open(filename).resize((70, 70), Image.ANTIALIAS).convert('L'))

# 创建新的图片对象

img = Image.new('L', (560, 560), 255)

draw_object = ImageDraw.Draw(img)

# 设置字体

font = ImageFont.truetype('consola.ttf', 10, encoding='unic')

# 根据灰度值添加对应的字符

for j in range(70):

for k in range(70):

x, y = k * 8, j * 8

index = int(img_array[j][k] / 4)

draw_object.text((x, y), ascii_char[index], font=font, fill=0)

name = 'bear/' + str(i) + '.jpg'

print(name)

# 保存字符图片

img.save(name, 'JPEG')

最后成功生成了字符图片。

和上面的原图一样,也是369张。

/ 03 / 字符转视频

接下来使用cv2库,将字符图片转化为视频。

具体代码如下。

import cv2

import os

# 设置视频编码器,这里使用使用MJPG编码器

fourcc = cv2.VideoWriter_fourcc(*'MJPG')

# 输出视频参数设置,包含视频文件名、编码器、帧率、视频宽高(此处参数需和字符图片大小一致)

videoWriter = cv2.VideoWriter('bear_character.avi', fourcc, 20.0, (560, 560))

for i in range(1, 1000):

filename = 'bear/'+str(i)+'.jpg'

# 判断图片是否存在

if os.path.exists(filename):

img = cv2.imread(filename=filename)

# 在一个给定的时间内(单位ms)等待用户按键触发,100ms

cv2.waitKey(100)

# 将图片写入视频中

videoWriter.write(img)

print(str(i) + '.jpg' + ' done!')

# 视频释放

videoWriter.release()

最后成功生成字符视频。

这里懒得去添加原来的BGM,所以凑合着看吧。

https://v.qq.com/x/page/a0845e9en09.html

据说眯眼看,效果更佳。

/ 04 / 总结

相关的视频以及代码已上传公众号。

公众号回复「字符」即可获取。

最后在此给自己做的抖音视频拉个票~

看过上一期送书推文的读者应该知道,就是那个抖音视频大赛。

大家要是有兴趣也可以去参加,具体的见上条送书推文。

其中文末的视频是我做的,而且我也去参加了,能不能拿大奖就靠大家了。

公众号「数据森麟」的作者也参加了,了解这个公众号的读者,也可以去一睹大佬的真容,帮忙点赞,哈哈。

对于就开过一次赞赏的我而言,大家的抖音点赞就是对我最大的赞赏。

晚上的时候,还找了几个问过我问题的读者,帮忙点赞,大家也挺配合的。

其中有个小妹妹,手机上没抖音,还立马去下了一个,来帮我点赞。

心中有一种莫名的感动,感谢大家的支持。

具体的见上图,就是那个蓝色的模糊的视频,不过就视频的效果而言,应该堪称大片。

手机上有抖音的就帮忙点个赞,没抖音的就算啦。

毕竟少刷抖音,多看书。这句话,一点毛病也没有。

万水千山总是情,点个「好看」行不行。

···  END  ···

python 制作字符视频_用Python生成抖音字符视频!相关推荐

  1. python抓取抖音热门视频_用于抓取抖音热门视频和音乐的API

    注:项目已不可用... DouYin API of DouYin App for humans. Installation pip3 install douyin Usage Here is the ...

  2. python刷抖音_用Python生成抖音字符视频!

    抖音字符视频在去年火过一段时间. 反正我是始终忘不了那段极乐净土的音乐... 这一次自己也来实现一波,做一个字符视频出来. 主要用到的库有cv2,pillow库. 原视频如下,直接抖音下载的,妥妥的水 ...

  3. python写抖音网站_用Python生成抖音字符视频!

    抖音字符视频在去年火过一段时间. 反正我是始终忘不了那段极乐净土的音乐... 这一次自己也来实现一波,做一个字符视频出来. 主要用到的库有cv2,pillow库. 原视频如下,直接抖音下载的,妥妥的水 ...

  4. python int转str_用Python生成抖音字符视频!

    作者 | 小 F 来源 | 法纳斯特 抖音字符视频在去年火过一段时间. 反正我是始终忘不了那段极乐净土的音乐... 这一次自己也来实现一波,做一个字符视频出来. 主要用到的库有cv2,pillow库. ...

  5. python宣传视频 抖音_Python生成抖音字符视频,技术流!

    抖音字符视频在去年火过一段时间. 反正我是始终忘不了那段极乐净土的音乐- 这一次自己也来实现一波,做一个字符视频出来. 主要用到的库有cv2,pillow库. 原视频,直接抖音下载的,妥妥的水印. / ...

  6. 抖音上python_用Python生成抖音字符视频!

    抖音字符视频在去年火过一段时间. 反正我是始终忘不了那段极乐净土的音乐... 这一次自己也来实现一波,做一个字符视频出来. 主要用到的库有cv2,pillow库. 原视频如下,直接抖音下载的,妥妥的水 ...

  7. 用Python生成抖音字符视频!

    作者 | 小F 来源 | 法纳斯特(公众号id:walker398) 抖音字符视频在去年火过一段时间.反正我是始终忘不了那段极乐净土的音乐...这一次自己也来实现一波,做一个字符视频出来.主要用到的库 ...

  8. 短视频火热态势下,抖音短视频源码受到持续关注

    曾经,文字图片是最为广泛的信息载体,而现在,短视频和直播行业的火爆态势证明了视频这一信息载体的魅力.在过去的两年里,抖音打下了国内的江山又侵占了美国.印度.日本等国家的社交 APP排行榜,聚集沉淀了不 ...

  9. 【视频运营小方法】抖音和视频号的推荐机制有什么区别

    随着短视频平台的出现,视频行业逐渐崛起一批优质内容创作和,快,抖,以及视频号等纷纷入局短视频行业,如何快速热门,快速转化,最近很多好友来问我,想要通过视频号来进行引流,那么视频号的推荐机制当中有一种就 ...

最新文章

  1. Ansible第一篇:基础
  2. bzoj:1666: [Usaco2006 Oct]Another Cow Number Game 奶牛的数字游戏
  3. 深度学习100例-卷积神经网络(CNN)识别眼睛状态 | 第17天
  4. linux命令怎么打开优盘,Linux下U盘使用具体步骤
  5. Firefox/Chrome/Safari的中可直接使用$/$$函数进行调试
  6. android beam传输速率,无线网络的速率为何不能达到最大值
  7. 图书推荐(持续更新)
  8. maven的聚合和继承详解(2021版)
  9. scaleType属性设置!
  10. 中专学历就该被拒之门外?做Java开发改变命运难吗?
  11. 功能丰富的Perl:用Perl读写Excel文件
  12. php之is_null,PHP中is_null($x)和$x===null的简单比较
  13. python随机产生100个整数二进制_python产生随机整数
  14. 电源设计经验之 MOS 管驱动电路
  15. matlab单字音频合成,基于MATLAB的音频解析与合成
  16. 冒泡法java程序图片_正宗冒泡法-java语言实现
  17. 【PyTorch】4 姓氏分类RNN实战(Simple RNN)——18 种起源语言的数千种姓氏分类
  18. 【Linux随笔随记】三、sheel语法-数组
  19. 区块链笔记-(肖臻)(二刷自用笔记)-----三
  20. MATLAB画固定大小的彩色图片

热门文章

  1. 程序员就业和发展前景,一文带你了解
  2. 农业掀起“上链”潮 区块链等数字技术正成为乡村振兴新动力
  3. 又一款国产手机崛起,华硕ROG2,仅仅73秒销售量突破一万
  4. 2020微信年度账单来了!你今年花了多少钱?
  5. unity+vscode 自动补全代码
  6. 关于DataGrid的使用
  7. TLS协议/SSL协议
  8. 邀请函|2023年迪文科技全国巡回研讨会
  9. echarts 柱图分组统计
  10. 牛皮!阿里资深架构师耗费三年终于把Netty进阶之路PDF整理完了,读完我彻底跪了