python实现图片转字符小工具


Posted in Python onApril 30, 2019

本文实例为大家分享了python图片转字符小工具的具体实现代码,供大家参考,具体内容如下

from PIL import Image

#灰度与字符的映射
ascii_char = list("$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<>i!lI;:,\"^`'. ")

WIDTH=int(input("请输入你想输出的宽度:"))
HEIGHT=int(input("请输入你想输出的高度:"))
INPUT=r'D:\Download\ascii_dora.png'
OUTPUT=r'D:\Download\output.txt'

def get_char(r,g,b,alpha=256):
  if alpha==0:
    return ' '
  gray = 0.2126 * r + 0.7152 * g + 0.0722 * b
  length=len(ascii_char)
  unit=(256+1)/length
  return ascii_char[int(gray/unit)]

im=Image.open(INPUT)
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'

with open(OUTPUT,'w') as f:
  f.write(txt)

效果图:

python实现图片转字符小工具

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

Python 相关文章推荐
Python循环语句中else的用法总结
Sep 11 Python
python交互式图形编程实例(一)
Nov 17 Python
Python编程求解二叉树中和为某一值的路径代码示例
Jan 04 Python
基于Python中单例模式的几种实现方式及优化详解
Jan 09 Python
Python找出微信上删除你好友的人脚本写法
Nov 01 Python
python交换两个变量的值方法
Jan 12 Python
Python3爬虫之自动查询天气并实现语音播报
Feb 21 Python
python判断两个序列的成员是否一样的实例代码
Mar 01 Python
Pytorch框架实现mnist手写库识别(与tensorflow对比)
Jul 20 Python
Django利用elasticsearch(搜索引擎)实现搜索功能
Nov 26 Python
Django+Celery实现定时任务的示例
Jun 23 Python
python利用while求100内的整数和方式
Nov 07 Python
python 列表中[ ]中冒号‘:’的作用
Apr 30 #Python
python实现趣味图片字符化
Apr 30 #Python
python3对接mysql数据库实例详解
Apr 30 #Python
Python3.5局部变量与全局变量作用域实例分析
Apr 30 #Python
Python一行代码实现快速排序的方法
Apr 30 #Python
python批量识别图片指定区域文字内容
Apr 30 #Python
Python3.5装饰器典型案例分析
Apr 30 #Python
You might like
sphinx增量索引的一个问题
2011/06/14 PHP
php中截取中文字符串的代码小结
2011/07/17 PHP
js 颜色选择器(兼容firefox)
2009/03/05 Javascript
javascript的原生方法获取数组中的最大(最小)值
2012/12/19 Javascript
如何获取select下拉框的值(option没有及有value属性)
2013/11/08 Javascript
js密码强度校验
2015/11/10 Javascript
详解js中构造流程图的核心技术JsPlumb
2015/12/08 Javascript
JS函数多个参数默认值指定方法分析
2016/11/28 Javascript
javascript实现去除HTML标签的方法
2016/12/26 Javascript
微信小程序 picker-view 组件详解及简单实例
2017/01/10 Javascript
Bootstrap警告框(Alert)插件使用方法
2017/03/21 Javascript
BootStrap 获得轮播中的索引和当前活动的焦点对象
2017/05/11 Javascript
Vue数组更新及过滤排序功能
2017/08/10 Javascript
JS实现的哈夫曼编码示例【原始版与修改版】
2018/04/22 Javascript
小程序实现发表评论功能
2018/07/06 Javascript
解决vue的 v-for 循环中图片加载路径问题
2018/09/03 Javascript
基于vue的验证码组件的示例代码
2019/01/22 Javascript
node.js中ws模块创建服务端和客户端,网页WebSocket客户端
2019/03/06 Javascript
Vue+Express实现登录状态权限验证的示例代码
2019/05/05 Javascript
javascript+HTML5 canvas绘制时钟功能示例
2019/05/15 Javascript
JavaScript实现简单的图片切换功能(实例代码)
2020/04/10 Javascript
Python实现过滤单个Android程序日志脚本分享
2015/01/16 Python
浅谈Python中数据解析
2015/05/05 Python
Python中zfill()方法的使用教程
2015/05/20 Python
Python 编码Basic Auth使用方法简单实例
2017/05/25 Python
对Django外键关系的描述
2019/07/26 Python
flask框架蓝图和子域名配置详解
2020/01/25 Python
python自动脚本的pyautogui入门学习
2020/04/01 Python
python处理写入数据代码讲解
2020/10/22 Python
Canvas 帧动画吃苹果小游戏
2020/08/05 HTML / CSS
护士自荐信
2013/10/25 职场文书
采购经理岗位职责
2014/02/16 职场文书
写给纪委的违纪检讨书
2015/05/05 职场文书
少先队工作总结2015
2015/05/13 职场文书
MyBatis自定义SQL拦截器示例详解
2021/10/24 Java/Android
Windows Server 2008配置防火墙策略详解
2022/06/28 Servers