Skip to content

Commit 27ea0f4

Browse files
committed
Split VOC extractor
1 parent 5b3ef07 commit 27ea0f4

File tree

4 files changed

+266
-731
lines changed

4 files changed

+266
-731
lines changed

datumaro/datumaro/plugins/voc_format/converter.py

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,9 @@ def save_subsets(self):
318318
self.save_segm_lists(subset_name, segm_list)
319319

320320
def save_action_lists(self, subset_name, action_list):
321+
if not action_list:
322+
return
323+
321324
os.makedirs(self._action_subsets_dir, exist_ok=True)
322325

323326
ann_file = osp.join(self._action_subsets_dir, subset_name + '.txt')
@@ -343,11 +346,11 @@ def save_action_lists(self, subset_name, action_list):
343346
(item, 1 + obj_id, 1 if presented else -1))
344347

345348
def save_class_lists(self, subset_name, class_lists):
346-
os.makedirs(self._cls_subsets_dir, exist_ok=True)
347-
348-
if len(class_lists) == 0:
349+
if not class_lists:
349350
return
350351

352+
os.makedirs(self._cls_subsets_dir, exist_ok=True)
353+
351354
for label in self._label_map:
352355
ann_file = osp.join(self._cls_subsets_dir,
353356
'%s_%s.txt' % (label, subset_name))
@@ -361,6 +364,9 @@ def save_class_lists(self, subset_name, class_lists):
361364
f.write('%s % d\n' % (item, 1 if presented else -1))
362365

363366
def save_clsdet_lists(self, subset_name, clsdet_list):
367+
if not clsdet_list:
368+
return
369+
364370
os.makedirs(self._cls_subsets_dir, exist_ok=True)
365371

366372
ann_file = osp.join(self._cls_subsets_dir, subset_name + '.txt')
@@ -369,6 +375,9 @@ def save_clsdet_lists(self, subset_name, clsdet_list):
369375
f.write('%s\n' % item)
370376

371377
def save_segm_lists(self, subset_name, segm_list):
378+
if not segm_list:
379+
return
380+
372381
os.makedirs(self._segm_subsets_dir, exist_ok=True)
373382

374383
ann_file = osp.join(self._segm_subsets_dir, subset_name + '.txt')
@@ -377,6 +386,9 @@ def save_segm_lists(self, subset_name, segm_list):
377386
f.write('%s\n' % item)
378387

379388
def save_layout_lists(self, subset_name, layout_list):
389+
if not layout_list:
390+
return
391+
380392
os.makedirs(self._layout_subsets_dir, exist_ok=True)
381393

382394
ann_file = osp.join(self._layout_subsets_dir, subset_name + '.txt')

0 commit comments

Comments
 (0)