1.理解:

信号叠加时,不是都是线性关系(时域相互+ 频率相加);有的时候是两种信号成分相乘得到的,(时域卷积,频域相乘):比如很多齿轮啮合时振动信号调制现象,电机的轴向与径向的振动耦合时采集到的振动,声带的冲击(源信号)通过口腔(可以看成滤波器或者系统)发出的声音等等。

通过倒谱可以解析

步骤

  1. sigData = x* y卷积   :sigData是采集到的时域信号,x,y是我们想要分离的信号成分。

  2. FFT(sigData) = FFT(X) FFT(Y) 频域相乘

  3. log (FFT(sigData)) = log(FFT(X)) + log(FFT(Y)  本质上是将信号同态化,通过 log的性质 把 乘关系的信号 变成 加的关系。比如下图中第一幅图。这时,信号中的频率是第二幅图与第三幅图的线性叠加。下一步我们通过再进行一次FFT(ifft其实本质就是FFT),得到低频部分与高频部分

(图来源见水印)

  4. ifft (log (FFT(sigData)) ) 相当于 将第3步骤中得到的频率曲线,当成一个初始信号,再进行一次FFT变换,把这个频率曲线中的高频波动(上面第[3]个子图)和低频趋势(或者叫频率包络)(上面第[2]个子图)分离,以频率的形式解析出来。

    IFFT 本质还是FFT,应为FFT与iFFT的结果 , 互为共轭,相差N倍

2.应用:

  1. 语音信号中 获取声音信道的方法,MFCC,Mel 频率倒谱系数, 不过里面用的是 DCT, 离散余弦变换(类似FFT)。

  2. 变速箱存在故障或振动较大时,采集到的是很多个齿轮与齿轮啮合、存在调制的信号,通过倒谱可以再混杂的信号中找出相关信号频率,进一步找出导致振动大的相关齿轮。

附:

关于 FFT 与 i-FFT的 Matlab 计算结果

x = [1 2 3 3 2 1 ]
 
 
x_f = fft(x)
x_f = 1×6 complex
12.0000 + 0.0000i   -3.0000 - 1.7321i   0.0000 + 0.0000i   0.0000 + 0.0000i   0.0000 + 0.0000i   -3.0000 + 1.7321i
 
x_if = ifft(x)*6
x_if = 1×6 complex
12.0000 + 0.0000i   -3.0000 + 1.7321i   0.0000 + 0.0000i   0.0000 + 0.0000i   0.0000 + 0.0000i   -3.0000 - 1.7321i
 
plot(x_f )
plot(x_if )

倒谱Cepstrum本质的理解的更多相关文章

  1. Java线程中断的本质深入理解(转)

    一.Java中断的现象 首先,看看Thread类里的几个方法: public static boolean interrupted 测试当前线程是否已经中断.线程的中断状态 由该方法清除.换句话说,如 ...

  2. Java线程中断的本质深入理解

    Java的中断是一种协作机制.也就是说调用线程对象的interrupt方法并不一定就中断了正在运行的线程,它只是要求线程自己在合适的时机中断自己. 一.Java中断的现象 首先,看看Thread类里的 ...

  3. JSP本质的理解(浏览器调试,response里面的文本都是out.write写入网络流)

    一.请求转发到一个Servlet 请求重定向后,url显示的是/abc1234这个url 这个jsp页面就是一个servlet[通过our把文本输入的网络流里面去了]

  4. 6. 从Encoder-Decoder(Seq2Seq)理解Attention的本质

    1. 语言模型 2. Attention Is All You Need(Transformer)算法原理解析 3. ELMo算法原理解析 4. OpenAI GPT算法原理解析 5. BERT算法原 ...

  5. 如何从编程的本质理解JVM内存模型

    如何从编程的本质理解JVM内存模型 一般聊JVM内存模型都是把图截出来,然后对着图,解释上面堆.栈之类的概念.这篇将分享下,如何从编程的本质上理解,JVM内存模型是什么样子,为什么是这个样子,不再死记 ...

  6. 语音频谱语音信号处理之(四)梅尔频率倒谱系数(MFCC)

    今天一直在查找语音频谱之类的问题,今天正好有机会和大家共享一下. 语音信号处置之(四)梅尔频率倒谱系数(MFCC) zouxy09@qq.com http://blog.csdn.net/zouxy0 ...

  7. 梅尔频率倒谱系数(MFCC) 学习笔记

    最近学习音乐自动标注的过程中,看到了有关使用MFCC提取音频特征的内容,特地在网上找到资料,学习了一下相关内容.此笔记大部分内容摘自博文 http://blog.csdn.net/zouxy09/ar ...

  8. 【VS开发】【智能语音处理】语音信号处理之(四)梅尔频率倒谱系数(MFCC)

    语音信号处理之(四)梅尔频率倒谱系数(MFCC) zouxy09@qq.com http://blog.csdn.net/zouxy09 这学期有<语音信号处理>这门课,快考试了,所以也要 ...

  9. 全面理解面向对象的 JavaScript (share)

     以下分享自:  http://www.ibm.com/developerworks/cn/web/1304_zengyz_jsoo/   简介: JavaScript 函数式脚本语言特性以及其看似随 ...

随机推荐

  1. webpack learn4-1配置css单独分离打包

    1 先安装extract-text-webpack-plugin npm i extract-text-webpack-plugin 2 配置webpack.config.js

  2. Django3.2边学边记—Adimn站点管理

    准备工作 创建管理员的用户名和密码: python manage.py createsuperuser 根据提示创建用户名 密码 在admin.py中注册模型类 from django.contrib ...

  3. session与cookie的联系与区别

    一.Session与Cookie介绍 这些都是基础知识,不过有必要做深入了解.先简单介绍一下. 二者的定义: 当你在浏览网站的时候,WEB 服务器会先送一小小资料放在你的计算机上,Cookie 会帮你 ...

  4. centos7 kubeadm 搭建k8s

    Centos 7 搭建 kubernetes 集群环境 一.介绍 本次是centos7 搭建kubernetes1.15.9 通过kubeadm 的形式搭建 二.准备 > centos 7 (镜 ...

  5. 生动直观的Gif图告诉你如何安装Python安装第3方库,在线安装离线安装全都搞定

    前言 学Python的小伙伴都知道,Python学习过程中需要装不少的第3方的库,今天就和大家一起分享下第3方库的安装方法 在线安装(推荐安装式式) 点开Pycharm--file--Project- ...

  6. Matlab 速记

    链接:https://zhuanlan.zhihu.com/p/370259237 % 1.进度提醒 f = waitbar(0,'1','Name','进度'); set(f,'color','w' ...

  7. C#实例:datagridview单元格合并

    这是替C#微信交流群群友做的一个小实例,目的就是在datagridview选择对应行以后,点击button后获取对应行的ip,并执行相应的操作,其实我觉得这样的话button没必要非放置到datagr ...

  8. 题解 CF736D Permutations

    link Description 现在,你有一个二分图,点数为 \(2n\). 已知这个二分图的完备匹配的个数是奇数. 现在你要知道,删除每条边后,完备匹配个数是奇数还是偶数. \(1\le n\le ...

  9. python函数参数类型:位置参数、默认参数、动态参数、关键字参数

    1.位置参数:调用函数的时候传的参数,参数默认按顺序赋值,如果是指定那个参数赋值,不关注顺序.指定参数a=1,b=2 就在函数体内a=1,b=2 2.默认参数:在定义函数的时候,给某个参数设置默认值 ...

  10. 【错误分析】NX error status: 32

    在进行NX 制图里面的表格注释合并单元格时,总是报错NX error status: 32,找了很久都不知道问题所在. 报错提示如下: NXOpen.NXException: NX error sta ...