【问题标题】:Are RGB-images in Keras represented as [R,G,B], [R,G,B], ... or as [RR.., GG.., BB..]?Keras 中的 RGB 图像是表示为 [R,G,B], [R,G,B], ... 还是表示为 [RR.., GG.., BB..]?
【发布时间】:2019-09-24 17:48:21
【问题描述】:

假设我们有一个 3x3 RGB 图像。

以下哪种表述是正确的?

[ R, G, B],               [ R, R, R],
[ R, G, B],     OR        [ G, G, G], 
[ R, G, B]                [ B, B, B]

我故意省略了外括号,因为它们的设置方式是我问题的一部分

【问题讨论】:

  • 我自己才发现的。这似乎是第一个选项: [R,G,B], [R,G,B] ,... 感谢您来参加我的 Ted 演讲! ;-)

标签: machine-learning keras deep-learning computer-vision rgb


【解决方案1】:

在 Keras(和大多数其他地方)中,“R”、“G”和“B”被称为“通道”。默认情况下,通道是张量的最后一个维度。这意味着每个图像是一个行数组,每一行是一个像素数组,每个像素是一个 3 种颜色/通道的数组。为了回答您的确切问题,您的第一个示例而不是您的第二个示例最能代表这一点。

不过,Keras 也可以配置为使用channels_first,也就是说正好相反。在这种情况下,图像是一个由 3 个通道组成的数组,每个通道是一个单色的二维像素数组。

【讨论】:

    【解决方案2】:

    从我的角度来看,您提出的问题不清楚:

    • 3x3 RGB 图像通常表示为 3x3x3 数组

    这意味着如果您的问题是关于 3x3 RGB 图像,它应该包含三个 3x3 数组,每个数组包含一种颜色的值,可以将其可视化为:

    {[(R, R, R),   [(G, G, G),   [(B, B, B),
      (R, R, R),    (G, G, G),    (B, B, B),
      (R, R, R)],   (G, G, G)],   (B, B, B)]}
    
    • 您的问题实际上将 3x1 RGB 图像可视化

    在这种情况下(3x1 RGB 图像),您问题中的这个版本应该是正确的(可能在转置之后):

    {[ R, R, R],
     [ G, G, G], 
     [ B, B, B]}
    

    如果我错了,请随时编辑或更正我的答案!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-11
      • 2020-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-11
      相关资源
      最近更新 更多