IssueRaiser

YOLOv5 (6.0/6.1) brief summary

# Content + [1. Model Structure](#1) + [2. Data Augmentation](#2) + [3. Training Strategies](#3) + [4. Others](#4) - [4.1 Compute Losses](#41) - [4.2 Balance Losses](#42) - [4.2 Eliminate Grid Sensitivity](#43) - [4.3 Build Targets](#44) <a name="1"></a> ## 1. Model Structure YOLOv5 (v6.0/6.1) consists of: - **Backbone**: `New CSP-Darknet53` - **Neck**: `SPPF`, `New CSP-PAN` - **Head**: `YOLOv3 Head` Model structure (`yolov5l.yaml`): ![yolov5](https://user-images.githubusercontent.com/31005897/172404576-c260dcf9-76bb-4bc8-b6a9-f2d987792583.png) Some minor changes compared to previous versions: 1. Replace the `Focus` structure with `6x6 Conv2d`(more efficient, refer #4825) 2. Replace the `SPP` structure with `SPPF`(more than double the speed) <details> <summary>test code</summary> ```python import time import torch import torch.nn as nn class SPP(nn.Module): def __init__(self): super().__init__() self.maxpool1 = nn.MaxPool2d(5, 1, padding=2) self.maxpool2 = nn.MaxPool2d(9, 1, padding=4) self.maxpool3 = nn.MaxPool2d(13, 1, padding=6) def forward(self, x): o1 = self.maxpool1(x) o2 = self.maxpool2(x) o3 = self.maxpool3(x) return torch.cat([x, o1, o2, o3], dim=1) class SPPF(nn.Module): def __init__(self): super().__init__() self.maxpool = nn.MaxPool2d(5, 1, padding=2) def forward(self, x): o1 = self.maxpool(x) o2 = self.maxpool(o1)

Posted by WZMIAOMIAO on Mar 16, 2022, 4:39 AM

Tags

Related issues

Raise real-world problems, find people facing the same issue, and discuss solutions.2,500 issues0 comments

github (Other)

YOLOv5 (6.0/6.1) brief summary

WZMIAOMIAOMar 16, 2022, 4:39 AM

# Content + [1. Model Structure](#1) + [2. Data Augmentation](#2) + [3. Training Strategies](#3) + [4. Others](#4) - [4.1 Compute Losses](#41) - [4.2 Balance Losses](#42) - [4.2 Eliminate Grid Sensitivity](#43) - [4.3 Build Targets](#44) <a name="1"></a> ## 1. Model Structure YOLOv5 (v6.0/6.1) consists of: - **Backbone**: `New CSP-Darknet53` - **Neck**: `SPPF`, `New CSP-PAN` - **Head**: `YOLOv3 Head` Model structure (`yolov5l.yaml`): ![yolov5](https://user-images.githubusercontent.com/31005897/172404576-c260dcf9-76bb-4bc8-b6a9-f2d987792583.png) Some minor changes compared to previous versions: 1. Replace the `Focus` structure with `6x6 Conv2d`(more efficient, refer #4825) 2. Replace the `SPP` structure with `SPPF`(more than double the speed) <details> <summary>test code</summary> ```python import time import torch import torch.nn as nn class SPP(nn.Module): def __init__(self): super().__init__() self.maxpool1 = nn.MaxPool2d(5, 1, padding=2) self.maxpool2 = nn.MaxPool2d(9, 1, padding=4) self.maxpool3 = nn.MaxPool2d(13, 1, padding=6) def forward(self, x): o1 = self.maxpool1(x) o2 = self.maxpool2(x) o3 = self.maxpool3(x) return torch.cat([x, o1, o2, o3], dim=1) class SPPF(nn.Module): def __init__(self): super().__init__() self.maxpool = nn.MaxPool2d(5, 1, padding=2) def forward(self, x): o1 = self.maxpool(x) o2 = self.maxpool(o1)

Comments (0)

No comments yet. Start the discussion.

Comment on this issue