Esempio n. 1
0
    def initialize(self, ksize, filters, stride, expand):
        self.outchn = filters
        self.expand = expand
        self.stride = stride
        outchn = filters * expand
        self.bn0 = M.BatchNorm()
        self.c0 = M.ConvLayer(1,
                              outchn,
                              usebias=False,
                              batch_norm=True,
                              activation=M.PARAM_PRELU)
        self.c1 = M.DWConvLayer(ksize,
                                1,
                                stride=stride,
                                usebias=False,
                                batch_norm=True,
                                activation=M.PARAM_PRELU)

        # se
        self.se1 = M.ConvLayer(1, outchn // 8, activation=M.PARAM_PRELU)
        self.se2 = M.ConvLayer(1, outchn, activation=M.PARAM_SIGMOID)

        self.c2 = M.ConvLayer(1, filters, batch_norm=True, usebias=False)

        self.sc = M.ConvLayer(1,
                              filters,
                              stride=stride,
                              batch_norm=True,
                              usebias=False)
Esempio n. 2
0
 def initialize(self, out, stride):
     self.c1 = M.DWConvLayer(5, 1, stride=stride, usebias=False)
     self.c2 = M.ConvLayer(1, out, usebias=False, batch_norm=True)
Esempio n. 3
0
    def initialize(self):
        self.c1 = M.ConvLayer(3,
                              8,
                              stride=2,
                              usebias=False,
                              batch_norm=True,
                              activation=M.PARAM_RELU)
        self.c2 = M.DWConvLayer(3,
                                1,
                                usebias=False,
                                batch_norm=True,
                                activation=M.PARAM_RELU)
        self.c3 = M.ConvLayer(1,
                              16,
                              usebias=False,
                              batch_norm=True,
                              activation=M.PARAM_RELU)
        self.c4 = M.DWConvLayer(3,
                                1,
                                stride=2,
                                usebias=False,
                                batch_norm=True,
                                activation=M.PARAM_RELU)
        self.c5 = M.ConvLayer(1,
                              32,
                              usebias=False,
                              batch_norm=True,
                              activation=M.PARAM_RELU)
        self.c6 = M.DWConvLayer(3,
                                1,
                                usebias=False,
                                batch_norm=True,
                                activation=M.PARAM_RELU)
        self.c7 = M.ConvLayer(1,
                              32,
                              usebias=False,
                              batch_norm=True,
                              activation=M.PARAM_RELU)
        self.c8 = M.DWConvLayer(3,
                                1,
                                stride=2,
                                usebias=False,
                                batch_norm=True,
                                activation=M.PARAM_RELU)
        self.c9 = M.ConvLayer(1,
                              64,
                              usebias=False,
                              batch_norm=True,
                              activation=M.PARAM_RELU)
        self.c10 = M.DWConvLayer(3,
                                 1,
                                 usebias=False,
                                 batch_norm=True,
                                 activation=M.PARAM_RELU)
        self.c11 = M.ConvLayer(1,
                               64,
                               usebias=False,
                               batch_norm=True,
                               activation=M.PARAM_RELU)

        self.c12 = M.DWConvLayer(3,
                                 1,
                                 stride=2,
                                 usebias=False,
                                 batch_norm=True,
                                 activation=M.PARAM_RELU)
        self.c13 = M.ConvLayer(1,
                               128,
                               usebias=False,
                               batch_norm=True,
                               activation=M.PARAM_RELU)
        self.c14 = M.DWConvLayer(3,
                                 1,
                                 usebias=False,
                                 batch_norm=True,
                                 activation=M.PARAM_RELU)
        self.c15 = M.ConvLayer(1,
                               128,
                               usebias=False,
                               batch_norm=True,
                               activation=M.PARAM_RELU)
        self.c16 = M.DWConvLayer(3,
                                 1,
                                 usebias=False,
                                 batch_norm=True,
                                 activation=M.PARAM_RELU)
        self.c17 = M.ConvLayer(1,
                               128,
                               usebias=False,
                               batch_norm=True,
                               activation=M.PARAM_RELU)
        self.c18 = M.DWConvLayer(3,
                                 1,
                                 usebias=False,
                                 batch_norm=True,
                                 activation=M.PARAM_RELU)
        self.c19 = M.ConvLayer(1,
                               128,
                               usebias=False,
                               batch_norm=True,
                               activation=M.PARAM_RELU)
        self.c20 = M.DWConvLayer(3,
                                 1,
                                 usebias=False,
                                 batch_norm=True,
                                 activation=M.PARAM_RELU)
        self.c21 = M.ConvLayer(1,
                               128,
                               usebias=False,
                               batch_norm=True,
                               activation=M.PARAM_RELU)
        self.c22 = M.DWConvLayer(3,
                                 1,
                                 usebias=False,
                                 batch_norm=True,
                                 activation=M.PARAM_RELU)
        self.c23 = M.ConvLayer(1,
                               128,
                               usebias=False,
                               batch_norm=True,
                               activation=M.PARAM_RELU)

        self.c24 = M.DWConvLayer(3,
                                 1,
                                 stride=2,
                                 usebias=False,
                                 batch_norm=True,
                                 activation=M.PARAM_RELU)
        self.c25 = M.ConvLayer(1,
                               256,
                               usebias=False,
                               batch_norm=True,
                               activation=M.PARAM_RELU)
        self.c26 = M.DWConvLayer(3,
                                 1,
                                 usebias=False,
                                 batch_norm=True,
                                 activation=M.PARAM_RELU)
        self.c27 = M.ConvLayer(1,
                               256,
                               usebias=False,
                               batch_norm=True,
                               activation=M.PARAM_RELU)
        self.bn_eps(1e-5)

        self.rf_c3_lateral = M.ConvLayer(1,
                                         64,
                                         batch_norm=True,
                                         activation=M.PARAM_RELU)
        self.rf_c3_lateral.bn_eps(2e-5)
        self.det3 = DETHead()
        self.det3.bn_eps(2e-5)

        self.rf_c2_lateral = M.ConvLayer(1,
                                         64,
                                         batch_norm=True,
                                         activation=M.PARAM_RELU)
        self.rf_c2_lateral.bn_eps(2e-5)
        self.rf_c3_upsampling = M.NNUpSample(2)
        self.rf_c2_aggr = M.ConvLayer(3,
                                      64,
                                      batch_norm=True,
                                      activation=M.PARAM_RELU)
        self.rf_c2_aggr.bn_eps(2e-5)
        self.det2 = DETHead()
        self.det2.bn_eps(2e-5)

        self.rf_c1_red_conv = M.ConvLayer(1,
                                          64,
                                          batch_norm=True,
                                          activation=M.PARAM_RELU)
        self.rf_c1_red_conv.bn_eps(2e-5)
        self.rf_c2_upsampling = M.NNUpSample(2)
        self.rf_c1_aggr = M.ConvLayer(3,
                                      64,
                                      batch_norm=True,
                                      activation=M.PARAM_RELU)
        self.rf_c1_aggr.bn_eps(2e-5)
        self.det1 = DETHead()
        self.det1.bn_eps(2e-5)

        self.head32 = RegressHead()
        self.head16 = RegressHead()
        self.head8 = RegressHead()