变换编码(下)| 学习笔记

简介: 快速学习变换编码(下),介绍了变换编码(下)系统机制, 以及在实际应用过程中如何使用。

开发者学堂课程【高校精品课-华中科技大学 -智能媒体计算变换编码(下)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/811/detail/15687


变换编码(下)


内容介绍

一、傅立叶变换

二、课外推荐

三、离散余弦变换-DTC 变换


本章讲述用途最广、同时也是各种变换基础的傅里叶变换。


一、傅立叶变换

1.由来

傅立叶变换是由傅里叶提出的,他是热学的物理学家,在1811年发表热的传导文章。在热的传导的特性推导中提出了傅立叶变换的思想。下图描述了傅立叶变换的基本原理:图中,每个人手中不同频率的正弦波组成一起就可以产生特定的信号。

image.png

2.傅立叶变换的内涵

内涵:多个正余弦波叠加就可以用来近似任何一个原始的周期函

数。换言之,任何一个周期性信号都可以用多个正余弦波叠加形成的。下图描述了矩形波是由不同频率的波叠加而成的。

实质:频域函数和时域函数的转换

时域是永远随着时间的变化而变化的

频域是装着正余弦波的空间,理论上是无穷多个

频域空间中,每一条线代表特定频率的正余弦波的幅值。

image.png

比如:三角函数,角 A 的 sin 值是 a/c,cos 值是 b/c。

image.png

3.傅立叶变换的基本原理

多个正余弦波(蓝色表示)可以近似一个原始的周期信号(红色

表示)。红色表示原始的矩形波,矩形波是通过不同频率的正余弦函数叠加的。

 image.png

将空间展开可以看出,不同频率和幅值的正余弦波。

image.png

每一条线就是特定频率正余弦函数的幅值。

image.png

锯值波、三角波的演变,可以看出也是叠加而成的。

image.pngimage.png

由图可知,时域的空间描述的是矩形波。而频域的空间描述的是一系列的不同频率的正弦波,向左投影,变为频域图像上若干条垂直的线,而这些线的高度就是正弦波的幅值,水平轴是频率值。这样我们把时域变化的信号变化为频域,而频域里面是频率和幅值。时域里面是幅值和随着时间的变化而变化的无穷大的量。

image.png

4.相位

除了幅值和频率外,要想准确描述频域空间的波,还有一个参数:

相位

相位是对于一个波,特定的时刻在它循环的位置:

一种它是否在波峰、波谷或者它们之间的某点的标度。

相位决定了波的位置。

对于频域分析,仅仅有幅值是不够的,还需要一个相位谱。

相位谱中每一个点就是指它距离它最近的峰值的距离,也就是相位差。若干个相位差画在一个空间里面就组成了相位谱。

相位决定了特定的波在特定时刻的位置,也就是不同频率的波,我们把它的位置确定下来之后,再进行叠加,就可以精确的产生我们特定的信号的波形。理论上,需要无穷多个;实际上,只要达到一定精度后,就采用有限的正余弦波,这就是傅立叶变换的含义。

image.png

 

二、课外推荐

详细的讲解可以参考李永乐老师的傅立叶变换的视频,非常形象生动。

1. 李永乐老师讲解傅立叶变换

https://www.bilibili.com/video/BV1A4411Y7vj?from=search&seid=3973485274726036796

2. 相关书籍

关于信号处理可参考此书:

Steven W. Smith.The Scientist and Engineer 's Guide to DigitalSignal Processing. ( http://wap.dspguide.com/ )

傅里叶变换看不懂,5分钟教你快速理解!

https://baijiahao.baidu.com/s?id=1636833728798493906&wfr=spider&for=pc

image.png

在讲任何变换的时候,注意要记住的不是复杂的公式,而是公式背后解释的物理意义。傅里叶变换的本质是我们任意一个周期函数可以用无穷多个正余弦波的叠加而形成。


三、离散余弦变换-DTC 变换

1.概念

离散余弦变换又称,DTC 变换。其中 D 表示 DiscreteC 表示 CosineT 表示Transform

余弦变换是傅里叶变换的一种特殊情况:

在傅立叶级数展开式中,如果被展开的函数是实偶函数,那么,

其傅立叶级数中只包含余弦项。

将其离散化称之为离散余弦变换 DCT ( Discrete Cosine

Transform)。

离散余弦变换广泛应用于傅立叶变换中,因为离散余弦变换具有

很强的"能量集中"特性:

大多数的自然信号(包括声音和图像)的能量都集中在离散余弦变

换后的低频部分。

当信号具有接近马尔科夫过程(Markov processes)的统计特性

时,离散余弦变换的去相关性接近于K-L变换(Karhunen-Loeve变换—最佳变换)的性能。

高频部分描述信号的细节。

2. 总结

主要内容在低频部分已经表现,而高频部分只描述细节。若使用时对细节要求不高时,重点将低频部分描述清楚即可。六分量为低频,交流分量为高频。

3. DCT 变换的特点

离散余弦变换在数字图像数据压缩编码中可与最佳变换K-L变换

媲美。

DCT 压缩性能和误差很接近 K-L 变换

DCT 计算复杂度适中

DCT 有快速变换算法

在图像数据压缩中广泛应用:

JPEG(静态图像,视频图像的帧中)

MPEG

H.26X

4. 图像分块

在变换前,要对图像进行分块,可分为若干个8*8、4*4、2*2的块,分块是为了使块内的相关性更强,同时也便于我们对其进行硬性处理。

image.png

5. 二维 DCT 公式

对每个单独的彩色图像分量,把整个分量图像空间分成一个任意

几*几,此处以8×8的图像块为例,并作为二维离散余弦变换 DCT 的输入

通过 DCT 变换,把能量集中在少数几个系数上

image.png

离散余弦变换

6. 变换公式

(1)正变换(FDCT)

F 表示 forward 向前,表示正向。u,v 分别为幅度和频率,C(u)C(v)则是两个参数。

图片17.png

(公式1)

(2)逆变换(IDCT)

f(i,j)表示的是时域中的,在像素中为像素值和亮度值或色差值。

图片18.png

 (公式2)

正变换中自变量为i,j颜色值的分量值,将每个点累加而成。逆变换与之相反,自变量为 u,v。

其中  

图片19.png

f(i,j)经过变换后,在变换域中F(0,0)是直流系数,其他为交流系数。

在计算二维的 DCT 变换时,可使用下面的计算公式把两维的 DCT 变换变成一维的DCT 变换,先按照一列列的变换,再将每一列的结果一行行的变换,即把矩阵变为一维的向量进行变换。

图片20.png(公式3)

 图片21.png(公式4)

如图,先进行垂直方向的变换,再进行水平方向变换。

image.png

(二维DCT变换方法)

本章内容到此结束,下章结合 JPEG 图像压缩讲述 DCT 变换前后的区别。

相关文章
|
机器学习/深度学习 人工智能 自然语言处理
视觉 注意力机制——通道注意力、空间注意力、自注意力
本文介绍注意力机制的概念和基本原理,并站在计算机视觉CV角度,进一步介绍通道注意力、空间注意力、混合注意力、自注意力等。
13289 58
|
2月前
|
人工智能 弹性计算 双11
阿里云2025年双十一活动介绍
‌阿里云2025年双十一活动已开启,优惠时间从10月24日持续至11月30日‌,涵盖云服务器、AI大模型等产品,最高可领1728元优惠券,部分AI资源免费体验。
454 1
|
弹性计算 固态存储 大数据
2024阿里云服务器租用价格表(一年/按月/按小时报价明细)
阿里云服务器2024年最新租用价格表显示,轻量应用服务器2核2G3M带宽一年82元(约6.8元/月),2核4G4M带宽轻量服务器一年298元。新老用户共享99元一年的2核2G3M带宽ECS经济型e实例服务器与199元一年的企业专享2核4G5M带宽ECS u1实例服务器优惠。4核16G10M带宽游戏服务器70元/月,8核32G10M带宽160元/月。GPU服务器如gn6v和gn6i等提供新用户专享折扣。续费折扣方面,续费一年享有7.5折,续费五年则有3折优惠。按小时计费的云服务器ECS实例中,如ecs.u1-c1m4.large(2核8G)每小时0.45元。
31596 17
|
消息中间件 NoSQL Redis
Redis Stream消息队列之基本语法与使用方式
这篇文章详细介绍了Redis Stream消息队列的基本语法和使用方式,包括消息的添加、读取、删除、修剪以及消费者组的使用和管理,强调了其在消息持久化和主备复制方面的优势。
523 0
|
安全 网络协议 关系型数据库
最好用的17个渗透测试工具
渗透测试是安全人员为防止恶意黑客利用系统漏洞而进行的操作。本文介绍了17款业内常用的渗透测试工具,涵盖网络发现、无线评估、Web应用测试、SQL注入等多个领域,包括Nmap、Aircrack-ng、Burp Suite、OWASP ZAP等,既有免费开源工具,也有付费专业软件,适用于不同需求的安全专家。
2264 2
|
人工智能 算法 数据可视化
DBSCAN密度聚类算法(理论+图解+python代码)
DBSCAN密度聚类算法(理论+图解+python代码)
6443 1
|
算法 大数据 开发者
变换编码(上)| 学习笔记
快速学习变换编码(上),介绍了变换编码(上)系统机制, 以及在实际应用过程中如何使用。
 变换编码(上)| 学习笔记
|
小程序
学员小游戏作品分享
嗨!大家好,我是小蚂蚁。今天分享一下学员的游戏作品,小蚂蚁的学员的作品正在变得越来越多,这也是让我非常开心和有成就感的一件事。如果你也想学习做游戏,想要有一天做出自己的游戏,欢迎来加入小蚂蚁的游戏开发课。
896 0
一文搞懂CAN总线协议帧格式
CAN总线上传输的信息称为报文,当总线空闲时任何连接的单元都可以开始发送新的报文。
谷歌风格C++命名规则
谷歌风格C++命名规则
548 0