基于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字典几种方法总结(推荐)
Sep 11 Python
简单的python后台管理程序
Apr 13 Python
TensorFlow数据输入的方法示例
Jun 19 Python
对python当中不在本路径的py文件的引用详解
Dec 15 Python
python配置grpc环境
Jan 01 Python
pytorch 共享参数的示例
Aug 17 Python
python实现图片插入文字
Nov 26 Python
pytorch:torch.mm()和torch.matmul()的使用
Dec 27 Python
pytorch 获取tensor维度信息示例
Jan 03 Python
PyTorch中Tensor的数据类型和运算的使用
Sep 03 Python
python 基于opencv实现高斯平滑
Dec 18 Python
分析Python list操作为什么会错误
Nov 17 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接口数据加密、解密、验证签名
2015/03/12 PHP
PHP实现批量检测网站是否能够正常打开的方法
2016/08/23 PHP
PHP数组访问常用方法解析
2020/09/05 PHP
IE不出现Flash激活框的小发现的js实现方法
2007/09/07 Javascript
JQuery与Ajax常用代码实现对比
2009/10/03 Javascript
Ext.MessageBox工具类简介
2009/12/10 Javascript
JavaScript中的isXX系列是否继续使用的分析
2011/04/16 Javascript
js中符号转意问题示例探讨
2013/08/19 Javascript
javascript事件函数中获得事件源的两种不错方法
2014/03/17 Javascript
JS使用ajax从xml文件动态获取数据显示的方法
2015/03/24 Javascript
javascript实现百度地图鼠标滑动事件显示、隐藏
2015/04/02 Javascript
非常棒的jQuery图片轮播效果
2016/04/17 Javascript
JavaScript中重名的函数与对象示例详析
2017/09/28 Javascript
修改UA在PC中访问只能在微信中打开的链接方法
2017/11/27 Javascript
vue2使用keep-alive缓存多层列表页的方法
2018/09/21 Javascript
详解Vue组件之作用域插槽
2018/11/22 Javascript
详解React 服务端渲染方案完美的解决方案
2018/12/14 Javascript
详解vue 不同环境配置不同的打包命令
2019/04/07 Javascript
Mpvue中使用Vant Weapp组件库的方法步骤
2019/05/16 Javascript
JavaScript函数Call、Apply原理实例解析
2020/02/17 Javascript
微信jssdk踩坑之签名错误invalid signature
2020/05/19 Javascript
Vue获取微博授权URL代码实例
2020/11/04 Javascript
python处理圆角图片、圆形图片的例子
2014/04/25 Python
python实现获取客户机上指定文件并传输到服务器的方法
2015/03/16 Python
Python中返回字典键的值的values()方法使用
2015/05/22 Python
通过mod_python配置运行在Apache上的Django框架
2015/07/22 Python
Python内置函数delattr的具体用法
2017/11/23 Python
Django之使用celery和NGINX生成静态页面实现性能优化
2019/10/08 Python
Pytho爬虫中Requests设置请求头Headers的方法
2020/09/22 Python
CSS3绘制六边形的简单实现
2016/08/25 HTML / CSS
新电JAVA笔试题目
2014/08/31 面试题
学习党的群众路线教育实践活动心得体会
2014/03/01 职场文书
初中班主任工作总结2015
2015/05/13 职场文书
2015年社区居委会工作总结
2015/05/18 职场文书
linux目录管理方法介绍
2022/06/01 Servers
ubuntu20.04虚拟机无法上网的问题及解决
2022/12/24 Servers