Python OpenCV图像基础操作:读取、缩放与裁剪详解
本文详细介绍Python中使用OpenCV进行图像基础操作的方法。涵盖如何读取图像并获取其形状属性(高度、宽度、通道数),使用resize()函数调整图像尺寸,以及通过矩阵切片实现图像裁剪。包含完整代码示例与效果演示,帮助初学者快速掌握OpenCV核心功能。
准备工作
在已创建的项目中右键,选择新建Python文件。在代码开头import cv2导入cv2库以使用相关功能。

需明确OpenCV中坐标系的定义:x轴向右延伸,y轴向下延伸,坐标原点位于左上角。例如,一张宽640像素、高480像素的图片即遵循此坐标系。接下来开始具体操作学习。

查看图像大小
- 首先调用imread()方法,从资源文件夹中加载名为lambo.png的图片。
- 接着输出该图像的shape属性,以获取其尺寸信息。
img=cv2.imread("Resources/lambo.png")
print(img.shape)
观察运行结果如下:

- 数值462代表图像的高度,对应y轴方向。
- 数值623代表图像的宽度,对应x轴方向。
- 数值3表示图像包含3个颜色通道,分别为蓝色(B)、绿色(G)和红色(R)。
重新调整图像大小
- 使用resize()方法可将图像调整为指定的宽高。参数1传入待处理的图像对象img,参数2传入元组(600,300),分别指定新图像的宽度和高度。
- 打印调整后的图像imgResize的shape属性,验证输出是否为(300,600,3)。
- 最后,使用显示函数将原始图像与调整大小后的图像同时展示出来。
img=cv2.imread("Resources/lambo.png")
imgResize=cv2.resize(img,(600,300))
print(imgResize.shape)
cv2.imshow("img",img)
cv2.imshow("imgResize",imgResize)
cv2.waitKey(0)
运行代码后,右侧窗口显示调整后的图像,可见其宽高均小于原图。

查看控制台输出,显示的数值与原图尺寸一致,符合预期。

图像裁剪
图像裁剪本质是对图像矩阵进行截取,通过选择特定的行和列来显示对应区域的像素点。imgCropped=img[200:400,200:400]代码对原图进行裁剪,高度范围从200到400,宽度范围同样从200到400,只要区间值不超过图像的实际高宽即可。
img=cv2.imread("Resources/lambo.png")
imgCropped=img[200:400,200:400]
cv2.imshow("img",img)
cv2.imshow("imgCropped",imgCropped)
cv2.waitKey(0)
运行查看效果:左侧显示尺寸为623x462的原图,右侧显示尺寸为200x200的裁剪后图像。

若将裁剪得到的图像重新放置回原图对应位置进行覆盖,可以还原出原始图像。

本节内容较为简单,旨在帮助读者熟悉OpenCV的基础应用,为后续深入学习奠定基础。实践出真知,建议动手编写代码进行练习。
至此,关于Python OpenCV调整大小与图像操作的讲解结束。如需了解更多相关Python OpenCV图像操作内容,请查阅本站往期文章或继续浏览后续章节。感谢支持!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













