【问题标题】:Basic Pytorch tensor multiplication and addition基本 Pytorch 张量乘法和加法
【发布时间】:2020-04-26 16:36:29
【问题描述】:

我只是意识到我缺乏一些非常基本的 pytorch 张量数学。如何使用 pytorch 张量执行以下操作?

lab_rs = (lab_rs * [100, 255, 255] - [0, 128, 128])

这在 numpy 中运行良好。这是一个形状为 (3, 512, 1024) 的图像,我想分别对每个颜色通道的值进行乘法和减法

我尝试使用张量的错误是:

TypeError: only integer tensors of a single element can be converted to an index

【问题讨论】:

  • 假设 lab_rs 是一个 numpy 数组,我无法执行您的语句。我得到ValueError: operands could not be broadcast together with shapes (3,512,1024) (3,) 你能提供一个完整的代码示例吗?

标签: python pytorch


【解决方案1】:

您需要确保所有操作数都可以是 broadcast 到相同的尺寸:

lab_rs = lab_rs * torch.tensor([[[100]], [[255]], [[255.]]]) - torch.tensor([[[0]], [[128]], [[128.]]])

【讨论】:

  • 太棒了。这行得通。即使我不完全了解广播。非常感谢!
猜你喜欢
  • 2021-03-08
  • 2021-04-05
  • 2019-10-29
  • 2021-06-27
  • 2023-03-07
  • 2020-10-14
  • 1970-01-01
  • 1970-01-01
  • 2018-10-15
相关资源
最近更新 更多