数字视频编码技术论文(2)
数字视频编码技术论文
数字视频编码技术论文篇二
视频编码中熵编码的关键技术分析
摘要:随着通信科技与网络信息技术的高速发展,音频信息量与日俱增,海量的音频信息也为宽带传送、音频信息储存空间等带来了一定压力,而压缩编码正是缓解这一问题的有效途径之一。自上世纪末期起,主流的视频编码都采取以块结构的编码框架,并综合运用如预测编码、熵编码等技术实现编码压缩。本文就以其中的熵编码作为研究中心,对视频编码中熵编码的基本原理及关键编码技术展开分析。
关键词:视频编码 熵编码 编码 原理
中图分类号:TN919 文献标识码:A 文章编号:1007-9416(2015)12-0000-00
熵编码是视频编码中的最后一个步骤,视频系列经预测和变换后会存在一定的统计冗余,而采用熵编码技术的主要目的正是减少这些冗余。常见的熵编码关键技术主要可分为编程编码与算术编码等类型,以下本文就以视频编码中的熵编码作为论述中心,对视频编码中熵编码的基本原理及关键编码技术进行重点分析,具体如下。
1 熵编码基本原理概述
熵编码是视谱编码中的最后一个步骤,主要是将包括图像、文本、音频等数据等信息根据相应的转换原理及公式转换成一系列符号,并尽可能以最少的比特数进行表述[1]。其转换原理主要是将编码中出现频率多的符号对应分配上较短码字,而出现几率小的符号则分配较长码字。只要各符号出现几率不相同,就可通过此种方式进行数据压缩。进行熵编码之前需要对某个视频信息语法元素中的符号集,并通过符号集获取可能出现的符号以及各个符号的发生几率,最终确定这段视频信息语法元素的熵,在根据信号源编码的编码原理实现编码操作。
2 熵编码的常用编码技术
2.1 变长编码
变长编码主要是将视频符号转换为不同长度的码字,是一种基本的熵编码技术。主要是根据符号可能出现的几率进行码字分配。所分配的码字长短和符号出现几率成反比[2]。变长编码有一定的局限,这一局限主要是码长必须是整数,即使实际码长小于1,也应最少用1比特码长进行编码。如果符号发生几率超过50%,那么这与符号的信息量将不足1,而采取1比特进行编码,就违背尽可能减少比特数的编制原则,造成浪费。此外由因长度只能是整数,如果变长编码中的各符号发生几率相近,那么编码工作效率也会随之受到影响,从而起不到高效的熵编码效果。
2.2 算术编码
算数编码的基本原理。算数编码是变长编码这种基础的熵编码技术的改进,此种熵编码技术中的码长可以为非整数,主要操作原理是将信息源符号转换为比特流,这一转换过程需要借助包括加、乘的公式计算,因此又称作算数编码[3]。此种熵编码技术虽然能够实现非整数,从而实现几乎无失真且最大化减少比特数,但此种编码技术与常规熵编码相比要复杂的多,但随着算法的不断完善,加上相关技术的不断发展,使得此种编码技术越来越成熟,并得到了更为广泛的应用。如H.264采用的上下文自适应算术编码技术等,在实践中都发挥着良好的应用效果。
2.3 基于上下文的自适应二进制算数编码
此种编码又称为CABAC编码,H.264即使采用此种熵编码技术,该技术是较为先进、成熟,其基本流程主要分为三个步骤,分别是二进制化――上下建模――算术解码。
首先将源信息语法元素进行二进制排列,每位二进制数作为一个bin,如果源信息的语法元素就是二进制,则可直接进行建模与解码。根据二进制转换结果,以及对每个bin进行概率模型的构建,最后将bin及其模型输入到算数解码其中,进行二进制解码。
3 熵编码中的关键码字结构
3.1 Huffman码
在对信息源符号集中各符号出现几率分布情况有一定了解的情况下,以Huffman码作为变长异字头二元码是最佳选择。变长编码整数比特的表述方式下,以Huffman码进行转换,能够使转换后的码长均值相对较短。
Huffman码的基本结构是通过一系列最小冗余进行假设求证所推算出来的。以公式表达Huffman,信号源假设为:
但考虑到只能为整数比特数,即比特数小于1也用1来表述,所以将最后两个符号合并表示,即得到辅助信源:
假设其中
得出辅助信号源后,将其根据Pk’的大小差异进行重新排列,并将出现几率最小的符号码字分别以0和1表述,再将小于1即0比特的一项和1合并,之后再重构新的辅助信息源。以此方法不断重复循环,一直到将辅助信号源压缩至只有两个元素。之后连接原先信息符号和其在辅助信息源中对应的1以及0,最后得到各个符号相对应的码字[4]。总体来说,虽然此种编码是目前最佳的可译二源码,但其不规则的码字结构使其算法变得相对繁复。
3.2 指数哥伦布码
指数哥伦布码(简称EG码)是熵编码技术中的一种固定结构的码字形式,结构简单,这也使得其算法更加简易。以H.264采用的0阶EG码为例,其固定结构形式为:[M zeros][1][info],其中前缀部分表示M个0比特,之后是1个比特1,最后的info代表信息部分,长度与前缀相同。
此种编码的解码过程为,先读入前缀与前后之后的1,根据的前缀明确信息的长度,之后在这一长度范围解读后面的信息INFO内容。
4 结语
熵编码主要是将包括图像、文本、音频等数据等信息根据相应的转换原理及公式转换成一系列符号,并尽可能以最少的比特数进行表述,是视谱编码的重要步骤。综上所述,本文首先对熵编码的基本原理进行阐述,之后对其中的变长编码、算术编码等编码技术及关键码字结构展开分析,希望能为相关人士提供些许参考。
参考文献
[1]路伟,余宁梅,南江涵,王冬芳.并行可配置的HEVC熵编码的VLSI结构[J].计算机工程与应用,2014,03:121-124+144.
[2]邸金红,张克新,祁跻,张鑫明.基于Syntax级分组和多线程处理的HEVC熵编码并行算法[J].电讯技术,2014,10:1435-1440.
[3]李恒忠,崔建明,郭勇,李洪强.基于HEVC视频标准的熵编码过程[J].电脑知识与技术,2013,14:3356-3359+3365.
看了“数字视频编码技术论文”的人还看:
1.数字电视技术论文
4.数字媒体技术论文
5.视频监控技术论文