Fix SKU-110K HUB: OSError (#5106)
This commit is contained in:
1 parent
48b00dbc0d
commit
276b674513
1 file changed
+16
-6
+16
-6
@@ -943,12 +943,22 @@ def dataset_stats(path='coco128.yaml', autodownload=False, verbose=False, profil
|
||||
return False, None, path
|
||||
|
||||
def hub_ops(f, max_dim=1920):
|
||||
# HUB ops for 1 image 'f'
|
||||
im = Image.open(f)
|
||||
r = max_dim / max(im.height, im.width) # ratio
|
||||
if r < 1.0: # image too large
|
||||
im = im.resize((int(im.width * r), int(im.height * r)))
|
||||
im.save(im_dir / Path(f).name, quality=75) # save
|
||||
# HUB ops for 1 image 'f': resize and save at reduced quality in /dataset-hub for web/app viewing
|
||||
f_new = im_dir / Path(f).name # dataset-hub image filename
|
||||
try: # use PIL
|
||||
im = Image.open(f)
|
||||
r = max_dim / max(im.height, im.width) # ratio
|
||||
if r < 1.0: # image too large
|
||||
im = im.resize((int(im.width * r), int(im.height * r)))
|
||||
im.save(f_new, quality=75) # save
|
||||
except Exception as e: # use OpenCV
|
||||
print(f'WARNING: HUB ops PIL failure {f}: {e}')
|
||||
im = cv2.imread(f)
|
||||
im_height, im_width = im.shape[:2]
|
||||
r = max_dim / max(im_height, im_width) # ratio
|
||||
if r < 1.0: # image too large
|
||||
im = cv2.resize(im, (int(im_width * r), int(im_height * r)), interpolation=cv2.INTER_LINEAR)
|
||||
cv2.imwrite(str(f_new), im)
|
||||
|
||||
zipped, data_dir, yaml_path = unzip(Path(path))
|
||||
with open(check_yaml(yaml_path), errors='ignore') as f:
|
||||
|
||||
Reference in new issue
Block a user