From b57f83d005d710f36b39fadb315a34a2caa29df3 Mon Sep 17 00:00:00 2001 From: wanghaoyang0106 Date: Fri, 3 Jul 2020 13:09:21 +0800 Subject: [PATCH] [bug fix] potential problem if img fed to model is in rectangular shape --- utils/datasets.py | 4 ++-- utils/utils.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/utils/datasets.py b/utils/datasets.py index 1ebd709..6caae67 100755 --- a/utils/datasets.py +++ b/utils/datasets.py @@ -679,8 +679,8 @@ def letterbox(img, new_shape=(640, 640), color=(114, 114, 114), auto=True, scale dw, dh = np.mod(dw, 64), np.mod(dh, 64) # wh padding elif scaleFill: # stretch dw, dh = 0.0, 0.0 - new_unpad = new_shape - ratio = new_shape[0] / shape[1], new_shape[1] / shape[0] # width, height ratios + new_unpad = (new_shape[1], new_shape[0]) + ratio = new_shape[1] / shape[1], new_shape[0] / shape[0] # width, height ratios dw /= 2 # divide padding into 2 sides dh /= 2 diff --git a/utils/utils.py b/utils/utils.py index 305486a..332251d 100755 --- a/utils/utils.py +++ b/utils/utils.py @@ -173,7 +173,7 @@ def xywh2xyxy(x): def scale_coords(img1_shape, coords, img0_shape, ratio_pad=None): # Rescale coords (xyxy) from img1_shape to img0_shape if ratio_pad is None: # calculate from img0_shape - gain = max(img1_shape) / max(img0_shape) # gain = old / new + gain = min(img1_shape[0] / img0_shape[0], img1_shape[1] / img0_shape[1]) # gain = old / new pad = (img1_shape[1] - img0_shape[1] * gain) / 2, (img1_shape[0] - img0_shape[0] * gain) / 2 # wh padding else: gain = ratio_pad[0][0]