matlab中的hamming窗调用:

>> hamming(5)
ans =0.08000.54001.00000.54000.0800

原理: hammin 窗的公式:

a0 = 0.54时,即为hamming窗;
a0 = 0.5 时,即为hanning窗

故其对应的 c/c++ 代码为:

//hamming窗 : a = 0.54;   hann窗 : a = 0.5
void hamming(float* win, int len)
{float a = 0.54; // 0.504是hamming   0.5是hannfor (size_t i = 0; i < len; i++){win[i] = a - (1.0f - a) * cos(2 * PI * i / (len - 1));}
}

原理介绍:


当 a0=0.53836 ,称作 Hamming窗;当 a0=0.5 则叫作 Hann窗。

  • Hann窗又称升余弦窗。Hann窗可以看作是3个矩形时间窗的频谱之和,或者说是 3个 sinc(t) 型函数之和,而括号中的两项相对于第一个谱窗向左、右各移动了π/T,从而使旁瓣互相抵消,消去高频干扰和漏能。
    从减小泄漏观点出发,Hann窗优于矩形窗。但Hann窗主瓣加宽,相当于分析带宽加宽,频率分辨力下降。

  • 如果我们将a0设为接近 0.53836 的数值,或是更精确来说是 25/46,便会得到Hamming窗,而设定这个数值的用意,是在频率为 5π/(N − 1) 处产生零交会处(zero-crossing),使原先Hann窗的第一个旁瓣(sidelobe)可以被大幅消除,产生只有Hann窗 1/5 高度的旁瓣。

  • 一般来说,为了减少运算量,可以把公式精简为:

本文参考: (如有侵权,请联系作者)

  1. 什么是汉明窗?加Hanmming窗的作用?:https://www.cnblogs.com/lxy2017/p/4049124.html
  2. matlab矩形窗代码_Hamming(汉明)窗的原理介绍及实例解析:https://blog.csdn.net/weixin_36260304/article/details/113489274

matlab中hamming窗的 c/c++ 版本的实现相关推荐

  1. MATLAB用hamming窗和blackman窗来设FIR滤波器

    %上面由单一的一维窗函数设计滤波器. %这里示例来说明两个一维窗函数的情况. [f1,f2] = freqspace(21,'meshgrid'); Hd = ones(21); r = sqrt(f ...

  2. matlab excel导入矩阵,如何将excel中数据导入到matlab中!Excel导入matlab生成矩阵

    如何将excel中数据导入matlab并存入数组中 使用Matlab中的Excel Link就可以了. 如果使用Excel 2003版本,操作如下: 1 打开Excel. 2 在菜单栏中选择→加载项→ ...

  3. matlab不支持复数输入,高版本MATLAB中medfilt1函数不支持复数问题

    medfilt1函数功能为一维中值滤波,最近在MATLAB R2018b中使用时,发现该函数已经不能支持直接输入复数进行滤波了,如下图在帮助文档中也有说明 1.png 在网上查询了好久,不知道为啥没有 ...

  4. matlab中如何加窗,matlab时域加窗

    正弦信号处理加窗_信息与通信_工程科技_专业资料.正弦信号线性叠加混噪加窗处理 fft变换 作业二 1.用 MATLAB 产生三个频率成分信号, 进行线性叠加, 再加上白...... hamming窗 ...

  5. 三角窗 matlab,【matlab】矩形窗/三角窗/hanning窗/hamming窗/blackman窗的頻率響應圖

    %{--------------------------------------------------------------------------- File:Matlab的窗函數,矩形窗 功能 ...

  6. 【matlab】矩形窗/三角窗/hanning窗/hamming窗/blackman窗的频率响应图

    %{ ---------------------------------------------------------------------------  File:Matlab的窗函数,矩形窗 ...

  7. hanning窗?hamming窗?如何理解语音信号处理中时间窗的作用

    参考:如何理解FFT中时间窗与RBW的关系 - 知乎 - 如何理解FFT中时间窗与RBW的关系 hanmming窗和hamming窗的作用_西檬饭-CSDN博客_hamming - hanning窗和 ...

  8. MATLAB中更改plot图窗大小

    MATLAB中plot图窗更改大小 调用语句: set (gcf,'Position', [x y a b]) %大小设置

  9. matlab三角窗函数,【matlab】矩形窗/三角窗/hanning窗/hamming窗/blackman窗的频率响应图...

    %{ --------------------------------------------------------------------------- File:Matlab的窗函数,矩形窗 功 ...

最新文章

  1. JVM中可生成的最大Thread数量
  2. python commands模块_python commands模块在python3.x被subprocess取代
  3. 深度学习将会变革NLP中的中文分词——TODO 待好好细看
  4. iOS 6编程-使用Photo Library(照片库)和相机
  5. 农民约翰是一个惊人的会计_我的朋友约翰在CSS Grid中犯了一个错误。 不要像约翰-这样做。
  6. 第八节:Task的各类TaskTResult返回值以及通用线程的异常处理方案
  7. github 如何设置项目的语言显示
  8. 教你精确计算 I2C 上拉电阻阻值
  9. 《大数据》2015年第2期“专题”——我国大数据交易的主要问题及建议
  10. [Git]4.1 分支与合并
  11. c语言上机作业题及答案,华为C语言上机试题及答案
  12. AD原理图库和PCB封装库下载
  13. [现代控制理论]6_稳定性_李雅普诺夫_Lyapunov
  14. PS cc 2019自由变换默认等比例缩放操作问题的解决方法
  15. 林志颖在微博展示iPhone 5
  16. bat 批量修改文件名后缀
  17. lol8月7号服务器维护,LOL8月7日更新了什么内容 8.15新版本更新维护公告
  18. 梅科尔工作室-李庆浩 深度学习 KNN算法与SVM算法
  19. Webpack打包css文件-css-loader+style-loader
  20. 电脑蓝屏,睿频导致CPU温度过高解决方法

热门文章

  1. 招商银行信用卡推荐链接
  2. dns随笔(部分转载)
  3. error in ./node_modules/@lit/reactive-element/decorators/state.jsModule parse failed: Unexpected
  4. 将CSDN中文章同步到微信公众号
  5. Star CCM+ :迎浪小船 DFBI
  6. 练习4-11 统计素数并求和(素数的函数)
  7. 反函数的导数——arcsinx的导数求导证明
  8. “二码合一”健康码和行程码一次出示即可
  9. 请使用“与 或 非” 逻辑符号实现“同或”、“异或”逻辑运算,简述实现方案并给出示意电路图。‏
  10. Flink State 深度讲解