参考链接: python CV2中shape和resize返回值和参数的区别
参考链接: dst = cv.resize( src, dsize[, dst[, fx[, fy[, interpolation]]]] )
注意细节:使用cv2.imread()读取图片之后,数据的形状和维度布局是(H,W,C),但是使用函数cv2.resize()进行缩放时候,传入的目标形状是(W,H),而不是(H,W),这一点要格外留意.
代码实验展示:
import numpy as np
import cv2 #导入opencv模块
image_0 = cv2.imread("bryant.jpg") #读取要处理的图片
cv2.imshow("Original Image", image_0)
print('image_0变量的类型是:', type(image_0),' 图像的形状(H,W,C)是:',image_0.shape)
cv2.waitKey(0) #不让程序突然结束
image_1 = cv2.resize(image_0, (667, 1000))
cv2.imshow("Image-1", image_1)
print('image_1变量的类型是:', type(image_1),' 图像的形状(H,W,C)是:',image_1.shape)
cv2.waitKey(0) #不让程序突然结束
控制台输出结果:
Windows PowerShell
版权所有 (C) Microsoft Corporation。保留所有权利。
尝试新的跨平台 PowerShell https://aka.ms/pscore6
加载个人及系统配置文件用了 824 毫秒。
(base) PS C:\Users\chenxuqi\Desktop\News4cxq\test4cxq> conda activate ssd4pytorch1_2_0
(ssd4pytorch1_2_0) PS C:\Users\chenxuqi\Desktop\News4cxq\test4cxq> & 'D:\Anaconda3\envs\ssd4pytorch1_2_0\python.exe' 'c:\Users\chenxuqi\.vscode\extensions\ms-python.python-2021.1.502429796\pythonFiles\lib\python\debugpy\launcher' '53732' '--' 'c:\Users\chenxuqi\Desktop\News4cxq\test4cxq\testCV_1.py'
image_0变量的类型是: <class 'numpy.ndarray'> 图像的形状(H,W,C)是: (667, 1000, 3)
image_1变量的类型是: <class 'numpy.ndarray'> 图像的形状(H,W,C)是: (1000, 667, 3)
(ssd4pytorch1_2_0) PS C:\Users\chenxuqi\Desktop\News4cxq\test4cxq>
运行结果截图: