python图像处理之skimage
来源:互联网 发布:远程登陆windows账号 编辑:程序博客网 时间:2024/05/03 20:13
转自:python数字图像处理(2):图像的读取、显示与保存
skimage提供了io模块,顾名思义,这个模块是用来图片输入输出操作的。为了方便练习,也提供一个data模块,里面嵌套了一些示例图片,我们可以直接使用。
引入skimage模块可用:
from
skimage
import
io
一、从外部读取图片并显示
读取单张彩色rgb图片,使用skimage.io.imread(fname)函数,带一个参数,表示需要读取的文件路径。显示图片使用skimage.io.imshow(arr)函数,带一个参数,表示需要显示的arr数组(读取的图片以numpy数组形式计算)。
from skimage import ioimg=io.imread('d:/dog.jpg')io.imshow(img)
读取单张灰度图片,使用skimage.io.imread(fname,as_grey=True)函数,第一个参数为图片路径,第二个参数为as_grey, bool型值,默认为False
from skimage import ioimg=io.imread('d:/dog.jpg',as_grey=True)io.imshow(img)
二、程序自带图片
skimage程序自带了一些示例图片,如果我们不想从外部读取图片,就可以直接使用这些示例图片:
astronaut
宇航员图片coffee
一杯咖啡图片lena
lena美女图片camera
拿相机的人图片coins
硬币图片moon
月亮图片checkerboard
棋盘图片horse
马图片page
书页图片chelsea
小猫图片hubble_deep_field
星空图片text
文字图片clock
时钟图片immunohistochemistry
结肠图片
显示这些图片可用如下代码,不带任何参数
from skimage import io,dataimg=data.lena()io.imshow(img)
图片名对应的就是函数名,如camera图片对应的函数名为camera(). 这些示例图片存放在skimage的安装目录下面,路径名称为data_dir,我们可以将这个路径打印出来看看:
from skimage import data_dirprint(data_dir)
显示为: D:\Anaconda3\lib\site-packages\skimage\data
也就是说,下面两行读取图片的代码效果是一样的:
from skimage import data_dir,data,ioimg1=data.lena() #读取lean图片img2=io.imread(data_dir+'/lena.png') #读取lena图片
三、保存图片
使用io模块的imsave(fname,arr)函数来实现。第一个参数表示保存的路径和名称,第二个参数表示需要保存的数组变量。
from skimage import io,dataimg=data.chelsea()io.imshow(img)io.imsave('d:/cat.jpg',img)
保存图片的同时也起到了转换格式的作用。如果读取时图片格式为jpg图片,保存为png格式,则将图片从jpg图片转换为png图片并保存。
四、图片信息
如果我们想知道一些图片信息,可以在spyder编辑器的右上角显示:
也可以直接以程序方式打印输出
from skimage import io,dataimg=data.chelsea()io.imshow(img)print(type(img)) #显示类型print(img.shape) #显示尺寸print(img.shape[0]) #图片宽度print(img.shape[1]) #图片高度print(img.shape[2]) #图片通道数print(img.size) #显示总像素个数print(img.max()) #最大像素值print(img.min()) #最小像素值print(img.mean()) #像素平均值
结果输出:
<class 'numpy.ndarray'>
(300, 451, 3)
300
451
3
405900
231
0
115.305141661
- python图像处理之skimage
- 用 python skimage做图像处理
- 【python 图像处理】skimage的子模块介绍
- python的Image和skimage处理图片
- python-skimage
- OpenCV、Skimage、PIL图像处理的细节差异
- skimage-图像基本操作
- python图片处理Image和skimage的不同
- python的PLT中的image和skimage处理图片
- python图像处理之pyocr
- 【Python】使用skimage完成二值图像连通区域标记及属性提取
- Python图像处理之PIL模块
- Python之简单的图像处理
- Python图像处理之边缘检测
- Python图像处理之伪彩色增强
- 1 python 图像处理工具之 Pillow
- 1-python图像处理之PIL,pylab
- 2-python图像处理之Matplotlib
- android状态栏一体化(改变状态栏的背景颜色)
- 栈(数组实现)
- idea-jsp out.println方法未找到(cannot be resolve)解决办法
- paasone的创新(2):separated langsys/demo ecosystem及demo driven debug
- 懒加载plist文件——格式(数组,字典,数组,字典)
- python图像处理之skimage
- java(5)面向对象(第一天)
- 用JSON-server模拟REST API
- ubuntu下python3.6安装Twisted失败解决
- 11月的反省
- linux初识
- Dagger2 简单使用
- Angular 4入门教程系列:18:编译优化与nginx压缩
- 仿微信表情输入键盘(支持 Gif 表情图文混排 )