MCPcopy Create free account
hub / github.com/FoundationVision/ByteTrack / BasicBlock

Class BasicBlock

yolox/deepsort_tracker/reid_model.py:10–45  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

8
9
10class BasicBlock(nn.Module):
11 def __init__(self, c_in, c_out, is_downsample=False):
12 super(BasicBlock, self).__init__()
13 self.is_downsample = is_downsample
14 if is_downsample:
15 self.conv1 = nn.Conv2d(
16 c_in, c_out, 3, stride=2, padding=1, bias=False)
17 else:
18 self.conv1 = nn.Conv2d(
19 c_in, c_out, 3, stride=1, padding=1, bias=False)
20 self.bn1 = nn.BatchNorm2d(c_out)
21 self.relu = nn.ReLU(True)
22 self.conv2 = nn.Conv2d(c_out, c_out, 3, stride=1,
23 padding=1, bias=False)
24 self.bn2 = nn.BatchNorm2d(c_out)
25 if is_downsample:
26 self.downsample = nn.Sequential(
27 nn.Conv2d(c_in, c_out, 1, stride=2, bias=False),
28 nn.BatchNorm2d(c_out)
29 )
30 elif c_in != c_out:
31 self.downsample = nn.Sequential(
32 nn.Conv2d(c_in, c_out, 1, stride=1, bias=False),
33 nn.BatchNorm2d(c_out)
34 )
35 self.is_downsample = True
36
37 def forward(self, x):
38 y = self.conv1(x)
39 y = self.bn1(y)
40 y = self.relu(y)
41 y = self.conv2(y)
42 y = self.bn2(y)
43 if self.is_downsample:
44 x = self.downsample(x)
45 return F.relu(x.add(y), True)
46
47
48def make_layers(c_in, c_out, repeat_times, is_downsample=False):

Callers 1

make_layersFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected