code: def layer_op(self, images, is_training=True, **unused_kwargs):
      conv_1 = ConvolutionalLayer(
          self.hidden_features,
          kernel_size=3,
          w_initializer=self.initializers["w"],
          w_regularizer=self.regularizers["w"],
          b_initializer=self.initializers["b"],
          b_regularizer=self.regularizers["b"],
          acti_func="relu",
          name="conv_input",
      )
  
      # conv_2 = ConvolutionalLayer(self.num_classes,
      #                             kernel_size=1,
      #                             w_initializer=self.initializers['w'],
      #                             w_regularizer=self.regularizers['w'],
      #                             b_initializer=self.initializers['b'],
      #                             b_regularizer=self.regularizers['b'],
      #                             acti_func=None,
      #                             name='conv_output')
  
      flow = conv_1(images, is_training)
      # flow = conv_2(flow, is_training)
      return flow
  
imports: from __future__ import absolute_import, print_function
  from niftynet.layer.convolution import ConvolutionalLayer
  from niftynet.network.base_net import BaseNet
label_desc: Use image node_id 2 for calling the ToyNetFeat obj's underlying member method code with example usage: obj.layer_op(images, is_training) and returns: flow