用数字信号处理器优化视频编码器
时间:03-11
来源:电子工程专辑
点击:
高压缩比标准的各种特性为技术人员提供了广阔的空间,在复杂性、延迟以及其他约束实时性能的因素之间获得最佳平衡。
用数字视频编码进行视频压缩能够在尽可能降低视频容量的同时保持可接受的视频质量。但是,为便于传输和存储而降低大小的视频压缩可能会牺牲一些图像质量。此外,视频压缩还要求处理器具备较高性能,并且在设计中要支持丰富的功能,因为不同类型的视频应用在分辨率、带宽以及灵活性方面都有着不同的要求。具有更高灵活性的数字信号处理器(DSP)不仅能够充分满足上述需求,而且还可充分发挥高级视频压缩标准提供的丰富选项来帮助系统开发人员实现产品优化。
视频编解码(编解码器)算法的固有结构和复杂性促使我们必须采用优化方案。编码器非常重要,因为它们不但必须满足应用要求,而且也是视频应用进行大量处理任务的主要部分。虽然编码器是基于信息理论之上的,但在实施过程中仍需要在不同因素间权衡取舍,因此会非常复杂。编码器应当具有高度的可配置性,并能针对各种视频应用提供简单易用的系统接口且实现性能最佳化,从而使开发人员受益匪浅。
视频压缩的特性
原始数字视频的传输或存储需要占用大量空间。像H.264/MPEG-4 AVC等高级视频编解码器能实现高达60:1到100:1的压缩比并确保持续不变的吞吐量,这使我们能够利用较窄的传输通道实现传输,并能减少视频存储所占的空间。
与静态影像领域的JPEG标准一样,ITU与MPEG视频编码算法也需要结合采用离散转换编码(DCT或类似技术)、量化和可变长度编码等技术来压缩帧中的宏块。一旦算法建立了基线编码内(I帧),只需通过视觉内容的差值或它们之间的残留值进行编码,就可建立众多的后续预测帧(P帧)。我们可用所谓运动补偿技术来实现这种帧间差值。该算法首先估算前一参考帧宏块移入到当前帧的位置,然后再消除冗余并压缩剩余部分。
图1给出了一般性运动补偿视频编码器的结构图。运动矢量(MV)数据描述了各块的移动位置,该数据在估算阶段创建,这通常是算法中计算强度最大的阶段。
图1:一般性运动补偿视频编码器的结构图。
图2显示了P帧(右)及其参考帧(左)。在P帧下方,剩余部分(黑色部分)显示了计算出运动矢量(蓝色部分)后剩余的编码量。
图2:显示计算运动矢量后剩余编码量的P 帧及参考帧。
视频压缩标准仅指定位流语法与解码进程,从而使编码器拥有很大的创新空间。速率控制也是一个可以创新的领域,使编码器能分配量化参数,从而以适当的方式确定视频信号中的噪声。此外,高级H.264/MPEG-4 AVC标准还可提供宏块大小、运动补偿四分之一像素分辨率(quarter-pel resolution)、多参考帧、双向帧预测(B帧)以及自适应环内去块滤波(in-loop deblocking)等多种选择,从而既提高了灵活性同时还增强了功能。
多样化的应用需求
视频应用要求差异很大。高级压缩标准的各种特性为技术人员提供了广阔的空间,在复杂性、延迟以及其他约束实时性能的因素之间获得最佳平衡。例如,我们可以设想,视频电话、视频会议以及数码摄像机(DVR)对视频就有着不同的要求。
视频电话与视频会议
就视频电话与视频会议应用而言,传输带宽通常是最重要的问题。根据链接的不同,带宽传输的范围可介于每秒数十到数千KB之间。在某些情况下,我们可以确保传输速度,但对于互联网及众多企业内部网而言,传输速度会有很大差异。因此,视频会议编码器通常需要满足不同类型的链路,并应实时适应不断变化的可用带宽。发送系统收到接收端条件后,应不断调节编码输出,以确保尽可能以最少的视频中断提供最佳的视频质量。如果条件较差,则编码器可以采取降低平均比特率、跳帧或更改图像组(GoP,即I帧与P帧相混合)等方法来应对。I帧的压缩程度低于P帧,因此带有较少I帧的GoP所需的整体带宽较低。由于视频会议的可视内容通常不会变化,因此可减少I帧的使用数量,使其低于娱乐应用的水平。
H.264采用自适应环路内去块滤波器处理块的边缘,以保持视频在当前帧与后续帧之间的平滑,从而提高视频编码质量,这点在低比特率时尤其有效。此外,关闭过滤器也能提高在既定比特率下可视化数据的数量,并可将运动估算分辨率从四分之一像素精度提高到二分之一乃至更高。在某些情况下,我们可能需要降低去块滤波质量或降低分辨率,从而减小编码工作的复杂性。
由于互联网的分组提供不能确保质量,因此视频会议通常能从可提高容错率的编码机制中受益。如图3所示,P帧的连续图像条(progressive strip)可用做帧内编码(I图像条),这样在初始帧之后就不再需要完整的I帧了,并能减少整个I帧被丢弃和图像破损的问题。
用数字视频编码进行视频压缩能够在尽可能降低视频容量的同时保持可接受的视频质量。但是,为便于传输和存储而降低大小的视频压缩可能会牺牲一些图像质量。此外,视频压缩还要求处理器具备较高性能,并且在设计中要支持丰富的功能,因为不同类型的视频应用在分辨率、带宽以及灵活性方面都有着不同的要求。具有更高灵活性的数字信号处理器(DSP)不仅能够充分满足上述需求,而且还可充分发挥高级视频压缩标准提供的丰富选项来帮助系统开发人员实现产品优化。
视频编解码(编解码器)算法的固有结构和复杂性促使我们必须采用优化方案。编码器非常重要,因为它们不但必须满足应用要求,而且也是视频应用进行大量处理任务的主要部分。虽然编码器是基于信息理论之上的,但在实施过程中仍需要在不同因素间权衡取舍,因此会非常复杂。编码器应当具有高度的可配置性,并能针对各种视频应用提供简单易用的系统接口且实现性能最佳化,从而使开发人员受益匪浅。
视频压缩的特性
原始数字视频的传输或存储需要占用大量空间。像H.264/MPEG-4 AVC等高级视频编解码器能实现高达60:1到100:1的压缩比并确保持续不变的吞吐量,这使我们能够利用较窄的传输通道实现传输,并能减少视频存储所占的空间。
与静态影像领域的JPEG标准一样,ITU与MPEG视频编码算法也需要结合采用离散转换编码(DCT或类似技术)、量化和可变长度编码等技术来压缩帧中的宏块。一旦算法建立了基线编码内(I帧),只需通过视觉内容的差值或它们之间的残留值进行编码,就可建立众多的后续预测帧(P帧)。我们可用所谓运动补偿技术来实现这种帧间差值。该算法首先估算前一参考帧宏块移入到当前帧的位置,然后再消除冗余并压缩剩余部分。
图1给出了一般性运动补偿视频编码器的结构图。运动矢量(MV)数据描述了各块的移动位置,该数据在估算阶段创建,这通常是算法中计算强度最大的阶段。
图1:一般性运动补偿视频编码器的结构图。
图2显示了P帧(右)及其参考帧(左)。在P帧下方,剩余部分(黑色部分)显示了计算出运动矢量(蓝色部分)后剩余的编码量。
图2:显示计算运动矢量后剩余编码量的P 帧及参考帧。
视频压缩标准仅指定位流语法与解码进程,从而使编码器拥有很大的创新空间。速率控制也是一个可以创新的领域,使编码器能分配量化参数,从而以适当的方式确定视频信号中的噪声。此外,高级H.264/MPEG-4 AVC标准还可提供宏块大小、运动补偿四分之一像素分辨率(quarter-pel resolution)、多参考帧、双向帧预测(B帧)以及自适应环内去块滤波(in-loop deblocking)等多种选择,从而既提高了灵活性同时还增强了功能。
多样化的应用需求
视频应用要求差异很大。高级压缩标准的各种特性为技术人员提供了广阔的空间,在复杂性、延迟以及其他约束实时性能的因素之间获得最佳平衡。例如,我们可以设想,视频电话、视频会议以及数码摄像机(DVR)对视频就有着不同的要求。
视频电话与视频会议
就视频电话与视频会议应用而言,传输带宽通常是最重要的问题。根据链接的不同,带宽传输的范围可介于每秒数十到数千KB之间。在某些情况下,我们可以确保传输速度,但对于互联网及众多企业内部网而言,传输速度会有很大差异。因此,视频会议编码器通常需要满足不同类型的链路,并应实时适应不断变化的可用带宽。发送系统收到接收端条件后,应不断调节编码输出,以确保尽可能以最少的视频中断提供最佳的视频质量。如果条件较差,则编码器可以采取降低平均比特率、跳帧或更改图像组(GoP,即I帧与P帧相混合)等方法来应对。I帧的压缩程度低于P帧,因此带有较少I帧的GoP所需的整体带宽较低。由于视频会议的可视内容通常不会变化,因此可减少I帧的使用数量,使其低于娱乐应用的水平。
H.264采用自适应环路内去块滤波器处理块的边缘,以保持视频在当前帧与后续帧之间的平滑,从而提高视频编码质量,这点在低比特率时尤其有效。此外,关闭过滤器也能提高在既定比特率下可视化数据的数量,并可将运动估算分辨率从四分之一像素精度提高到二分之一乃至更高。在某些情况下,我们可能需要降低去块滤波质量或降低分辨率,从而减小编码工作的复杂性。
由于互联网的分组提供不能确保质量,因此视频会议通常能从可提高容错率的编码机制中受益。如图3所示,P帧的连续图像条(progressive strip)可用做帧内编码(I图像条),这样在初始帧之后就不再需要完整的I帧了,并能减少整个I帧被丢弃和图像破损的问题。
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- FPGA的DSP性能揭秘(06-16)
- 用CPLD实现DSP与PLX9054之间的连接(07-23)
- DSP+FPGA结构在雷达模拟系统中的应用(01-02)