Short-Time Fourier Transform along the last axis of the input.
tf.keras.ops.stft(
x,
sequence_length,
sequence_stride,
fft_length,
window='hann',
center=True
)
The STFT computes the Fourier transform of short overlapping windows of the
input. This giving frequency components of the signal as they change over
time.
Args |
x
|
Input tensor.
|
sequence_length
|
An integer representing the sequence length.
|
sequence_stride
|
An integer representing the sequence hop size.
|
fft_length
|
An integer representing the size of the FFT to apply. If not
specified, uses the smallest power of 2 enclosing sequence_length .
|
window
|
A string, a tensor of the window or None . If window is a
string, available values are "hann" and "hamming" . If window
is a tensor, it will be used directly as the window and its length
must be sequence_length . If window is None , no windowing is
used. Defaults to "hann" .
|
center
|
Whether to pad x on both sides so that the t-th sequence is
centered at time t * sequence_stride . Otherwise, the t-th sequence
begins at time t * sequence_stride . Defaults to True .
|
Returns |
A tuple containing two tensors - the real and imaginary parts of the
STFT output.
|
Example:
x = keras.ops.convert_to_tensor([0.0, 1.0, 2.0, 3.0, 4.0])
stft(x, 3, 2, 3)
(array([[0.75, -0.375],
[3.75, -1.875],
[5.25, -2.625]]), array([[0.0, 0.64951905],
[0.0, 0.64951905],
[0.0, -0.64951905]]))