def __init__(self, configer): super(Vgg16SSD512, self).__init__() self.configer = configer self.backbone = vgg_backbone(configer).named_modules() cnt = 0 self.sub_backbone_1 = nn.ModuleList() self.sub_backbone_2 = nn.ModuleList() for key, module in self.backbone: if len(key.split('.')) < 2: continue if cnt < 23: self.sub_backbone_1.append(module) else: self.sub_backbone_2.append(module) cnt += 1 self.norm4 = L2Norm(512, 20) self.ssd_head = SSDHead(configer) self.ssd_detection_layer = SSDDetectionLayer(configer) self.ssd_target_generator = SSDTargetGenerator(configer) self.valid_loss_dict = configer.get('loss', 'loss_weights', configer.get('loss.loss_type'))
def __init__(self, configer): super(LFFDv2, self).__init__() self.configer = configer # conv block 1 --------------------------------------------------------------------------------------- self.conv1 = nn.Conv2d(3, num_filters_list[1], kernel_size=3, stride=(2, 2), padding=(0, 0)) self.relu1 = nn.ReLU() # conv block 2 ---------------------------------------------------------------------------------------- self.conv2 = nn.Conv2d(num_filters_list[1], num_filters_list[1], kernel_size=3, stride=(2, 2), padding=(0, 0)) self.relu2 = nn.ReLU() # conv block 3 ---------------------------------------------------------------------------------------- self.conv3 = nn.Conv2d(num_filters_list[1], num_filters_list[1], kernel_size=3, stride=(1, 1), padding=(1, 1)) self.relu3 = nn.ReLU() # conv block 4 ---------------------------------------------------------------------------------------- self.conv4 = nn.Conv2d(num_filters_list[1], num_filters_list[1], kernel_size=3, stride=(1, 1), padding=(1, 1)) self.relu4 = nn.ReLU() # conv block 5 ---------------------------------------------------------------------------------------- self.conv5 = nn.Conv2d(num_filters_list[1], num_filters_list[1], kernel_size=3, stride=(1, 1), padding=(1, 1)) self.relu5 = nn.ReLU() # conv block 6 ---------------------------------------------------------------------------------------- self.conv6 = nn.Conv2d(num_filters_list[1], num_filters_list[1], kernel_size=3, stride=(1, 1), padding=(1, 1)) self.relu6 = nn.ReLU() # conv block 7 ---------------------------------------------------------------------------------------- self.conv7 = nn.Conv2d(num_filters_list[1], num_filters_list[1], kernel_size=3, stride=(1, 1), padding=(1, 1)) self.relu7 = nn.ReLU() # conv block 8 ---------------------------------------------------------------------------------------- self.conv8 = nn.Conv2d(num_filters_list[1], num_filters_list[1], kernel_size=3, stride=(1, 1), padding=(1, 1)) self.relu8 = nn.ReLU() # conv block 9 ---------------------------------------------------------------------------------------- self.conv9 = nn.Conv2d(num_filters_list[1], num_filters_list[1], kernel_size=3, stride=(2, 2), padding=(0, 0)) self.relu9 = nn.ReLU() # conv block 10 ---------------------------------------------------------------------------------------- self.conv10 = nn.Conv2d(num_filters_list[1], num_filters_list[1], kernel_size=3, stride=(1, 1), padding=(1, 1)) self.relu10 = nn.ReLU() # conv block 11 ---------------------------------------------------------------------------------------- self.conv11 = nn.Conv2d(num_filters_list[1], num_filters_list[1], kernel_size=3, stride=(1, 1), padding=(1, 1)) self.relu11 = nn.ReLU() # conv block 12 ---------------------------------------------------------------------------------------- self.conv12 = nn.Conv2d(num_filters_list[1], num_filters_list[1], kernel_size=3, stride=(2, 2), padding=(0, 0)) self.relu12 = nn.ReLU() # conv block 13 ---------------------------------------------------------------------------------------- self.conv13 = nn.Conv2d(num_filters_list[1], num_filters_list[1], kernel_size=3, stride=(1, 1), padding=(1, 1)) self.relu13 = nn.ReLU() # conv block 14 ---------------------------------------------------------------------------------------- self.conv14 = nn.Conv2d(num_filters_list[1], num_filters_list[1], kernel_size=3, stride=(1, 1), padding=(1, 1)) self.relu14 = nn.ReLU() # conv block 15 ---------------------------------------------------------------------------------------- self.conv15 = nn.Conv2d(num_filters_list[1], num_filters_list[2], kernel_size=3, stride=(2, 2), padding=(0, 0)) self.relu15 = nn.ReLU() # conv block 16 ---------------------------------------------------------------------------------------- self.conv16 = nn.Conv2d(num_filters_list[2], num_filters_list[2], kernel_size=3, stride=(1, 1), padding=(1, 1)) self.relu16 = nn.ReLU() # conv block 17 ---------------------------------------------------------------------------------------- self.conv17 = nn.Conv2d(num_filters_list[2], num_filters_list[2], kernel_size=3, stride=(1, 1), padding=(1, 1)) self.relu17 = nn.ReLU() # conv block 18 ----------------------------num_nonzero-------------------------------------------------------- self.conv18 = nn.Conv2d(num_filters_list[2], num_filters_list[2], kernel_size=3, stride=(2, 2), padding=(0, 0)) self.relu18 = nn.ReLU() # conv block 19 ---------------------------------------------------------------------------------------- self.conv19 = nn.Conv2d(num_filters_list[2], num_filters_list[2], kernel_size=3, stride=(1, 1), padding=(1, 1)) self.relu19 = nn.ReLU() # conv block 20 ---------------------------------------------------------------------------------------- self.conv20 = nn.Conv2d(num_filters_list[2], num_filters_list[2], kernel_size=3, stride=(1, 1), padding=(1, 1)) self.relu20 = nn.ReLU() self.ssd_detection_layer = DetectionLayer(configer) self.ssd_target_generator = SSDTargetGenerator(configer) self.valid_loss_dict = configer.get('loss', 'loss_weights', configer.get('loss.loss_type'))
def __init__(self, configer): super(MultiBoxLoss, self).__init__() self.num_classes = configer.get('data', 'num_classes') self.ssd_target_generator = SSDTargetGenerator(configer)