这个AI模型能识别出这个橘子吗?

简介: 这个AI模型能识别出这个橘子吗?

导读

图像识别任务是人工智能计算机视觉领域一个重要的子任务,本篇文章将通过使用一个预训练模型来帮助读者快速上手图像识别任务,对应的文件可通过关注文章末尾的公众号领取

本篇文章需要一定人工智能基础,不了解的可从博主其他人工智能专栏进行学习

本次介绍的模型是resnet模型

可以将本篇博文当作notebook来阅读,也方便读者进行运行

模型配置

库的导入

首先导入本次项目所需要的库,torchvision是一个计算机视觉库,里面有很多相关模型

from torchvision import models
from torchvision import transforms

模型初始化

接着创建模型对象

resnet = models.resnet101(pretrained=True)

图片处理器

创建一个预处理器,用于将不同格式的图片都转化为模型需要的输入格式

preprocess = transforms.Compose([
    transforms.Resize(256),
    transforms.CenterCrop(224),
    transforms.ToTensor(),
    transforms.Normalize(
        mean=[0.485, 0.456, 0.406],
        std=[0.229, 0.224, 0.225]
    )])

图片处理

导入图片处理库

from PIL import Image
import matplotlib.pyplot as plt

导入图片

将your_path替换为自己的图片路径

img = Image.open("/kaggle/input/orange/orange.jpg")

查看图片通道数

运行以下代码查看图片通道数

print(len(img.getbands()))

如果图片通道数是4,就将它转化为RGB图片(通道数为3),因为图片预处理器处理的是3通道图片

img= img.convert("RGB")

处理图片

将图片放入图片处理器

img_t = preprocess(img)

导入torch库

import torch

扩充维度

拓展一个维度用作训练数据

batch_t = torch.unsqueeze(img_t, 0)

模型训练与评估

模型初始化

这部分代码将模型切换为评估模式,表示本次运行仅使用模型,不进行训练,再将图片输入模型,获取结果

resnet.eval()
out = resnet(batch_t)

导入标签

这段代码是模型对应输出的标签,即判别结果,标签文件可关注文章末尾公众号领取,下载后记得将路径替换为自己的路径

with open("/kaggle/input/pytorch/dlwpt-code-master/data/p1ch2/imagenet_classes.txt") as f:
    labels = [line.strip() for line in f.readlines()]

因为模型输出的是一些浮点数,我们获取最大值的索引,并在标签中搜索则可以得到最终结果

此段代码输出对应的结果和模型判断结果正确的概率

_, index = torch.max(out, 1)
percentage = torch.nn.functional.softmax(out, dim=1)[0] * 100
print(labels[index[0]], percentage[index[0]].item())

测试

以下是博主运行的图片和结果

输入了一个橘子图片

模型表示有97%的概率是橘子

感谢阅读,觉得有用的话就订阅下《AI模型分享》专栏吧,有错误也欢迎指出

相关文章
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
当大火的文图生成模型遇见知识图谱,AI画像趋近于真实世界
本文介绍了阿里云机器学习PAI团队开发的名为ARTIST的中文文图生成模型,该模型融合了知识图谱信息,能够生成更加符合常识的图像。ARTIST基于Transformer架构,将文图生成任务分为图像矢量量化和文本引导的图像序列生成两个阶段。在第一阶段,模型使用VQGAN对图像进行矢量量化;在第二阶段,通过GPT模型并结合知识图谱中的实体知识来生成图像序列。在MUGE中文文图生成评测基准上,ARTIST表现出色,其生成效果优于其他模型。此外,EasyNLP框架提供了简单易用的接口,用户可以基于公开的Checkpoint进行少量领域相关的微调,实现各种艺术创作。
|
1天前
|
机器学习/深度学习 人工智能 自然语言处理
ai大模型
【5月更文挑战第20天】ai大模型
9 0
|
6天前
|
人工智能 NoSQL atlas
Fireworks AI和MongoDB:依托您的数据,借助优质模型,助力您开发高速AI应用
我们欣然宣布MongoDB与 Fireworks AI 正携手合作让客户能够利用生成式人工智能 (AI)更快速、更高效、更安全地开展创新活动
2556 1
|
6天前
|
人工智能 vr&ar
[译][AI Research] AI 模型中的“it”是数据集
模型效果的好坏,最重要的是数据集,而不是架构,超参数,优化器。
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
大模型和传统ai的区别
在人工智能(AI)领域,大模型一直是一个热议的话题。从之前的谷歌 DeepMind、百度 Big. AI等,再到今天的百度GPT-3,人工智能技术经历了从“有”到“大”的转变。那么,大模型与传统 ai的区别在哪里?这对未来人工智能发展会产生什么影响?
|
6天前
|
人工智能 监控 安全
在园区引入AI大模型
5月更文挑战第5天
20 0
|
6天前
|
存储 机器学习/深度学习 人工智能
RAG:AI大模型联合向量数据库和 Llama-index,助力检索增强生成技术
RAG:AI大模型联合向量数据库和 Llama-index,助力检索增强生成技术
RAG:AI大模型联合向量数据库和 Llama-index,助力检索增强生成技术
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
对大模型和AI的认识与思考
2023年,笔者也参与了各种学习和实践,从大语言模型、多模态算法,文生图(Stable Diffusion)技术,到prompt工程实践和搭建文生图(Stable Diffusion)webui实操环境。在此对谈谈对大模型和AI的认识与思考,是为总结。5月更文挑战第3天
32 1
|
6天前
|
机器学习/深度学习 数据采集 人工智能
【AI 场景】设计一个 AI 系统来识别和分类图像中的对象
【5月更文挑战第3天】【AI 场景】设计一个 AI 系统来识别和分类图像中的对象
|
6天前
|
机器学习/深度学习 人工智能
超越Sora极限,120秒超长AI视频模型诞生!
【5月更文挑战第1天】 StreamingT2V技术突破AI视频生成界限,实现120秒超长连贯视频,超越Sora等传统模型。采用自回归方法,结合短期记忆的条件注意模块和长期记忆的外观保持模块,保证内容连贯性和动态性。在实际应用中,展示出优秀的动态性、连贯性和图像质量,但仍有优化空间,如处理复杂场景变化和连续性问题。[链接](https://arxiv.org/abs/2403.14773)
34 3

热门文章

最新文章