版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/he_wen_jie/article/details/81671965
import cv2
ascii_char = list('#8XOHLTI)i=+;:,. ')
length = len(ascii_char)
imgname = "timg1.jpg"
def get_char(gray, mode):
if mode:
return ascii_char[gray * length/256]
else:
return ascii_char[-gray * length/256-1]
img = cv2.imread(imgname,0)
img = cv2.GaussianBlur(img,(3,3),0)
img = cv2.Canny(img, 50, 150)
img_h,img_w = img.shape
new_h = 60
new_w = int(img_w*1.5 * new_h / img_h)
print(new_w*1.2)
img = cv2.resize(img,(new_w,new_h))
# cv2.imshow('Canny', img)
# cv2.waitKey(0)
# cv2.destroyAllWindows()
with open('lena.txt','w') as f:
for i in range(new_h):
txt = ''
for j in range(new_w):
txt += get_char(img[i][j],0)
f.write(txt+'\n')
print(txt)