Python skimage模块有什么功能,怎么用
Admin 2022-08-06 群英技术资讯 1023 次浏览
在这篇文章中,我们来学习一下“Python skimage模块有什么功能,怎么用”的相关知识,下文有详细的讲解,易于大家学习和理解,有需要的朋友可以借鉴参考,下面就请大家跟着小编的思路一起来学习一下吧。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)

读取单张灰度图片,使用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)

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)

图片名对应的就是函数名,如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编辑器的右上角显示:

也可以直接以程序方式打印输出
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

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要为大家介绍了新一代爬虫利器Playwright,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
这篇文章主要为大家介绍了Python转换时间戳,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
python运行加速有什么方法?对于Python运行的慢问题这里就不多说,下面主要给大家来分享一下python运行加速的几种方式,有需要的朋友可以参考,接下来我们一起看看吧。
使用pyplot的errorbar()函数可以快速绘制误差棒图,errorbar()函数的语法格式如下所示:该函数常用参数的含义如下。x,y:表示数据点的位置。·xerr,yerr:表示数据的误差范围。
假如我写了一个函数 fdef f(): print('hello')之后我想知道这段函数执行所要的时间,这好办,我只要将代码改为如下就行import timedef f(): start = time.time()
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008