pytorch筛选后修改,是不可以的:
自己总结的:一级筛选修改是ok的
筛选后,再进行筛选,修改二次筛选结果,原数据是不变的。
import torch
a=torch.Tensor([0.5,0.6])
boxes=torch.Tensor([[0.1,0.2,0.62,0.9],[0.5,0.6,0.7,0.8]])
错误写法:
b=boxes[a < 0.6]
b[:, 2:] = b[:, :2]
print(boxes)
正确写法:
boxes[a < 0.6]=torch.cat((b[:, :2],b[:, :2]),1)
print(boxes)