class_docstr: Scannet dataset, you will have to agree to terms and conditions by hitting enter
  so that it downloads the dataset.
  
  http://www.scan-net.org/
  
  Parameters
  ----------
  root : str
      Path to the data
  split : str, optional
      Split used (train, val or test)
  transform (callable, optional):
      A function/transform that takes in an :obj:`torch_geometric.data.Data` object and returns a transformed
      version. The data object will be transformed before every access.
  pre_transform (callable, optional):
      A function/transform that takes in an :obj:`torch_geometric.data.Data` object and returns a
      transformed version. The data object will be transformed before being saved to disk.
  pre_filter (callable, optional):
      A function that takes in an :obj:`torch_geometric.data.Data` object and returns a boolean
      value, indicating whether the data object should be included in the final dataset.
  version : str, optional
      version of scannet, by default "v2"
  use_instance_labels : bool, optional
      Wether we use instance labels or not, by default False
  use_instance_bboxes : bool, optional
      Wether we use bounding box labels or not, by default False
  donotcare_class_ids : list, optional
      Class ids to be discarded
  max_num_point : [type], optional
      Max number of points to keep during the pre processing step
  use_multiprocessing : bool, optional
      Wether we use multiprocessing or not
  process_workers : int, optional
      Number of process workers
  normalize_rgb : bool, optional
      Normalise rgb values, by default True
class_docstr_tok: ["Scannet","dataset",",","you","will","have","to","agree","to","terms","and","conditions","by","hitting","enter","so","that","it","downloads","the","dataset",".","http",":","\/\/www.scan-net.org\/","Parameters","--","--","--","--","--","root",":","str","Path","to","the","data","split",":","str",",","optional","Split","used","(","train",",","val","or","test",")","transform","(","callable",",","optional",")",":","A","function\/transform","that","takes","in","an",":","obj",":","`","torch_geometric.data.Data","`","object","and","returns","a","transformed","version",".","The","data","object","will","be","transformed","before","every","access",".","pre_transform","(","callable",",","optional",")",":","A","function\/transform","that","takes","in","an",":","obj",":","`","torch_geometric.data.Data","`","object","and","returns","a","transformed","version",".","The","data","object","will","be","transformed","before","being","saved","to","disk",".","pre_filter","(","callable",",","optional",")",":","A","function","that","takes","in","an",":","obj",":","`","torch_geometric.data.Data","`","object","and","returns","a","boolean","value",",","indicating","whether","the","data","object","should","be","included","in","the","final","dataset",".","version",":","str",",","optional","version","of","scannet",",","by","default","``","v2","''","use_instance_labels",":","bool",",","optional","Wether","we","use","instance","labels","or","not",",","by","default","False","use_instance_bboxes",":","bool",",","optional","Wether","we","use","bounding","box","labels","or","not",",","by","default","False","donotcare_class_ids",":","list",",","optional","Class","ids","to","be","discarded","max_num_point",":","[","type","]",",","optional","Max","number","of","points","to","keep","during","the","pre","processing","step","use_multiprocessing",":","bool",",","optional","Wether","we","use","multiprocessing","or","not","process_workers",":","int",",","optional","Number","of","process","workers","normalize_rgb",":","bool",",","optional","Normalise","rgb","values",",","by","default","True"]
code: def download_scans(self):
      release_file = BASE_URL + RELEASE + ".txt"
      release_scans = get_release_scans(release_file)
      # release_scans = ["scene0191_00","scene0191_01", "scene0568_00", "scene0568_01"]
      file_types = FILETYPES
      release_test_file = BASE_URL + RELEASE + "_test.txt"
      release_test_scans = get_release_scans(release_test_file)
      file_types_test = FILETYPES_TEST
      out_dir_scans = os.path.join(self.raw_dir, "scans")
      out_dir_test_scans = os.path.join(self.raw_dir, "scans_test")
  
      if self.types:  # download file type
          file_types = self.types
          for file_type in file_types:
              if file_type not in FILETYPES:
                  log.error("ERROR: Invalid file type: " + file_type)
                  return
          file_types_test = []
          for file_type in file_types:
              if file_type in FILETYPES_TEST:
                  file_types_test.append(file_type)
      download_label_map(self.raw_dir)
      log.info(
          "WARNING: You are downloading all ScanNet "
          + RELEASE_NAME
          + " scans of type "
          + file_types[0]
      )
      log.info(
          "Note that existing scan directories will be skipped. Delete partially downloaded directories to re-download."
      )
      log.info("***")
      log.info("Press any key to continue, or CTRL-C to exit.")
      input("")
      if self.version == "v2" and ".sens" in file_types:
          log.info(
              "Note: ScanNet v2 uses the same .sens files as ScanNet v1: Press 'n' to exclude downloading .sens files for each scan"
          )
          key = input("")
          if key.strip().lower() == "n":
              file_types.remove(".sens")
      download_release(
          release_scans, out_dir_scans, file_types, use_v1_sens=True
      )
      if self.version == "v2":
          download_label_map(self.raw_dir)
          download_release(
              release_test_scans,
              out_dir_test_scans,
              file_types_test,
              use_v1_sens=True,
          )
  
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 8 for calling the Scannet obj's underlying member method code with example usage: obj.download_scans() without return types