Skip to content

Commit

Permalink
Clip Objects365 autodownload labels (#5214)
Browse files Browse the repository at this point in the history
Fixes out of bounds labels that seem to affect ~10% of images in dataset.
  • Loading branch information
glenn-jocher committed Oct 16, 2021
1 parent 0000334 commit 6d9b99f
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions data/Objects365.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ download: |
from pycocotools.coco import COCO
from tqdm import tqdm
from utils.general import download, Path
from utils.general import Path, download, np, xyxy2xywhn
# Make Directories
dir = Path(yaml['path']) # dataset root dir
Expand Down Expand Up @@ -105,7 +105,8 @@ download: |
annIds = coco.getAnnIds(imgIds=im["id"], catIds=catIds, iscrowd=None)
for a in coco.loadAnns(annIds):
x, y, w, h = a['bbox'] # bounding box in xywh (xy top-left corner)
x, y = x + w / 2, y + h / 2 # xy to center
file.write(f"{cid} {x / width:.5f} {y / height:.5f} {w / width:.5f} {h / height:.5f}\n")
xyxy = np.array([x, y, x + w, y + h])[None] # pixels(1,4)
x, y, w, h = xyxy2xywhn(xyxy, w=width, h=height, clip=True)[0] # normalized and clipped
file.write(f"{cid} {x:.5f} {y:.5f} {w:.5f} {h:.5f}\n")
except Exception as e:
print(e)

0 comments on commit 6d9b99f

Please sign in to comment.