class_docstr: UNet that consumes even dimension grid and outputs even dimension grid.
class_docstr_tok: ["UNet","that","consumes","even","dimension","grid","and","outputs","even","dimension","grid","."]
docstr: Forward method.
  
  Args:
    x: `[batch, in_grid_res, in_grid_res, in_grid_res, in_features]` tensor,
      input voxel grid.
    training: bool, flag indicating whether model is in training mode.
  
  Returns:
    `[batch, out_grid_res, out_grid_res, out_grid_res, out_features]` tensor,
    output voxel grid.
docstr_tok: ["Forward","method",".","Args",":","x",":","`","[","batch",",","in_grid_res",",","in_grid_res",",","in_grid_res",",","in_features","]","`","tensor",",","input","voxel","grid",".","training",":","bool",",","flag","indicating","whether","model","is","in","training","mode",".","Returns",":","`","[","batch",",","out_grid_res",",","out_grid_res",",","out_grid_res",",","out_features","]","`","tensor",",","output","voxel","grid","."]
code: def call(self, x, training=False):
      """Forward method.
  
      Args:
        x: `[batch, in_grid_res, in_grid_res, in_grid_res, in_features]` tensor,
          input voxel grid.
        training: bool, flag indicating whether model is in training mode.
  
      Returns:
        `[batch, out_grid_res, out_grid_res, out_grid_res, out_features]` tensor,
        output voxel grid.
      """
      x = self.conv_in(x)
      x_dns = [x]
      for mod in self.down_modules:
          x_ = self.dnpool(mod(x_dns[-1], training=training))
          x_dns.append(x_)
  
      x_ups = [x_dns.pop(-1)]
      for mod in self.up_modules:
          x_ = tf.concat(
              [self.upsamp(x_ups[-1]), x_dns.pop(-1)], axis=-1
          )
          x_ = mod(x_, training=training)
          x_ups.append(x_)
  
      x = self.conv_out(x_ups[-1])
      return x
  
imports: import math
  import tensorflow.compat.v1
  from tensorflow_graphics.projects.local_implicit_grid.core import local_implicit_grid_layer
label_desc: Use image node_id 3 for calling the UNet3D obj's underlying member method code with example usage: obj.call(x, training) and returns: x