python数字图像处理skimage读取显示与保存图片

作者:denny402 时间:2023-07-28 17:33:00 

引言

skimage提供了io模块,顾名思义,这个模块是用来图片输入输出操作的。为了方便练习,也提供一个data模块,里面嵌套了一些示例图片,我们可以直接使用。

引入skimage模块可用:

from skimage import io

一、从外部读取图片并显示

读取单张彩色rgb图片,使用skimage.io.imread(fname)函数,带一个参数,表示需要读取的文件路径。显示图片使用skimage.io.imshow(arr)函数,带一个参数,表示需要显示的arr数组(读取的图片以numpy数组形式计算)。

from skimage import io
img=io.imread('d:/dog.jpg')
io.imshow(img)

python数字图像处理skimage读取显示与保存图片

读取单张灰度图片,使用skimage.io.imread(fname,as_grey=True)函数,第一个参数为图片路径,第二个参数为as_grey, bool型值,默认为False

from skimage import io
img=io.imread('d:/dog.jpg',as_grey=True)
io.imshow(img)

python数字图像处理skimage读取显示与保存图片

二、程序自带图片

skimage程序自带了一些示例图片,如果我们不想从外部读取图片,就可以直接使用这些示例图片:

astronaut

宇航员图片

coffee

一杯咖啡图片

lena

lena美女图片

camera

拿相机的人图片

coins

硬币图片

moon

月亮图片

checkerboard

棋盘图片

horse

马图片

page

书页图片

chelsea

小猫图片

hubble_deep_field

星空图片

text

文字图片

clock

时钟图片

immunohistochemistry

结肠图片

 

 

显示这些图片可用如下代码,不带任何参数

from skimage import io,data
img=data.lena()
io.imshow(img)

python数字图像处理skimage读取显示与保存图片

图片名对应的就是函数名,如camera图片对应的函数名为camera(). 这些示例图片存放在skimage的安装目录下面,路径名称为data_dir,我们可以将这个路径打印出来看看:

from skimage import data_dir
print(data_dir)

显示为:D:\Anaconda3\lib\site-packages\skimage\data

也就是说,下面两行读取图片的代码效果是一样的:

from skimage import data_dir,data,io
img1=data.lena()  #读取lean图片
img2=io.imread(data_dir+'/lena.png')  #读取lena图片

三、保存图片

使用io模块的imsave(fname,arr)函数来实现。第一个参数表示保存的路径和名称,第二个参数表示需要保存的数组变量。

from skimage import io,data
img=data.chelsea()
io.imshow(img)
io.imsave('d:/cat.jpg',img)

保存图片的同时也起到了转换格式的作用。如果读取时图片格式为jpg图片,保存为png格式,则将图片从jpg图片转换为png图片并保存。

四、图片信息

如果我们想知道一些图片信息,可以在spyder编辑器的右上角显示:

python数字图像处理skimage读取显示与保存图片

也可以直接以程序方式打印输出

from skimage import io,data
img=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读取显示与保存图片

来源:https://www.cnblogs.com/denny402/p/5121897.html

标签:python,skimage,数字图像,读取显示,保存
0
投稿

猜你喜欢

  • Python爬虫代理池搭建的方法步骤

    2022-08-12 15:31:03
  • Python为人脸照片添加口罩实战

    2021-11-12 23:39:33
  • Python中的self用法详解

    2023-08-22 15:34:19
  • python3 使用OpenCV计算滑块拼图验证码缺口位置(场景示例)

    2023-02-27 07:07:18
  • vue之webpack -v报错解决方案总结

    2024-05-09 09:51:23
  • PHP PDOStatement::fetch讲解

    2023-06-04 20:06:02
  • wxPython实现分隔窗口

    2022-11-29 20:45:05
  • 教你Pycharm安装使用requests第三方库的详细教程

    2023-02-24 16:40:01
  • python发送邮件实例分享

    2021-07-17 23:14:23
  • Django中Forms的使用代码解析

    2022-03-20 08:06:56
  • 6个卓越Web设计细节

    2010-03-29 12:56:00
  • vue项目中form data形式传参方式

    2024-04-30 10:25:48
  • Go语言中的switch用法实例分析

    2024-04-23 09:39:06
  • ASP格式化日期的函数(输出13种样式)

    2011-07-12 20:22:00
  • python+ffmpeg视频并发直播压力测试

    2023-09-02 10:30:33
  • 未将对象引用设置到对象的实例 (System.NullReferenceException)

    2023-06-27 10:46:53
  • Go语言切片前或中间插入项与内置copy()函数详解

    2024-05-22 10:16:19
  • Python实现基于SVM的分类器的方法

    2023-11-18 18:20:02
  • 解决使用python print打印函数返回值多一个None的问题

    2021-08-22 07:52:09
  • 报错No module named numpy问题的解决办法

    2023-09-20 12:02:07
  • asp之家 网络编程 m.aspxhome.com