【问题标题】:cv2.imread: how to keep color channel when reading in grayscale imagecv2.imread:读取灰度图像时如何保持颜色通道
【发布时间】:2018-03-25 16:51:26
【问题描述】:

我正在尝试使用 opencv2 加载灰度图像,但不知何故颜色通道被完全删除。

当我在做的时候:

img = cv2.imread(PATH_TO_IMAGE, 1) // load image as rgb 

img.shape 返回例如(28,28,3)

但如果我正在加载与灰度相同的图像:

img = cv2.imread(PATH_TO_IMAGE, 0) // load image as grayscale 

img.shape 返回(28,28),但我希望/需要(28,28,1) 的形状

这是 opencv 中的错误还是我遗漏了什么?

提前致谢!

【问题讨论】:

  • 除了答案中提到的内容之外,您还可以使用np.expand_dims

标签: python python-2.7 opencv opencv3.1


【解决方案1】:

在以灰度加载图像时,OpenCV 的行为与 Python 中的行为类似。如果您需要添加频道以使其成为(28,28,1),您可以这样做

import numpy as np
img = img[:, :, np.newaxis]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-01-04
    • 2017-01-23
    • 1970-01-01
    • 2017-11-17
    • 2021-01-01
    • 2014-06-30
    • 2017-10-12
    • 1970-01-01
    相关资源
    最近更新 更多