in api/ImageSimilarity/deployment/app.py [0:0]
def load_model():
'''
this method will load the keras and KNN model (or Annoy) into memory
'''
global keras_model
global knn_model
global annoy_model
global targets
global img_width
global img_height
global graph
global knn_file
global targets_filepath
global isKnn
log('start of load_model function')
K.clear_session()
if isKnn:
knn_model = joblib.load(knn_file)
else:
length = 2048
annoy_model = AnnoyIndex(length)
annoy_model.load(annoy_file)
log('loaded knn')
with graph.as_default():
keras_model = ResNet50(input_shape=[img_width,img_height,3],
weights='imagenet',
include_top=False,
pooling='avg')
log('loaded keras model')
targets = pickle.load(open(targets_filepath,'rb'))
targets = np.array(targets)
log('loaded models')