import cv2 | |
def cv2_resize_shortest_edge(image, size): | |
h, w = image.shape[:2] | |
if h < w: | |
new_h = size | |
new_w = int(round(w / h * size)) | |
else: | |
new_w = size | |
new_h = int(round(h / w * size)) | |
resized_image = cv2.resize(image, (new_w, new_h), interpolation=cv2.INTER_AREA) | |
return resized_image | |
def apply_color(img, res=512): | |
img = cv2_resize_shortest_edge(img, res) | |
h, w = img.shape[:2] | |
input_img_color = cv2.resize(img, (w//64, h//64), interpolation=cv2.INTER_CUBIC) | |
input_img_color = cv2.resize(input_img_color, (w, h), interpolation=cv2.INTER_NEAREST) | |
return input_img_color |