class_docstr: Dense Feature Stack with Skip Layer and Downsampling
  
  - Downsampling is done through strided convolution.
  
  ---[ DenseFeatureStackBlock ]----------[ Conv ]------- Skip layer
                                    |
                                    -------------------- Downsampled Output
  
  See DenseFeatureStackBlock for more info.
docstr: :return: Dense Feature Stack with Skip Layer and Downsampling block
docstr_tok: [":","return",":","Dense","Feature","Stack","with","Skip","Layer","and","Downsampling","block"]
code: def create_block(self):
      """
  
      :return: Dense Feature Stack with Skip Layer and Downsampling block
      """
      dfs_block = DenseFeatureStackBlock(
          self.n_dense_channels,
          self.kernel_size,
          self.dilation_rates,
          self.use_bdo,
          **self.kwargs,
      )
  
      skip_conv = ConvolutionalLayer(
          self.n_seg_channels,
          kernel_size=self.kernel_size,
          # name='skip_conv',
          **self.kwargs,
      )
  
      down_conv = None
      if self.n_down_channels is not None:
          down_conv = ConvolutionalLayer(
              self.n_down_channels,
              kernel_size=self.kernel_size,
              stride=2,
              #  name='down_conv',
              **self.kwargs,
          )
  
      dfssd_block = namedtuple(
          "DenseSDBlock", ["dfs_block", "skip_conv", "down_conv"]
      )
  
      return dfssd_block(
          dfs_block=dfs_block, skip_conv=skip_conv, down_conv=down_conv
      )
  
imports: from __future__ import absolute_import, print_function
  import tensorflow
  from niftynet.io.misc_io import image3_axial
  from niftynet.layer import layer_util
  from niftynet.layer.affine_augmentation import AffineAugmentationLayer
  from niftynet.layer.base_layer import TrainableLayer
  from niftynet.layer.bn import BNLayer
  from niftynet.layer.channel_sparse_convolution import ChannelSparseConvolutionalLayer
  from niftynet.layer.convolution import ConvolutionalLayer
  from niftynet.layer.linear_resize import LinearResizeLayer
  from niftynet.layer.downsample import DownSampleLayer
  from niftynet.network.base_net import BaseNet
  from collections import namedtuple
label_desc: Use image node_id 2 for calling the DenseFeatureStackBlockWithSkipAndDownsample obj's underlying member method code with example usage: obj.create_block() and returns: dfssd_block