saptak21 commited on
Commit
4943c2a
·
verified ·
1 Parent(s): 89f2686

Upload 44 files

Browse files
Files changed (44) hide show
  1. unigaze/__init__.py +0 -0
  2. unigaze/configs/config.yaml +38 -0
  3. unigaze/configs/data/eyediap_cs.yaml +22 -0
  4. unigaze/configs/data/eyediap_cs_test.yaml +22 -0
  5. unigaze/configs/data/eyediap_cs_train.yaml +22 -0
  6. unigaze/configs/data/eyediap_ft.yaml +24 -0
  7. unigaze/configs/data/eyediap_ft_test.yaml +24 -0
  8. unigaze/configs/data/eyediap_ft_train.yaml +24 -0
  9. unigaze/configs/data/gaze360_test.yaml +74 -0
  10. unigaze/configs/data/gaze360_train.yaml +252 -0
  11. unigaze/configs/data/gazecapture_test.yaml +15 -0
  12. unigaze/configs/data/gazecapture_test_ds15.yaml +16 -0
  13. unigaze/configs/data/gazecapture_train.yaml +1189 -0
  14. unigaze/configs/data/gazecapture_train_ds15.yaml +1189 -0
  15. unigaze/configs/data/mpiigaze.yaml +24 -0
  16. unigaze/configs/data/mpiigaze_test.yaml +24 -0
  17. unigaze/configs/data/mpiigaze_train.yaml +24 -0
  18. unigaze/configs/data/xgaze_0_60sub.yaml +76 -0
  19. unigaze/configs/data/xgaze_0_60sub_d3.yaml +80 -0
  20. unigaze/configs/data/xgaze_0_80sub.yaml +97 -0
  21. unigaze/configs/data/xgaze_0_80sub_d3.yaml +97 -0
  22. unigaze/configs/data/xgaze_60_80sub.yaml +31 -0
  23. unigaze/configs/exp/blank.yaml +22 -0
  24. unigaze/configs/exp/cross/train_ED.yaml +27 -0
  25. unigaze/configs/exp/cross/train_G360.yaml +32 -0
  26. unigaze/configs/exp/cross/train_GC.yaml +26 -0
  27. unigaze/configs/exp/cross/train_MPII.yaml +24 -0
  28. unigaze/configs/exp/cross/train_X.yaml +27 -0
  29. unigaze/configs/exp/joint/X_GC_M_ED_g360.yaml +23 -0
  30. unigaze/configs/loss/l1_loss.yaml +4 -0
  31. unigaze/configs/model/hybrid_tr50.yaml +5 -0
  32. unigaze/configs/model/mae_b_16_gaze.yaml +11 -0
  33. unigaze/configs/model/mae_h_14_gaze.yaml +14 -0
  34. unigaze/configs/model/mae_l_16_gaze.yaml +11 -0
  35. unigaze/configs/model/res18.yaml +5 -0
  36. unigaze/configs/model/res50.yaml +6 -0
  37. unigaze/configs/model/vit_b_16_gaze.yaml +11 -0
  38. unigaze/configs/model/vit_h_14_gaze.yaml +19 -0
  39. unigaze/configs/model/vit_l_16_gaze.yaml +11 -0
  40. unigaze/configs/optimizers/default_Adam_e4.yaml +7 -0
  41. unigaze/configs/schedulers/OneCycleLR.yaml +7 -0
  42. unigaze/configs/schedulers/default_stepLR_5.yaml +7 -0
  43. unigaze/configs/trainer/simple_trainer.yaml +12 -0
  44. unigaze/infer_runtime.py +297 -0
unigaze/__init__.py ADDED
File without changes
unigaze/configs/config.yaml ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ defaults:
2
+ - _self_
3
+ - exp: exp_224
4
+
5
+
6
+
7
+ mode: train
8
+ random_seed: 42
9
+ num_workers: 20
10
+
11
+
12
+ test_per_epoch: 1
13
+ print_freq: 100
14
+ data_sanity_check: false
15
+ log_wandb: false
16
+ output_dir: "./logs"
17
+ ckpt_resume: null
18
+ pretrain_ckptpath: null
19
+
20
+
21
+ optimizer_cfg: null
22
+ scheduler_cfg: null
23
+
24
+ batch_size: 50
25
+ test_batch_size: 200
26
+
27
+ epochs: 25
28
+ valid_epoch: 1
29
+ eval_epoch: 10
30
+ save_epoch: 10
31
+
32
+
33
+ use_autocast: False
34
+
35
+ batchnorm_type:
36
+ label: clean
37
+ unlabel: aug
38
+ test: clean
unigaze/configs/data/eyediap_cs.yaml ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ type: datasets.eyediap.EYEDIAPDataset
2
+ params:
3
+ data_name: eyediap_cs
4
+ color_type: bgr
5
+ transform_type: 'basic_imagenet'
6
+ image_size: 224
7
+ dataset_path: null
8
+ keys_to_use:
9
+ - 'person_1.h5'
10
+ - 'person_2.h5'
11
+ - 'person_3.h5'
12
+ - 'person_4.h5'
13
+ - 'person_5.h5'
14
+ - 'person_6.h5'
15
+ - 'person_7.h5'
16
+ - 'person_8.h5'
17
+ - 'person_9.h5'
18
+ - 'person_10.h5'
19
+ - 'person_11.h5'
20
+ - 'person_14.h5'
21
+ - 'person_15.h5'
22
+ - 'person_16.h5'
unigaze/configs/data/eyediap_cs_test.yaml ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ type: datasets.eyediap.EYEDIAPDataset
2
+ params:
3
+ data_name: eyediap_cs
4
+ color_type: bgr
5
+ transform_type: 'basic_imagenet'
6
+ image_size: 224
7
+ dataset_path: null
8
+ keys_to_use:
9
+ # - 'person_1.h5'
10
+ # - 'person_2.h5'
11
+ # - 'person_3.h5'
12
+ # - 'person_4.h5'
13
+ # - 'person_5.h5'
14
+ # - 'person_6.h5'
15
+ # - 'person_7.h5'
16
+ # - 'person_8.h5'
17
+ - 'person_9.h5'
18
+ - 'person_10.h5'
19
+ - 'person_11.h5'
20
+ - 'person_14.h5'
21
+ - 'person_15.h5'
22
+ - 'person_16.h5'
unigaze/configs/data/eyediap_cs_train.yaml ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ type: datasets.eyediap.EYEDIAPDataset
2
+ params:
3
+ data_name: eyediap_cs
4
+ color_type: bgr
5
+ transform_type: 'basic_imagenet'
6
+ image_size: 224
7
+ dataset_path: null
8
+ keys_to_use:
9
+ - 'person_1.h5'
10
+ - 'person_2.h5'
11
+ - 'person_3.h5'
12
+ - 'person_4.h5'
13
+ - 'person_5.h5'
14
+ - 'person_6.h5'
15
+ - 'person_7.h5'
16
+ - 'person_8.h5'
17
+ # - 'person_9.h5'
18
+ # - 'person_10.h5'
19
+ # - 'person_11.h5'
20
+ # - 'person_14.h5'
21
+ # - 'person_15.h5'
22
+ # - 'person_16.h5'
unigaze/configs/data/eyediap_ft.yaml ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ type: datasets.eyediap.EYEDIAPDataset
2
+ params:
3
+ data_name: eyediap_ft
4
+ color_type: bgr
5
+ transform_type: 'basic_imagenet'
6
+ image_size: 224
7
+ dataset_path: null
8
+ keys_to_use:
9
+ - 'person_1.h5'
10
+ - 'person_2.h5'
11
+ - 'person_3.h5'
12
+ - 'person_4.h5'
13
+ - 'person_5.h5'
14
+ - 'person_6.h5'
15
+ - 'person_7.h5'
16
+ - 'person_8.h5'
17
+ - 'person_9.h5'
18
+ - 'person_10.h5'
19
+ - 'person_11.h5'
20
+ - 'person_12.h5'
21
+ - 'person_13.h5'
22
+ - 'person_14.h5'
23
+ - 'person_15.h5'
24
+ - 'person_16.h5'
unigaze/configs/data/eyediap_ft_test.yaml ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ type: datasets.eyediap.EYEDIAPDataset
2
+ params:
3
+ data_name: eyediap_ft
4
+ color_type: bgr
5
+ transform_type: 'basic_imagenet'
6
+ image_size: 224
7
+ dataset_path: null
8
+ keys_to_use:
9
+ # - 'person_1.h5'
10
+ # - 'person_2.h5'
11
+ # - 'person_3.h5'
12
+ # - 'person_4.h5'
13
+ # - 'person_5.h5'
14
+ # - 'person_6.h5'
15
+ # - 'person_7.h5'
16
+ # - 'person_8.h5'
17
+ - 'person_9.h5'
18
+ - 'person_10.h5'
19
+ - 'person_11.h5'
20
+ - 'person_12.h5'
21
+ - 'person_13.h5'
22
+ - 'person_14.h5'
23
+ - 'person_15.h5'
24
+ - 'person_16.h5'
unigaze/configs/data/eyediap_ft_train.yaml ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ type: datasets.eyediap.EYEDIAPDataset
2
+ params:
3
+ data_name: eyediap_ft
4
+ color_type: bgr
5
+ transform_type: 'basic_imagenet'
6
+ image_size: 224
7
+ dataset_path: null
8
+ keys_to_use:
9
+ - 'person_1.h5'
10
+ - 'person_2.h5'
11
+ - 'person_3.h5'
12
+ - 'person_4.h5'
13
+ - 'person_5.h5'
14
+ - 'person_6.h5'
15
+ - 'person_7.h5'
16
+ - 'person_8.h5'
17
+ # - 'person_9.h5'
18
+ # - 'person_10.h5'
19
+ # - 'person_11.h5'
20
+ # - 'person_12.h5'
21
+ # - 'person_13.h5'
22
+ # - 'person_14.h5'
23
+ # - 'person_15.h5'
24
+ # - 'person_16.h5'
unigaze/configs/data/gaze360_test.yaml ADDED
@@ -0,0 +1,74 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+
3
+
4
+ type: datasets.gaze360.Gaze360Dataset
5
+ params:
6
+ data_name: gaze360_224_test
7
+ saved_norm_config:
8
+ focal_norm: 960
9
+ distance_norm: 600
10
+ roi_size: [224, 224]
11
+ norm_config:
12
+ focal_norm: 960
13
+ distance_norm: 600
14
+ roi_size: [224, 224]
15
+
16
+ color_type: bgr
17
+ transform_type: 'basic_imagenet'
18
+ dataset_path: null
19
+ image_size: 224
20
+ sample_rate_use: 1
21
+ whether_crop_resize: False
22
+ keys_to_use:
23
+ - 000000.h5
24
+ - 000001.h5
25
+ - 000002.h5
26
+ - 000003.h5
27
+ - 000004.h5
28
+ - 000010.h5
29
+ - 000014.h5
30
+ - 000022.h5
31
+ - 000031.h5
32
+ - 000032.h5
33
+ - 000044.h5
34
+ - 000045.h5
35
+ - 000057.h5
36
+ - 000058.h5
37
+ - 000070.h5
38
+ - 000078.h5
39
+ - 000270.h5
40
+ - 000277.h5
41
+ - 000278.h5
42
+ - 000279.h5
43
+ - 000316.h5
44
+ - 000364.h5
45
+ - 000367.h5
46
+ - 000511.h5
47
+ - 000512.h5
48
+ - 000513.h5
49
+ - 000515.h5
50
+ - 000527.h5
51
+ - 000536.h5
52
+ - 000543.h5
53
+ - 000579.h5
54
+ - 000584.h5
55
+ - 000585.h5
56
+ - 000600.h5
57
+ - 000603.h5
58
+ - 000604.h5
59
+ - 000611.h5
60
+ - 000614.h5
61
+ - 000615.h5
62
+ - 000616.h5
63
+ - 000649.h5
64
+ - 000650.h5
65
+ - 000651.h5
66
+ - 000652.h5
67
+ - 000687.h5
68
+ - 000723.h5
69
+ - 000777.h5
70
+ - 000782.h5
71
+ - 000823.h5
72
+ - 000907.h5
73
+ - 000909.h5
74
+ - 000982.h5
unigaze/configs/data/gaze360_train.yaml ADDED
@@ -0,0 +1,252 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+
3
+
4
+ type: datasets.gaze360.Gaze360Dataset
5
+ params:
6
+ data_name: gaze360_224_train
7
+ saved_norm_config:
8
+ focal_norm: 960
9
+ distance_norm: 600
10
+ roi_size: [224, 224]
11
+ norm_config:
12
+ focal_norm: 960
13
+ distance_norm: 600
14
+ roi_size: [224, 224]
15
+
16
+ color_type: bgr
17
+ transform_type: 'basic_imagenet'
18
+ dataset_path: null
19
+ image_size: 224
20
+ sample_rate_use: 1
21
+
22
+ keys_to_use:
23
+ - 000000.h5
24
+ - 000001.h5
25
+ - 000002.h5
26
+ - 000003.h5
27
+ - 000004.h5
28
+ - 000006.h5
29
+ - 000007.h5
30
+ - 000009.h5
31
+ - 000010.h5
32
+ - 000011.h5
33
+ - 000013.h5
34
+ - 000016.h5
35
+ - 000019.h5
36
+ - 000020.h5
37
+ - 000029.h5
38
+ - 000030.h5
39
+ - 000031.h5
40
+ - 000032.h5
41
+ - 000034.h5
42
+ - 000035.h5
43
+ - 000038.h5
44
+ - 000039.h5
45
+ - 000043.h5
46
+ - 000048.h5
47
+ - 000049.h5
48
+ - 000050.h5
49
+ - 000058.h5
50
+ - 000060.h5
51
+ - 000061.h5
52
+ - 000062.h5
53
+ - 000063.h5
54
+ - 000072.h5
55
+ - 000073.h5
56
+ - 000074.h5
57
+ - 000075.h5
58
+ - 000076.h5
59
+ - 000077.h5
60
+ - 000081.h5
61
+ - 000083.h5
62
+ - 000084.h5
63
+ - 000085.h5
64
+ - 000090.h5
65
+ - 000093.h5
66
+ - 000094.h5
67
+ - 000099.h5
68
+ - 000109.h5
69
+ - 000111.h5
70
+ - 000112.h5
71
+ - 000116.h5
72
+ - 000122.h5
73
+ - 000134.h5
74
+ - 000146.h5
75
+ - 000148.h5
76
+ - 000149.h5
77
+ - 000150.h5
78
+ - 000151.h5
79
+ - 000152.h5
80
+ - 000154.h5
81
+ - 000156.h5
82
+ - 000158.h5
83
+ - 000159.h5
84
+ - 000160.h5
85
+ - 000161.h5
86
+ - 000162.h5
87
+ - 000165.h5
88
+ - 000166.h5
89
+ - 000170.h5
90
+ - 000171.h5
91
+ - 000172.h5
92
+ - 000184.h5
93
+ - 000185.h5
94
+ - 000186.h5
95
+ - 000187.h5
96
+ - 000188.h5
97
+ - 000189.h5
98
+ - 000190.h5
99
+ - 000202.h5
100
+ - 000205.h5
101
+ - 000206.h5
102
+ - 000208.h5
103
+ - 000214.h5
104
+ - 000216.h5
105
+ - 000217.h5
106
+ - 000219.h5
107
+ - 000220.h5
108
+ - 000221.h5
109
+ - 000222.h5
110
+ - 000228.h5
111
+ - 000237.h5
112
+ - 000248.h5
113
+ - 000250.h5
114
+ - 000255.h5
115
+ - 000256.h5
116
+ - 000257.h5
117
+ - 000258.h5
118
+ - 000262.h5
119
+ - 000278.h5
120
+ - 000283.h5
121
+ - 000284.h5
122
+ - 000287.h5
123
+ - 000288.h5
124
+ - 000297.h5
125
+ - 000298.h5
126
+ - 000299.h5
127
+ - 000300.h5
128
+ - 000324.h5
129
+ - 000368.h5
130
+ - 000369.h5
131
+ - 000408.h5
132
+ - 000409.h5
133
+ - 000410.h5
134
+ - 000418.h5
135
+ - 000440.h5
136
+ - 000441.h5
137
+ - 000449.h5
138
+ - 000457.h5
139
+ - 000458.h5
140
+ - 000459.h5
141
+ - 000460.h5
142
+ - 000461.h5
143
+ - 000463.h5
144
+ - 000494.h5
145
+ - 000501.h5
146
+ - 000502.h5
147
+ - 000509.h5
148
+ - 000510.h5
149
+ - 000511.h5
150
+ - 000512.h5
151
+ - 000513.h5
152
+ - 000514.h5
153
+ - 000515.h5
154
+ - 000517.h5
155
+ - 000519.h5
156
+ - 000529.h5
157
+ - 000541.h5
158
+ - 000547.h5
159
+ - 000548.h5
160
+ - 000549.h5
161
+ - 000550.h5
162
+ - 000551.h5
163
+ - 000552.h5
164
+ - 000565.h5
165
+ - 000566.h5
166
+ - 000569.h5
167
+ - 000571.h5
168
+ - 000573.h5
169
+ - 000574.h5
170
+ - 000586.h5
171
+ - 000587.h5
172
+ - 000588.h5
173
+ - 000589.h5
174
+ - 000592.h5
175
+ - 000597.h5
176
+ - 000603.h5
177
+ - 000604.h5
178
+ - 000605.h5
179
+ - 000611.h5
180
+ - 000613.h5
181
+ - 000617.h5
182
+ - 000620.h5
183
+ - 000623.h5
184
+ - 000634.h5
185
+ - 000635.h5
186
+ - 000636.h5
187
+ - 000639.h5
188
+ - 000640.h5
189
+ - 000641.h5
190
+ - 000642.h5
191
+ - 000643.h5
192
+ - 000644.h5
193
+ - 000645.h5
194
+ - 000650.h5
195
+ - 000656.h5
196
+ - 000658.h5
197
+ - 000659.h5
198
+ - 000660.h5
199
+ - 000661.h5
200
+ - 000662.h5
201
+ - 000670.h5
202
+ - 000671.h5
203
+ - 000677.h5
204
+ - 000683.h5
205
+ - 000714.h5
206
+ - 000721.h5
207
+ - 000723.h5
208
+ - 000738.h5
209
+ - 000741.h5
210
+ - 000742.h5
211
+ - 000744.h5
212
+ - 000751.h5
213
+ - 000755.h5
214
+ - 000761.h5
215
+ - 000762.h5
216
+ - 000763.h5
217
+ - 000764.h5
218
+ - 000765.h5
219
+ - 000768.h5
220
+ - 000777.h5
221
+ - 000779.h5
222
+ - 000780.h5
223
+ - 000781.h5
224
+ - 000783.h5
225
+ - 000786.h5
226
+ - 000787.h5
227
+ - 000789.h5
228
+ - 000800.h5
229
+ - 000801.h5
230
+ - 000802.h5
231
+ - 000803.h5
232
+ - 000813.h5
233
+ - 000815.h5
234
+ - 000816.h5
235
+ - 000831.h5
236
+ - 000834.h5
237
+ - 000835.h5
238
+ - 000838.h5
239
+ - 000861.h5
240
+ - 000862.h5
241
+ - 000899.h5
242
+ - 000900.h5
243
+ - 000916.h5
244
+ - 000918.h5
245
+ - 000923.h5
246
+ - 000935.h5
247
+ - 000946.h5
248
+ - 000971.h5
249
+ - 000978.h5
250
+ - 000990.h5
251
+ - 000991.h5
252
+ - 001092.h5
unigaze/configs/data/gazecapture_test.yaml ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ type: datasets.gazecapture.GazeCaptureDataset
2
+ params:
3
+ data_name: gazecapture_test
4
+ color_type: rgb
5
+ transform_type: 'basic_imagenet'
6
+ image_size: 224
7
+ dataset_path: null
8
+ keys_to_use: [ "00010.h5", "00110.h5", "00126.h5", "00178.h5", "00190.h5", "00192.h5", "00220.h5", "00222.h5", "00233.h5", "00319.h5", "00330.h5", "00343.h5", "00382.h5", "00460.h5", "00509.h5", "00511.h5", "00546.h5", "00563.h5", "00580.h5", "00585.h5",
9
+ "00611.h5", "00616.h5", "00619.h5", "00646.h5", "00654.h5", "00680.h5", "00686.h5", "00700.h5", "00721.h5", "00741.h5", "00777.h5", "00796.h5", "00868.h5", "00921.h5", "00935.h5", "00949.h5", "00953.h5",
10
+ "00965.h5", "00968.h5", "01036.h5", "01041.h5", "01051.h5", "01091.h5", "01148.h5", "01152.h5", "01155.h5", "01183.h5", "01200.h5", "01273.h5", "01278.h5", "01286.h5", "01326.h5", "01329.h5", "01370.h5", "01376.h5", "01425.h5", "01457.h5", "01477.h5",
11
+ "01506.h5", "01517.h5", "01525.h5", "01575.h5", "01625.h5", "01672.h5", "01674.h5", "01689.h5", "01782.h5", "01794.h5", "01813.h5", "01830.h5", "01855.h5", "01863.h5", "01877.h5", "01893.h5", "01941.h5", "01959.h5", "01978.h5",
12
+ "01983.h5", "01985.h5", "01997.h5", "02006.h5", "02020.h5", "02043.h5", "02078.h5", "02091.h5", "02109.h5", "02197.h5", "02213.h5", "02239.h5", "02240.h5", "02269.h5", "02275.h5", "02281.h5", "02292.h5",
13
+ "02301.h5", "02348.h5", "02413.h5", "02419.h5", "02450.h5", "02455.h5", "02461.h5", "02480.h5", "02536.h5", "02601.h5", "02734.h5", "02755.h5", "02756.h5", "02805.h5", "02833.h5", "02851.h5", "02885.h5", "02899.h5", "02942.h5", "02966.h5",
14
+ "02986.h5", "03011.h5", "03024.h5", "03043.h5", "03117.h5", "03126.h5", "03140.h5", "03177.h5", "03183.h5", "03185.h5", "03202.h5", "03216.h5", "03223.h5", "03247.h5", "03270.h5", "03324.h5", "03326.h5", "03344.h5", "03352.h5", "03361.h5", "03366.h5",
15
+ "03404.h5", "03412.h5", "03451.h5", "03523.h5"]
unigaze/configs/data/gazecapture_test_ds15.yaml ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ type: datasets.gazecapture.GazeCaptureDataset
2
+ params:
3
+ data_name: gazecapture_test
4
+ color_type: rgb
5
+ transform_type: 'basic_imagenet'
6
+ image_size: 224
7
+ sample_rate_use: 15
8
+ dataset_path: null
9
+ keys_to_use: [ "00010.h5", "00110.h5", "00126.h5", "00178.h5", "00190.h5", "00192.h5", "00220.h5", "00222.h5", "00233.h5", "00319.h5", "00330.h5", "00343.h5", "00382.h5", "00460.h5", "00509.h5", "00511.h5", "00546.h5", "00563.h5", "00580.h5", "00585.h5",
10
+ "00611.h5", "00616.h5", "00619.h5", "00646.h5", "00654.h5", "00680.h5", "00686.h5", "00700.h5", "00721.h5", "00741.h5", "00777.h5", "00796.h5", "00868.h5", "00921.h5", "00935.h5", "00949.h5", "00953.h5",
11
+ "00965.h5", "00968.h5", "01036.h5", "01041.h5", "01051.h5", "01091.h5", "01148.h5", "01152.h5", "01155.h5", "01183.h5", "01200.h5", "01273.h5", "01278.h5", "01286.h5", "01326.h5", "01329.h5", "01370.h5", "01376.h5", "01425.h5", "01457.h5", "01477.h5",
12
+ "01506.h5", "01517.h5", "01525.h5", "01575.h5", "01625.h5", "01672.h5", "01674.h5", "01689.h5", "01782.h5", "01794.h5", "01813.h5", "01830.h5", "01855.h5", "01863.h5", "01877.h5", "01893.h5", "01941.h5", "01959.h5", "01978.h5",
13
+ "01983.h5", "01985.h5", "01997.h5", "02006.h5", "02020.h5", "02043.h5", "02078.h5", "02091.h5", "02109.h5", "02197.h5", "02213.h5", "02239.h5", "02240.h5", "02269.h5", "02275.h5", "02281.h5", "02292.h5",
14
+ "02301.h5", "02348.h5", "02413.h5", "02419.h5", "02450.h5", "02455.h5", "02461.h5", "02480.h5", "02536.h5", "02601.h5", "02734.h5", "02755.h5", "02756.h5", "02805.h5", "02833.h5", "02851.h5", "02885.h5", "02899.h5", "02942.h5", "02966.h5",
15
+ "02986.h5", "03011.h5", "03024.h5", "03043.h5", "03117.h5", "03126.h5", "03140.h5", "03177.h5", "03183.h5", "03185.h5", "03202.h5", "03216.h5", "03223.h5", "03247.h5", "03270.h5", "03324.h5", "03326.h5", "03344.h5", "03352.h5", "03361.h5", "03366.h5",
16
+ "03404.h5", "03412.h5", "03451.h5", "03523.h5"]
unigaze/configs/data/gazecapture_train.yaml ADDED
@@ -0,0 +1,1189 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ type: datasets.gazecapture.GazeCaptureDataset
2
+ params:
3
+ data_name: gazecapture_train_224
4
+ color_type: rgb
5
+ transform_type: 'basic_imagenet'
6
+ image_size: 224
7
+ dataset_path: null
8
+ sample_rate_use: 1
9
+ keys_to_use:
10
+ - 00002.h5
11
+ - 00003.h5
12
+ - 00005.h5
13
+ - 00006.h5
14
+ - 00024.h5
15
+ - 00028.h5
16
+ - 00033.h5
17
+ - 00034.h5
18
+ - 00087.h5
19
+ - 00089.h5
20
+ - 00097.h5
21
+ - 00098.h5
22
+ - 00099.h5
23
+ - 00102.h5
24
+ - 00103.h5
25
+ - 00104.h5
26
+ - 00114.h5
27
+ - 00120.h5
28
+ - 00121.h5
29
+ - 00122.h5
30
+ - 00123.h5
31
+ - 00127.h5
32
+ - 00128.h5
33
+ - 00130.h5
34
+ - 00132.h5
35
+ - 00137.h5
36
+ - 00138.h5
37
+ - 00139.h5
38
+ - 00140.h5
39
+ - 00141.h5
40
+ - 00142.h5
41
+ - 00143.h5
42
+ - 00144.h5
43
+ - 00145.h5
44
+ - 00146.h5
45
+ - 00148.h5
46
+ - 00149.h5
47
+ - 00150.h5
48
+ - 00153.h5
49
+ - 00154.h5
50
+ - 00156.h5
51
+ - 00162.h5
52
+ - 00164.h5
53
+ - 00165.h5
54
+ - 00173.h5
55
+ - 00179.h5
56
+ - 00191.h5
57
+ - 00194.h5
58
+ - 00200.h5
59
+ - 00202.h5
60
+ - 00208.h5
61
+ - 00209.h5
62
+ - 00210.h5
63
+ - 00211.h5
64
+ - 00212.h5
65
+ - 00214.h5
66
+ - 00218.h5
67
+ - 00221.h5
68
+ - 00224.h5
69
+ - 00225.h5
70
+ - 00226.h5
71
+ - 00227.h5
72
+ - 00228.h5
73
+ - 00232.h5
74
+ - 00234.h5
75
+ - 00236.h5
76
+ - 00237.h5
77
+ - 00238.h5
78
+ - 00239.h5
79
+ - 00240.h5
80
+ - 00241.h5
81
+ - 00243.h5
82
+ - 00245.h5
83
+ - 00247.h5
84
+ - 00249.h5
85
+ - 00268.h5
86
+ - 00269.h5
87
+ - 00273.h5
88
+ - 00274.h5
89
+ - 00285.h5
90
+ - 00288.h5
91
+ - 00289.h5
92
+ - 00295.h5
93
+ - 00296.h5
94
+ - 00299.h5
95
+ - 00300.h5
96
+ - 00303.h5
97
+ - 00304.h5
98
+ - 00305.h5
99
+ - 00307.h5
100
+ - 00309.h5
101
+ - 00310.h5
102
+ - 00311.h5
103
+ - 00312.h5
104
+ - 00317.h5
105
+ - 00324.h5
106
+ - 00325.h5
107
+ - 00326.h5
108
+ - 00331.h5
109
+ - 00332.h5
110
+ - 00339.h5
111
+ - 00342.h5
112
+ - 00351.h5
113
+ - 00354.h5
114
+ - 00355.h5
115
+ - 00356.h5
116
+ - 00357.h5
117
+ - 00358.h5
118
+ - 00359.h5
119
+ - 00363.h5
120
+ - 00376.h5
121
+ - 00377.h5
122
+ - 00459.h5
123
+ - 00465.h5
124
+ - 00466.h5
125
+ - 00467.h5
126
+ - 00469.h5
127
+ - 00472.h5
128
+ - 00473.h5
129
+ - 00475.h5
130
+ - 00477.h5
131
+ - 00480.h5
132
+ - 00481.h5
133
+ - 00487.h5
134
+ - 00488.h5
135
+ - 00491.h5
136
+ - 00492.h5
137
+ - 00493.h5
138
+ - 00494.h5
139
+ - 00495.h5
140
+ - 00496.h5
141
+ - 00499.h5
142
+ - 00501.h5
143
+ - 00503.h5
144
+ - 00505.h5
145
+ - 00510.h5
146
+ - 00512.h5
147
+ - 00513.h5
148
+ - 00514.h5
149
+ - 00518.h5
150
+ - 00519.h5
151
+ - 00520.h5
152
+ - 00522.h5
153
+ - 00525.h5
154
+ - 00531.h5
155
+ - 00533.h5
156
+ - 00534.h5
157
+ - 00535.h5
158
+ - 00539.h5
159
+ - 00540.h5
160
+ - 00542.h5
161
+ - 00544.h5
162
+ - 00545.h5
163
+ - 00548.h5
164
+ - 00550.h5
165
+ - 00553.h5
166
+ - 00554.h5
167
+ - 00555.h5
168
+ - 00560.h5
169
+ - 00562.h5
170
+ - 00565.h5
171
+ - 00566.h5
172
+ - 00569.h5
173
+ - 00572.h5
174
+ - 00574.h5
175
+ - 00575.h5
176
+ - 00578.h5
177
+ - 00581.h5
178
+ - 00584.h5
179
+ - 00588.h5
180
+ - 00590.h5
181
+ - 00599.h5
182
+ - 00600.h5
183
+ - 00601.h5
184
+ - 00602.h5
185
+ - 00605.h5
186
+ - 00606.h5
187
+ - 00607.h5
188
+ - 00610.h5
189
+ - 00613.h5
190
+ - 00617.h5
191
+ - 00621.h5
192
+ - 00622.h5
193
+ - 00623.h5
194
+ - 00624.h5
195
+ - 00626.h5
196
+ - 00627.h5
197
+ - 00632.h5
198
+ - 00633.h5
199
+ - 00634.h5
200
+ - 00636.h5
201
+ - 00638.h5
202
+ - 00641.h5
203
+ - 00642.h5
204
+ - 00643.h5
205
+ - 00644.h5
206
+ - 00645.h5
207
+ - 00649.h5
208
+ - 00650.h5
209
+ - 00658.h5
210
+ - 00661.h5
211
+ - 00663.h5
212
+ - 00666.h5
213
+ - 00667.h5
214
+ - 00668.h5
215
+ - 00669.h5
216
+ - 00670.h5
217
+ - 00672.h5
218
+ - 00675.h5
219
+ - 00676.h5
220
+ - 00677.h5
221
+ - 00678.h5
222
+ - 00679.h5
223
+ - 00682.h5
224
+ - 00683.h5
225
+ - 00687.h5
226
+ - 00688.h5
227
+ - 00690.h5
228
+ - 00691.h5
229
+ - 00693.h5
230
+ - 00694.h5
231
+ - 00695.h5
232
+ - 00699.h5
233
+ - 00704.h5
234
+ - 00706.h5
235
+ - 00707.h5
236
+ - 00710.h5
237
+ - 00711.h5
238
+ - 00712.h5
239
+ - 00714.h5
240
+ - 00716.h5
241
+ - 00718.h5
242
+ - 00719.h5
243
+ - 00722.h5
244
+ - 00728.h5
245
+ - 00729.h5
246
+ - 00730.h5
247
+ - 00731.h5
248
+ - 00732.h5
249
+ - 00733.h5
250
+ - 00737.h5
251
+ - 00742.h5
252
+ - 00743.h5
253
+ - 00745.h5
254
+ - 00747.h5
255
+ - 00749.h5
256
+ - 00750.h5
257
+ - 00752.h5
258
+ - 00753.h5
259
+ - 00755.h5
260
+ - 00756.h5
261
+ - 00757.h5
262
+ - 00764.h5
263
+ - 00765.h5
264
+ - 00767.h5
265
+ - 00771.h5
266
+ - 00772.h5
267
+ - 00773.h5
268
+ - 00774.h5
269
+ - 00775.h5
270
+ - 00789.h5
271
+ - 00790.h5
272
+ - 00791.h5
273
+ - 00795.h5
274
+ - 00798.h5
275
+ - 00801.h5
276
+ - 00802.h5
277
+ - 00804.h5
278
+ - 00806.h5
279
+ - 00807.h5
280
+ - 00810.h5
281
+ - 00811.h5
282
+ - 00812.h5
283
+ - 00814.h5
284
+ - 00818.h5
285
+ - 00819.h5
286
+ - 00820.h5
287
+ - 00821.h5
288
+ - 00823.h5
289
+ - 00825.h5
290
+ - 00827.h5
291
+ - 00831.h5
292
+ - 00832.h5
293
+ - 00833.h5
294
+ - 00835.h5
295
+ - 00837.h5
296
+ - 00840.h5
297
+ - 00841.h5
298
+ - 00842.h5
299
+ - 00849.h5
300
+ - 00850.h5
301
+ - 00851.h5
302
+ - 00852.h5
303
+ - 00853.h5
304
+ - 00855.h5
305
+ - 00859.h5
306
+ - 00864.h5
307
+ - 00865.h5
308
+ - 00869.h5
309
+ - 00872.h5
310
+ - 00873.h5
311
+ - 00874.h5
312
+ - 00875.h5
313
+ - 00878.h5
314
+ - 00881.h5
315
+ - 00882.h5
316
+ - 00886.h5
317
+ - 00888.h5
318
+ - 00889.h5
319
+ - 00891.h5
320
+ - 00892.h5
321
+ - 00894.h5
322
+ - 00896.h5
323
+ - 00897.h5
324
+ - 00898.h5
325
+ - 00899.h5
326
+ - 00900.h5
327
+ - 00904.h5
328
+ - 00905.h5
329
+ - 00907.h5
330
+ - 00911.h5
331
+ - 00912.h5
332
+ - 00914.h5
333
+ - 00915.h5
334
+ - 00923.h5
335
+ - 00924.h5
336
+ - 00927.h5
337
+ - 00931.h5
338
+ - 00933.h5
339
+ - 00934.h5
340
+ - 00938.h5
341
+ - 00944.h5
342
+ - 00945.h5
343
+ - 00947.h5
344
+ - 00948.h5
345
+ - 00956.h5
346
+ - 00961.h5
347
+ - 00963.h5
348
+ - 00969.h5
349
+ - 00971.h5
350
+ - 00974.h5
351
+ - 00980.h5
352
+ - 00981.h5
353
+ - 00982.h5
354
+ - 00983.h5
355
+ - 00984.h5
356
+ - 00986.h5
357
+ - 00989.h5
358
+ - 00991.h5
359
+ - 00992.h5
360
+ - 00997.h5
361
+ - 00999.h5
362
+ - 01000.h5
363
+ - 01002.h5
364
+ - 01003.h5
365
+ - 01009.h5
366
+ - 01010.h5
367
+ - 01012.h5
368
+ - 01015.h5
369
+ - 01018.h5
370
+ - 01019.h5
371
+ - 01020.h5
372
+ - 01021.h5
373
+ - 01022.h5
374
+ - 01024.h5
375
+ - 01025.h5
376
+ - 01031.h5
377
+ - 01032.h5
378
+ - 01034.h5
379
+ - 01035.h5
380
+ - 01038.h5
381
+ - 01039.h5
382
+ - 01042.h5
383
+ - 01044.h5
384
+ - 01045.h5
385
+ - 01046.h5
386
+ - 01050.h5
387
+ - 01052.h5
388
+ - 01054.h5
389
+ - 01055.h5
390
+ - 01056.h5
391
+ - 01057.h5
392
+ - 01058.h5
393
+ - 01059.h5
394
+ - 01060.h5
395
+ - 01062.h5
396
+ - 01063.h5
397
+ - 01064.h5
398
+ - 01065.h5
399
+ - 01069.h5
400
+ - 01070.h5
401
+ - 01073.h5
402
+ - 01075.h5
403
+ - 01076.h5
404
+ - 01077.h5
405
+ - 01080.h5
406
+ - 01081.h5
407
+ - 01082.h5
408
+ - 01083.h5
409
+ - 01084.h5
410
+ - 01085.h5
411
+ - 01086.h5
412
+ - 01087.h5
413
+ - 01088.h5
414
+ - 01089.h5
415
+ - 01090.h5
416
+ - 01092.h5
417
+ - 01093.h5
418
+ - 01095.h5
419
+ - 01100.h5
420
+ - 01102.h5
421
+ - 01104.h5
422
+ - 01105.h5
423
+ - 01106.h5
424
+ - 01107.h5
425
+ - 01110.h5
426
+ - 01118.h5
427
+ - 01120.h5
428
+ - 01121.h5
429
+ - 01123.h5
430
+ - 01127.h5
431
+ - 01128.h5
432
+ - 01129.h5
433
+ - 01135.h5
434
+ - 01138.h5
435
+ - 01139.h5
436
+ - 01143.h5
437
+ - 01145.h5
438
+ - 01146.h5
439
+ - 01147.h5
440
+ - 01149.h5
441
+ - 01151.h5
442
+ - 01156.h5
443
+ - 01157.h5
444
+ - 01158.h5
445
+ - 01161.h5
446
+ - 01162.h5
447
+ - 01163.h5
448
+ - 01164.h5
449
+ - 01165.h5
450
+ - 01166.h5
451
+ - 01167.h5
452
+ - 01168.h5
453
+ - 01169.h5
454
+ - 01170.h5
455
+ - 01171.h5
456
+ - 01172.h5
457
+ - 01173.h5
458
+ - 01174.h5
459
+ - 01175.h5
460
+ - 01177.h5
461
+ - 01178.h5
462
+ - 01180.h5
463
+ - 01181.h5
464
+ - 01182.h5
465
+ - 01184.h5
466
+ - 01186.h5
467
+ - 01188.h5
468
+ - 01191.h5
469
+ - 01195.h5
470
+ - 01199.h5
471
+ - 01201.h5
472
+ - 01204.h5
473
+ - 01207.h5
474
+ - 01208.h5
475
+ - 01209.h5
476
+ - 01211.h5
477
+ - 01212.h5
478
+ - 01213.h5
479
+ - 01219.h5
480
+ - 01221.h5
481
+ - 01222.h5
482
+ - 01231.h5
483
+ - 01232.h5
484
+ - 01233.h5
485
+ - 01237.h5
486
+ - 01243.h5
487
+ - 01244.h5
488
+ - 01247.h5
489
+ - 01250.h5
490
+ - 01252.h5
491
+ - 01254.h5
492
+ - 01255.h5
493
+ - 01256.h5
494
+ - 01259.h5
495
+ - 01260.h5
496
+ - 01262.h5
497
+ - 01266.h5
498
+ - 01269.h5
499
+ - 01270.h5
500
+ - 01275.h5
501
+ - 01276.h5
502
+ - 01279.h5
503
+ - 01281.h5
504
+ - 01283.h5
505
+ - 01285.h5
506
+ - 01293.h5
507
+ - 01295.h5
508
+ - 01298.h5
509
+ - 01300.h5
510
+ - 01301.h5
511
+ - 01303.h5
512
+ - 01304.h5
513
+ - 01315.h5
514
+ - 01316.h5
515
+ - 01320.h5
516
+ - 01323.h5
517
+ - 01327.h5
518
+ - 01328.h5
519
+ - 01330.h5
520
+ - 01331.h5
521
+ - 01333.h5
522
+ - 01340.h5
523
+ - 01347.h5
524
+ - 01348.h5
525
+ - 01349.h5
526
+ - 01351.h5
527
+ - 01352.h5
528
+ - 01353.h5
529
+ - 01354.h5
530
+ - 01356.h5
531
+ - 01357.h5
532
+ - 01358.h5
533
+ - 01360.h5
534
+ - 01361.h5
535
+ - 01362.h5
536
+ - 01368.h5
537
+ - 01375.h5
538
+ - 01377.h5
539
+ - 01379.h5
540
+ - 01380.h5
541
+ - 01382.h5
542
+ - 01383.h5
543
+ - 01384.h5
544
+ - 01386.h5
545
+ - 01387.h5
546
+ - 01388.h5
547
+ - 01389.h5
548
+ - 01390.h5
549
+ - 01391.h5
550
+ - 01393.h5
551
+ - 01396.h5
552
+ - 01400.h5
553
+ - 01405.h5
554
+ - 01406.h5
555
+ - 01414.h5
556
+ - 01415.h5
557
+ - 01420.h5
558
+ - 01421.h5
559
+ - 01423.h5
560
+ - 01424.h5
561
+ - 01428.h5
562
+ - 01430.h5
563
+ - 01431.h5
564
+ - 01434.h5
565
+ - 01435.h5
566
+ - 01438.h5
567
+ - 01440.h5
568
+ - 01445.h5
569
+ - 01446.h5
570
+ - 01448.h5
571
+ - 01451.h5
572
+ - 01454.h5
573
+ - 01456.h5
574
+ - 01459.h5
575
+ - 01460.h5
576
+ - 01462.h5
577
+ - 01467.h5
578
+ - 01470.h5
579
+ - 01471.h5
580
+ - 01472.h5
581
+ - 01473.h5
582
+ - 01478.h5
583
+ - 01479.h5
584
+ - 01480.h5
585
+ - 01481.h5
586
+ - 01482.h5
587
+ - 01483.h5
588
+ - 01485.h5
589
+ - 01486.h5
590
+ - 01487.h5
591
+ - 01488.h5
592
+ - 01491.h5
593
+ - 01492.h5
594
+ - 01496.h5
595
+ - 01497.h5
596
+ - 01499.h5
597
+ - 01508.h5
598
+ - 01510.h5
599
+ - 01511.h5
600
+ - 01514.h5
601
+ - 01515.h5
602
+ - 01516.h5
603
+ - 01519.h5
604
+ - 01523.h5
605
+ - 01524.h5
606
+ - 01528.h5
607
+ - 01531.h5
608
+ - 01532.h5
609
+ - 01533.h5
610
+ - 01534.h5
611
+ - 01540.h5
612
+ - 01542.h5
613
+ - 01546.h5
614
+ - 01551.h5
615
+ - 01553.h5
616
+ - 01566.h5
617
+ - 01569.h5
618
+ - 01574.h5
619
+ - 01577.h5
620
+ - 01581.h5
621
+ - 01582.h5
622
+ - 01583.h5
623
+ - 01584.h5
624
+ - 01602.h5
625
+ - 01603.h5
626
+ - 01604.h5
627
+ - 01606.h5
628
+ - 01611.h5
629
+ - 01612.h5
630
+ - 01613.h5
631
+ - 01617.h5
632
+ - 01618.h5
633
+ - 01627.h5
634
+ - 01630.h5
635
+ - 01631.h5
636
+ - 01633.h5
637
+ - 01635.h5
638
+ - 01636.h5
639
+ - 01637.h5
640
+ - 01640.h5
641
+ - 01643.h5
642
+ - 01644.h5
643
+ - 01645.h5
644
+ - 01648.h5
645
+ - 01650.h5
646
+ - 01651.h5
647
+ - 01653.h5
648
+ - 01658.h5
649
+ - 01665.h5
650
+ - 01669.h5
651
+ - 01671.h5
652
+ - 01678.h5
653
+ - 01680.h5
654
+ - 01681.h5
655
+ - 01682.h5
656
+ - 01684.h5
657
+ - 01687.h5
658
+ - 01690.h5
659
+ - 01692.h5
660
+ - 01693.h5
661
+ - 01697.h5
662
+ - 01698.h5
663
+ - 01700.h5
664
+ - 01703.h5
665
+ - 01705.h5
666
+ - 01706.h5
667
+ - 01709.h5
668
+ - 01710.h5
669
+ - 01713.h5
670
+ - 01717.h5
671
+ - 01718.h5
672
+ - 01719.h5
673
+ - 01720.h5
674
+ - 01726.h5
675
+ - 01727.h5
676
+ - 01728.h5
677
+ - 01729.h5
678
+ - 01730.h5
679
+ - 01731.h5
680
+ - 01734.h5
681
+ - 01738.h5
682
+ - 01741.h5
683
+ - 01744.h5
684
+ - 01745.h5
685
+ - 01747.h5
686
+ - 01748.h5
687
+ - 01755.h5
688
+ - 01762.h5
689
+ - 01763.h5
690
+ - 01768.h5
691
+ - 01770.h5
692
+ - 01771.h5
693
+ - 01775.h5
694
+ - 01778.h5
695
+ - 01779.h5
696
+ - 01783.h5
697
+ - 01789.h5
698
+ - 01792.h5
699
+ - 01795.h5
700
+ - 01796.h5
701
+ - 01798.h5
702
+ - 01802.h5
703
+ - 01803.h5
704
+ - 01806.h5
705
+ - 01812.h5
706
+ - 01816.h5
707
+ - 01817.h5
708
+ - 01818.h5
709
+ - 01821.h5
710
+ - 01823.h5
711
+ - 01825.h5
712
+ - 01826.h5
713
+ - 01827.h5
714
+ - 01828.h5
715
+ - 01833.h5
716
+ - 01843.h5
717
+ - 01849.h5
718
+ - 01858.h5
719
+ - 01860.h5
720
+ - 01862.h5
721
+ - 01866.h5
722
+ - 01867.h5
723
+ - 01868.h5
724
+ - 01869.h5
725
+ - 01870.h5
726
+ - 01874.h5
727
+ - 01878.h5
728
+ - 01880.h5
729
+ - 01882.h5
730
+ - 01883.h5
731
+ - 01884.h5
732
+ - 01885.h5
733
+ - 01887.h5
734
+ - 01888.h5
735
+ - 01889.h5
736
+ - 01892.h5
737
+ - 01897.h5
738
+ - 01900.h5
739
+ - 01901.h5
740
+ - 01902.h5
741
+ - 01905.h5
742
+ - 01906.h5
743
+ - 01907.h5
744
+ - 01908.h5
745
+ - 01912.h5
746
+ - 01915.h5
747
+ - 01921.h5
748
+ - 01922.h5
749
+ - 01924.h5
750
+ - 01925.h5
751
+ - 01926.h5
752
+ - 01927.h5
753
+ - 01930.h5
754
+ - 01933.h5
755
+ - 01936.h5
756
+ - 01943.h5
757
+ - 01960.h5
758
+ - 01961.h5
759
+ - 01962.h5
760
+ - 01964.h5
761
+ - 01965.h5
762
+ - 01966.h5
763
+ - 01975.h5
764
+ - 01976.h5
765
+ - 01977.h5
766
+ - 01979.h5
767
+ - 01984.h5
768
+ - 01987.h5
769
+ - 01995.h5
770
+ - 02009.h5
771
+ - 02011.h5
772
+ - 02015.h5
773
+ - 02019.h5
774
+ - 02022.h5
775
+ - 02023.h5
776
+ - 02024.h5
777
+ - 02025.h5
778
+ - 02026.h5
779
+ - 02028.h5
780
+ - 02029.h5
781
+ - 02034.h5
782
+ - 02035.h5
783
+ - 02038.h5
784
+ - 02045.h5
785
+ - 02047.h5
786
+ - 02051.h5
787
+ - 02052.h5
788
+ - 02056.h5
789
+ - 02058.h5
790
+ - 02059.h5
791
+ - 02061.h5
792
+ - 02064.h5
793
+ - 02065.h5
794
+ - 02077.h5
795
+ - 02084.h5
796
+ - 02085.h5
797
+ - 02086.h5
798
+ - 02087.h5
799
+ - 02090.h5
800
+ - 02092.h5
801
+ - 02093.h5
802
+ - 02099.h5
803
+ - 02102.h5
804
+ - 02105.h5
805
+ - 02106.h5
806
+ - 02112.h5
807
+ - 02113.h5
808
+ - 02114.h5
809
+ - 02115.h5
810
+ - 02118.h5
811
+ - 02123.h5
812
+ - 02131.h5
813
+ - 02136.h5
814
+ - 02137.h5
815
+ - 02138.h5
816
+ - 02140.h5
817
+ - 02141.h5
818
+ - 02142.h5
819
+ - 02152.h5
820
+ - 02154.h5
821
+ - 02156.h5
822
+ - 02159.h5
823
+ - 02161.h5
824
+ - 02162.h5
825
+ - 02168.h5
826
+ - 02170.h5
827
+ - 02172.h5
828
+ - 02173.h5
829
+ - 02186.h5
830
+ - 02187.h5
831
+ - 02193.h5
832
+ - 02198.h5
833
+ - 02203.h5
834
+ - 02204.h5
835
+ - 02206.h5
836
+ - 02207.h5
837
+ - 02212.h5
838
+ - 02216.h5
839
+ - 02219.h5
840
+ - 02220.h5
841
+ - 02229.h5
842
+ - 02230.h5
843
+ - 02232.h5
844
+ - 02234.h5
845
+ - 02237.h5
846
+ - 02241.h5
847
+ - 02244.h5
848
+ - 02249.h5
849
+ - 02250.h5
850
+ - 02255.h5
851
+ - 02257.h5
852
+ - 02264.h5
853
+ - 02266.h5
854
+ - 02267.h5
855
+ - 02270.h5
856
+ - 02272.h5
857
+ - 02277.h5
858
+ - 02278.h5
859
+ - 02279.h5
860
+ - 02282.h5
861
+ - 02293.h5
862
+ - 02297.h5
863
+ - 02298.h5
864
+ - 02300.h5
865
+ - 02311.h5
866
+ - 02314.h5
867
+ - 02319.h5
868
+ - 02321.h5
869
+ - 02322.h5
870
+ - 02324.h5
871
+ - 02326.h5
872
+ - 02327.h5
873
+ - 02328.h5
874
+ - 02332.h5
875
+ - 02334.h5
876
+ - 02337.h5
877
+ - 02339.h5
878
+ - 02342.h5
879
+ - 02343.h5
880
+ - 02347.h5
881
+ - 02349.h5
882
+ - 02350.h5
883
+ - 02352.h5
884
+ - 02355.h5
885
+ - 02358.h5
886
+ - 02359.h5
887
+ - 02361.h5
888
+ - 02362.h5
889
+ - 02365.h5
890
+ - 02366.h5
891
+ - 02367.h5
892
+ - 02368.h5
893
+ - 02370.h5
894
+ - 02371.h5
895
+ - 02373.h5
896
+ - 02375.h5
897
+ - 02379.h5
898
+ - 02394.h5
899
+ - 02412.h5
900
+ - 02414.h5
901
+ - 02415.h5
902
+ - 02418.h5
903
+ - 02420.h5
904
+ - 02421.h5
905
+ - 02424.h5
906
+ - 02426.h5
907
+ - 02430.h5
908
+ - 02431.h5
909
+ - 02432.h5
910
+ - 02434.h5
911
+ - 02435.h5
912
+ - 02436.h5
913
+ - 02439.h5
914
+ - 02440.h5
915
+ - 02441.h5
916
+ - 02442.h5
917
+ - 02443.h5
918
+ - 02445.h5
919
+ - 02447.h5
920
+ - 02448.h5
921
+ - 02452.h5
922
+ - 02454.h5
923
+ - 02457.h5
924
+ - 02458.h5
925
+ - 02459.h5
926
+ - 02462.h5
927
+ - 02465.h5
928
+ - 02467.h5
929
+ - 02468.h5
930
+ - 02469.h5
931
+ - 02472.h5
932
+ - 02474.h5
933
+ - 02478.h5
934
+ - 02510.h5
935
+ - 02518.h5
936
+ - 02520.h5
937
+ - 02521.h5
938
+ - 02522.h5
939
+ - 02524.h5
940
+ - 02525.h5
941
+ - 02534.h5
942
+ - 02535.h5
943
+ - 02540.h5
944
+ - 02547.h5
945
+ - 02550.h5
946
+ - 02552.h5
947
+ - 02553.h5
948
+ - 02554.h5
949
+ - 02557.h5
950
+ - 02559.h5
951
+ - 02566.h5
952
+ - 02567.h5
953
+ - 02571.h5
954
+ - 02573.h5
955
+ - 02575.h5
956
+ - 02576.h5
957
+ - 02578.h5
958
+ - 02581.h5
959
+ - 02585.h5
960
+ - 02587.h5
961
+ - 02588.h5
962
+ - 02590.h5
963
+ - 02595.h5
964
+ - 02610.h5
965
+ - 02611.h5
966
+ - 02613.h5
967
+ - 02615.h5
968
+ - 02617.h5
969
+ - 02619.h5
970
+ - 02629.h5
971
+ - 02632.h5
972
+ - 02634.h5
973
+ - 02649.h5
974
+ - 02663.h5
975
+ - 02666.h5
976
+ - 02669.h5
977
+ - 02673.h5
978
+ - 02681.h5
979
+ - 02689.h5
980
+ - 02690.h5
981
+ - 02700.h5
982
+ - 02705.h5
983
+ - 02709.h5
984
+ - 02713.h5
985
+ - 02718.h5
986
+ - 02721.h5
987
+ - 02722.h5
988
+ - 02723.h5
989
+ - 02725.h5
990
+ - 02729.h5
991
+ - 02730.h5
992
+ - 02732.h5
993
+ - 02737.h5
994
+ - 02740.h5
995
+ - 02741.h5
996
+ - 02749.h5
997
+ - 02758.h5
998
+ - 02760.h5
999
+ - 02761.h5
1000
+ - 02762.h5
1001
+ - 02763.h5
1002
+ - 02764.h5
1003
+ - 02765.h5
1004
+ - 02772.h5
1005
+ - 02773.h5
1006
+ - 02774.h5
1007
+ - 02776.h5
1008
+ - 02780.h5
1009
+ - 02781.h5
1010
+ - 02785.h5
1011
+ - 02797.h5
1012
+ - 02818.h5
1013
+ - 02819.h5
1014
+ - 02827.h5
1015
+ - 02829.h5
1016
+ - 02832.h5
1017
+ - 02837.h5
1018
+ - 02841.h5
1019
+ - 02843.h5
1020
+ - 02846.h5
1021
+ - 02847.h5
1022
+ - 02852.h5
1023
+ - 02854.h5
1024
+ - 02857.h5
1025
+ - 02868.h5
1026
+ - 02872.h5
1027
+ - 02873.h5
1028
+ - 02874.h5
1029
+ - 02876.h5
1030
+ - 02877.h5
1031
+ - 02878.h5
1032
+ - 02879.h5
1033
+ - 02880.h5
1034
+ - 02882.h5
1035
+ - 02883.h5
1036
+ - 02888.h5
1037
+ - 02898.h5
1038
+ - 02902.h5
1039
+ - 02908.h5
1040
+ - 02911.h5
1041
+ - 02919.h5
1042
+ - 02920.h5
1043
+ - 02921.h5
1044
+ - 02922.h5
1045
+ - 02924.h5
1046
+ - 02925.h5
1047
+ - 02928.h5
1048
+ - 02938.h5
1049
+ - 02941.h5
1050
+ - 02944.h5
1051
+ - 02945.h5
1052
+ - 02954.h5
1053
+ - 02955.h5
1054
+ - 02956.h5
1055
+ - 02960.h5
1056
+ - 02961.h5
1057
+ - 02964.h5
1058
+ - 02967.h5
1059
+ - 02977.h5
1060
+ - 02978.h5
1061
+ - 02979.h5
1062
+ - 02980.h5
1063
+ - 02985.h5
1064
+ - 02987.h5
1065
+ - 02988.h5
1066
+ - 02989.h5
1067
+ - 02991.h5
1068
+ - 02997.h5
1069
+ - 02998.h5
1070
+ - 03003.h5
1071
+ - 03004.h5
1072
+ - 03006.h5
1073
+ - 03009.h5
1074
+ - 03012.h5
1075
+ - 03013.h5
1076
+ - 03014.h5
1077
+ - 03023.h5
1078
+ - 03026.h5
1079
+ - 03027.h5
1080
+ - 03037.h5
1081
+ - 03042.h5
1082
+ - 03051.h5
1083
+ - 03057.h5
1084
+ - 03064.h5
1085
+ - 03065.h5
1086
+ - 03079.h5
1087
+ - 03089.h5
1088
+ - 03102.h5
1089
+ - 03107.h5
1090
+ - 03116.h5
1091
+ - 03122.h5
1092
+ - 03125.h5
1093
+ - 03130.h5
1094
+ - 03133.h5
1095
+ - 03134.h5
1096
+ - 03137.h5
1097
+ - 03139.h5
1098
+ - 03160.h5
1099
+ - 03163.h5
1100
+ - 03172.h5
1101
+ - 03174.h5
1102
+ - 03178.h5
1103
+ - 03179.h5
1104
+ - 03180.h5
1105
+ - 03188.h5
1106
+ - 03189.h5
1107
+ - 03190.h5
1108
+ - 03192.h5
1109
+ - 03193.h5
1110
+ - 03197.h5
1111
+ - 03199.h5
1112
+ - 03200.h5
1113
+ - 03205.h5
1114
+ - 03206.h5
1115
+ - 03211.h5
1116
+ - 03218.h5
1117
+ - 03219.h5
1118
+ - 03222.h5
1119
+ - 03225.h5
1120
+ - 03231.h5
1121
+ - 03246.h5
1122
+ - 03248.h5
1123
+ - 03251.h5
1124
+ - 03253.h5
1125
+ - 03255.h5
1126
+ - 03259.h5
1127
+ - 03263.h5
1128
+ - 03265.h5
1129
+ - 03266.h5
1130
+ - 03273.h5
1131
+ - 03275.h5
1132
+ - 03277.h5
1133
+ - 03278.h5
1134
+ - 03282.h5
1135
+ - 03283.h5
1136
+ - 03302.h5
1137
+ - 03303.h5
1138
+ - 03304.h5
1139
+ - 03307.h5
1140
+ - 03314.h5
1141
+ - 03315.h5
1142
+ - 03327.h5
1143
+ - 03328.h5
1144
+ - 03332.h5
1145
+ - 03336.h5
1146
+ - 03340.h5
1147
+ - 03342.h5
1148
+ - 03343.h5
1149
+ - 03348.h5
1150
+ - 03351.h5
1151
+ - 03354.h5
1152
+ - 03358.h5
1153
+ - 03359.h5
1154
+ - 03360.h5
1155
+ - 03367.h5
1156
+ - 03371.h5
1157
+ - 03374.h5
1158
+ - 03375.h5
1159
+ - 03377.h5
1160
+ - 03378.h5
1161
+ - 03379.h5
1162
+ - 03381.h5
1163
+ - 03382.h5
1164
+ - 03384.h5
1165
+ - 03397.h5
1166
+ - 03403.h5
1167
+ - 03406.h5
1168
+ - 03413.h5
1169
+ - 03425.h5
1170
+ - 03431.h5
1171
+ - 03432.h5
1172
+ - 03435.h5
1173
+ - 03442.h5
1174
+ - 03453.h5
1175
+ - 03454.h5
1176
+ - 03456.h5
1177
+ - 03463.h5
1178
+ - 03465.h5
1179
+ - 03466.h5
1180
+ - 03467.h5
1181
+ - 03469.h5
1182
+ - 03473.h5
1183
+ - 03491.h5
1184
+ - 03492.h5
1185
+ - 03495.h5
1186
+ - 03498.h5
1187
+ - 03501.h5
1188
+ - 03502.h5
1189
+
unigaze/configs/data/gazecapture_train_ds15.yaml ADDED
@@ -0,0 +1,1189 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ type: datasets.gazecapture.GazeCaptureDataset
2
+ params:
3
+ data_name: gazecapture_train_224
4
+ color_type: rgb
5
+ transform_type: 'basic_imagenet'
6
+ image_size: 224
7
+ dataset_path: null
8
+ sample_rate_use: 15
9
+ keys_to_use:
10
+ - 00002.h5
11
+ - 00003.h5
12
+ - 00005.h5
13
+ - 00006.h5
14
+ - 00024.h5
15
+ - 00028.h5
16
+ - 00033.h5
17
+ - 00034.h5
18
+ - 00087.h5
19
+ - 00089.h5
20
+ - 00097.h5
21
+ - 00098.h5
22
+ - 00099.h5
23
+ - 00102.h5
24
+ - 00103.h5
25
+ - 00104.h5
26
+ - 00114.h5
27
+ - 00120.h5
28
+ - 00121.h5
29
+ - 00122.h5
30
+ - 00123.h5
31
+ - 00127.h5
32
+ - 00128.h5
33
+ - 00130.h5
34
+ - 00132.h5
35
+ - 00137.h5
36
+ - 00138.h5
37
+ - 00139.h5
38
+ - 00140.h5
39
+ - 00141.h5
40
+ - 00142.h5
41
+ - 00143.h5
42
+ - 00144.h5
43
+ - 00145.h5
44
+ - 00146.h5
45
+ - 00148.h5
46
+ - 00149.h5
47
+ - 00150.h5
48
+ - 00153.h5
49
+ - 00154.h5
50
+ - 00156.h5
51
+ - 00162.h5
52
+ - 00164.h5
53
+ - 00165.h5
54
+ - 00173.h5
55
+ - 00179.h5
56
+ - 00191.h5
57
+ - 00194.h5
58
+ - 00200.h5
59
+ - 00202.h5
60
+ - 00208.h5
61
+ - 00209.h5
62
+ - 00210.h5
63
+ - 00211.h5
64
+ - 00212.h5
65
+ - 00214.h5
66
+ - 00218.h5
67
+ - 00221.h5
68
+ - 00224.h5
69
+ - 00225.h5
70
+ - 00226.h5
71
+ - 00227.h5
72
+ - 00228.h5
73
+ - 00232.h5
74
+ - 00234.h5
75
+ - 00236.h5
76
+ - 00237.h5
77
+ - 00238.h5
78
+ - 00239.h5
79
+ - 00240.h5
80
+ - 00241.h5
81
+ - 00243.h5
82
+ - 00245.h5
83
+ - 00247.h5
84
+ - 00249.h5
85
+ - 00268.h5
86
+ - 00269.h5
87
+ - 00273.h5
88
+ - 00274.h5
89
+ - 00285.h5
90
+ - 00288.h5
91
+ - 00289.h5
92
+ - 00295.h5
93
+ - 00296.h5
94
+ - 00299.h5
95
+ - 00300.h5
96
+ - 00303.h5
97
+ - 00304.h5
98
+ - 00305.h5
99
+ - 00307.h5
100
+ - 00309.h5
101
+ - 00310.h5
102
+ - 00311.h5
103
+ - 00312.h5
104
+ - 00317.h5
105
+ - 00324.h5
106
+ - 00325.h5
107
+ - 00326.h5
108
+ - 00331.h5
109
+ - 00332.h5
110
+ - 00339.h5
111
+ - 00342.h5
112
+ - 00351.h5
113
+ - 00354.h5
114
+ - 00355.h5
115
+ - 00356.h5
116
+ - 00357.h5
117
+ - 00358.h5
118
+ - 00359.h5
119
+ - 00363.h5
120
+ - 00376.h5
121
+ - 00377.h5
122
+ - 00459.h5
123
+ - 00465.h5
124
+ - 00466.h5
125
+ - 00467.h5
126
+ - 00469.h5
127
+ - 00472.h5
128
+ - 00473.h5
129
+ - 00475.h5
130
+ - 00477.h5
131
+ - 00480.h5
132
+ - 00481.h5
133
+ - 00487.h5
134
+ - 00488.h5
135
+ - 00491.h5
136
+ - 00492.h5
137
+ - 00493.h5
138
+ - 00494.h5
139
+ - 00495.h5
140
+ - 00496.h5
141
+ - 00499.h5
142
+ - 00501.h5
143
+ - 00503.h5
144
+ - 00505.h5
145
+ - 00510.h5
146
+ - 00512.h5
147
+ - 00513.h5
148
+ - 00514.h5
149
+ - 00518.h5
150
+ - 00519.h5
151
+ - 00520.h5
152
+ - 00522.h5
153
+ - 00525.h5
154
+ - 00531.h5
155
+ - 00533.h5
156
+ - 00534.h5
157
+ - 00535.h5
158
+ - 00539.h5
159
+ - 00540.h5
160
+ - 00542.h5
161
+ - 00544.h5
162
+ - 00545.h5
163
+ - 00548.h5
164
+ - 00550.h5
165
+ - 00553.h5
166
+ - 00554.h5
167
+ - 00555.h5
168
+ - 00560.h5
169
+ - 00562.h5
170
+ - 00565.h5
171
+ - 00566.h5
172
+ - 00569.h5
173
+ - 00572.h5
174
+ - 00574.h5
175
+ - 00575.h5
176
+ - 00578.h5
177
+ - 00581.h5
178
+ - 00584.h5
179
+ - 00588.h5
180
+ - 00590.h5
181
+ - 00599.h5
182
+ - 00600.h5
183
+ - 00601.h5
184
+ - 00602.h5
185
+ - 00605.h5
186
+ - 00606.h5
187
+ - 00607.h5
188
+ - 00610.h5
189
+ - 00613.h5
190
+ - 00617.h5
191
+ - 00621.h5
192
+ - 00622.h5
193
+ - 00623.h5
194
+ - 00624.h5
195
+ - 00626.h5
196
+ - 00627.h5
197
+ - 00632.h5
198
+ - 00633.h5
199
+ - 00634.h5
200
+ - 00636.h5
201
+ - 00638.h5
202
+ - 00641.h5
203
+ - 00642.h5
204
+ - 00643.h5
205
+ - 00644.h5
206
+ - 00645.h5
207
+ - 00649.h5
208
+ - 00650.h5
209
+ - 00658.h5
210
+ - 00661.h5
211
+ - 00663.h5
212
+ - 00666.h5
213
+ - 00667.h5
214
+ - 00668.h5
215
+ - 00669.h5
216
+ - 00670.h5
217
+ - 00672.h5
218
+ - 00675.h5
219
+ - 00676.h5
220
+ - 00677.h5
221
+ - 00678.h5
222
+ - 00679.h5
223
+ - 00682.h5
224
+ - 00683.h5
225
+ - 00687.h5
226
+ - 00688.h5
227
+ - 00690.h5
228
+ - 00691.h5
229
+ - 00693.h5
230
+ - 00694.h5
231
+ - 00695.h5
232
+ - 00699.h5
233
+ - 00704.h5
234
+ - 00706.h5
235
+ - 00707.h5
236
+ - 00710.h5
237
+ - 00711.h5
238
+ - 00712.h5
239
+ - 00714.h5
240
+ - 00716.h5
241
+ - 00718.h5
242
+ - 00719.h5
243
+ - 00722.h5
244
+ - 00728.h5
245
+ - 00729.h5
246
+ - 00730.h5
247
+ - 00731.h5
248
+ - 00732.h5
249
+ - 00733.h5
250
+ - 00737.h5
251
+ - 00742.h5
252
+ - 00743.h5
253
+ - 00745.h5
254
+ - 00747.h5
255
+ - 00749.h5
256
+ - 00750.h5
257
+ - 00752.h5
258
+ - 00753.h5
259
+ - 00755.h5
260
+ - 00756.h5
261
+ - 00757.h5
262
+ - 00764.h5
263
+ - 00765.h5
264
+ - 00767.h5
265
+ - 00771.h5
266
+ - 00772.h5
267
+ - 00773.h5
268
+ - 00774.h5
269
+ - 00775.h5
270
+ - 00789.h5
271
+ - 00790.h5
272
+ - 00791.h5
273
+ - 00795.h5
274
+ - 00798.h5
275
+ - 00801.h5
276
+ - 00802.h5
277
+ - 00804.h5
278
+ - 00806.h5
279
+ - 00807.h5
280
+ - 00810.h5
281
+ - 00811.h5
282
+ - 00812.h5
283
+ - 00814.h5
284
+ - 00818.h5
285
+ - 00819.h5
286
+ - 00820.h5
287
+ - 00821.h5
288
+ - 00823.h5
289
+ - 00825.h5
290
+ - 00827.h5
291
+ - 00831.h5
292
+ - 00832.h5
293
+ - 00833.h5
294
+ - 00835.h5
295
+ - 00837.h5
296
+ - 00840.h5
297
+ - 00841.h5
298
+ - 00842.h5
299
+ - 00849.h5
300
+ - 00850.h5
301
+ - 00851.h5
302
+ - 00852.h5
303
+ - 00853.h5
304
+ - 00855.h5
305
+ - 00859.h5
306
+ - 00864.h5
307
+ - 00865.h5
308
+ - 00869.h5
309
+ - 00872.h5
310
+ - 00873.h5
311
+ - 00874.h5
312
+ - 00875.h5
313
+ - 00878.h5
314
+ - 00881.h5
315
+ - 00882.h5
316
+ - 00886.h5
317
+ - 00888.h5
318
+ - 00889.h5
319
+ - 00891.h5
320
+ - 00892.h5
321
+ - 00894.h5
322
+ - 00896.h5
323
+ - 00897.h5
324
+ - 00898.h5
325
+ - 00899.h5
326
+ - 00900.h5
327
+ - 00904.h5
328
+ - 00905.h5
329
+ - 00907.h5
330
+ - 00911.h5
331
+ - 00912.h5
332
+ - 00914.h5
333
+ - 00915.h5
334
+ - 00923.h5
335
+ - 00924.h5
336
+ - 00927.h5
337
+ - 00931.h5
338
+ - 00933.h5
339
+ - 00934.h5
340
+ - 00938.h5
341
+ - 00944.h5
342
+ - 00945.h5
343
+ - 00947.h5
344
+ - 00948.h5
345
+ - 00956.h5
346
+ - 00961.h5
347
+ - 00963.h5
348
+ - 00969.h5
349
+ - 00971.h5
350
+ - 00974.h5
351
+ - 00980.h5
352
+ - 00981.h5
353
+ - 00982.h5
354
+ - 00983.h5
355
+ - 00984.h5
356
+ - 00986.h5
357
+ - 00989.h5
358
+ - 00991.h5
359
+ - 00992.h5
360
+ - 00997.h5
361
+ - 00999.h5
362
+ - 01000.h5
363
+ - 01002.h5
364
+ - 01003.h5
365
+ - 01009.h5
366
+ - 01010.h5
367
+ - 01012.h5
368
+ - 01015.h5
369
+ - 01018.h5
370
+ - 01019.h5
371
+ - 01020.h5
372
+ - 01021.h5
373
+ - 01022.h5
374
+ - 01024.h5
375
+ - 01025.h5
376
+ - 01031.h5
377
+ - 01032.h5
378
+ - 01034.h5
379
+ - 01035.h5
380
+ - 01038.h5
381
+ - 01039.h5
382
+ - 01042.h5
383
+ - 01044.h5
384
+ - 01045.h5
385
+ - 01046.h5
386
+ - 01050.h5
387
+ - 01052.h5
388
+ - 01054.h5
389
+ - 01055.h5
390
+ - 01056.h5
391
+ - 01057.h5
392
+ - 01058.h5
393
+ - 01059.h5
394
+ - 01060.h5
395
+ - 01062.h5
396
+ - 01063.h5
397
+ - 01064.h5
398
+ - 01065.h5
399
+ - 01069.h5
400
+ - 01070.h5
401
+ - 01073.h5
402
+ - 01075.h5
403
+ - 01076.h5
404
+ - 01077.h5
405
+ - 01080.h5
406
+ - 01081.h5
407
+ - 01082.h5
408
+ - 01083.h5
409
+ - 01084.h5
410
+ - 01085.h5
411
+ - 01086.h5
412
+ - 01087.h5
413
+ - 01088.h5
414
+ - 01089.h5
415
+ - 01090.h5
416
+ - 01092.h5
417
+ - 01093.h5
418
+ - 01095.h5
419
+ - 01100.h5
420
+ - 01102.h5
421
+ - 01104.h5
422
+ - 01105.h5
423
+ - 01106.h5
424
+ - 01107.h5
425
+ - 01110.h5
426
+ - 01118.h5
427
+ - 01120.h5
428
+ - 01121.h5
429
+ - 01123.h5
430
+ - 01127.h5
431
+ - 01128.h5
432
+ - 01129.h5
433
+ - 01135.h5
434
+ - 01138.h5
435
+ - 01139.h5
436
+ - 01143.h5
437
+ - 01145.h5
438
+ - 01146.h5
439
+ - 01147.h5
440
+ - 01149.h5
441
+ - 01151.h5
442
+ - 01156.h5
443
+ - 01157.h5
444
+ - 01158.h5
445
+ - 01161.h5
446
+ - 01162.h5
447
+ - 01163.h5
448
+ - 01164.h5
449
+ - 01165.h5
450
+ - 01166.h5
451
+ - 01167.h5
452
+ - 01168.h5
453
+ - 01169.h5
454
+ - 01170.h5
455
+ - 01171.h5
456
+ - 01172.h5
457
+ - 01173.h5
458
+ - 01174.h5
459
+ - 01175.h5
460
+ - 01177.h5
461
+ - 01178.h5
462
+ - 01180.h5
463
+ - 01181.h5
464
+ - 01182.h5
465
+ - 01184.h5
466
+ - 01186.h5
467
+ - 01188.h5
468
+ - 01191.h5
469
+ - 01195.h5
470
+ - 01199.h5
471
+ - 01201.h5
472
+ - 01204.h5
473
+ - 01207.h5
474
+ - 01208.h5
475
+ - 01209.h5
476
+ - 01211.h5
477
+ - 01212.h5
478
+ - 01213.h5
479
+ - 01219.h5
480
+ - 01221.h5
481
+ - 01222.h5
482
+ - 01231.h5
483
+ - 01232.h5
484
+ - 01233.h5
485
+ - 01237.h5
486
+ - 01243.h5
487
+ - 01244.h5
488
+ - 01247.h5
489
+ - 01250.h5
490
+ - 01252.h5
491
+ - 01254.h5
492
+ - 01255.h5
493
+ - 01256.h5
494
+ - 01259.h5
495
+ - 01260.h5
496
+ - 01262.h5
497
+ - 01266.h5
498
+ - 01269.h5
499
+ - 01270.h5
500
+ - 01275.h5
501
+ - 01276.h5
502
+ - 01279.h5
503
+ - 01281.h5
504
+ - 01283.h5
505
+ - 01285.h5
506
+ - 01293.h5
507
+ - 01295.h5
508
+ - 01298.h5
509
+ - 01300.h5
510
+ - 01301.h5
511
+ - 01303.h5
512
+ - 01304.h5
513
+ - 01315.h5
514
+ - 01316.h5
515
+ - 01320.h5
516
+ - 01323.h5
517
+ - 01327.h5
518
+ - 01328.h5
519
+ - 01330.h5
520
+ - 01331.h5
521
+ - 01333.h5
522
+ - 01340.h5
523
+ - 01347.h5
524
+ - 01348.h5
525
+ - 01349.h5
526
+ - 01351.h5
527
+ - 01352.h5
528
+ - 01353.h5
529
+ - 01354.h5
530
+ - 01356.h5
531
+ - 01357.h5
532
+ - 01358.h5
533
+ - 01360.h5
534
+ - 01361.h5
535
+ - 01362.h5
536
+ - 01368.h5
537
+ - 01375.h5
538
+ - 01377.h5
539
+ - 01379.h5
540
+ - 01380.h5
541
+ - 01382.h5
542
+ - 01383.h5
543
+ - 01384.h5
544
+ - 01386.h5
545
+ - 01387.h5
546
+ - 01388.h5
547
+ - 01389.h5
548
+ - 01390.h5
549
+ - 01391.h5
550
+ - 01393.h5
551
+ - 01396.h5
552
+ - 01400.h5
553
+ - 01405.h5
554
+ - 01406.h5
555
+ - 01414.h5
556
+ - 01415.h5
557
+ - 01420.h5
558
+ - 01421.h5
559
+ - 01423.h5
560
+ - 01424.h5
561
+ - 01428.h5
562
+ - 01430.h5
563
+ - 01431.h5
564
+ - 01434.h5
565
+ - 01435.h5
566
+ - 01438.h5
567
+ - 01440.h5
568
+ - 01445.h5
569
+ - 01446.h5
570
+ - 01448.h5
571
+ - 01451.h5
572
+ - 01454.h5
573
+ - 01456.h5
574
+ - 01459.h5
575
+ - 01460.h5
576
+ - 01462.h5
577
+ - 01467.h5
578
+ - 01470.h5
579
+ - 01471.h5
580
+ - 01472.h5
581
+ - 01473.h5
582
+ - 01478.h5
583
+ - 01479.h5
584
+ - 01480.h5
585
+ - 01481.h5
586
+ - 01482.h5
587
+ - 01483.h5
588
+ - 01485.h5
589
+ - 01486.h5
590
+ - 01487.h5
591
+ - 01488.h5
592
+ - 01491.h5
593
+ - 01492.h5
594
+ - 01496.h5
595
+ - 01497.h5
596
+ - 01499.h5
597
+ - 01508.h5
598
+ - 01510.h5
599
+ - 01511.h5
600
+ - 01514.h5
601
+ - 01515.h5
602
+ - 01516.h5
603
+ - 01519.h5
604
+ - 01523.h5
605
+ - 01524.h5
606
+ - 01528.h5
607
+ - 01531.h5
608
+ - 01532.h5
609
+ - 01533.h5
610
+ - 01534.h5
611
+ - 01540.h5
612
+ - 01542.h5
613
+ - 01546.h5
614
+ - 01551.h5
615
+ - 01553.h5
616
+ - 01566.h5
617
+ - 01569.h5
618
+ - 01574.h5
619
+ - 01577.h5
620
+ - 01581.h5
621
+ - 01582.h5
622
+ - 01583.h5
623
+ - 01584.h5
624
+ - 01602.h5
625
+ - 01603.h5
626
+ - 01604.h5
627
+ - 01606.h5
628
+ - 01611.h5
629
+ - 01612.h5
630
+ - 01613.h5
631
+ - 01617.h5
632
+ - 01618.h5
633
+ - 01627.h5
634
+ - 01630.h5
635
+ - 01631.h5
636
+ - 01633.h5
637
+ - 01635.h5
638
+ - 01636.h5
639
+ - 01637.h5
640
+ - 01640.h5
641
+ - 01643.h5
642
+ - 01644.h5
643
+ - 01645.h5
644
+ - 01648.h5
645
+ - 01650.h5
646
+ - 01651.h5
647
+ - 01653.h5
648
+ - 01658.h5
649
+ - 01665.h5
650
+ - 01669.h5
651
+ - 01671.h5
652
+ - 01678.h5
653
+ - 01680.h5
654
+ - 01681.h5
655
+ - 01682.h5
656
+ - 01684.h5
657
+ - 01687.h5
658
+ - 01690.h5
659
+ - 01692.h5
660
+ - 01693.h5
661
+ - 01697.h5
662
+ - 01698.h5
663
+ - 01700.h5
664
+ - 01703.h5
665
+ - 01705.h5
666
+ - 01706.h5
667
+ - 01709.h5
668
+ - 01710.h5
669
+ - 01713.h5
670
+ - 01717.h5
671
+ - 01718.h5
672
+ - 01719.h5
673
+ - 01720.h5
674
+ - 01726.h5
675
+ - 01727.h5
676
+ - 01728.h5
677
+ - 01729.h5
678
+ - 01730.h5
679
+ - 01731.h5
680
+ - 01734.h5
681
+ - 01738.h5
682
+ - 01741.h5
683
+ - 01744.h5
684
+ - 01745.h5
685
+ - 01747.h5
686
+ - 01748.h5
687
+ - 01755.h5
688
+ - 01762.h5
689
+ - 01763.h5
690
+ - 01768.h5
691
+ - 01770.h5
692
+ - 01771.h5
693
+ - 01775.h5
694
+ - 01778.h5
695
+ - 01779.h5
696
+ - 01783.h5
697
+ - 01789.h5
698
+ - 01792.h5
699
+ - 01795.h5
700
+ - 01796.h5
701
+ - 01798.h5
702
+ - 01802.h5
703
+ - 01803.h5
704
+ - 01806.h5
705
+ - 01812.h5
706
+ - 01816.h5
707
+ - 01817.h5
708
+ - 01818.h5
709
+ - 01821.h5
710
+ - 01823.h5
711
+ - 01825.h5
712
+ - 01826.h5
713
+ - 01827.h5
714
+ - 01828.h5
715
+ - 01833.h5
716
+ - 01843.h5
717
+ - 01849.h5
718
+ - 01858.h5
719
+ - 01860.h5
720
+ - 01862.h5
721
+ - 01866.h5
722
+ - 01867.h5
723
+ - 01868.h5
724
+ - 01869.h5
725
+ - 01870.h5
726
+ - 01874.h5
727
+ - 01878.h5
728
+ - 01880.h5
729
+ - 01882.h5
730
+ - 01883.h5
731
+ - 01884.h5
732
+ - 01885.h5
733
+ - 01887.h5
734
+ - 01888.h5
735
+ - 01889.h5
736
+ - 01892.h5
737
+ - 01897.h5
738
+ - 01900.h5
739
+ - 01901.h5
740
+ - 01902.h5
741
+ - 01905.h5
742
+ - 01906.h5
743
+ - 01907.h5
744
+ - 01908.h5
745
+ - 01912.h5
746
+ - 01915.h5
747
+ - 01921.h5
748
+ - 01922.h5
749
+ - 01924.h5
750
+ - 01925.h5
751
+ - 01926.h5
752
+ - 01927.h5
753
+ - 01930.h5
754
+ - 01933.h5
755
+ - 01936.h5
756
+ - 01943.h5
757
+ - 01960.h5
758
+ - 01961.h5
759
+ - 01962.h5
760
+ - 01964.h5
761
+ - 01965.h5
762
+ - 01966.h5
763
+ - 01975.h5
764
+ - 01976.h5
765
+ - 01977.h5
766
+ - 01979.h5
767
+ - 01984.h5
768
+ - 01987.h5
769
+ - 01995.h5
770
+ - 02009.h5
771
+ - 02011.h5
772
+ - 02015.h5
773
+ - 02019.h5
774
+ - 02022.h5
775
+ - 02023.h5
776
+ - 02024.h5
777
+ - 02025.h5
778
+ - 02026.h5
779
+ - 02028.h5
780
+ - 02029.h5
781
+ - 02034.h5
782
+ - 02035.h5
783
+ - 02038.h5
784
+ - 02045.h5
785
+ - 02047.h5
786
+ - 02051.h5
787
+ - 02052.h5
788
+ - 02056.h5
789
+ - 02058.h5
790
+ - 02059.h5
791
+ - 02061.h5
792
+ - 02064.h5
793
+ - 02065.h5
794
+ - 02077.h5
795
+ - 02084.h5
796
+ - 02085.h5
797
+ - 02086.h5
798
+ - 02087.h5
799
+ - 02090.h5
800
+ - 02092.h5
801
+ - 02093.h5
802
+ - 02099.h5
803
+ - 02102.h5
804
+ - 02105.h5
805
+ - 02106.h5
806
+ - 02112.h5
807
+ - 02113.h5
808
+ - 02114.h5
809
+ - 02115.h5
810
+ - 02118.h5
811
+ - 02123.h5
812
+ - 02131.h5
813
+ - 02136.h5
814
+ - 02137.h5
815
+ - 02138.h5
816
+ - 02140.h5
817
+ - 02141.h5
818
+ - 02142.h5
819
+ - 02152.h5
820
+ - 02154.h5
821
+ - 02156.h5
822
+ - 02159.h5
823
+ - 02161.h5
824
+ - 02162.h5
825
+ - 02168.h5
826
+ - 02170.h5
827
+ - 02172.h5
828
+ - 02173.h5
829
+ - 02186.h5
830
+ - 02187.h5
831
+ - 02193.h5
832
+ - 02198.h5
833
+ - 02203.h5
834
+ - 02204.h5
835
+ - 02206.h5
836
+ - 02207.h5
837
+ - 02212.h5
838
+ - 02216.h5
839
+ - 02219.h5
840
+ - 02220.h5
841
+ - 02229.h5
842
+ - 02230.h5
843
+ - 02232.h5
844
+ - 02234.h5
845
+ - 02237.h5
846
+ - 02241.h5
847
+ - 02244.h5
848
+ - 02249.h5
849
+ - 02250.h5
850
+ - 02255.h5
851
+ - 02257.h5
852
+ - 02264.h5
853
+ - 02266.h5
854
+ - 02267.h5
855
+ - 02270.h5
856
+ - 02272.h5
857
+ - 02277.h5
858
+ - 02278.h5
859
+ - 02279.h5
860
+ - 02282.h5
861
+ - 02293.h5
862
+ - 02297.h5
863
+ - 02298.h5
864
+ - 02300.h5
865
+ - 02311.h5
866
+ - 02314.h5
867
+ - 02319.h5
868
+ - 02321.h5
869
+ - 02322.h5
870
+ - 02324.h5
871
+ - 02326.h5
872
+ - 02327.h5
873
+ - 02328.h5
874
+ - 02332.h5
875
+ - 02334.h5
876
+ - 02337.h5
877
+ - 02339.h5
878
+ - 02342.h5
879
+ - 02343.h5
880
+ - 02347.h5
881
+ - 02349.h5
882
+ - 02350.h5
883
+ - 02352.h5
884
+ - 02355.h5
885
+ - 02358.h5
886
+ - 02359.h5
887
+ - 02361.h5
888
+ - 02362.h5
889
+ - 02365.h5
890
+ - 02366.h5
891
+ - 02367.h5
892
+ - 02368.h5
893
+ - 02370.h5
894
+ - 02371.h5
895
+ - 02373.h5
896
+ - 02375.h5
897
+ - 02379.h5
898
+ - 02394.h5
899
+ - 02412.h5
900
+ - 02414.h5
901
+ - 02415.h5
902
+ - 02418.h5
903
+ - 02420.h5
904
+ - 02421.h5
905
+ - 02424.h5
906
+ - 02426.h5
907
+ - 02430.h5
908
+ - 02431.h5
909
+ - 02432.h5
910
+ - 02434.h5
911
+ - 02435.h5
912
+ - 02436.h5
913
+ - 02439.h5
914
+ - 02440.h5
915
+ - 02441.h5
916
+ - 02442.h5
917
+ - 02443.h5
918
+ - 02445.h5
919
+ - 02447.h5
920
+ - 02448.h5
921
+ - 02452.h5
922
+ - 02454.h5
923
+ - 02457.h5
924
+ - 02458.h5
925
+ - 02459.h5
926
+ - 02462.h5
927
+ - 02465.h5
928
+ - 02467.h5
929
+ - 02468.h5
930
+ - 02469.h5
931
+ - 02472.h5
932
+ - 02474.h5
933
+ - 02478.h5
934
+ - 02510.h5
935
+ - 02518.h5
936
+ - 02520.h5
937
+ - 02521.h5
938
+ - 02522.h5
939
+ - 02524.h5
940
+ - 02525.h5
941
+ - 02534.h5
942
+ - 02535.h5
943
+ - 02540.h5
944
+ - 02547.h5
945
+ - 02550.h5
946
+ - 02552.h5
947
+ - 02553.h5
948
+ - 02554.h5
949
+ - 02557.h5
950
+ - 02559.h5
951
+ - 02566.h5
952
+ - 02567.h5
953
+ - 02571.h5
954
+ - 02573.h5
955
+ - 02575.h5
956
+ - 02576.h5
957
+ - 02578.h5
958
+ - 02581.h5
959
+ - 02585.h5
960
+ - 02587.h5
961
+ - 02588.h5
962
+ - 02590.h5
963
+ - 02595.h5
964
+ - 02610.h5
965
+ - 02611.h5
966
+ - 02613.h5
967
+ - 02615.h5
968
+ - 02617.h5
969
+ - 02619.h5
970
+ - 02629.h5
971
+ - 02632.h5
972
+ - 02634.h5
973
+ - 02649.h5
974
+ - 02663.h5
975
+ - 02666.h5
976
+ - 02669.h5
977
+ - 02673.h5
978
+ - 02681.h5
979
+ - 02689.h5
980
+ - 02690.h5
981
+ - 02700.h5
982
+ - 02705.h5
983
+ - 02709.h5
984
+ - 02713.h5
985
+ - 02718.h5
986
+ - 02721.h5
987
+ - 02722.h5
988
+ - 02723.h5
989
+ - 02725.h5
990
+ - 02729.h5
991
+ - 02730.h5
992
+ - 02732.h5
993
+ - 02737.h5
994
+ - 02740.h5
995
+ - 02741.h5
996
+ - 02749.h5
997
+ - 02758.h5
998
+ - 02760.h5
999
+ - 02761.h5
1000
+ - 02762.h5
1001
+ - 02763.h5
1002
+ - 02764.h5
1003
+ - 02765.h5
1004
+ - 02772.h5
1005
+ - 02773.h5
1006
+ - 02774.h5
1007
+ - 02776.h5
1008
+ - 02780.h5
1009
+ - 02781.h5
1010
+ - 02785.h5
1011
+ - 02797.h5
1012
+ - 02818.h5
1013
+ - 02819.h5
1014
+ - 02827.h5
1015
+ - 02829.h5
1016
+ - 02832.h5
1017
+ - 02837.h5
1018
+ - 02841.h5
1019
+ - 02843.h5
1020
+ - 02846.h5
1021
+ - 02847.h5
1022
+ - 02852.h5
1023
+ - 02854.h5
1024
+ - 02857.h5
1025
+ - 02868.h5
1026
+ - 02872.h5
1027
+ - 02873.h5
1028
+ - 02874.h5
1029
+ - 02876.h5
1030
+ - 02877.h5
1031
+ - 02878.h5
1032
+ - 02879.h5
1033
+ - 02880.h5
1034
+ - 02882.h5
1035
+ - 02883.h5
1036
+ - 02888.h5
1037
+ - 02898.h5
1038
+ - 02902.h5
1039
+ - 02908.h5
1040
+ - 02911.h5
1041
+ - 02919.h5
1042
+ - 02920.h5
1043
+ - 02921.h5
1044
+ - 02922.h5
1045
+ - 02924.h5
1046
+ - 02925.h5
1047
+ - 02928.h5
1048
+ - 02938.h5
1049
+ - 02941.h5
1050
+ - 02944.h5
1051
+ - 02945.h5
1052
+ - 02954.h5
1053
+ - 02955.h5
1054
+ - 02956.h5
1055
+ - 02960.h5
1056
+ - 02961.h5
1057
+ - 02964.h5
1058
+ - 02967.h5
1059
+ - 02977.h5
1060
+ - 02978.h5
1061
+ - 02979.h5
1062
+ - 02980.h5
1063
+ - 02985.h5
1064
+ - 02987.h5
1065
+ - 02988.h5
1066
+ - 02989.h5
1067
+ - 02991.h5
1068
+ - 02997.h5
1069
+ - 02998.h5
1070
+ - 03003.h5
1071
+ - 03004.h5
1072
+ - 03006.h5
1073
+ - 03009.h5
1074
+ - 03012.h5
1075
+ - 03013.h5
1076
+ - 03014.h5
1077
+ - 03023.h5
1078
+ - 03026.h5
1079
+ - 03027.h5
1080
+ - 03037.h5
1081
+ - 03042.h5
1082
+ - 03051.h5
1083
+ - 03057.h5
1084
+ - 03064.h5
1085
+ - 03065.h5
1086
+ - 03079.h5
1087
+ - 03089.h5
1088
+ - 03102.h5
1089
+ - 03107.h5
1090
+ - 03116.h5
1091
+ - 03122.h5
1092
+ - 03125.h5
1093
+ - 03130.h5
1094
+ - 03133.h5
1095
+ - 03134.h5
1096
+ - 03137.h5
1097
+ - 03139.h5
1098
+ - 03160.h5
1099
+ - 03163.h5
1100
+ - 03172.h5
1101
+ - 03174.h5
1102
+ - 03178.h5
1103
+ - 03179.h5
1104
+ - 03180.h5
1105
+ - 03188.h5
1106
+ - 03189.h5
1107
+ - 03190.h5
1108
+ - 03192.h5
1109
+ - 03193.h5
1110
+ - 03197.h5
1111
+ - 03199.h5
1112
+ - 03200.h5
1113
+ - 03205.h5
1114
+ - 03206.h5
1115
+ - 03211.h5
1116
+ - 03218.h5
1117
+ - 03219.h5
1118
+ - 03222.h5
1119
+ - 03225.h5
1120
+ - 03231.h5
1121
+ - 03246.h5
1122
+ - 03248.h5
1123
+ - 03251.h5
1124
+ - 03253.h5
1125
+ - 03255.h5
1126
+ - 03259.h5
1127
+ - 03263.h5
1128
+ - 03265.h5
1129
+ - 03266.h5
1130
+ - 03273.h5
1131
+ - 03275.h5
1132
+ - 03277.h5
1133
+ - 03278.h5
1134
+ - 03282.h5
1135
+ - 03283.h5
1136
+ - 03302.h5
1137
+ - 03303.h5
1138
+ - 03304.h5
1139
+ - 03307.h5
1140
+ - 03314.h5
1141
+ - 03315.h5
1142
+ - 03327.h5
1143
+ - 03328.h5
1144
+ - 03332.h5
1145
+ - 03336.h5
1146
+ - 03340.h5
1147
+ - 03342.h5
1148
+ - 03343.h5
1149
+ - 03348.h5
1150
+ - 03351.h5
1151
+ - 03354.h5
1152
+ - 03358.h5
1153
+ - 03359.h5
1154
+ - 03360.h5
1155
+ - 03367.h5
1156
+ - 03371.h5
1157
+ - 03374.h5
1158
+ - 03375.h5
1159
+ - 03377.h5
1160
+ - 03378.h5
1161
+ - 03379.h5
1162
+ - 03381.h5
1163
+ - 03382.h5
1164
+ - 03384.h5
1165
+ - 03397.h5
1166
+ - 03403.h5
1167
+ - 03406.h5
1168
+ - 03413.h5
1169
+ - 03425.h5
1170
+ - 03431.h5
1171
+ - 03432.h5
1172
+ - 03435.h5
1173
+ - 03442.h5
1174
+ - 03453.h5
1175
+ - 03454.h5
1176
+ - 03456.h5
1177
+ - 03463.h5
1178
+ - 03465.h5
1179
+ - 03466.h5
1180
+ - 03467.h5
1181
+ - 03469.h5
1182
+ - 03473.h5
1183
+ - 03491.h5
1184
+ - 03492.h5
1185
+ - 03495.h5
1186
+ - 03498.h5
1187
+ - 03501.h5
1188
+ - 03502.h5
1189
+
unigaze/configs/data/mpiigaze.yaml ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ type: datasets.mpiigaze.MPIIGazeDataset
2
+ params:
3
+ data_name: mpii
4
+ color_type: bgr
5
+ transform_type: 'basic_imagenet'
6
+ dataset_path: null
7
+ image_size: 224
8
+ keys_to_use:
9
+ - p00.h5
10
+ - p01.h5
11
+ - p02.h5
12
+ - p03.h5
13
+ - p04.h5
14
+ - p05.h5
15
+ - p06.h5
16
+ - p07.h5
17
+ - p08.h5
18
+ - p09.h5
19
+ - p10.h5
20
+ - p11.h5
21
+ - p12.h5
22
+ - p13.h5
23
+ - p14.h5
24
+
unigaze/configs/data/mpiigaze_test.yaml ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ type: datasets.mpiigaze.MPIIGazeDataset
2
+ params:
3
+ data_name: mpii
4
+ color_type: bgr
5
+ transform_type: 'basic_imagenet'
6
+ dataset_path: null
7
+ image_size: 224
8
+ keys_to_use:
9
+ # - p00.h5
10
+ # - p01.h5
11
+ # - p02.h5
12
+ # - p03.h5
13
+ # - p04.h5
14
+ # - p05.h5
15
+ # - p06.h5
16
+ # - p07.h5
17
+ # - p08.h5
18
+ # - p09.h5
19
+ - p10.h5
20
+ - p11.h5
21
+ - p12.h5
22
+ - p13.h5
23
+ - p14.h5
24
+
unigaze/configs/data/mpiigaze_train.yaml ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ type: datasets.mpiigaze.MPIIGazeDataset
2
+ params:
3
+ data_name: mpii
4
+ color_type: bgr
5
+ transform_type: 'basic_imagenet'
6
+ dataset_path: null
7
+ image_size: 224
8
+ keys_to_use:
9
+ - p00.h5
10
+ - p01.h5
11
+ - p02.h5
12
+ - p03.h5
13
+ - p04.h5
14
+ - p05.h5
15
+ - p06.h5
16
+ - p07.h5
17
+ - p08.h5
18
+ - p09.h5
19
+ # - p10.h5
20
+ # - p11.h5
21
+ # - p12.h5
22
+ # - p13.h5
23
+ # - p14.h5
24
+
unigaze/configs/data/xgaze_0_60sub.yaml ADDED
@@ -0,0 +1,76 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ type: datasets.xgaze.XGazeDataset
3
+ params:
4
+ data_name: xgaze_v2_224
5
+
6
+ images_per_frame: 18
7
+ color_type: bgr
8
+ transform_type: 'basic_imagenet'
9
+ dataset_path: null
10
+ frame_tag: 'all'
11
+ image_size: 224
12
+ keys_to_use:
13
+ - subject0000.h5
14
+ - subject0003.h5
15
+ - subject0004.h5
16
+ - subject0005.h5
17
+ - subject0006.h5
18
+ - subject0007.h5
19
+ - subject0008.h5
20
+ - subject0009.h5
21
+ - subject0010.h5
22
+ - subject0013.h5
23
+ - subject0014.h5
24
+ - subject0015.h5
25
+ - subject0016.h5
26
+ - subject0018.h5
27
+ - subject0019.h5
28
+ - subject0021.h5
29
+ - subject0024.h5
30
+ - subject0026.h5
31
+ - subject0027.h5
32
+ - subject0028.h5
33
+ - subject0029.h5
34
+ - subject0030.h5
35
+ - subject0031.h5
36
+ - subject0032.h5
37
+ - subject0033.h5
38
+ - subject0035.h5
39
+ - subject0036.h5
40
+ - subject0038.h5
41
+ - subject0039.h5
42
+ - subject0040.h5
43
+ - subject0041.h5
44
+ - subject0043.h5
45
+ - subject0044.h5
46
+ - subject0045.h5
47
+ - subject0046.h5
48
+ - subject0048.h5
49
+ - subject0050.h5
50
+ - subject0051.h5
51
+ - subject0052.h5
52
+ - subject0055.h5
53
+ - subject0056.h5
54
+ - subject0057.h5
55
+ - subject0058.h5
56
+ - subject0059.h5
57
+ - subject0060.h5
58
+ - subject0061.h5
59
+ - subject0062.h5
60
+ - subject0063.h5
61
+ - subject0065.h5
62
+ - subject0066.h5
63
+ - subject0067.h5
64
+ - subject0069.h5
65
+ - subject0072.h5
66
+ - subject0073.h5
67
+ - subject0075.h5
68
+ - subject0076.h5
69
+ - subject0078.h5
70
+ - subject0079.h5
71
+ - subject0080.h5
72
+ - subject0081.h5
73
+
74
+
75
+
76
+
unigaze/configs/data/xgaze_0_60sub_d3.yaml ADDED
@@ -0,0 +1,80 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ type: datasets.xgaze.XGazeDataset
3
+ params:
4
+ data_name: xgaze_v2_224
5
+
6
+ images_per_frame: 18
7
+ color_type: bgr
8
+ transform_type: 'basic_imagenet'
9
+ dataset_path: null
10
+ frame_tag: 'all'
11
+ camera_random: 3
12
+ image_size: 224
13
+
14
+
15
+
16
+ keys_to_use:
17
+ - subject0000.h5
18
+ - subject0003.h5
19
+ - subject0004.h5
20
+ - subject0005.h5
21
+ - subject0006.h5
22
+ - subject0007.h5
23
+ - subject0008.h5
24
+ - subject0009.h5
25
+ - subject0010.h5
26
+ - subject0013.h5
27
+ - subject0014.h5
28
+ - subject0015.h5
29
+ - subject0016.h5
30
+ - subject0018.h5
31
+ - subject0019.h5
32
+ - subject0021.h5
33
+ - subject0024.h5
34
+ - subject0026.h5
35
+ - subject0027.h5
36
+ - subject0028.h5
37
+ - subject0029.h5
38
+ - subject0030.h5
39
+ - subject0031.h5
40
+ - subject0032.h5
41
+ - subject0033.h5
42
+ - subject0035.h5
43
+ - subject0036.h5
44
+ - subject0038.h5
45
+ - subject0039.h5
46
+ - subject0040.h5
47
+ - subject0041.h5
48
+ - subject0043.h5
49
+ - subject0044.h5
50
+ - subject0045.h5
51
+ - subject0046.h5
52
+ - subject0048.h5
53
+ - subject0050.h5
54
+ - subject0051.h5
55
+ - subject0052.h5
56
+ - subject0055.h5
57
+ - subject0056.h5
58
+ - subject0057.h5
59
+ - subject0058.h5
60
+ - subject0059.h5
61
+ - subject0060.h5
62
+ - subject0061.h5
63
+ - subject0062.h5
64
+ - subject0063.h5
65
+ - subject0065.h5
66
+ - subject0066.h5
67
+ - subject0067.h5
68
+ - subject0069.h5
69
+ - subject0072.h5
70
+ - subject0073.h5
71
+ - subject0075.h5
72
+ - subject0076.h5
73
+ - subject0078.h5
74
+ - subject0079.h5
75
+ - subject0080.h5
76
+ - subject0081.h5
77
+
78
+
79
+
80
+
unigaze/configs/data/xgaze_0_80sub.yaml ADDED
@@ -0,0 +1,97 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ type: datasets.xgaze.XGazeDataset
3
+ params:
4
+ data_name: xgaze_v2_224
5
+
6
+ images_per_frame: 18
7
+ color_type: bgr
8
+ transform_type: 'basic_imagenet'
9
+ dataset_path: null
10
+ frame_tag: 'all'
11
+ image_size: 224
12
+
13
+ keys_to_use:
14
+ - subject0000.h5
15
+ - subject0003.h5
16
+ - subject0004.h5
17
+ - subject0005.h5
18
+ - subject0006.h5
19
+ - subject0007.h5
20
+ - subject0008.h5
21
+ - subject0009.h5
22
+ - subject0010.h5
23
+ - subject0013.h5
24
+ - subject0014.h5
25
+ - subject0015.h5
26
+ - subject0016.h5
27
+ - subject0018.h5
28
+ - subject0019.h5
29
+ - subject0021.h5
30
+ - subject0024.h5
31
+ - subject0026.h5
32
+ - subject0027.h5
33
+ - subject0028.h5
34
+ - subject0029.h5
35
+ - subject0030.h5
36
+ - subject0031.h5
37
+ - subject0032.h5
38
+ - subject0033.h5
39
+ - subject0035.h5
40
+ - subject0036.h5
41
+ - subject0038.h5
42
+ - subject0039.h5
43
+ - subject0040.h5
44
+ - subject0041.h5
45
+ - subject0043.h5
46
+ - subject0044.h5
47
+ - subject0045.h5
48
+ - subject0046.h5
49
+ - subject0048.h5
50
+ - subject0050.h5
51
+ - subject0051.h5
52
+ - subject0052.h5
53
+ - subject0055.h5
54
+ - subject0056.h5
55
+ - subject0057.h5
56
+ - subject0058.h5
57
+ - subject0059.h5
58
+ - subject0060.h5
59
+ - subject0061.h5
60
+ - subject0062.h5
61
+ - subject0063.h5
62
+ - subject0065.h5
63
+ - subject0066.h5
64
+ - subject0067.h5
65
+ - subject0069.h5
66
+ - subject0072.h5
67
+ - subject0073.h5
68
+ - subject0075.h5
69
+ - subject0076.h5
70
+ - subject0078.h5
71
+ - subject0079.h5
72
+ - subject0080.h5
73
+ - subject0081.h5
74
+ - subject0083.h5
75
+ - subject0084.h5
76
+ - subject0085.h5
77
+ - subject0088.h5
78
+ - subject0090.h5
79
+ - subject0092.h5
80
+ - subject0095.h5
81
+ - subject0098.h5
82
+ - subject0099.h5
83
+ - subject0100.h5
84
+ - subject0101.h5
85
+ - subject0102.h5
86
+ - subject0103.h5
87
+ - subject0104.h5
88
+ - subject0105.h5
89
+ - subject0106.h5
90
+ - subject0107.h5
91
+ - subject0108.h5
92
+ - subject0109.h5
93
+ - subject0111.h5
94
+
95
+
96
+
97
+
unigaze/configs/data/xgaze_0_80sub_d3.yaml ADDED
@@ -0,0 +1,97 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ type: datasets.xgaze.XGazeDataset
3
+ params:
4
+ data_name: xgaze_v2_224
5
+ color_type: bgr
6
+ images_per_frame: 18
7
+ transform_type: 'basic_imagenet'
8
+ dataset_path: null
9
+ frame_tag: 'all'
10
+ camera_random: 3
11
+ image_size: 224
12
+
13
+ keys_to_use:
14
+ - subject0000.h5
15
+ - subject0003.h5
16
+ - subject0004.h5
17
+ - subject0005.h5
18
+ - subject0006.h5
19
+ - subject0007.h5
20
+ - subject0008.h5
21
+ - subject0009.h5
22
+ - subject0010.h5
23
+ - subject0013.h5
24
+ - subject0014.h5
25
+ - subject0015.h5
26
+ - subject0016.h5
27
+ - subject0018.h5
28
+ - subject0019.h5
29
+ - subject0021.h5
30
+ - subject0024.h5
31
+ - subject0026.h5
32
+ - subject0027.h5
33
+ - subject0028.h5
34
+ - subject0029.h5
35
+ - subject0030.h5
36
+ - subject0031.h5
37
+ - subject0032.h5
38
+ - subject0033.h5
39
+ - subject0035.h5
40
+ - subject0036.h5
41
+ - subject0038.h5
42
+ - subject0039.h5
43
+ - subject0040.h5
44
+ - subject0041.h5
45
+ - subject0043.h5
46
+ - subject0044.h5
47
+ - subject0045.h5
48
+ - subject0046.h5
49
+ - subject0048.h5
50
+ - subject0050.h5
51
+ - subject0051.h5
52
+ - subject0052.h5
53
+ - subject0055.h5
54
+ - subject0056.h5
55
+ - subject0057.h5
56
+ - subject0058.h5
57
+ - subject0059.h5
58
+ - subject0060.h5
59
+ - subject0061.h5
60
+ - subject0062.h5
61
+ - subject0063.h5
62
+ - subject0065.h5
63
+ - subject0066.h5
64
+ - subject0067.h5
65
+ - subject0069.h5
66
+ - subject0072.h5
67
+ - subject0073.h5
68
+ - subject0075.h5
69
+ - subject0076.h5
70
+ - subject0078.h5
71
+ - subject0079.h5
72
+ - subject0080.h5
73
+ - subject0081.h5
74
+ - subject0083.h5
75
+ - subject0084.h5
76
+ - subject0085.h5
77
+ - subject0088.h5
78
+ - subject0090.h5
79
+ - subject0092.h5
80
+ - subject0095.h5
81
+ - subject0098.h5
82
+ - subject0099.h5
83
+ - subject0100.h5
84
+ - subject0101.h5
85
+ - subject0102.h5
86
+ - subject0103.h5
87
+ - subject0104.h5
88
+ - subject0105.h5
89
+ - subject0106.h5
90
+ - subject0107.h5
91
+ - subject0108.h5
92
+ - subject0109.h5
93
+ - subject0111.h5
94
+
95
+
96
+
97
+
unigaze/configs/data/xgaze_60_80sub.yaml ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ type: datasets.xgaze.XGazeDataset
2
+ params:
3
+ data_name: xgaze_v2_224
4
+ images_per_frame: 18
5
+ color_type: bgr
6
+ transform_type: 'basic_imagenet'
7
+ dataset_path: null
8
+ frame_tag: 'all'
9
+ image_size: 224
10
+ keys_to_use:
11
+ - subject0083.h5
12
+ - subject0084.h5
13
+ - subject0085.h5
14
+ - subject0088.h5
15
+ - subject0090.h5
16
+ - subject0092.h5
17
+ - subject0095.h5
18
+ - subject0098.h5
19
+ - subject0099.h5
20
+ - subject0100.h5
21
+ - subject0101.h5
22
+ - subject0102.h5
23
+ - subject0103.h5
24
+ - subject0104.h5
25
+ - subject0105.h5
26
+ - subject0106.h5
27
+ - subject0107.h5
28
+ - subject0108.h5
29
+ - subject0109.h5
30
+ - subject0111.h5
31
+
unigaze/configs/exp/blank.yaml ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+
3
+
4
+
5
+ exp_name: tbd
6
+
7
+
8
+ exp_explanation:
9
+
10
+ data: null
11
+
12
+ ## can be overwritten
13
+ model: null
14
+
15
+
16
+ trainer: null
17
+ loss: null
18
+
19
+
20
+ optimizer: configs/optimizers/default_Adam_e4.yaml
21
+ scheduler: configs/schedulers/default_stepLR_5.yaml
22
+
unigaze/configs/exp/cross/train_ED.yaml ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+
3
+
4
+ train:
5
+ - configs/data/eyediap_cs.yaml
6
+ - configs/data/eyediap_ft.yaml
7
+
8
+
9
+
10
+ val:
11
+
12
+ - configs/data/mpiigaze_train.yaml
13
+ - configs/data/mpiigaze_test.yaml
14
+
15
+
16
+ test:
17
+ # - configs/data/xgaze_0_80sub.yaml
18
+ - configs/data/xgaze_0_60sub.yaml
19
+ - configs/data/xgaze_60_80sub.yaml
20
+
21
+ - configs/data/gazecapture_train.yaml
22
+ - configs/data/gazecapture_test.yaml
23
+ - configs/data/gaze360_train.yaml
24
+ - configs/data/gaze360_test.yaml
25
+
26
+ - configs/data/mpiigaze.yaml
27
+ - configs/data/our_mpii.yaml
unigaze/configs/exp/cross/train_G360.yaml ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ train:
3
+ - configs/data/gaze360_train.yaml
4
+ - configs/data/gaze360_test.yaml
5
+
6
+
7
+ val:
8
+ - configs/data/mpiigaze_train.yaml
9
+ - configs/data/mpiigaze_test.yaml
10
+
11
+ - configs/data/eyediap_cs_train.yaml
12
+ - configs/data/eyediap_cs_test.yaml
13
+ - configs/data/eyediap_ft_train.yaml
14
+ - configs/data/eyediap_ft_test.yaml
15
+
16
+
17
+
18
+
19
+ test:
20
+ # - configs/data/xgaze_0_80sub.yaml
21
+ - configs/data/xgaze_0_60sub.yaml
22
+ - configs/data/xgaze_60_80sub.yaml
23
+ - configs/data/gazecapture_train.yaml
24
+ - configs/data/gazecapture_test.yaml
25
+
26
+ - configs/data/mpiigaze.yaml
27
+ # - configs/data/our_mpii.yaml
28
+
29
+ - configs/data/eyediap_cs.yaml
30
+ - configs/data/eyediap_ft.yaml
31
+
32
+
unigaze/configs/exp/cross/train_GC.yaml ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ train:
3
+ - configs/data/gazecapture_train_ds15.yaml
4
+ - configs/data/gazecapture_test_ds15.yaml
5
+
6
+
7
+
8
+ val:
9
+ - configs/data/mpiigaze_train.yaml
10
+ - configs/data/mpiigaze_test.yaml
11
+
12
+ - configs/data/eyediap_cs_train.yaml
13
+ - configs/data/eyediap_cs_test.yaml
14
+ - configs/data/eyediap_ft_train.yaml
15
+ - configs/data/eyediap_ft_test.yaml
16
+
17
+
18
+ test:
19
+
20
+ - configs/data/xgaze_0_60sub.yaml
21
+ - configs/data/xgaze_60_80sub.yaml
22
+ - configs/data/gaze360_train.yaml
23
+ - configs/data/gaze360_test.yaml
24
+ - configs/data/mpiigaze.yaml
25
+ - configs/data/eyediap_cs.yaml
26
+ - configs/data/eyediap_ft.yaml
unigaze/configs/exp/cross/train_MPII.yaml ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+
3
+ train:
4
+ - configs/data/mpiigaze.yaml
5
+
6
+ val:
7
+
8
+ - configs/data/eyediap_cs_train.yaml
9
+ - configs/data/eyediap_cs_test.yaml
10
+ - configs/data/eyediap_ft_train.yaml
11
+ - configs/data/eyediap_ft_test.yaml
12
+
13
+
14
+ test:
15
+ - configs/data/xgaze_0_60sub.yaml
16
+ - configs/data/xgaze_60_80sub.yaml
17
+ - configs/data/gazecapture_train.yaml
18
+ - configs/data/gazecapture_test.yaml
19
+ - configs/data/gaze360_train.yaml
20
+ - configs/data/gaze360_test.yaml
21
+
22
+
23
+ - configs/data/eyediap_cs.yaml
24
+ - configs/data/eyediap_ft.yaml
unigaze/configs/exp/cross/train_X.yaml ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+
3
+
4
+ train:
5
+ - configs/data/xgaze_0_80sub_d3.yaml
6
+
7
+
8
+ val:
9
+
10
+ - configs/data/mpiigaze_train.yaml
11
+ - configs/data/mpiigaze_test.yaml
12
+
13
+ - configs/data/eyediap_cs_train.yaml
14
+ - configs/data/eyediap_cs_test.yaml
15
+ - configs/data/eyediap_ft_train.yaml
16
+ - configs/data/eyediap_ft_test.yaml
17
+
18
+ test:
19
+ - configs/data/gazecapture_train.yaml
20
+ - configs/data/gazecapture_test.yaml
21
+ - configs/data/gaze360_train.yaml
22
+ - configs/data/gaze360_test.yaml
23
+
24
+ - configs/data/mpiigaze.yaml
25
+
26
+ - configs/data/eyediap_cs.yaml
27
+ - configs/data/eyediap_ft.yaml
unigaze/configs/exp/joint/X_GC_M_ED_g360.yaml ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+
3
+ train:
4
+ - configs/data/xgaze_0_60sub_d3.yaml
5
+ - configs/data/gazecapture_train_ds15.yaml
6
+ - configs/data/mpiigaze_train.yaml
7
+ - configs/data/eyediap_cs_train.yaml
8
+ - configs/data/eyediap_ft_train.yaml
9
+ - configs/data/gaze360_train.yaml
10
+
11
+
12
+ val:
13
+ - configs/data/eyediap_cs_test.yaml
14
+ - configs/data/eyediap_ft_test.yaml
15
+ - configs/data/gaze360_test.yaml
16
+ - configs/data/mpiigaze_test.yaml
17
+ - configs/data/our_mpii_test.yaml
18
+
19
+ test:
20
+ - configs/data/xgaze_60_80sub.yaml
21
+ - configs/data/gazecapture_test.yaml
22
+
23
+
unigaze/configs/loss/l1_loss.yaml ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ loss_config:
2
+ type: criteria.gaze_loss.PitchYawLoss
3
+ params:
4
+ loss_type: 'l1'
unigaze/configs/model/hybrid_tr50.yaml ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+
2
+ net_config:
3
+ type: models.hybrid_tr.HybridTR50
4
+
5
+
unigaze/configs/model/mae_b_16_gaze.yaml ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+
3
+
4
+
5
+ net_config:
6
+ type: models.vit.mae_gaze.MAE_Gaze
7
+ params:
8
+ model_type: 'vit_b_16'
9
+ global_pool: False
10
+ drop_path_rate: 0.1
11
+ custom_pretrained_path: checkpoints/mae_b16/mae_b16_checkpoint-299.pth
unigaze/configs/model/mae_h_14_gaze.yaml ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # ViT-Huge patchsize=14
2
+ # data_yamls="${ffhqnv_yaml} ${facesyn_yaml} ${sfhq_t2i_224_yaml} ${vfhq_yaml} ${celebv_yaml} ${vgg2_yaml} ${xgaze_mvs_dense_224_yaml}"
3
+
4
+
5
+ net_config:
6
+ type: models.vit.mae_gaze.MAE_Gaze
7
+ params:
8
+ model_type: 'vit_h_14'
9
+ global_pool: False
10
+ drop_path_rate: 0.1
11
+ custom_pretrained_path: checkpoints/mae_h14/mae_h14_checkpoint-299.pth
12
+
13
+
14
+
unigaze/configs/model/mae_l_16_gaze.yaml ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ s
3
+ net_config:
4
+ type: models.vit.mae_gaze.MAE_Gaze
5
+ params:
6
+ model_type: 'vit_l_16'
7
+ global_pool: False
8
+ drop_path_rate: 0.1
9
+ custom_pretrained_path: checkpoints/mae_l16/mae_h14_checkpoint-299.pth
10
+
11
+
unigaze/configs/model/res18.yaml ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+
2
+ net_config:
3
+ type: models.resnet.Res18
4
+
5
+
unigaze/configs/model/res50.yaml ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+
2
+
3
+ net_config:
4
+ type: models.resnet.Res50
5
+
6
+
unigaze/configs/model/vit_b_16_gaze.yaml ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+
3
+ net_config:
4
+ type: models.vit.vit_gaze.ViTGaze
5
+ params:
6
+ vit_type: 'b_16'
7
+
8
+
9
+
10
+
11
+
unigaze/configs/model/vit_h_14_gaze.yaml ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+
3
+ # net_config:
4
+ # type: models.vit.vit_gaze.CustomViT_H14
5
+ # params:
6
+ # imagenet_pretrained_path: checkpoints/vit_pretrain/vit_h_14_swag-80465313.pth
7
+
8
+
9
+
10
+
11
+ net_config:
12
+ type: models.vit.vit_gaze.CustomViT_H14
13
+ params:
14
+ global_pool: False
15
+ drop_path_rate: 0.1
16
+ custom_pretrained_path: checkpoints/vit_pretrain/timm_vit_h_14_imagenet21k.bin
17
+
18
+
19
+
unigaze/configs/model/vit_l_16_gaze.yaml ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+
3
+ net_config:
4
+ type: models.vit.vit_gaze.ViTGaze
5
+ params:
6
+ vit_type: 'l_16'
7
+
8
+
9
+
10
+
11
+
unigaze/configs/optimizers/default_Adam_e4.yaml ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+
2
+
3
+ optimizer_name: Adam # Optimizer type (e.g., Adam, SGD, AdamW)
4
+
5
+ lr: 0.0001 # Initial learning rate
6
+
7
+ weight_decay: 0.000001 # Weight decay (L2 regularization)
unigaze/configs/schedulers/OneCycleLR.yaml ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+
2
+
3
+ scheduler_name: OneCycleLR
4
+
5
+
6
+ div_factor: 25.0
7
+ final_div_factor: 10000.0
unigaze/configs/schedulers/default_stepLR_5.yaml ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+
2
+
3
+ scheduler_name: StepLR
4
+
5
+ step_size: 5
6
+
7
+ gamma: 0.1
unigaze/configs/trainer/simple_trainer.yaml ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+
3
+ type: trainers.simple_trainer.SimpleTrainer
4
+
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+
unigaze/infer_runtime.py ADDED
@@ -0,0 +1,297 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # unigaze/infer_runtime.py
2
+ import os
3
+ import cv2
4
+ import time
5
+ import tempfile
6
+ from pathlib import Path
7
+ from typing import Optional, Tuple, Dict, Any, List
8
+
9
+ import numpy as np
10
+ import torch
11
+ from omegaconf import OmegaConf
12
+
13
+ # --- UniGaze / your repo imports (these exist in your repo) ---
14
+ from datasets.helper.image_transform import wrap_transforms
15
+ from utils import instantiate_from_cfg
16
+ from utils.util import set_seed
17
+ from gazelib.gaze.gaze_utils import pitchyaw_to_vector, vector_to_pitchyaw
18
+ from gazelib.gaze.normalize import estimateHeadPose, normalize
19
+ from gazelib.label_transform import get_face_center_by_nose
20
+ import face_alignment
21
+
22
+ # ---------------- Helpers copied from predict_gaze_video.py ----------------
23
+
24
+ def draw_gaze(image_in, pitchyaw, thickness=8, color=(0, 0, 255)):
25
+ image_out = image_in.copy()
26
+ (h, w) = image_in.shape[:2]
27
+ length = w / 2.0
28
+ pos = (int(h / 2.0), int(w / 2.0))
29
+ if len(image_out.shape) == 2 or image_out.shape[2] == 1:
30
+ image_out = cv2.cvtColor(image_out, cv2.COLOR_GRAY2BGR)
31
+ dx = -length * np.sin(pitchyaw[1]) * np.cos(pitchyaw[0])
32
+ dy = -length * np.sin(pitchyaw[0])
33
+ end_point = (int(pos[0] + dx), int(pos[1] + dy))
34
+
35
+ shadow_offset = 2
36
+ shadow_color = (40, 40, 40)
37
+ shadow_end = (end_point[0] + shadow_offset, end_point[1] + shadow_offset)
38
+ cv2.arrowedLine(image_out, (pos[0] + shadow_offset, pos[1] + shadow_offset),
39
+ shadow_end, shadow_color, thickness + 2, cv2.LINE_AA, tipLength=0.3)
40
+
41
+ thickness_values = [4, 3, 2, 1]
42
+ num_layers = len(thickness_values)
43
+ for i in range(num_layers):
44
+ alpha = i / num_layers
45
+ layer_color = tuple(int((1 - alpha) * color[j] + alpha * 255) for j in range(3))
46
+ cv2.arrowedLine(image_out, pos, end_point, layer_color, thickness_values[i],
47
+ cv2.LINE_AA, tipLength=0.3)
48
+ return image_out
49
+
50
+ def set_dummy_camera_model(image=None):
51
+ h, w = image.shape[:2]
52
+ focal_length = w * 4
53
+ center = (w // 2, h // 2)
54
+ camera_matrix = np.array(
55
+ [[focal_length, 0, center[0]],
56
+ [0, focal_length, center[1]],
57
+ [0, 0, 1]], dtype="double"
58
+ )
59
+ camera_distortion = np.zeros((1, 5))
60
+ return np.array(camera_matrix), np.array(camera_distortion)
61
+
62
+ def denormalize_predicted_gaze(gaze_yaw_pitch, R_inv):
63
+ pred_gaze_cancel_nor = pitchyaw_to_vector(gaze_yaw_pitch.reshape(1, 2)).reshape(3, 1)
64
+ pred_gaze_cancel_nor = np.matmul(R_inv, pred_gaze_cancel_nor.reshape(3, 1))
65
+ pred_gaze_cancel_nor = pred_gaze_cancel_nor / np.linalg.norm(pred_gaze_cancel_nor)
66
+ pred_yaw_pitch_cancel_nor = vector_to_pitchyaw(pred_gaze_cancel_nor.reshape(1, 3))
67
+ return pred_gaze_cancel_nor, pred_yaw_pitch_cancel_nor
68
+
69
+ def load_checkpoint(model, ckpt_key, ckpt_path):
70
+ assert os.path.isfile(ckpt_path), f"Checkpoint not found: {ckpt_path}"
71
+ weights = torch.load(ckpt_path, map_location="cpu")
72
+ model_state = weights[ckpt_key]
73
+ if next(iter(model_state.keys())).startswith("module."):
74
+ model_state = {k[7:]: v for k, v in model_state.items()}
75
+ model.load_state_dict(model_state, strict=True)
76
+ del weights
77
+
78
+ # ---------------- Runtime (model + pre/post) ----------------
79
+
80
+ class UniGazeRuntime:
81
+ def __init__(self, cfg_path: str, ckpt_path: str, device: str = "cpu"):
82
+ self.device = torch.device(device)
83
+ torch.set_grad_enabled(False)
84
+ set_seed(42)
85
+
86
+ pretrained_model_cfg = OmegaConf.load(cfg_path)["net_config"]
87
+ pretrained_model_cfg.params.custom_pretrained_path = None
88
+
89
+ self.model = instantiate_from_cfg(pretrained_model_cfg)
90
+ load_checkpoint(self.model, "model_state", ckpt_path)
91
+ self.model.eval().to(self.device)
92
+
93
+ self.transform = wrap_transforms("basic_imagenet", image_size=224)
94
+ self.fa = face_alignment.FaceAlignment(
95
+ face_alignment.LandmarksType.TWO_D,
96
+ flip_input=False,
97
+ device=self.device.type, # 'cpu' or 'cuda'
98
+ )
99
+
100
+ # Constants from your script
101
+ self.focal_norm = 960
102
+ self.distance_norm = 600
103
+ self.roi_size = (224, 224)
104
+ self.resize_factor = 0.5
105
+ self.arrow_colors = [(47, 255, 173)] # BGR
106
+
107
+ # ---- One-frame inference on a BGR frame; returns annotated BGR frame ----
108
+ def process_frame(self, image_original_bgr: np.ndarray) -> np.ndarray:
109
+ image_original = image_original_bgr.copy()
110
+
111
+ # resize for detection
112
+ if self.resize_factor >= 1:
113
+ image_resize = image_original.copy()
114
+ else:
115
+ image_resize = cv2.resize(
116
+ image_original, dsize=None,
117
+ fx=self.resize_factor, fy=self.resize_factor,
118
+ interpolation=cv2.INTER_AREA
119
+ )
120
+
121
+ image_resize = cv2.cvtColor(image_resize, cv2.COLOR_BGR2RGB)
122
+ preds = self.fa.get_landmarks(image_resize)
123
+
124
+ # no face: just return original
125
+ if preds is None:
126
+ return image_original
127
+
128
+ # ----- keep same semantics as predict_gaze_video.py -----
129
+ landmarks_record = {} # only add when a valid vector is produced
130
+ vector_start_end_point_list = {} # start/end 2D points for arrows
131
+ bbox_record = {} # for drawing rectangles (same idx keys)
132
+
133
+ for idx, landmarks_in_original in enumerate(preds):
134
+ color = self.arrow_colors[idx % len(self.arrow_colors)]
135
+
136
+ # scale landmarks back to original size
137
+ landmarks_in_original = landmarks_in_original / self.resize_factor
138
+ x_min = int(landmarks_in_original[:, 0].min())
139
+ x_max = int(landmarks_in_original[:, 0].max())
140
+ y_min = int(landmarks_in_original[:, 1].min())
141
+ y_max = int(landmarks_in_original[:, 1].max())
142
+
143
+ # bbox for drawing (scale 1.2)
144
+ scale_factor_draw = 1.2
145
+ bbox_width = x_max - x_min
146
+ bbox_height = y_max - y_min
147
+ bbox_center = ((x_min + x_max) // 2, (y_min + y_max) // 2)
148
+ x_min_draw = max(0, bbox_center[0] - int(bbox_width * scale_factor_draw // 2))
149
+ x_max_draw = min(image_original.shape[1], bbox_center[0] + int(bbox_width * scale_factor_draw // 2))
150
+ y_min_draw = max(0, bbox_center[1] - int(bbox_height * scale_factor_draw // 2))
151
+ y_max_draw = min(image_original.shape[0], bbox_center[1] + int(bbox_height * scale_factor_draw // 2))
152
+ bbox_record[idx] = (x_min_draw, y_min_draw, x_max_draw, y_max_draw)
153
+
154
+ # crop for normalization & inference (scale 2.0)
155
+ scale_factor_crop = 2.0
156
+ bbox_width = x_max - x_min
157
+ bbox_height = y_max - y_min
158
+ bbox_center = ((x_min + x_max) // 2, (y_min + y_max) // 2)
159
+ x_min_c = max(0, bbox_center[0] - int(bbox_width * scale_factor_crop // 2))
160
+ x_max_c = min(image_original.shape[1], bbox_center[0] + int(bbox_width * scale_factor_crop // 2))
161
+ y_min_c = max(0, bbox_center[1] - int(bbox_height * scale_factor_crop // 2))
162
+ y_max_c = min(image_original.shape[0], bbox_center[1] + int(bbox_height * scale_factor_crop // 2))
163
+
164
+ image = image_original[y_min_c:y_max_c, x_min_c:x_max_c]
165
+ landmarks = landmarks_in_original - np.array([x_min_c, y_min_c])
166
+
167
+ # camera + head pose
168
+ camera_matrix, camera_distortion = set_dummy_camera_model(image=image)
169
+ face_model_load = np.loadtxt("data/face_model.txt")
170
+ face_model = face_model_load[[20, 23, 26, 29, 15, 19], :]
171
+ facePts = face_model.reshape(6, 1, 3)
172
+
173
+ landmarks_sub = landmarks[[36, 39, 42, 45, 31, 35], :].astype(float).reshape(6, 1, 2)
174
+ hr, ht = estimateHeadPose(landmarks_sub, facePts, camera_matrix, camera_distortion)
175
+ hR = cv2.Rodrigues(hr)[0]
176
+ face_center_camera_cord, _ = get_face_center_by_nose(hR=hR, ht=ht, face_model_load=face_model_load)
177
+
178
+ # normalize
179
+ img_normalized, R, hR_norm, _, _, _ = normalize(
180
+ image, landmarks, self.focal_norm, self.distance_norm,
181
+ self.roi_size, face_center_camera_cord, hr, ht, camera_matrix, gc=None
182
+ )
183
+
184
+ # skip bad heads (same as script)
185
+ hr_norm = np.array([np.arcsin(hR_norm[1, 2]), np.arctan2(hR_norm[0, 2], hR_norm[2, 2])])
186
+ if np.linalg.norm(hr_norm) > 80 * np.pi / 180:
187
+ continue
188
+
189
+ # inference
190
+ input_var = img_normalized[:, :, [2, 1, 0]] # BGR->RGB
191
+ input_var = self.transform(input_var)
192
+ input_var = torch.as_tensor(input_var, dtype=torch.float32, device=self.device).unsqueeze(0)
193
+ with torch.no_grad():
194
+ ret = self.model(input_var)
195
+
196
+ pred_gaze = ret["pred_gaze"][0]
197
+ pred_gaze_np = pred_gaze.detach().cpu().numpy()
198
+
199
+ # denormalize to original camera coords, then project to 2D
200
+ R_inv = np.linalg.inv(R)
201
+ pred_gaze_cancel_nor, _ = denormalize_predicted_gaze(pred_gaze_np, R_inv)
202
+
203
+ vec_length = pred_gaze_cancel_nor * -112 * 1.5
204
+ gazeRay = np.concatenate(
205
+ (face_center_camera_cord.reshape(1, 3),
206
+ (face_center_camera_cord + vec_length).reshape(1, 3)),
207
+ axis=0,
208
+ )
209
+ result = cv2.projectPoints(
210
+ gazeRay,
211
+ np.array([0, 0, 0]).reshape(3, 1).astype(float),
212
+ np.array([0, 0, 0]).reshape(3, 1).astype(float),
213
+ camera_matrix, camera_distortion
214
+ )[0].reshape(2, 2)
215
+ result += np.array([x_min_c, y_min_c])
216
+
217
+ vector_start_point = (int(result[0][0]), int(result[0][1]))
218
+ vector_end_point = (int(result[1][0]), int(result[1][1]))
219
+
220
+ # only record these after a valid vector exists
221
+ vector_start_end_point_list[idx] = (vector_start_point, vector_end_point)
222
+ landmarks_record[idx] = landmarks_in_original
223
+
224
+ # If nothing valid was produced, return original frame
225
+ if not landmarks_record:
226
+ return image_original
227
+
228
+ # ----- draw exactly like predict_gaze_video.py (iterate over landmarks_record) -----
229
+ for idx in list(landmarks_record.keys()):
230
+ x_min_d, y_min_d, x_max_d, y_max_d = bbox_record[idx]
231
+ color = self.arrow_colors[idx % len(self.arrow_colors)]
232
+
233
+ cv2.rectangle(image_original, (x_min_d, y_min_d), (x_max_d, y_max_d), (0, 0, 240), 2)
234
+
235
+ vsp, vep = vector_start_end_point_list[idx]
236
+ shadow_offset = 2
237
+ shadow_color = (40, 40, 40)
238
+ shadow_end = (vep[0] + shadow_offset, vep[1] + shadow_offset)
239
+ cv2.arrowedLine(
240
+ image_original,
241
+ (vsp[0] + shadow_offset, vsp[1] + shadow_offset),
242
+ shadow_end,
243
+ shadow_color,
244
+ 5,
245
+ cv2.LINE_AA,
246
+ tipLength=0.2,
247
+ )
248
+
249
+ thickness_values = [x * 3 for x in [4, 3, 2, 1]]
250
+ num_layers = len(thickness_values)
251
+ for i in range(num_layers):
252
+ alpha = i / num_layers
253
+ layer_color = tuple(int((1 - alpha) * color[j] + alpha * 255) for j in range(3))
254
+ cv2.arrowedLine(image_original, vsp, vep, layer_color, thickness_values[i], cv2.LINE_AA, tipLength=0.2)
255
+
256
+ return image_original
257
+
258
+
259
+ # ---- Public APIs ----
260
+
261
+ def predict_image(self, image_rgb: np.ndarray) -> np.ndarray:
262
+ """Accepts an RGB image (HxWx3) and returns an annotated RGB image."""
263
+ bgr = cv2.cvtColor(image_rgb, cv2.COLOR_RGB2BGR)
264
+ out_bgr = self.process_frame(bgr)
265
+ out_rgb = cv2.cvtColor(out_bgr, cv2.COLOR_BGR2RGB)
266
+ return out_rgb
267
+
268
+ def predict_video(self, video_path: str) -> Tuple[Optional[str], Optional[np.ndarray], float]:
269
+ """
270
+ Process a video file and return:
271
+ - temp MP4 path (string) for Gradio Video
272
+ - last annotated RGB frame (numpy) for Gradio Image
273
+ - total runtime seconds (float)
274
+ """
275
+ t0 = time.time()
276
+ cap = cv2.VideoCapture(video_path)
277
+ if not cap.isOpened():
278
+ return None, None, 0.0
279
+
280
+ width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
281
+ height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
282
+ fps = max(1, int(cap.get(cv2.CAP_PROP_FPS)) or 25)
283
+
284
+ tmp_mp4 = Path(tempfile.mkdtemp(prefix="unigaze_vid_")) / "out.mp4"
285
+ fourcc = cv2.VideoWriter_fourcc(*"mp4v")
286
+ writer = cv2.VideoWriter(str(tmp_mp4), fourcc, fps, (width, height))
287
+
288
+ while True:
289
+ ret, frame_bgr = cap.read()
290
+ if not ret:
291
+ break
292
+ out_bgr = self.process_frame(frame_bgr)
293
+ writer.write(out_bgr)
294
+
295
+ cap.release()
296
+ writer.release()
297
+ return str(tmp_mp4), float(time.time() - t0)