Flaskは簡単な画像認識サーバーを構築する


Flaskは簡単な手書きデジタル識別サーバーを構築する
困惑して私の何日の问题はついに解决して、基础はやはりあまり坚固ではありませんて、特にこのドキュメントを书いて记录して、一歩一歩flaskで分类のサーバーを构筑して、主にMNISTデータセットを分类して、クライアント(ここでブラウザを指します)から画像をサーバーに伝えて、サーバーを通じてこの数字がどんな数字に属するかを判断します
1.まずはflaskフレームワークをご紹介します
FlaskはPythonが実現したWeb開発マイクロフレームワークである.
マイクロはこのフレームワークが悪いという意味ではなく、軽量級のフレームワークで、私はこれまでweb開発をしたことがありませんが、このフレームワークは私にweb開発を学ぶのがこんなに簡単だと感じさせました.ここでflaskフレームワークの構築は言わない.
from flask import Flask,request
from scipy import misc
from sklearn.externals import joblib

app = Flask(__name__)

@app.route('/upload', methods=['POST'])
def upload():
    f = request.files['file']
    im = misc.imread(f) 
    img = im.reshape((1,784))  
    clf = joblib.load('model/ok.m')
    l = clf.predict(img)
    return 'predict: %s ' % (l[0])

@app.route('/')
def index():
    return '''
    
    
    
    
''' if __name__ == '__main__': app.run()

まずライブラリをインポートし、scipyのmiscモジュールを使用して画像を処理します.クライアントpostから来たファイルのため、ここではpostを使用してファイルを受信し、miscでファイルを読み取り、読み込んだ画像を1次元に変換します.トレーニングモデルはこのようなものですから.そしてモデルを読み取り、判断します.
# -*- coding:utf-8 -*-

import pandas as pd
from scipy import misc

data_test = pd.read_csv('Data/test.csv')
X_test = data_test.values[2:3]

im = X_test.reshape((28,28))

misc.imsave('3.png',im)

このコードはピクチャを生成する機能で、訓練したcsvファイルをピクチャに生成し、保存し、ブラウザでサーバをアップロードすることで、どの数字に属するかを判断します.効果は次のとおりです.
注意画像は0で、アップロード後:
これで効果が出てきます.