对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使用cookie库操保存cookie详解
Mar 03 Python
python在windows下实现ping操作并接收返回信息的方法
Mar 20 Python
使用Python脚本将文字转换为图片的实例分享
Aug 29 Python
深入浅析python定时杀进程
Jun 06 Python
Python列表和元组的定义与使用操作示例
Jul 26 Python
解决python3 网络请求路径包含中文的问题
May 10 Python
python制作图片缩略图
Apr 30 Python
python matplotlib库绘制散点图例题解析
Aug 10 Python
python中调试或排错的五种方法示例
Sep 12 Python
使用OpenCV-python3实现滑动条更新图像的Canny边缘检测功能
Dec 12 Python
Python使用struct处理二进制(pack和unpack用法)
Nov 12 Python
python 对象真假值的实例(哪些视为False)
Dec 11 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常用正则表达式的整理汇总
2013/06/08 PHP
php批量上传的实现代码
2013/06/09 PHP
PHP调用wsdl文件类型的接口代码分享
2014/11/19 PHP
PHP下载生成的csv文件及问题总结
2015/08/06 PHP
Yii2超好用的日期和时间组件(值得收藏)
2016/05/05 PHP
PHP截取发动短信内容的方法
2017/07/04 PHP
PHP设计模式之简单工厂和工厂模式实例分析
2019/03/25 PHP
PHP 模拟登陆功能实例详解
2019/09/10 PHP
仅用[]()+!等符号就足以实现几乎任意Javascript代码
2010/03/01 Javascript
JavaScript高级程序设计(第3版)学习笔记 概述
2012/10/11 Javascript
JS 实现倒计时数字时钟效果【附实例代码】
2016/03/30 Javascript
javascript比较语义化版本号的实现代码
2016/09/09 Javascript
angular实现form验证实例代码
2017/01/17 Javascript
Angularjs实现页面模板清除的方法
2018/07/20 Javascript
微信小程序scroll-view实现滚动穿透和阻止滚动的方法
2018/08/20 Javascript
基于vue2.0的活动倒计时组件countdown(附源码下载)
2018/10/09 Javascript
Webpack 4如何动态切割JS注入文件名详解
2019/07/09 Javascript
vue + axios get下载文件功能
2019/09/25 Javascript
javascript设计模式 ? 装饰模式原理与应用实例分析
2020/04/14 Javascript
使用pyecharts在jupyter notebook上绘图
2020/04/23 Python
numpy的文件存储.npy .npz 文件详解
2018/07/09 Python
利用Python如何批量更新服务器文件
2018/07/29 Python
python 5个实用的技巧
2020/09/27 Python
python爬虫实现爬取同一个网站的多页数据的实例讲解
2021/01/18 Python
美国摄影爱好者购物网站:Focus Camera
2016/10/21 全球购物
美国领先的奢侈手表在线零售商:WatchMaxx
2017/12/17 全球购物
意大利香水和化妆品购物网站:Parfimo.it
2019/10/06 全球购物
adidas瑞典官方网站:购买阿迪达斯鞋子和运动服
2019/12/11 全球购物
请说出几个常用的异常类
2013/01/08 面试题
简单英文演讲稿
2014/01/01 职场文书
任命书格式
2014/06/05 职场文书
民政局副局长民主生活会个人整改措施
2014/10/04 职场文书
2014年技术部工作总结
2014/12/12 职场文书
css3实现背景图片颜色修改的多种方式
2021/04/13 HTML / CSS
详解GaussDB for MySQL性能优化
2021/05/18 MySQL
python基础之类方法和静态方法
2021/10/24 Python