python Opencv將圖片轉為字符畫
做了個Python的小練習,網(wǎng)上有人是利用PIL中的Image來實現(xiàn)的,覺得Opencv庫挺方便的,于是利用Opencv庫來實現(xiàn)了一下,代碼如下:
# -*- coding: utf-8 -*-
# feimengjuan
# 實現(xiàn)將圖片轉為字符畫
import cv2
ascii_char = list("$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<>i!lI;:,\"^`'. ")
# 將灰度值轉為字符
def get_char(gray_number):
length = len(ascii_char)
unit = (256.0 + 1)/length
return ascii_char[int(gray_number/unit)]
if __name__ == '__main__':
image1 = cv2.imread('8.jpg')
image = cv2.resize(image1,(85,110))
gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
txt = ""
for i in range(image.shape[0]):
for j in range(image.shape[1]):
# 對打開的圖片的每個坐標的灰度值做判斷,
# 用get_char()獲取該顏色灰度值對應的字符,然后拼接成字符串txt
txt += get_char(gray[i,j])
txt += '\n'
print txt
#字符畫輸出到文件中
f = open('output.txt','w')
f.write(txt)
結果是:
原圖片:

結果:

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
win與linux系統(tǒng)中python requests 安裝
requests是Python的一個HTTP客戶端庫,跟urllib,urllib2類似,今天我們主要來談談win與linux系統(tǒng)中python requests的安裝方法以及使用指南2016-12-12
Python cookbook(數(shù)據(jù)結構與算法)找到最大或最小的N個元素實現(xiàn)方法示例
這篇文章主要介紹了Python找到最大或最小的N個元素實現(xiàn)方法,涉及Python基于heapq模塊進行集合運算的相關操作技巧,需要的朋友可以參考下2018-02-02
python利用pymysql和openpyxl實現(xiàn)操作MySQL數(shù)據(jù)庫并插入數(shù)據(jù)
這篇文章主要為大家詳細介紹了如何使用Python連接MySQL數(shù)據(jù)庫,并從Excel文件中讀取數(shù)據(jù),將其插入到MySQL數(shù)據(jù)庫中,有需要的小伙伴可以參考一下2023-10-10
python基于Tkinter庫實現(xiàn)簡單文本編輯器實例
這篇文章主要介紹了python基于Tkinter庫實現(xiàn)簡單文本編輯器,實例分析了Python使用Tkinter庫實現(xiàn)簡單桌面應用程序的技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-05-05
Python連接Hadoop數(shù)據(jù)中遇到的各種坑(匯總)
這篇文章主要介紹了Python連接Hadoop數(shù)據(jù)中遇到的各種坑,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-04-04
Django model重寫save方法及update踩坑詳解
這篇文章主要介紹了Django model重寫save方法及update踩坑詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07
Python OpenCV 使用滑動條來調整函數(shù)參數(shù)的方法
這篇文章主要介紹了Python OpenCV 使用滑動條來調整函數(shù)參數(shù)的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-07-07

