def __init__()

in part_generator.py [0:0]


    def __init__(self, folder, image_size, large_aug=False):
        super().__init__()
        min_sample_num = 10000
        self.folder = folder
        self.image_size = image_size
        self.large_aug = large_aug
        self.paths = [p for p in Path(f'{folder}').glob(f'**/*.json')]
        while len(self.paths) < min_sample_num:
            self.paths.extend(self.paths)
        # notice the real influence of the trans / scale is side / 512 (original side) because of scalling in rendering
        if not large_aug:
            self.rotate = [-1/12*np.pi, 1/12*np.pi]
            self.trans = 0.01
            self.scale = [0.9, 1.1]
        else:
            self.rotate = [-1/4*np.pi, 1/4*np.pi]
            self.trans = 0.05
            self.scale = [0.75, 1.25]
            self.line_diameter_scale = [0.25, 1.25]
        if 'bird' in folder:
            self.id_to_part = {0:'initial', 1:'eye', 4:'head', 3:'body', 2:'beak', 5:'legs', 8:'wings', 6:'mouth', 7:'tail'}
        elif 'generic' in folder or 'fin' in folder or 'horn' in folder:
            self.id_to_part = { 0:'initial',  1:'eye',  2:'arms',  3:'beak',  4:'mouth',  5:'body',  6:'ears',  7:'feet',  8:'fin', 
                         9:'hair',  10:'hands',  11:'head',  12:'horns',  13:'legs',  14:'nose',  15:'paws',  16:'tail', 17:'wings'}
        self.n_part = len(self.id_to_part)