1 Star 0 Fork 248

lilong/OPTIMAL_KNN_MNIST_QUESTION

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
optimal_knn_webapp.py 1.08 KB
一键复制 编辑 原始数据 按行查看 历史
lilong 提交于 2024-09-08 22:47 . added a file
import gradio as gr
import pickle
import numpy as np
from PIL import Image
from sklearn.preprocessing import StandardScaler
# 加载保存的 KNN 模型
with open('best_knn_model.pkl', 'rb') as f:
model = pickle.load(f)
# 标准化处理函数(根据训练时的处理)
scaler = StandardScaler()
def predict_digit(drawing):
composite_image = drawing['composite']
image = np.array(composite_image.convert('L')).astype(np.float32)
image = Image.fromarray(image)
image = image.resize((8, 8), Image.Resampling.LANCZOS) # 使用正确的重采样方法
image = np.array(image).flatten() # 展平图像
image = (255 - image) / 255.0
image = scaler.fit_transform(image.reshape(1, -1))
# 预测
prediction = model.predict(image)
return int(prediction[0])
# 创建 Gradio 接口
interface = gr.Interface(
fn=predict_digit,
inputs=gr.Sketchpad(type="pil", label="Draw your digit here"),
outputs="text",
title="手写数字识别",
description="在画布上直接绘制数字,模型将预测图像中的数字。"
)
interface.launch()
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/gooddragon123/optimal_knn_mnist_question.git
[email protected]:gooddragon123/optimal_knn_mnist_question.git
gooddragon123
optimal_knn_mnist_question
OPTIMAL_KNN_MNIST_QUESTION
main

搜索帮助