haha0990 2021-09-17 21:14 采纳率: 0%
浏览 47

想问一下语音信号分帧加窗后做fft时怎么设置频率分辨率

想问一下语音信号分帧加窗后做fft时怎么设置频率分辨率

%     df = 2;
%     Nfft = fs/df+1   为什么我设置了频率分辨率后,做出来的频谱就不对了?是不是和窗函数有关系
    Nfft = fs;           
    f = (0:Nfft-1)*fs/Nfft;  
    win = hanning(fs);         
    inc = floor(0.3333 * fs);     
    frame = enframe(sig, win, inc);   
    fn = (length(sig) - fs) / inc + 1;
    L = floor(fn);
    y = 0;
    a = 0;
    for j = 1 : L                           
        frame1(j, :) = 2 * frame(j, :);     %这里为什么要乘2a = (abs(fft(frame1(j, :), Nfft)) / (Nfft / 2)) .^ 2 / 2;
        y = y + a;
    end
    y = y / L;                               
    y(1) = y(1) / 2;              
    Ly = 10 * log10(y / 4e-10);

  • 写回答

1条回答 默认 最新

  • CSDN专家-Matlab_Fans 2021-09-21 07:39
    关注

    频率分辨率应该是由信号的采样率和采样点数来计算出来的,不需要人为选定或设置这个分辨率。

    评论

报告相同问题?

问题事件

  • 创建了问题 9月17日

悬赏问题

  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿