Spaces:
Running
Running
File size: 1,022 Bytes
5e014de |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
import torch
import torch.nn as nn
import torch.nn.functional as F
BatchNorm2d = nn.BatchNorm2d
def conv3x3(in_planes, out_planes, stride = 1):
"""3x3 convolution with padding"""
return nn.Conv2d(in_planes, out_planes, kernel_size = 3, stride = stride,
padding = 1, bias = False)
def conv1x1(in_planes, out_planes, stride = 1):
"""3x3 convolution with padding"""
return nn.Conv2d(in_planes, out_planes, kernel_size = 1, stride = stride,
padding = 0, bias = False)
class BasicBlock(nn.Module):
def __init__(self, inplanes, outplanes, stride = 1):
super(BasicBlock, self).__init__()
self.conv1 = conv3x3(inplanes, outplanes, stride)
self.bn1 = BatchNorm2d(outplanes)
self.relu = nn.ReLU(inplace = True)
self.conv2 = conv3x3(outplanes, outplanes, 2*stride)
def forward(self, x):
out = self.conv1(x)
out = self.bn1(out)
out = self.relu(out)
out = self.conv2(out)
return out |