Pytorch 之修改Tensor部分值方式
一:背景引入
对于一张图片,怎样修改局部像素值?
二:利用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中的部分值。这样修改后,黑色图片上就会有白色的小洞洞,因为在tensor中,1代表是白色,RGB中的255。
以上这篇Pytorch 之修改Tensor部分值方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。