【问题标题】:Converting Matrix to Image [not RGB] and what it means将矩阵转换为图像 [不是 RGB] 及其含义
【发布时间】:2018-02-05 17:41:41
【问题描述】:

我想在使用 VGG 模型时查看各种中间层的输出(只是为了好玩)。

所以在卷积操作之后你会得到这样的结果 (?,28,28,512):

  1. ?通过的图像数量
  2. 28*28是卷积运算后的维度
  3. 512 是提供的过滤器数量。

我想看看各种输出是什么样子的,例如 [0,:,:,25],所以在link 中使用了这种方法将数组转换为图像。现在我的问题是,如果不是 RGB 原因,这究竟是什么图像,当我看到图像时肯定有一些蓝色、绿色。

编辑:- 我一直在使用的代码:-

req_model = Model(inputs=base_model.input, outputs=base_model.get_layer('block4_conv2 ').output) vpred = req_model.predict(img) ## np.shape(vpred) == (1,28,28,512) plt.imshow(vpred[0,:,:,12])

TL;DR 在我的情况下,形状 28*28 的图像究竟意味着什么[我以为我会看到黑白的东西],如果这不是正确的方式,我希望得到一些指导。

【问题讨论】:

  • 这是一个正在使用的颜色图。它的名字是 viridis,在 matplotlib 的颜色图文档上有一个自己的页面!还有一个gallery
  • 快速问题,我可以为这个数组更改不同的颜色图吗?全球是否接受应该使用哪种颜色,或者只是人们根据不同的应用程序选择。
  • 是的。阅读 matplotlib 的文档(关于如何选择颜色图)。您也没有提供任何代码。谁知道你是如何策划的。大多数 matplotlib 人都会使用 viridis。有很多话要说,有一个关于 viridis 的视频讨论。每个颜色图都针对不同的事物。正如上面的画廊链接所说:这是试图实现感知统一映射的地图。如果您不知道这意味着什么,请寻找谈话。 (当然你也可以使用 cmap.Greys)
  • 感谢您的帮助,我添加的代码不多,只有 matplotlib 的 pyplot 中的基本 plt.imshow 函数。如果可以的话,你可以添加你一直在谈论的视频谈话的链接(我也可以谷歌它,但不知道你指的是哪一个)。
  • 我的意思是this one。请记住,viridis 是附带的,并且是 matplotlib 2 中的默认值(在视频发布时是/曾经是外部包)。

标签: python arrays image numpy computer-vision


【解决方案1】:

如果您使用 matplotlib 绘制图像,那么它看起来像 Viridis 颜色图。更多here.

【讨论】:

  • 快速问题我可以为这个数组更改不同的颜色图吗?是否应该使用哪种颜色图,或者只是人们根据不同的应用程序进行选择
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-09
  • 2020-01-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多