【实用工具】Gradio快速部署深度学习应用1:图像分类

2023-12-30 19:41:47

前言

在AI快速发展的今天,我们作为算法开发人员,也应该有一些趁手的工具帮助我们快速开发并验证自己的想法,Gradio可以实现快速搭建和共享的功能,能够展示出一个前端界面,把我们的算法包裹起来,快速验证算法的有效性,文档也丰富,通俗易懂,喜欢的小伙伴可以学一手。

环境安装

使用pip install安装

gradio
gradio_client
torch
torchvision

代码

完整代码链接:

链接:?https://pan.baidu.com/s/1x4ZTN7cTASv8cZe_iBoYVw

提取码: r425

from torchvision import transforms
import gradio as gr
import torch

model = torch.hub.load('pytorch/vision:v0.6.0', 'resnet18', pretrained=True).eval()


# 打开文本文件
file_path = 'labels.txt'  # 将文件路径替换为你实际的文本文件路径
with open(file_path, 'r') as file:
    # 读取文件内容
    labels = file.readlines()
#去掉每个label的换行符
labels = [label.rstrip() for label in labels]


#预测函数
def predict(inp):
  inp = transforms.ToTensor()(inp).unsqueeze(0)
  with torch.no_grad():
    prediction = torch.nn.functional.softmax(model(inp)[0], dim=0)
    confidences = {labels[i]: float(prediction[i]) for i in range(1000)}
  return confidences


#fn表示触发函数,当我们点击提交按钮时,触发predict函数进行推理
#inputs表示图像会被转换为PIL.Image格式
#outputs将以label的形式展示出来
#examples可以将图片作为示例展示出来,供用户使用
gr.Interface(fn=predict,
             inputs=gr.Image(type="pil"),
             outputs=gr.Label(num_top_classes=3),
             examples=["sheep.jpeg", "panda.jpg", "dog.jpg", "tiger.jpg"]).launch()

运行

?点击http://127.0.0.1:7860,会出现前端展示页面

页面展示

参考链接:

?Gradio Interface Docs

?Image Classification In Pytorch

文章来源:https://blog.csdn.net/qq_44091004/article/details/135308007
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。