用于h.264色度内插计算的操作方法

文档序号:7897298阅读:201来源:国知局
专利名称:用于h.264色度内插计算的操作方法
用于H. 264色度内插计算的操作方法技术领域
本发明属于数字信号处理领域,涉及一种用于HJ64色度内插计算的操作方法。
技术背景
H.264是由ITU-T视频编码专家组(VCEG)和ISO/IEC动态图像专家组(MPEG) 联合组成的联合视频组(JVT,JointVideoTeam)提出的高度压缩数字视频编解码器标 准。HJ64视频标准相比以前的视频标准,具有更高压缩率,更高图像质量的优点,但带 来的代价就是计算复杂度和计算量大大增加。
随着人们对视频图像分辨率和视频处理实时性的要求越来越高,视频编解码器 的能力已成为制约视频处理技术发展的瓶颈,因此提高视频处理速度已成为视频处理领 域的一个迫切要求。
提高视频处理速度可以从两方面入手一方面采用具有更强大处理能力的处理 器,例如使用主频更高、专用指令更多、数据位数更宽(如32位)的处理器,如ARM9, ARMl 1, 等主流处理器;另一方面是从视频处理的具体算法和实现入手,提高视频 处理速度。
H.264的色度内插是一个4阶滤波器,一次色度内插的操作数是当前采样点位置 的整像素点及其右方、下方、及对角线方向紧邻的3个整像素点。为了提供更逼真、更 接近实际物体的影像,H.264视频标准支持1/8色度采样,为了提供更清晰的图像质量, 在H.264高级档次中已支持YUV4:2:2甚至YUV4:4:4,也就是色度分量所占的比重已经达 到甚至超过亮度分量,而H.264所支持的最小操作色度块达到&2,4阶滤波器计算量也 非常大,所以色度内插操作已成为HJ64中耗时最多,计算量最大的模块之一。因此提 高视频处理速度的一个重要方法就是加速色度内插计算。
下面先简要介绍H.264色度插值方法。
H.264色度内插介绍
如图1中所示,A、B、C和D为4个整像素点,(xFraCc,yFraCc)为以分数像素点为单位(即1/8个整像素点距离)的色度位置偏移量,(xc,yc)为内插采样点,各像 素点的色度值以[·]表示,例如,像素点A的色度值为[A],由此,
则(xc,yc)的色度值=
((8-xFraCc) * (8_yFracc) *[A]+xFracc* (8_yFracc) *[B]+
(8-xFracc)*yFracc*[C]+xFracc*yFracc*[D]+0x20) >> 6 (1)
由上可见,如何简化计算,提高色度内插的处理速度,实已成为本领域技术人 员亟待解决的问题。发明内容
本发明的目的在于提供一种用于HJ64色度内插计算的操作方法,以提升色度内 插时的数据处理速度。3
为了达到上述目的及其他目的,本发明提供的用于HJ64色度内插计算的操作方 法,用于计算像素点之间的内插点的色度值,其中,像素点的色度值以^Dit表示,所述 方法的包括步骤1)将至少三行连续像素点中每相邻两行中处在同一列的两像素点的色 度值两两组合形成各具有32bit的无符号数据,其中,每一行包含至少两个像素点,在各 32bit的无符号数据中,沿列方向其位置在后的像素点的亮度值占据第17至对位,位置在 前的像素点的亮度值占据第1至第8位;2、基于所形成的各32bk的数据、内插点与相应 像素点的位置偏移量、及H.264标准,进行4阶滤波的色度内插,以获得至少一 32bit位 的中间值;以及幻将所述至少一中间值各自的低16bit位数据和高16bit位数据分别移位 预设位,以获得行内插点的色度数据。
此外,本发明的用于HJ64色度内插计算的操作方法,用于计算像素点之间的内 插点的色度值,其中,像素点的色度值以8bit表示,所述方法的特征在于包括步骤1) 将至少三行连续像素点中每相邻两列中处在同一行的两像素点的色度值两两组合形成各 具有32bit的无符号数据,其中,每一行包含至少两个像素点,在各32bit的无符号数据 中,沿行方向其位置在后的像素点的亮度值占据第17至对位,位置在前的像素点的亮度 值占据第1至第8位;幻基于所形成的各的数据、内插点与相应像素点的位置偏移 量、及H.264标准,进行4阶滤波的色度内插,以获得至少一 32bit位的中间值;以及3) 将所述至少一中间值各自的低16bk位数据和高16bit位数据分别移位预设位,以获得行内 插点的色度数据。
其中,所述色度值可以是U分量值或者V分量值。
综上所述,本发明的用于HJ64色度内插计算的操作方法通过将像素点的色度值 进行两两组合,可使一次色度内插计算得到两个内插结果,极大地提高了 HJ64色度内插 计算速度,从而有效加速了 H.264编解码速度。


图1为色度内插中的内插点位置与周围整像素点位置的关系的示意图。
图2为本发明的用于H.264色度内插计算的操作方法的流程图。
具体实施方式
请参阅图1和图2,本发明的用于H.264色度内插计算的操作方法用于计算像素 点(即整像素点,如像素点A、B、C、D、E、F、G、H、I等)之间的内插点(也就 是各分数像素点,如内插点a、b、C、d等)的色度值。其中,各像素点的色度值以Sbit 表示,例如,将其存放在一个32bit数据的最低^it,该数据的高24bit等于0,色度值可 以是U分量值,也可以是V分量值。
首先,将至少三行连续像素点中每相邻两行中处在同一列的两像素点的色度值 两两组合形成各具有32bit的无符号数据,其中,每一行包含至少两个像素点,在各32bit 的无符号数据中,沿行方向其位置在后的像素点的亮度值占据第17至M位,位置在前 的像素点的亮度值占据第1至第8位。例如,如图1所示,将3行3列整像素点{{A, B,G},{C,D,H}, {E,F,I}}的色度值两两组合,其中,各像素点的色度值以[·] 表示,例如,像素点A的色度值表示为[A],两两合并后形成的32bit无符号数据{[A’]、[B’]、[G’]、[C’]、[D’]、[H’]},其中,在无符号数据[A’]中,像素点A的色度值占据第1至第8位,像素点C的色度值占据第17至对位;在无符号数据[B’]中,像素点B的色 度值占据第1至第8位,像素点D的色度值占据第17至M位;在无符号数据[G’]中, 像素点G的色度值占据第1至第8位,像素点H的色度值占据第17至M位;在无符号 数据[C’]中,像素点C的色度值占据第1至第8位,像素点E的色度值占据第17至M 位;在无符号数据[D’]中,像素点D的色度值占据第1至第8位,像素点F的色度值占 据第17至M位;在无符号数据[H’]中,像素点H的色度值占据第1至第8位,像素点 I的色度值占据第17至M位。各无符号数据的获得方式可以是如下方式
将两像素点中在下方的像素点的色度值左移16位,再与上方像素点的色度值进 行或运算,例如,像素点A和像素点C组合时,将像素点A下方的像素点C的色度值左 移16位,再与像素点C上方的像素点A进行或(I)运算,由此,两两组合即为
[A’] = [A]|([C] << 16) ; [B’] = [B]|([D] << 16) ; [G’] = [G]|([H] << 16);
[C’] = [C]|([E] << 16) ; [D’] = [D]|([F] << 16) ; [H’] = [H]| ([I] << 16);
其中,形成的32位的无符号数据中的第M至31位及8至15都为0。
接着,基于所形成的各Mbit的数据、内插点与相应像素点的位置偏移量、及 H.264标准,进行4阶滤波的色度内插,以获得至少一 32bit位的中间值。例如,基于上 述获得的各无符号数据、内插点a、b、C、和d等与相应像素点位置偏移量,进行色度内 插,即
T。’ = ((8-xFraCc) * (8_yFracc) * [A’ ]+xFracc* (8_yFracc) * [B’ ]+
(8-xFracc)*yFracc*[C’]+xFracc*yFracc*[D’]+0x200020);
TV = ((8-xFraCc) * (8_yFracc) *[B’]+xFracc* (8_yFracc) *[G’]+
(8-xFracc)*yFracc*[D’]+xFracc*yFracc*[H’]+0x200020);
其中,(xFracc,yFraCc)为以分数像素点为单位(即1/8个整像素点距离)的色 度位置偏移量,具体如图1所示。
接着,将所述至少一中间值,例如,T;、T1',各自的低16bk位数据和高16bit 位数据分别移位预设位,以获得行内插点的色度数据。例如Ttl’的低16 位数据Tc 、高 16bit位数据T01, T1'的低16bit位数据T10,高16bit位数据T11即为
T00 = T0’[15:0];
T01 = Τ0’[31:16];
T10 = ^15:0];
T11 = TV[31:16];
各数据移位6位后,即为
Roo=T 丄00>> 6
Roi= T01>> 6
RlO= T10>> 6
Rll= T11>> 6
其中,Roc^ R01, Rltl和R11为色度内插所得的四个内插结果,分别对应于图1中 内插点a、b、c及d的四个色度值。
此外,本领域技术人员应该理解,上述是以3行3列整像素点为例进行说明,因此,内插计算后可获得4个内插点的色度值,事实上,并非以此为限,例如,也可仅仅 对3行2列的像素点进行色度内插,如此,计算后可获得2个内插点的色度值,还可对4 行或4行以上内插处理,在此不再一一详述。
再者,本发明的用于HJ64色度内插计算的操作方法还可用于列内插计算,即 将至少三行连续像素点中每相邻两列中处在同一行的两像素点的色度值两两组合形成各 具有32bit的无符号数据,其中,每一行包含至少两个像素点,在各32bk的无符号数据 中,沿行方向其位置在后的像素点的亮度值占据第17至M位,位置在前的像素点的亮 度值占据第1至第8位。仍以图1为例,将3行3列整像素点{{A,B,G},{C, D, H}, {E,F,I}}的色度值两两组合,其中,各像素点的色度值以[·]表示,例如,像素 点A的色度值表示为[A],两两合并后形成的32bit无符号数据丨[A’]、[C’]、[E’]、[B’]、 [D’]、[F]},其中,在无符号数据[A’]中,像素点A的色度值占据第1至第8位,像素 点B的色度值占据第17至M位;在无符号数据[C’]中,像素点C的色度值占据第1至 第8位,像素点D的色度值占据第17至M位;在无符号数据[E’]中,像素点E的色度 值占据第1至第8位,像素点F的色度值占据第17至对位;在无符号数据[B’]中,像素 点B的色度值占据第1至第8位,像素点G的色度值占据第17至24位;在无符号数据 [D’]中,像素点D的色度值占据第1至第8位,像素点H的色度值占据第17至对位; 在无符号数据[F’]中,像素点F的色度值占据第1至第8位,像素点I的色度值占据第17 至24位。
接着,基于所形成的各Mbit的数据、内插点与相应像素点的位置偏移量、及 HJ64标准,进行4阶滤波的色度内插,以获得至少一32bit位的中间值,此处理过程如前 类似,在此不再重述。
最后,将所述至少一中间值各自的低16bit位数据和高16bit位数据分别移位预设 位,例如,6位,即可获得行内插点的色度数据。
综上所述,本发明的用于H.264色度内插计算的操作方法根据H.264色度内插计 算的特点和处理器的硬件结构,只需要对像素点的色度值进行两两组合,可使一次色度 内插计算得到两个内插结果,极大地提高了 H.264色度内插计算速度,从而有效加速了 H.264编解码速度。
上述实施例仅列示性说明本发明的原理及功效,而非用于限制本发明。任何熟 悉此项技术的人员均可在不违背本发明的精神及范围下,对上述实施例进行修改。因 此,本发明的权利保护范围,应如权利要求书所列。
权利要求
1.一种用于H.264色度内插计算的操作方法,用于计算像素点之间的内插点的色度 值,其中,像素点的色度值以8bit表示,所述方法的特征在于包括步骤1)将至少三行连续像素点中每相邻两行中处在同一列的两像素点的色度值两两组合 形成各具有32bit的无符号数据,其中,每一行包含至少两个像素点,在各32bit的无符号 数据中,沿列方向其位置在后的像素点的亮度值占据第17至24位,位置在前的像素点的 亮度值占据第1至第8位;2)基于所形成的各32bit的数据、内插点与相应像素点的位置偏移量、及H.264标 准,进行4阶滤波的色度内插,以获得至少一 32bit位的中间值;3)将所述至少一中间值各自的低16bit位数据和高16bit位数据分别移位预设位,以 获得行内插点的色度数据。
2.如权利要求1所述的用于H.264色度内插计算的操作方法,其特征在于每一行包 括3个像素点。
3.如权利要求1所述的用于H.264色度内插计算的操作方法,其特征在于所述预设 位为6。
4.如权利要求1所述的用于H.264色度内插计算的操作方法,其特征在于所述色度 值包括U分量值和V分量值。
5.—种用于H.264色度内插计算的操作方法,用于计算像素点之间的内插点的色度 值,其中,像素点的色度值以8bit表示,所述方法的特征在于包括步骤1)将至少三行连续像素点中每相邻两列中处在同一行的两像素点的色度值两两组合 形成各具有32bit的无符号数据,其中,每一行包含至少两个像素点,在各32bit的无符号 数据中,沿行方向其位置在后的像素点的亮度值占据第17至24位,位置在前的像素点的 亮度值占据第1至第8位;2)基于所形成的各32bit的数据、内插点与相应像素点的位置偏移量、及H.264标 准,进行4阶滤波的色度内插,以获得至少一 32bit位的中间值;3)将所述至少一中间值各自的低16bit位数据和高16bit位数据分别移位预设位,以 获得行内插点的色度数据。
6.如权利要求5所述的用于H.264色度内插计算的操作方法,其特征在于所述色度 值包括U分量值和V分量值。
7.如权利要求5所述的用于H.264色度内插计算的操作方法,其特征在于所述预设 位为6。
全文摘要
本发明提供一种用于H.264色度内插计算的操作方法,首先将至少三行连续像素点中每相邻两行或两列的相应两像素点的色度值两两组合形成各具有32bit的无符号数据,其中,每一行包含至少两个像素点,随后,基于所形成的各32bit的数据、内插点与相应像素点的位置偏移量、及H.264标准,进行4阶滤波的色度内插,以获得至少一32bit位的中间值,最后,将所述至少一中间值各自的低16bit位数据和高16bit位数据分别移位预设位,以获得行内插点的色度数据,由此,可实现一次色度内插计算得到两个内插结果,极大地提高了H.264色度内插计算速度。
文档编号H04N11/04GK102026005SQ20101060840
公开日2011年4月20日 申请日期2010年12月23日 优先权日2010年12月23日
发明者范佑 申请人:芯原微电子(上海)有限公司, 芯原微电子(北京)有限公司, 芯原股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1