File size: 736 Bytes
6eec5de
8439d88
 
 
8be214a
8439d88
 
8be214a
8439d88
b7b10e6
6eec5de
 
 
 
8439d88
 
 
 
 
0b0076c
6eec5de
8439d88
6eec5de
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
from fastapi import FastAPI, File, UploadFile
import numpy as np
from PIL import Image
import io
import tensorflow as tf


model = tf.keras.models.load_model('_9217')

app = FastAPI()
@app.post("/classify")
async def classify(image: UploadFile = File(...)):
    if image is not None:
        img = Image.open(io.BytesIO(await image.read()))
        img = img.resize((128, 128))
        img_array = np.array(img) / 255.0
        img_array = np.expand_dims(img_array, axis=0)
        predictions = model.predict(img_array)
        predicted_class_idx = np.argmax(predictions)
        predicted_class_idx = int(predicted_class_idx)
        return {"prediction": predicted_class_idx}
    else:
        return {"error": "No image provided"}