pytorch 如何使用torch.fft.fft2输出与troch.fft相同的结果?

svdrlsy4  于 2022-11-23  发布在  其他
关注(0)|答案(1)|浏览(716)

在pytorch 1.1.0的文档中,torch.fft返回的描述是
“将真实的部和虚部作为同一形状输入的Tensor返回”
在pytorch1.8.1中,torch.fft由torch.fft.fft2替换,并且torch.fft.fft2以复数形式输出结果
对于相同的数据,torch.fft的输出为
Tensor([32779.2891])Tensor([67.1836])Tensor([11.9802])Tensor([-47.5729])Tensor([-101.7718])Tensor([-5.7989])Tensor([17.5259])Tensor([41.0830])Tensor([-5.1960])Tensor([42.2860])
torch.fft.fft2的输出结果为
Tensor(32779.2891+0.j)Tensor(36.2154-25.2860j)Tensor(22.9704-39.8544j)Tensor(-62.9149+6.8637j)TensorTensor(-3.2740 +52.0396j)Tensor(-32.4686+46.9949j)Tensor(-50.1910-30.1725j)Tensor(-8.8877+19.0709j)Tensor(39.9689 -32.3084j)
输入是input = numpy.random.rand(256,256)生成的256 x256数据,上述结果是使用该数据(256 x256)作为输入生成的数据的一部分。使用该数据(256 x256),Matlab和torch.fft.fft2输出相同的结果
fft如何将结果的实部和虚部存储在形状相同的Tensor中?
如何使用torch.fft.fft2输出与torch.fft相同的结果?

b09cbbtk

b09cbbtk1#

我在这方面挣扎了几天,然后我尝试了所有的参数在torch.fft.fft2,最后我发现设置norm='ortho'使同样的结果与旧的pytorchtorch.fft。希望这将有助于你。

相关问题