abd*_*ion 2 python opencv image image-resizing python-imaging-library
我有一张图片,我想在不破坏它的情况下调整和扩展这张图片。
图片:
图片尺寸:
我希望它调整为的图像大小:
我尝试了所有已知的方法:
from PIL import Image
path = "image.png"
w, h = 2000, 2100
img = Image.open(path)
img = img.resize((w, h), Image.ANTIALIAS)
img.save("re_image.png", "PNG")
Run Code Online (Sandbox Code Playgroud)import cv2
path = "image.png"
w, h = 2000, 2100
img = cv2.imread(path)
img = cv2.resize(img, (w, h), interpolation = cv2.INTER_AREA)
cv2.imwrite("re_image.png", img)
Run Code Online (Sandbox Code Playgroud)结果是:
不要使用ANTIALIAS过滤器。由于您想保留边缘的清晰度,只需使用NEAREST过滤器即可。该过滤器是默认的,如果没有参数传递给resample的参数Image.resize
img = img.resize((w, h))
Run Code Online (Sandbox Code Playgroud)
这给出了预期的结果
