对python PLT中的image和skimage处理图片方法详解


Posted in Python onJanuary 10, 2019

用PLT比较轻量级,用opencv是比较重量级

import numpy as np
from PIL import Image

if __name__ == '__main__':
 image_file = '/Users/mac/Documents/学习文档/机器学习/5.Package/son.png'
 height = 100 #假定写入图片的高度是100

 img = Image.open(image_file)
 img_width, img_height = img.size #获取img的尺寸
 width = 2 * height * img_width // img_height # 假定字符的高度是宽度的2倍,写入图片的高度是宽度的2倍
 img = img.resize((width, height), Image.ANTIALIAS) #改变尺寸,将新定的宽度,高度重定img的size赋给img
 pixels = np.array(img.convert('L')) #转成灰度值喂给array,pixels是个存灰度值的数组
 print(pixels.shape)
 print(pixels)
 chars = "MNHQ$OC?7>!:-;. " #256色的不同通道浓淡,M代表0-15,N代表16-31
 N = len(chars)
 step = 256 // N
 print(N)
 print step
 result = ''
 for i in range(height):
  for j in range(width):
   result += chars[pixels[i][j] // step] #像素点的值除以step是可以找到step这个像素点的位置,char做素引,是指对应的该
   #点的值填充成上面更浓的色,故就显示出来了
  result += '\n'
 with open('text.txt', mode='w') as f:
  f.write(result)

用PIT详解步骤:

img = Image.open(path)#打开图片
img.getpixel((height, width))#得到(height, width)处的像素值(可能是一个list,3通道)
img.convert("L")#转灰度图

对python PLT中的image和skimage处理图片方法详解

size = (64, 64) 
img.resize(size, Image.ANTIALIAS)#改变尺寸

对python PLT中的image和skimage处理图片方法详解

box = (10, 10, 100, 100) 
img.crop(box).show#在img上的box处截图,show显示图片

对python PLT中的image和skimage处理图片方法详解

#shape[0]-1梯度下降的办法取x,y值,再将img_data[x][y][0]x,y处0通道赋255色值
img_data = np.array(img) 
 for i in xrange(300): 
 x = random.randint(0, img_data.shape[0]-1) 
 y = random.randint(0, img_data.shape[1]-1) #shape[0]是表几行,shape[1]表示几列,y在列向量上故用shape[1]
 img_data[x][y][0] = 255 
 img = Image.fromarray(img_data)#加300个噪音,转来转去麻烦可以直接用skimage度图片就不用转了 
img.show()
img.rotate(90)#图片旋转90
img.transpose(Image.FLIP_LEFT_RIGHT)#图片镜像

对python PLT中的image和skimage处理图片方法详解

二、skimage打开的图片img_data:

from skimage import io,transform 
img_data = io.imread(img_path) 
transform.resize(img_data, (64, 64))#改变尺寸

对python PLT中的image和skimage处理图片方法详解

transform.rescale(img_data, 0.5)#缩小/放大图片

以上这篇对python PLT中的image和skimage处理图片方法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python遍历文件夹并删除特定格式文件的示例
Mar 05 Python
python中去空格函数的用法
Aug 21 Python
Python 操作文件的基本方法总结
Aug 10 Python
python删除本地夹里重复文件的方法
Nov 19 Python
pip install urllib2不能安装的解决方法
Jun 12 Python
python实现连连看辅助之图像识别延伸
Jul 17 Python
django 微信网页授权认证api的步骤详解
Jul 30 Python
使用python实现微信小程序自动签到功能
Apr 27 Python
Python内置函数property()如何使用
Sep 01 Python
python计算auc的方法
Sep 09 Python
python实现发送QQ邮件(可加附件)
Dec 23 Python
python index() 与 rindex() 方法的使用示例详解
Dec 24 Python
python pandas库的安装和创建
Jan 10 #Python
Python绘制并保存指定大小图像的方法
Jan 10 #Python
解决Python plt.savefig 保存图片时一片空白的问题
Jan 10 #Python
Python使用pydub库对mp3与wav格式进行互转的方法
Jan 10 #Python
python利用ffmpeg进行录制屏幕的方法
Jan 10 #Python
Python3.6.2调用ffmpeg的方法
Jan 10 #Python
Django组件之cookie与session的使用方法
Jan 10 #Python
You might like
php-accelerator网站加速PHP缓冲的方法
2008/07/30 PHP
ThinkPHP处理Ajax返回的方法
2014/11/22 PHP
PHP快速排序quicksort实例详解
2016/09/28 PHP
php单元测试phpunit入门实例教程
2017/11/17 PHP
PHP5.6.8连接SQL Server 2008 R2数据库常用技巧分析总结
2019/05/06 PHP
js跨浏览器实现将字符串转化为xml对象的方法
2013/09/25 Javascript
如何在父窗口中得知window.open()出的子窗口关闭事件
2013/10/15 Javascript
jQery使网页在显示器上居中显示适用于任何分辨率
2014/06/09 Javascript
一个js过滤空格的小函数
2014/10/10 Javascript
jquery实现两边飘浮可关闭的对联广告
2015/11/27 Javascript
基于RequireJS和JQuery的模块化编程日常问题解析
2016/04/14 Javascript
layui选项卡效果实现代码
2017/05/19 Javascript
vue基于Element构建自定义树的示例代码
2017/09/19 Javascript
vue实现图片加载完成前的loading组件方法
2018/02/05 Javascript
JavaScript使用math.js进行精确计算操作示例
2018/06/19 Javascript
React组件重构之嵌套+继承及高阶组件详解
2018/07/19 Javascript
angular2组件中定时刷新并清除定时器的实例讲解
2018/08/31 Javascript
vue接入腾讯防水墙代码
2019/05/07 Javascript
在Vue中用canvas实现二维码和图片合成海报的方法
2019/06/10 Javascript
vuex 中插件的编写案例解析
2019/06/10 Javascript
解决微信小程序中的滚动穿透问题
2019/09/16 Javascript
微信小程序用户拒绝授权的处理方法详解
2019/09/20 Javascript
[56:46]Liquid vs IG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
跟老齐学Python之传说中的函数编写条规
2014/10/11 Python
深入理解Python分布式爬虫原理
2017/11/23 Python
教你使用python实现微信每天给女朋友说晚安
2018/03/23 Python
python绘制直线的方法
2018/06/30 Python
python实现AES加密解密
2019/03/28 Python
python动态文本进度条的实例代码
2020/01/22 Python
浅谈Python中os模块及shutil模块的常规操作
2020/04/03 Python
Tory Burch德国官网:美国时尚生活品牌
2018/01/03 全球购物
警察群众路线对照检查材料思想汇报
2014/10/01 职场文书
2014年乡镇工会工作总结
2014/12/02 职场文书
2014年人事部工作总结
2014/12/03 职场文书
大学毕业论文致谢词
2015/05/14 职场文书
原型和原型链 prototype和proto的区别详情
2021/11/02 Javascript