基于python实现图片转字符画代码实例


Posted in Python onSeptember 04, 2020

直接上代码图片就使用我家爽妹子的吧

基于python实现图片转字符画代码实例

如果没有安装pil模块的话先cmd安装下

输入:pip install pillow

# -*- coding: utf-8 -*-
from PIL import Image

codeLib = '''@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<>i!lI;:,"^`'. '''#生成字符画所需的字符集
count = len(codeLib)

def transform1(image_file):
  image_file = image_file.convert("L")#转换为黑白图片,参数"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)) #返回指定位置的像素,如果所打开的图像是多层次的图片,那这个方法就返回一个元组
      codePic = codePic + codeLib[int(((count-1)*gray)/256)]#建立灰度与字符集的映射
    codePic = codePic+'\r\n'
  return codePic

def 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+'\r\n'
  return codePic
fp = 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)))#调整图片大小
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,3
print(a,b,c)

结果不知还能否看出来

基于python实现图片转字符画代码实例

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 字典(Dictionary)操作详解
Mar 11 Python
Python实现二叉树结构与进行二叉树遍历的方法详解
May 24 Python
Queue 实现生产者消费者模型(实例讲解)
Nov 13 Python
新手常见6种的python报错及解决方法
Mar 09 Python
基于PyQt4和PySide实现输入对话框效果
Feb 27 Python
django的ORM操作 删除和编辑实现详解
Jul 24 Python
python3 实现调用串口功能
Dec 26 Python
解析python 中/ 和 % 和 //(地板除)
Jun 28 Python
python实现自动清理重复文件
Aug 24 Python
如何Tkinter模块编写Python图形界面
Oct 14 Python
用Python制作音乐海报
Jan 26 Python
理解python中装饰器的作用
Jul 21 Python
Python HTMLTestRunner如何下载生成报告
Sep 04 #Python
详解python中的lambda与sorted函数
Sep 04 #Python
如何利用Python动态模拟太阳系运转
Sep 04 #Python
python装饰器三种装饰模式的简单分析
Sep 04 #Python
Django如何实现密码错误报错提醒
Sep 04 #Python
如何使用python socket模块实现简单的文件下载
Sep 04 #Python
python 监控logcat关键字功能
Sep 04 #Python
You might like
十天学会php之第七天
2006/10/09 PHP
php学习笔记之基础知识
2014/11/08 PHP
php使用gettimeofday函数返回当前时间并存放在关联数组里
2015/03/19 PHP
php实现多城市切换特效
2015/08/09 PHP
深入理解PHP中的count函数
2016/05/31 PHP
php版微信公众号自定义分享内容实现方法
2016/09/22 PHP
PHP实现二维数组根据key进行排序的方法
2016/12/30 PHP
PHP命名空间与自动加载类详解
2018/09/04 PHP
PHP registerXPathNamespace()函数讲解
2019/02/03 PHP
javascript打印大全(打印页面设置/打印预览代码)
2013/03/29 Javascript
JS子父窗口互相操作取值赋值的方法介绍
2013/05/11 Javascript
JQuery限制复选框checkbox可选中个数的方法
2015/04/20 Javascript
使用CoffeeScrip优美方式编写javascript代码
2015/10/28 Javascript
JavaScript解析任意形式的json树型结构展示
2017/07/23 Javascript
浅谈Angular路由守卫
2017/08/26 Javascript
通过vue-router懒加载解决首次加载时资源过多导致的速度缓慢问题
2018/04/08 Javascript
jQuery实现表格的增、删、改操作示例
2019/01/27 jQuery
如何将百度地图包装成Vue的组件的方法步骤
2019/02/12 Javascript
微信小程序swiper组件实现抖音翻页切换视频功能的实例代码
2020/06/24 Javascript
vue prop传值类型检验方式
2020/07/30 Javascript
Python中下划线的使用方法
2015/03/27 Python
python如何实现excel数据添加到mongodb
2015/07/30 Python
Python算法应用实战之栈详解
2017/02/04 Python
python实现监控某个服务 服务崩溃即发送邮件报告
2018/06/21 Python
python实现飞机大战游戏
2020/10/26 Python
python实现批量文件重命名
2019/10/31 Python
用python求一重积分和二重积分的例子
2019/12/06 Python
使用python实现数组、链表、队列、栈的方法
2019/12/20 Python
详解Python设计模式之策略模式
2020/06/15 Python
建筑施工实习自我鉴定
2013/09/19 职场文书
企业总经理岗位职责
2014/02/13 职场文书
计算机应用应届生求职信
2014/07/12 职场文书
见习报告的格式
2014/11/04 职场文书
承德避暑山庄导游词
2015/02/03 职场文书
纪检部部长竞选稿
2015/11/21 职场文书
【2·13】一图读懂中国无线电发展
2022/02/18 无线电