class_docstr: 'ShapeNetBase' implements a base Dataset for ShapeNet and R2N2 with helper methods.
  It is not intended to be used on its own as a Dataset for a Dataloader. Both __init__
  and __getitem__ need to be implemented.
class_docstr_tok: ["'ShapeNetBase","'","implements","a","base","Dataset","for","ShapeNet","and","R2N2","with","helper","methods",".","It","is","not","intended","to","be","used","on","its","own","as","a","Dataset","for","a","Dataloader",".","Both","__init__","and","__getitem__","need","to","be","implemented","."]
code: def _load_mesh(self, model_path) -> Tuple:
      verts, faces, aux = load_obj(
          model_path,
          create_texture_atlas=self.load_textures,
          load_textures=self.load_textures,
          texture_atlas_size=self.texture_resolution,
      )
      if self.load_textures:
          textures = aux.texture_atlas
          # Some meshes don't have textures. In this case
          # create a white texture map
          if textures is None:
              textures = verts.new_ones(
                  faces.verts_idx.shape[0],
                  self.texture_resolution,
                  self.texture_resolution,
                  3,
              )
      else:
          textures = None
  
      return verts, faces.verts_idx, textures
  
file_path: pytorch3d/pytorch3d/datasets/shapenet_base.py
imports: import warnings
  from typing import Dict, List, Optional, Tuple
  import torch
  from pytorch3d.common.datatypes import Device
  from pytorch3d.io import load_obj
  from pytorch3d.renderer import FoVPerspectiveCameras, HardPhongShader, MeshRasterizer, MeshRenderer, PointLights, RasterizationSettings, TexturesVertex
  from .utils import collate_batched_meshes
label_desc: Use image node_id 5 for calling the ShapeNetBase obj's underlying member method code with example usage: obj._load_mesh(model_path) and returns: verts,  faces,  textures