在使用caffe的python接口时,
如下,如果标黄的部分不加上的话,两次调用该函数,后面的会将前面的返回值覆盖掉,也就是fea1与fea2相等,但是fea1_ori会保留原来的fea1
解决方法为使用fea1_ori或者加上标黄对的copy即可;
def apply_model(image, net, filename): net.blobs['data'].data[...] = image output = net.forward() feat_vector = (net.blobs['norm2'].data[0]).copy() feat_vector = np.squeeze(feat_vector) return (feat_vector) #调用 fea1 = apply_model(img1, net, image_name) fea1_ori = fea1.copy() print "fea1 is ", fea1 fea2 = apply_model(img2, net, image_name) print "fea1 is ", fea1 print "fea2 is ", fea2 print "fea1_ori is ", fea1_ori