当前位置:   article > 正文

YOLOv10代码详细介绍(附录训练教程和权重)_yolov10权重

yolov10权重

图片

前言

YOLOv10 是清华大学研究人员在 UltralyticsPython 清华大学的研究人员在 YOLOv10软件包的基础上,引入了一种新的实时目标检测方法,解决了YOLO 以前版本在后处理和模型架构方面的不足。通过消除非最大抑制(NMS)和优化各种模型组件,YOLOv10 在显著降低计算开销的同时实现了最先进的性能。并用大量实验证明,YOLOv10 在多个模型尺度上实现了卓越的精度-延迟权衡。

1.模型获取

官网连接:

https://github.com/THU-MIG/yolov10

也可以文末公众号内回复“YOLOv10”,获取全部代码、论文以及初始权重文件。

图片

2.YOLOv10亮点

  • 无 NMS 设计:利用一致的双重分配来消除对 NMS 的需求,从而减少推理延迟。

  • 整体模型设计:从效率和准确性的角度全面优化各种组件,包括轻量级分类头、空间通道去耦向下采样和等级引导块设计。

  • 增强的模型功能:纳入大核卷积和部分自注意模块,在不增加大量计算成本的情况下提高性能。

3.模型结构

YOLOv10与v8结构相比,从结构上看添加了PSA和在C2f结构中添加了CBI结构,去掉了NMS。

图片

图片

图片

4.模型训练、验证、推理

需要导入YOLOv10模块,不是YOLO模块

  1. from ultralytics import YOLOv10
  2. # 加载模型
  3. model = YOLOv10("yolov10n.yaml") # 从头开始构建新模型
  4. model = YOLOv10("weights/yolov10n.pt") # 加载预训练模型(建议用于训练)
  5. if __name__ == '__main__':
  6. model.train(data="data_laji.yaml", imgsz=416, batch=32, epochs=10, workers=0) # 训练模型
  1. from ultralytics import YOLOv10
  2. def main():
  3. # 加载模型,test就是对测试集进行测试,删去就是对验证集进行测试
  4. model = YOLOv10(r"runs/detect/train/weights/best.pt")
  5. model.val(data="data_APSPC.yaml", split='test', imgsz=416, batch=16, workers=0) #模型验证
  6. if __name__ == "__main__":
  7. main()
  1. from ultralytics import YOLOv10
  2. # 检测
  3. model = YOLOv10(r"runs/detect/train/weights/best.pt")
  4. results = model('datasets/images/val', save=True)

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/692836
推荐阅读
相关标签