博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python3 图片转字符画
阅读量:4952 次
发布时间:2019-06-12

本文共 1096 字,大约阅读时间需要 3 分钟。

 

from PIL import Imageimport argparseascii_char = list("$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<>i!lI;:,\"^`'.")def get_char(r,g,b,alpha = 256):    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)]parser = argparse.ArgumentParser()parser.add_argument('file')parser.add_argument('-o','--output')parser.add_argument('--width',type = int,default = 80)parser.add_argument('--height',type = int,default = 80)args = parser.parse_args()IMG = args.fileWIDTH = args.widthHEIGHT = args.heightOUTPUT = args.outputif __name__ == '__main__':    im = Image.open(IMG)    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'     print(txt)    if OUTPUT:        with open(OUTPUT,'w') as f:            f.write(txt)    else:        with open('output.txt','w') as f:            f.write(txt)

 

转载于:https://www.cnblogs.com/xiaodebing/p/9202278.html

你可能感兴趣的文章
20180104-高级特性-Slice
查看>>
6个SQL Server 2005性能优化工具介绍
查看>>
nginx启动、关闭命令、重启nginx报错open() "/var/run/nginx/nginx.pid" failed
查看>>
day14 Python 内置函数、匿名函数和递归函数
查看>>
BZOJ 3097 Hash Killer I
查看>>
UINavigationController的视图层理关系
查看>>
html阴影效果怎么做,css 内阴影怎么做
查看>>
宏观经济
查看>>
译:面试投行的20个Java问题
查看>>
综合练习:词频统计
查看>>
BZOJ1026: [SCOI2009]windy数
查看>>
ASP.NET应用程序和ASP.NET网站所共有的文件: App_Browsers 等
查看>>
ASP.NET杂货店实战视频 VS2010+SQL2008 三层架构设计开发讲解
查看>>
样板操作数
查看>>
64位UBUNTU下安装adobe reader后无法启动
查看>>
动态缓存技术之CSI,SSI,ESI
查看>>
mac 上将.pem文件转为.pub文件
查看>>
整理下心情
查看>>
iTextSharp带中文转换出来的PDF文档显示乱码
查看>>
阶乘因式分解(一)
查看>>