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 相关文章推荐
Flask框架的学习指南之开发环境搭建
Nov 20 Python
分析Python中解析构建数据知识
Jan 20 Python
python linecache 处理固定格式文本数据的方法
Jan 08 Python
Python实现FTP弱口令扫描器的方法示例
Jan 31 Python
Python搭建代理IP池实现获取IP的方法
Oct 27 Python
Python中低维数组填充高维数组的实现
Dec 02 Python
TensorFlow基本的常量、变量和运算操作详解
Feb 03 Python
tensorflow自定义激活函数实例
Feb 04 Python
python+OpenCV实现图像拼接
Mar 05 Python
pip安装提示Twisted错误问题(Python3.6.4安装Twisted错误)
May 09 Python
python中pathlib模块的基本用法与总结
Aug 17 Python
python lambda 表达式形式分析
Apr 03 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
使用eAccelerator加密PHP程序
2008/10/03 PHP
php小技巧之过滤ascii控制字符
2014/05/14 PHP
php实现的通用图片处理类
2015/03/24 PHP
自定义min版smarty模板引擎MinSmarty.class.php文件及用法
2016/05/20 PHP
php根据用户名和手机号查询是否存在手机号码
2017/02/16 PHP
Laravel接收前端ajax传来的数据的实例代码
2017/07/20 PHP
JS根据年月获得当月天数的实现代码
2014/07/03 Javascript
JavaScript按值删除数组元素的方法
2015/04/24 Javascript
javascript HTML+CSS实现经典橙色导航菜单
2016/02/16 Javascript
jquery ajax双击div可直接修改div中的内容
2016/03/04 Javascript
JS学习之表格的排序简单实例
2016/05/16 Javascript
原生JS下拉加载插件分享
2016/12/26 Javascript
angularjs 实现带查找筛选功能的select下拉框实例
2017/01/11 Javascript
JS验证不重复验证码
2017/02/10 Javascript
最基础的vue.js双向绑定操作
2017/08/23 Javascript
Angularjs 手写日历的实现代码(不用插件)
2017/10/18 Javascript
详解webpack3编译兼容IE8的正确姿势
2017/12/21 Javascript
vue-cli整合vuex的时候,修改actions和mutations,实现热部署的方法
2018/09/19 Javascript
微信小程序实现多选删除列表数据功能示例
2019/01/15 Javascript
node实现socket链接与GPRS进行通信的方法
2019/05/20 Javascript
layui--select使用以及下拉框实现键盘选择的例子
2019/09/24 Javascript
Nest.js 授权验证的方法示例
2021/02/22 Javascript
[04:38]完美世界携手游戏风云打造 卡尔工作室饰品系统篇
2013/04/25 DOTA
[03:14]DOTA2斧王 英雄基础教程
2013/11/26 DOTA
python正则表达式match和search用法实例
2015/03/26 Python
使用python实现BLAST
2018/02/12 Python
基于Python pip用国内镜像下载的方法
2018/06/12 Python
python把数组中的数字每行打印3个并保存在文档中的方法
2018/07/17 Python
Python实现常见的回文字符串算法
2018/11/14 Python
Python爬取知乎图片代码实现解析
2019/09/17 Python
Python远程开发环境部署与调试过程图解
2019/12/09 Python
建筑公司员工自我鉴定
2014/04/08 职场文书
村党支部书记个人对照材料汇报
2014/10/26 职场文书
2014年禁毒工作总结
2014/11/24 职场文书
AJAX实现指定部分页面刷新效果
2021/10/16 Javascript
Dubbo+zookeeper搭配分布式服务的过程详解
2022/04/03 Java/Android