OpenCV Python 图像属性

OpenCV Python 图像属性

OpenCV将图像数据读取为NumPy数组。此ndarray对象的 shape() 方法显示图像的属性,如尺寸和通道。

使用shape()方法的命令如下 –

>>> img = cv.imread("OpenCV_Logo.png", 1)
>>> img.shape
(222, 180, 3)

在上述命令中,-

  • 第一和第二个项shape [0]和shape [1]代表图像的宽度和高度。
  • shape[2]代表通道数。
  • 3表示图像具有红色、绿色和蓝色(RGB)通道。

类似地,size属性返回图像的大小。图像大小的命令如下所示 –

>>> img.size
119880

每个ndarray中的元素表示一个图像像素。

我们可以通过下面的命令访问和操作任何像素的值。

>>> p=img[50,50]
>>> p
array([ 1, 1, 255], dtype=uint8)

示例

以下代码将前100×100像素的颜色值更改为黑色。 imshow() 函数可以验证结果。

>>> for i in range(100):
   for j in range(100):
      img[i,j]=[0,0,0]

输出

OpenCV Python 图像属性

使用 split() 函数可以将图像通道拆分为单独的平面。使用 merge() 函数可以将通道合并。

split()函数返回一个多通道数组。

我们可以使用以下命令来拆分图像通道:

>>> img = cv.imread("OpenCV_Logo.png", 1)
>>> b,g,r = cv.split(img)

现在你可以对每个平面进行操作。

假设我们将蓝色通道的所有像素点设为0,代码如下−

>>> img[:, :, 0]=0
>>> cv.imshow("image", img)

计算得出的图像将如下所示−

OpenCV Python 图像属性

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程