频域分辨率与DFT,DCT,MDCT理解
搞了这么久音频算法,有些细节还没有很清楚。
比如DFT和DCT有哪些区别,DFT系数为什么会是对称的,同样帧长的数据,各自的频域分辨率是多少?
今天决定搞清楚这些问题,
首先DFT的系数对称(2N点的数据做DFT,变换系数关于N点位置对称)是因为DFT的的变换基是对0~2π分析的,因为0到π和π到2π对称所以会对称。可以参见DFT公式

而DCT的系数就不会对称(2N点的数据做DCT,变换系数不对称)是因为DCT的变换基是对0~π分析的,故不会存在变换关系,可参加DCT变换。(以DCT2型为例子)

DCT和DFT比较

再引用wikipedia上对DCT的解释

注意里面的解释:DCT相当于一个长度是他两倍的实偶函数DFT。那么下面的问题来了,同样长度N的信号做DCT和DFT,各自的频域分辨率是多少。
注意,
上面引用给出另外两个引申,
第一:DST相当于一个长度是它两倍的实奇函数DFT。
第二:MDCT相当于对交叠的数据进行DCT。
第二类问题:
对采样率为f hz的信号进行长度为2N的DFT分析它的频域分辨率是多少,第2N个信号表示多少hz:
答案:分辨率是f/2N。得到的第2N个频域系数,他代表的2π,也就是f Hz的信号。
对采样率为f hz的信号进行长度为2N的MDCT分析它的频域分辨率是多少,第N个信号表示多少hz(注意MDCT的输入是输出的2倍):
答案:分辨是是f/2N。得到的第N个频域系数,他代表的π,也就是f/2 Hz的信号。
对采样率为f hz的信号进行长度为2N的DCT分析它的频域分辨率是多少,,第2N个信号表示多少hz:
答案:分辨是是f/2N。得到的第2N个频域系数,他代表的π,也就是f/2 Hz的信号。
蓝色:表示注意。
红色:表示不确定。
红色的部分我不确认我分析的结果,希望有人能给些帮助。
本文不含MDCT,MLT和DCT的详细区别,编码特性等等,尤其是针对MLT和MDCT建议查阅Malvar的论文。有时间另将分析。
频域分辨率与DFT,DCT,MDCT理解的更多相关文章
- 卷积、矩阵乘积、高斯模糊滤波(降噪)、空域计算(2D卷积计算)、频域计算(FFT)的理解
矩阵乘积:对应行列对应元素相乘的和组成新的矩阵 两个矩阵的乘法仅当第一个矩阵A的列数和另一个矩阵B的行数相等时才能定义.如A是m×n矩阵和B是n×p矩阵,它们的乘积C是一个m×p矩阵 并将此乘积记为: ...
- 【转】傅里叶变换 拉普拉斯变 z变换 DFT DCT意义
傅里叶变换在物理学.数论.组合数学.信号处理.概率论.统计学.密码学.声学.光学.海洋学.结构动力学等领域都有着广泛的应用(例如在信号处理中,傅里叶变换的典型用途是将信号分解成幅值分量和频率分量). ...
- 对于DFT频谱泄漏问题的研究
问题简介: 对于频率为fs的正弦序列,它的频谱应该只是在fs处有离散谱.但是,在实际利用DFT求它的频谱时,对时域做了截断,结果使信号的频谱不只是在fs处有离散谱,而是在以fs为中心的频带范围内都有谱 ...
- Programming | 获取图像频域并分解为高低频
1. DCT变换 参考:https://stackoverflow.com/questions/22322427/decomposing-an-image-into-two-frequency-com ...
- 移动分辨率和rpx
从一张设计图的实现说起,为什么模拟器下ip6的分辨率是375而设计图一般给750? 看上面的这张图,首先屏幕尺寸就是实际的物理尺寸,重点是分辨率pt和分辨率px,要回答这个问题,就要明白pt与px.那 ...
- 算法系列:FFT 001
转载自http://blog.csdn.net/orbit/article/details/17210461 2012年9月的时候,一个南京的大学生从电视台播放的一段记者采访360总裁周鸿祎的视频中破 ...
- Matlab_spectrogram_短时傅里叶分析_实现与讨论
在语音与音乐处理过程中,常用到短时傅里叶变换(Short Time Fourier Transformation, STFT).在一些学习路径中,STFT也是学习小波之前的预备知识.本文简单实现了 M ...
- python做傅里叶变换
傅里叶变换(fft) 法国科学家傅里叶提出,任何一条周期曲线,无论多么跳跃或不规则,都能表示成一组光滑正弦曲线叠加之和.傅里叶变换即是把一条不规则的曲线拆解成一组光滑正弦曲线的过程. 傅里叶变换的目的 ...
- IIR滤波器和FIR滤波器的区别与联系zz
-------------------------------------------------------------------------------------------------- ...
随机推荐
- Robot Framework-Windows版本安装
Robot Framework-Mac版本安装 Robot Framework-Windows版本安装 Robot Framework-工具简介及入门使用 Robot Framework-Databa ...
- (Gym 100685G) Gadget Hackwrench(LCA在线ST)
Gadget Hackwrench time limit per test 2 seconds memory limit per test 64 megabytes input standard in ...
- 一些常用的Bootstrap模板资源站
2013-11-13 23:28:09 超级Bootstrap模板库:http://www.wrapbootstrap.com/ 免费的HTML5 响应式网页模板:http://html5up.n ...
- mac os安装基本的install环境,命令行安装软件
以下摘自:homebrew官网. 在 OS X 中找不到您想要的软件?Homebrew 给你所需. 首先需要安装一个很多人都在用的包:homebrew 安装 Homebrew 开 Terminal, ...
- 个性二维码开源专题<替换元素点>
基础方法:ChangeFillShape //修改填充形状 ChangeFillShape(...) // 摘要: // 修改填充形状 // // 参数: // g: // 图形画板 // // Fo ...
- 尝试在mac上用dotnet cli运行asp.net core示例程序
自从知道微软用dotnet cli取代dnx之后,一直在等dotnet cli支持asp.net core... 昨天看到这篇新闻(ASP.NET Core 1.0 Hello World)后,才知道 ...
- Lambda应用设计模式
前言 在使用 Lambda 表达式时,我们常会碰到一些典型的应用场景,而从常用场景中抽取出来的应用方式可以描述为应用模式.这些模式可能不全是新的模式,有的参考自 JavaScript 的设计模式,但至 ...
- kali linux系列之启用vpn
kali linux系列之启用vpn 文/玄魂 默认情况下,kali linux的vpn选项是不可用的. 下面是安装openvpn的方法,同样的,可以安装其他类型的vpn. 打开终端输入命令: Apt ...
- 拟物设计和Angular的实现 - Material Design(持续更新)
Material Design是Google最新发布的跨平台统一视觉设计语言.直接翻译是物质设计,但是我更倾向于使用"拟物设计"更为准确. 据谷歌介绍,Material Desig ...
- [WinAPI] API 4 [注册][创建][消息][第一个框架类窗口]
首先注册了窗口类,然后创建了一个窗口,创建窗口时指定的窗口的属性和窗口消息的处理函数.函数消息的处理函数大多调用系统默认函数来处理. #include<windows.h> /*全局变量* ...