Как изменить размер изображения, загруженного в FastAPI, с помощью библиотеки изображений Python (PIL)?Python

Программы на Python
Ответить
Anonymous
 Как изменить размер изображения, загруженного в FastAPI, с помощью библиотеки изображений Python (PIL)?

Сообщение Anonymous »

Я хотел бы создать приложение FastAPI для моей модели классификации изображений. Но когда я загружаю файл изображения, он не может делать прогнозы, потому что моя модель устанавливает изображение как (256,256), но загружаемое изображение не имеет значения (256,256). Как изменить размер изображения после загрузки и до получения прогнозов?

Код: Выделить всё

from fastapi import FastAPI, File, UploadFile
from fastapi.middleware.cors import CORSMiddleware
import uvicorn
import numpy as np
from io import BytesIO
from PIL import Image
import tensorflow as tf

app = FastAPI()

MODEL = tf.keras.models.load_model("D:/Works/M.6/New Soil/Classification/Model/SoilModel.h5")

CLASS_NAMES = ["Clay", "Loam", "Red","Sandy"]

@app.get("/home")
async def ping():
return "Hello, Welcome to CropChat"

def read_file_as_image(data) -> np.ndarray:
image = np.array(Image.open(BytesIO(data)))
return image

@app.post("/predict")
async def predict(
file: UploadFile = File(...)
):
image = read_file_as_image(await file.read())
img_batch = np.expand_dims(image, 0)

predictions = MODEL.predict(img_batch)

predicted_class = CLASS_NAMES[np.argmax(predictions[0])]
confidence = np.max(predictions[0])
return {
'class': predicted_class,
'confidence': float(confidence)
}

if __name__ == "__main__":
uvicorn.run(app, host='localhost', port=8000)

Я пытался использовать image.resize, но он не работает.


Подробнее здесь: https://stackoverflow.com/questions/766 ... ibrary-pil
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»