于scipy.misc.imread和scipy.misc.imresize被弃用后的解决方法

List item

关于scipy.misc.imread和scipy.misc.imresize被弃用后的解决方法

最近运行代码的时候出现了这个错误AttributeError: module 'scipy.misc' has no attribute 'imread',AttributeError: module 'scipy.misc' has no attribute 'imresize'
经过查阅资料发现是因为scipy的版本过高导致,由于scipy的1.3.0版本以后弃用了imread,imresize函数的用法

解决方法1–降scipy版本

降级到scipy==1.2.1,Pillow = 6.0.0就可以完美解决了,降级版本代码如下:

pip install scipy==1.2.1
pip install pillow==6.0.0

解决方法2–使用新的语法形式

毕竟scipy已经升级,降版本并不能从根本上解决问题,下边给出该函数的替代方案:

imread

原来的用法是:

imgdata = scipy.misc.imread(imgfile)

现在改为

import imageio
imgdata = imageio.imread(imgfile)

imresize

原来的用法是:

imgdata = scipy.misc.imresize(rgbdata, self.inres)

现在改为

from PIL import Image
imgdata = np.array(Image.fromarray(rgbdata).resize(self.inres))

如果提示不能找到PIL库时,则pip安装pillow库即可

猜你喜欢

转载自blog.csdn.net/qq_45699150/article/details/124605141
今日推荐