для выполнения задания мы провели классификацию изображений с помощью Keras и TF, которые классифицируют собак по сравнению с кошками. Я написал простое приложение Flask, которое позволяет продемонстрировать загрузку pi c и показать, оценивает ли загруженное изображение собаку или кошку.
Я могу запустить одиночную загрузку, и это хорошо отображается, но если Я загружаю другое изображение, я получаю:
TypeError: Cannot interpret feed_dict key as Tensor: Tensor Tensor("Placeholder:0", shape=(3, 3, 3, 32), dtype=float32) is not an element of this graph.
со строкой:
model = load_model('/Volumes/T5_500G/Capstone/v2/flask/models/model_weights.h5')
, выделенной на flask странице отладки
Я новичок в этом, так Я не понимаю, как это исправить. Вот мой код:
@app.route('/upload_image', methods=['GET', 'POST'])
def upload_image():
prediction_results = {}
animals = ['% Cat Score', '% Dog Score']
animals_scores = []
imageUrl = ""
if request.method == 'POST':
if request.files:
import keras
from keras.models import load_model
from keras import backend as K
import numpy as np
model = load_model('/Volumes/T5_500G/Capstone/v2/flask/models/model_weights.h5')
print(request.files)
print(request.files['image'].filename)
imageUrl = "/static/uploads/"+request.files['image'].filename
image2 = app.config['IMAGE_UPLOADS']+"/"+request.files['image'].filename
request.files['image'].save(image2)
img_path = image2
img = keras.preprocessing.image.load_img(img_path, target_size=(224,224))
img_array = keras.preprocessing.image.img_to_array(img)
expanded_img_array = np.expand_dims(img_array, axis=0)
preprocessed_img = expanded_img_array / 255. # Preprocess the image
prediction = model.predict(preprocessed_img)
pred_list = prediction.tolist()
animals_scores.append(pred_list[0][0])
animals_scores.append(pred_list[0][1])
print(prediction_results)
imageUrl = "/static/uploads/"+request.files['image'].filename
return render_template('/upload_image.html',imageUrl=imageUrl, animals=animals, animals_scores=animals_scores)
Пути загрузки - это пути на моем ноутбуке. Я надеюсь исправить это в pu sh на heroku или похожее.
Я прочитал несколько постов об очистке сессии keras. Это проблема?
Спасибо за любую помощь.