python语言头像_Python个性化头像

图像处理

最近看到抖音上有不少字符化的视频比较火,自己也顺手写了个脚本来实现图片字符化。

那么什么是字符化呢?我们来看下原图和字符化之后的图像。

1.脚本下载:

(后续所有简单的脚本就不给大家打包成.exe了,相信各位聪明的小伙伴知道如何执行.py脚本,不会的也欢迎来问我)

下载好我们的image_to_txt.py之后,我们双击或者在终端执行即可。

如图:在我们的测试文件夹里面存放了下载好的脚本和测试图片。

按照提示,输入目标图片的全局路径,或者当前文件夹下面的图片名字,都可以。

执行完成,我们再来看看当前文件夹里面有没有生成txt文件。

我们看到是成功了,我们打开image.txt看看。

怎么和预期的不太一样呢?

没关系我们调整一下txt的文字大小为5号试试。bingo!

txt里面如果有英文纠正的红色下划线影响美观,可以设置关闭纠正提示哦。

当然,我们看到有部分图片保存是无效的,因为我们默认图片是.jpg格式,png或者gif都会被我们保存成.jpg导致无法展示,所以这种方法还有待优化,欢迎留言交流;

2.python环境搭建:

为大家推荐教科书式的菜鸟教程,有疑惑欢迎骚扰

相信一个建筑师学会python,能为你的创作颈上添花

3.源码展示:

from PIL import Image

width = 100

height = 70

image = input('请填写目标图片全局路径:')

def draw():

im = Image.open(image)

im = im.resize((width, height), Image.NEAREST)

txt = ""

for i in range(height):

for j in range(width):

txt += get_char(*im.getpixel((j, i)))

txt += '\n'

with open("image.txt", 'w') as f:

f.write(txt)

def get_char(r, g, b, alpha=256):

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

if alpha == 0:

return ' '

length = len(ascii_char)

gray = int(0.2126 * r + 0.7152 * g + 0.0722 * b)

unit = (256.0 + 1) / length

return ascii_char[int(gray / unit)]

draw()

print('转换完成')

4.拓展:

这仅仅是图像处理的冰山一角,用ps,用su插件,我们都是利用了别人预设好的效果,仿佛被束缚了手脚,而用python,我们可以想怎么处理图像就怎么处理图像。

在这里抛砖引玉,希望各位设计师能举一反三,借用python这把利刃,能对图像处理有更好的理解和实践。

以下是python处理的其他几种效果:

分别是 动漫化/ 去色/ 二值化/ 像素化/ 素描化

像素化可以制作像素头像,二值化优化一下可以变成一键抠图的脚本,或者一键替换背景色的工具;

想要各种效果脚本的同学欢迎关注公众号问我要哦!

回复 Ruby 即可获取 Ruby Code Editor 插件

回复 Ball 即可获得 ball.rb 一键绘制 sketchup 球体插件脚本

回复 PushPull 即可获得 pushpull_ball.rb 球体表面随机推拉脚本

回复 哪吒 即可获得 image_to_txt.py 图片转txt图像 脚本

回复 壁纸 即可获得 get_wallpaper.exe 高清壁纸自动爬取脚本

回复 地图 即可获取 getmap.htm 地图边界绘制脚本

回复 getPic 即可获取 getPic.sh 批量保存网站图片脚本

加微信 wxid_ljshjsw95hcv22 进群共同探索创新

文章转载请注明出处author by Nicaicaiwo

标签:脚本,Python,image,python,char,头像,txt,个性化,图片

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值