从零学python系列之教你如何根据图片生成字符画

 更新时间:2014年05月23日 11:13:51   作者:   我要评论
网上有很多的字符画,看起来很炫酷,下面就告诉你如何用Python做这么炫酷的事,

说下思路吧:

原图->灰度->根据像素亮度-映射到指定的字符序列中->输出。
字符越多,字符变化稠密。效果会更好。
如果根据灰度图的像素亮度范围制作字符画,效果会更好。
如果再使用调色板,对字符进行改色,就更像原图了。

这是原图: 

这是生成的字符画:

废话不多说,直接上代码:

复制代码 代码如下:

import Image
chars =" ...',;:clodxkLO0DGEKNWMM"
fn=r'c:\users\liabc\desktop\jianbing.png'
f1=lambda F:''.join([(k%100!=0) and m or m+'\n' for k,m in enumerate(apply(lambda x:[chars[x[j,i]%len(chars)] for i in xrange(70) for j in xrange(100)],(Image.open(F).resize((100,70)).convert("L").load(),)),1)])
 f=open(r"c:\users\liabc\desktop\aface.txt","w")
f.write(f1(fn))
f.close()

相关文章

  • django框架使用方法详解

    django框架使用方法详解

    这篇文章主要介绍了django框架使用方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • 利用nohup来开启python文件的方法

    利用nohup来开启python文件的方法

    今天小编就为大家分享一篇利用nohup来开启python文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • python数据结构之二叉树的建立实例

    python数据结构之二叉树的建立实例

    这篇文章主要介绍了python数据结构之二叉树的建立实例,采用了类似递归方式建立,需要的朋友可以参考下
    2014-04-04
  • python列表每个元素同增同减和列表元素去空格的实例

    python列表每个元素同增同减和列表元素去空格的实例

    今天小编就为大家分享一篇python列表每个元素同增同减和列表元素去空格的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • python利用rsa库做公钥解密的方法教程

    python利用rsa库做公钥解密的方法教程

    RSA是一种公钥密码算法,RSA的密文是对代码明文的数字的 E 次方求mod N 的结果。下面这篇文章主要给大家介绍了关于python利用rsa库做公钥解密的方法教程,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。
    2017-12-12
  • 使用 Visual Studio Code(VSCode)搭建简单的Python+Django开发环境的方法步骤

    使用 Visual Studio Code(VSCode)搭建简单的Python+Django开发

    这篇文章主要介绍了使用 Visual Studio Code(VSCode)搭建简单的Python+Django开发环境的方法步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • python 遍历目录(包括子目录)下所有文件的实例

    python 遍历目录(包括子目录)下所有文件的实例

    今天小编就为大家分享一篇python 遍历目录(包括子目录)下所有文件的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • python爬虫中多线程的使用详解

    python爬虫中多线程的使用详解

    queue是python的标准库,俗称队列.可以直接import引用,在python2.x中,模块名为Queue。这篇文章主要介绍了python爬虫中多线程的使用,需要的朋友可以参考下
    2019-09-09
  • Python编程入门的一些基本知识

    Python编程入门的一些基本知识

    这篇文章主要介绍了Python编程入门的一些基本知识,包括注释需和Shell命令使用等基本内容,要的朋友可以参考下
    2015-05-05
  • Python3.6连接Oracle金沙国际官网的方法详解

    Python3.6连接Oracle金沙国际官网的方法详解

    这篇文章主要介绍了Python3.6连接Oracle金沙国际官网的方法,较为详细的分析了cx_Oracle模块安装及Python3.6使用cx_Oracle模块操作Oracle金沙国际官网的具体操作步骤与相关注意事项,需要的朋友可以参考下
    2018-05-05

最新评论