首先我们载入一张灰度图片,一般灰度图片像素为0-255.


可以发现该图片的最大像素为254,最小像素为2。一般处理图片时会转化为double类型。

我们将图片使用scipy保存为pgm格式。
然后我们重新读取该图片信息。


其像素值发生了变化,自动标准化到了0-255范围,最小值变为0,最大值变为255.

所以,使用scipy保存图像时,加上2个参数,cmin和cmax。就可以了
重新读取图片。结果正确

补充:from scipy import misc 读取和保存图片
from scipy import misc
def imread(name, flatten=False, mode=None)
pass
"""
读取一张图片返回array,uint8,"""
def imsave(name, arr, format=None):
pass
"""
Save an array as an image. 自动的调用将图片转成0-255范围内的
arr : ndarray, MxN or MxNx3 or MxNx4
Array containing image values. If the shape is ``MxN``, the array
represents a grey-level image. Shape ``MxNx3`` stores the red, green
and blue bands along the last dimension. An alpha layer may be
included, specified as the last colour band of an ``MxNx4`` array.
"""
注意上面对图片读取和保存的函数会被弃用,使用如下代替:
import imageio imageio.imread() imageio.imwrite()
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理