Beispiel #1
0
 def __init__(self,
              n_filter=128,
              n_confmaps=19,
              n_pafmaps=38,
              data_format="channels_first"):
     super().__init__()
     self.data_format = data_format
     self.main_block = layers.LayerList([
         Conv2d(n_filter=n_filter,
                in_channels=n_filter,
                act=tf.nn.relu,
                data_format=self.data_format),
         Conv2d(n_filter=n_filter,
                in_channels=n_filter,
                act=tf.nn.relu,
                data_format=self.data_format),
         Conv2d(n_filter=n_filter,
                in_channels=n_filter,
                act=tf.nn.relu,
                data_format=self.data_format)
     ])
     self.conf_block=layers.LayerList([
     Conv2d(n_filter=512,in_channels=n_filter,filter_size=(1,1),strides=(1,1),act=tf.nn.relu,W_init=initializer,\
             b_init=initializer,data_format=self.data_format),
     Conv2d(n_filter=n_confmaps,in_channels=512,filter_size=(1,1),strides=(1,1),W_init=initializer,\
             b_init=initializer,data_format=self.data_format)
     ])
     self.paf_block=layers.LayerList([
     Conv2d(n_filter=512,in_channels=n_filter,filter_size=(1,1),strides=(1,1),act=tf.nn.relu,W_init=initializer,\
         b_init=initializer,data_format=self.data_format),
     Conv2d(n_filter=n_pafmaps,in_channels=512,filter_size=(1,1),strides=(1,1),W_init=initializer,\
         b_init=initializer,data_format=self.data_format)
     ])
Beispiel #2
0
 def __init__(self,
              n_filter=128,
              in_channels=185,
              n_confmaps=19,
              n_pafmaps=38,
              data_format="channels_first"):
     super().__init__()
     self.data_format = data_format
     self.block_1 = self.Refinement_block(n_filter=n_filter,
                                          in_channels=in_channels,
                                          data_format=self.data_format)
     self.block_2 = self.Refinement_block(n_filter=n_filter,
                                          in_channels=n_filter,
                                          data_format=self.data_format)
     self.block_3 = self.Refinement_block(n_filter=n_filter,
                                          in_channels=n_filter,
                                          data_format=self.data_format)
     self.block_4 = self.Refinement_block(n_filter=n_filter,
                                          in_channels=n_filter,
                                          data_format=self.data_format)
     self.block_5 = self.Refinement_block(n_filter=n_filter,
                                          in_channels=n_filter,
                                          data_format=self.data_format)
     self.conf_block=layers.LayerList([
     Conv2d(n_filter=512,in_channels=n_filter,filter_size=(1,1),strides=(1,1),act=tf.nn.relu,W_init=initializer,b_init=initializer,\
         data_format=self.data_format),
     Conv2d(n_filter=n_confmaps,in_channels=512,filter_size=(1,1),strides=(1,1),W_init=initializer,b_init=initializer,\
         data_format=self.data_format)
     ])
     self.paf_block=layers.LayerList([
     Conv2d(n_filter=512,in_channels=n_filter,filter_size=(1,1),strides=(1,1),act=tf.nn.relu,W_init=initializer,b_init=initializer,\
         data_format=self.data_format),
     Conv2d(n_filter=n_pafmaps,in_channels=512,filter_size=(1,1),strides=(1,1),W_init=initializer,b_init=initializer,\
         data_format=self.data_format)
     ])
Beispiel #3
0
def nobn_dw_conv_block(n_filter,
                       in_channels,
                       filter_size=(3, 3),
                       strides=(1, 1),
                       W_init=initializer,
                       b_init=initializer,
                       data_format="channels_first"):
    layer_list = []
    layer_list.append(
        DepthwiseConv2d(filter_size=filter_size,
                        strides=strides,
                        in_channels=in_channels,
                        act=tf.nn.relu,
                        W_init=initializer,
                        b_init=None,
                        data_format=data_format))
    layer_list.append(
        Conv2d(n_filter=n_filter,
               filter_size=(1, 1),
               strides=(1, 1),
               in_channels=in_channels,
               act=tf.nn.relu,
               W_init=initializer,
               b_init=None,
               data_format=data_format))
    return layers.LayerList(layer_list)
Beispiel #4
0
 def __init__(self,in_channels=3,data_format="channels_first",pretrained=True):
     super().__init__()
     self.data_format=data_format
     self.pretrained=pretrained
     self.transpose=False
     self.out_channels=512
     if(self.data_format=="channel_last"):
         self.main_block=tl.models.vgg19(pretrained=self.pretrained,end_with="conv4_2")
     else:
         if(self.pretrained):
             print("only channels_last pretrained vgg19 available, adding transpose")
             self.main_block=tl.models.vgg19(pretrained=self.pretrained,end_with="conv4_2")
             self.transpose=True
         else:
             self.main_block=layers.LayerList([
             self.conv_block(n_filter=64,in_channels=3,filter_size=(3,3),strides=(1,1),act=tf.nn.relu),
             self.conv_block(n_filter=64,in_channels=64,filter_size=(3,3),strides=(1,1),act=tf.nn.relu),
             MaxPool2d(filter_size=(2,2),strides=(2,2),data_format=self.data_format),
             self.conv_block(n_filter=128,in_channels=64,filter_size=(3,3),strides=(1,1),act=tf.nn.relu),
             self.conv_block(n_filter=128,in_channels=128,filter_size=(3,3),strides=(1,1),act=tf.nn.relu),
             MaxPool2d(filter_size=(2,2),strides=(2,2),data_format=self.data_format),
             self.conv_block(n_filter=256,in_channels=128,filter_size=(3,3),strides=(1,1),act=tf.nn.relu),
             self.conv_block(n_filter=256,in_channels=256,filter_size=(3,3),strides=(1,1),act=tf.nn.relu),
             self.conv_block(n_filter=256,in_channels=256,filter_size=(3,3),strides=(1,1),act=tf.nn.relu),
             self.conv_block(n_filter=256,in_channels=256,filter_size=(3,3),strides=(1,1),act=tf.nn.relu),
             MaxPool2d(filter_size=(2,2),strides=(2,2),data_format=self.data_format),
             self.conv_block(n_filter=512,in_channels=256,filter_size=(3,3),strides=(1,1),act=tf.nn.relu),
             self.conv_block(n_filter=512,in_channels=512,filter_size=(3,3),strides=(1,1),act=tf.nn.relu)
             ])
Beispiel #5
0
 def __init__(self,
              n_filter=128,
              in_channels=512,
              data_format="channels_first"):
     super().__init__()
     self.data_format = data_format
     self.init_layer = Conv2d(n_filter=n_filter,
                              in_channels=in_channels,
                              filter_size=(1, 1),
                              act=tf.nn.relu,
                              data_format=self.data_format)
     self.main_block = layers.LayerList([
         conv_block(n_filter=n_filter,
                    in_channels=n_filter,
                    data_format=self.data_format),
         conv_block(n_filter=n_filter,
                    in_channels=n_filter,
                    data_format=self.data_format),
         conv_block(n_filter=n_filter,
                    in_channels=n_filter,
                    data_format=self.data_format),
     ])
     self.end_layer = Conv2d(n_filter=n_filter,
                             in_channels=n_filter,
                             filter_size=(3, 3),
                             act=tf.nn.relu,
                             data_format=self.data_format)
Beispiel #6
0
def separable_block(n_filter=32,in_channels=3,filter_size=(3,3),strides=(1,1),dilation_rate=(1,1),act=tf.nn.relu,data_format="channels_first"):
    layer_list=[]
    layer_list.append(DepthwiseConv2d(filter_size=filter_size,strides=strides,in_channels=in_channels,
        dilation_rate=dilation_rate,W_init=initial_w,b_init=None,data_format=data_format))
    layer_list.append(BatchNorm2d(decay=0.99,act=act,num_features=in_channels,data_format=data_format,is_train=True))
    layer_list.append(Conv2d(n_filter=n_filter,filter_size=(1,1),strides=(1,1),in_channels=in_channels,W_init=initial_w,b_init=None,data_format=data_format))
    layer_list.append(BatchNorm2d(decay=0.99,act=act,num_features=n_filter,data_format=data_format,is_train=True))
    return layers.LayerList(layer_list)
Beispiel #7
0
 def __init__(self,n_filter,in_channels,data_format="channels_first"):
     super().__init__()
     self.data_format=data_format
     self.init_layer=Conv2d(n_filter=n_filter,filter_size=(1,1),in_channels=in_channels,act=tf.nn.relu,data_format=self.data_format)
     self.main_block=layers.LayerList([
     conv_block(n_filter=n_filter,in_channels=n_filter,data_format=self.data_format),
     conv_block(n_filter=n_filter,in_channels=n_filter,dilation_rate=(1,1),data_format=self.data_format)
     ])
Beispiel #8
0
 def __init__(self,n_confmaps=19,n_pafmaps=38,in_channels=128,data_format="channels_first"):
     super().__init__()
     self.n_confmaps=n_confmaps
     self.n_pafmaps=n_pafmaps
     self.in_channels=in_channels
     self.data_format=data_format
     self.conf_block=layers.LayerList([
         Conv2d(n_filter=128,in_channels=self.in_channels,filter_size=(3,3),strides=(1,1),padding="SAME",act=tf.nn.relu,W_init=initial_w,b_init=initial_b,data_format=self.data_format),
         Conv2d(n_filter=128,in_channels=128,filter_size=(3,3),strides=(1,1),padding="SAME",act=tf.nn.relu,W_init=initial_w,b_init=initial_b,data_format=self.data_format),
         Conv2d(n_filter=128,in_channels=128,filter_size=(3,3),strides=(1,1),padding="SAME",act=tf.nn.relu,W_init=initial_w,b_init=initial_b,data_format=self.data_format),
         Conv2d(n_filter=512,in_channels=128,filter_size=(1,1),strides=(1,1),padding="SAME",act=tf.nn.relu,W_init=initial_w,b_init=initial_b,data_format=self.data_format),
         Conv2d(n_filter=self.n_confmaps,in_channels=512,filter_size=(1,1),strides=(1,1),padding="SAME",act=tf.nn.relu,W_init=initial_w,b_init=initial_b,data_format=self.data_format)
     ])
     self.paf_block=layers.LayerList([
         Conv2d(n_filter=128,in_channels=self.in_channels,filter_size=(3,3),strides=(1,1),padding="SAME",act=tf.nn.relu,W_init=initial_w,b_init=initial_b,data_format=self.data_format),
         Conv2d(n_filter=128,in_channels=128,filter_size=(3,3),strides=(1,1),padding="SAME",act=tf.nn.relu,W_init=initial_w,b_init=initial_b,data_format=self.data_format),
         Conv2d(n_filter=128,in_channels=128,filter_size=(3,3),strides=(1,1),padding="SAME",act=tf.nn.relu,W_init=initial_w,b_init=initial_b,data_format=self.data_format),
         Conv2d(n_filter=512,in_channels=128,filter_size=(1,1),strides=(1,1),padding="SAME",act=tf.nn.relu,W_init=initial_w,b_init=initial_b,data_format=self.data_format),
         Conv2d(n_filter=self.n_pafmaps,in_channels=512,filter_size=(1,1),strides=(1,1),padding="SAME",act=tf.nn.relu,W_init=initial_w,b_init=initial_b,data_format=self.data_format)
     ])
Beispiel #9
0
 def __init__(self, data_format="channels_first"):
     super().__init__()
     self.data_format = data_format
     self.out_channels = 512
     self.main_block = layers.LayerList([
         conv_block(n_filter=32,
                    in_channels=3,
                    data_format=self.data_format,
                    strides=(2, 2)),
         dw_conv_block(n_filter=64,
                       in_channels=32,
                       data_format=self.data_format),
         dw_conv_block(n_filter=128,
                       in_channels=64,
                       data_format=self.data_format,
                       strides=(2, 2)),
         dw_conv_block(n_filter=128,
                       in_channels=128,
                       data_format=self.data_format),
         dw_conv_block(n_filter=256,
                       in_channels=128,
                       data_format=self.data_format,
                       strides=(2, 2)),
         dw_conv_block(n_filter=256,
                       in_channels=256,
                       data_format=self.data_format),
         dw_conv_block(n_filter=512,
                       in_channels=256,
                       data_format=self.data_format),
         dw_conv_block(n_filter=512,
                       in_channels=512,
                       data_format=self.data_format,
                       dilation_rate=(2, 2)),
         dw_conv_block(n_filter=512,
                       in_channels=512,
                       data_format=self.data_format),
         dw_conv_block(n_filter=512,
                       in_channels=512,
                       data_format=self.data_format),
         dw_conv_block(n_filter=512,
                       in_channels=512,
                       data_format=self.data_format),
         dw_conv_block(n_filter=512,
                       in_channels=512,
                       data_format=self.data_format)
     ])
Beispiel #10
0
def conv_block(n_filter,
               in_channels,
               filter_size=(3, 3),
               strides=(1, 1),
               dilation_rate=(1, 1),
               W_init=initializer,
               b_init=initializer,
               padding="SAME",
               data_format="channels_first"):
    layer_list = []
    layer_list.append(Conv2d(n_filter=n_filter,filter_size=filter_size,strides=strides,in_channels=in_channels,\
        dilation_rate=dilation_rate,padding=padding,W_init=initializer,b_init=initializer,data_format=data_format))
    layer_list.append(
        BatchNorm2d(decay=0.99,
                    act=tf.nn.relu,
                    num_features=n_filter,
                    data_format=data_format,
                    is_train=True))
    return layers.LayerList(layer_list)
Beispiel #11
0
 def __init__(self,
              in_channels=3,
              scale_size=8,
              data_format="channels_first"):
     super().__init__()
     self.in_channels = in_channels
     self.data_format = data_format
     self.scale_size = scale_size
     if (self.scale_size == 8):
         strides = (1, 1)
     else:
         strides = (2, 2)
     self.out_channels = 384
     self.main_block = layers.LayerList([
         self.conv_block(n_filter=32,
                         in_channels=3,
                         filter_size=(3, 3),
                         strides=(1, 1)),
         self.conv_block(n_filter=64,
                         in_channels=32,
                         filter_size=(3, 3),
                         strides=(1, 1)),
         MaxPool2d(filter_size=(2, 2),
                   strides=(2, 2),
                   padding="SAME",
                   data_format=self.data_format),
         self.conv_block(n_filter=128,
                         in_channels=64,
                         filter_size=(3, 3),
                         strides=(1, 1)),
         self.conv_block(n_filter=128,
                         in_channels=128,
                         filter_size=(3, 3),
                         strides=(1, 1)),
         MaxPool2d(filter_size=(2, 2),
                   strides=(2, 2),
                   padding="SAME",
                   data_format=self.data_format),
         self.conv_block(n_filter=200,
                         in_channels=128,
                         filter_size=(3, 3),
                         strides=(1, 1)),
         self.conv_block(n_filter=200,
                         in_channels=200,
                         filter_size=(3, 3),
                         strides=strides),
         self.conv_block(n_filter=200,
                         in_channels=200,
                         filter_size=(3, 3),
                         strides=(1, 1)),
         MaxPool2d(filter_size=(2, 2),
                   strides=(2, 2),
                   padding="SAME",
                   data_format=self.data_format),
         self.conv_block(n_filter=384,
                         in_channels=200,
                         filter_size=(3, 3),
                         strides=(1, 1)),
         self.conv_block(n_filter=384,
                         in_channels=384,
                         filter_size=(3, 3),
                         strides=strides)
     ])