转自:http://www.cnblogs.com/lxy2017/p/4049124.html

1.什么是汉明窗?

语音信号一般在10ms到30ms之间,我们可以把它看成是平稳的。为了处理语音信号,我们要对语音信号进行加窗,也就是一次仅处理窗中的数据。因为实际的语音信号是很长的,我们不能也不必对非常长的数据进行一次性处理。明智的解决办法就是每次取一段数据,进行分析,然后再取下一段数据,再进行分析。

怎么仅取一段数据呢?一种方式就是构造一个函数。这个函数在某一区间有非零值,而在其余区间皆为0.汉明窗就是这样的一种函数。它主要部分的形状像sin(x)在0到pi区间的形状,而其余部分都是0.这样的函数乘上其他任何一个函数f,f只有一部分有非零值。

为什么汉明窗这样取呢?因为之后我们会对汉明窗中的数据进行FFT,它假设一个窗内的信号是代表一个周期的信号。(也就是说窗的左端和右端应该大致能连在一起)而通常一小段音频数据没有明显的周期性,加上汉明窗后,数据形状就有点周期的感觉了。

因为加上汉明窗,只有中间的数据体现出来了,两边的数据信息丢失了,所以等会移窗的时候,只会移1/3或1/2窗,这样被前一帧或二帧丢失的数据又重新得到了体现。

简单的说汉明窗就是个函数,它的形状像窗,所以类似的函数都叫做窗函数。

2.加Hanmming窗的作用

现在在看G.723.1,对语音编码刚入门,

发现在对信号进行LPC分析前,对信号乘以一个Hamming 窗,

典型的窗口大小是25ms,帧移是10ms。汉明窗函数为

W(n,α ) = (1 -α ) - α cos(2*PI*n/(N-1)),0≦n≦N-1

一般情况下,α取0.46 。

转自:https://ww2.mathworks.cn/help/signal/ref/hamming.html

用法:

hamming

Hamming window

collapse all in page

Syntax

w = hamming(L)

w = hamming(L,sflag)

Description

w = hamming(L)                returns an L-point symmetric Hamming window.

w = hamming(L,sflag)                returns a Hamming window using the window sampling specified by                     sflag.

Examples

Hamming Window

Create a 64-point Hamming window. Display the result using wvtool.

L = 64;

wvtool(hamming(L))

Input Arguments

L — Window length positive integer

Window length, specified as a positive integer.

Data Types:single | double

sflag — Window sampling 'symmetric' (default) | 'periodic'

Window sampling, specified as one of the following:

'symmetric' — Use this option when using                                    windows for filter design.

'periodic' — This option is useful for                                    spectral analysis because it enables a windowed signal to have                                    the perfect periodic extension implicit in the discrete Fourier                                    transform. When 'periodic' is specified,                                         hamming computes a window of length                                         L + 1 and returns the first                                         L points.

Output Arguments

w — Hamming window column vector

Hamming window, returned as a column vector.

Algorithms

The following equation generates the coefficients of a Hamming window:

w(n)=0.54−0.46cos(2πnN),0≤n≤N.

The window length L = N + 1.

References

[1] Oppenheim, Alan V., Ronald W. Schafer, and John R. Buck.                 Discrete-Time Signal Processing. Upper Saddle River, NJ:            Prentice Hall, 1999.

Extended Capabilities

C/C++ Code Generation Generate C and C++ code using MATLAB® Coder™.

Introduced before R2006a

matlab hamming 原理,Matlab中加汉明窗 ahmming 作用相关推荐

  1. matlab逆变器原理,MATLAB三相SPWM逆变器的调制建模和仿真设计

    摘要:对三相桥式逆变电路原理及其 SPWM 控制原理进行简单的分析,针对开环 SPWM 电压的不稳定提出一种电压闭环 SPWM 控制模型.在 Matlab/Simulink 软件环境中分别建立了三相 ...

  2. 低通采样定理 matlab,通信原理MATLAB验证低通抽样定理实验报告

    通信原理MATLAB验证低通抽样定理实验报告 p通信原理实验报告/pp一.实验名称/ppMATLAB验证低通采样定理/pp二.实验目的/pp1.掌握取样定理的工作原理./pp2.通过MATLAB编程实 ...

  3. matlab fminsearch 原理,Matlab利用fminsearch实现参数估计

    Matlab中用fminsearch实现参数估计发布:Arquine 9Jan 文章的主要思想来源于Matlab|Simulink仿真世界的一篇类似的文章.我这里把这个思想引入到我们的体系来,并以一个 ...

  4. matlab smooth原理,Matlab smooth函数原理

    由于项目上要用到平滑一维数组数据,参考Matlab  smooth函数转成c++代码 //x,g均为数组,具体内容略 plot(x,g);hold on,plot(x,smooth(g,50),'r' ...

  5. 含不等式的优化设计matlab,解析机械优化设计中MATLAB的应用

    解析机械优化设计中MATLAB的应用 摘要:MATLAB在机械优化设计中发挥着重要作用,首先对其优化工具做了简单介绍,然后阐述了其优化工具箱函数,最后结合实例对其实际应用进行了分析. 关键词机械化设计 ...

  6. matlab充分利用性能,Matlab高性能编程——代码优化和并行计算

    Jeremy Lin  @HQU Update: 2014/4/29 Matlab代码优化 Matlab是一种高级计算机语言,同时也是一个用于算法开发,数据可视化,数据分析和数值计算的交互式工作环境. ...

  7. matlab哈宁低通,Matlab实现电网谐波测量加窗插值算法.pdf

    收稿日期 2005 03 16 作者简介 张鸿博 1980 男 河南舞钢人 硕士生 第16卷第2期中原工学院学报Vol 16 No 2 2005年04月JOURNAL OF ZHONG YUAN IN ...

  8. 在matlab和python if中的旋转变换(四元数、欧拉角、旋转矩阵)等

    在matlab和python tf中的旋转变换(四元数.欧拉角.旋转矩阵等) 目录 1. 基本的认识 2. 变换矩阵 3. 欧拉角 4. 四元数 5. matlab中相互转换 6. python tf ...

  9. matlab在输电线路故障测距中应用,Matlab在输电线路故障测距中的应用.doc

    Matlab在输电线路故障测距中的应用 毕业设计(论文) 题目 Matlab在输电线路故障测距中的应用 二级学院 电子信息与自动化学院 专 业 电气工程及其自动化 班 级 110070401 学生姓名 ...

  10. 23. matlab并行计算原理以及parpool函数

     声明: 因电脑问题, 只做记录,以后尝试. 出处: Matlab并行运算 - wenyusuran的专栏 - CSDN博客 https://blog.csdn.net/wenyusuran/arti ...

最新文章

  1. 将一个Excel文件分隔成多个
  2. mysql双机数据热备份_如何设置MySql数据同步实现双机热备份
  3. python封装类在当前文件中使用_name_下调用不了_python提示这个是什么原因!
  4. student consulting system
  5. Git学习笔记:修改
  6. 黄海广博士的知乎高赞(1000+)文章分享
  7. 从源码角度看Android系统SystemServer进程启动过程
  8. 阿里云ACE共创空间——大数据方案体验1 日志服务
  9. 张景中:把数学变容易大有可为
  10. Python统计TXT词云
  11. Unreal Engine 4 编码规范
  12. bzoj 1552: [Cerc2007]robotic sort bzoj 3506: [Cqoi2014]排序机械臂(splay区间翻转)
  13. simotion基本功能手册_深入浅出西门子运动控制器:SIMOTION实用手册
  14. 每日简报 5月2日简报新鲜事 每天一分钟 了解新鲜事
  15. windows 下 tomcat 开机自启动
  16. HDU4699Editor
  17. python中 // 和 / 和 %
  18. Ubuntu系统查询本地IP
  19. 10个T的硬盘都装不下,这几个资源网站的优质资源真的超多
  20. 野火学习笔记(8) —— RCC —— 使用 HSE/HSI 配置时钟

热门文章

  1. esp8266教程:esp8266使用mqtt连接百度智能云
  2. 计算机d盘无法格式化,d盘无法格式化,教您解决D盘无法格式化的方法
  3. 项目启动时,出现了Consider defining a bean of type ‘xxx’ in your configuration 问题。
  4. Vmware虚拟机win10详细安装之典型安装
  5. win7,win8系统为什么灵格斯老与office,adobe等软件冲突,怎么解决
  6. vscode python第三方库自动补全_vscode python 第三方库的智能提示
  7. 【Web渗透测试】—Web漏洞
  8. WEB渗透测试思维导图
  9. 上海亚商投顾:三大指数小幅下跌 两市成交金额创年内新低
  10. keil5写c语言的步骤,keil5使用C51的详细步骤讲述