学习python使用Ultralytics的YOLO26进行分类的基本用法

Ultralytics的YOLO26模型提供专门的分类模型以支持图像分类,其主要预训练模型及参数如下表所示,其中的acc top1指标是指模型预测的第一名类别是否正确,用于评估模型的最优答案的准确率,而acc top5指标是指正确答案是否在模型预测的前五名类别中,用于评估模型的候选答案的准确率。

  图像分类模型的输出是单个类别标签和一个置信度分数。YOLO26的分类模型的输出数据形状是长度为c的一维数组,c为基于imagenet数据集的1000个预训练分类,可以通过result.names属性获取全部分类,也可以从参考文献5中浏览全部1000中分类名称。不过将分类模型转换为onnx格式后,其输入形状、输出形状变为[1,3,224,224]、[1,1000]的形式,具体解析方式后续再学习。
  图像分类模型的输出结果保存在result.probs属性中,其中data保存原始数据,也即对应1000个预训练分类的置信度,top1和top1conf为可能性最高的分类索引及置信度,top5和top5conf为可能性最高的前5个分类索引及置信度。

  最后是示例程序及程序运行效果,如下所示:

python 复制代码
from ultralytics import YOLO

# Load a model
model = YOLO(r"E:\MyPrograms\Python\ultralytics\yolo26m-cls.pt")

# Predict with the model
results = model("ertong.jpg")  

# Access the results
for result in results:
    print(result.probs.top1)
    print(result.probs.top5)
    print(result.probs.top1conf)
    print(result.probs.top5conf)
    print(result.probs.data.shape)
    print(result.probs.data)
    print(result.names)#1000个预训练分类名称


参考文献:

1\]https://docs.ultralytics.com/zh/models/yolo26/ \[2\]https://docs.ultralytics.com/zh/tasks/classify/ \[3\]https://deepwiki.com/ultralytics/ultralytics/5.2-annotation-and-plotting-utilities \[4\]https://docs.ultralytics.com/reference/engine/results/#ultralytics.engine.results.Probs \[5\]https://deeplearning.cms.waikato.ac.nz/user-guide/class-maps/IMAGENET/

相关推荐
书到用时方恨少!2 小时前
Python 零基础入门系列(终篇):综合实战项目
开发语言·python
小陈工2 小时前
Python Web开发入门(二):Flask vs Django,项目结构大比拼
前端·数据库·python·安全·web安全·django·flask
杜子不疼.2 小时前
2026 GitHub 热门 Python 项目:AI 代理与数据工具精选
人工智能·python·github
迷藏4942 小时前
# 发散创新:用Rust构建高性能分布式账本节点——从零实现共识算法与链上数据存储
java·python·rust·共识算法·分布式账本
进击的小头2 小时前
第21篇:BUCK变换器双环控制系统设计与参数整定调试实战
python·算法
智算菩萨2 小时前
【Tkinter】3 Tkinter Button 控件深度解析:从事件绑定到现代交互设计实战
python·microsoft·ui·交互·tkinter·button
小陈工2 小时前
2026年3月30日技术资讯洞察:AI算力突破、云原生优化与架构理性回归
开发语言·人工智能·python·云原生·架构·数据挖掘·wasm
我是大猴子2 小时前
JAVA面试问题
开发语言·python
zero15972 小时前
Python 8天极速入门笔记(大模型工程师专用):第四篇-判断与循环(Python流程控制,批量处理必备)
笔记·python·ai编程