Flask
--Importieren Sie die zuvor erstellte face_deep.py
.
import face_deep
―― Mit Trainingsbildern und Testbildern können Rückschlüsse gezogen werden.
.jpeg
im Ordner sind auf Inferenz ausgerichtet.@app.route('/predict/<folder>/<item>')
def predict(folder, item):
"""Bildinferenz."""
if folder not in ['train', 'test']:
abort(404)
filename_list = sorted(glob.glob(os.path.join(DATA_PATH, folder, item, '*.jpeg')))
image_list = []
for filename in filename_list:
face = Image.open(filename)
face = face.resize((IMG_ROWS, IMG_COLS), Image.LANCZOS)
face = face.convert('L')
face = np.array(face, dtype=np.float32) / 255.0
face = np.ravel(face)
image_list.append(face)
percent_list = face_deep.predict(image_list, dtype='int')
Dateiname
können Sie einen Bildlink aus der Vorlage erstellen. rows = []
for filename, percent in zip(filename_list, percent_list):
color = CLASSES.index(item) in [index for index, value in enumerate(percent) if value == max(percent)]
row = {'filename': os.path.basename(filename), 'percent': percent, 'color': color}
rows.append(row)
return render_template('predict.html', folder=folder, item=item, headers=CLASSES, rows=rows)
{% if row.color %}
<tr class="table-primary">
{% else %}
<tr class="table-danger">
{% endif %}
<td>
<figure class="figure">
<img src="/data/{{ folder }}/{{ item }}/{{ row.filename }}?size=100" />
<figcaption class="figure-caption">{{ row.filename }}</figcaption>
</figure>
</td>
{% for percent in row.percent %}
<td scope="row">{{ percent }}%</td>
Flask
wurde das Inferenzergebnis des Gesichtsbildes angezeigt.Recommended Posts