Référence pour ultralytics/nn/modules/block.py
Note
Ce fichier est disponible à l'adresse https://github.com/ultralytics/ ultralytics/blob/main/ ultralytics/nn/modules/block .py. Si tu repères un problème, aide à le corriger en contribuant à une Pull Request 🛠️. Merci 🙏 !
ultralytics.nn.modules.block.DFL
Bases : Module
Module intégral de perte focale de distribution (DFL).
Proposé dans la perte focale généralisée https://ieeexplore.ieee.org/document/9792391
Code source dans ultralytics/nn/modules/block.py
__init__(c1=16)
Initialise une couche de convolution avec un nombre donné de canaux d'entrée.
Code source dans ultralytics/nn/modules/block.py
forward(x)
Applique une couche de transformation sur l'entrée tensor 'x' et renvoie un tensor.
ultralytics.nn.modules.block.Proto
Bases : Module
YOLOv8 masque Proto module pour les modèles de segmentation.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c_=256, c2=32)
Initialise le module YOLOv8 mask Proto avec le nombre de protos et de masques spécifié.
Les arguments d'entrée sont ch_in, nombre de protos, nombre de masques.
Code source dans ultralytics/nn/modules/block.py
forward(x)
Effectue un passage avant à travers les couches à l'aide d'une image d'entrée rééchantillonnée.
ultralytics.nn.modules.block.HGStem
Bases : Module
StemBlock de PPHGNetV2 avec 5 convolutions et un maxpool2d.
https://github.com/PaddlePaddle/PaddleDetection/blob/develop/ppdet/modeling/backbones/hgnet_v2.py
Code source dans ultralytics/nn/modules/block.py
__init__(c1, cm, c2)
Initialise la couche SPP avec les canaux d'entrée/sortie et les tailles de noyau spécifiées pour la mise en commun maximale.
Code source dans ultralytics/nn/modules/block.py
forward(x)
Passage avant d'une couche dorsale PPHGNetV2.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.HGBlock
Bases : Module
HG_Block de PPHGNetV2 avec 2 convolutions et LightConv.
https://github.com/PaddlePaddle/PaddleDetection/blob/develop/ppdet/modeling/backbones/hgnet_v2.py
Code source dans ultralytics/nn/modules/block.py
__init__(c1, cm, c2, k=3, n=6, lightconv=False, shortcut=False, act=nn.ReLU())
Initialise un goulot d'étranglement CSP avec 1 convolution en utilisant les canaux d'entrée et de sortie spécifiés.
Code source dans ultralytics/nn/modules/block.py
forward(x)
Passage avant d'une couche dorsale PPHGNetV2.
ultralytics.nn.modules.block.SPP
Bases : Module
Couche Spatial Pyramid Pooling (SPP) https://arxiv.org/abs/1406.4729.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, k=(5, 9, 13))
Initialise la couche SPP avec les canaux d'entrée/sortie et les tailles des noyaux de mise en commun.
Code source dans ultralytics/nn/modules/block.py
forward(x)
Passage avant de la couche SPP, effectuant la mise en commun des pyramides spatiales.
ultralytics.nn.modules.block.SPPF
Bases : Module
Couche Spatial Pyramid Pooling - Fast (SPPF) pour YOLOv5 par Glenn Jocher.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, k=5)
Initialise la couche SPPF avec les canaux d'entrée/sortie et la taille du noyau donnés.
Ce module est Ă©quivalent Ă SPP(k=(5, 9, 13)).
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.C1
Bases : Module
Goulot d'Ă©tranglement du CSP avec 1 convolution.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, n=1)
Initialise le goulot d'Ă©tranglement CSP avec des configurations pour 1 convolution avec les arguments ch_in, ch_out, number.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.C2
Bases : Module
Goulot d'Ă©tranglement CSP avec 2 convolutions.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
Initialise le module CSP Bottleneck with 2 convolutions avec les arguments ch_in, ch_out, number, shortcut, groupes, expansion.
Code source dans ultralytics/nn/modules/block.py
forward(x)
ultralytics.nn.modules.block.C2f
Bases : Module
Mise en Ĺ“uvre plus rapide du goulot d'Ă©tranglement CSP avec 2 convolutions.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=False, g=1, e=0.5)
Initialise la couche de goulot d'Ă©tranglement CSP avec deux convolutions avec les arguments ch_in, ch_out, number, shortcut, groups, expansion.
Code source dans ultralytics/nn/modules/block.py
forward(x)
forward_split(x)
Passe en avant en utilisant split() au lieu de chunk().
ultralytics.nn.modules.block.C3
Bases : Module
Goulot d'Ă©tranglement CSP avec 3 convolutions.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
Initialise le goulot d'étranglement CSP avec les canaux, le nombre, le raccourci, les groupes et les valeurs d'expansion donnés.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.C3x
Bases : C3
Module C3 avec évolutions croisées.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
Initialise l'instance C3TR et définit les paramètres par défaut.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.RepC3
Bases : Module
Rep C3.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, n=3, e=1.0)
Initialise CSP Bottleneck avec une seule convolution utilisant les canaux d'entrée, les canaux de sortie et le nombre.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.C3TR
Bases : C3
Module C3 avec TransformerBlock().
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
Initialise le module C3Ghost avec GhostBottleneck().
ultralytics.nn.modules.block.C3Ghost
Bases : C3
Module C3 avec GhostBottleneck().
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
Initialise le module 'SPP' avec différentes tailles de mise en commun pour la mise en commun des pyramides spatiales.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.GhostBottleneck
Bases : Module
Goulot d'Ă©tranglement fantĂ´me https://github.com/huawei-noah/ghostnet.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, k=3, s=1)
Initialise le module GhostBottleneck avec les arguments ch_in, ch_out, kernel, stride.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.Bottleneck
Bases : Module
Goulot d'Ă©tranglement standard.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, shortcut=True, g=1, k=(3, 3), e=0.5)
Initialise un module goulot d'étranglement avec les canaux d'entrée/sortie, l'option de raccourci, le groupe, les noyaux et l'expansion donnés. l'expansion.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.BottleneckCSP
Bases : Module
Goulot d'Ă©tranglement du CSP https://github.com/WongKinYiu/CrossStagePartialNetworks.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
Initialise le goulot d'Ă©tranglement CSP avec les arguments ch_in, ch_out, nombre, raccourci, groupes, expansion.
Code source dans ultralytics/nn/modules/block.py
forward(x)
Applique un goulot d'Ă©tranglement CSP avec 3 convolutions.
ultralytics.nn.modules.block.ResNetBlock
Bases : Module
Bloc ResNet avec des couches de convolution standard.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, s=1, e=4)
Initialise la convolution avec les paramètres donnés.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.ResNetLayer
Bases : Module
Couche ResNet avec plusieurs blocs ResNet.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, s=1, is_first=False, n=1, e=4)
Initialise le ResNetLayer en fonction des arguments fournis.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.MaxSigmoidAttnBlock
Bases : Module
Bloc d'attention sigmoĂŻde max.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, nh=1, ec=128, gc=512, scale=False)
Initialise MaxSigmoidAttnBlock avec les arguments spécifiés.
Code source dans ultralytics/nn/modules/block.py
forward(x, guide)
Processus d'avancement.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.C2fAttn
Bases : Module
Module C2f avec un module attn supplémentaire.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, ec=128, nh=1, gc=512, shortcut=False, g=1, e=0.5)
Initialise la couche de goulot d'Ă©tranglement CSP avec deux convolutions avec les arguments ch_in, ch_out, number, shortcut, groups, expansion.
Code source dans ultralytics/nn/modules/block.py
forward(x, guide)
Passe en avant Ă travers la couche C2f.
forward_split(x, guide)
Passe en avant en utilisant split() au lieu de chunk().
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.ImagePoolingAttn
Bases : Module
ImagePoolingAttn : Améliore l'intégration du texte avec des informations sur les images.
Code source dans ultralytics/nn/modules/block.py
__init__(ec=256, ch=(), ct=512, nh=8, k=3, scale=False)
Initialise ImagePoolingAttn avec les arguments spécifiés.
Code source dans ultralytics/nn/modules/block.py
forward(x, text)
Exécute le mécanisme d'attention sur l'entrée tensor x et le guide tensor.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.ContrastiveHead
Bases : Module
Contrastive Head for YOLO-World calcule les scores région-texte en fonction de la similarité entre les caractéristiques de l'image et du texte. caractéristiques.
Code source dans ultralytics/nn/modules/block.py
__init__()
Initialise ContrastiveHead avec les paramètres de similarité région-texte spécifiés.
Code source dans ultralytics/nn/modules/block.py
forward(x, w)
Fonction d'avancement de l'apprentissage contrastif.
ultralytics.nn.modules.block.BNContrastiveHead
Bases : Module
Batch Norm Contrastive Head pour YOLO-World en utilisant la norme de lot au lieu de la normalisation l2.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
embed_dims |
int
|
Intégrer les dimensions des caractéristiques du texte et de l'image. |
requis |
Code source dans ultralytics/nn/modules/block.py
__init__(embed_dims)
Initialise ContrastiveHead avec les paramètres de similarité région-texte.
Code source dans ultralytics/nn/modules/block.py
forward(x, w)
Fonction d'avancement de l'apprentissage contrastif.
ultralytics.nn.modules.block.RepBottleneck
Bases : Bottleneck
Rep goulot d'Ă©tranglement.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, shortcut=True, g=1, k=(3, 3), e=0.5)
Initialise un module RepBottleneck avec des canaux d'entrée/sortie, une option de raccourci, des groupes et un taux d'expansion personnalisables. ratio.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.RepCSP
Bases : C3
Rep CSP Goulot d'Ă©tranglement avec 3 convolutions.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
Initialise la couche RepCSP avec les canaux, répétitions, raccourcis, groupes et taux d'expansion donnés.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.RepNCSPELAN4
Bases : Module
CSP-ELAN.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, c3, c4, n=1)
Initialise la couche CSP-ELAN avec les tailles de canaux, les répétitions et les convolutions spécifiées.
Code source dans ultralytics/nn/modules/block.py
forward(x)
Passe en avant Ă travers la couche RepNCSPELAN4.
forward_split(x)
Passe en avant en utilisant split() au lieu de chunk().
ultralytics.nn.modules.block.ADown
Bases : Module
ADown.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2)
Initialise le module ADown avec des couches de convolution pour sous-échantillonner l'entrée des canaux c1 à c2.
Code source dans ultralytics/nn/modules/block.py
forward(x)
Passe en avant Ă travers la couche ADown.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.SPPELAN
Bases : Module
SPP-ELAN.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2, c3, k=5)
Initialise le bloc SPP-ELAN avec les couches de convolution et de mise en commun maximale pour la mise en commun de la pyramide spatiale.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.Silence
Bases : Module
Le silence.
Code source dans ultralytics/nn/modules/block.py
__init__()
ultralytics.nn.modules.block.CBLinear
Bases : Module
CBLinear.
Code source dans ultralytics/nn/modules/block.py
__init__(c1, c2s, k=1, s=1, p=None, g=1)
Initialise le module CBLinear, en passant les entrées inchangées.
Code source dans ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.CBFuse
Bases : Module
CBFuse.
Code source dans ultralytics/nn/modules/block.py
__init__(idx)
Initialise le module CBFuse avec l'index des couches pour la fusion sélective des caractéristiques.
forward(xs)
Passage avant Ă travers la couche CBFuse.