[英]Resize an image with a max width and height, using openCV
给定输入图像test.png
,如何调整它的大小(缩小),使其适合 400x500 像素的框,同时保持纵横比?
是否可以直接使用cv2.resize
,还是我们必须手动计算大小因子?
似乎在cv2
没有内置的帮助函数。 这是一个有效的解决方案:
maxwidth, maxheight = 400, 500
import cv2
img = cv2.imread('test2.png')
f1 = maxwidth / img.shape[1]
f2 = maxheight / img.shape[0]
f = min(f1, f2) # resizing factor
dim = (int(img.shape[1] * f), int(img.shape[0] * f))
resized = cv2.resize(img, dim)
cv2.imwrite('out.png', resized)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.