meshgrid
Example::
>>> x = torch.tensor([1, 2, 3])
>>> y = torch.tensor([4, 5, 6])
>>> grid_x, grid_y = torch.meshgrid(x, y)
>>> grid_x
tensor([[1, 1, 1],
[2, 2, 2],
[3, 3, 3]])
>>> grid_y
tensor([[4, 5, 6],
[4, 5, 6],
[4, 5, 6]])
tensorflow:
x = np.array([1, 2, 3])
y = np.array([4, 5, 6])
grid_x, grid_y = tf.meshgrid(x, y)
sess = tf.Session()
print(sess.run(grid_x))
print(sess.run(grid_y))
results:
[[1 2 3]
[1 2 3]
[1 2 3]]
[[4 4 4]
[5 5 5]
[6 6 6]]
做代码重构的时候发现tensorflow和pytorch的meshgrid的实现是不一致的,要保持一致需要后续进行transpose和reshape操作,以此简单记录.