使用 Python OpenCV 获取图像大小

我们都必须将鼠标光标移动到图像文件上,不到一秒的时间就会出现一个小框,显示图像的尺寸。那是多么容易啊!但是我们可以通过编程和编码来获取图像的大小吗?

嗯,是的,我们可以使用编程来获取图像的大小,这就是Python 编程语言发挥作用的地方。

由于 Python 广泛用于现实生活中的应用程序,例如 Web 开发、机器学习、人工智能、数据科学等,因此我们可以使用 Python OpenCV 获取任何图像的大小(尺寸)也就不足为奇了。

我们将通过示例了解如何使用 OpenCV Python 获取图像的大小。让我们开始吧。

另请阅读:Python 中的图像处理 – 边缘检测、调整大小、腐蚀和膨胀

介绍

图像处理过程中,了解我们所处理的图像的大小非常重要,该图像正在经历各个阶段的转换。

图像是像素的二维数组。图像的尺寸是指图像的高度、宽度和通道数。使用OpenCV时,图像存储在NumPy ndarray(N 维数组)中。

图像作为二维数组

前提条件

  • 通过在终端中执行以下命令来安装 OpenCV:
pip install opencv-contrib-python

读取图像

可以使用OpenCV的imread函数加载图像

代码片段

1
2
3
4
5
# Importing the OpenCV Module
import cv2 as cv
 
# Reading the image using imread() function
img = cv.imread('IMAGES/Puppy.jpg')

在上面的代码片段中,imread函数将图像的路径作为参数。

示例 – 使用 OpenCV 获取图像尺寸

在此示例中,我使用了以下图像,图像的尺寸为406×503,其中宽度为 406 像素,高度为 503 像素。

为了获得图像的大小,ndarray.shape使用函数ndarray读取图像的位置imread返回shape一个具有 3 个值的元组 – 高度、宽度和通道数。高度位于索引 0 处,宽度位于索引 1 处,通道数位于索引 2 处。

代码片段

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 号
18
19
20
21
22
23
24
25
26
27
# Importing the OpenCV Module
import cv2 as cv
 
# Reading the image using imread() function
img = cv.imread('IMAGES/Puppy.jpg')
 
dimensions = img.shape
 
#Accessing height, width and channels
 
# Height of the image
height = img.shape[0]
 
# Width of the image
width = img.shape[1]
 
# Number of Channels in the Image
channels = img.shape[2]
 
# Displaying the dimensions of the Image
print("Dimension are :",dimensions)
 
print("Height :",height,"px")
 
print("Width :",width,"px")
 
print("Number of Channels : ",channels)

输出

Dimension are : (503, 406, 3)
Height : 503 px
Width : 406 px
Number of Channels :  3

这真的很有趣,我们的代码生成了图像的精确尺寸。

结论

这是关于使用 OpenCV 获取图像的大小(尺寸)。确保提供要读取的图像的完整路径。感谢您的阅读并祝您编码愉快!