docstr: Unpack input data from the dataloader and perform necessary pre-processing steps.
  
  Parameters
  -----------
  data:
      a dictionary that contains the data itself and its metadata information.
docstr_tok: ["Unpack","input","data","from","the","dataloader","and","perform","necessary","pre-processing","steps",".","Parameters","--","--","--","--","--","-","data",":","a","dictionary","that","contains","the","data","itself","and","its","metadata","information","."]
code: def _set_input(self, data):
      """Unpack input data from the dataloader and perform necessary pre-processing steps.
  
      Parameters
      -----------
      data:
          a dictionary that contains the data itself and its metadata information.
      """
      coords = torch.cat(
          [data.batch.unsqueeze(-1).int(), data.coords.int()], -1
      )
      self.input = ME.SparseTensor(
          features=data.x, coordinates=coords, device=self.device
      )
      if data.pos is not None:
          self.xyz = data.pos.to(self.device)
      else:
          self.xyz = data.coords.to(self.device)
  
imports: import os
  import sys
  from omegaconf import DictConfig, OmegaConf
  import logging
  import torch
  from torch_geometric.data import Batch
  from torch_points3d.applications.modelfactory import ModelFactory
  from torch_points3d.modules.MinkowskiEngine.api_modules import *
  from torch_points3d.core.base_conv.message_passing import *
  from torch_points3d.core.base_conv.partial_dense import *
  from torch_points3d.models.base_architectures.unet import UnwrappedUnetBasedModel
  from torch_points3d.core.common_modules.base_modules import MLP
  from .utils import extract_output_nc
label_desc: Use image node_id 5 for calling the BaseMinkowski obj's underlying member method code with example usage: obj._set_input(data) without return types