本文给大家讲解通过pillow-PIL库当中的Image模块来实现如下图的图像转字符画效果,有没有觉得这简陋的字符看起来很有编程的高级感呢,那就让我们开始吧!!!输出效果原图
图片选自我的idol周杰伦的写真,大家如果需要可自行下载
首先第一步我们需要安装环境也就是我们要用到的第三方库,python强大的第三方库大家一定要懂得如何安装,我们直接pip进行安装pillow-PIL装好这个库也就有我们后面要用的Image模块了 具体的安装教程我会在其他文章当中进行详细讲解。
1,装好以后我们进行导入Image
2,导入后我们首先来定义设计方法来进行灰度值转换和字符映射(以下字符列表可自行复制)
char_list = list("$@B%8$@B%8&W$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<>i!lI;:,\"^`'. ^`'. ^`'. ^`'. ")
3,定义好方法后我们进行图片的读取和降低品质及尺寸
循环遍历其每个像素的rgb值并传入刚刚定义好的方法之中,拿到映射好的字符进行本地文件的写入
完整代码:
import Image
# 1设计方法来进行灰度值转换和字符映射的方法,
#灰度值转换是通过rgb计算而来的,所以形参当中要具备rgb a代表透明
def getchar(r,g,b,a=0):
if a==0:
return " "