首页 > 解决方案 > 如何在python中检查我的图像是RGB格式还是BGR格式?我如何转换它们,反之亦然?

问题描述

我正在对 OpenVino 模型中的预训练数据进行一些预处理。它说它只使用 BGR 格式的图像。

在这里, 我如何在 python 中检查我的图像是 BGR 格式还是 RBG 格式?

我加载的图像代码是

import cv2
import numpy as np
from PIL import Image

image = cv2.imread('29101878_988024658021087_5045014614769664000_o.jpg')
print(image.shape)

给出形状的输出(973,772,3)

如何检查图像是 RBG 还是 BGR 格式?如果它是 RBG 格式,我如何将其转换为 BGR,反之亦然?

标签: pythonpython-3.xpython-imaging-librarycv2

解决方案


当您使用 opencv (imread, VideoCapture) 时,图像被加载到 BGR 颜色空间中。

参考 : Note: In the case of color images, the decoded images will have the channels stored in B G R order.

链接: https ://docs.opencv.org/2.4/modules/highgui/doc/reading_and_writing_images_and_video.html#imread )

要转换,您可以使用

rgb_image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

反之亦然。


推荐阅读