python Opencv将图片转为字符画


Posted in Python onFebruary 19, 2021

做了个Python的小练习,网上有人是利用PIL中的Image来实现的,觉得Opencv库挺方便的,于是利用Opencv库来实现了一下,代码如下:

# -*- coding: utf-8 -*- 
# feimengjuan 
# 实现将图片转为字符画 
 
import cv2 
 
ascii_char = list("$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<>i!lI;:,\"^`'. ") 
 
# 将灰度值转为字符 
def get_char(gray_number): 
 length = len(ascii_char) 
 unit = (256.0 + 1)/length 
 return ascii_char[int(gray_number/unit)] 
 
if __name__ == '__main__': 
 image1 = cv2.imread('8.jpg') 
 image = cv2.resize(image1,(85,110)) 
 gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY) 
 txt = "" 
 for i in range(image.shape[0]): 
  for j in range(image.shape[1]): 
   # 对打开的图片的每个坐标的灰度值做判断, 
   # 用get_char()获取该颜色灰度值对应的字符,然后拼接成字符串txt 
   txt += get_char(gray[i,j]) 
  txt += '\n' 
 print txt 
 #字符画输出到文件中 
 f = open('output.txt','w') 
 f.write(txt)

结果是:

原图片:

python Opencv将图片转为字符画

结果:

python Opencv将图片转为字符画

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

Python 相关文章推荐
浅谈Python由__dict__和dir()引发的一些思考
Oct 30 Python
深入理解Python中的super()方法
Nov 20 Python
Python callable()函数用法实例分析
Mar 17 Python
Python基于socket模块实现UDP通信功能示例
Apr 10 Python
pygame游戏之旅 添加游戏界面按键图形
Nov 20 Python
Python实现的逻辑回归算法示例【附测试csv文件下载】
Dec 28 Python
Python模拟百度自动输入搜索功能的实例
Feb 14 Python
使用Python检测文章抄袭及去重算法原理解析
Jun 14 Python
django框架使用orm实现批量更新数据的方法
Jun 21 Python
使用Python的networkx绘制精美网络图教程
Nov 21 Python
pytorch加载语音类自定义数据集的方法教程
Nov 10 Python
Python 中的 copy()和deepcopy()
Nov 07 Python
python实现批量按比例缩放图片效果
Mar 30 #Python
python放大图片和画方格实现算法
Mar 30 #Python
python实现数独游戏 java简单实现数独游戏
Mar 30 #Python
简单实现python数独游戏
Mar 30 #Python
Python使用MD5加密算法对字符串进行加密操作示例
Mar 30 #Python
windows环境下tensorflow安装过程详解
Mar 30 #Python
Python切片工具pillow用法示例
Mar 30 #Python
You might like
用PHP实现将GB编码转换为UTF8
2006/11/25 PHP
PHP创建/删除/复制文件夹、文件
2016/05/03 PHP
php-fpm添加service服务的例子
2018/04/27 PHP
Laravel框架中队列和工作(Queues、Jobs)操作实例详解
2020/04/06 PHP
asp.net中System.Timers.Timer的使用方法
2013/03/20 Javascript
javascript获得网页窗口实际大小的示例代码
2013/09/21 Javascript
js图片实时加载提供网页打开速度
2014/09/11 Javascript
为JS扩展Array.prototype.indexOf引发的问题及解决办法
2015/01/21 Javascript
javaScript实现可缩放的显示区效果代码
2015/10/26 Javascript
JavaScript编写简单的计算器
2015/11/25 Javascript
Javascript技术难点之apply,call与this之间的衔接
2015/12/04 Javascript
JavaScript表单验证实例之验证表单项是否为空
2016/01/10 Javascript
JavaScript使ifram跨域相互访问及与PHP通信的实例
2016/03/03 Javascript
MVC+jQuery.Ajax异步实现增删改查和分页
2020/12/22 Javascript
js中判断变量类型函数typeof的用法总结
2016/08/09 Javascript
清除js缓存的多种方法总结
2016/12/09 Javascript
详谈$.data()的用法和作用
2017/02/13 Javascript
JS实现课堂随机点名和顺序点名
2017/03/09 Javascript
JS常见创建类的方法小结【工厂方式,构造器方式,原型方式,联合方式等】
2017/04/01 Javascript
nodejs个人博客开发第一步 准备工作
2017/04/12 NodeJs
JS获取url参数,JS发送json格式的POST请求方法
2018/03/29 Javascript
vue基于viewer实现的图片查看器功能
2019/04/12 Javascript
jquery ui 实现 tab标签功能示例【测试可用】
2019/07/25 jQuery
[01:33]真香警告!DOTA2勇士令状不朽珍藏Ⅱ饰品欣赏
2018/06/26 DOTA
python判断一个集合是否包含了另外一个集合中所有项的方法
2015/06/30 Python
python斐波那契数列的计算方法
2018/09/27 Python
pygame游戏之旅 计算游戏中躲过的障碍数量
2018/11/20 Python
阿联酋网上花店:Ferns N Petals
2018/02/14 全球购物
车库门开启器、遥控器和零件:Chamberlain
2019/04/09 全球购物
Monica Vinader官网:英国轻奢珠宝品牌
2020/02/05 全球购物
希腊品牌鞋类销售网站:epapoutsia.gr
2020/03/18 全球购物
英文版银行求职信
2013/10/09 职场文书
技术人员面试提纲
2013/11/28 职场文书
门卫班长岗位职责
2013/12/15 职场文书
《桃花心木》教学反思
2014/02/17 职场文书
使用feign服务调用添加Header参数
2021/06/23 Java/Android