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. php备份mysql 数据库

    1.新建php文件 <?phpheader('Content-Type:text/html;charset=utf8'); ini_set("max_execution_time&qu ...

  2. JVM-对象的实例化,内存布局与访问定位

    1.对象的实例化 提到对象的实例化,我们可能会想到几个问题.对象在JVM中是怎么存储的?对象里面有什么?接下来,我们就来探讨一下对象的实例化以及回答一下这两个问题. 首先我们用图例来说明对象的实例化: ...

  3. JavaScript数组 几个常用方法

    前言 数组方法有太多了,本文记录一些本人容易记错的一些数组方法,用于巩固及复习. 后续会慢慢的将其他数组方法添加进来. 善用数组方法可以使数据处理变的优雅且简单. 那下面让我们开始吧: filter( ...

  4. 运行WampServer提示计算机中丢失 msvcr110.dll

    ​ 在第一次运行WampServer的时候,出现"无法启动此程序,因为计算机中丢失 MSVCR110.dll.尝试重新安装该程序以解决此问题. ​ 在浏览器的地址栏里输入 http://ww ...

  5. CF536D Tavas in Kansas(博弈论+dp)

    貌似洛谷的题面是没有翻译的 QWQ 大致题面是这个样子,但是可能根据题目本身有不同的地方 完全懵逼的一个题(果然博弈论就是不一样) 首先,我们考虑把题目转化成一个可做的模型. 我们分别从\(s\)和\ ...

  6. PAT (Basic Level) Practice (中文)1017 A除以B (20分)

    1017 A除以B (20分) 本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数.你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立. 输入格式: 输入在一 ...

  7. .Net微信服务商平台ApiV3接口

    最近做个对接微信服务商平台的小程序项目,大概要实现的流程是:a)特约商户进件 > b)生成带参数的小程序码 > c)小程序支付 > d)分账,记录一下,希望能对需要的朋友有所帮助 开 ...

  8. 初次认识指针:C语言*p、p以及&p的区别,*p和**p的区别?

    https://blog.csdn.net/weixin_43115440/article/details/93475460 先要理解地址和数据,你可以想象有很多盒子,每个盒子有对应的号码,那个号码叫 ...

  9. 写了10000条Airtest截图脚本总结出来的截图经验,赶紧收藏!

    前言 今天想先给大家分享1个小白用户的Airtest从入门到放弃的故事: 小A是一个自动化的小白,在逛测试论坛的时候,偶然间发现了Airtest这个基于图像识别的UI自动化框架. 出于好奇,小A试用了 ...

  10. Java:并发笔记-05

    Java:并发笔记-05 说明:这是看了 bilibili 上 黑马程序员 的课程 java并发编程 后做的笔记 4. 共享模型之内存 本章内容 上一章讲解的 Monitor 主要关注的是访问共享变量 ...