code: def network_initialization(self, in_channels, out_channels, D):
      # Output of the first conv concated to conv6
      self.inplanes = self.INIT_DIM
      self.conv0p1s1 = ME.MinkowskiConvolution(
          in_channels, self.inplanes, kernel_size=5, dimension=D
      )
  
      self.bn0 = ME.MinkowskiBatchNorm(self.inplanes)
  
      self.conv1p1s2 = ME.MinkowskiConvolution(
          self.inplanes,
          self.inplanes,
          kernel_size=2,
          stride=2,
          dimension=D,
      )
      self.bn1 = ME.MinkowskiBatchNorm(self.inplanes)
  
      self.block1 = self._make_layer(
          self.BLOCK, self.PLANES[0], self.LAYERS[0]
      )
  
      self.conv2p2s2 = ME.MinkowskiConvolution(
          self.inplanes,
          self.inplanes,
          kernel_size=2,
          stride=2,
          dimension=D,
      )
      self.bn2 = ME.MinkowskiBatchNorm(self.inplanes)
  
      self.block2 = self._make_layer(
          self.BLOCK, self.PLANES[1], self.LAYERS[1]
      )
  
      self.conv3p4s2 = ME.MinkowskiConvolution(
          self.inplanes,
          self.inplanes,
          kernel_size=2,
          stride=2,
          dimension=D,
      )
  
      self.bn3 = ME.MinkowskiBatchNorm(self.inplanes)
      self.block3 = self._make_layer(
          self.BLOCK, self.PLANES[2], self.LAYERS[2]
      )
  
      self.conv4p8s2 = ME.MinkowskiConvolution(
          self.inplanes,
          self.inplanes,
          kernel_size=2,
          stride=2,
          dimension=D,
      )
      self.bn4 = ME.MinkowskiBatchNorm(self.inplanes)
      self.block4 = self._make_layer(
          self.BLOCK, self.PLANES[3], self.LAYERS[3]
      )
  
      self.convtr4p16s2 = ME.MinkowskiConvolutionTranspose(
          self.inplanes,
          self.PLANES[4],
          kernel_size=2,
          stride=2,
          dimension=D,
      )
      self.bntr4 = ME.MinkowskiBatchNorm(self.PLANES[4])
  
      self.inplanes = (
          self.PLANES[4] + self.PLANES[2] * self.BLOCK.EXPANSION
      )
      self.block5 = self._make_layer(
          self.BLOCK, self.PLANES[4], self.LAYERS[4]
      )
      self.convtr5p8s2 = ME.MinkowskiConvolutionTranspose(
          self.inplanes,
          self.PLANES[5],
          kernel_size=2,
          stride=2,
          dimension=D,
      )
      self.bntr5 = ME.MinkowskiBatchNorm(self.PLANES[5])
  
      self.inplanes = (
          self.PLANES[5] + self.PLANES[1] * self.BLOCK.EXPANSION
      )
      self.block6 = self._make_layer(
          self.BLOCK, self.PLANES[5], self.LAYERS[5]
      )
      self.convtr6p4s2 = ME.MinkowskiConvolutionTranspose(
          self.inplanes,
          self.PLANES[6],
          kernel_size=2,
          stride=2,
          dimension=D,
      )
      self.bntr6 = ME.MinkowskiBatchNorm(self.PLANES[6])
  
      self.inplanes = (
          self.PLANES[6] + self.PLANES[0] * self.BLOCK.EXPANSION
      )
      self.block7 = self._make_layer(
          self.BLOCK, self.PLANES[6], self.LAYERS[6]
      )
      self.convtr7p2s2 = ME.MinkowskiConvolutionTranspose(
          self.inplanes,
          self.PLANES[7],
          kernel_size=2,
          stride=2,
          dimension=D,
      )
      self.bntr7 = ME.MinkowskiBatchNorm(self.PLANES[7])
  
      self.inplanes = self.PLANES[7] + self.INIT_DIM
      self.block8 = self._make_layer(
          self.BLOCK, self.PLANES[7], self.LAYERS[7]
      )
  
      self.final = ME.MinkowskiConvolution(
          self.PLANES[7],
          out_channels,
          kernel_size=1,
          bias=True,
          dimension=D,
      )
      self.relu = ME.MinkowskiReLU(inplace=True)
  
imports: import torch.nn
  import MinkowskiEngine
  from .modules import BasicBlock, Bottleneck
label_desc: Use image node_id 2 for calling the MinkUNetBase obj's underlying member method code with example usage: obj.network_initialization(in_channels, out_channels, D) without return types