📜  imread real color cv2 - Python (1)

📅  最后修改于: 2023-12-03 14:42:05.659000             🧑  作者: Mango

基于 Python 的 imread 图像处理

imread 是 Python 中用于读取图像的函数,它可以读取多种格式的图像文件,并将其转换为 NumPy 数组进行后续处理。本文将介绍 imread 的使用方法,以及如何实现读取真彩色(RGB)图像。

安装

在使用 imread 之前,我们需要先安装相关的库。使用 pip 工具可以方便地进行安装:

pip install opencv-python
读取图像

使用 imread 函数的基本语法如下:

cv2.imread(filename[, flags])

其中 filename 是要读取的文件路径,而 flags 是一个可选参数,它指定了读取图像时的一些属性,常见的取值有:

  • cv2.IMREAD_COLOR:读取 RGB 彩色图像,默认值
  • cv2.IMREAD_GRAYSCALE:读取灰度图像
  • cv2.IMREAD_UNCHANGED:读取原始图像,包括透明通道

下面是一个基本的读取图像的例子:

import cv2

img = cv2.imread('image.jpg', cv2.IMREAD_COLOR)

这里读取了名为 image.jpg 的图像文件,并将其转换为 RGB 格式的 NumPy 数组。

RGB 转换

读取到的图像可能不一定是 RGB 格式,我们可以使用 cv2.cvtColor 函数将其转换为 RGB 彩色格式:

rgb_img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

其中 COLOR_BGR2RGB 指定将 BGR 格式转换为 RGB 格式。如果图像本来就是 RGB 彩色格式,那么这一步可以省略。

显示图像

接下来,我们可以使用 matplotlib.pyplot 库将转换后的 NumPy 数组显示出来:

import matplotlib.pyplot as plt

plt.imshow(rgb_img)
plt.show()

执行以上代码后,就可以在窗口中看到读取到的图像了。

完整代码
import cv2
import matplotlib.pyplot as plt

img = cv2.imread('image.jpg', cv2.IMREAD_COLOR)
rgb_img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
plt.imshow(rgb_img)
plt.show()

以上就是使用 Python 中的 imread 函数读取真彩色(RGB)图像的方法。