【问题标题】:How to save img loaded by caffe.io.load_image如何保存 caffe.io.load_image 加载的图像
【发布时间】:2017-02-27 09:43:23
【问题描述】:
k = 1
for k in range(1,21):
    img = caffe.io.load_image(imgpath + str(k) + '.png')
    result = caffe.io.load_image(imgpath + str(k) + '.png')
    patch_dim = 33
    h = (patch_dim - 1) / 2
    for i in range(patch_dim / 2, img.shape[0] - patch_dim / 2):
        for j in range(patch_dim / 2, img.shape[1] - patch_dim / 2):
            net.blobs['data'].data[...] = transformer.preprocess('data', img[i-h:i+h+1, j-h:j+h+1])
            out = net.forward()
            if out['prob'][0][1] >= 0.8:
                result[i][j][0] = 1
    result.save(resultpath + str(k) + ".png")
    k = k + 1

这里是代码,我用caffe.io.load_img加载图片,处理后想保存,但出现错误:

AttributeError: 'numpy.ndarray' object has no attribute 'save'

请问如何保存?

【问题讨论】:

  • 在使用PIL保存之前将result转换为uint8

标签: python numpy caffe pycaffe


【解决方案1】:

您可以改用PIL 来保存图像。我不认为caffe 有任何方法可以保存图像。

编辑 - 是的,there's no 保存图像的功能。

from PIL import Image 
img = Image.fromarray(result.astype('uint8')) # convert image to uint8
img.save(path+'.png')

【讨论】:

  • 我试过了,但 Image 似乎无法处理那种数据类型。我已将错误粘贴到我的问题中。
  • @StalkerMuse 您是否尝试将其转换为 uint8?
猜你喜欢
  • 2012-10-12
  • 1970-01-01
  • 1970-01-01
  • 2011-12-11
  • 2020-01-07
  • 2018-11-03
  • 2012-03-31
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多