背景
调用scipy.misc模块中imsave保存图片遇到的问题。
原因
其实是1.20版本之前的scipy模块中有imread 和imsave的方法,但在1.20版本后换成了其他的函数。
如imsave换成了imageio.imwrite。
imsave` is deprecated in SciPy 1.0.0, and will be removed in 1.2.0.
Use ``imageio.imwrite`` instead.
解决办法
1.scipy版本回退( 不 推 荐 \color{#FF3030}{不推荐} 不推荐)
因为版本回退后会造成该模块与环境中的tensorflow包或者其他包的不兼容,后续还得再更新回来,或者是单独建一个环境,比较麻烦。版本回退的pip指令如下:
pip install scipy==1.2.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
2.使用opencv或者是matplotlib保存图片即可( 推 荐 \color{#FF3030}{推荐} 推荐)
opencv的方法:
import cv2
# 读取
img = cv.imread(imagepath)
# 显示
cv2.imshow('window_title',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
# 保存
cv.imwrite(savepath, img)
matplotlib保存图片的方法
from PIL import Image
import matplotlib.pyplot as plt
plt.imshow(img)
plt.savefig(img_name+'.png')# 图像保存
plt.show()