字符视觉排序

我们可以看到list中左边的字符视觉上较深,右边的字符视觉上较浅。

打开图片,调整大小

打开我们需要转化的图片,并将图片调整为我们所指定的宽和高(字符画的宽和高)

我们使用PIL来进行图片操作

使用PIL模块的open方法打开一张图片,使用resize方法将图片调整到宽为WIDTH,高为HEIGHT的大小。

像素转化为字符

定义一个方法get_char,这个方法输入一个像素点的r,b,g然后输出对应的字符。

get_char方法

方法中使用int(0.2126*r+0.7152*g+0.0722*b)将r,b,g转化为灰度值,然后根据灰度值的大小确定所选字符在ascii_char中的位置。接下来分享一个python教程,有什么不懂的可以加我视频中的联系方式和我交流,加上后领取价值12800元的python学习视频教程。

我们只需要遍历图片中的每一个像素,依次调用get_char方法即可得到每一个像素对应的字符,然后将这些字符组合起来即可得到所需的字符画了。

全部源码如下:

用python字符画生日快乐图片_手把手教你用python将图片做成字符画!相关推荐

  1. 如何用python抓取qq音乐_手把手教你使用Python抓取QQ音乐数据(第三弹)-阿里云开发者社区...

    [一.项目目标] 通过手把手教你使用Python抓取QQ音乐数据(第一弹)我们实现了获取 QQ 音乐指定歌手单曲排行指定页数的歌曲的歌名.专辑名.播放链接. 通过手把手教你使用Python抓取QQ音乐 ...

  2. python网页爬虫循环获取_手把手教你用 Python 搞定网页爬虫

    原标题:手把手教你用 Python 搞定网页爬虫 编译:欧剃 作为数据科学家的第一个任务,就是做网页爬取.那时候,我对使用代码从网站上获取数据这项技术完全一无所知,它偏偏又是最有逻辑性并且最容易获得的 ...

  3. python正确的输入语句_手把手教你在python中如何使用while True语句

    在学习过程中,经常能遇到采用while True的用法.下面以一个例子进行说明: 建立一个用户登录系统,用户输入用户名和密码,如果正确就可以进入系统. 1.我自己最开始的写法:d = {} #数据库字 ...

  4. python爬虫爬取房源_手把手教你用Python网络爬虫爬取新房数据

    项目背景 大家好,我是J哥. 新房数据,对于房地产置业者来说是买房的重要参考依据,对于房地产开发商来说,也是分析竞争对手项目的绝佳途径,对于房地产代理来说,是踩盘前的重要准备. 今天J哥以「惠民之家」 ...

  5. python处理时间序列非平稳_手把手教你用Python处理非平稳时间序列

    简介 预测一个家庭未来三个月的用电量,估计特定时期道路上的交通流量,预测一只股票在纽约证券交易所交易的价格--这些问题都有什么共同点? 它们都属于时间序列数据的范畴!如果没有"时间" ...

  6. python 桑基图 地理坐标_手把手教你用Python绘制酷炫的桑基图

    最近 ,不止一次收到小伙伴的截图追问: "这个图叫什么 ? ? ?" "这个图真好看 ! ! !怎么画啊 ?" ...... 笔者本没有干货 ,问的人多了 ,也 ...

  7. python文件图标变成小电脑_手把手教你给Python程序写图形界面,并且打包成exe文件-exe文件...

    环境配置 官网下载Python3,LZ的配置环境是Python3.6,PyCharm 2017.2.1pip3 install PyQt5 #下载PyQt5 pip install PyQt5-too ...

  8. python热搜排行功能_手把手教你用Python+Pyecharts让微博热搜榜动起来

    今天教大家如何用pyecharts制作微博热搜榜动态展示视频,先上视频看看效果: 教程主要有2部分: 一是python爬取微博热搜内容 二是用pyecharts制作动态视频 下面给大家详细介绍一下 一 ...

  9. python写小说阅读器_手把手教你用Python制作简易小说阅读器

    /前言/ 不知从什么时候开始.小说开始掀起了一股浪潮,它让我们平日里的生活不在枯燥乏味,很多我们做不到的事情在小说里都能轻易实现. 今天我们要做的就是一个小说阅读器了,一个可以将你的文章中的字每隔多少 ...

最新文章

  1. Java-----applet小程序简介
  2. electron 安装import_Electron: 从零开始写一个记事本app
  3. Index Condition Pushdown Optimization
  4. undefind_undefined什么意思
  5. Android开源音乐播放器之播放器基本功能
  6. 2.2.3 C语言中的整数类型及类型转换(为什么强制类型转换值发生改变?带你从机器码的角度分析)
  7. OS / 总线锁和缓存一致性
  8. 初试牛刀---css中的小细节
  9. 什么是Zero-Copy?
  10. BMP格式图像的显示
  11. OpenTSDB 开发指南之 Grafana 展示OpenTSDB监控数据
  12. 图形裁剪算法matlab,MATLAB裁剪图片
  13. Xcode 指定测试设备打包IPA
  14. mysql 列 随机数_MySQL的指定范围随机数函数rand()的使用技巧
  15. html5片转为base64,base64和图片的互转(HTML5的File实现)
  16. 【POJ3415】 Common Substrings (SA+单调栈)
  17. oracle12c备份和恢复,oracle12C使用RMAN备份和恢复
  18. apache VSF 操作类
  19. NR 5G: Relaxed measurement
  20. 计算机组装与维护标准教程(2010-2012版)电子教材,计算机组装与维护标准教程(2015—2018版)...

热门文章

  1. java 随机颜色_仅在Java中生成随机的“深色”颜色 - java
  2. 孙明佳谈初期创业客户流失如何找回?
  3. svmtrain和svmclassify参数细说_核函数选择
  4. 开窗函数over(),rank()的用法及例子
  5. jQuery方法源码解析--jQuery($)方法(一)
  6. GAMES101-现代计算机图形学-闫令琪 作业2 反走样 antialiasing 抗锯齿
  7. 网络斗士Mozilla CEO:火狐本身不是摇钱树
  8. Linux vim保存只读文件
  9. 从3万条豆瓣短评看《雷神3》
  10. 批量梯度下降 | 随机梯度下降 | 小批度梯度下降