code: def __init__(self, config, is_train=True):
      self.is_train = is_train
      self.data_path = (
          config.DATA.TRAIN_PATH if is_train else config.DATA.VALID_PATH
      )
      self.frame_interval = config.DATA.FRAME_INTERVAL
      self.num_frames = config.DATA.NUM_FRAMES
      assert (
          self.num_frames % 2
      ), f"Please use odd number of frames, current: {self.num_frames}"
      self.scale_path = osp.join(
          "../data",
          "h36m_{}_scales{}".format(
              "train" if is_train else "valid",
              ".pkl" if config.USE_GT else "_pre.pkl",
          ),
      )
      self.use_gt_scale = config.TRAIN.USE_GT_SCALE
      self.use_same_norm_2d, self.use_same_norm_3d = (
          config.DATA.USE_SAME_NORM_2D,
          config.DATA.USE_SAME_NORM_3D,
      )
      self.seed_set = False
      self.head_root_distance = (
          1 / config.TRAIN.CAMERA_SKELETON_DISTANCE
      )
      self.v3d_2d_to_ours = [
          3,
          2,
          1,
          4,
          5,
          6,
          16,
          15,
          14,
          11,
          12,
          13,
          8,
          0,
          7,
          9,
          10,
      ]
      # whether to use dataset adapted from k[MaÌ]inetics
      self.use_gt = config.USE_GT
      self.exp_tmc = config.DATA.EXP_TMC
      self.exp_tmc_start = config.DATA.EXP_TMC_START
      self.exp_tmc_deterministic = config.DATA.EXP_TMC_DETERMINISTIC
      self.exp_tmc_interval = config.DATA.EXP_TMC_INTERVAL
      self.min_diff_dist = config.DATA.MIN_DIFF_DIST
      self.bound_azim = config.TRAIN.BOUND_AZIM  # y axis rotation
      self.bound_elev = config.TRAIN.BOUND_ELEV
      self.online_rot = config.DATA.ONLINE_ROT
      self.is_generic_baseline = config.TRAIN.GENERIC_BASELINE
      self.is_15joints = config.DATA.NUM_JOINTS == 15
      self.map_to_15joints = [
          0,
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8,
          9,
          10,
          11,
          13,
          15,
          16,
      ]  # exclude thorax and spine
      self._load_data_set()
  
imports: import sys
  from torch.utils.data import Dataset, DataLoader
  import os
  import os.path
  import glob
  import numpy
  import random
  import cv2
  import pickle
  import json
  import h5py
  import torch
  import matplotlib.pyplot
  from lib.utils.misc import process_dataset_for_video, save_pickle, load_pickle
label_desc: Use image node_id 1 to create a new Human36MDataset object from inherited base classes: Dataset with example: obj = Human36MDataset(config, is_train)