class_docstr: NeRF model with TCNN encoding and MLPs for sigma and features.
  
  Args:
      num_input_dims (int): Number of input dimensions.
      bound (torch.Tensor): The bounding box tensor.
      density_activation (DensityActivationEnum): Activation function for density.
      blob_radius (float): Radius for the blob.
      blob_density (float): Density for the blob.
      normal_type (Optional[NormalTypeEnum]): Method to compute normals.
      encoder_cfg (Dict): Configuration for the TCNN encoder.
      sigma_net_num_output_dims (int): Number of output dimensions for the sigma network.
      sigma_net_cfg (Dict): Configuration for the sigma network.
      features_net_num_output_dims (int): Number of output dimensions for the features network.
      features_net_cfg (Optional[Dict]): Configuration for the features network.
class_docstr_tok: ["NeRF","model","with","TCNN","encoding","and","MLPs","for","sigma","and","features",".","Args",":","num_input_dims","(","int",")",":","Number","of","input","dimensions",".","bound","(","torch.Tensor",")",":","The","bounding","box","tensor",".","density_activation","(","DensityActivationEnum",")",":","Activation","function","for","density",".","blob_radius","(","float",")",":","Radius","for","the","blob",".","blob_density","(","float",")",":","Density","for","the","blob",".","normal_type","(","Optional","[","NormalTypeEnum","]",")",":","Method","to","compute","normals",".","encoder_cfg","(","Dict",")",":","Configuration","for","the","TCNN","encoder",".","sigma_net_num_output_dims","(","int",")",":","Number","of","output","dimensions","for","the","sigma","network",".","sigma_net_cfg","(","Dict",")",":","Configuration","for","the","sigma","network",".","features_net_num_output_dims","(","int",")",":","Number","of","output","dimensions","for","the","features","network",".","features_net_cfg","(","Optional","[","Dict","]",")",":","Configuration","for","the","features","network","."]
code: def __init__(
      self,
      num_input_dims: int,
      bound: torch.Tensor,
      density_activation: DensityActivationEnum,
      blob_radius: float,
      blob_density: float,
      normal_type: Optional[NormalTypeEnum],
      encoder_cfg: Dict,
      sigma_net_num_output_dims: int,
      sigma_net_cfg: Dict,
      features_net_num_output_dims: int,
      features_net_cfg: Optional[Dict],
  ) -> None:
      super().__init__(
          num_input_dims=num_input_dims,
          bound=bound,
          density_activation=density_activation,
          blob_radius=blob_radius,
          blob_density=blob_density,
          normal_type=normal_type,
      )
  
      # Set per_level_scale if not set
      if encoder_cfg.get("per_level_scale") is None:
          encoder_cfg["per_level_scale"] = np.exp2(
              np.log2(2048 * self.bound / 16) / (16 - 1)
          )
      # Build the TCNN encoder
      self.encoder = tcnn.Encoding(
          n_input_dims=num_input_dims, encoding_config=dict(encoder_cfg)
      )
  
      # Build the sigma network
      assert (
          sigma_net_num_output_dims == 1
      ), "sigma_net_num_output_dims!=1 is not supported"
      self.sigma_tcnn = tcnn.Network(
          self.encoder.n_output_dims,
          sigma_net_num_output_dims,
          network_config=dict(sigma_net_cfg),
      )
  
      # Build the features network
      self.features_tcnn = None
      if features_net_cfg is not None:
          self.features_tcnn = tcnn.Network(
              self.encoder.n_output_dims,
              features_net_num_output_dims,
              network_config=dict(features_net_cfg),
          )
  
file_path: NeMo/nemo/collections/multimodal/modules/nerf/geometry/tcnn_nerf.py
imports: from typing import Dict, Optional
  import numpy
  import tinycudann
  import torch
  from nemo.collections.multimodal.modules.nerf.geometry.nerf_base import DensityActivationEnum, NeRFBase, NormalTypeEnum
label_desc: Use image node_id 1 to create a new TCNNNerf object from inherited base classes: NeRFBase with example: obj = TCNNNerf(num_input_dims, bound, density_activation, blob_radius, blob_density, normal_type, encoder_cfg, sigma_net_num_output_dims, sigma_net_cfg, features_net_num_output_dims, features_net_cfg)