当前位置:首页 > Python教程 > python技巧

python Pillow 的简单案例

#代码来自 实验楼https://www.shiyanlou.com/courses/

#encoding=utf-8
#/usr/bin/env python
from PIL import Image
import argparse

parser = argparse.ArgumentParser()

parser.add_argument(‘file‘)
parser.add_argument(‘-o‘ , ‘--output‘)
parser.add_argument(‘--width‘, type=int , default=50)
parser.add_argument(‘--height‘ , type=int , default=50)

args = parser.parse_args()

IMG = args.file
WIDTH = args.width
HEIGHT = args.height
OUTPUT = args.output

 


ascii_char = list("$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/|()1{}[]?-_+~<>i!lI;:,"^`‘. ")

def get_char(r ,b ,g , 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)]


if __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‘

if OUTPUT:
with open(OUTPUT , ‘w‘) as f:
f.write(txt)

else:
with open(‘output.txt‘,‘w‘) as f:
f.write(txt)

 

原文:http://www.cnblogs.com/zeopean/p/5247183.html


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!

相关教程推荐

其他课程推荐