在代码注释中看到C2f其实是
CSP Bottleneck with 2 convolutions
找来CSP的图

大致是把一个output按channel拆成2部分,其中一部分不动,
另一部分过conv,再拼回去,
因为是with 2 convolutions, 会有2个conv.
下面根据代码来走一遍流程:
在ultralytics/nn/modules/block.py
class C2f(nn.Module):
"""CSP Bottleneck with 2 convolutions."""
def __init__(self, c1, c2, n=1, shortcut=False, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion
super().__init__()
self.c = int(c2 * e) # hidden channels
self.cv1
3680



被折叠的 条评论
为什么被折叠?



