class_docstr: Wrapper around Scannet that creates train and test datasets.
  
  Parameters
  ----------
  dataset_opt: omegaconf.DictConfig
      Config dictionary that should contain
  
          - dataroot
          - version
          - max_num_point (optional)
          - use_instance_labels (optional)
          - use_instance_bboxes (optional)
          - donotcare_class_ids (optional)
          - pre_transforms (optional)
          - train_transforms (optional)
          - val_transforms (optional)
class_docstr_tok: ["Wrapper","around","Scannet","that","creates","train","and","test","datasets",".","Parameters","--","--","--","--","--","dataset_opt",":","omegaconf.DictConfig","Config","dictionary","that","should","contain","-","dataroot","-","version","-","max_num_point","(","optional",")","-","use_instance_labels","(","optional",")","-","use_instance_bboxes","(","optional",")","-","donotcare_class_ids","(","optional",")","-","pre_transforms","(","optional",")","-","train_transforms","(","optional",")","-","val_transforms","(","optional",")"]
code: def __init__(self, dataset_opt):
      super().__init__(dataset_opt)
  
      use_instance_labels: bool = dataset_opt.use_instance_labels
      use_instance_bboxes: bool = dataset_opt.use_instance_bboxes
      donotcare_class_ids: [] = list(
          dataset_opt.get("donotcare_class_ids", [])
      )
      max_num_point: int = dataset_opt.get("max_num_point", None)
      process_workers: int = (
          dataset_opt.process_workers
          if hasattr(dataset_opt, "process_workers")
          else 0
      )
      is_test: bool = dataset_opt.get("is_test", False)
  
      self.train_dataset = Scannet(
          self._data_path,
          split="train",
          pre_transform=self.pre_transform,
          transform=self.train_transform,
          version=dataset_opt.version,
          use_instance_labels=use_instance_labels,
          use_instance_bboxes=use_instance_bboxes,
          donotcare_class_ids=donotcare_class_ids,
          max_num_point=max_num_point,
          process_workers=process_workers,
          is_test=is_test,
      )
  
      self.val_dataset = Scannet(
          self._data_path,
          split="val",
          transform=self.val_transform,
          pre_transform=self.pre_transform,
          version=dataset_opt.version,
          use_instance_labels=use_instance_labels,
          use_instance_bboxes=use_instance_bboxes,
          donotcare_class_ids=donotcare_class_ids,
          max_num_point=max_num_point,
          process_workers=process_workers,
          is_test=is_test,
      )
  
      self.test_dataset = Scannet(
          self._data_path,
          split="test",
          transform=self.val_transform,
          pre_transform=self.pre_transform,
          version=dataset_opt.version,
          use_instance_labels=use_instance_labels,
          use_instance_bboxes=use_instance_bboxes,
          donotcare_class_ids=donotcare_class_ids,
          max_num_point=max_num_point,
          process_workers=process_workers,
          is_test=is_test,
      )
  
imports: import os
  import os.path
  import shutil
  import json
  import torch
  from glob import glob
  import sys
  import csv
  import logging
  import numpy
  from plyfile import PlyData, PlyElement
  from torch_geometric.data import Data, InMemoryDataset, download_url, extract_zip
  import torch_geometric.transforms
  import multiprocessing
  import pandas
  import tempfile
  import urllib
  from urllib.request import urlopen
  from torch_points3d.datasets.base_dataset import BaseDataset
  import torch_points3d.core.data_transform
  from .None import IGNORE_LABEL
label_desc: Use image node_id 1 to create a new ScannetDataset object from inherited base classes: BaseDataset with example: obj = ScannetDataset(dataset_opt)