对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的Zato发送AMQP消息的教程
Apr 16 Python
使用Django的模版来配合字符串翻译工作
Jul 27 Python
Python时间模块datetime、time、calendar的使用方法
Jan 13 Python
python 实现tar文件压缩解压的实例详解
Aug 20 Python
在Python中执行系统命令的方法示例详解
Sep 14 Python
python简单图片操作:打开\显示\保存图像方法介绍
Nov 23 Python
python网络爬虫之如何伪装逃过反爬虫程序的方法
Nov 23 Python
对Python+opencv将图片生成视频的实例详解
Jan 08 Python
Python人工智能之路 之PyAudio 实现录音 自动化交互实现问答
Aug 13 Python
自适应线性神经网络Adaline的python实现详解
Sep 30 Python
python中Ansible模块的Playbook的具体使用
May 28 Python
Python基于staticmethod装饰器标示静态方法
Oct 17 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编码转换函数应用技巧
2016/10/22 PHP
Thinkphp5框架使用validate实现验证功能的方法
2019/08/27 PHP
jQuery实现类似淘宝购物车全选状态示例
2013/06/26 Javascript
javascript中数组的冒泡排序使用示例
2013/12/18 Javascript
jquery 删除字符串最后一个字符的方法解析
2014/02/11 Javascript
动态加载jquery库的方法
2014/02/12 Javascript
javascript实现的平方米、亩、公顷单位换算小程序
2014/08/11 Javascript
jQuery Ajax页面局部加载方法汇总
2016/06/02 Javascript
jquery对Json的各种遍历方法总结(必看篇)
2016/09/29 Javascript
微信小程序 网络API Websocket详解
2016/11/09 Javascript
angular $watch 一个变量的变化(实例讲解)
2017/08/02 Javascript
BootStrap Table实现server分页序号连续显示功能(当前页从上一页的结束序号开始)
2017/09/12 Javascript
JS实现倒计时图文效果
2018/11/17 Javascript
webpack自动打包和热更新的实现方法
2019/06/24 Javascript
ant-design-vue按需加载的坑的解决
2020/05/14 Javascript
Vue封装Axios请求和拦截器的步骤
2020/09/16 Javascript
Python转码问题的解决方法
2008/10/07 Python
使用Python的web.py框架实现类似Django的ORM查询的教程
2015/05/02 Python
Python编写一个闹钟功能
2017/07/11 Python
python实现mysql的读写分离及负载均衡
2018/02/04 Python
详谈python在windows中的文件路径问题
2018/04/28 Python
python tornado微信开发入门代码
2018/08/24 Python
对python For 循环的三种遍历方式解析
2019/02/01 Python
Python3安装pip工具的详细步骤
2019/10/14 Python
基于python 凸包问题的解决
2020/04/16 Python
萨克斯第五大道的折扣店:Saks Fifth Avenue OFF 5TH
2016/08/25 全球购物
Mamas & Papas沙特阿拉伯:英国最受欢迎的婴儿品牌
2017/11/20 全球购物
世界上最好的精品店:Shoptiques
2018/02/05 全球购物
大学生优秀的自我评价分享
2013/10/22 职场文书
暑期实习鉴定
2013/12/16 职场文书
请假条标准格式规范
2014/04/10 职场文书
财务会计专业自荐书
2014/06/30 职场文书
小学优秀教师材料
2014/12/15 职场文书
详解分布式系统中如何用python实现Paxos
2021/05/18 Python
Elasticsearch 基本查询和组合查询
2022/04/19 Python
Django框架中表单的用法
2022/06/10 Python