def letterbox(img, new_shape=(640, 640), color=(0, 0, 0)):
# Resize and pad image while meeting stride-multiple constraints
h,w = img.shape[:2] # current shape [height, width]
l = h if h > w else w
scale = new_shape[0]/l
h,w = np.array(img.shape[:2])*scale
resized = cv2.resize(img,(int(w),int(h)))
dh = max(new_shape[0]-resized.shape[0],0)
dw = max(new_shape[1]-resized.shape[1],0)
img = cv2.copyMakeBorder(resized, 0, dh, 0, dw, cv2.BORDER_CONSTANT, value=color) # add border
return img #, scale
Monday, 14 February 2022
How to do the resizing / letterbox by keeping the aspect ratio?
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment