【问题标题】:Understanding Pytorch Grid Sample了解 Pytorch 网格示例
【发布时间】:2020-04-24 11:15:38
【问题描述】:

我有一个大小为[1,32,296,400]的输入张量

我有一个像素集[1, 56000, 400, 2]

使用mode=‘bilinear’ 应用grid_sample 后,我有[1, 32, 56000, 400]

我能知道这里到底发生了什么吗?我知道grid_sample 应该以可区分的方式有效地将像素转换到新位置,但这些尺寸并不能说明发生了什么。

【问题讨论】:

    标签: python computer-vision pytorch


    【解决方案1】:

    如果您的域是图像,我们可以为维度赋予更直观的名称。

    您的输入张量是具有c 通道和h 高度和w 宽度的图像批次b。 您的网格是批量b 操作的张量,定义h 高度和w 宽度像素,并且应该对输入中的xy 位置进行采样。

    input [b, c, h, w]
    grid [b, h, w, xy]
    out [b, c, h, w]
    

    【讨论】:

      【解决方案2】:

      请看grid_sample的文档。

      您的输入张量的shape 为 1x32x296x400,也就是说,您在批处理中有一个示例,具有 32 个通道和 296x400 像素的空间尺寸。
      此外,您有一个大小为 1x56000x400x2 的“网格”,pytorch 将其解释为空间尺寸为 56000x400 的网格的新位置,其中每个新位置都有 x,y 坐标,可以从中采样新的网格值。因此,“网格”信息的形状为 1x56000x400x2。
      正如预期的那样,输出是一个形状为 1x32x56000x400 的 2D 张量:批次和通道尺寸不变,但空间坐标与提供给 grid_sample 的“网格”信息一致。

      【讨论】:

        猜你喜欢
        • 2020-05-12
        • 2019-09-17
        • 2012-10-14
        • 1970-01-01
        • 1970-01-01
        • 2020-01-09
        • 1970-01-01
        • 2012-06-01
        • 2017-06-24
        相关资源
        最近更新 更多