中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python如何將圖片轉換為字符畫?

發布時間:2020-06-23 10:20:08 來源:億速云 閱讀:158 作者:清晨 欄目:開發技術

這篇文章將為大家詳細講解有關Python如何將圖片轉換為字符畫?,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

題目意思是,程序讀入一個圖片,以txt格式輸出圖片對應的字符畫,如圖所示:

Python如何將圖片轉換為字符畫?

以下是Python代碼:

# coding:utf-8 
 
# 為一張圖片生成對應的字符集圖片 
 
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=80) # 輸出字符畫寬 
parser.add_argument('--height', type=int, default=80) # 輸出字符畫高 
 
# 獲取參數 
args = parser.parse_args() 
 
IMG = args.file 
WIDTH = args.width 
HEIGHT = args.height 
OUTPUT = args.output 
 
ascii_char = list("$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]&#63;-_+~<>i!lI;:,\"^`'. ") 
 
 
# 將256灰度映射到70個字符上 
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' 
 
 print txt 
 
 # 字符畫輸出到文件 
 if OUTPUT: 
  with open(OUTPUT,'w') as f: 
   f.write(txt) 
 else: 
  with open("output.txt", 'w') as f: 
   f.write(txt) 

在輸出文件中得到如下字符集:

Python如何將圖片轉換為字符畫?

關于Python如何將圖片轉換為字符畫?就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

丽江市| 体育| 霍山县| 临湘市| 五指山市| 瑞金市| 垦利县| 江西省| 新昌县| 姜堰市| 桦甸市| 旬邑县| 安陆市| 平定县| 阿坝县| 临海市| 三台县| 湖州市| 惠东县| 彩票| 南昌市| 旺苍县| 手机| 黎川县| 广州市| 红河县| 五峰| 布尔津县| 南汇区| 罗田县| 桃江县| 海盐县| 江都市| 前郭尔| 太白县| 南岸区| 无棣县| 阳曲县| 毕节市| 廊坊市| 美姑县|