yolov5 FOCUS模块作用

class Focus(nn.Module): 
     # Focus wh information into c-space 
     def __init__(self, c1, c2, k=1, s=1, p=None, g=1, act=True):  # ch_in, ch_out, kernel, stride, padding, groups 
         super(Focus, self).__init__() 
         self.conv = Conv(c1 * 4, c2, k, s, p, g, act) 
         # self.contract = Contract(gain=2) 
  
     def forward(self, x):  # x(b,c,w,h) -> y(b,4c,w/2,h/2) 
         return self.conv(torch.cat([x[..., ::2, ::2], x[..., 1::2, ::2], x[..., ::2, 1::2], x[..., 1::2, 1::2]], 1)) 

yolov5 FOCUS模块作用_第1张图片
issus
结论:使用FOCUS模块,减少了网络的层数、减少了网络中的参数、减少了运算次数、减少占用CUDA内存、提高前向传播和反向传播的速度,同时将对mAP的影响降至最低。

你可能感兴趣的:(深度学习,python,深度学习,开发语言)