首先读入原图片:
import cv2 as cv
img = cv.imread('d:/OpenCV/market.jpg')
cv.imshow('Image',img)
cv.waitKey(1000)
print(img.shape)
输出是 (800, 1540, 3)。大小偏大,我们想把该图片变小。
接下来利用resize函数将图片变成我们想要的大小:
resized = cv.resize(img, (700, 375), interpolation=cv.INTER_AREA)
cv.imshow('Resized Image',resized)
cv.waitKey(1000)
print(resized.shape)
上述代码的resize函数用很多参数,分别如下:
第一个参数为要改变大小的图片
第二个参数是改变后的大小(即目的大小)
其余参数保持默认值即可,这里只将interpolation设定为cv.INTER_AREA。值得注意的是,当缩小图片时,cv.INTER_AREA效果较好,当放大图片时,cv.INTER_CUBIC或cv.INTER_LINEAR效果较好。
输出是 (375, 700, 3),符合我们的预期。
如果需要,可以将改变大小后的图片进行保存:
cv.imwrite('d:/OpenCV/resized_img',resized)
@CSDN