更新:本网页为纯图片版,是由 Word 文档转图片后直接上传的。目前我已更新一个 Markdown 文字版的,网页浏览体验会好一些。因为一篇博客的字符数量有限制,所以分开了三篇。

  • DFT:https://blog.csdn.net/qq_33552519/article/details/124917126
  • DCT:https://blog.csdn.net/qq_33552519/article/details/124917473
  • DST:https://blog.csdn.net/qq_33552519/article/details/124962042

目前主流视频编解码算法都要使用到离散余弦变换(Discrete Cosine Transform)以及离散正弦变换(Discrete Sine Transform)对预测残差进行空域/频域的转换,通过牺牲部分高频的信息来达到压缩的目的。总的来说,DCT和DST都各自有八种形式,网上主要的资料都是介绍DCT-II,也就是第二类DCT,至于其他类型的资料少之又少,更不用说关于DST的介绍。过去,DCT-II由于其自身确实具有的优越性,在早期的编解码算法如H.264中大量使用,但后来人们发现其他的DCT和DST在某些情况下表现或许更加出色,例如,最新的H.266标准也将DCT-VIII以及DST-VII加入到了候选变换类型中。因此,为了弄懂H.266为什么要使用这三种变换类型,我们有必要对DCT和DST的原理做深入的理解。

很多人可能并不清楚DCT和DST从何而来,也不知道为什么它们两者为什么会有那么多种形式。实际上,DCT和DST的推导完完全全来自于离散傅里叶变换(Discrete Fourier Transform),他们两者本质上是DFT的特殊形式,因此,如果弄懂了DFT,DCT和DST也就自然理解了。所以,文章开始着重分析了DFT的一些性质,实际上是为后面做必要的铺垫。不过,要弄懂DFT,还要从傅里叶级数以及傅里叶变换说起,但由于篇幅限制,这里就不说了,大家可以找一些信号与系统的书籍资料学习一下,其实文章的内容大部分在那本绿皮的《数字信号处理》里面都有。因为这个文档我是写在Word里的,要转成Markdown不太方便,所以就直接转成图片了,后面篇幅比较长,但其实弄懂了前面的DFT后面的都只是一些重复性的工作而已。公式较多,内容较广,所以有些文字上的错误或者理解上的偏差在所难免。

  • 离散傅里叶变换
  • 离散余弦变换
  • 离散正弦变换
  • 附录

离散傅里叶变换






离散余弦变换












离散正弦变换










附录




离散傅里叶变换DFT、离散余弦变换DCT、离散正弦变换DST,原理与公式推导相关推荐

  1. 傅里叶级数FS,连续时间傅里叶变换CTFT,离散时间傅里叶变换DTFT,离散傅里叶变换DFT,推导与联系(二)

    由于本文公式所占用的字符比较多,无法在一篇博客中完整发布,所以将其分为两篇博客.本篇主要介绍了离散傅里叶变换 DFT 的内容,以及相关的总结.对于前置内容,包括傅里叶级数 FS,连续时间傅里叶变换 C ...

  2. 傅里叶级数FS,连续时间傅里叶变换CTFT,离散时间傅里叶变换DTFT,离散傅里叶变换DFT,推导与联系(一)

    本文主要从傅里叶级数 FS,连续时间傅里叶变换 CTFT,离散时间傅里叶变换 DTFT,以及离散傅里叶变换 DFT 之间的区别与联系进行了比较详细的讨论,主要注重于公式形式上的推导,略去了相关的图像示 ...

  3. 傅里叶变换、离散傅里叶变换(DFT)、快速傅里叶变换(FFT)详解

    前置知识 以下内容参考<复变函数与积分变换>,如果对积分变换有所了解,完全可以跳过忽略 复数的三角表达式如下 Z=r(cosθ+isinθ)Z=r(cos\theta+isin\theta ...

  4. 【算法】离散傅里叶变换(DFT)

    真实的系统是会离散的,时变的.理想者将瞬时态看成时线性的系统,将时变系统分成了不同阶段.离散在围观层面是连续的,但从表层感受时,变化是迅猛的,可以忽略不计变化的过程,因而成为了离散. 一.离散系统 离 ...

  5. 第4章 Python 数字图像处理(DIP) - 频率域滤波4 - 单变量的离散傅里叶变换DFT

    目录标题 单变量的离散傅里叶变换 由取样后的函数的连续变换得到DFT 取样和频率间隔的关系 单变量的离散傅里叶变换 由取样后的函数的连续变换得到DFT 对原函数的变换取样后的业的发展的变换F~(μ)\ ...

  6. Matlab如何进行利用离散傅里叶变换DFT (快速傅里叶变换FFT)进行频谱分析

    文章目录 1. 定义 2. 变换和处理 3. 函数 4. 实例演示 例1:单频正弦信号(整数周期采样) 例2:单频正弦信号(非整数周期采样) 例3:含有直流分量的单频正弦信号 例4:正弦复合信号 例5 ...

  7. 离散傅里叶变换 (DFT)、快速傅里叶变换 (FFT)

    目录 离散傅里叶变换 (DFT) 离散傅里叶变换的基 离散傅里叶变换 快速傅里叶变换 (FFT) 卷积 线性时不变系统 傅里叶级数 参考文献 离散傅里叶变换 (DFT) 离散傅里叶变换的基 对于周期为 ...

  8. 离散傅里叶变换DFT与FFT,MATLAB的FFT函数使用(原创)——如何使用fft()绘制出真正的频谱图像

    以前一直对MATLAB中fft()函数的使用一直存在疑惑,为什么要加一 些参数,并且如何确定这些参数,也查了许多资料,但很多都感觉只是 表面一说根本没有讲清其本质.但随着学习的推进,慢慢有所领悟,所 ...

  9. 离散傅里叶变换DFT

    离散傅里叶变换DFT 离散傅里叶变换的定义 实部和虚部的计算 振幅的计算 说明与注意 三角函数公式 特殊角的三角函数值 举例说明 全图汇总 离散傅里叶变换的定义 设x(n)是一个长度为M的有限长序列, ...

最新文章

  1. 【Java】Java中的数据类型说明
  2. U3D MonoBehaviour
  3. Xtreme SuitePro ActiveX 2008 v12.0.1 更新了
  4. jbpm 和 drools_jBPM和Drools工作台中的用户和组管理
  5. JSP,JSF和EL简介
  6. jvm调试工具_调试JVM
  7. android 名片识别 简书,iOS 自己实现 名片识别 三 图片处理
  8. 一个好的技术团队应该怎么选择开发语言
  9. 腾讯微博虽然停运,但其仍是一款成功的产品
  10. JavaScript实现继承的方式
  11. [转载]网站分析的最基本度量(3)——网站分析工具如何辨别UV
  12. mysql 80070057_返回E_INVALIDARG (0x80070057)
  13. 内核编程的主要调用源
  14. 算法Big O Notation
  15. monkey命令——压力测试——转载参考01
  16. Optional orElseThrow 错误: 未报告的异常错误X; 必须对其进行捕获或声明以便抛出...
  17. Redis 各种用法总结,你知道几种?
  18. 解决VScode调试C++文件名不能出现中文的情况
  19. C语言经典例题100道(求素数最全的方法在这里!!!)
  20. 堆积木(动态数组vector)

热门文章

  1. 如何查看NVIDIA显卡显存使用率
  2. 明万历年间抗击倭寇援朝战役
  3. 城市地铁是怎样建成的?
  4. 数据分析_python数据可视化(基于matplotlib+pandas)
  5. 超高薪资vs安逸生活,拼多多和国家电网,选哪个?
  6. 如何安装和使用A-ops工具?
  7. matlab级数求和阶乘,(阶乘)数列求和 - 数学 - 小木虫 - 学术 科研 互动社区
  8. < Linux > 操作系统
  9. OUC_软件工程_BLOG1
  10. 关于MacPorts