skimage库提供了io模块,这个模块是用来图片输入输出操作的。skimage中,也提供一个data模块,里面嵌套了一些示例图片,我们可以直接使用。
实验一:从外部读取图片并显示
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Fri May 17 09:51:06 2019
@author: zqq
"""
# 读取单张彩色RGB图片并显示
from skimage import io
img = io.imread('dog.png') # imread中加图片的路径
io.imshow(img)
运行结果:
控制台输出:
# 读取单张灰度图片并显示
from skimage import io
#img = io.imread('dog.png')
img = io.imread('dog.png',as_grey=True) # 这里加一个参数as_grey=True,RGB图显示为灰度图
io.imshow(img)
运行结果:
实验二:保存图片
io模块中提供了imsave(path,arr)函数用来保存图片
path: 保存的路径和名称
arr: 保存的数组变量
# 读取单张图片并显示
from skimage import io
img = io.imread('dog.png')
io.imshow(img)
io.imsave('/home/zqq/MyProject/DigitalPicture/day1/dog1.jpg',img)
运行结果:
可以看到已保存成功。
实验三:skimage库中自带的图片
我们进行小测试的时候,可以不用外部图片的导入,直接用skimage中的图片。
from skimage import io, data
img = data.camera() # data中提供的名叫camera的图片
io.imshow(img)
运行结果如下:
这张照片本身就是灰度图。
我们可以导入skimage中的data后,查看其中有哪些照片:
我们还可以找到skimage.data自带图片的路径:
from skimage import io, data
img = data.camera()
io.imshow(img)
from skimage import data_dir
print(data_dir)
结果如下:
实验四:查看图片信息
## look the picture information
from skimage import io,data
img = data.chelsea()
io.imshow(img)
print(type(img)) # type
print(img.shape) # print(img.shape) #显示尺寸
print(img.shape[0]) # width
print(img.shape[1]) # high
print(img.shape[2]) # 图片通道数
print(img.size) # #显示总像素个数
print(img.max()) #最大像素值
print(img.min()) #最小像素值
print(img.mean()) #像素平均值
run result:
参考和引用:
https://blog.csdn.net/denny2015/article/details/50522914
仅用来个人学习和分享,如若侵权,留言立删。
尊重他人知识产权,不做拿来主义者!
喜欢的可以关注我哦QAQ,
你的关注就是我write博文的动力。
good luck!