import sys
import numpy as np
#import scipy.misc
from scipy import ndimage, misc
from PIL import Image
imgpath="demo_img1.jpg"
#1.generate Attention Map
#files=["word.txt","phrase.txt","question.txt"]
files=["question.txt"]
for filename in files:
print filename
f=open(filename,'r')
nums=f.read()
f.close()
atten=np.zeros(196)
img=np.ones((448,448))
for i in range(0,196):
atten[i]=nums.split(' ')[i]
atten=(atten-min(atten))/(max(atten)-min(atten))
atten=np.floor(atten*255)
#atten=atten.reshape(14,14)
#print max(atten),min(atten)
for i in range(0,14):
r=i*32
for j in range(0,14):
c=j*32
mul=atten[i*14+j]
for ri in range(r,r+31):
for cj in range(c,c+31):
img[ri][cj]=img[ri][cj]*mul
misc.toimage(img, cmin=0.0, cmax=255.0).save(filename+'.jpg')
#sys.exit()
#2.reshape the original image
img = Image.open(imgpath) # image extension *.png,*.jpg
new_width = 448
new_height = 448
img = img.resize((new_width, new_height), Image.ANTIALIAS)
img.save('test448.jpg')
#3.overlay two images
background = Image.open("test448.jpg")
overlay = Image.open(filename+".jpg")
background = background.convert("RGBA")
overlay = overlay.convert("RGBA")
new_img = Image.blend(background, overlay, 0.5)
new_img.save("new.png","PNG")
[python]image(reshape,overlay)
最新推荐文章于 2024-08-24 23:10:46 发布