浅谈python图片处理Image和skimage的区别


Posted in Python onAugust 04, 2019

做cnn的难免要做大量的图片处理。由于接手项目时间不长,且是新项目,前段时间写代码都很赶,现在稍微总结(恩,总结是个好习惯)。

1,首先安装python-Image和python-skimage、python-matplotlib。

  简单代码:

import Image as img
import os
from matplotlib import pyplot as plot
from skimage import io,transform
import argparse
 
def show_data(data):
  fig = plot.figure()
  ax = fig.add_subplot(121)
  ax.imshow(data, cmap='gray')
  ax2 = fig.add_subplot(122)
  ax2.imshow(data)
  plot.show()
if __name__ == "__main__":
  parse = argparse.ArgumentParser()
  parse.add_argument('--picpath', help = "the picture' path")
  args = parse.parse_args()
  img_file1 = img.open(args.picpath)#Image读图片
  one_pixel = img_file1.getpixel((0,0))[0]
  print "picture's first pixe: ",one_pixel 
  print "the picture's size: ", img_file1.size#Image读出来的size是高宽
  show_data(img_file1)
  img_file2 = io.imread(args.picpath)#skimage读图片
  show_data(img_file2)
  print "picture's first pixel: ", img_file2[0][0][0]
  print "the picture's shape: ", img_file2.shape#skimage读出来的shape是高,宽, 通道

调用及输出:

浅谈python图片处理Image和skimage的区别

其实Image读出来的是PIL什么的类型,而skimage.io读出来的数据是numpy格式的。如果想直接看Image和skimage读出来图片的区别,可以直接输出它们读图片以后的返回结果。

2.Image和skimage读图片:

img_file1 = img.open(args.picpath)
img_file2 = io.imread(args.picpath)

3.读图片后数据的大小:

print "the picture's size: ", img_file1.size
print "the picture's shape: ", img_file2.shape

4.得到像素:

one_pixel = img_file1.getpixel((0,0))[0]
img_file2[0][0][0]

分析:

1.从3的输出可以看出img读图片的大小是图片的(height,width);

skimage的是(height,width, channel)[这也是为什么caffe在单独测试时要要在代码中设置:transformer.set_transpose('data',(2,0,1)),因为caffe可以处理的图片的数据格式是(channel,height,width),所以要转换数据啊]

2.img读出来的图片获得某点像素用getpixel((h,w))可以直接返回这个点三个通道的像素值

skimage读出来的图片可以直接img_file2[0][0][0]获得,但是一定记住它的格式,并不是你想的(channel,height,width)

关于matplotlib简单的画图请关注下篇~

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

Python 相关文章推荐
Python中实现从目录中过滤出指定文件类型的文件
Feb 02 Python
Python标准库defaultdict模块使用示例
Apr 28 Python
简介Python设计模式中的代理模式与模板方法模式编程
Feb 02 Python
利用Python实现Windows下的鼠标键盘模拟的实例代码
Jul 13 Python
Django配置celery(非djcelery)执行异步任务和定时任务
Jul 16 Python
对python实现合并两个排序链表的方法详解
Jan 23 Python
使用Python+wxpy 找出微信里把你删除的好友实例
Feb 21 Python
Python实现微信自动好友验证,自动回复,发送群聊链接方法
Feb 21 Python
基于python 微信小程序之获取已存在模板消息列表
Aug 05 Python
Python3实现英文字母转换哥特式字体实例代码
Sep 01 Python
编译 pycaffe时报错:fatal error: numpy/arrayobject.h没有那个文件或目录
Nov 29 Python
tensorflow2.0教程之Keras快速入门
Feb 20 Python
Python下opencv图像阈值处理的使用笔记
Aug 04 #Python
python opencv 简单阈值算法的实现
Aug 04 #Python
Python pandas用法最全整理
Aug 04 #Python
python匿名函数用法实例分析
Aug 03 #Python
pycharm编写spark程序,导入pyspark包的3中实现方法
Aug 02 #Python
Python适配器模式代码实现解析
Aug 02 #Python
Python3网络爬虫开发实战之极验滑动验证码的识别
Aug 02 #Python
You might like
php通过ajax实现双击table修改内容
2014/04/28 PHP
一个简洁实用的PHP缓存类完整实例
2014/07/26 PHP
php生成shtml类用法实例
2014/12/09 PHP
Yii基于数组和对象的Model查询技巧实例详解
2015/12/28 PHP
利用 fsockopen() 函数开放端口扫描器的实例
2017/08/19 PHP
javascript 获取图片颜色
2009/04/05 Javascript
为jQuery.Treeview添加右键菜单的实现代码
2010/10/22 Javascript
奉献给JavaScript初学者的编写开发的七个细节
2011/01/11 Javascript
javascript 判断中文字符长度的函数代码
2012/08/27 Javascript
使用jquery.upload.js实现异步上传示例代码
2014/07/29 Javascript
jQuery遍历对象、数组、集合实例
2014/11/08 Javascript
jQuery实现延迟跳转的方法
2015/06/05 Javascript
JavaScript中的acos()方法使用详解
2015/06/14 Javascript
jQuery查找dom的几种方法效率详解
2017/05/17 jQuery
vue组件watch属性实例讲解
2017/11/07 Javascript
JavaScript常用数学函数用法示例
2018/05/14 Javascript
Vue父子组件双向绑定传值的实现方法
2018/07/31 Javascript
新手入门带你学习JavaScript引擎运行原理
2019/06/24 Javascript
部署vue+Springboot前后端分离项目的步骤实现
2020/05/31 Javascript
用Python写飞机大战游戏之pygame入门(4):获取鼠标的位置及运动
2015/11/05 Python
python实现mysql的单引号字符串过滤方法
2015/11/14 Python
详解Python编程中time模块的使用
2015/11/20 Python
Python实现堆排序的方法详解
2016/05/03 Python
浅谈Django REST Framework限速
2017/12/12 Python
Python(Django)项目与Apache的管理交互的方法
2018/05/16 Python
Python3.5装饰器典型案例分析
2019/04/30 Python
python实现根据给定坐标点生成多边形mask的例子
2020/02/18 Python
基于python纯函数实现井字棋游戏
2020/05/27 Python
Python爬虫分析微博热搜关键词的实现代码
2021/02/22 Python
美国演唱会订票网站:Ticketmaster美国
2017/10/05 全球购物
世界上最大的艺术和工艺用品商店:MisterArt.com
2018/07/13 全球购物
俄罗斯香水在线商店:AromaCode
2019/12/04 全球购物
LUISAVIAROMA德国官网:时尚奢侈品牌购物网站
2020/11/12 全球购物
初三化学教学反思
2014/01/23 职场文书
国际商务专业求职信
2014/07/15 职场文书
党的群众路线教育实践活动学习笔记范文
2014/11/06 职场文书