【问题标题】:Is there possible to create training matrix for both RGB and Gray Scale images是否可以为 RGB 和灰度图像创建训练矩阵
【发布时间】:2019-02-08 11:48:46
【问题描述】:

我正在尝试为 CNN 创建训练矩阵。 图像是 RGB 和灰度/比例。

创建类似的东西 [ # of images, #features ]

图片尺寸为:

1024* 1024

以下是我的代码:

from skimage.transform import rescale, resize
from skimage import io

features = np.empty((0,1024 * 1024), np.float32)
imagePath = directoyPath+"/"+ imageName
image = io.imread(imagePath)
print(image.shape)
flatFeatures = np.reshape(image,(1,1024*1024))
print(flatFeatures.shape)
features = np.append(features, flatFeatures, axis=0)
print(features.shape)

问题是 RGB 形状是 (1024,1024,3)。

如何将 RGB 和灰度图像输入到features 矩阵。

【问题讨论】:

  • 您想将 RGB 和灰度图像同时包含到训练集中吗?
  • 是的,有些图像是黑白的,有些是RGB
  • 您说您正在尝试制作 CNN。据我所知,这两种类型的图像不能同时用于该目的。
  • 好的,你能告诉我我是否只为 RGB 创建训练矩阵吗?与灰度相比有什么区别?就像灰度一样,矩阵形状是 (0,1024*1024) RGB 是什么?

标签: python numpy tensorflow image-processing conv-neural-network


【解决方案1】:

只是您必须在将 RGB 图像转换为灰度后输入,您不能将不同通道的图像传递给 CNN,因为 RGB 有 3 个通道,而灰度图像有 1 个通道,在输入层中指定通道CNN 是必要的,它不能是动态的,所以你必须确保你有 3 个频道或 1 个

出于您的目的,我建议您使用cvtColor(gray, color, cv::COLOR_GRAY2BGR) 将灰度图像转换为 RGB,图像实际上不会获得任何颜色,但其中的通道数为 3,允许您同时传递 RGB 和灰度(技术上是 RGB,但仍然是无色的)图像在一起

【讨论】:

  • 你能告诉我我是否只为 RGB 创建一个训练矩阵吗?与灰度相比有什么区别?就像灰度一样,矩阵形状是 (0,1024*1024) RGB 是什么?
  • 对于初学者来说,灰度的矩阵形状是 (1,1024*1024)
  • 我认为相比之下 rgb 是 (3,1024*1024)
  • 是的,我已经为这个维度创建了矩阵形状。你能告诉我 RGB 训练矩阵的维度是多少吗?
  • 好的,谢谢,你能分享为 (3,1024*1024) 矩阵和填充创建 RGB 训练矩阵的链接吗?
猜你喜欢
  • 1970-01-01
  • 2020-02-12
  • 2012-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多