问题描述:
今天在跑一篇模型实验时,SIM-TRANS,用了他2022年的代码,一运行就显示
AttributeError: module 'scipy.misc' has no attribute 'imread'
解决过程:
我一开始以为是没装imread库(软件包),因为用的conda环境,在这个环境下面确实没有安装imread,于是然后就用 conda install imread去安装,然后报错,解决半天没办法。
然后使用pip install imread,期间经历了 can not fetch URL, ssl证书trust,换了清华,腾讯云,包括豆瓣国内镜像源,都试了照样没用
于是,又去把pip升级到最新,没用,conda升级到最新,也没用
然后以为是py3.8和imread库的版本不匹配,因为你试过第二种方法的时候会报错:no vesion 能够满足需要。然后就去网站上找适配py3,8的imread-cp38库,找到了一个网站。结果明明这个网站上有 imread-0.7.4-cp38的文字,但是我用 pip install imread -i 这个网站 --trust 这个网站 。 照样报错
真是服了
然后我观察到这个问题 :AttributeError: module 'scipy.misc' has no attribute 'imread'
你要把重点放在 scipy.misc中没有这个imread,于是去网上搜了下,果然让我发现了!!!!!!
解决方法参考了scipy更新后imread,imresize函数被弃用,如何在新版本中替换
[解决方法]:导入包的时候把scipy.misc换成 imageio,然后在代码中把所有的scipy.misc,imread 换成 imageio.imread
也就是如下:
1. imread
先前版本
img = scipy.misc.imread(myImage)
新版本
import imageio
img = imageio.imread(myImage)
代码中的例子: