์ฐธ์กฐ ultralytics/nn/modules/block.py
์ฐธ๊ณ
์ด ํ์ผ์ https://github.com/ultralytics/ ultralytics/blob/main/ ultralytics/nn/modules/block .py์์ ํ์ธํ ์ ์์ต๋๋ค. ๋ฌธ์ ๋ฅผ ๋ฐ๊ฒฌํ๋ฉด ํ ๋ฆฌํ์คํธ (๐ ๏ธ) ๋ฅผ ํตํด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋๋ก ๋์์ฃผ์ธ์. ๊ฐ์ฌํฉ๋๋ค ๐!
ultralytics.nn.modules.block.DFL
๋ฒ ์ด์ค: Module
๋ถํฌ ์ด์ ์์ค(DFL)์ ํตํฉ ๋ชจ๋์ ๋๋ค.
์ผ๋ฐํ๋ ์ด์ ์์ค์์ ์ ์๋จ https://ieeexplore.ieee.org/document/9792391
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1=16)
์ฃผ์ด์ง ์ ๋ ฅ ์ฑ๋ ์๋ก ์ปจ๋ณผ๋ฃจ์ ๋ ์ด์ด๋ฅผ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x)
์ ๋ ฅ tensor 'x'์ ํธ๋์คํฌ๋จธ ๋ ์ด์ด๋ฅผ ์ ์ฉํ๊ณ tensor ์ ๋ฐํํฉ๋๋ค.
ultralytics.nn.modules.block.Proto
๋ฒ ์ด์ค: Module
YOLOv8 ๋ง์คํฌ ์ธ๋ถํ ๋ชจ๋ธ์ฉ ํ๋กํ ๋ชจ๋์ ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c_=256, c2=32)
์ง์ ๋ ์์ ํ๋กํ ์ ๋ง์คํฌ๋ก YOLOv8 ๋ง์คํฌ ํ๋กํ ๋ชจ๋์ ์ด๊ธฐํํฉ๋๋ค.
์ ๋ ฅ ์ธ์๋ ch_in, ํ๋กํ ๊ฐ์, ๋ง์คํฌ ๊ฐ์์ ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x)
์ ์ํ๋ง๋ ์ ๋ ฅ ์ด๋ฏธ์ง๋ฅผ ์ฌ์ฉํ์ฌ ๋ ์ด์ด๋ฅผ ํต๊ณผํ๋ ํฌ์๋ ํจ์ค๋ฅผ ์ํํฉ๋๋ค.
ultralytics.nn.modules.block.HGStem
๋ฒ ์ด์ค: Module
5๊ฐ์ ์ปจ๋ณผ๋ฃจ์ ๊ณผ ํ๋์ maxpool2d๊ฐ ์๋ PPHGNetV2์ StemBlock.
https://github.com/PaddlePaddle/PaddleDetection/blob/develop/ppdet/modeling/backbones/hgnet_v2.py
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, cm, c2)
์ต๋ ํ๋ง์ ์ํด ์ ๋ ฅ/์ถ๋ ฅ ์ฑ๋๊ณผ ์ง์ ๋ ์ปค๋ ํฌ๊ธฐ๋ก SPP ๋ ์ด์ด๋ฅผ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x)
PPHGNetV2 ๋ฐฑ๋ณธ ๋ ์ด์ด์ ํฌ์๋ ํจ์ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.HGBlock
๋ฒ ์ด์ค: Module
2๊ฐ์ ์ปจ๋ณผ๋ฃจ์ ๊ณผ LightConv๊ฐ ํฌํจ๋ PPHGNetV2์ HG_Block.
https://github.com/PaddlePaddle/PaddleDetection/blob/develop/ppdet/modeling/backbones/hgnet_v2.py
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, cm, c2, k=3, n=6, lightconv=False, shortcut=False, act=nn.ReLU())
์ง์ ๋ ์ ๋ ฅ ๋ฐ ์ถ๋ ฅ ์ฑ๋์ ์ฌ์ฉํ์ฌ 1 ์ปจ๋ณผ๋ฃจ์ ์ผ๋ก CSP ๋ณ๋ชฉ ํ์์ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x)
PPHGNetV2 ๋ฐฑ๋ณธ ๋ ์ด์ด์ ํฌ์๋ ํจ์ค.
ultralytics.nn.modules.block.SPP
๋ฒ ์ด์ค: Module
๊ณต๊ฐ ํผ๋ผ๋ฏธ๋ ํ๋ง(SPP) ๋ ์ด์ด https://arxiv.org/abs/1406.4729.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, k=(5, 9, 13))
์ ๋ ฅ/์ถ๋ ฅ ์ฑ๋๊ณผ ํ๋ง ์ปค๋ ํฌ๊ธฐ๋ก SPP ๋ ์ด์ด๋ฅผ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x)
๊ณต๊ฐ ํผ๋ผ๋ฏธ๋ ํ๋ง์ ์ํํ๋ SPP ๋ ์ด์ด์ ํฌ์๋ ํจ์ค์ ๋๋ค.
ultralytics.nn.modules.block.SPPF
๋ฒ ์ด์ค: Module
๊ณต๊ฐ ํผ๋ผ๋ฏธ๋ ํ๋ง - ๋น ๋ฅธ(SPPF) ๋ ์ด์ด( YOLOv5 ์ฉ) ์์ฑ์: Glenn Jocher.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, k=5)
์ฃผ์ด์ง ์ ๋ ฅ/์ถ๋ ฅ ์ฑ๋๊ณผ ์ปค๋ ํฌ๊ธฐ๋ก SPPF ๋ ์ด์ด๋ฅผ ์ด๊ธฐํํฉ๋๋ค.
์ด ๋ชจ๋์ SPP(k=(5, 9, 13))์ ๋์ผํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x)
ultralytics.nn.modules.block.C1
๋ฒ ์ด์ค: Module
์ปจ๋ณผ๋ฃจ์ ์ด 1๊ฐ์ธ CSP ๋ณ๋ชฉ ํ์.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, n=1)
์ธ์ ch_in, ch_out, number๋ฅผ ์ฌ์ฉํ์ฌ 1 ์ปจ๋ณผ๋ฃจ์ ์ ๋ํ ๊ตฌ์ฑ์ผ๋ก CSP ๋ณ๋ชฉํ์์ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.C2
๋ฒ ์ด์ค: Module
2๊ฐ์ ์ปจ๋ณผ๋ฃจ์ ์ด ์๋ CSP ๋ณ๋ชฉ ํ์.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
์ธ์ ch_in, ch_out, number, ๋จ์ถํค๋ฅผ ์ฌ์ฉํ์ฌ 2๊ฐ์ ์ปจ๋ณผ๋ฃจ์ ๋ชจ๋๋ก CSP ๋ณดํ๋ฅ์ ์ด๊ธฐํํฉ๋๋ค, ๊ทธ๋ฃน, ํ์ฅ.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x)
ultralytics.nn.modules.block.C2f
๋ฒ ์ด์ค: Module
2๊ฐ์ ์ปจ๋ณผ๋ฃจ์ ์ผ๋ก CSP ๋ณ๋ชฉ ํ์์ ๋ ๋น ๋ฅด๊ฒ ๊ตฌํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=False, g=1, e=0.5)
์ธ์ ch_in, ch_out, number, shortcut, groups๋ฅผ ์ฌ์ฉํ์ฌ ๋ ๊ฐ์ ์ปจ๋ณผ๋ฃจ์ ์ผ๋ก CSP ๋ณ๋ชฉ ๊ณ์ธต์ ์ด๊ธฐํํฉ๋๋ค, ํ์ฅ.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x)
forward_split(x)
chunk() ๋์ split()์ ์ฌ์ฉํ์ฌ ์ ๋ฌํฉ๋๋ค.
ultralytics.nn.modules.block.C3
๋ฒ ์ด์ค: Module
3๊ฐ์ ์ปจ๋ณผ๋ฃจ์ ์ด ์๋ CSP ๋ณ๋ชฉ ํ์.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
์ฃผ์ด์ง ์ฑ๋, ์, ๋จ์ถํค, ๊ทธ๋ฃน ๋ฐ ํ์ฅ ๊ฐ์ผ๋ก CSP ๋ณ๋ชฉ ํ์์ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.C3x
๋ฒ ์ด์ค: C3
๊ต์ฐจ ์ปจ๋ณผ๋ฃจ์ ์ด ์๋ C3 ๋ชจ๋.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
C3TR ์ธ์คํด์ค๋ฅผ ์ด๊ธฐํํ๊ณ ๊ธฐ๋ณธ ๋งค๊ฐ๋ณ์๋ฅผ ์ค์ ํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.RepC3
๋ฒ ์ด์ค: Module
Rep C3.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, n=3, e=1.0)
์ ๋ ฅ ์ฑ๋, ์ถ๋ ฅ ์ฑ๋, ์ซ์๋ฅผ ์ฌ์ฉํ์ฌ ๋จ์ผ ์ปจ๋ณผ๋ฃจ์ ์ผ๋ก CSP ๋ณ๋ชฉ ํ์์ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.C3TR
๋ฒ ์ด์ค: C3
C3 ๋ชจ๋๊ณผ TransformerBlock().
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
GhostBottleneck()์ผ๋ก C3Ghost ๋ชจ๋์ ์ด๊ธฐํํฉ๋๋ค.
ultralytics.nn.modules.block.C3Ghost
๋ฒ ์ด์ค: C3
C3 ๋ชจ๋๊ณผ GhostBottleneck().
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
๊ณต๊ฐ ํผ๋ผ๋ฏธ๋ ํ๋ง์ ์ํด ๋ค์ํ ํ๋ง ํฌ๊ธฐ๋ก 'SPP' ๋ชจ๋์ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.GhostBottleneck
๋ฒ ์ด์ค: Module
๊ณ ์คํธ ๋ณ๋ชฉ ํ์ https://github.com/huawei-noah/ghostnet.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, k=3, s=1)
์ธ์ ch_in, ch_out, kernel, stride๋ก GhostBottleneck ๋ชจ๋์ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.Bottleneck
๋ฒ ์ด์ค: Module
ํ์ค ๋ณ๋ชฉ ํ์.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, shortcut=True, g=1, k=(3, 3), e=0.5)
์ฃผ์ด์ง ์ ๋ ฅ/์ถ๋ ฅ ์ฑ๋, ๋ฐ๋ก ๊ฐ๊ธฐ ์ต์ , ๊ทธ๋ฃน, ์ปค๋, ํ์ฅ์ผ๋ก ๋ณ๋ชฉ ๋ชจ๋์ ์ด๊ธฐํํฉ๋๋ค. ํ์ฅ.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.BottleneckCSP
๋ฒ ์ด์ค: Module
CSP ๋ณ๋ชฉ ํ์ https://github.com/WongKinYiu/CrossStagePartialNetworks.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
ch_in, ch_out, ์ซ์, ๋จ์ถํค, ๊ทธ๋ฃน, ํ์ฅ์ ๋ํ ์ธ์๊ฐ ์ฃผ์ด์ง๋ฉด CSP ๋ณ๋ชฉํ์์ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x)
3๊ฐ์ ์ปจ๋ณผ๋ฃจ์ ์ผ๋ก CSP ๋ณ๋ชฉ ํ์์ ์ ์ฉํฉ๋๋ค.
ultralytics.nn.modules.block.ResNetBlock
๋ฒ ์ด์ค: Module
ํ์ค ์ปจ๋ณผ๋ฃจ์ ๋ ์ด์ด๊ฐ ์๋ ResNet ๋ธ๋ก.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, s=1, e=4)
์ฃผ์ด์ง ํ๋ผ๋ฏธํฐ๋ก ์ปจ๋ณผ๋ฃจ์ ์ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.ResNetLayer
๋ฒ ์ด์ค: Module
์ฌ๋ฌ ๊ฐ์ ResNet ๋ธ๋ก์ด ์๋ ResNet ๋ ์ด์ด.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, s=1, is_first=False, n=1, e=4)
์ฃผ์ด์ง ์ธ์๋ก ResNetLayer๋ฅผ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.MaxSigmoidAttnBlock
๋ฒ ์ด์ค: Module
์ต๋ ์๊ทธ๋ชจ์ด๋ ์ฃผ์ ์ฐจ๋จ.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, nh=1, ec=128, gc=512, scale=False)
์ง์ ๋ ์ธ์๋ฅผ ์ฌ์ฉํ์ฌ MaxSigmoidAttnBlock์ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x, guide)
์ ๋ฌ ํ๋ก์ธ์ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.C2fAttn
๋ฒ ์ด์ค: Module
C2f ๋ชจ๋๊ณผ ์ถ๊ฐ attn ๋ชจ๋.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, ec=128, nh=1, gc=512, shortcut=False, g=1, e=0.5)
์ธ์ ch_in, ch_out, number, shortcut, groups๋ฅผ ์ฌ์ฉํ์ฌ ๋ ๊ฐ์ ์ปจ๋ณผ๋ฃจ์ ์ผ๋ก CSP ๋ณ๋ชฉ ๊ณ์ธต์ ์ด๊ธฐํํฉ๋๋ค, ํ์ฅ.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x, guide)
C2f ๋ ์ด์ด๋ฅผ ํต๊ณผํฉ๋๋ค.
forward_split(x, guide)
chunk() ๋์ split()์ ์ฌ์ฉํ์ฌ ์ ๋ฌํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.ImagePoolingAttn
๋ฒ ์ด์ค: Module
์ด๋ฏธ์ง ํ๋ง: ์ด๋ฏธ์ง ์ธ์ ์ ๋ณด๋ก ํ ์คํธ ์๋ฒ ๋ฉ์ ๊ฐ์ ํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(ec=256, ch=(), ct=512, nh=8, k=3, scale=False)
์ง์ ๋ ์ธ์๋ฅผ ์ฌ์ฉํ์ฌ ImagePoolingAttn์ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x, text)
์ ๋ ฅ tensor x ๋ฐ ๊ฐ์ด๋ tensor ์ ๋ํ ์ฃผ์ ๋ฉ์ปค๋์ฆ์ ์คํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.ContrastiveHead
๋ฒ ์ด์ค: Module
์ด๋ฏธ์ง์ ํ ์คํธ์ ์ ์ฌ๋์ ๋ฐ๋ผ ์์ญ-ํ ์คํธ ์ ์๋ฅผ ๊ณ์ฐํ๋ YOLO-World์ ๋๋น ํค๋ ๊ธฐ๋ฅ์ ์ฌ์ฉํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__()
์ง์ ๋ ์์ญ-ํ ์คํธ ์ ์ฌ์ฑ ํ๋ผ๋ฏธํฐ๋ก ContrastiveHead๋ฅผ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x, w)
๋์กฐ ํ์ต์ ์๋ฐฉํฅ ๊ธฐ๋ฅ.
ultralytics.nn.modules.block.BNContrastiveHead
๋ฒ ์ด์ค: Module
๋ฐฐ์น ๋ ธ๋ฉ๋ผ์ด์ ์ด์ ๋๋น ํค๋ YOLO-์ธ๊ณ์์ l2 ๋ ธ๋ฉ๋ผ์ด์ ์ด์ ๋์ ๋ฐฐ์น ๋ ธ๋ฉ๋ผ์ด์ ์ด์ ์ ์ฌ์ฉํฉ๋๋ค.
๋งค๊ฐ๋ณ์:
์ด๋ฆ | ์ ํ | ์ค๋ช | ๊ธฐ๋ณธ๊ฐ |
---|---|---|---|
embed_dims |
int
|
ํ ์คํธ ๋ฐ ์ด๋ฏธ์ง ๊ธฐ๋ฅ์ ์น์๋ฅผ ํฌํจํฉ๋๋ค. |
ํ์ |
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(embed_dims)
์ง์ญ-ํ ์คํธ ์ ์ฌ์ฑ ํ๋ผ๋ฏธํฐ๋ก ContrastiveHead๋ฅผ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x, w)
๋์กฐ ํ์ต์ ์๋ฐฉํฅ ๊ธฐ๋ฅ.
ultralytics.nn.modules.block.RepBottleneck
๋ฒ ์ด์ค: Bottleneck
๋ด๋น์ ๋ณ๋ชฉํ์.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, shortcut=True, g=1, k=(3, 3), e=0.5)
์ฌ์ฉ์ ์ง์ ๊ฐ๋ฅํ ์ธ/์์ ์ฑ๋, ๋ฐ๋ก ๊ฐ๊ธฐ ์ต์ , ๊ทธ๋ฃน ๋ฐ ํ์ฅ ๋น์จ์ ์ฌ์ฉํ์ฌ RepBottleneck ๋ชจ๋์ ์ด๊ธฐํํฉ๋๋ค. ๋น์จ๋ก ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.RepCSP
๋ฒ ์ด์ค: C3
3๊ฐ์ ์ปจ๋ณผ๋ฃจ์ ์ผ๋ก CSP ๋ณ๋ชฉ ํ์์ ์ฌํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, n=1, shortcut=True, g=1, e=0.5)
์ง์ ๋ ์ฑ๋, ๋ฐ๋ณต, ๋ฐ๋ก ๊ฐ๊ธฐ, ๊ทธ๋ฃน ๋ฐ ํ์ฅ ๋น์จ๋ก RepCSP ๋ ์ด์ด๋ฅผ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.RepNCSPELAN4
๋ฒ ์ด์ค: Module
CSP-ELAN.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, c3, c4, n=1)
์ง์ ๋ ์ฑ๋ ํฌ๊ธฐ, ๋ฐ๋ณต ๋ฐ ์ปจ๋ณผ๋ฃจ์ ์ ์ฌ์ฉํ์ฌ CSP-ELAN ๋ ์ด์ด๋ฅผ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x)
RepNCSPELAN4 ๋ ์ด์ด๋ฅผ ํฌ์๋ ์ ๋ฌํฉ๋๋ค.
forward_split(x)
chunk() ๋์ split()์ ์ฌ์ฉํ์ฌ ์ ๋ฌํฉ๋๋ค.
ultralytics.nn.modules.block.ADown
๋ฒ ์ด์ค: Module
ADown.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2)
์ฑ๋ c1์์ c2๋ก ์ ๋ ฅ์ ๋ค์ด์ํ๋งํ๊ธฐ ์ํด ์ปจ๋ณผ๋ฃจ์ ๋ ์ด์ด๋ก AD๋ค์ด ๋ชจ๋์ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x)
AD๋ค์ด ๋ ์ด์ด๋ฅผ ํตํด ์ ๋ฌํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.SPPELAN
๋ฒ ์ด์ค: Module
SPP-ELAN.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2, c3, k=5)
๊ณต๊ฐ ํผ๋ผ๋ฏธ๋ ํ๋ง์ ์ํด ์ปจ๋ณผ๋ฃจ์ ๋ฐ ์ต๋ ํ๋ง ๋ ์ด์ด๋ก SPP-ELAN ๋ธ๋ก์ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
forward(x)
ultralytics.nn.modules.block.Silence
๋ฒ ์ด์ค: Module
์นจ๋ฌต.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__()
ultralytics.nn.modules.block.CBLinear
๋ฒ ์ด์ค: Module
CBLinear.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(c1, c2s, k=1, s=1, p=None, g=1)
์ ๋ ฅ์ ๋ณ๊ฒฝํ์ง ์๊ณ ์ ๋ฌํ์ฌ CBLinear ๋ชจ๋์ ์ด๊ธฐํํฉ๋๋ค.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
ultralytics.nn.modules.block.CBFuse
๋ฒ ์ด์ค: Module
CBFuse.
์ ์์ค ์ฝ๋ ultralytics/nn/modules/block.py
__init__(idx)
์ ํ์ ๊ธฐ๋ฅ ์ตํฉ์ ์ํด ๋ ์ด์ด ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ์ฌ CBFuse ๋ชจ๋์ ์ด๊ธฐํํฉ๋๋ค.
forward(xs)
CBFuse ๋ ์ด์ด๋ฅผ ์ ๋ฌํฉ๋๋ค.