[兔了个兔]我用新年祝福话,画了个兔子

2023-01-13 09:29:31 浏览数 (3)

HELLO,这里是百里,一个学习中的ABAPER, 今天咱不讲ABAP,喜迎新年,今天咱用祝福话,画一个兔子.祝福大家新的一年里,财源广进事事顺心.

作品思路

本作品主要使用的PYTHON语言,通过调用词云 wordcloud包,分词包jieba,图像展示包 PIL展示效果

功能,结合图像蒙版实现对应图片展示效果.

技术分析

数据准备,获取新年祝福话

文本准备

新年祝福话非常多,我找了百度的新年成语大全,手工抄录了一些到数据模板.用于jieba分词.将txt中读取的数据拆开成成语用于展示.

蒙版准备

兔年肯定要准备一只白白胖胖的兔子,注意需要找蒙版图片,而且最好不要有其他太多的杂项,蒙版中只有一个主目标最好. 上我们的大兔子.

字体包准备

因为需要调用 matplotlib.pyplot 所以我们需要配置对应文字字体包,我这里使用的是 SimHei.ttf

安装python 相关包

代码语言:javascript复制
pip install  wordcloud 

pip install  jieba

只需要安装这两个就可以,如果很慢可以使用豆瓣镜像 .

-i https://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com

代码画兔子

代码语言:javascript复制
from wordcloud import WordCloud
from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
import jieba

# 打开文件
text = open("aaa.txt", encoding="utf-8").read()

# 中文分词
text = ' '.join(jieba.cut(text))
print(text[:100])

# 生成对象
mask = np.array(Image.open("ccc.png"))  # 使用蒙版图片
wc = WordCloud(mask=mask, font_path="SimHei.ttf", mode="RGBA", background_color=True).generate(text)

# 显示词云
plt.imshow(wc, interpolation="bilinear")
plt.axis("off")
plt.show()

#保存文件
wc.to_file("3.wordcloud3.png")

技术总结

代码其实不难,这样我们就实现了一只新年祝福话,画出的小兔子了. 思路主要是,先通过读取,TXT中的文件内容,通过jieba分词获取我们想得到的数据内容. 在读取的蒙版图片,我们主要要的是兔子的轮廓.生成词云后,我们将内容放到蒙版的轮廓中填充.最后再将生成的词云文件图片保存到本地.

结果

万事如意,心想事成,步步高升.一只由祝福话生成的兔子,这样生成了.有没有很栩栩如生.

百里鸡汤

新的一年祝大家阖家欢乐.多多赚钱.

0 人点赞