|
|
@@ -1,5 +1,5 @@
|
|
|
import paddlex
|
|
|
-import paddlehub as hub
|
|
|
+#import paddlehub as hub
|
|
|
import os
|
|
|
import os.path as osp
|
|
|
|
|
|
@@ -85,40 +85,53 @@ def get_pretrain_weights(flag, model_type, backbone, save_dir):
|
|
|
backbone = 'DetResNet50'
|
|
|
assert backbone in image_pretrain, "There is not ImageNet pretrain weights for {}, you may try COCO.".format(
|
|
|
backbone)
|
|
|
- try:
|
|
|
- hub.download(backbone, save_path=new_save_dir)
|
|
|
- except Exception as e:
|
|
|
- if isinstance(e, hub.ResourceNotFoundError):
|
|
|
- raise Exception(
|
|
|
- "Resource for backbone {} not found".format(backbone))
|
|
|
- elif isinstance(e, hub.ServerConnectionError):
|
|
|
- raise Exception(
|
|
|
- "Cannot get reource for backbone {}, please check your internet connecgtion"
|
|
|
- .format(backbone))
|
|
|
- else:
|
|
|
- raise Exception(
|
|
|
- "Unexpected error, please make sure paddlehub >= 1.6.2")
|
|
|
- return osp.join(new_save_dir, backbone)
|
|
|
+ url = image_pretrain[backbone]
|
|
|
+ fname = osp.split(url)[-1].split('.')[0]
|
|
|
+ paddlex.utils.download_and_decompress(url, path=new_save_dir)
|
|
|
+ return osp.join(new_save_dir, fname)
|
|
|
+# try:
|
|
|
+# hub.download(backbone, save_path=new_save_dir)
|
|
|
+# except Exception as e:
|
|
|
+# if isinstance(e, hub.ResourceNotFoundError):
|
|
|
+# raise Exception(
|
|
|
+# "Resource for backbone {} not found".format(backbone))
|
|
|
+# elif isinstance(e, hub.ServerConnectionError):
|
|
|
+# raise Exception(
|
|
|
+# "Cannot get reource for backbone {}, please check your internet connecgtion"
|
|
|
+# .format(backbone))
|
|
|
+# else:
|
|
|
+# raise Exception(
|
|
|
+# "Unexpected error, please make sure paddlehub >= 1.6.2")
|
|
|
+# return osp.join(new_save_dir, backbone)
|
|
|
elif flag == 'COCO':
|
|
|
new_save_dir = save_dir
|
|
|
if hasattr(paddlex, 'pretrain_dir'):
|
|
|
new_save_dir = paddlex.pretrain_dir
|
|
|
- assert backbone in coco_pretrain, "There is not COCO pretrain weights for {}, you may try ImageNet.".format(
|
|
|
- backbone)
|
|
|
- try:
|
|
|
- hub.download(backbone, save_path=new_save_dir)
|
|
|
- except Exception as e:
|
|
|
- if isinstance(hub.ResourceNotFoundError):
|
|
|
- raise Exception(
|
|
|
- "Resource for backbone {} not found".format(backbone))
|
|
|
- elif isinstance(hub.ServerConnectionError):
|
|
|
- raise Exception(
|
|
|
- "Cannot get reource for backbone {}, please check your internet connecgtion"
|
|
|
- .format(backbone))
|
|
|
- else:
|
|
|
- raise Exception(
|
|
|
- "Unexpected error, please make sure paddlehub >= 1.6.2")
|
|
|
- return osp.join(new_save_dir, backbone)
|
|
|
+ url = coco_pretrain[backbone]
|
|
|
+ fname = osp.split(url)[-1].split('.')[0]
|
|
|
+ paddlex.utils.download_and_decompress(url, path=new_save_dir)
|
|
|
+ return osp.join(new_save_dir, fname)
|
|
|
+
|
|
|
+
|
|
|
+# new_save_dir = save_dir
|
|
|
+# if hasattr(paddlex, 'pretrain_dir'):
|
|
|
+# new_save_dir = paddlex.pretrain_dir
|
|
|
+# assert backbone in coco_pretrain, "There is not COCO pretrain weights for {}, you may try ImageNet.".format(
|
|
|
+# backbone)
|
|
|
+# try:
|
|
|
+# hub.download(backbone, save_path=new_save_dir)
|
|
|
+# except Exception as e:
|
|
|
+# if isinstance(hub.ResourceNotFoundError):
|
|
|
+# raise Exception(
|
|
|
+# "Resource for backbone {} not found".format(backbone))
|
|
|
+# elif isinstance(hub.ServerConnectionError):
|
|
|
+# raise Exception(
|
|
|
+# "Cannot get reource for backbone {}, please check your internet connecgtion"
|
|
|
+# .format(backbone))
|
|
|
+# else:
|
|
|
+# raise Exception(
|
|
|
+# "Unexpected error, please make sure paddlehub >= 1.6.2")
|
|
|
+# return osp.join(new_save_dir, backbone)
|
|
|
else:
|
|
|
raise Exception(
|
|
|
"pretrain_weights need to be defined as directory path or `IMAGENET` or 'COCO' (download pretrain weights automatically)."
|