📜  Tensorflow.js tf.spectral.irfft ()函数(1)

📅  最后修改于: 2023-12-03 15:20:35.569000             🧑  作者: Mango

TensorFlow.js tf.spectral.irfft()函数介绍

简介

在进行信号处理中,傅里叶变换是一个重要的数学工具。TensorFlow.js提供了很多傅里叶变换相关的函数,如tf.spectral.fft()、tf.spectral.ifft()、tf.spectral.rfft()、tf.spectral.irfft()等。tf.spectral.irfft()函数用于高效地计算N点实值序列的逆快速傅里叶变换(Real-valued inverse fast Fourier transform, R-IFFT)。

函数原型
tf.spectral.irfft(input: tf.Tensor | TypedArray | number[], fftLength?: number, fftLength2?: number,
                  inverse?: boolean, real?: boolean) => tf.Tensor | Float32Array;
参数说明
  • input: 输入张量。 shape为 [batch, fftLength] 的实值张量(其中batch可以是任意,fftLength必须是偶数)。
  • fftLength: 一个大于等于input最后一个维度大小的偶数,用于fft的pad。默认为input的最后一维大小。
  • fftLength2: fftLength的一半。默认为fftLength/2。
  • inverse: 是否计算逆变换,默认为true。
  • real: 是否为实值信号,默认为true。
返回值说明

返回逆傅里叶变换后的实值张量。

示例
const tf = require('@tensorflow/tfjs');
require('@tensorflow/tfjs-node');

const input = tf.tensor2d([[5, 3], [1, 2]]);
const output = tf.spectral.irfft(input);
output.print();

输出结果:

Tensor
  [[ 2.75, 2.25],
   [-0.25, -0.75]]
参考文献
  1. https://js.tensorflow.org/api/latest/#spectral.irfft