소스 검색

fix the dataset bug

SunAhong1993 5 년 전
부모
커밋
a84541e0fd
5개의 변경된 파일16개의 추가작업 그리고 9개의 파일을 삭제
  1. 8 5
      paddlex/cv/datasets/voc.py
  2. 2 1
      paddlex/tools/x2coco.py
  3. 2 1
      paddlex/tools/x2imagenet.py
  4. 2 1
      paddlex/tools/x2seg.py
  5. 2 1
      paddlex/tools/x2voc.py

+ 8 - 5
paddlex/cv/datasets/voc.py

@@ -143,12 +143,15 @@ class VOCDetection(Dataset):
                     cname = obj.find(name_tag).text.strip()
                     gt_class[i][0] = cname2cid[cname]
                     pattern = re.compile('<difficult>', re.IGNORECASE)
-                    diff_tag = pattern.findall(str(ET.tostringlist(obj)))[0][1:
-                                                                             -1]
-                    try:
-                        _difficult = int(obj.find(diff_tag).text)
-                    except Exception:
+                    if len(pattern.findall(str(ET.tostringlist(obj)))) == 0:
                         _difficult = 0
+                    else:
+                        diff_tag = pattern.findall(str(ET.tostringlist(obj)))[0][1:
+                                                                                 -1]
+                        try:
+                            _difficult = int(obj.find(diff_tag).text)
+                        except Exception:
+                            _difficult = 0
                     pattern = re.compile('<bndbox>', re.IGNORECASE)
                     box_tag = pattern.findall(str(ET.tostringlist(obj)))
                     if len(box_tag) == 0:

+ 2 - 1
paddlex/tools/x2coco.py

@@ -66,7 +66,8 @@ class X2COCO(object):
         """
         assert osp.exists(image_dir), "he image folder does not exist!"
         assert osp.exists(json_dir), "The json folder does not exist!"
-        assert osp.exists(dataset_save_dir), "The save folder does not exist!"
+        if not osp.exists(dataset_save_dir):
+            os.makedirs(dataset_save_dir)
         # Convert the image files.
         new_image_dir = osp.join(dataset_save_dir, "JPEGImages")
         if osp.exists(new_image_dir):

+ 2 - 1
paddlex/tools/x2imagenet.py

@@ -36,7 +36,8 @@ class X2ImageNet(object):
         """
         assert osp.exists(image_dir), "The image folder does not exist!"
         assert osp.exists(json_dir), "The json folder does not exist!"
-        assert osp.exists(dataset_save_dir), "The save folder does not exist!"
+        if not osp.exists(dataset_save_dir):
+            os.makedirs(dataset_save_dir)
         assert len(os.listdir(dataset_save_dir)) == 0, "The save folder must be empty!"
         for img_name in os.listdir(image_dir):
             img_name_part = osp.splitext(img_name)[0]

+ 2 - 1
paddlex/tools/x2seg.py

@@ -105,7 +105,8 @@ class X2Seg(object):
         """
         assert osp.exists(image_dir), "The image folder does not exist!"
         assert osp.exists(json_dir), "The json folder does not exist!"
-        assert osp.exists(dataset_save_dir), "The save folder does not exist!"
+        if not osp.exists(dataset_save_dir):
+            os.makedirs(dataset_save_dir)
         # Convert the image files.
         new_image_dir = osp.join(dataset_save_dir, "JPEGImages")
         if osp.exists(new_image_dir):

+ 2 - 1
paddlex/tools/x2voc.py

@@ -35,7 +35,8 @@ class X2VOC(object):
         """
         assert osp.exists(image_dir), "The image folder does not exist!"
         assert osp.exists(json_dir), "The json folder does not exist!"
-        assert osp.exists(dataset_save_dir), "The save folder does not exist!"
+        if not osp.exists(dataset_save_dir):
+            os.makedirs(dataset_save_dir)
         # Convert the image files.
         new_image_dir = osp.join(dataset_save_dir, "JPEGImages")
         if osp.exists(new_image_dir):