Python奇技淫巧之将你的女神照片变成字符画!女朋友就答应嘿嘿

Python奇技淫巧之将你的女神照片变成字符画!女朋友就答应嘿嘿,第1张

概述这次不写爬虫,来看看如何利用Python强大的图像处理库将女神照片转换成字符画。下面有请重量级女神如花登场:

这次不写爬虫,来看看如何利用Python强大的图像处理库将女神照片转换成字符画。下面有请重量级女神如花登场:

那清秀的面庞,水灵的双眸,俏皮的双马尾,粉扑扑的发卡,性感的胡须还有略带羞意的抠鼻动作,满足了童年的我对美的无线遐想。就连背后的群演大妈也忍不住捂住口掩饰自己惊讶的表情,可见我的女神简直美的不可方物,美的一言难尽,美的惨绝人寰!

转换成字符画之后大概长这样:

进群:548377875  即可获取精心准备的教程以及pdf呢!需要源码后台私信小编哦!

怎么样,依然是棱角分明,含情脉脉,微启朱唇,千柔百媚,足以让六宫粉黛黯然失色!

那么如何完成这样惟妙惟肖的妙笔丹青呢?用Python简单到让人发指,不到20行代码。思路大致如下,先使用Pillow库读取图片。此处需要注意,使用pip install pillow命令安装pillow库,但是在使用的时候却是从PIL库导入相关模块。因为pillow库是PIL(Python Image library)的分支,相对于PIL更新较为及时,兼容python3,是图像处理的不二之选。读取完成图片之后需要将图片转换成灰度模式,灰度模式的图色彩较为单一,容易处理。由于图像是由一个个的像素点组成的,可以把它们看成一个个的小格子,里面填充了色块,利用pillow库,可以获取某个指定的坐标处的灰度值。灰度值在0-255之间,越接近于0颜色就越暗,越接近于255颜色就越亮。由此我们可以定义一串字符串,越靠前字符笔画越复杂例如@、#、¥等,当这样一大堆字符拼接在一起时,从远处看,颜色就越暗,越靠后的字符笔画越简单例如=、+、-等,当这样一大堆字符拼接在一起时,从远处看,颜色就越亮。我们将指定坐标处的像素根据其灰度值替换成相对应的字符,然后拼接起来,写入一个txt文档,将相当于使用字符临摹了这张图片。

完整代码如下:

 1""" 2@author: Kevin Wong 3@function: 使用pillow模块将图片转换成字符画  4@time: 2018/11/04 13:54 5""" 6from PIL import Image 7# 读取图片 8img = Image.open("./ruhua.jpg") 9# 将图片转换成灰度模式10conv_img = img.convert("L")11# 获取原图的宽高12wIDth,height = conv_img.size13# 设置垂直比例系数14vscale = 0.515# 将图片等比例缩小为原来的四分之一大小16conv_img = conv_img.resize((int(wIDth * 0.25),int(height * 0.25 * vscale)))17# 获取缩小之后的图片的宽高18wIDth,height = conv_img.size19# 定义一个字符串 字符笔画由复杂到简单20chars = "@&$%#*+=-. "21chars_drawing = ""22for row in range(height):23 for col in range(wIDth):24 # 获取图片当前位置的像素灰度值25 gray = conv_img.getpixel((col,row))26 # 使用定义好的字符替换相应的灰度值处的图像27 chars_drawing += chars[int(gray / 255 *10)]28 chars_drawing += ''29with open("./ruhua.txt",'w') as f:30 f.write(chars_drawing)

完结,撒花,ye~

这才是我的女朋友!

总结

以上是内存溢出为你收集整理的Python奇技淫巧之将你的女神照片变成字符画!女朋友就答应嘿嘿全部内容,希望文章能够帮你解决Python奇技淫巧之将你的女神照片变成字符画!女朋友就答应嘿嘿所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/langs/1208535.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存