SciPy中两个模块:io 和misc
Posted 风声风语
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SciPy中两个模块:io 和misc相关的知识,希望对你有一定的参考价值。
- 读写.mat文件
如果你有一些数据,或者在网上下载到一些有趣的数据集,这些数据以Matlab的.mat 文件格式存储,那么可以使用scipy.io 模块进行读取。
data = scipy.io.loadmat(‘test.mat‘)
- 1
- 2
上面代码中,data 对象包含一个字典,字典中的键对应于保存在原始.mat 文件中的变量名。由于这些变量是数组格式的,因此可以很方便地保存到.mat 文件中。你仅需创建一个字典(其中要包含你想要保存的所有变量),然后使用savemat() 函数:
data = {}
data[‘x‘] = x
scipy.io.savemat(‘test.mat‘,data)
- 1
- 2
- 3
- 4
因为上面的脚本保存的是数组x,所以当读入到Matlab 中时,变量的名字仍为x。关于scipy.io 模块的更多内容, 请参见在线文档http://docs.scipy.org/doc/scipy/ reference/io.html。
- 以图像形式保存数组
因为我们需要对图像进行操作,并且需要使用数组对象来做运算,所以将数组直接保存为图像文件1 非常有用。本书中的很多图像都是这样的创建的。
imsave() 函数可以从scipy.misc 模块中载入。要将数组im 保存到文件中,可以使用下面的命令:
from scipy.misc import imsave
imsave(‘test.jpg‘,im)
- 1
- 2
- 3
scipy.misc 模块同样包含了著名的Lena 测试图像:
lena = scipy.misc.lena()
- 1
- 2
该脚本返回一个512×512 的灰度图像数组。
以上是关于SciPy中两个模块:io 和misc的主要内容,如果未能解决你的问题,请参考以下文章
ModuleNotFoundError:没有名为“scipy.misc.pilutil”的模块