基于python實(shí)現(xiàn)圖片轉(zhuǎn)字符畫代碼實(shí)例
直接上代碼圖片就使用我家爽妹子的吧

如果沒有安裝pil模塊的話先cmd安裝下
輸入:pip install pillow
# -*- coding: utf-8 -*-from PIL import ImagecodeLib = ’’’@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/|()1{}[]?-_+~<>i!lI;:,'^`’. ’’’#生成字符畫所需的字符集count = len(codeLib)def transform1(image_file): image_file = image_file.convert('L')#轉(zhuǎn)換為黑白圖片,參數(shù)'L'表示黑白模式 codePic = ’’ for h in range(0,image_file.size[1]): #size屬性表示圖片的分辨率,’0’為橫向大小,’1’為縱向 for w in range(0,image_file.size[0]): gray = image_file.getpixel((w,h)) #返回指定位置的像素,如果所打開的圖像是多層次的圖片,那這個(gè)方法就返回一個(gè)元組 codePic = codePic + codeLib[int(((count-1)*gray)/256)]#建立灰度與字符集的映射 codePic = codePic+’rn’ return codePicdef transform2(image_file): codePic = ’’ for h in range(0,image_file.size[1]): for w in range(0,image_file.size[0]): g,r,b = image_file.getpixel((w,h)) gray = int(r* 0.299+g* 0.587+b* 0.114) codePic = codePic + codeLib[int(((count-1)*gray)/256)] codePic = codePic+’rn’ return codePicfp = open(r’C:路徑3.jpg’,’rb’)image_file = Image.open(fp)image_file=image_file.resize((int(image_file.size[0]*0.2), int(image_file.size[1]*0.1)))#調(diào)整圖片大小print (u’Info:’,image_file.size[0],’ ’,image_file.size[1],’ ’,count)tmp = open(’tmp.txt’,’w’)tmp.write(transform1(image_file))tmp.close()a,b,c=1,2,3print(a,b,c)
結(jié)果不知還能否看出來

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 編程語言PHP在Web開發(fā)領(lǐng)域的優(yōu)勢(shì)在哪?2. 解決Android studio xml界面無法預(yù)覽問題3. Spring Boot和Thymeleaf整合結(jié)合JPA實(shí)現(xiàn)分頁效果(實(shí)例代碼)4. 基于android studio的layout的xml文件的創(chuàng)建方式5. 詳解Android studio 動(dòng)態(tài)fragment的用法6. 什么是python的自省7. Android如何加載Base64編碼格式圖片8. 圖文詳解vue中proto文件的函數(shù)調(diào)用9. .Net Core使用Coravel實(shí)現(xiàn)任務(wù)調(diào)度的完整步驟10. 在IDEA中實(shí)現(xiàn)同時(shí)運(yùn)行2個(gè)相同的java程序

網(wǎng)公網(wǎng)安備