Pytorch 之修改Tensor部分值
阿新 • • 發佈:2018-12-10
一:背景引入
對於一張圖片,怎樣修改區域性畫素值?
二:利用Tensor方法
比如輸入全零tensor,可認為為黑色圖片
>>> n=torch.FloatTensor(3,3,4).fill_(0)
>>> n tensor([[[0., 0., 0., 0.], [0., 0., 0., 0.], [0., 0., 0., 0.]], [[0., 0., 0., 0.], [0., 0., 0., 0.], [0., 0., 0., 0.]], [[0., 0., 0., 0.], [0., 0., 0., 0.], [0., 0., 0., 0.]]])
現在修改部分值:
>>> n[:,0:2,1:3]=1
結果為
>>> n tensor([[[0., 1., 1., 0.], [0., 1., 1., 0.], [0., 0., 0., 0.]], [[0., 1., 1., 0.], [0., 1., 1., 0.], [0., 0., 0., 0.]], [[0., 1., 1., 0.], [0., 1., 1., 0.], [0., 0., 0., 0.]]])
可以看到利用切片的思想可以修改tensor中的部分值。