Я пытаюсь интегрировать классификацию изображений в веб-приложение, используя Flask. Модель обучалась в google colab, где все работало нормально. Проблема возникает, когда я загружаю сохраненную модель с помощью pickle, который прошел гладко в colab.
Вот мой файл index.py:
from flask import Flask, render_template, request
from werkzeug.utils import secure_filename
import os
import numpy as np
from PIL import Image
import pickle
import cv2
app = Flask(__name__)
app.config['IMAGE_UPLOADS'] = 'ML_project-master/finalfl/static/'
@app.route('/', methods=['GET', 'POST'])
def index():
if request.method == 'POST':
image = request.files['image']
filename = secure_filename(image.filename)
image.save(os.path.join(app.config["IMAGE_UPLOADS"], filename))
status = True
img = 'static/' + filename
idata = cv2.imread(img)
idata = Image.fromarray(idata, 'RGB')
idata = idata.resize((64, 64))
idata = np.array(idata)
idata = np.expand_dims(idata, axis=0)
classify = 'ML_project-master/finalfl/CNNmodel3.sav'
classifier = pickle.load(open(classify, 'rb'))
result = classifier.predict(idata)
print('result')
return render_template('index.html', status = status, filename = filename)
else:
status = False
return render_template('index.html')
if __name__ == '__main__':
app.run()
А вот трассировка стека:
Traceback (most recent call last):
File "C:\Users\SUBHANEE\AppData\Local\Programs\Python\Python36\lib\site-packages\flask\app.py", line 2447, in wsgi_app
response = self.full_dispatch_request()
File "C:\Users\SUBHANEE\AppData\Local\Programs\Python\Python36\lib\site-packages\flask\app.py", line 1952, in full_dispatch_request
rv = self.handle_user_exception(e)
File "C:\Users\SUBHANEE\AppData\Local\Programs\Python\Python36\lib\site-packages\flask\app.py", line 1821, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "C:\Users\SUBHANEE\AppData\Local\Programs\Python\Python36\lib\site-packages\flask\_compat.py", line 39, in reraise
raise value
File "C:\Users\SUBHANEE\AppData\Local\Programs\Python\Python36\lib\site-packages\flask\app.py", line 1950, in full_dispatch_request
rv = self.dispatch_request()
File "C:\Users\SUBHANEE\AppData\Local\Programs\Python\Python36\lib\site-packages\flask\app.py", line 1936, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "index.py", line 29, in index
classifier = pickle.load(open(classify, 'rb'))
ModuleNotFoundError: No module named 'keras.engine.sequential'
Кажется, в чем проблема? Я попытался импортировать последовательный безрезультатно. Любая помощь будет принята с благодарностью.