将图片字符化
Python作为一款“办公自动化”的语言,备受职场青年们的喜爱,对于Python的学习也引发了一股热潮。作为一位想要尽快进入职场的励志青年
,我也是仓促的顺流而进。
在学习Python时,我注意到了一个很有趣的库:pillow
。它可以将图片中的每一项素转换成自定义的字符,这简直是~~装*~~打发时间的神器。
😀当然,这不是什么神奇的操作了,应该说这种是很落后的一种技术了。但pillow
的用处可不止这一种,说不准下次有了灵感。整体的思路是将图片灰度处理,得到每个像素的灰度值(0~255),然后进行字符的替换。
首先,电脑💻是要有Python运行环境的,这里不详细赘述,不清楚🔍。
-
使用
cmd
命令安装pillow
库pip install pillow
-
使用Python Shall,进行命令操作
#使用pillow库中的Image from PIL import Image #demo.jpg是放在Shall文件目录下的,可以自加路径 img = Image.open("demo.jpg") #将彩图变灰色 out = img.convert("L") out.show()
-
我们在选取照片的时候尽量不要太大像素的,可以进行适当地压缩,这样可以帮助我们进行打印。
out.size #(500, 282),这是demo照片的尺寸
width,height = out.size
#将照片进行1/4缩小 out = out.resize((int(width * 0.5),int(height * 0.25))) width,height = out.size
-
字符要尽量选择对比明显的,这样更容易显示
asciis = "@%#*+=-. " #最后一位是空格
for row in range(height): for col in range(width): gray = out.getpixel((col,row)) texts += asciis[int(gray / 255 * 8)] texts += "\n" #使用循环把像素进行替换
-
最后输出到你指定的位置
#我是输出到TXT文件里 with open("C:/Users/Mather/Desktop/01.txt","w") as file: file.write(texts)
-
结果
这是原图
这是TXT文件截图
以上就是这次的分享,学到即是赚到。当然,重要的是
可口可乐
。