"); //-->
摘要:h.26l是下一代视频编码标准。它的编码性超越了所有现存标准,包括h.263+和mpeg-4(sp)。该文分析h.26l引入的多种新的编码特性,着重讲述4×4点整数变换,并提出一种在tm1300上实现的快速变换算法。
关键词:h.26l uvlc 4×4点整数变换 tm1300
引言
h.26l是下一代视频编码标准。最初,h.26l由itu-t的vceg小组开始着手制订。2001年11月,mpeg和vceg联合成立jvt小组共同参与制订h.26l。也正因为mpeg的加入,h.26l将被纳入mpeg-4的第十部分。由于h.26l标准还在制订过程中,本文暂时以jvt提供的测试模型tml8为参考。
h.26l信源编码的基本编码框架类似于当前流行的视频编码标准,采用结合变换编码和预测编码的混合编码技术。它出色的性能主要来源于引入的新编码特性:4×4点整数变换、使用uvlc进行熵编码、1/4~1/8像素精度的运行矢量、有多种块大小进行运动估计等等。这些新的编码技术从不同侧面提高了压缩性能和容错性能。尤其是4×4点整数变换,是所有视频压缩协议中独一无二的。
虽然h.26l标准还在制订中,但是在初步的测试中,它的编码性能超越了现存所有标准,包括h.263+和mpeg-4(simple profile)。这些试验结果表明,在取得相同的客观视频质量下,h.26l比h.263+能够节省20%~50%的码率,比mpeg-4(sp)节省多达50%的码率。作为下一代视频编码标准,h.26l展示了其巨大的发展前景。
1 h.26l的4×4点整数变换
1.1 变换简介
在h.26l编码技术中,4×4点整数变换可以看作是dct变换的整数版本,主要完成去除图像的空间相关性,与4×4点dct变换有着相同的性质。先考虑一维的整数变换:设a,b,c,d是4个待变换的点,a,b,c,d是对应的4个变换系数,则可以用以下公式表示a,b,c,d点的正变换:
a=13a+13b+13c+13d
b=17a+7b-7c-17d
c=13a-13b-13c+13d
d=7a-17b+17c-7d
反变换公式如下:
a=13a+17b+13c+7d
b=13a+7b-13c-17d
c=13a-7b-13c+17d
d=13a-17b+13c-7d
其中a和a的关系是a=676a。也就是说,经过反变换后,还需要进行归一化操作,使得正变换和变换尺度一致。
同样二维的4×4整数变换的变换核是可分离的。分离的变换将计算复杂度从o(n4)降到o(n3)。
1.2 与8×8点dct变换的比较
与传统的dct变换相比,h.26l采用4×4点整数变换为视频编码带来了以下优点:
①有助于减少块斑和环形斑,提高了图像质量。由于对变换系数进行了量化,造成了高频系数丢失,所以恢复的图像中会有块班和环形班。在h.26l中,采用了更小的4×4点变换,可以有效抑制块斑和环形斑。
②整数变换减小了积累误差。传统的积累误差来自两个方面:正变换和反变换不匹配造成的误与量化造成的误差。为了达到压缩的目的,第二种误差不可避免。但是,由于h.26l采用了精确的整数变换,所以正变换和反变换不会产生误差,这样有效地减少了积累误差。
③运算速度快。因为h.26l采用的变换公式是一个简单的整数方程,也就是说计算都是基于整数的,而不是浮点数,所以它减少了单个变换的计算量,也有利于采用定点的dsp实现。
2 在tm1300中的实现
tm1300是一款32位超高性能的多媒体处理器。它的核心处理器采用的是vliw超长指令字结构,可以在每一个时钟周期内同时进行5个操作;支持高度并行的定制操作,能大大加快数字信号处理和多媒体应用中常见的特殊运行的性能,而定制操作在使用上类似于c语言函数调用,方便了程序的设计。
本文针对4×4点整数变换的特点和tm1300的定制运算指令的特点,对整数变换作了以下调整:先做行变换,再做列变换。由于行变换的结果不会超过16位的表示范围,故在作列变换之前,重新合并数据,再作列变换,这样作是基于以下两点考虑。
第一,由于视频输入数据为无符号的字节型,而tm1300是32位的处理器,以字为单位访问内存,能提高访问的效率。当前4×4数据块(指针为p1)和参考帧4×4数据块(指针为p2)的数据组织如下。待变换的点为当前数据块的值与参考帧数据块对应的值之差。
p1:cal,cb1,cc1,cd1 p2:ra1,rb1,rc1,rd1
ca2,cb2,cc2,cd2 ra2,rb2,rc2,rd2
ca3,cb3,cc3,cd3 ra3,rb3,rc3,rd3
ca4,cb4,cc4,cd4 ra4,rb4,rc4,rd4
第二,可以利用8位乘/累加的定制操作,一个操作能完成4个8位乘/累加,一个机器周期(clk)最多能执行5个操作。与非定制的乘/累加相比,减少了运算的次数,提高了程序运行的并行度。
图1为ifir8ui定制操作功能示意图。
3 实验结果
本文提出的基于tm1300的4×4整数变换的快速算法,使用了并行算是技术大大减少了计算量。实验表明,进行1个4×4点整数变换,直接用乘法和加法运算需要80个机器周期,改进后的算法只需28个机器周期;而利用tm1300进行1个8×8点定点dct变换需要180个机器周期,也明显大于4个4×4点整数变换时间。在变换方面h.264的变换编码运算复杂度小于其它编码方法。
专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
液晶相关的程序
谁知道Vxworks如何实现简单的HttpServer例子
探讨一下“为什么USB传输距离这么短”
Bourns® 高电压、高能量 GDT 系列以精巧尺寸封装中提供业界领先的浪涌保护性能
北约创新基金牵头为SatVu热成像公司完成 3000万英镑融资
802.15.4无线互联协议栈
高价购买I2c的IP模块!!
实用的门控防盗报警器
NVIDIA带动硅光子话题 然而「光铜并存」才是现实?
从工具到平台:如何化解跨架构时代的工程开发和管理难题
2004中科院计算所开放日大型成果展通知
简易多功能报警器电路图
安全气囊概念车展示现代汽车安全性
芯源的单片机教程(上册)
微功耗断线式防盗报警器
折痕优化达40%以上:京东方发布镜感“0痕”折叠显示屏
MC56F8006 DSC简介
芯源的单片机教程
从汽车到数据中心,联发科MWC 2026巴塞罗那展示丰富技术
消息称Meta自研芯片梦受挫:最先进芯片夭折,靠合作寻求替代方案
市电电压双向越限报警保护器
Continua USB PHDC 演示
英伟达正研发一款绝密 AI 推理芯片,或于下月首发
古尔曼:苹果坚持Mac与iPad独立,触控版MacBook Pro定档2026年底
从创客工坊到AI课堂:一篇文章带你认识全球开源硬件“大家族”
能自动点火的煤气熄火报警器
MOTOROLA招聘模拟电子线路工程师
旋极公司提供的DSP 用 RTOS介绍(中文)
液晶显示模块在6502单片机监测系统中的应用
飞思卡尔智能电表演示