欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python將圖片轉(zhuǎn)換為字符畫(huà)的方法

 更新時(shí)間:2020年06月16日 11:07:09   作者:行者小朱  
這篇文章主要為大家詳細(xì)介紹了Python將圖片轉(zhuǎn)換為字符畫(huà)的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

最近在學(xué)習(xí)Python,看到網(wǎng)上用Python將圖片轉(zhuǎn)換成字符畫(huà)便來(lái)學(xué)習(xí)一下

題目意思是,程序讀入一個(gè)圖片,以txt格式輸出圖片對(duì)應(yīng)的字符畫(huà),如圖所示:

以下是Python代碼:

# coding:utf-8 
 
# 為一張圖片生成對(duì)應(yīng)的字符集圖片 
 
from PIL import Image 
import argparse 
 
# 命令行輸入?yún)?shù)處理 
parser = argparse.ArgumentParser() 
 
parser.add_argument('file')  # 輸入文件 
parser.add_argument('-o', '--output') # 輸出文件 
parser.add_argument('--width', type=int, default=80) # 輸出字符畫(huà)寬 
parser.add_argument('--height', type=int, default=80) # 輸出字符畫(huà)高 
 
# 獲取參數(shù) 
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;:,\"^`'. ") 
 
 
# 將256灰度映射到70個(gè)字符上 
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 
 
 # 字符畫(huà)輸出到文件 
 if OUTPUT: 
  with open(OUTPUT,'w') as f: 
   f.write(txt) 
 else: 
  with open("output.txt", 'w') as f: 
   f.write(txt) 

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

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • class類在python中獲取金融數(shù)據(jù)的實(shí)例方法

    class類在python中獲取金融數(shù)據(jù)的實(shí)例方法

    在本篇文章里小編給大家整理了關(guān)于class類怎樣在python中獲取金融數(shù)據(jù)的相關(guān)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。
    2020-12-12
  • 用Python進(jìn)行簡(jiǎn)單圖像識(shí)別(驗(yàn)證碼)

    用Python進(jìn)行簡(jiǎn)單圖像識(shí)別(驗(yàn)證碼)

    這篇文章主要為大家詳細(xì)介紹了用Python進(jìn)行簡(jiǎn)單圖像識(shí)別驗(yàn)證碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • python遞歸實(shí)現(xiàn)鏈表快速倒轉(zhuǎn)

    python遞歸實(shí)現(xiàn)鏈表快速倒轉(zhuǎn)

    這篇文章主要為大家詳細(xì)介紹了python遞歸實(shí)現(xiàn)鏈表快速倒轉(zhuǎn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • python如何更新包

    python如何更新包

    在本篇文章里小編給大家整理的是關(guān)于python更新包的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友們可以參考下。
    2020-06-06
  • 使用Python實(shí)現(xiàn)提取快遞信息

    使用Python實(shí)現(xiàn)提取快遞信息

    這篇文章主要為大家詳細(xì)介紹了如何使用Python調(diào)用快遞查詢API接口,并提取出我們需要的快遞信息,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-04-04
  • Python面向?qū)ο缶幊讨惖姆庋b

    Python面向?qū)ο缶幊讨惖姆庋b

    這篇文章主要介紹了Python面向?qū)ο缶幊讨惖姆庋b封裝指屬性和方法的抽象,屬性的抽象又指對(duì)類的屬性進(jìn)行定義、隔離和保護(hù),下面來(lái)看看文章的具體內(nèi)容吧,需要的朋友可以參考一下,希望對(duì)你有所幫助
    2021-11-11
  • Python利用lxml庫(kù)實(shí)現(xiàn)XML高級(jí)處理詳解

    Python利用lxml庫(kù)實(shí)現(xiàn)XML高級(jí)處理詳解

    在Python的世界中,lxml是處理XML和HTML的一款強(qiáng)大且易用的庫(kù),本文主要介紹了如何解析、創(chuàng)建、修改XML文檔,如何使用XPath查詢,以及如何解析大型XML文檔,需要的可以參考下
    2023-08-08
  • PyQt5實(shí)現(xiàn)下載進(jìn)度條效果

    PyQt5實(shí)現(xiàn)下載進(jìn)度條效果

    這篇文章主要為大家詳細(xì)介紹了PyQt5實(shí)現(xiàn)下載進(jìn)度條效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • python實(shí)現(xiàn)摳圖給證件照換背景源碼

    python實(shí)現(xiàn)摳圖給證件照換背景源碼

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)摳圖給證件照換背景源碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • Python腳本實(shí)現(xiàn)隨機(jī)數(shù)據(jù)生成自由詳解

    Python腳本實(shí)現(xiàn)隨機(jī)數(shù)據(jù)生成自由詳解

    這篇文章主要為大家詳細(xì)介紹了Python如何通過(guò)腳本實(shí)現(xiàn)隨機(jī)數(shù)據(jù)生成自由,文中的示例代碼講解詳細(xì),感興趣的小伙伴快跟隨小編一起學(xué)習(xí)一下吧
    2023-12-12

最新評(píng)論