频域分辨率与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
-------------------------------------------------------------------------------------------------- ...
随机推荐
- 【转】Android studio 解决64K超出链接数限制问题
http://my.oschina.net/gabriel1215/blog/602608 目录[-] 使用MultiDex支持库 注意事项 结论 如果你是一个android开发者,你至少听说过的Da ...
- CSDN 分糖果算法的思路和求助
昨天晚上 在csdn上做了一道分糖果的题目,我自个测的是没有问题,但是提交答案后,老失败,提示 你的程序正常运行并输出了结果,但是答案错误你的程序输出结果与测试数据中的输出结果不符 我先把自个思路说一 ...
- WinServer2008 R2搭建TFS2013小结(无法连接Internet手动安装)
不定时更新参考文档: TFS安装与管理 为本地管理配置本机模式报表服务器 (SSRS) 手里有文档还是掉进各种坑,这里把坑总结一下,方面以后填坑. 安装指导文档中搭建TFS2013用了两台服务器,把S ...
- 创建链接服务器(dblink)
--创建链接服务器(dblink) exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','远程服务器名或ip地址' exec sp_addlinkedsrv ...
- MVP
引自: http://www.cnblogs.com/Leo_wl/archive/2013/05/03/3056299.html http://www.codeproject.com/Article ...
- SharePoint 基于 REST API使用简介
之前已经介绍了SP2010中支持CSOM的API进行远程访问SharePoint,但是CSOM的API仍然有一定的局限性,首先使用CSOM类库是基于.Net的,因此也将使用CSOM限制在了.Net平台 ...
- 安装 Dubbo 注册中心(Zookeeper-3.4.6)--单节点
1.建议使用dubbo-2.3.3以上版本的使用zookeeper注册中心客户端2.Zookeeper是Apache Hadoop的子项目,强度相对较好,建议生产环境使用该注册中心.3.Dubbo未对 ...
- struts2学习笔记之四:多配置文件支持和常用配置参数
struts2支持可以按照不同模块分类的方式拆分配置文件,支持多人分工合作,各自维护自己的配置文件,但是所有配置文件中包名和action的名称不能重复 struts2的配置文件方式有两种,stru ...
- APU平台DirectX 12性能测试:超级大惊喜!
APU平台DirectX 12性能测试:超级大惊喜! 转自:http://www.ithome.com/html/digi/129840.htm [size=1pc]微软将会在接下来的GDC 2015 ...
- iOS-网络请求-AFN升级至AFN3.0
AFNetworking是一款在OS X和iOS下都令人喜爱的网络库.为了迎合iOS新版本的升级, AFNetworking在3.0版本中删除了基于 NSURLConnection API的所有支持. ...