序列傅里叶变换的性质|时移特性

证明时移不改变幅值只改变相位。(该结论直接证明了音效算法中延时的作用)

matlab仿真

Matlab 复制代码
% 时移特性验证(理论相位与实际相位对比)
clc; clear; close all;

%% 参数设置
N = 64;                 % 信号长度(FFT点数)
n = 0:N-1;              % 时间序列
n0 = 10;                % 时移量
omega = 2*pi*(0:N-1)/N; % 频率轴

%% 原始信号:正弦波加噪声作为示例
x = cos(2*pi*0.1*n) + 0.5*sin(2*pi*0.3*n); % 原始信号
x_shifted = circshift(x, [0, n0]);         % 循环时移后的信号

%% 计算傅里叶变换
X = fft(x, N);              % 原始信号的FFT
X_shifted = fft(x_shifted); % 时移后信号的FFT

%% 幅值和相位计算
magnitude_X = abs(X);                      % 原始信号幅值
magnitude_X_shifted = abs(X_shifted);      % 时移后信号幅值
phase_X = angle(X);                        % 原始信号相位
phase_X_shifted = angle(X_shifted);        % 时移后信号相位

%% 理论相位偏移
phase_theory = -omega * n0;                % 理论线性相位偏移

%% 实际相位差计算并归一化到 [-pi, pi]
phase_diff_actual = phase_X_shifted - phase_X; % 实际相位差
phase_diff_actual = mod(phase_diff_actual + pi, 2*pi) - pi;

% 理论相位偏移归一化
phase_theory = mod(phase_theory + pi, 2*pi) - pi;

%% 绘图结果
figure;

% 幅值比较
subplot(3,1,1);
plot(omega, magnitude_X, 'b', 'LineWidth', 1.5); hold on;
plot(omega, magnitude_X_shifted, 'r--', 'LineWidth', 1.5);
title('时移前后信号的幅值');
xlabel('频率 \omega (rad/sample)');
ylabel('幅值');
legend('原始信号', '时移后信号');
grid on;

% 相位比较
subplot(3,1,2);
plot(omega, phase_X, 'b', 'LineWidth', 1.5); hold on;
plot(omega, phase_X_shifted, 'r--', 'LineWidth', 1.5);
title('时移前后信号的相位');
xlabel('频率 \omega (rad/sample)');
ylabel('相位 (rad)');
legend('原始信号相位', '时移后信号相位');
grid on;

% 理论与实际相位差比较
subplot(3,1,3);
plot(omega, phase_theory, 'k:', 'LineWidth', 1.5); hold on;
plot(omega, phase_diff_actual, 'r-', 'LineWidth', 1.5);
title('理论与实际相位差');
xlabel('频率 \omega (rad/sample)');
ylabel('相位差 (rad)');
legend('理论相位差', '实际相位差');
grid on;

%% 控制台输出结果
disp('频率、理论相位差与实际相位差比较:');
fprintf('%8s %15s %20s\n', '频率', '理论相位差(rad)', '实际相位差(rad)');
for k = 1:N
    fprintf('%8.3f %15.4f %20.4f\n', omega(k), phase_theory(k), phase_diff_actual(k));
end

仿真结果

结论:时移不改变幅值只改变相位

相关推荐
山河君2 天前
webrtc之语音活动上——VAD能量检测原理以及源码详解
算法·音视频·webrtc·信号处理
falomsc2 天前
泊松求和公式推导
数学·数字信号处理·信号与系统·泊松求和
迎风打盹儿2 天前
均匀圆形阵抗干扰MATLAB仿真实录与特点解读
matlab·信号处理·抗干扰·均匀圆阵·波束合成
Ro Jace3 天前
科研笔记:数学建模启发的课题研究方法
数学建模·信号处理
T.i.s4 天前
毫米波雷达信号处理步骤顺序
信号处理·毫米波雷达
huangyuchi.5 天前
【Linux系统】万字解析,进程间的信号
linux·服务器·信号处理·信号产生·linux信号·信号保存·操作系统如何运行
小森77676 天前
几种特殊的数字滤波器---原理及设计
数字信号处理·低通滤波器·滤波器
半桔6 天前
【Linux手册】Unix/Linux 信号:原理、触发与响应机制实战
linux·运维·unix·信号处理
WSSWWWSSW10 天前
SciPy科学计算与应用:SciPy信号处理入门-从理论到实践
信号处理·scipy
FPGA_ADDA10 天前
基于复旦微ZYNQ7015+VU3P 的双FMC 基带信号处理平台(国产率100%)
fpga开发·信号处理·全国产·vu3p·adda射频采集