1. Intro
媒体(Media)是发布信息和表现信息的手段、方法、工具、设备或装置。
媒体的两种形式:
- 感觉媒体:人——人或者人——机交换信息的形式。由于人们通过视觉、听觉器官等感知信息, 因此称为可感知形式;
- 表示媒体:计算机内部或者机——机交换信息的形式。由于计算机以二进制编码的形式表示文字、图像、声音等,所以称为数字媒体形式。
2. Image
颜色模型
三要素:
- 色调:颜色的外观,决定与光的波长
- 饱和度:纯度/彩度,指彩色的深浅或鲜艳程度,通常指彩色中白光含量的多少
- 亮度:表示某种颜色在人眼视觉上引起的明暗程度, 与光的强度有关
常见颜色模型:
- RGB:000000为黑,ffffff为白
- CMY:基于减色混合原理(Subtractive Color Model)建立的,主要用于描述反射光的颜色混合,即光被材料吸收后的剩余颜色。CMY 是 Cyan(青)、Magenta(品红)、Yellow(黄) 三种基本色的颜色模型。
- 每种颜色吸收一部分光谱成分,剩下的成分被反射到我们的眼睛里。
抖动
“抖动”(Dithering)在图像处理、颜色量化和数字音频中是一个非常常见的概念。它的核心目的是在降低颜色(或位深)精度时,尽量减少视觉(或听觉)上的质量损失。用于解决在颜色个数有限的情况下的颜色输出问题的一种策略。
由于图像被压缩后某些地方分隔较为明显,为减少视觉误差,将压缩后图像与原图像误差分摊至各个周边格。
γ 纠正
γ 纠正是一种非线性亮度变换,它将图像的像素值(亮度)根据伽马曲线进行调整,使图像的明暗关系符合人眼视觉感知或显示器特性。纠正通常先将R变为$R^{1/γ}$
原因:
- 人眼对亮度的感知是非线性的:对暗部较敏感,对亮部不敏感。
- 显示器的响应也非线性:输入信号和实际亮度输出不是线性关系。
颜色删减
流行色算法:对彩色图像中所有色彩出现的次数进行统计分析,从而选取频率最高的N(256)种颜色,为这N(256)种颜色建立调色板。算法特点:算法简单容易实现,变换效果好,但一些出现频率较低,但对人眼视觉效果明显的信息将丢失。
八叉树颜色量化算法:见作业咯。
自然图像的表示
图像基本属性:
- 屏幕分辨率:屏幕显示的像素数目(px x px)。
- 图像分辨率:图像的像素的密度,一般用单位长度上包含像素的个数来衡量(dpi, Dots Per Inch)。
- 像素深度:存储每个像素所用的位数。
- 调色板:颜色查找表,表中的每一行记录一组RGB值,实际像素的值用来指定该点颜色在查找表中的索引值。
合成图像的表示
使用算法或几何要素在计算机中对景物和形体进行描述。(造型modeling)
需要显示时,计算机根据观察者的位置及光线的设定,生成该景物的图象。(绘制rendering)
建模方法
- 几何造型技术
- 线框模型:用顶点和棱边来表示物体,由于没有面的信息,它不能表示表面含有曲面的物体。
- 表面模型:用面的集合来表示物体,用环来定义面的边界。但无法计算和分析物体的整体性质,如物体的表面积、体积、重心等。
- 实体模型:完整表示物体的所有形状信息,解决了表面模型无法确定是模型内还是模型外的问题。
样条曲线
样条曲线(Spline Curve)是一种在计算机图形学中常用的平滑曲线表示方法,它通过一组“控制点”来构造连续、光滑的曲线段。
基本思想:
- 整条曲线由多个 低阶多项式曲线段拼接而成(通常为三次多项式)
- 这些多项式在“接点”处满足光滑性条件,如:
- 位置连续($C^0$)
- 一阶导数连续($C^1$,切线方向一致)
- 二阶导数连续($C^2$,曲率一致)
B样条:
基于基函数构造,可调性高,不一定经过所有点。系数B按照组合数二项式展开。
分形几何
分形几何(Fractal Geometry)是一种研究不规则形状和复杂结构的数学理论,它不同于传统欧几里得几何(直线、圆、立方体等规则形状),主要用于描述自然界中那些粗糙、零散、无限复杂的结构,比如云彩、树木、雪花、海岸线等。
分形物体特征
- 每点处有无限细节 放大时逐步可见
- 整体与局部特征之间的自相似性
- 整体与局部都不能用传统的几何语言来描述
参数:
- 缩放因子:$s \in (0,1)$ 是指每个子部分相对于整体在尺寸上的缩小倍数。
- 子部分数目:这是指在缩放的情况下,需要多少个子部分可以拼出整个图形。例:科赫曲线每次迭代将一条线替换成 4 段小线段(都是原长度的 1/3),所以n=4。
- 分形维数:这是衡量图形复杂度的维度,可以是非整数。
3. Video
模拟视频
随时间变化其内容的一组图象(24,25,30帧/秒)。
- 逐行扫描(Progressive Scan),每一帧图像都从上到下,逐行依次扫描并显示。
- 隔行扫描(Interlaced Scan),将一帧图像分成两场(field)显示,每次先显示一场,下一次再显示另一场,交错组成完整图像。
在一个视频帧中,并不是所有的扫描线都被用来显示图像。模拟信号中需要添加一些同步和控制信息。
在老式电视系统中,图像是通过电子束在屏幕上从左到右、从上到下“扫描”出来的。为了让电子束每次回到正确的起点位置,就必须:
- 知道什么时候该从左边重新开始 → 水平同步(行)
- 知道什么时候该从顶部重新开始 → 垂直同步(帧)
- 有足够时间“回扫” → 加入消隐(Blanking)时间
- 避免图像跳动或撕裂 → 加入控制信息
1 | |<--- 一帧 --->| |
时间特性
- 动作连贯性感觉的要求:帧频>=15f/s;
- 无闪烁感觉的要求:画面刷新速率必须>=每秒50次。
- PAL制式:帧频为25 帧/s, 场频50场/s;
- NTSC制式:帧频是30(29.97) 帧/s, 场频是60(59.94)场/s。
- 电视扫描信号的行频:
- PAL:625 x 25 = 15.625 kHz ,周期为64μs;
- NTSC:525 x 30 = 15.75 kHz,周期为63.5μs。
- 光点数:
- 575*(4/3)*575=440 kb (P)
- 485*(4/3)*485=310 kb (N)
- 最高频率:
- 440 k * 25/2 = 5.5MHz(P)
- 310 k * 30/2 = 4.65MHz(N)
- 传输电视节目时的带宽:
- PAL制式是8.0MHz(亮度信号为5.5 MHz,2个色度信号均为1.8 MHz)
- NTSC制式是6.0MHz(亮度信号为4.2 MHz,2个色度信号均为1.0 MHz)
彩色空间
Y:亮度分量,C1,C2:色度分量,分别代表U,V(PAL)或者I,Q(NTSC)。
C1,C2描述了颜色相对于亮度 Y 的“偏移”。人眼对亮度敏感,对色差不敏感,所以视频压缩时可以只保留精细的 Y(明亮)数据;
YUV:表示蓝色成分/红色成分的偏离度(PAL)
YIQ:表示色彩亮度信息、细节色彩信息(NTSC)
另外,YCbCr是国际通用的CCIR601数字电视信号中使用的彩色空间,它由YUV彩色空间经过缩放和平移得到。
数字视频
易于编辑、修改等操作处理
用户接收的图像质量更好(可达演播室水平)
有利于存储,信息复制不会失真等。
亮度 & 色度信号的取样
人眼对亮度(明暗)特别敏感,而对色度(色彩细节)敏感度较低。
所以我们通常对亮度信号取更高的精度,对色度信号进行降采样,从而节省数据量,但感官质量影响不大。
每个Y、U、V约对应一个字节。
格式 | 含义(每 4 个 Y 点配多少 Cb/Cr) | 特性说明 |
---|---|---|
4:4:4 | 每 1 个 Y 对应 1 个 Cb + 1 个 Cr | 完全无损色彩,文件大 |
4:2:2 | 每 2 个 Y 对应 1 个 Cb + 1 个 Cr | 水平方向压缩一半,常用于广播 |
4:2:0 | 每 4 个 Y 对应 1 个 Cb + 1 个 Cr | 水平+垂直都降采样,最常见 |
4:1:1 | 每 4 个 Y 对应 1 个 Cb + 1 个 Cr | 仅水平降采样,画质更低 |
数字视频的记时
当使用失落帧时间码时,系统对除了每十分钟以外的每分钟的头两帧重新赋给序号。
- 每分钟跳过(drop)两帧编号;
- 每 10 分钟不跳帧;
- 跳的是编号,比如:
- 00:01:00:00 → 跳过了 00:01:00:00 和 00:01:00:01
- 从 00:01:00:02 开始计数
这样,虽然视频仍然播放全部帧,但时间码编号人为“失落”编号以保持与真实钟表时间一致。
合成视频(计算机动画)
计算机动画是在计算机中建立景物的模型、设置它们的运动、生成逼真图像并转换成视频信号的过程。
4. Audio
声音的数字化
模拟声音信号 -> 取样 -> 量化 -> 编码 -> 数字声音
Nyquist取样频率:采样一个模拟信号时,所需的最低采样频率为2倍最高频率。
假设一个音频信号中最高频率为 20kHz:
根据 Nyquist 定理,采样频率至少要:2×20kHz=40kHz
所以 CD 音频选择了 44.1 kHz 的采样率(语音 8 kHz ),就是为满足 Nyquist 要求并留一定余量。
信噪比和信号量化噪声比
量化是将连续值(模拟量)映射为有限个离散值(数字量)的过程。
假设模拟电压范围是 [0,1],用 2 位(二进制)表示,那只能表示 4 个等级:
电压范围 | 量化值 |
---|---|
[0.00, 0.25) | 00 |
[0.25, 0.50) | 01 |
[0.50, 0.75) | 10 |
[0.75, 1.00] | 11 |
任何落入某段的值都会被映射为同一个量化值,比如 0.32→01,这就带来了 量化误差(或量化噪声)。
信噪比:SNR 信号的功率与噪声功率的比值,用来衡量有用信号在噪声中的“清晰程度”。
例如SNR = 10 dB:信号比噪声强 10 倍;SNR = 30 dB:信号比噪声强 1000 倍 → 更清晰;
信号量化噪声比:SQNR 专门衡量数字信号中,由于量化过程(A/D 转换)引入的噪声,相对于原始模拟信号的强度比。仅限量化误差。
理论值:
位深度(n) | 理论 SQNR(dB) |
---|---|
8 位 | ≈ 49.9 dB |
16 位 | ≈ 98.1 dB |
24 位 | ≈ 146.2 dB |
非线性量化:将输入区间划分成不等宽的量化区间,让某些值的分辨率更高。
在数字化过程中,普通线性量化把输入范围平均分成等宽区间,但人类感知系统(尤其是听觉与视觉)对弱信号更敏感,对强信号不那么敏感。压缩函数对小值拉长、大值压缩,非线性弯曲。
合成语音
文语转换:将输入的自然语言文本,通过一系列处理步骤,最终合成出“可以听”的人类语音的过程。
文本 -> 文本分析与理解 -> 文本到发音的转换 & 韵律分析 -> 语音
合成音乐(乐器数字接口)
MIDI:乐器数字化接口。通过它,各种MIDI设备都可以准确传送MIDI信息。
5. Lossless Compress
基本概念
设信号源 $S = \{ s_1, s_2, \dots , s_n \}$ ,第 i 个符号的出现概率为 $p_i$ ,每个符号用 d 比特表示,则信号源的熵由下式定义:
含义说明:
如果某个符号$s_i$出现的概率越低,$p_i$越小,则其对应的信息量 越大(越稀有的信息越“新”)。
熵 H(S) 就是所有可能输出的平均信息量,反映了这个信源不确定性(或信息丰富程度)。
对于一种编码方法,设第i个符号的码字长度为Li,则该信号源的平均码字长度L为:
数据压缩
客观评价:
均方误差(MSE) 定义: 平均每个像素(或采样点)的误差平方。
I(i,j):原始图像或信号的像素值;
K(i,j):压缩恢复后的像素值;
信噪比(SNR, Signal-to-Noise Ratio) 定义:
信噪比是原始图像的信号能量与误差信号能量的比值,单位是 dB;
越高表示压缩误差越小,图像质量越高;
峰值信噪比(PSNR, Peak Signal-to-Noise Ratio) 定义:
$MAX_I$:图像的最大像素值(例如 8 位图像中为 255);
PSNR 是使用峰值像素值对 MSE 的度量;
单位是 dB,常用来评价图像压缩质量;
- PSNR > 30 dB:质量较好;
- PSNR > 40 dB:几乎无可察觉失真;
- PSNR < 20 dB:压缩痕迹明显。
行程长度编码
检测符号序列中连续重复出现的符号,并使用其长度进行表示。因此,仅仅在游程长度>3时才有效益。
变长度编码
Shannon-Fano算法和Huffman算法恰好相反。
对比点 | Shannon-Fano | Huffman |
---|---|---|
核心思想 | 概率划分(按概率递减排列并二分) | 概率合并(每次合并最小两个) |
编码树构造方式 | 自顶向下分裂 | 自底向上合并 |
是否保证最优编码 | ❌ 不一定最优 | ✅ 总是最优的前缀编码 |
算法复杂度 | $O(n \log n)$ | $O(n \log n)$ |
自适应Huffman编码
自适应Huffman编码解决了标准 Huffman 编码的一个局限:标准 Huffman 编码需要在编码前预先统计所有符号的频率,这在流式数据或频率未知的情况下不适用。自适应 Huffman 编码是一种在编码过程中实时构建 Huffman 树并进行更新的无损压缩算法。
- 初始化 Huffman 树:初始时为空树或只含特殊符号(如 NYT = Not Yet Transmitted);
- 逐个读取符号:
- 如果符号未出现过:
- 发送 NYT 的编码 + 该符号的原始二进制;
- 插入该符号到树中;
- 如果符号已出现:
- 发送其当前 Huffman 编码;
- 如果符号未出现过:
- 更新树结构:根据出现频率更新节点权重,并维护“兄弟属性”(sibling property),保证树仍是合法 Huffman 树。
字典编码
LZW 通过构建字符串字典,把重复的子串替换为代码,从而实现压缩。
- 从输入中读取字符串 w;
- 循环处理:
- 令 k 为下一个字符;
- 如果 w + k 在字典中 ⇒ 继续扩展 w ← w + k;
- 如果不在字典中:
- 输出 w 的编码;
- 把 w + k 加入字典;
- 令 w ← k;
例如:
a b b a b a b a c
1 2 2 4 7 3
S | c | output | code | string |
---|---|---|---|---|
1 | a | |||
2 | b | |||
3 | c | |||
a | b | 1 | 4 | ab |
b | b | 2 | 5 | bb |
b | a | 2 | 6 | ba |
a | b | / | / | / |
ab | a | 4 | 7 | aba |
a | b | / | / | / |
ab | a | / | / | / |
aba | c | 7 | 8 | abac |
c | eof | 3 | / | / |
解压缩
- 第一个编码直接输出对应字符;
- 从第二个编码起:
- 找到当前编码对应的字符串 entry;
- 将 entry 输出;
- 用「上一个字符串 + entry 的第一个字符」作为新词条加入字典;
- 更新上一个字符串为 entry。
例如:1 2 2 4 7 3
pre | entry | output | code | string |
---|---|---|---|---|
/ | / | / | 1 | a |
/ | / | / | 2 | b |
/ | / | / | 3 | c |
/ | a | a | / | / |
a | b | ab | 4 | ab |
b | b | abb | 5 | bb |
b | ab | abbab | 6 | ab |
ab | 特殊, pre + pre[0] = aba | abbababa | 7 | aba |
aba | c | abbababac | 8 | abac |
编码流中可能会出现某个编号X,而这个编号X正好就是刚刚加进字典的 w+k。
但是解码器在收到 X 时,还没来得及加入 w + k,就无法解出它。
用上一个解出的字符串 w 加上它的第一个字符 w[0] 作为该编号的字符串值。
这个正是 LZW 解码的「特殊情况处理机制」,也被称作 “LZW 简单法失效的处理方法”。
算术编码
算术编码不是为每个符号分配一个整数编码,而是将整个消息编码为一个 区间上的一个实数(通常是 [0, 1) 区间上的小数)。
每添加一个字符,就不断缩小当前的区间,直到所有字符处理完毕。最后,用该区间内的任意一个数来表示整个消息。
无损图像压缩
用像素周围的邻域像素对当前像素进行预测,然后仅编码“真实值 - 预测值”之间的差(残差),这些差值通常较小,便于压缩。
6. Lossy Compress
变换编码
把原始图像表示方式“转换”成另一种更容易压缩的形式,使其能量更加集中,然后再对变换后的数据进行压缩(如量化与熵编码)。
离散余弦变换 DCT
将图像划块 → 用 DCT 把每块变换成频率系数 → 再量化并编码这些系数。
考了立刻紫砂。
小波变换 DWT
什么是小波:一种函数:具有有限的持续时间、突变的频率和振幅波形。可以是不规则的,也可以是不对称的。在整个时间范围里的幅度平均值为零。
Haar 小波变换就是把一串数 两两分组,分别计算它们的 平均值(低频) 和 差值(高频),不断对平均值做同样的处理,直到达到预定层数。最终处于 LL 包含了大部分图像信息。
嵌入零树小波系数 EZW
EZW 利用了小波变换后图像系数的层级结构,在高频区域中,如果一个系数为零,那么它的“后代”往往也很小或为零。EZW 就将这些“全为零”的结构用一棵树统一标记,从而大幅压缩数据,是 JPEG2000 的前身技术之一。
- 从最大绝对值 $T = 2^n$ 开始,每次减半;
- 对每个系数进行分类:
- POS(正):值 ≥ +T;
- NEG(负):值 ≤ −T;
- ZTR(零树根):自己和所有子孙都 < T;
- IZ(孤立零):自己 < T,但有大于 T 的子孙;
34 | -1 | 21 | -18 |
4 | 2 | 10 | 8 |
15 | 4 | 14 | 11 |
3 | -4 | 1 | -16 |
第一轮:PTTT,阈值32
第二轮:zztz pntt tttn,阈值16
7. Jpeg
JPEG (ISO /IEC 10918)
基于DCT的顺序编码
- 将原始 RGB 图像转换为 YCbCr 空间(或YIQ, YUV)
- 下采样,色度分量 Cb、Cr 会进行下采样(如 4:2:0),降低分辨率以减小数据量
- 将每个分量分成 8×8 的图像块(MCU:最小编码单元),单独压缩。
- 对每个 8×8 块做 二维 DCT(离散余弦变换)
- 左上低频(主要),右下高频(细节噪声)
- 变换前需要对像素值进行电平偏移,即$[0, 2^P-1] → [-2^P-1, 2^{P-1} -1]$
- 变换后, 得到的F(u,v)其动态范围是:$[-2^{P+2} -1, 2^{P+2} -1]$
- 使用量化表将 DCT 系数进行有损压缩
- Q为预先设置好的量化矩阵值
- 量化值$QF(u, v) = round\left[ \frac{F(u, v)}{Q(u, v)} \right]$
- Q矩阵左上角(低频)数字小,能够保留更多信息,右下角(高频)相反
- Zigzag 扫描
- 直流系数:F(0, 0)的值
- 一幅图象的所有直流系数使用DPCM编码
- 如果直流系数是150, 155, 149, 152, 144,则差分后的结果为 :150,5,-6,3,-8
- 交流系数:其余 63 个 DCT 系数(除 F(0,0) 外的全部)
- 表示图像块中亮度或色彩的细节(中高频),多为小数甚至0,更容易压缩
- 使用Zigzag 扫描 + 游程长度编码(RLE)
- 在JPEG中,只记录非零值,例如:3, 0, 0, 2, 0, 0, 0, 0, 0, -1, 0, … (很多 0)
- 最后记录为[(0, 3), (2, 2), (5, -1), (0, 0)]
- 直流系数:F(0, 0)的值
RUNLENGTH | SIZE | 对应值 | 含义 |
---|---|---|---|
0 | 2 | 3 |
直接是 3 |
2 | 2 | 2 |
跳过2个0,再是2 |
5 | 1 | -1 |
跳过5个0,再是-1 |
0 | 0 | End of Block |
- VLI编码
- VLI 不压缩,但为后续的哈夫曼编码提供了“位数级别”信息
- 直流:将差分值的二进制位数查表哈夫曼编码,将差分值VLI编码
- 例如值122,先前DC值120,则差分为2,码长2位,查表011,二进制值10
- [DC] Huffman(SIZE=2): 011, VLI: 10 ⇒ 总输出:011 10
- 交流:
- 将(行程,值)键值对增为((行程,值的码长),值),将(行程,值的码长)查表
- 例如(0, 4),增为((0, 3), 4)
- [AC] Huffman(0,3): 1001, VLI(4): 100 ⇒ 1001 100
- 码表有长度上限,因此(0, 0)代表结束,而(F, 0)代表连续16个0
- 熵编码无损压(如哈夫曼编码)
DCT_based 层次编码
目的:高分辨率图像在任意分辨率设备上输出(scalable).
算法:
- 1.把原始图象分辨率逐级降低(subsampling),得到一组分辨率由低到高的图象;
- 2.把分辨率最低的图象进行JPEG压缩编码;
- 3.解码,重建该图象。然后用插值方法提高其分辨率,作为高一级分辨率原始图象的预测图象;
- 4.求出预测图象与相应原始图象的差值图象,对差值图象进行JPEG压缩编码;
- 5.重复3和4,直到达到原始图象最高分辨率为止.
压缩比和图像质量
压缩比(CR)
CR=原始图象的数据量/压缩后图象的数据量
压缩后图象象素的比特数=原始图象象素的比特数/CR
JPEG2000 (ISO15444)
DCT-based 层次编码、渐进式编码、游程编码、VLI 等,几乎全部属于 JPEG 标准(ISO/IEC 10918) 的范畴。而 JPEG2000(ISO/IEC 15444) 是它的“升级版”,采用完全不同的技术路线。
JPEG 2000 的编解码过程是建立在小波变换(DWT)+ 零树编码 + 算术编码基础之上的,与传统 JPEG(基于 DCT 的块状处理)完全不同。
复习不动了跳过这一部分吧又臭又长
8. Video Compress
概述
- ITU-T标准
- 用于ISDN视频会议的 H.261(Px64)标准
- 用于PSTN可视电话的 H.263标准
- 用于ATM/B-ISDN视频会议的 H.262标准
- ISO/IEC 国际标准
- 用于VCD的ISO 11172(MPEG-1 video)标准
- 用于数字电视和DVD的ISO/IEC 13818(MPEG-2 video) 标准
- 用于交互式多媒体应用的视听编码标准 MPEG-4
- 企业(公司)标准: AVI, QuickTime, RealVideo
名称 | 分辨率(横 × 纵) | 像素总数 |
---|---|---|
1K 720p | 1280 × 720 | ≈ 92 万像素 |
2K 1080p | 1920 × 1080 | ≈ 207 万像素 |
4K UHD | 3840 × 2160(UHD) | ≈ 830 万像素 |
8K UHD | 7680 × 4320 | ≈ 3310 万像素 |
视频流码率:
视频压缩的基本方法:
- 在空间域:
- 采用JPEG(Joint Photographic Experts Group)压缩算法来去掉画面内部的冗余信息。
- 在时间域:
- 采用运动补偿(motion compensation)算法来去掉画面之间的冗余信息。
运动补偿
很多相邻帧之间只有部分区域发生轻微移动(如人走动、镜头摇动),其余部分几乎没有变化。
所以没必要每帧都全部重新编码,可以只描述“变化”。用前一帧(参考帧)中的某一图像块,加上位移信息,来预测当前帧中的图像块。
- 分块
- 划分宏块
- 对每个宏块:在前一帧中搜索最相似的块,找出一个最小差异的位置
- 生成运动矢量
- 假设当前块与前一帧中的某块差异最小
- 用一个矢量 (dx, dy) 表示从参考帧块到当前块的移动
- 记录差值
- 用参考帧中位移后的块来预测当前块
- 将预测与实际图像的差值(residual)记录下来(并压缩)
对于这个差值,便是运动矢量。其算法便是为了找到最合适的矢量(dx, dy)。最佳匹配准则(“方差和”最小或“绝对误差和”最小)
H.261
目标:为ISDN 网络上的视频电话/会议设计
H.263
目的:替代 H.261,改进低比特率下的视频质量
9. MPEG
MPEG概述
MPEG-1、MPEG-2、MPEG-4 是由国际标准组织 MPEG(Moving Picture Experts Group,动态图像专家组)制定的不同代的视频和音频压缩标准。
- I帧(Intra):独立帧
- P帧(Predictive):预测帧
- B帧(Bidirectional):双向预测帧
- DC(DC-only)帧:只包含 DCT 变换中 DC 系数的帧,丢弃 AC 分量
MPEG-1
为VCD(视频光盘)和CD-ROM视频播放设计的标准
代表应用:
- Video CD(VCD)
- MP3(MPEG-1 Audio Layer III)
MPEG-2
为电视广播、DVD、高清电视等更高质量需求而设计
代表应用:
- 数字电视(DVB、ATSC、ISDB)
- DVD 视频
- 蓝光光盘(低码率版本)
MPEG-4
支持网络视频传输、低码率、高压缩率
代表应用:
- H.264 是 MPEG-4 Part 10(使用最广泛的视频编码格式)
- MP4 容器格式(.mp4)
10. Audio Compress
语音压缩编码
数字语音的波形编码
CCITT G.711(脉冲编码调制)
模拟语音信号 -> 取样(8kHz) -> 量化 -> 对数变换压缩
对数变换
目的 : 适应听觉的非线性特性;压缩数据。
ADPCM自适应差分脉冲编码调制
不直接编码原始信号,而是编码当前样本值与预测值之间的差值,并根据信号变化自适应地调整量化器的步长。
原理:
- 声音信号具有很强的相关性,可从已知信号来预测未知信号, 即使用前面的样本预测当前的样本,实际样本值与预测值之间的误差往往很小。
- 利用自适应的思想改变量化阶的大小,即使用小的量化阶(step-size)去编码小的差值,使用大的量化阶去编码大的差值,