CIF、DCIF、D1格式介绍<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
CIF简介
CIF是常用的标准化图像格式(Common Intermediate Format)。在H.323协议簇中,规定了视频采集设备的标准采集分辨率。CIF = 352×288像素
QCIF全称Quarter common intermediate format。QCIF也是常用的标准化图像格式。在H.323中,规定QCIF = 176×144像素。
CIF格式具有如下特性:
(1) 电视图像的空间分辨率为家用录像系统(Video Home System,VHS)的分辨率,即352×288。
(2) 使用非隔行扫描(non-interlaced scan)。
(3) 使用NTSC帧速率,电视图像的最大帧速率为30 000/1001≈29.97幅/秒。
(4) 使用1/2的PAL水平分辨率,即288线。
(5) 对亮度和两个色差信号(Y、Cb和Cr)分量分别进行编码,它们的取值范围同ITU-R BT.601。即黑色=16,白色=235,色差的最大值等于240,最小值等于16。
下面为5种CIF 图像格式的参数说明。参数次序为“图象格式亮度取样的象素个数(dx) 亮度取样的行数 (dy) 色度取样的象素个数(dx/2) 色度取样的行数(dy/2)”。
sub-QCIF 128×96 64 48
QCIF 176×144 88 72
CIF 352×288 176 144
4CIF 704×576 352 288(即我们经常说的D1)
16CIF 1408×1152 704 576
目前监控行业中主要使用Qcif(176×144)、CIF(352×288)、HALF D1(704×288)、D1
(704×576)等几种分辨率,CIF录像分辨率是主流分辨率,绝大部分产品都采用CIF分辨率。目前市场接受CIF分辨率,主要理由有四点:1、目前数码监控要求视频码流不能太高;2、视频传输带宽也有限制;3、使用HALF D1、D1分辨率可以提高清晰度,满足高质量的要求,但是以高码流为代价的。在现阶段,出现了众多D1的产品,但市场份额非常小;4、采用CIF分辨率,信噪比在32db以上,一般用户是可以接受的,但不是理想的视频图像质量。目前业内人士正在尝试用HALF D1来寻求CIF、D1之间的平衡。但随着单块硬盘的容量达到750GB甚至1000GB,而国内的大部分DVR已经可以做到连接8块1000GB的硬盘,故D1逐渐会变成时常的主流。
DCIF分辨率是什么?
经过研究发现一种更为有效的监控视频编码分辨率(DCIF),其像素为528×384。DCIF分辨率的是视频图像来历是将奇、偶两个HALF D1,经反隔行变换,组成一个D1(720*576),D1作边界处理,变成4CIF(704×576),4CIF经水平3/4缩小、垂直2/3缩小,转换成528×384.528×384的像素数正好是CIF像素数的两倍,为了与常说的2CIF(704*288)区分,我们称之为DOUBLE CIF,简称DCIF。显然,DCIF在水平和垂直两个方向上,比Half D1更加均衡。
为什么选用DCIF分辨率?
数字化监控行业对数字监控产品提出两项要求:首先要求数据量低,保证系统能够长时间录像和稳定实时的网络传输;其次要求回放图像清晰度高,满足对细节的要求。而DCIF分辨率在目前的软硬件平台上,能很好的满足以上两项要求。
Half D1分辨率已被部分产品采用,用来解决CIF清晰度不够高和D1存储量高、价格高昂的缺点。但由于他相对于CIF只是水平分辨率的提升,图像质量提高不是特别明显,但码流增加很大。
经过对大量视频信号进行测试,基于目前的视频压缩算法,DCIF分辨率比Half D1能更好解决CIF清晰度不够高和D1存储量高、价格高昂的缺点,用来解决CIF和4CIF,特别是在512Kbps码率之间,能获得稳定的高质量图像,满足用户对较高图像质量的要求,为视频编码提供更好的选择。
CIF清晰度不够高和D1存储量高、价格高昂的缺点分辨率,静态回放分辨率理论上最高可达360TVline的图像质量,超过模拟监控中标准VHS磁带录像机280TVline的图像水平,达到公安部安防行业视频标准二级和三级项目的清晰度要求,满足绝大部分视频监控的要求。
什么是D1?
做闭路电视监控系统这一行久了,大家都以为D1是硬盘录像机显示、录像、回放的分辨率,实际上不是的,D1是数字电视系统显示格式的标准,共分为以下5种规格:
D1:480i格式(525i):720×480(水平480线,隔行扫描),和NTSC模拟电视清晰度相同,行频为15.25kHz,相当于我们所说的4CIF(720×576)
D2:480P格式(525p):720×480(水平480线,逐行扫描),较D1隔行扫描要清晰不少,和逐行扫描DVD规格相同,行频为31.5kHz
D3:1080i格式(1125i):1920×1080(水平1080线,隔行扫描),高清放松采用最多的一种分辨率,分辨率为1920×1080i/60Hz,行频为33.75kHz
D4:720p格式(750p):1280×720(水平720线,逐行扫描),虽然分辨率较D3要低,但是因为逐行扫描,市面上更多人感觉相对于1080I(实际逐次540线)视觉效果更加清晰。不过个人感觉来说,在最大分辨率达到1920×1080的情况下,D3要比D4感觉更加清晰,尤其是文字表现力上,分辨率为1280×720p/60Hz,行频为45kHz
D5:1080p格式(1125p):1920×1080(水平1080线,逐行扫描),目前民用高清视频的最高标准,分辨率为1920×1080P/60Hz,行频为67.5KHZ。
其中D1 和D2标准是我们一般模拟电视的最高标准,并不能称的上高清晰,D3的1080i标准是高清晰电视的基本标准,它可以兼容720p格式,而D5的1080P只是专业上的标准,并不是民用级别的,上面所给出的60HZ只是理想状态下的场频,而它的行频为67.5KHZ,目前还没有如此高行频的电视问世,实际在专业领域里1080P的场频只有24HZ,25HZ和30HZ。
需要指出的一点是,D端子是日本独有的特殊接口,国内电视几乎没有带这种接口的,最多的是色差接口,而色差接口最多支持到D4,理论上肯定没有HDMI(纯数字信号,支持到1080P)的最高清晰度高,但在1920:1080以下分辨率的电视机上,一般也没有很大差别。
国内主流的硬盘录像机(DVR,Digital Video Recording)采用什么分辨率?怎样计算硬盘容量?
目前国内主流的硬盘录像机采用两种分辨率:CIF和D1。
硬盘录像机常见的路数有1路、2路、4路、8路、9路、12路和16路。最大可以连接8块2000GB的硬盘,总容量可高达1.6T(目前市面上最大的硬盘在1000GB左右),如果采用CIF分辨率,通常每1路的硬盘容量为180MB~250MB/小时,通常情况下取值200MB/小时;如果是D1的分辨率每小时录像需要的硬盘容量为720MB~1000MB/小时,通常情况下为了减少硬盘的容量可以按照500MB/小时计算,帧率智能设置比25fps少一些,码流也要少一些!相信大家可以计算出一台装满8块500GB的16路硬盘录像机可以录像多长时间了吧?
计算举例:8路CIF格式24小时不间断录像30天所需硬盘容量?
8路×200M×24小时×30天÷1024M = 1125G (注:1G = 1024M)
第四章 数字压缩编码技术
1 数字压缩的必要性
数字信号有很多优点,但当模拟信号数字化后其频带大大加宽,一路6MHz的普通电视信号数字化后,其数码率将高达167Mbps,对储存器容量要求很大,占有的带宽将达80MHz左右,这 样将使数字信号失去实用价值。数字压缩技术很好地解决了上述困难,压缩后信号所占用的频带大大低于原模拟信号的频带。因此说,数字压缩编码技术是使数字信号走向实用化的关键技术之一,表4-1列出了各种应用的码率。
表4-1 各种应用的码率 | |||||||
应用种类 | 比特数/象素 | 象素数/行 | 行数/帧 | 帧数/秒 | 亮色比 | 比特/秒(压缩前) | 比特/秒(压缩后) |
HDTV | 8 | 1920 | 1080 | 30 | 4:1:1 | 1.18Gbps | 20~25Mbps |
普通电视CCIR601 | 8 | 720 | 480 | 30 | 4:1:1 | 167Mbps | 4~8Mbps |
会议电视CIF | 8 | 352 | 288 | 30 | 4:1:1 | 36.5Mbps | 1.5~2Mbps |
桌上电视QCF | 8 | 176 | 144 | 30 | 4:1:1 | 9.1Mbps | 128kbps |
电视电话 | 8 | 128 | 112 | 30 | 4:1:1 | 5.2Mbps | 56kbps |
有线电视网中数字压缩技术主要包括用于会议电视系统的H.261压缩编码,用于计算机静止图像压缩的JPEG和用于活动图像压缩的MPEG数字压缩技术。
2 图像压缩编码的可能性
从信息论观点来看,图像作为一个信源,描述信源的数据 是信息量(信源熵)和信息冗余量之和。信息冗余量有许多种,如空间冗余,时间冗余,结构冗余,知识冗余,视觉冗余等,数据压缩实质上是减少这些冗余量。可见冗余量减少可以减少数据量而不减少信源的信息量。从数学上讲,图像可以看作一个多维函数,压缩描述这个函数的数据量实质是减少其相关性。另外在一些情况下,允许图像有一定的失真,而并不妨碍图像的实际应用,那么数据量压缩的可能性就更大了。
3 图像压缩编码方法的分类
编码压缩方法有许多种,从不同的角度出发有不同的分类方法,比如从信息论角度出发可分 为两大类:
(1)冗余度压缩方法,也称无损压缩,信息保持编码或熵编码。具体讲就是解码图像和压缩 编码前的图像严格相同,没有失真,从数学上讲是一种可逆运算。
(2)信息量压缩方法,也称有损压缩,失真度编码或熵压缩编码。也就是讲解码图像和原始图像是有差别的,允许有一定的失真。
应用在多媒体中的图像压缩编码方法,从压缩编码算法原理上可以分类为:
(1)无损压缩编码种类
·哈夫曼编码
·算术编码
·行程编码
·Lempel zev编码
(2)有损压缩编码种类
·预测编码:DPCM,运动补偿
·频率域方法:正文变换编码(如DCT),子带编码
·空间域方法:统计分块编码
·模型方法:分形编码,模型基编码
·基于重要性:滤波,子采样,比特分配,矢量量化
(3)混合编码
·JBIG,H261,JPEG,MPEG等技术标准
衡量一个压缩编码方法优劣的重要指标是:
(1)压缩比要高,有几倍、几十倍,也有几百乃至几千倍;
(2)压缩与解压缩要快,算法要简单,硬件实现容易;
(3)解压缩的图像质量要好。
最后要说明的是选用编码方法时一定要考虑图像信源本身的统计特征;多媒体系统(硬件和 软件产品)的适应能力;应用环境以及技术标准。
4 压缩编码方法简介
压缩编码的方法有几十种之多,并在编码过程中涉及较深的的数学里理论基础问题,在此仅介绍 几种常用的压缩编码方法,主要是从物理意义上作一定的解释,读者如对数据压缩专题感兴趣的话,请参看讲座结束后所附的参考资料。
4.1 莫尔斯码与信源编码
莫尔斯码即电报码,其精华之处在于用短码来表示常出现的英文字母,用长码来表示不常出 现的字母,以减小码率。这种方法非常有效,故延用至今。电视信号经过变换后,例如经差值脉冲编码后,发现前后像素幅度差值小的概率大,而差值大的概率小,因此可用短码表示概率大的信号,而用长码来代表概率小的信号,从而达到压缩码率的目的。
4.2 差值脉冲编码
电视图像基本上是由面积较大的像块(如蓝天、大地、服装等)组成。虽然每个像块的幅值各不相同,但像块内各样值的幅度是相近的或相同的,幅值跃变部分相应于像块的轮廓,只占整幅图像的很小一部分。帧间相同的概率就更大了,静止图像相邻帧间的相应位置的像素完全一样,这意味着前后像素之差或前后帧间相应位置像素之差为零或差值小的概率大,差值 大的概率小。这就是差值编码的基本想法,其原理框图见图4-1(a)。发端将当前样值和前一 样值相减所得差值经量化后进行传输,收端将收到的差值与前一个样值相加得到当前样值。在这个原理图中,输出的当前样值是输出的前一样值加上收到的差值,由于在当前差值中包 括当前的量化误差,而输出的前一样值又包括前一样值的量化误差,这就造成了量化误差的积累。因此实用电路为图4-1(b)。这时输入当前样值不是与输入的前一样值相减,而是与输 出的前一样值相减,因此在差值中已经包含了前一样值的量化误差的负值,在与输出的前一 个样值相加时,这部分量化误差被抵消,只剩下当前的量化误差,这就避免了量化误差的积累。
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
4.3 预测编码
预测编码利用像素的相关性,可进一步减小差值。
从前面的分析可以看出,如果差值编码中小幅度出现的机会增加,由于其对应的码长较短, 总数码率会进一步减小。如果能猜出下一个样值,那么差值就会是零,当然这种情况是没有意义的,因为若预先知道下一样值,就不需要进行通信了。但可以肯定,如果我们不仅利用 前后样值的相关性,同时也利用其它行、其它帧的像素的相关性,用更接近当前样值的预测值与当前样值相减,小幅度差值就会增加,总数码率就会减小,这就是预测编码的方法。预 测编码的电路与差值编码类似,或者说差值编码就是以前一样值为预测值的预测编码,又称为一维预测。如果用到以前行的像素或以前帧的像素,则称为二维或三维预测。在美国国际电话电报公司(ITT)生产的数字电视机芯片中有一个视频存储控制器芯片VMC2260就用了二维预测编码,预测器用了三个像素作为下一个像素的预测值,即预测值等于1/2前一像素加1/4 上一行相应像素再加上1/4上一行相应的前一像素。这样不仅利用了前一像素的相关性,也利用了上一行相应像素的相关性,这样做要比差值编码有更大的码率压缩。如果再用上前一 帧的像素会进一步降低数码率。但为了得到前一帧的像素必须要使用帧存储器,造价比较高。只用到帧内像素的处理称为帧编码(Intraframe Coding),用到前后帧像素的处理称为帧 间编码(Interframe Coding)。要得到较大的码率压缩就必须使用帧间编码。JPEG是典型的帧内编码方案,而MPEG是帧间编码方法。前者大多用于静止图像处理,而后者主要用于对运 动图像的处理。
4.4 哈达玛特变换
这是一种有效地去除噪波的方法,噪波的存在往往容易和小幅度变化的信号相混淆,利用多帧平均的方法,对于静止图像,各帧相同,平均的结果其值不变,对于噪波,多帧平均趋于零。
但如果图像中有运动,多帧平均就会造成运动模糊,故不能简单地进行平均,需要根据运动的大小来调节反馈量,即调节平均的程度,做到运动自适应降噪。
大多数情况下是利用帧差信号来判断图像中是否有运动,如果帧差小于一定值,就可视为是因噪波引起的,可取较大的反馈量;如果帧差大于一定值,就可视为图像中有运动。
但在许多情况下,仅从幅度的大小来判断是杂波还是图像是很困难的,如移动的云,近摄的 绿草地等图像信号所得到帧差信号也很小,所以BKU-904采用二维哈达玛特变换(Hadamard Transform)来区分是噪波还是图像信号。先将输入值按4×2分成小块,分别进行实时快速哈 达玛特变换(FHT)。
图像经变换后,转换成相应成分的系数,这些系数分别代表直流分量;水平方向细节和色度 分量等;垂直方向细节;斜方向细节及色度分量等,而噪波变换后均匀散在各系数中。这样就更有效地区分出信号和噪波,从而达到更有效地进行自适应降噪的目的。
4.5 离散余弦变换
离散余弦变换(Discrete cosine Transform)简称DCT。任何连续的实对称函数的傅里叶变换 中只含余弦项,因此余弦变换与傅里叶变换一样有明确 的物理量意义。DCT是先将整体图像分成N×N像素块,然后对N×N像素块逐一进行DCT变换。 由于 大多数图像的高频分量较小,相应于图像高频成分的系数经常为零,加上人眼对高频成分的失真不太敏感,所以可用更粗的量化,因此传送变换系数所用的数码率要大大小于传送图像 像素所用的数码率。到达接收端后再通过反离散余弦变换回到样值,虽然会有一定的失真,但人眼是可以接受的。
N代表像素数,一般N=8,8×8的二维数据块经DCT后变成8×8个变换系数,这些系数都 有 明确的物理意义:U代表水平像素号,V代表垂直像素号。如当U=0,V=0时,F(0,0)是原 64个 样值的平均,相当于直流分量,随着U、V值增加,相应系数分别代表逐步增加的水平空间频 率分量和垂直空间频率分量的大小。
4.6 量化(Q)
严格说DCT本身并不能进行码率压缩,因为64个样值仍然得到64个系数,如图4-2所示。这里 给出了一个8×8像块的具体例子,经DCT变换后,比特数增加了。在这个例子中样值是8比特 ,从0~225得到的即直流分量的最大值是原来256的64/8倍,即0~2047,交流分 量的范围是-1024~1023。只是在经过量化后,特别是按人眼的生理特征对低频分量和高频分 量设置不同的量化,会使大多数高频分量的系数变为零。一般说来,人眼对低频分量比较敏感,而对高频分量不太敏感。因此对低频分量采用较细的量化,而对高频分量采用较粗的量 化。
所谓量化,即根据不同的要求,设置不同的量化等级,从而降低数码率。
4.7 游程长度编码
读出数据和表示数据的方式也是减少码率的一个重要因素。读出的方式可以有多种选择 ,如 水平逐行读出、垂直逐列读出、之字型读出和交替读出等,其中之字型读出(Zig-Zag) 是最常用的一种。由于经DCT变换以后,系数大多数集中在左上角,即低频分量区,因此之 字型读出实际上是按二维频率的高低顺序读出系数的,这样一来就为游程长度编码(Runleng th Encoding)创造了条件。所谓游程长度编码是指一个码可同时表示码的值和前面几个零, 这样就可以把之字型读出的优点显示出来了。因为之字型读出在大多数情况下出现连零的机会比较多,尤其在最后,如果都是零,在读到最后一个数后只要给出“块结束”(EOB)码,就可以结束输出,因此节省了很多码率。
游程长度指的是由字构成的数据流中各个字符连续重复出现而形成字符串的长度。 基本的游程编码就是在数据流中直接用三个字符来给出上述三种信息,其数据结构如图4-3 所示。
SC表示有一个字符串在此位置,X代表构成串的字符,CC代表串的长度。
游程编码和哈夫曼编码等属于统计编码。
4.8 霍夫曼编码
霍夫曼编码是可变字长编码(VLC)的一种。 Huffman于1952年提出一种编码方法,该方法完全依据字符出现概率来构造异字头的平均长度最短的码字,有时称之为最佳编码,一般就叫作Huffman编码。下面引证一个定理,该定 理保证了按字符出现概率分配码长,可使平均码长最短。
定理:在变字长编码中,如果码字长度严格按照对应符号出现的概率大小逆序排列,则其平 均码字长度为最小。
现在通过一个实例来说明上述定理的实现过程。设将信源符号按出现的概率大小顺序排列为 :
U: | ( | a1 | a2 | a3 | a4 | a5 | a6 | a7 | ) |
0.20 | 0.19 | 0.18 | 0.17 | 0.15 | 0.10 | 0.01 |
给概率最小的两个符号a6与a7分别指定为“1”与“0”,然后将它们的概率相加再与原来的 a1~a5组合并重新排序成新的原为:
U′: | ( | a1 | a2 | a3 | a4 | a5 | a6′ | ) |
0.20 | 0.19 | 0.18 | 0.17 | 0.15 | 0.11 |
对a5与a′6分别指定“<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />1”与“0”后,再作概率相加并重新按概率排序得
U″:(0.26 0.20 0.19 0.18 0.17)…
直到最后得 U″″:(0.61 0.39)
分别给以“0”,“1”为止,如图4-4所示。}
霍夫曼编码的具体方法:先按出现的概率大小排队,把两个最小的概率相加,作为新的概率 和剩余的概率重新排队,再把最小的两个概率相加,再重新排队,直到最后变成1。每次相 加时都将“0”和“1”赋与相加的两个概率,读出时由该符号开始一直走到最后的“1”, 将路线上所遇到的“0”和“1”按最低位到最高位的顺序排好,就是该符号的霍夫曼编码。
例如a7从左至右,由U至U″″,其码字为0000;
a6按践线将所遇到的“0”和“1”按最低位到最高位的顺序排好,其码字为0001…
用霍夫曼编码所得的平均比特率为:Σ码长×出现概率
上例为: 0.2×2+0.19×2+0.18×3+0.17×3+0.15×3+0.1×4+0.01×4=2.72 bit
可以算出本例的信源熵为2.61bit,二者已经是很接近了。
4.9 运动估计的运动补偿编码
这是一种帧间编码的方法,其原理是利用帧间的空间相关性,减小空间冗余度。 帧间编码为什么可以减小冗余度,这是因为两帧之间有很大的相似性。如果将前后两帧相减 (移动物体作相应位移)得到的误差作编码所需比特要比帧内编码所需的比特少,帧间差集中在零附近,可以用短的码字传送。
实现帧间编码的方法是运动估计和运动补偿。用图4-5来说明这个过程。
当前帧在过去帧的窗口中寻找匹配部分,从中找到运动矢量;
根据运动矢量,将过去帧位移,求得对当前帧的估计;
将这个估计和当前帧相减,求得估计的误差值;
将运动矢量和估计的误差值送到接收端去。
接收端根据收到的运动矢量将过去帧作位移(也就是对当前帧的估计),再加上接收到的误差 值,就是当前帧了。
图4-7 运动估计的全局搜索块匹配实际上,在做运动估计和运动补偿时,是以16×16的块(称宏块)逐个进行的,如图4-6所示,这是将当前帧划分为N×N(16×16)的块。对每一块在过去帧中范围为的范围内进行搜索,以求得最优匹配,从而得到运动矢量的估值(dx,dy)。衡量匹配好坏 的准则可以是均方误差最小准则。搜索方法可以是全局搜索法,即对搜索范围内的每一点都 计算均方误差,选最小值即对应最优匹配,如图4-7所示。
5 JPEG标准
JPEG是Joint Photographic Experts Group的缩写,主要用于计算机静止图像的压缩,在用于活动图像时,其算法仅限于帧内,便于编辑。
采用JPEG标准可以得到不同压缩比的图像,在使图像质量得到保证的情况下,可以从每个像 素24bit减到每个像素1bit甚至更小。
JPEG标准所根据的算法是基于DCT(离散余弦变换)和可变长编码。系统框图如图4-8所示, 从图中可见,JPEG的关键技术有变换编码、量化、差分编码、运动补偿、霍夫曼编码和游程编码等。
图4-8 JPEG系统框图 6 H.261标准 JPEG算法的原理是利用单帧内的空间相关性,减小空间冗余度,这种方式称为帧内编码。我 们知道电视图像(包括各种活动图像)各个连续帧之间也有很大的相关性,称为时间相关性。
为了进一步提高图像压缩比,要设法减小时间冗余度,这种编码方式称为帧间编码。H.261 是用于会议电视的国际标准,既采用了帧内编码,又采用了帧间编码,因此它的压缩比大致 是JPEG的三倍。 H.261标准用于音象业务的码率是p×64kbps(p=1,2…,30)。用于电视电话时p=1或2,用 于电视会议时p≥6。这种标准具有最小延迟实时对话的能力。
图4-9是H.261编码器的原理框图。从编码器中看到,它有一个和解码器一样的过程,解出的图像放在运动补偿 预测器(存储器)中形成过去帧,它的输出和当前帧一起加到“运动估计”,求得的运动矢 量一方面经VLC送到复用器中去,另一方面加到运动补偿预测器中,使之产生估计帧(对当前 帧),它和当前帧相减即求得差值,这个差值经DCT和Q、VLC也送到复用器中去。
图4-9 H.261编码器的原理框图 在进行帧间编码时,编码器和解码器必须使用相同的预测器,否则两者会脱轨。为了获得重 建图像,被量化以后的系数要用一个反量化器和反余弦变换(IDCT)来处理,为防止编码器和 解码器慢慢漂移分离,必须对误差的平均值加以严格规定,即使如此,仍然要周期地使用帧 内编码,使解码器处于一个已知状态。
运动补偿单元使帧间差最小,从而减少所需传输码率。搜索窗的大小在水平和垂直方向上都是±15个采样值。通常只对亮度信号作运动估计,但运动补偿不仅作用于亮度,也作用于色 度(亮度象素位移的一半)。
图4-10画出了解码器的框图。被压缩的数据送入缓冲器,然后作可变长度解码,解码器余下的 部分相似于编码器的后端,仅有的区别是不再需要运动估计。运动矢量和其它附带的信息是 直接从可变长解码器的输出得到的。
在编码器的输出端有缓冲器(Buffer),这是因为编码过程产生的比特率不是 恒定的,它取决于运动序列中各点的图像统计特征。在图像的“简单”部分允许节省一些比 特,而在“复杂”的部分要多花一些比特。对于每一个编码图像,比特的数目也允许变更。 但是在传输网络中的数据的比特率又必须是恒定的,所以在视频编码器的输出端必须有数据缓冲器来提供平滑的作用。相反的,在解码器要以非恒定的速率来利用接收到的信息,所以 也要包含一个解码器的缓冲器。 图4-10 H.261的解码器框图 在传输中,帧频的长期平均值是CIF的标准值,但是在短的时间间隔内帧频会有一定变化。
表4-2 CIF和QCIF格式 | ||||
格 式 | CIF | QCIF | ||
信号分量 | 行数/帧 | 象素数/行 | 行数/帧 | 象素数/行 |
亮度(Y) | 288 | 360(352) | 144 | 180(176) |
色度(Cb) | 144 | 180(176) | 72 | 90(88) |
色度(Cr) | 144 | 180(176) | 72 | 90(88) |
注:CIF和QCIF帧频是每秒30帧。
H.261的一幅图像是由块(Block)组成宏块(Macroblock),宏块组成图像组(GO B),图像组组 成图像,如图4-11所示。 两种格式的码率为:CIF:15~2Mbps QCIF:128kbps 7 MPEG- 1和MPEG-2标准 MPEG(Moving Picture Expert Group)意思是“运动图像专家组”。这个专家组的任务 是为了对数字存储媒质、电视广播、通信等方面的运动图像和伴音给出一种通用的编码 方法 。符合这种编码方法的运 MPEG用句法规定了一个层次性的结构,共分六层。这六层是图像序列(Video Sequence)-图像组(Group of Picture)-图像(Picture)-宏块条(Silce)- 宏块(Macroblock )-块(Block)。 一个图像包含亮度阵列和色度阵列。在MPEG- 1中亮度和色度的格式是4∶2∶0,而在MPEG-2 中,除这一格式外,还允许有4∶2∶2及4∶4∶4。
六个层次有其不同的功能,如表4-3所示。
表4-3 MPEG-1/-2规定的层次功能 | |||
语法规定的层次 | 功 能 | 语法规定的层次 | 功 能 |
序列层(Sequence layer) | 随机存取段落 | 宏块条层(Slice layer) | 重新同步单元 |
图像组层(Group of picture layer) | 随机存取视频单元 | 宏块层(Macroblock layer) | 运动补偿单元 |
图像层(Picture layer) | 基本编码单元 | 块层(Block layer) | DCT单元 |
所谓4∶2∶0是指在垂直方向每隔一行去除一行色度信号。
7.2 MPEG-1和MPEG-2中三种类型图像
MPEG在利用块匹配运动补偿来减小时间冗余度时,不仅用上一帧的图像预测当前图像, 而且也使用下一帧图像预测当前图像,即双向预测,这是和H.261标准有重要区别的地方。 因此 ,MPEG-1和2中有三种类型图像,即I、B、P三种,如图4-12所示。
I帧是帧内编码,P帧是正向预测,如图4-13所示,通过正向预测得到的图。B帧是双向预测图 ,如图4-14所示。由于B帧不能作其他图像的基准,所以对B帧编码校粗(步长较大),需要比特数比预测图P少。
7.3 MPEG- 1的视频压缩编码
MPEG-1中视频编码的关键压缩技术和H.261一样,仍是DCT、运动补偿和Huffman编码。编码 器和解码器的原理框图也和H.261没有区别。
MPEG-1的信源输入格式是SIF(Source Input Format)。CCIR601格式的信源要转换成SIF后进入MPEG- 1编码器,解码器输出也是SIF格式,显示时要经内插,扩充为CCIR601格式。PAL/NT SC都作如此处理。SIF格式如表4-4所示。
表4-4 SIF(525/625)格式 | ||
信号分量 | 行数/帧 | 象素数/行 |
亮度(Y) | 240/288 | 352 |
色度(Cb) | 120/144 | 176 |
色度(Cr) | 120/144 | 176 |
图4-15所示为MPEG-1视频编码器。图中和H.261不同的部分是有二组运动补偿和存储器,并有相应的转换开关。这是因为MPEG- 1有B图像要处理。开关有4种状态,‘0’是针对帧内 编码,“2”或“3”是用上一帧图像(经S2的虚线a/c)或用下一帧图像(经S2的实线 d/b) ,“4”是用了上一帧和下一帧两幅图像(经S2的实线b和实线c),这时候要相应产生2 个运 动矢量。
7.4 MPEG- 2视频压缩编码
研究制定MPEG标准是为了使应用于数字存储媒体、电视广播、通信等方面的运动图像和伴音 有一种通用的编码方法。使用这个标准意味着运动图像可以作为一种计算机数据来处理 ,并且能够存储在各种各样的存储器中,也可以在现有的或未来的网络中传送和接收,还可以在现在的或将来的广播信道中广播。
这个标准的应用很广泛,覆盖了从电视电话到高清晰度电视。
(1)划分为不同的“Profile”和“Level”(“类”和“级”)。由于想使这个标准适用于各种不同的应用,而各种应用在码率、分辨力、图像质量和服务方面要求又各不相同,所以希望这个标准要有通用性。在这个标准产生的过程中,考虑了各种应用的不同要求,开发了必要的算法,并且把它们集中成为一种单一的句法。正因为如此,这个标准使得各种不同应用的码 流之间可以灵活地相互改变。
既要使句法有通用性,又不能要求具体的解码器全面满足整个句法的需要,那样具体的解码器就太复杂了。为了解决通用性和特殊性的矛盾,设想将整个ISO/IEC的句法分成子集,这样分的子集就称为Profile,我们称之为“类”。这个“类”规定的子集还觉得太大,有必要再分得细一些。例如图像的尽寸有小的,有大的,大的可大到,实际上不会有一个解码器能够处理这么大的动态范围的图像,因此,在Profile中又规定了“level”,称为级。
ISO/IEC13818-2(即MPEG-2视频)规定了5个类和4个级如表4-5所示。
表4-5 MPEG- 2的Profile和Level | |||||
类级 | Simple Profile | Main Profile | SNR Scalable Profile | Spstially Scalable Profile | High Profile |
High Level |
| √ |
|
| √ |
High-1440 Level |
| √ |
| √ | √ |
Main Level | √ | √ | √ |
| √ |
Low Level |
| √ | √ |
|
|
注:Main Profile(主类):图像质量合乎一定要求,允许有一定损伤,不具有可分级性;
Simple Profile (简化类):如Main Profile相同,只是不用B帧,这是为了节约RAM;
SNR Scalable Profile(信噪比可选类):比Main Profile改进之处是信噪比可分级;
Spatially Scalable Profile(空间尺寸可选类):空间分辨率方面也可分级;
HIgh Profile(高质量类):支持4∶2∶2并全面可分级(宏块的组成是:4个Y块+2个Cb块 +2个Cr块);
Low Level(低级):类似H.261中的CIF格式;
Wain Level(主级):相应于普通电视;
High 1440 Level(高1440级):大致相当于具有每行1440个采样的HDTV;
High Level(高级):大致相当于每行1920个采样的HDTV。
MPEG-2格式经常用级和类的缩写表示,如:MP@ML是指主类和主级,目前用于普通数字电视 、卫星、电缆、广播的DVB标准就是用这一格式。
(2)MPEG-2的编解码器和MPEG-1的异同。
①MPEG-1只处理逐行扫描的电视图像而MPEG-2既处理逐行扫描也处理隔行扫描,因此编码器中要有场/帧决策的功能;
②DCT有二种: 帧DCT或场DCT;
③运动估计有四种:场预测、帧预测、双场预测和16×8的运动补偿;
④压缩编码方式均采用运动检测补偿、DCT、量化、霍夫曼编码、游程编码和VLC等。
7.5 MPEG-2系统
MPEG-2系统的作用如图4-16所示。它有以下几个任务:
(1)对音频、视频、数据、控制等基本比特流起系统复用的作用。
(2)提供用于恢复时间基准的时间标志,缓冲器初始化和管理,音频和视频的解码时间,显示时间。
(3)给解码器提供一种信息(PSI),使之更容易和更迅速地找到所需节目。
(4)给误差恢复,有条件接入,随机接入,数字存储控制提供支持。
视频或音频编码器的输出被打成PES(Packetised Elementary Streanis),然后在PS复用器中被组合成PS(Program Stream)或在TS复用器中被组成成TS(Transport Strea m),前者用于相对无误差的环境,后者用于有噪声媒质。
文章评论(0条评论)
登录后参与讨论