ModuleNotFoundError: нет модуля с именем keras.engine.sequential. - PullRequest
0 голосов
/ 19 июня 2020

Я пытаюсь интегрировать классификацию изображений в веб-приложение, используя 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'

Кажется, в чем проблема? Я попытался импортировать последовательный безрезультатно. Любая помощь будет принята с благодарностью.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...