硬件编解码

2024-06-25

硬件编解码(共7篇)

硬件编解码 篇1

三门峡公共频道2个频道全数字硬盘播出系统是在原来2频道模拟硬盘播出系统上升级改造而成的, 为了提高播出系统的稳定性、安全性, 把原模硬盘播出系统改造成2频道备播系统。新系统在前期挑选厂商设备时, 进行了各方面的比较, 主要在核心设备播出服务器的选择上出现分歧, 是选择硬编解码播出服务器还是选择软编解码播出服务器, 工程技术人员中出现不同意见, 我们为此查阅大量关于软硬件编解码播出服务器方面的资料, 并到应用不同编码播出服务器设备的电视台进行实地考察比较, 最后经过专家组讨论确定应用采用美国STRADIS280E硬件编解码卡的硬编解码播出服务器银河500。新播出系统经过几个月的运行调试已安全稳定。原播出系统用的是软编解码服务器, 新播出系统用硬编解码播出服务器, 新旧两个播出系统同步播出, 经过一段时间的运行比较总结了一些软硬件编解码播出服务器的区别、优劣特点等。

一、软硬件编解码播出服务器概述

1.硬件编解码服务器是基于IT网络架构的视频服务器, 它拥有独立的音频视频编解码模块, 支持热插拔, 基于嵌入式操作系统, 支持光纤及1394等各类型接口。硬件编解码方式, 在播出过程中很多的工作通过硬件编解码卡来完成, 如:播出数据的输入输出、播出数据的编码/解码等等。可以说80%以上的工作都是由硬件编解码卡来完成的, 因此对计算机平台特别是CUP、内存的依赖性就非常小, 在实际播出状态下, 系统资源占用率在5%以下。硬件编解这种占资源比较小的特性, 使得目前的多通道服务器都采用这种形式。

2.软件编解码服务器是采用高性能IT设备, 采用CPU+GPU+I/O的软解码形式, 由于I/O卡只承担一个接口的作用, 所有的运算都压在CPU和内存上, 在实际播出过程中资源占用率可以达到40%甚至更高, 但随着计算机的飞速发展, CPU/GPU性能得到显著提高, 编解码的可靠性及高效性得到充分体现。

二、软硬件编解码播出服务器区别

硬件编解码服务器的优点:1.基于硬件的编解码, 可靠性高, 它在解码过程中工作比较平稳, 极少会出现解码不完全出现马赛克的现象;2.基于嵌入式系统, 启动快速, 无须开启等待延时;3.在防御病毒和开启速度较快的方面也很像IT以太网络中的交换机, 断电复位和恢复都比较方便;4.几乎不存在内存泄露等问题;5.多任务实时性有保障。

软件编解码服务器的优点:1.编解码支持灵活, 仅需通过软件升级;2.设备基础硬件升级灵活, 无须定制、采购高性能IT设备即可, 性价比较高;3.随着计算机的飞速发展, CPU/GPU性能的显著提高, 编解码的可靠性及高效性得到充分体现。

同时两者也各有所短, 硬件编解码服务器有如下几个缺点:1.受主板槽位数限制, 单双通道数目有限;2.添加或者升级硬件, 必需打开机盖, 还需停机才能进行此类的操作;3.产品升级扩展受硬件影响大, 更新换代投入较高。

软件编解码服务器缺点:1.受限制于操作系统, 多任务实时性有待提高;2.存在内存泄露的风险;3.可能会出现解码不完全出现马赛克的现象;4.病毒入侵或出现其他异场现象时, 资源占用率急剧升高, 计算机反应比较慢的时候, 出现播出停顿不流畅现象。

三、软硬件编解码播出服务器互备异构模式优劣探讨

通过软硬件编解码播出服务器相互比较, 毋庸置疑, 无论选择哪一种类型的服务器, 都有它们的长处与短处。倘若能够结合两者优势做到1+1>2, 那么将给系统的设计实现带来很大好处。三门峡公共频道2频道硬盘播出系统就是在主播/备播的模式上加入了三备 (第三备份) 机制, 以主备播采用了硬件播出服务器互备的方式, 三备采用软编解码播出服务器 (旧播出服务器) 的输出, 播出时同时监控主/备/三备三路信号的输出, 当任何一路信号出现故障, 都可以快速地发现并予以解决, 在保证安全性的同时, 降低了系统的投入, 在播出过程中也得到了很好的反馈。经过几个月的运行, 软硬件编解码播出服务器的互备异构模式在实际应用中所展现出来的优势如下:

1.由于采用完全不同的编解码方式, 对于同一输入信号, 在监控主备两路输出信号的基础上, 可以很好地保证其预期输出, 更好地减少主备播同时掉线的潜在危险。

2.当出现特殊需求时, 例如需要添加视频编解码格式支持时, 可以在保证系统不下线的情况下实现安全升级。通常的做法是, 利用软件升级以保证软件编解码播出服务器达到新需求, 然后进行主备切换后, 如果要是对硬件编解码服务器进行升级, 可能需要更换硬件重置系统。这样便可以方便快捷地实现无缝的升级支持, 缩短了升级的时间并且简化了升级的流程。

3.由于软件编解码播出服务器对视频编解码格式支持的灵活性较高, 使用软件编解码服务器就可以在很大程度上扩展播出系统的使用范围, 播出系统将不再需要苛求视频信号源的编码格式。同时也可以通过软件编解码服务器对信号进行编解码, 以便在不更换硬件编解码服务器板卡/系统的前提下实现多格式视频支持。

与此同时在试运行期间, 软硬件编解码播出服务器互备的应用也遇到了一个很棘手的标准化问题。由于采用了软硬件编解码播出服务器作为互备, 两家编解码服务器厂商文件格式的使用方式又有一定的区别, 这种区别直接导致了第三方软件在控制两种编解码服务器时产生了不同的输出, 有时也可能出现同步问题。在实际应用中, 不可避免会遇到这样或那样的问题, 只有高效地解决好这些问题, 才能够做到资源优势的互补。

总之, 这种软硬件编解码播出服务器互备模式, 也是现在许多播出设备厂商提出的播出系统异构模式。如中科大洋提出的视频服务器异构应用模式分主备视频服务器异构和主备一致, 第三备份视频服务器异构两种模式。三门峡公共频道2频道硬盘播出系统就是主备一致, 第三备份视频服务器异构模式。这种播出系统异构模式就是从播出安全角度出发, 核心设备采用不同厂家产品, 以适配播出系统对内和对外的各类业务需求的一种设计模式。从概率上分析, 异构模式可以防止设备同时进入故障高发期, 防止因主备设备同时出现故障而陷入困境, 而且目前的播出系统除了传统的视音频设备外, 多数核心硬件设备都是软硬件的结合体, 从软硬件结合的系统级角度考虑, 异构更具实际意义。

参考文献

[1]中国广播电视出版社《电视网络制播技术》徐威主编[1]中国广播电视出版社《电视网络制播技术》徐威主编

硬件编解码 篇2

AVS(Audio Video Coding Standard)是《信息技术先进音视频编码》系列标准的简称,是基于中国创新技术和部分公开技术的自主标准[1]。标准中采用了最新的编码技术,在视频编码性能上比MPEG-2标准高出2倍以上,与H.264标准相当,但是所采用的编码算法的复杂度则明显低于H.264标准。

AVS视频解码器的解码过程如图1所示。先进行码流分割,然后进行熵解码、反量化和反DCT变换,得出所需要的残差矩阵。码流分割出的其他码流进行帧内或者帧间预测,通过参考帧预测出预测矩阵,之后把预测矩阵和残差矩阵相加,得到解码矩阵,经过环路滤波之后得到最终的解码宏块和解码帧。

在解码器结构中,输入码流首先要进行码流分割,分割出宏块层以上的语法元素和宏块层的数据,再由系统控制器控制输送到下一级模块进行解码。在传统设计中,宏块层以上部分的元素解析划归到软件处理,宏块层解码划为硬件处理。这种软硬结合解码系统存在着一定不足,因为软件部分运行在微处理器上,解码速度慢,与其他模块的硬件解码速度不一致,造成软硬信息交互实现的复杂化,软硬通信接口也比较复杂,影响了整个系统的实时解码速度,而且功耗大。笔者把码流分割模块用硬件进行设计,相对于软件实现码流分割,虽然占用了硬件资源,但提高了系统的实时解码速度,可以使整个系统集成为ASIC设计,降低了系统开发成本和功耗,提高了系统的稳定性。

2 码流分割实现原理

在AVS编码端,宏块层以上的数据大部分都采用定长码编码方式,宏块数据采用变长码(Variable-Length Code,VLC)编码,也称指数哥伦布码编码[2],编码码流按照层次结构进行组织,并且各个层次被打包成单元。解码端的解析过程主要包括定长码和可变长码的解码,码流分割单元作为解码器输入第一级,需与熵解码结合,要对熵解码单元发出解析定长码或不定长码的控制命令,还要传输相关定长码的码长,才能最终实现码字信息的获取。

2.1 AVS码流分层结构

AVS视频编码图像在比特流中按比特流顺序进行排列,其分层结构如图2所示,依次为视频序列层、图像层、条带层、宏块层和块层。视频序列层中编码数据是在视频序列头和视频序列结束之间,图像层数据由图像头起始码类型标识区分,条带是按光栅扫描顺序组成的连续的若干宏块行,宏块层包含宏块的编码模式、运动向量、参考帧以及各个亮度块和色度块的残差系数等信息。

2.2 码流解析流程

码流分割模块与熵解码模块相结合,完成对语法元素的解析,实现过程就是依次从AVS码流中读取相应语法元素的比特流,并获取相应的码字信息。视频序列层、图像层、条带层、宏块层等被打包成Nal单元。每个Nal单元有相应的起始码,起始码由起始码前缀和起始码值构成,起始码前缀是比特串0x000001,起始码值是1个8位整数,AVS标准中规定了不同类型的起始码值。解析流程中码流分割模块会检测起始码,判断是哪一层次结构并进行Nal单元匹配,然后进行相应Nal单元的码流分割。

3 码流分割模块的硬件设计

码流分割模块的主要功能是按照标准中对视频序列语法元素的定义,产生码流分割指令,辅助熵解码模块完成相应的码流解析[3]。AVS视频码流首先送入缓冲器FIFO,码流分割模块和熵解码模块之间再用缓冲器缓冲数据,实现两级FIFO结构。第一级FIFO存放着待解码的视频码流,输入输出出端口宽度为8位。经过预处理和分割处理后的码流存放到第二级FIFO中,第二级的FIFO输入输出端口宽度为3位。码流分割模块具体的硬件结构方案如图3所示,首先码流要经过码流预处理,完成检测起始码和去除伪起始码功能,然后经过控制单元启动子模块码流分割处理[4],下面分单元具体阐述系统的设计过程。

3.1 码流预处理单元设计

该设计中使用2个40位寄存器B和R,寄存器R以字节为单元分为5个部分,每次输入码流寄存器R都以字节为单元向左传递,如图4所示。寄存器R中2,1,0这3个字节用来检测起始码,4,3,2这3个字节用来检测伪起始码,2为待检测的字节。

如果检测到2,1,0这3字节为起始码的前缀0x000001,说明字节2为前缀的一部分,不用输出,且正要输入寄存器R中字节0的8位比特流就为后缀,前缀和后缀组成32位的起始码类型,用寄存器Nal_type寄存,根据起始码类型决定这个单元是否需要去除位填充。如果检测到字节4,3,2为0x000002,则表明字节2中包含位插入的2'b10,需要去除低两位插入,这时就输出字节2的前6位,否则输出整个字节2的8位,输出送入寄存器B的最后一个字节中。设计中有一个累加器,对每次从寄存器R的字节2传到寄存器B的码流的位数进行累加,当累加值大于等于32时,把寄存器B的高32有效位输出给下一级处理,同时累加器的数值减去32。

3.2 分割码流处理单元实现

编码码流经上一级预处理后,传输到分割码流处理单元进一步处理。在同一时刻只进行1个子模块的分割解析,由控制单元根据Nal_type寄存的起始码类型来做判断选择。指数哥伦布码元素描述符分为ue(v),se(v),me(v),ce(v),子模块分割单元就是根据标准中对序列码过FIFO缓冲器来传输[5]。各个子模块的码字解析控制状态机如图5所示。

启动分割后,由开始状态跳转到解析当前码字状态,等待解析成功后会转到下一个码字的解析,由于各个子模块中码字的个数不一样,码字的个数决定了解析的状态个数,直到最后一个码字解析成功后又重新返回到开始状态。具体的实现过程为:若当前解析的码字为定长码,令FR[4]为“1”,然后把码长通过寄存器data_length传输给熵解码控制单元,熵解码只需要按照给定的码字长度,从码流中截取相应位数的比特位,再根据需要选择查表或者直接返回截取的比特位,解析成功后会返回1个return_true标识,同时通过寄存器return_data返回解析结果。若当前解析的是不定长码,包括ce(v),me(v),se(v),ue(v),只需将FR这个命令字中相应的位置设为“1”,熵解码模块就会根据指令做相应的检测及解码处理[6]。考虑到整个系统的连续性能,以及缩短解码周期,该设计对标准中关于码流序列的定义进行简化,即将部分可以合并的元素重新组合,形成一个元素集,当解析帧内预测模式时,如果按照标准给出的模式来分割,最大将需要8个周期,而通过合并,可以把其压缩在一个周期里面完成。在熵解码的解析处理过程中,只要相应的周期所进行的操作为码流分割操作,就需要使得命令字FR[10]为“1”,使命令字有效。由于通过FIFO传输到熵解码每一个数据单元的位宽定为32位,当解析完成剩余的比特数不足以解析下一个码字时,应该重新装载数据,即在单元开始应置位FR[0],实现新单元的装载。

4 仿真结果分析

根据上述的算法和结构,用Verilog HDL硬件描述语言完成码流分割模块的RTL级设计,在Model Sim上通过了综合前仿真。AVS标准参考软件代码产生码流测试向量,然后将硬件仿真输出数据与C模型产生的结果对比,比较的结果表明硬件设计的正确性,实现功能验证。对视频序列头的分割仿真图如图6所示。

序列头分割仿真图中从profile_id,level_id到bbv_buffer_size等寄存器存储了相应的码字信息,与软件解码得到的语法元素值是一致的。

该设计通过功能仿真后,与其他模块集成在FPGA上实现验证,使用QuartusⅡ进行综合,选择器件类型为CycloneⅡ系列的EP2C35F672C6,除了另加的片外SRAM,该模块与整个解码器关键模块的综合结果如表2所示。相对于其他模块,码流分割的硬件设计只占用了5.1%的FPGA资源,就可与熵解码给合实现对AVS标准基准档次,level4.0,30 f/s(帧/秒)码流的解析,且整个解码器的时钟频率可达到80 MHz,满足了实时解码要求。

5 结论

文中提出了AVS解码器中码流分割模块的硬件设计结构,采用Verilog HDL语言进行设计实现,在Model Sim上通过了功能仿真,并在FPGA芯片上进行了验证,实现了80 MHz时钟频率下30 f/s码流速度的实时解码,基本完成整个系统的ASIC前端设计。

摘要:提出一种基于AVS标准码流分割模块的硬件设计方案。简要介绍了码流分割模块的功能,根据码流特点进行硬件结构划分并重点阐述具体的硬件实现过程。采用Verilog HDL语言进行设计和仿真,实现了码流的正确解析,并与解码器其他模块结合通过了FPGA验证。仿真结果表明,整个硬件系统结构能在80MHz时钟频率下完成30f/s(帧/秒)码流的实时解码。

关键词:码流分割,AVS,解码器,Verilog HDL

参考文献

[1]黄铁军.AVS标准的背景、进展与产业应用展望[J].信息技术与标准化,2003(9):4-7.

[2]GB/T20090.2-2006,先进音视频编码第2部分:视频[S].2006.

[3]张楚.AVS和H.264双标准可变长解码器设计[D].西安:西北工业大学,2007.

[4]陈光化,徐生勇.基于AVS标准的熵解码器硬件设计[J].电视技术,2009,33(3):23-25.

[5]MICHAEL D C.Advanced digital design with the verilogHDL[M].Beijing:Publishing House of Electronics Industry,2004.

RS编解码过程及软件实现 篇3

1 RS码基本特性

在域GF(q)上,码长n=q-1的本原BCH码称为RS码。一般用(n,k)或(n,k,d)表示,n为码长,k为信息码元的数目,n-k为监督码元的数目,d表示码元距离。在所有线性分组码中,RS码具有最大的最小汉明距离。RS码的编解码是基于码元(每个码元m bit)的,过程中的运算都在伽罗华域上进行。域GF(2m)上的RS码是一类应用很广的RS码,同时,RS码也是一种循环码,每个码字都是其生成多项式的倍式。域GF(q)上的[n,k]循环码中,存在惟一的n-k次首一多项式g(x)=xn-k+gn-k-1xn-k-1+…+g1x+g0,每一码多项式C(x)都是g(x)的倍式,且每一个≤(n-1)次的g(x)倍式一定是码多项式,g(x)称为此[n,k]RS码的生成多项式,GF(q)上的[n,k]循环码的生成多项式g(x)一定是xn-1的因式,xn-1=g(x)h(x),h(x)为[n,k]RS码的校验多项式,它是 k次多项式。

2 RS编码原理

RS编码方式为系统码,码字多项式的第n-1次至n-k次系数是信息位,其余为校验位,这相当于C(x)=m(x)xn-k+r(x),式中 m(x)=mk-1xk-1+mk-2xk-2+…+m1x+m0是信息多项式,(mk-1,…,m1,m0)是信息位,而r(x)=rn-k-1xn-k-1+rn-k-2xn-k-2+…+r1x+r0是校验多项式,相应的系数是码元的校验位。编码过程即是根据k个信息码元及[n,k]RS码的特性获得n-k个校验码元的过程[1,2]。

[n,k]RS循环码的校验码元可根据校验多项式h(x)=hkxk+hk-1xk-1+…+h1x+h0获得。设系统码多项式为C(x)=cn-1xn-1+cn-1xn-2+…+cn-kxn-k+cn-k-1xn-k-1+…+c1x+c0,它的前k位系数。cn-1,cn-2,…,cn-k是已知的信息位,后n-k位系数。cn-k-1,cn-k-2,…,c1,c0 是需要求的校验位。因为码多项式必是生成多项式g(x)的倍式,故有C(x)=q(x)g(x),而h(x)C(x)=q(x)g(x)h(x)=q(x)(xn-1)=q(x)xn-q(x),q(x)xn的最低次数至少为n次,因此h(x)C(x)的乘积中,xn-1,xn-2,…,xk次的系数应为0,而xn-1的系数由cn-1-0h0+cn-1-1h1+…+cn-1-khk组成,xn-2的系数由cn-2-0h0+cn-2-1h1+…+cn-2-khk组成。因此j=0kcn-i-jhj=0,i=1,2,,n-k。由于h(x)为首一多项式,故hk=1。上式可写成Cn-i-k=-j=0k-1cn-i-jhj,i=1,2,,n-kCn-k-i=-j=0k-1cn-j-ihj,i=1,2,,n-k,展开为

cn-k-1=-(cn-1h0+cn-2h1+…+cn-khk-1)

cn-k-2=-(cn-2h0+cn-3h1+…+cn-k-1hk-1)

…………………………

cn-k-(n-k)=c0=-(ckh0+ck-1h1+…+c1hk-1)

这表明码字C的第一个校验元cn-k-1可由k个信息元cn-1,cn-2,…,cn-kh(x)的系数相乘得到,而由cn-2,cn-3,…,cn-k,cn-k-1可得到第二个校验元cn-k-2,再由cn-3,…,cn-k信息元和第一、第二校验元cn-k-1,cn-k-2可得到第三校验元cn-k-3。依此类推,可求得所有的n-k个校验元cn-k-1,cn-k-2,…,c1,c0。

根据以上的过程分析,可知RS编码的软件实现过程如下:(1)首先求出域GF(2m)中的所有元素并存储备用。(2)在[n,k,d]RS码中,其生成多项式是唯一的,由xn-1=g(x)h(x),可知校验多项式h(x)也是唯一确定的,且g(x)=(x-α)(x-α2)…(x-αn-k),根据伽罗华域上的运算规则可求出h(x)=(xn-1)/g(x)的各项系数。(3)据上面的分析,依次求出所需的校验元cn-k-1,cn-k-2,…,c1,c0。

超短波跳频电台具有定频通信、跳频通信、数据通信等功能,为增强数据传输的可靠性,对传输的数据进行了RS编解码的处理,取得了较好的通信效果。以RS编码在超短波跳频电台中的应用为基础,以m=5,(n0,k0,d)RS码为例,编码部分程序简列如下:

void rscode_m5(Uint8 a,Uint8 b,Uint8 c,Uint8 hxarray[])

{

Uint8 i,x,m,j,mod2sum;//存模2加的累计值

/* 补(n-n0)=a个信息符号‘00000’ */

for(i=0;i<a;i++)

{

degreearray[i]=31;

}

……………………………………/* 将k0=b个信息符号对应α的次数存入数组degreearray */

/* 求(d-1)=c个校验符号 */

for(m=0;m<c;m++)

{

i=m;//degreearray[]的下标索引为i

mod2sum=0;

for(j=0;j<(a+b);j++)//乘积个数计数器,hxarray[]的下标索引j

{

if(degreearray[i]!=31 && hxarray[j]!=31)

{

x=degreearray[i]+hxarray[j];

if(x≥31)x=x-31;

}

else x=31;

mod2sum=mod2sum ^ lookup_info[x];

i+=1;

}

rs_array[b+m]=mod2sum;//将校验符号存入数组rsarray

degreearray[a+b+m]=lookup_degree[mod2sum];

//将校验符号对应α的次数存入数组

}

}

3 RS译码原理

RS译码较编码过程复杂,其关键问题为错误位置多项式的求解。设发送的码字是C(x)=(cn-1xn-1+…+c1x+c0),通过q进制信道传输后,接收端译码器输入端得到的是R(x)=C(x)+E(x)=rn-1xn-1+…+r1x+r0,式中E(x)=(en-1xn-1+…+e1x+e0)是信道产生的错误图样,ciriei均是域GF(q)中的元素。

译码的主要任务就是从收到的R(x)计算出伴随式S(x),并由伴随式找出估计错误图样,即找到错误发生的位置及错误值,然后将接收码字与错误图样运算找到最可能发送的码字C^(x),从而得到估值信息码字。

距离为d=2t+e+1的线形分组码,能纠正t个错误同时纠正e个删除,若全部用来纠删可以纠正d-1个删除,因为d=n-k+1,故有2t+e=n-k

伴随多项式是RS译码中一个非常重要的概念。伴随式S仅与错误图样有关,且完全由错误图样决定,而与发送码字无关,伴随式充分反映了信道的干扰情况,由它可计算出错误图样。伴随式的计算较简单。设接收码字R(x)=cn-1xn-1+cn-2xn-2+…+c1x+c0,把x=α代入上式得到s1,把x=α2代入得到s2,…,把x=α2t代入得到s2t,或表示为Sj=R(αj),j=1,2,…,2t

错误图样的计算是RS译码中的重要内容,它包括错误位置数的确定与错误值的计算两方面。通过伴随式S可构造2t个方程,求解出2t个未知数xi,Yi,(i=1,2,…,t,xi为错误位置数,Yi为错误值数),直接求解这2t个方程比较困难,所以分两步,先求xi,再求Yi。求错误位置就是求解错误位置多项式的根。采用Berlekamp-Massey Algorithm(BM迭代算法)可快速根据伴随式求出错误位置多项式。BM迭代算法自1966年提出后经不断改进,已较为成熟,它通过选择一组合理的初值δ(0)(x)和ω(0)(x),进行逐次迭代依次得到δ(1)(x),ω(1)(x),δ(2)(x),ω(2)(x),…,δ(i)(x),ω(i)(x),δ(i+1)(x)和ω(i+1)(x),最后得到δ(x)和ω(x)的最高次,从而得到满足关键方程S(x)δ(x)≡ω(x)(mod x2t+1)的δ(x)和ω(x)[1]。δ(x)即为错误位置多项式。得到错误位置多项式后,通过钱搜索方式可求得错误位置多项式的根。1964年,钱闻天提出的一种求δ(x)根的方法称为钱搜索。如在(15,9)RS码中,求得错误位置多项式的根为α3,α9,α12,它们的倒数即为错误位置α12,α6,α3,即错误位置发生在x12,x6,x3上。求出错误位置多项式δ(x)后,就可据式

Yj=(i=0y-1δjisy-i)/(xji=0y-1δjixjy-i-j)(1)

计算出错误值Yj。错误位置数和错误值均求出后就可得到错误图样E^

以下以RS编解码在超短波跳频电台中的应用为基础,以m=5,(31,k,d)RS码为例译码程序简列如下:

void rsdecode_m5(Uint8 a,Uint8 b,Uint8 c,Uint8 del_num)

{

Uint16 i,j,L,x,y;

Uint8 mod2sum,fenmu,fenzi,error_max;

………………………………/* 将接收序列r(x)各项系数对应α的次数->degreearray[]*/

………………………………/*计算伴随式S并存入s_degree*/

rs_diedai(c,del_num);//通过BM迭代算法得到错误位置多项式[2],并将总错误位置多

//项式的标准形式存入error_degree,此处省略迭代过程

/* 钱搜索 */

j=0;

for(L=1;L≤31;L++)

{

mod2sum=0;

for(i=0;ierror_max;i++)

{

if(error_degree[i]!=31)

{

x=error_degree[i]+L * i;

while(x≥31)

x=x-31;

}

else

x=31;

mod2sum=mod2sum ^ lookup_info[x];

}

if(mod2sum==0)

{

error_location[j]=31-L;//错误位置数

j+=1;

}

}

/* 求错误值 */

for(j=1;jerror_max;j++)

{

……………………………/* 计算σji*/

……………………………/* 依上文所列式(1)计算分母,此处省略 */

fenmu=lookup_degree[mod2sum];//Y的分母(对应α的次数)

……………………………/*依上面所列式(1)计算分子,此处省略*/

fenzi=lookup_degree[mod2sum];

if(fenzi !=31)

{

if(fenzi<fenmu)fenzi=fenzi+31;

error_y[j-1]=fenzi-fenmu;/* Yj=分子/分母 */

}

else error_y[j-1]=31;

}

/* 计算错误图样e(x)*/

……………………将error_ex[0]至error_ex[30]先清/* 将Yj存入error_ex中的指定位置 */

for(i=1;ierror_max;i++)

{

x=error_y[i-1];

y=lookup_info[x];

x=30-error_location[i-1];

error_ex[x]=y;

}

/* 输出译码结果,修正数组rsarray[20]中的信息符号和校验符号 */

for(i=0;i<(b+c);i++)

{

rs_array[i]=rs_array[i]^ error_ex[a+i];

}

}

4 结束语

RS编解码过程涉及域、线性分组码、生成矩阵、校验矩阵、伴随式等概念,初接触感觉较为复杂,文中将编解码过程做了总结并列出了编解码部分程序以供参考,文中所列程序在通信产品中多次使用,均达到设计要求。

摘要:结合RS码的基本特性,讲述了RS码的编解码过程,给出了经过实际验证的RS编解码在超短波跳频电台开发中的软件应用实例。实践表明,RS编解码在无线通信系统应用中具有灵活、可靠的特点。

关键词:伽罗华域,生成多项式,伴随多项式,错误多项式

参考文献

[1]王新梅,肖国镇.纠错码—原理与方法[M].西安:西安电子科技大学出版社,2001.

硬件编解码 篇4

近年来, 我国音视频产业发展迅猛, 已成为全世界音视频产品生产和销售第一大国。音视频产业已成为国民经济与社会发展的重要产业, 是电子信息产业的三大组成部分之一。未来几年, 将是中国音视频产业加快自主研发、发展核心技术, 赶超世界先进水平的重要时期。在数字音视频产业中, 视频数据的编码压缩技术是整个产业依赖的共性技术, 是音视频产业进入数字时代的关键技术, 因而成为近20年来数字电视以及整个数字视频领域国际竞争的热点。

1 数字视频编解码技术标准

1.1 MPEG标准

ISO/IEC JTC1/SC29/WG11运动图像专家组提出了MPEG系列标准, 主要有MPEG-1、MPEG-2、MPEG-4三大标准。

MPEG-1标准是用于数字存储媒体, 总比特率1.5 Mb/s以下的运动图像及其声音信号的国际编码标准。M P E G-1标准目前主要应用于V C D制作和M P 3格式 (M P E G-1的音频第三层) 。

MPEG-2标准是目前消费类电子视频设备中使用较广泛的视频编码标准。在数字存储媒体上, 应用于DVD/SVCD;在数字电视广播 (包括地面、有线和直接卫星广播) 上, SDTV和HDTV均选用MPEG-2视频标准。

M P E G-4标准是目前学术界比较关注的视频编解码标准之一。在应用上, M P E G-4企图涵盖从低码率 (视频64 kb/s) 到高码率 (50 kb/s甚至更高) 的各种应用;在技术上, 提出了面向对象编码的概念。M P E G-4的档次大致可以分为两组, 第一组包括SP (simple profile) 和ASP (advanced simple profile) , 其技术框架沿袭了传统的以宏块为单位的压缩框架;第二组包括其他的档次 (core profile、main profile等) , 其中包括面向对象的压缩技术、技术框架和传统的标准有很大的不同。2 0 0 0年左右, I T U的视频编码专家组 (V C E G) 制定的H.2 6 4标准在沿袭传统技术框架的同时压缩效率超过了M P E G-4A S P。经过协商, 两个标准化组织决定成立联合视频编码工作组J V T, 共同制定下一代视频压缩标准, 新标准在I T U系统中仍然使用H.2 6 4, 在I S O中被作为M P E G-4的第10部分。

1.2 H.26x标准

H.261标准是ITU的视频编码专家组提出的基于ISDN的视讯电话与视频会议的视频压缩标准。目前, 随着视频编码标准各方面性能的不断提高, 除了在一些视频会议系统和网络视频中为了向后兼容还支持H.261外, 用H.2 6 1的产品越来越少。

H.263标准是H.261的增强版, 在编码算法上做一些改进和完善, 提高了性能和纠错能力。H.263效能比H.261高出很多。目前还应用于视频会议系统和网络视频。

H.2 6 4标准是目前基于传统技术框架的压缩效率最高的视频编码标准, 应用前景非常广阔。

H.265是ITU-T VCEG正在规划中的视频编码标准, 其目标是更高的压缩效率, 更好的网络适应性。

2 知识产权现状

2.1 专利情况

标准在推动技术进步和相关产品发展的同时也涉及大量专利。表1是典型国际视频标准涉及的国家/地区及其专利数量。

注: (1) 数据截至2010年3月31日; (2) () 中的是目前尚在专利保护期的专利数。

从表1可见, 已有专利中美国和日本是最主要的专利技术申请国。很多国外公司利用在该领域上的技术优势, 申请了大量专利 (包括很多非核心专利) , 例如H.264/AVC标准中涉及到了日本松下公司在2 7个国家/地区申请的377项专利。在我国, 专利申请数量排在前几位的也都是国外的公司, 最多的是韩国三星、其次是松下和飞利浦。从表2中可看出随着数字音视频编解码技术的不断进步, 涉及到我国专利的数量大幅上升, 意味着中国企业要采用以上国际标准需被授权的专利越来越多。我国高校 (如清华大学) 、科研机构 (如中科院计算所) 和公司 (如华为) 加紧研究、通过集体创新, 也有不少相关的专利。

2.2 专利许可情况

很多国外跨国巨头公司利用先进的技术优势组成专利联盟, 联盟内各专利权人运用交叉许可的方式, 组建专利池统一对外进行专利许可, 使专利池成为打击不拥有专利的产品竞争者的工具, 从而达到垄断市场、牟取巨额利润的目的, 阻碍了产业发展, 损害了消费者的利益。这是全球范围内知识产权和标准领域面临的一个严峻挑战。目前在数字音视频编解码技术领域影响较大的M P E G L A维护的系列专利池 (M P E G-2、M P E G-4、H.2 6 4) 就存在这类问题。表2是国际视频标准许可费用收费模式和收费费率比较。

注:此对照表仅为参考方便, 具体条款和数额以相应组织的法律文件为准

根据MPEG LA宣布的MPEG-4、H.2 6 4/AVC的专利许可政策, 需要缴纳专利费的厂商有两种类型:编解码产品制造商和视频节目运营商。对于中国的数字音视频产业来说, 可以说是一种巨大的压力和负担。更危险的是MPEG LA的专利池远未包含标准所有的必要专利, 一些国外知名公司已经宣称将单独收费。同时, 标准将直接影响芯片、软件、整机和媒体文化产业运营整个产业链条。要培育健康的、能够良性发展的数字化音视频产业, 掌握自主知识产权、实施标准战略势在必行。

3 产业发展分析

3.1 发展状况

近年来, 我国数字音视频产业发展迅猛, 产业规模逐渐壮大, 数字化已成为了音视频产业发展的总趋势。

广播电视行业是我国音视频产业的第一大分类行业。2003年, 我国全面启动了数字有线电视的转换。截至2009年第四季度, 中国有线数字电视已达到6 348万户, 有线数字电视改造工作到2 0 0 9年第四季度已逐步的落实到位, 各地运营商在一定程度上加快了数字化进程。预计到2 0 1 1年我国有线数字电视用户将达到1.147亿, 将基本实现有线电视全数字化。

互联网电视 (IPTV) 作为“三网融合”的主要载体之一, 产业发展迅猛, 从2003年的不足两万户, 到2009年初已经超过了300万户, 上海已经成为全国首个IPTV用户超百万的城市。据统计, 国内IPTV用户数呈稳步上升趋势, 到2010年底中国IPTV用户预计将超过1 000万户。

数字音视频产业是各种新技术聚集的领域, 涉及大量关键核心技术, 我国在核心技术掌握上不足, 需要加紧研究。我国音视频产业发展不仅仅受制于相关技术, 还受到相关行业发展政策、宽带接入技术、内容服务商等的影响。今年, 国务院总理温家宝主持召开国务院常务会议, 决定加快推进电信网、广播电视网和互联网三网融合, 明确了“三网融合”的时间表, 提出了阶段性目标。同时, 具有自主知识产权视频编解码技术标准产业化进程需加速, 产业成熟度还需提高。广电部门、电信部门已在大力推动自主视频标准的应用, 促进了数字音视频产业化不断深入。

3.2 产业发展展望

我国将继续大力发展数字化广播电视网, 相关视频技术向高清、全高清发展, 音频技术趋向于环绕立体声, 实现视听内容的全部数字化。网络电视产业将蓬勃发展, 将有效运用宽带有线电视网、互联网向家庭用户提供包括数字电视在内的多种交互式服务。数字电视和网络电视市场规模巨大, 成为“三网融合”、“三电一体”的主要载体之一。

数字电影产业将加速发展, 其中3 D电影产业的兴起, 形成电影业的第三次革命。随着3 D立体显示研究不断深入, 多视点编码算法等技术的不断成熟, 3D投影技术和3D电视的研究也将快速实现产业化和商业化。

安防监控、手机电视、移动电视、视频通信等新兴产业均将成为数字音视频产业发展的重要力量, 形成巨大市场。

4 工作建议

(1) 大力促进自主知识产权标准的产业化

建议在互联网视频应用、数字电视、直播卫星、安保监控等诸多领域中, 鼓励采用自主知识产权标准, 建议国家相关部门进一步加大政策、资金和市场等方面的支持力度, 特别是针对服务提供商推出切实有力的鼓励措施 (例如采用自主知识标准给予补贴或税收优惠) 。只要服务提供商愿意采用自主标准, 自然会有更多有实力的国内外企业参与, 很快就会形成成熟的数字音视频产业链。

(2) 加强专利政策对企业的保护、鼓励作用

不论是企业还是科研院所, 如看不到核心技术能够给他们带来显著的收益, 就不会愿意在科研 (特别是基础技术研究) 方面进行投入。因此, 如何让企业和科研院所能够通过专利或者核心技术获得应有的收益, 加强专利政策对企业的保护、鼓励作用, 是政府制定政策时需要考虑的核心问题。

摘要:介绍了国外数字视频编解码技术标准现状:MPEG-1、MPEG-2、MPEG-4三大标准和H.26x标准, 分析了标准涉及的知识产权中的专利和专利许可情况, 并根据当前产业需求提出了发展建议。

基于压缩感知理论的视频编解码器 篇5

关键词:压缩感知,视频编码,编码器,解码器

1 引言

现有的视频压缩编码标准是基于传统的香农采样定理。在该定理要求下,信号的采样率必须大于信号带宽的2倍,才能实现信号的准确重构。因此,要实现视频图像的准确重构所需要的样本数较多。此外,视频编码过程中,图像变换后大部分的系数被舍弃,造成了数据和系统资源的浪费。近年来出现的压缩感知(Compressive Sensing,CS)理论指出,在已知信号具有稀疏性或可压缩性的前提下,用于重构的样本数可以远远低于传统的香农采样定理下的样本数[1,2,3,4]。由于视频图像通常在某些变换域上具有可压缩性,而且视频残差图像具有较强的稀疏性,所以CS理论在视频编码中有着良好的应用前景[5,6,7,8]。

2 压缩感知理论和传统的编解码核心技术

2.1 压缩感知理论

压缩感知理论下,信号若具有稀疏性或可压缩性,则可通过少量的测量样本进行重构。假定实的离散信号x[n],n=1,2,…,N,在N×N的稀疏基Ψ=[ψ1,ψ2,…,ψN]下具有稀疏性,即

式中:系数α仅有K垲N个元素非零,其余N-K个元素为零或接近于零。

在上述稀疏条件的假设下,对该信号进行采样或测量,设测量矩阵用M×N(K

将式(1)代入式(2)可得,

由于M垲N,所以方程组是欠定方程组,从测量样本y重构信号x的过程是病态的,但是如果测量矩阵Φ和稀疏矩阵Ψ能满足RIP[1,2,3,4]或者两者非相关时,则可实现精确的重构。一种常用的算法是基于l1极小范数求解系数α

再将稀疏系数α代入式(1)即可重构原信号。

2.2 视频编解码核心技术

传统的视频编解码器是基于宏块操作的,编码模式包括帧内模式和帧间模式。下面以H.264为例,简单分析传统视频编解码的核心技术[9]。

H.264的编码器如图1所示。在帧内模式下,当前宏块的像素的预测是基于对帧内已经编码并解码重构后的宏块进行的。将当前宏块与参考宏块求残差后进行变换,再将得到的系数中少数重要部分保留,并对其幅度和位置进行量化、熵编码。在帧间模式下,当前宏块的预测块是基于对参考帧进行运动估计和补偿得到,再将当前帧和预测帧的宏块求残差,最后对残差进行量化、熵编码,得到编码码流用于传输或存储。由于编码器中需要参考帧,所以编码器内包含了部分解码器。

H.264的解码器如图2所示,整个解码的过程是编码的逆过程。接收的码流先经过熵解码、逆量化、逆变换得到残差图像,再加上根据帧内编码或帧间编码的参数得到的预测图像即为重构的图像。

从上述过程看,传统的编码过程复杂,解码简单,对编码端的要求更为严格。编码过程中,图像变换后的系数大部分被抛弃,造成数据和内存资源的浪费。

3 基于压缩感知理论的编解码器

结合上节中的压缩感知理论和传统的视频编解码核心技术,本节将设计一种基于压缩感知理论的视频编解码器。

3.1 基于压缩感知理论的编码器

基于压缩感知理论的编码原理如图3所示。编码前,先将视频序列分成图像组。编码时,如果当前帧采用帧内编码(记为I帧),则它的编码方法是直接对该帧进行预处理和编码测量,其中,预处理过程是个可选的步骤;如果当前帧采用帧间编码(记为P帧),编码方法是用前面解码重构帧作为参考帧,并与当前帧求残差,再对残差进行预处理和编码测量。由于残差图像的稀疏性更强,所需的测量样本数可以更少。两种模式下得到的编码测量值再经量化、熵编码便可得到编码码流。和传统的视频编码器一样,编码器内有个局部的解码器,目的是得到用于帧间编码的参考帧。

和传统的视频编码器相比,存在以下几个不同点:1)传统方式下是以块作为处理单元的,而基于压缩感知理论的编码器是对整幅图像进行处理的;2)传统方式下所需的图像样本数远远大于压缩感知理论下的情况;3)基于压缩感知编码中的测量过程是将高维信号投影到低维空间的一个非自适应过程,事实上,它可对应于传统方式下的采样和变换过程,由于得到的每个测量值包含了传统方式下的所有样本的部分信息,所以它能避免传统方式下因丢弃高频分量而带来图像细节丢失的现象;4)传统方式下的帧间编码需进行运动估计和补偿,而基于压缩感知的帧间编码不需这些过程,有利于降低运算的复杂度。

3.2 基于压缩感知理论的解码器

基于压缩感知理论的解码原理如图4所示。解码时,接收的码流先进行熵解码、反量化后,用求欠定线性方程组解的方法(即求解表达式(3))进行重构,接着进行后处理。得到的如果是I帧图像,则该图像即是重构图像;如果是P帧,则该图像是残差图像,此时需要将帧存储内保存的参考图像与残差图像通过加法器相加,进一步得到重构图像。两种模式下的重构图像需送入帧存储,作为后面帧的参考帧。

基于压缩感知理论的解码器与传统解码器的主要区别在于,传统解码过程是编码的逆过程,解码器相对简单,编码器较为复杂,而基于压缩感知理论的解码不再是编码的逆过程,而是一个求欠定线性方程组解的过程,相对于编码器来说,解码器较为复杂。这种情况有利于环境恶劣或条件较为严格时的编码测量。

总之,基于压缩感知理论的视频编解码器结构比传统的更简单,且编码达到的压缩比和解码重构图像的质量都较高。

4 实验结果及分析

为了验证基于CS理论的视频编码器的有效性,对两组视频序列进行处理,考虑不同I帧采样数N与P帧采样数N1组合下的视频重构质量。编码测量过程中的稀疏基采用Daubechies 9/7小波基,测量矩阵选用32×32的随机扰动分块Hadamard矩阵[10]。重构算法采用GPSR算法[11]。由于量化(反量化)和熵编码(熵解码)技术在传统的视频编解码技术中非常成熟,所以实验中没有加以考虑。

对第一组尺寸为176×144像素的“carphone”视频序列进行处理时,连续的12帧被分成3组,每组4帧。每组的第一帧进行I帧编码,而组内的其余帧采用P帧编码方式,参考帧选用当前帧的前面已解码重构的帧。当I帧的测量样本数N由10 000增至25 000,P帧的测量样本数N1由1 000增至25 000时,重构视频图像的平均PSNR随N和N1的变化如图5所示。实验结果表明,当I帧测量样本数N较大时,重构的视频图像的平均PSNR较高,此时,即使P帧测量样本数N1增加很大,平均PSNR的改善很小。原因是帧间编码的残差图像的稀疏性很强,在压缩感知理论下,很少的测量值已经足够得到一定质量的重构图像。但是,如果当I帧测量样本数N较小,即使P帧的测量样本数N1很高,重构的视频图像的平均PSNR仍是很低,这是由于I帧的重构误差扩散所造成的。

图6a为视频源序列中的第7帧图像。当N为10 000且N1为100时,整个视频的压缩率为9.8,平均PSNR为26.26 dB。当N仍为10 000而N1为10 000时,视频压缩率为2.5,平均PSNR为26.88 dB。在这两种情况下,第7帧图像的重构情况分别如图6b,6c所示。当N变为25 000,N1为100时,视频压缩率变为4,平均PSNR为32.48 dB;N不变,N1改为10 000时,视频压缩率为1.8,平均PSNR为33.83 dB。这两种情况下的第7帧图像重构情况分别如图6e,6f所示。由此可见,测量样本数和视频的平均PSNR之间可以根据实际需要进行合理的折中,以达到合理的压缩率和重构质量的平衡。例如设置N为15 000,N1为100,视频压缩率可以达到6.6,而平均PSNR接近30 dB。此时,第7帧重构如图6d所示。

第二组实验中,连续的80帧视频序列“salesman”被分成8组,每组10帧。每组的第一帧进行I帧编码,组内的其余帧采用P帧编码方式,参考帧选用当前帧的前面已解码重构的帧。当I帧的采样数N从10 000到65 000进行变化,对每种I帧的情况,P帧的采样数N1从5 000到65 000变化。各种情况下,重构视频图像的平均PSNR随N和N1的变化如图7所示。

图8a为视频源序列中的第31帧图像。当N为10 000且N1为1 000时,视频压缩率为34.5,平均PSNR为19.6 dB。当N仍为10 000而N1为10 000时,视频压缩率降为6.6,平均PSNR为19.81 dB。在这两种情况下,第31帧的重构情况分别如图8b,8c所示。当N变为60 000,N1为1 000时,视频压缩率为9.5,平均PSNR为27.65 dB;N不变,N1改为10 000时,视频压缩率为4.4,平均PSNR为28.77 dB。这两种情况下的第31帧重构情况分别如图8e,8f所示。若考虑测量样本数和重构质量之间的平衡,设置N为30 000,N1为1 000,那么压缩率可以达到16.8,而平均PSNR能够高于24 dB。此时,重构的图像如图8d所示。

5 小结

结合压缩感知理论和传统的视频编解码技术,笔者提出了一种结构较为简单的基于压缩感知理论的视频编解码器。该编解码器充分利用了视频图像的相邻帧间的残差具有较强的稀疏性的特点,在样本数很少的情况下,仍取得了较高的压缩比和较好的图像重构效果。实验验证时采用的是对视频图像固定分组形式,若采用根据图像稀疏度变化情况自适应地分组形式,效果将会更好。

参考文献

[1]CANDES E,ROMBERG J,TAO T.Robust uncertainty principles:Exact signal reconstruction from highly incomplete frequency information[J].IEEE Trans.Inform.Theory,2006,52(2):489-509.

[2]DONOHO D.Compressed sensing[J].IEEE Trans.Inform.Theory,2006,52(4):1289-1306.

[3]BARANIUK R G.Compressive sensing[J].IEEE Signal ProcessingMagazine,2007,24(7):118-121.

[4]喻玲娟,谢晓春.压缩感知理论简介[J].电视技术,2008,32(12):16-18.

[5]DUARTE M,DAVENPORT M,TAKHAR D,et al.Single-pixel imaging via compressive sampling[J].IEEE Signal Processing Magazine,2008,25(2):83-91.

[6]STANKOVIC V,STANKOVIC L,CHENG S.Compressive video sampling[C/OL]//Proceedings of the European Signal Processing Conf.,Lausanne,Switzerland,2008[2009-11-02].http://www.eurasip.org/Proceedings/Eusipco/Eusipco2008/papers/1569099804.pdf.

[7]MARCIA R,WILLETT R.Compressive coded aperture video reconstruction[C/OL]//Proceedings of the European Signal Processing Conf.,Lausanne,Switzerland,2008[2009-11-02].http://www.ee.duke.edu/~willett/papers/MarciaEUSIPCO2008.pdf.

[8]PARK J Y,WAKIN M B.A multiscale framework for compressive sensing of video[C/OL]//Proceedings of Picture Coding Symposium,Chicago,Illinois,2009[2009-11-12].http://inside.mines.edu/~mwakin/papers/jyp-mbw-videocs-pcs2009.pdf.

[9]WIEGAND T,SULLIVAN G J,BJONTEGAARD G,et al.Overview of the H.264/AVC video coding standard[J].IEEE Trans.Circ.Syst.Video Technol.,2003,13(7):560-576.

[10]GAN L,DO T T,TRAN T D.Fast compressive imaging using scrambled block Hadamard ensemble[C/OL]//Proceedings of the European Signal Processing Conf.,Lausanne,Switzerland,2008[200911-11].http://www.eurasip.org/Proceedings/Eusipco/Eusipco2008/papers/1569104824.pdf.

硬件编解码 篇6

随着3D立体电视技术越来越成熟,立体视频编解码系统引起了越来越多的关注。近年来,基于H.264及MEPG-4的立体视频压缩编解码系统得到了长足的发展。尽管立体视频有着很大的吸引力,但是视频数据量以及计算的复杂度与普通视频相比增加了1倍以上[1,2]。为了解决在有限带宽下传输大量视频数据的问题,迫切需要一个高效率的编解码系统。

传统立体视频压缩编解码算法,由于引入了额外的运动估计及视差估计,因此运算复杂度大大增加,若要降低运算复杂度,则要以牺牲图像质量为代价。文献[3]~[4]提出了残差图像编码的方法,通过对左右2副图像的残差进行编码从而达到了对图像进行压缩的目的。文献[5]提出了使用分布式计算的方法,无监督的自主学习视差。文献[6]采用自组织神经网络的方法,进行视差估计。以上几种算法,都存在运算复杂度高、计算量大的缺点,不适于在现有硬件系统上实现。

笔者提出运用联合预测的方法进行立体视频编解码的系统。这种联合预测的方案包含了3种编解码工具:首先,联合块补偿的使用使视频获得了更好的主观和客观质量;其次,依照立体视频的主要特征提出了新的运动补偿和视差补偿方法;最后,模式预决策方案的采用大大降低了运算的复杂度。

2 立体视频编解码系统实现

在此方案中,左路视频被设置为基础层,同时,右路视频被设置为增强层[7,8]。基础层使用H.264或MEPG-4等编码方式进行编码。在补偿的过程中,一个块不仅由左(右)参考帧的对应块进行补偿,还需要参考当前块的不同种类进行一种联合的补偿(如:此块属于背景、运动物体或者同时属于背景和运动物体)。此外,运用模式预决策的方案可以降低视差估计的运算复杂度。

2.1 编码流程

图1给出了立体视频编码器的框图。左路图像与右路图像在编码器中的主要不同点在于视差补偿和模式预决策。编码后,左路图像的压缩数据M和L,以及右路图像的压缩数据(数量很小)N和R将被传输。

在编码过程中,左路图像作为参考图像,使用普通的编码方式进行编码(如H.264,MEPG-4等);而右路图像使用左路图像作为参考,进行额外的运动补偿、模式预决策、视差估计。

2.2 联合块补偿方案

在右路图像的运动估计和视差估计过程中,当前帧有两个参考帧,如图2所示。灰色区域是参考帧的搜索范围。由于摄像机是平行放置的,根据平行相机系统视差的性质,左路图像的参考帧的搜索范围不是正方形的,而是呈带状的。

此立体视频编码器中包含3种补偿块:1)运动补偿块,主要出现在背景中,对缓慢运动的物体或者由于摄像机移动造成的运动进行补偿;2)视差补偿块,主要出现在运动物体上,由于物体在运动过程中产生的变形,因此,视差补偿块往往有更好的预测能力;3)联合补偿块,由于运动物体和背景可以相应地由不同种类的块进行预测,因此,联合补偿块主要出现在同时包含前景和背景的块中。

根据SAD(绝对误差和)准则,可以确定最佳匹配块的预测模式。对于当前帧的每个宏块来说,3种块的失真按如下进行计算

式中:Dmotion和Ddisparity分别为运动补偿块和视差补偿块的SAD最小值。Ir(B)是右路当前块,Ir-1(BR)是右路参考块,Il(BL)是左路参考块。SRR(B)和SRL(B)分别为B块在左右2路图像参考帧中的搜索范围。在左右2路图像的参考块I1(B′L)和Ir-1(B′R)的最佳匹配块中得到视差估计和运动估计的结果。接下来,联合估计块将通过I1(B′L)块和Ir-1(B′R)块的加权和来决定。Wn和Wn′为补充的加权函数,如图2中的A到D。最后,模式决定由式(4)进行描述,用来决定当前块进行何种补偿

2.3 右路视频运动估计的快速算法

在普通的立体视频编解码系统中,运动估计和视差估计是最关键的2个步骤。可是,与普通的视频编解码系统相比,右路视频额外的运动补偿及视差补偿极大地增加了运算负担。因此,在进行视差补偿前提出了精确的运动向量预测法和模式预决策法。首先,给出了运动向量(MV)和视差向量(DV)间的相互关系[8],如图3所示。

图3中4个向量间的相互关系可以由以下的等式来说明

总的来说,由于在时间域上,2帧之间的区别是很小的,因此得到以下的关系

通过以上的关系可以看出,由左路(MVL)得到的运动向量将被设置为右路(MVR)的预测值运动向量。由于摄像机的水平放置结构,在左右2路视频中存在一个图像的水平位移。这个位移称为“全局视差”。全局视差的引入将大大减小算法在视差估计及补偿过程中的计算复杂度和计算量。

2.4 背景探测和右路图像的全局视差估计

背景探测的应用可以准确确定前景(运动物体)及背景[9,10],是下一步进行全局视差估计以及模式预决策的前提。

背景由式(7)来确定

式中:B(N)是左路图像的第N帧的状态。MVN(x,y)是第N个块的运动向量。如果运动向量为0或者Fdiff(N)小于一个阈值,那么,这个块就是属于背景的,这样,B(N)设置为true。此步完成后,全局视差向量

这些背景块的视差向量将积累起来作为一个统计。出现频率最高的运动向量DV将被认作为全局视差向量GD。对于左路图像的第一个P帧,背景检测的方法用来得到全局视差向量GD。在右路图像进行运动补偿之前,通过使用全局视差向量GD能得到当前块(右路图像帧)的对应块(左路图像帧)。接下来,对应块的运动向量MV将被认作为右路图像帧当前块的预测值,这样,MVR只需很小的搜索范围就能准确得到,从而降低了运算复杂度。可是,背景的视差向量DV往往小于前景的视差向量。如果SAD大于一个阈值,将扩大搜索范围来获得一个更好的MV。这样,一个更精确的全局视差向量将反馈给系统。为了避免误码传播,每M帧全局视差向量都将刷新(M是一个可变的参量)。

2.5 视差估计前的模式预决策

实验结果表明,在右路图像的一帧中,有40%~70%的块需要进行运动补偿,25%~60%的块需要进行联合补偿,只有约5%的块需要进行视差补偿。由于联合补偿块的结果同时由运动估计和视差估计得到,这就代表着25%~60%的块需要进行运动估计和视差估计。分析可见,将近95%的块需要进行运动估计,同时只有40%~60%的块需要进行视差估计。这样,不必要的视差估计的过程就可省略,从而降低了运算复杂度。模式预决策的方法将由以下公式得到

如果Fdiff

3 实验结果与小结

实验结果表明,运用本文提出的立体图像压缩编解码方法,可以大大降低运算复杂度以及视频传输数据量。视差估计及运动估计的运算量约为普通算法15%,需传输的数据量与未进行压缩前相比,减少70%~80%,同时视频效果较之其他方法相比也有所提高。

综上所述,这种基于联合预测的算法,采用背景探测、模式预决策等策略,大大降低了运动估计、视差估计等的运算量。与传统方法相比,在保证图像质量的前提下,运算复杂度及计算量大大降低,且易于集成现有的编解码方式(H.264,MEPG-4等),易于在现有硬件系统上实现。

参考文献

[1]ADIKARI A B B,FERNANDO W A C.A H.264compliant stereoscopic video codec[C]//Proc.CCECE/CCGEI2005.Saskatoon:IEEE Press,2005:1614-1617.

[2]XIONG Wei,JIA Jiaya.Stereo matching on objects with fractional boundary[EB/OL].[2008-03-01].http://www.cse.cuhk.edu.hk/~leo-jia/all_final_papers/alpha_stereo_cvpr07.pdf.

[3]FRAJKA T,ZEGER K.Residual image coding for stereo image compression[J].Opt.Eng,2003,42(1):182-189.

[4]SHEN Liyun,HU Bo,WANG Qinzhe.A residual image coding scheme for stereo image compression[C]//Proc.2003IEEE Int.Conf.Neural Networks B Signal Processing.[S.l.]:IEEE Press,2003:1074-1077.

[5]VARODAYAN D,MAVLANKAR A.Distributed grayscale stereo image coding with unsupervised learning of disparity[EB/OL].[2008-03-01].http://www.stanford.edu/~bgirod/pdfs/Varo-dayan_DCC_07.pdf.

[6]VENKATESH Y V,RAJA S K,KUMAR A J.On the application of a modified self-organizing neural network to estimate stereo dis-parity[J].IEEE Trans.Image Processing,2007,16(11):2822-2829.

[7]杨蕾,戴居丰.基于H.264的静止自由立体图像压缩算法[J].计算机应用,2006,26(9):2086-2088.

[8]GUNATILAKE P D,SIEGEL M W,JORDAN A G.Compression of stereo video streams[EB/OL].[2008-03-01].http://www.cs.cmu.edu/afs/cs/project/sensor-9/ftp/papers/gunatilake_hdtv93.pdf.

[9]于成忠,朱骏,袁小辉.基于背景差法的运动目标检测[J].东南大学学报,2005(35):159-161.

硬件编解码 篇7

光码分多址(OCDMA)系统是未来高速全光局域网的可能解决方案之一。目前,OCDMA系统中能够直接使用的是单极性地址码,OCDMA系统的单极性码主要有光正交码(OOC)、素数码(PC)等[1]。但由于单极性码的自相关和互相关特性并不十分理想,基于单极性扩频码的OCDMA系统中的多址干扰(MAI)较为严重。因而提高OCDMA系统性能的有效办法是在系统中使用相关特性更加优秀的双极性地址码。

目前对双极性光码分多址系统的研究主要集中在双/单极性码的转换[2],文献[3]给出了编解码器的信息处理方式,文献[4]对OCDMA系统中的单极性和双极性码的容量与性能进行了比较。尽管这些双极性码的相关特性优于OOC等单极性码,但仍然不很理想。所以将m序列和Gold序列等双极性码应用于OCDMA系统中时还是存在一定程度的MAI,影响了OCDMA系统通信质量的进一步提高。为进一步降低OCDMA系统中的MAI,本文给出了将双极性完全互补序列应用于OCDMA系统的编解码方案和系统设计。通过理论分析和系统仿真发现,基于本方案的OCDMA系统的性能优于采用单极性码和双极性码的OCDMA系统。

1 完全互补序列的定义及其构造[5]

定义n个序列集S={S0,S1,…,Sp,…,Sn-1},每个序列集中包含n个序列Sr={S,S,…,S,…,S},每个序列长度为N2,如果全部序列的相关特性满足下列条件:

则称这些序列集构成一个完全互补序列集。式中,τ为时延。

完全互补序列可以通过正交矩阵构成,依据文献[5],可以构造一个N阶完全互补序列集C1={C,C,…,C},C2={C,C…,C},…,Ck={C,C,…,C},…,CN={C,C,…,C},其中各序列的长度为N2,Ck={C,C,…,C}为一个自互补序列。

2 双极性完全互补序列OCDMA系统的编解码方案与系统设计

光通信系统通常采用强度调制/直接探测(IM/DD)技术。单极性IM/DD信道不能传输负脉冲,因此在单极性信道中传输双极性码时,需要进行双极性码与单极性码的转换。如图1、图2所示,在发射端,输入的电双极性信号先转换为光单极性信号,再进行传输;接收端,信号做反处理,实现单极性信道中传输双极性信号。

N个用户同时接入网络,第k个用户的电双极性数据信息为

式中,bk,i是第k个用户的第i个码元符号;T为数据比特周期;τk为第k个用户的数据信号相对于参考信号的延时;pb(·)是一个连续T秒的单位方波。

每个用户使用它所分配到的一个自补码中的N个序列,分别对它的每一个数据比特进行扩频,形成N路信号,则用户k的第m路扩频序列可表示为

式中,C(j)为分配给第k个用户的自补码中的第m个序列的第j个码元符号;pc(·)是一个连续Tc秒的单位方波。

k个用户的第m路经过扩频后的数据可表示为

单/双极性转换公式为

m∈{1,2,…,N},扩频后的双极性码被转换为可在光纤中传输的单极性码。已转换为单极性码的第k个用户的N路数据采用光波分复用(OWDM)技术,将不同的波长(λ1,λ2,…,λN)耦合到同一根光纤中传输。

经过光纤信道传输后,在接收端,转换前的第m路单极性信号可表示为

式中,A为第k个用户的第m路信号的衰减。在接收端先进行单/双极性转换,即

根据式(4)可得

令每个用户每一路信号的光功率均为λs,衰减均为As,则式(8)可改写为

3 系统接收性能分析

在本系统中,由于用户1为目标用户,此时先对用户1的N路信号进行解扩,即使用分配给用户1的N个匹配滤波器分别对接收机接收到的N路信号进行相关运算。假设各用户信号保持同步,在t=iT时取样,对于目标用户1,第m个匹配滤波器的输出为

式中,R (0)为第1个用户的自相关峰值;R (0)为在出现第1个用户的自相关峰值的时刻,第k个用户和第1个用户的互相关值。对第1个用户的N个匹配滤波器的输出信号求和,接收机的总输出为

可见,第一项为期望的用户1的信息;第二项为多用户干扰项,由于完全互补序列的理想互相关特性完全消除;第三项为背景光干扰项。在OCDMA通信中,第三项值较小,接收机中的主要干扰来自于其他用户的MAI。在本系统中完全消除了来自于其他用户的MAI,提高了通信质量。

4系统仿真及结果讨论

4.1 系统仿真与分析

在本系统中,随机选取同一序列族内的两个码长为31的Gold序列G1和G2,并随机选取同一完全互补序列族内长度为16的两个自互补码序列C1={C,C,C,C},C2={C,C,C,C}。在系统中经过上述序列仿真得到自相关和互相关特性曲线分别如图3、4所示。图中时延单位为序列的一个码元周期。

从图3中可以看出,在OCDMA系统中,完全互补序列的自相关接收性能是理想的,旁瓣值为0。而Gold序列的自相关旁瓣取3个值,取值分别为7、-1和-9。

从图4可以看出,同一序列族中的完全互补序列间的互相关接收性能也是理想的,互相关运算得到的值均为0。而Gold序列的互相关特性较差,互相关函数亦为3值函数,取值分别为7、-1和-9。

通过比较基于Gold序列和完全互补序列的OCDMA系统的扩频增益发现,对于我们选取的长度为31的Gold序列,其扩频增益为31。而我们选取的长度仅为16的完全互补序列,其应用于系统中的扩频增益达到了4×16=64,远高于基于Gold序列的OCDMA系统。

因而,通过比较基于完全互补序列和基于Gold序列的OCDMA系统的自相关特性和互相关特性,以及扩频增益的差距,可以得出采用完全互补序列作为地址码的OCDMA系统性能要优于采用Gold序列的OCDMA系统的结论。

4.2 可用地址码数量的分析与比较

在OCDMA系统中,可容纳用户的数量与所采用的扩频序列的可用地址码数量是密切相关的。 对于基于m序列和Gold序列的单码OCDMA系统,用户可用地址码数量较少。例如,9级移位寄存器产生的m序列有48个。取出一个序列,只能找到12个m序列与其相关的互相关值最大值等于33。但找不到多于3个序列的组,其中任意两序列之间的互相关最大值等于33。尽管采用Gold序列作为地址码,地址数可大大超过用m序列作地址码时的数量,但通过仿真比较发现,Gold序列的自相关和互相关特性并不十分理想,影响了双极性OCDMA系统通信质量的进一步提高。

而完全互补序列具有理想的自相关和互相关特性,并且通过增加自互补序列的数量和长度,可用地址码的数量可以任意增加,为OCDMA通信系统用户数量的扩大以及通信质量的提高提供了广阔前景。

5 结束语

本文提出了基于双极性完全互补序列的OCDMA系统编解码方案及其系统设计,使具有理想相关特性的双极性完全互补序列可以在传统单极性OCDMA系统中得到应用。通过理论分析以及与基于Gold序列的OCDMA系统性能的仿真比较,得出了完全互补序列可以进一步提高OCDMA系统的通信质量的结论。

参考文献

[1]Chung F R K,Salehi J A,Wei V K.Optical orthogo-nal codes:design,analysis and applications[J].IEEETrans.Inform.Theory,1989,IT-35(3):595-604.

[2]Nguyen L,Dennis T,Aazhang B,et al.Experi mentaldemonstration of bipolar codes for optical spectral am-plitude CDMA communication[J].J.LightwaveTechnol.,1997,15(9):1 647-1 653.

[3]Li Xiaobin,Sun Yuyong,Song Jianzhong.Tunable se-rial encoder/decoder for optical code division multipleaccess communication system[J].Chinese J.Lasers,2003,30(4):353-356.

[4]董海峰,杨淑雯.双极性光码分复用系统的研究[J].光通信研究,2003,(1):23-27.

上一篇:咨询能力下一篇:施工工作