Skip to content

Commit

Permalink
Fix Yolo 8.0.206 scale bug (ultralytics#7821)
Browse files Browse the repository at this point in the history
  • Loading branch information
Alarmod authored and gkinman committed May 30, 2024
1 parent a965d47 commit 5b8f741
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions ultralytics/utils/ops.py
Original file line number Diff line number Diff line change
Expand Up @@ -362,8 +362,8 @@ def scale_image(masks, im0_shape, ratio_pad=None):
else:
# gain = ratio_pad[0][0]
pad = ratio_pad[1]
top, left = (int(round(pad[1] - 0.1)), int(round(pad[0] - 0.1))) # y, x
bottom, right = (int(round(im1_shape[0] - pad[1] + 0.1)), int(round(im1_shape[1] - pad[0] + 0.1)))
top, left = int(pad[1]), int(pad[0]) # y, x
bottom, right = int(im1_shape[0] - pad[1]), int(im1_shape[1] - pad[0])

if len(masks.shape) < 2:
raise ValueError(f'"len of masks shape" should be 2 or 3, but got {len(masks.shape)}')
Expand Down Expand Up @@ -731,8 +731,8 @@ def scale_masks(masks, shape, padding=True):
if padding:
pad[0] /= 2
pad[1] /= 2
top, left = (int(round(pad[1] - 0.1)), int(round(pad[0] - 0.1))) if padding else (0, 0) # y, x
bottom, right = (int(round(mh - pad[1] + 0.1)), int(round(mw - pad[0] + 0.1)))
top, left = (int(pad[1]), int(pad[0])) if padding else (0, 0) # y, x
bottom, right = (int(mh - pad[1]), int(mw - pad[0]))
masks = masks[..., top:bottom, left:right]

masks = F.interpolate(masks, shape, mode="bilinear", align_corners=False) # NCHW
Expand Down

0 comments on commit 5b8f741

Please sign in to comment.