当前位置: 首页 > news >正文

YOLOV8对于classify分类任务更换resnet18主干网络

1. 先定义残差18模块的网络

class Resnet18(nn.Module):def __init__(self):super().__init__()model = models.resnet18(pretrained=True)self.layer=nn.Sequential(model.conv1,model.bn1,model.relu,model.maxpool,model.layer1,model.layer2,model.layer3,model.layer4,model.avgpool)def forward(self, x):x=self.layer(x)return x

添加到conv.py末尾

注册模块

 2.task.py更改

3.更改Yaml文件 

# Ultralytics YOLO 🚀, AGPL-3.0 license
# YOLOv8-cls image classification model. For Usage examples see https://docs.ultralytics.com/tasks/classify# Parameters
nc: 1000 # number of classes
scales: # model compound scaling constants, i.e. 'model=yolov8n-cls.yaml' will call yolov8-cls.yaml with scale 'n'# [depth, width, max_channels]n: [0.33, 0.25, 1024]s: [0.33, 0.50, 1024]m: [0.67, 0.75, 1024]l: [1.00, 1.00, 1024]x: [1.00, 1.25, 1024]# YOLOv8.0n backbone
backbone:# [from, repeats, module, args]- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4- [-1, 3, C2f, [128, True]]- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8- [-1, 6, C2f, [256, True]]- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16- [-1, 6, C2f, [512, True]]- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32- [-1, 3, C2f, [1024, True]]# YOLOv8.0n head
head:- [-1, 1, Classify, [nc]] # Classify

 4.最后训练测试一下

from ultralytics import YOLOdef main():  # 不加这句有时候就会报错model = YOLO(r"yolov8-cls-resnet18.yaml").load('yolov8n-cls.pt') model.train(data=R'E:\python_code\ultralytics-8.2.74\datasets\DIP', imgsz=128,epochs=10)if __name__ == '__main__':  # 不加这句就会报错main()  # 不加这句有时候就会报错

 


http://www.mrgr.cn/news/3073.html

相关文章:

  • Camunda BPMN 基础组件
  • Springcloud从零开始--Eureka
  • css-元素的显示与隐藏
  • Spring项目:文字花园(四)
  • 如何修复掉入水中的 iPhone 且不丢失数据
  • 利用网络爬虫获取数据的刑事责任分析
  • (分析篇章)从海量信息中脱颖而出:Workflow智能分析解决方案,大语言模型为AI科技文章打造精准摘要评分体系
  • docker逃逸手法
  • 【Qt】 编辑框 | 按钮 | 坐标系 的 初步了解
  • 20240820飞凌的OK3588-C的核心板在Linux R4下使用poweroff关机
  • element-plus form 表单嵌套表格树单行校验问题
  • 硅谷物理服务器有哪些关键优势和特点
  • C语言典型例题46
  • nvidia系列教程-AGX-Orin 外接rtc DS1340芯片调试
  • nginx支持的不同事件驱动模型
  • 【IDEA】idea配置服务器没有tomcat
  • Postman内置动态参数和自定义动态参数
  • 仿RabbitMq实现简易消息队列正式篇(消费者篇)
  • mac 安装Arthas
  • 花钱买不到系列—linux 什么是进程