Ultralytics提供了广泛的模型支持,包括从YOLOv3到YOLOv11的各个版本,以及SAM和RT-DETR等模型。这些模型在物体检测、实例分割等任务中表现出色,为用户提供了强大的工具。
YOLOv3是由Joseph Redmon开发的YOLO模型家族的第三代模型。YOLOv4是Alexey Bochkovskiy在2020年发布的YOLOv3的Darknet原生更新。YOLOv5是Ultralytics对YOLO架构的改进版,与以前的版本相比,性能和速度的权衡得到了改善。
YOLOv6是由美团公司在2022年发布的,被该公司的许多自主配送机器人采用。YOLOv7是由YOLOv4的在2022年发布的YOLO的更新模型。YOLOv8是YOLO家族的最新版本,具有增强功能,如实例分割、姿态/关键点估计和分类。
YOLOv9是Ultralytics的YOLOv5模型,实现了可编程梯度信息(PGI)。YOLOv10由清华大学开发,特点是无NMS的培训和注重效率与精度的架构,实现了最先进的性能和延迟。YOLO11是Ultralytics的最新YOLO模型,提供了多个任务的最新性能。
除了YOLO模型,还有SAM(Segment Anything Model)及其第二代模型SAM2,以及为移动应用设计的MobileSAM和FastSAM。YOLO-NAS是YOLO神经架构搜索(NAS)模型。RT-DETR是百度的PaddlePaddle Realtime Detection Transformer(RT-DETR)模型。
使用UltralyticsYOLO模型非常简单,只需几行代码即可执行。例如,以下是使用YOLOv8进行物体检测的简单示例。这些模式和其他模式的完整文档可以在Predict、Train、Val和Export文档页面中找到。
from ultralytics import YOLO
# 加载一个预训练的YOLOv8n模型
model = YOLO("yolov8n.pt")
# 显示模型信息(可选)
model.info()
# 在COCO8示例数据集上训练模型100个周期
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# 使用YOLOv8n模型在'bus.jpg'图像上运行推理
results = model("path/to/bus.jpg")
也可以通过CLI命令直接执行模型:
# 加载一个预训练的YOLOv8n模型并在COCO8示例数据集上训练它100个周期
yolo train model=yolov8n.pt data=coco8.yaml epochs=100 imgsz=640
# 加载一个预训练的YOLOv8n模型并在'bus.jpg'图像上运行推理
yolo predict model=yolov8n.pt source=path/to/bus.jpg
如果有兴趣向Ultralytics贡献模型,非常欢迎!始终开放,以扩大模型组合。
首先,需要在Ultralytics的GitHub仓库中fork项目,然后将fork克隆到本地机器,并创建一个新的分支来工作。接下来,按照贡献指南中提供的编码标准和指南添加模型。在将模型单独或作为管道的一部分进行严格测试后,如果对模型感到满意,请创建一个pull request到主仓库进行审查。审查后,如果模型满足标准,它将被合并到主仓库中。