如何保存 caffe.io.load_image 加载的图像
How to save img loaded by caffe.io.load_image
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
这里是code.I使用caffe.io.load_img加载图片,处理完想保存,但是出现错误:
AttributeError: 'numpy.ndarray' object has no attribute 'save'
请问如何保存?
您可以使用 PIL
来保存图像。我认为 caffe
没有公开任何保存图像的方法。
编辑 - 是的,there's no 保存图像的功能。
from PIL import Image
img = Image.fromarray(result.astype('uint8')) # convert image to uint8
img.save(path+'.png')
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
这里是code.I使用caffe.io.load_img加载图片,处理完想保存,但是出现错误:
AttributeError: 'numpy.ndarray' object has no attribute 'save'
请问如何保存?
您可以使用 PIL
来保存图像。我认为 caffe
没有公开任何保存图像的方法。
编辑 - 是的,there's no 保存图像的功能。
from PIL import Image
img = Image.fromarray(result.astype('uint8')) # convert image to uint8
img.save(path+'.png')