python的图片转字符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python的图片转字符相关的知识,希望对你有一定的参考价值。

参考技术A from PILimport Image

ascii_char =list("!~#$%^&**()_+`=][\|;':<>?/")

#字符与RGB的对应的映射关系

def get_char(r,g,b,alpha=256):

if alpha ==0 :

return ' '

    lenght =len(ascii_char)

gray =int(0.2126 * r +0.7152 * g +0.0722 * b)

unit = (256.0 +1)/lenght

return ascii_char[int(gray/unit)]

if __name__ =='__main__':

im = Image.open(r"C:\Users\鹏COMPUTER\Desktop\timg.jpg")

#这里是转换图片的大小,然后第二个参数表示图片的质量,一共有4种,低质量Image.NEARSET,双线性Image.BILINEAR,三次样条插值Image.BICUBIC,高质量Image.ANTIALIAS

    im = im.resize((60,30),Image.NEAREST)

txt =""

    for iin range(30):

for jin range(60):

#im.getpixel:根据坐标取得RGB对应的r,g,b三个值,这里的getpixel((i,j))的两个括号非常重要

            txt += get_char(*im.getpixel((j,i)))

txt +='\n'

    print(txt)

with open(r"C:\Users\鹏COMPUTER\Desktop\m.txt",'w')as f:

f.write(txt)

这是输出的字符串:

以上是关于python的图片转字符的主要内容,如果未能解决你的问题,请参考以下文章

python的图片转字符

Python3:图片转字符画

python 图片转字符画

Python图片转字符画

Python 图片转字符画

Python图片转字符画