Reference for ultralytics/nn/modules/block.py
Note
Full source code for this file is available at https://github.com/ultralytics/ultralytics/blob/main/ultralytics/nn/modules/block.py. Help us fix any issues you see by submitting a Pull Request 🛠️. Thank you 🙏!
ultralytics.nn.modules.block.DFL
Bases: Module
Integral module of Distribution Focal Loss (DFL). Proposed in Generalized Focal Loss https://ieeexplore.ieee.org/document/9792391
Source code in ultralytics/nn/modules/block.py
__init__(c1=16)
Initialize a convolutional layer with a given number of input channels.
Source code in ultralytics/nn/modules/block.py
forward(x)
Applies a transformer layer on input tensor 'x' and returns a tensor.
ultralytics.nn.modules.block.Proto
Bases: Module
YOLOv8 mask Proto module for segmentation models.
Source code in ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.HGStem
Bases: Module
StemBlock of PPHGNetV2 with 5 convolutions and one maxpool2d. https://github.com/PaddlePaddle/PaddleDetection/blob/develop/ppdet/modeling/backbones/hgnet_v2.py
Source code in ultralytics/nn/modules/block.py
forward(x)
Forward pass of a PPHGNetV2 backbone layer.
Source code in ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.HGBlock
Bases: Module
HG_Block of PPHGNetV2 with 2 convolutions and LightConv. https://github.com/PaddlePaddle/PaddleDetection/blob/develop/ppdet/modeling/backbones/hgnet_v2.py
Source code in ultralytics/nn/modules/block.py
forward(x)
ultralytics.nn.modules.block.SPP
Bases: Module
Spatial Pyramid Pooling (SPP) layer https://arxiv.org/abs/1406.4729.
Source code in ultralytics/nn/modules/block.py
__init__(c1, c2, k=(5, 9, 13))
Initialize the SPP layer with input/output channels and pooling kernel sizes.
Source code in ultralytics/nn/modules/block.py
forward(x)
ultralytics.nn.modules.block.SPPF
Bases: Module
Spatial Pyramid Pooling - Fast (SPPF) layer for YOLOv5 by Glenn Jocher.
Source code in ultralytics/nn/modules/block.py
forward(x)
ultralytics.nn.modules.block.C1
Bases: Module
CSP Bottleneck with 1 convolution.
Source code in ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.C2
Bases: Module
CSP Bottleneck with 2 convolutions.
Source code in ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.C2f
Bases: Module
Faster Implementation of CSP Bottleneck with 2 convolutions.
Source code in ultralytics/nn/modules/block.py
forward(x)
forward_split(x)
Forward pass using split() instead of chunk().
ultralytics.nn.modules.block.C3
Bases: Module
CSP Bottleneck with 3 convolutions.
Source code in ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.C3x
Bases: C3
C3 module with cross-convolutions.
Source code in ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
Initialize C3TR instance and set default parameters.
Source code in ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.RepC3
Bases: Module
Rep C3.
Source code in ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.C3TR
Bases: C3
C3 module with TransformerBlock().
Source code in ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
Initialize C3Ghost module with GhostBottleneck().
ultralytics.nn.modules.block.C3Ghost
Bases: C3
C3 module with GhostBottleneck().
Source code in ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
Initialize 'SPP' module with various pooling sizes for spatial pyramid pooling.
Source code in ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.GhostBottleneck
Bases: Module
Ghost Bottleneck https://github.com/huawei-noah/ghostnet.
Source code in ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.Bottleneck
Bases: Module
Standard bottleneck.
Source code in ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.BottleneckCSP
Bases: Module
CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks.