一百行python代码将图片转成字符画


Posted in Python onFebruary 19, 2021

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

一百行python代码将图片转成字符画

一百行python代码将图片转成字符画

一百行python代码将图片转成字符画

一百行python代码将图片转成字符画

该代码引用了PIL库的Image,所以必须先安装PIP,再安装PIL,记住,我的64位系统居然是选WIN32 结尾的那个whl文件,然后才安装成功。

下面贴代码:

from PIL import Image
import argparse

#can shu chu li
parser = argparse.ArgumentParser()

parser.add_argument('file')
parser.add_argument('-o','--output')
parser.add_argument('--width',type = int ,default = 80)

parser.add_argument('--height',type = int, default = 80)

args = parser.parse_args()

IMG = args.file
WIDTH = args.width
HEIGHT = args.height
OUTPUT = args.output

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

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

 unit = (256.0+1)/length
 return ascii_char[int(gray/unit)]

if __name__ == '__main__':
 im = Image.open(IMG)
 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'

 print txt

 if OUTPUT:
 with open(OUTPUT,'w') as f:
 f.writh(txt)
 else:
 with open("output.txt",'w') as f:
 f.write(txt)

在安装好环境之后,将上面程序保存为XX.py ,运行命令符cd到当前py文件的目录,然后输入:

python XX.py YY.png

XX.py是你当前的python文件名,然后 YY.png是你要转换的图片,图片与py文件要保存在同一个目录;

快试一试吧,超级好玩的。

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

Python 相关文章推荐
python strip()函数 介绍
May 24 Python
Python的ORM框架SQLObject入门实例
Apr 28 Python
解读Python编程中的命名空间与作用域
Oct 16 Python
python3调用R的示例代码
Feb 23 Python
Python画柱状统计图操作示例【基于matplotlib库】
Jul 04 Python
对pandas中两种数据类型Series和DataFrame的区别详解
Nov 12 Python
Python3 把一个列表按指定数目分成多个列表的方式
Dec 25 Python
tensorflow的计算图总结
Jan 12 Python
Python实现密钥密码(加解密)实例详解
Apr 26 Python
Python如何实现邮件功能
May 27 Python
python 基于opencv去除图片阴影
Jan 26 Python
python time.strptime格式化实例详解
Feb 03 Python
Pandas GroupBy对象 索引与迭代方法
Nov 16 #Python
python实现指定字符串补全空格、前面填充0的方法
Nov 16 #Python
pandas 透视表中文字段排序方法
Nov 16 #Python
用Python实现数据的透视表的方法
Nov 16 #Python
pandas pivot_table() 按日期分多列数据的方法
Nov 16 #Python
python生成以及打开json、csv和txt文件的实例
Nov 16 #Python
python判断列表的连续数字范围并分块的方法
Nov 16 #Python
You might like
PHP学习之字符串比较和查找
2011/04/17 PHP
PHP采集利器 Snoopy 试用心得
2011/07/03 PHP
php缩放图片(根据宽高的等比例缩放)实例介绍
2013/06/09 PHP
Codeigniter注册登录代码示例
2014/06/12 PHP
Yii中表单用法实例详解
2016/01/05 PHP
新手快速学习JavaScript免费教程资源汇总
2015/06/25 Javascript
页面内容排序插件jSort使用方法
2015/10/10 Javascript
javascript实现获取浏览器版本、浏览器类型
2015/12/02 Javascript
Zero Clipboard实现浏览器复制到剪贴板的方法(多个复制按钮)
2016/03/24 Javascript
JS中split()用法(将字符串按指定符号分割成数组)
2016/10/24 Javascript
将Sublime Text 3 添加到右键中的简单方法
2017/12/12 Javascript
微信小程序导航栏滑动定位功能示例(实现CSS3的positionsticky效果)
2019/01/24 Javascript
AutoJs实现刷宝短视频的思路详解
2020/05/22 Javascript
[04:23]DOTA2上海特锦赛小组赛第一日 TOP10精彩集锦
2016/02/27 DOTA
python基于BeautifulSoup实现抓取网页指定内容的方法
2015/07/09 Python
python爬虫框架scrapy实战之爬取京东商城进阶篇
2017/04/24 Python
Python下载网络文本数据到本地内存的四种实现方法示例
2018/02/05 Python
python dlib人脸识别代码实例
2019/04/04 Python
java判断三位数的实例讲解
2019/06/10 Python
Python re 模块findall() 函数返回值展现方式解析
2019/08/09 Python
Python编译成.so文件进行加密后调用的实现
2019/12/23 Python
利用Python实现朋友圈中的九宫格图片效果
2020/09/03 Python
python PyAUtoGUI库实现自动化控制鼠标键盘
2020/09/09 Python
瑞典最好的运动鞋专卖店:Sneakersnstuff
2016/08/29 全球购物
巴基斯坦电子产品购物网站:Home Shopping
2017/09/14 全球购物
英国和世界各地鲜花速递专家:Arena Flowers
2018/02/10 全球购物
惠普新加坡官方商店:HP Singapore
2020/04/17 全球购物
什么是虚拟内存?虚拟内存有什么优势?
2012/02/19 面试题
八一建军节活动方案
2014/02/10 职场文书
鲜花方阵解说词
2014/02/13 职场文书
大学理论知识学习自我鉴定
2014/04/28 职场文书
物业品质提升方案
2014/06/08 职场文书
2014年小学美术工作总结
2014/12/20 职场文书
单位收入证明范本
2015/06/18 职场文书
“5.12”护士节主持词
2015/07/04 职场文书
mysql批量新增和存储的方法实例
2021/04/07 MySQL