首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

hilbert变换的实现原理

hilbert变换的实现原理

hilbert的过程可以理论上解释如下
step 1:  x(n)--->X(k)    FFT计算;
step 2:
X(k) 正频率部分全部旋转-90度,等效于multiplied by -j;
X(k) 负频率部分全部旋转90度,等效于multiplied by j;   ------ideal hilbert 变换的定义;我觉得这里的0频率其实没有单独处理,有点问题;
最终相当于 Y(k)=X(k)*H(k), H(k)就是hilbert transform的频率相应;

step 3: Y(k)----y(n),   IFFT计算,原理上就是x(n)的hilbert 变换;

至于step 4, real 操作,是因为FFT计算或者你使用的计算系统平台的计算精度所致,
例如cos(wo*t)信号作FFT计算,理论上你得到的FFT应该是一个实数vector(虚部都为0),但实际上你很可能得到仍然是个复数,只是虚部都是很小的数而已,例如1e-16数量级,比如通常matlab的设置环境计算就是如此;
返回列表