forked from arangesh/GPCycleGAN
-
Notifications
You must be signed in to change notification settings - Fork 0
/
prepare_gaze_data.py
90 lines (81 loc) · 4.19 KB
/
prepare_gaze_data.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
import argparse
import os
import shutil
import glob
def create_datasets(dataset_dir, use_symlinks=True):
activity_classes = ['Eyes Closed', 'Forward', 'Shoulder', 'Left Mirror', 'Lap', 'Speedometer', 'Radio', 'Rearview', 'Right Mirror']
splits = ['train', 'val', 'test']
# all data
for split in splits:
for activity in activity_classes:
count = 0
os.makedirs(os.path.join(dataset_dir, 'all_data', split, activity), exist_ok=True)
images = glob.glob(os.path.join(dataset_dir, '*_*_*', split, activity, '*.jpg'))
for im in images:
if use_symlinks:
os.symlink(im, os.path.join(dataset_dir, 'all_data', split, activity, '%.6d.jpg' % (count,)))
else:
shutil.copyfile(im, os.path.join(dataset_dir, 'all_data', split, activity, '%.6d.jpg' % (count,)))
count += 1
print('Done creating all_data dataset!')
# no glasses
for split in splits:
for activity in activity_classes:
count = 0
os.makedirs(os.path.join(dataset_dir, 'no_glasses', split, activity), exist_ok=True)
images = glob.glob(os.path.join(dataset_dir, 'no_glasses_*', split, activity, '*.jpg'))
for im in images:
if use_symlinks:
os.symlink(im, os.path.join(dataset_dir, 'no_glasses', split, activity, '%.6d.jpg' % (count,)))
else:
shutil.copyfile(im, os.path.join(dataset_dir, 'no_glasses', split, activity, '%.6d.jpg' % (count,)))
count += 1
print('Done creating no_glasses dataset!')
# with glasses
for split in splits:
for activity in activity_classes:
count = 0
os.makedirs(os.path.join(dataset_dir, 'with_glasses', split, activity), exist_ok=True)
images = glob.glob(os.path.join(dataset_dir, 'with_glasses_*', split, activity, '*.jpg'))
for im in images:
if use_symlinks:
os.symlink(im, os.path.join(dataset_dir, 'with_glasses', split, activity, '%.6d.jpg' % (count,)))
else:
shutil.copyfile(im, os.path.join(dataset_dir, 'with_glasses', split, activity, '%.6d.jpg' % (count,)))
count += 1
print('Done creating with_glasses dataset!')
# day
for split in splits:
for activity in activity_classes:
count = 0
os.makedirs(os.path.join(dataset_dir, 'day', split, activity), exist_ok=True)
images = glob.glob(os.path.join(dataset_dir, '*_day', split, activity, '*.jpg'))
for im in images:
if use_symlinks:
os.symlink(im, os.path.join(dataset_dir, 'day', split, activity, '%.6d.jpg' % (count,)))
else:
shutil.copyfile(im, os.path.join(dataset_dir, 'day', split, activity, '%.6d.jpg' % (count,)))
count += 1
print('Done creating day dataset!')
# night
for split in splits:
for activity in activity_classes:
count = 0
os.makedirs(os.path.join(dataset_dir, 'night', split, activity), exist_ok=True)
images = glob.glob(os.path.join(dataset_dir, '*_night', split, activity, '*.jpg'))
for im in images:
if use_symlinks:
os.symlink(im, os.path.join(dataset_dir, 'night', split, activity, '%.6d.jpg' % (count,)))
else:
shutil.copyfile(im, os.path.join(dataset_dir, 'night', split, activity, '%.6d.jpg' % (count,)))
count += 1
print('Done creating night dataset!')
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Prepare gaze dataset')
parser.add_argument('-o', '--dataset-dir', default='/home/akshay/data/lisat_gaze_data',
help='The dataset directory [default "/home/akshay/data/lisat_gaze_data"]')
parser.add_argument('-s', '--no-symlinks', action='store_true',
help='Copy files instead of making symlinks')
args = parser.parse_args()
print('Creating datasets...')
create_datasets(dataset_dir=args.dataset_dir, use_symlinks=not args.no_symlinks)