图片转字符画

图片转字符画

# -*- coding: utf-8 -*-
from PIL import Image
# 图片文件
# 设置图片大小,越大精度越高
height=50
width=50
ascii_char=['##', '@@', '%%', 'QQ', 
            'SS','UU', 'OO', '??', 
            'oo','++', '--', '::', '..']
# 传入图片文件名称/位置,输出字符画,
def get_strImg(img):
    im=Image.open(img)
    im=im.resize((width,height), Image.NEAREST)
    im = im.convert('L')    # 图片灰度处理
    pix = im.load()        # 返回像素值
    txt=""
    for x in range(height):
        for y in range(width):
            if int(pix[y, x])==0:            # 像素为0时,输入 空格
                txt+="  "
            else:
                txt+=ascii_char[int(pix[y, x]) * len(ascii_char) / 256]
        txt +='\n'
    print txt
    with open('out.txt','w') as f:    
        f.write(txt)
if __name__ == '__main__':
    img='1.png'
    get_strImg(img)

--------------------传入----------------------

图片转字符画_第1张图片

-------------------输出---------------------

图片转字符画_第2张图片

你可能感兴趣的:(图片转字符画)