2017-02-27 7 views
0
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 

によってロードされ、IMG保存して処理した後、それを保存したいのですが、エラーがある方法:code.Iは、画像の利用caffe.io.load_imgをロードさcaffe.io.load_imageここ

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

保存の方法

+0

'PIL'を使用して保存する前に' result'を 'uint8'に変換します。 – Shai

答えて

1

代わりにPILを使用して画像を保存できます。 caffeには画像を保存するための方法はありません。

を編集します.-はい、there's no画像を保存する機能です。

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

私は試みましたが、画像がそのデータ型を処理できないようです。私の質問に誤りを貼り付けてください。 – StalkerMuse

+0

@StalkerMuseあなたはuint8に変換しようとしましたか? – hashcode55

+1

はい、ありがとうございます。結果は* 255 – StalkerMuse

関連する問題