CN104363458A - 一种用于hevc标准中帧内预测的预测单元的硬件编址寻址方法 - Google Patents
一种用于hevc标准中帧内预测的预测单元的硬件编址寻址方法 Download PDFInfo
- Publication number
- CN104363458A CN104363458A CN201410590929.4A CN201410590929A CN104363458A CN 104363458 A CN104363458 A CN 104363458A CN 201410590929 A CN201410590929 A CN 201410590929A CN 104363458 A CN104363458 A CN 104363458A
- Authority
- CN
- China
- Prior art keywords
- address
- size
- unit
- addressing
- pieces
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Slot Machines And Peripheral Devices (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明属于高清数字视频压缩编解码技术领域,具体为一种用于HEVC标准中帧内预测的预测单元的硬件编址寻址方法。在HEVC帧内编码的过程中需要依据当前的搜索模式,对预测单元进行不同顺序的寻址;假设当前编码的最大单位为一个64×64块,那么对于当前的处理单位,其中所有4×4大小的预测单元按照Z字顺序编址;对于其他预测单元,将以其左上角的4×4块表征其地址;在此编址基础上,对于不同顺序搜索,给出不同的寻址的公式。本发明以较低的成本完成对于预测单元编址寻址的硬件实现。
Description
技术领域
本发明属于高清数字视频压缩编解码技术领域,针对HEVC视频编解码标准,具体涉及一种用于HEVC标准中帧内预测的预测单元的硬件编址寻址方法。
背景技术
HEVC(High Efficiency Video Coding)是由国际电信组织(ITU)和运动图像专家组(MPEG)联合成立的组织JCTVC提出的下一代视频编解码标准。目标是在相同的视觉效果的前提下,相比于上一代标准,即H.264/AVC标准,压缩率提高一倍。
基于HEVC的视频编码器,主要由以下模块组成:帧内预测、帧间预测、变换、量化、反量化、反变换、重建、去方块滤波器、自适应样点补偿等。其中,帧内预测利用同一帧图像内相邻像素之间的相关性,采用合适的方法进行预测,以减小空间冗余度,从而达到压缩的效果。为了提高预测的准确性,HEVC引入了基于四叉树的块结构,具体地,图像处理块的最大单位(LCU)可以是一个64×64块,而该64×64块可以被划分成4个32×32块,每个32×32块又可以被划分为4个16×16块,依次类推直到4×4块的层次,这些块被统一地称为预测单元(PU)。可以说,帧内预测的过程就是搜索预测单元(PU)的过程,而在这样的搜索过程中,对于当前预测单元(PU)的寻址是必不可少的,寻址的复杂直接影响了编码的效率和性能。
发明内容
本发明的目的在于提出一种可以克服现有技术不足的、高效的、用于HEVC标准中帧内预测的预测单元的硬件编址寻址方法。
假设当前编码的最大单位(LCU)为一个64×64块,那么对于当前的处理单位,其中所有4×4大小的预测单元(PU)将按照Z字(Zig-Zag)顺序编址,如图1所示。该顺序实际上也是HEVC标准中所采用的处理顺序,如图2所示。
而对于其他预测单元(PU),将以其左上角的4×4块表征其地址,8×8的情况如图3所示,16×16的情况如图4所示。
在此编址基础上,如果帧内预测按照前序遍历的顺序搜索,如图5所示,其中,圆圈内包含的数字表征了搜索顺序,那么对于下一块预测单元(PU)的寻址可以利用公式(1)完成:
(1)
此处,Addr nxt 是下一个PU的地址,Addr cur 是当前PU的地址,Size nxt 是下一个的PU的大小,Size cur 是当前的PU的大小,Addr nxt 和Addr cur 的单位是4×4大小的预测单元(PU),Size nxt 和Size cur 取的是预测单元(PU)的边长,单位是像素。
如果帧内预测按照后序遍历的顺序搜索,如图6所示,其中,圆圈内包含的的数字表征了搜索顺序,那么对于下一块预测单元(PU)的寻址可以利用公式(2)完成:
(2)
此处,Addr nxt 是下一个PU的地址,Addr cur 是当前PU的地址,Offset是需要加上的偏移地址,Size nxt 是下一个的PU的大小,Size cur 是当前的PU的大小,Addr nxt 、Addr cur 和Offset的单位是4×4大小的预测单元(PU),Size nxt 和Size cur 取的是预测单元(PU)的边长,单位是像素。
如果帧内预测按照给定分块(Partition)的顺序搜索,那么对于下一块预测单元(PU)的寻址可以利用公式(3)完成:
(3)
此处,Addr nxt 是下一个PU的地址,Addr cur 是当前PU的地址,Offset是需要加上的偏移地址, Size cur 是当前的PU的大小Addr nxt 、Addr cur 和Offset的单位是4×4大小的预测单元(PU),Size cur 取的是预测单元(PU)的边长,单位是像素。
使用本方法,可以有效地结合不同的搜索方式和不同块大小的预测单元(PU),简化对于预测单元(PU)的寻址操作,降低硬件复杂度,提高编码器的性能。
附图说明
图1:4×4大小预测单元(PU)的编址。
图2:Z字(Zig-Zag)顺序示意。
图3:8×8大小预测单元(PU)的编址。
图4:16×16大小预测单元(PU)的编址。
图5:前序遍历全搜索。
图6:后序遍历全搜索。
图7:给定分块(Partition)方式搜索的一个例子。
具体实施方式
下面通过实例并结合附图,进一步具体描述本发明方法。
如对于图5所示的前序遍历的搜索顺序,帧内预测将:
1. 搜索64×64块,其地址为0;
2. 搜索该64×64块中的第1个32×32块,其地址为1;
3. 搜索该32×32块中的第1个16×16块,其地址为1;
4. 搜索该16×16块中的第1个8×8块,其地址为1;
5. 搜索该8×8块中的1个4×4块,其地址为1;
6. 搜索该8×8块中的2个4×4块,其地址为2(1+1);
7. 搜索该8×8块中的3个4×4块,其地址为3(2+1);
8. 搜索该8×8块中的4个4×4块,其地址为4(3+1);
9. 搜索上一层16×16块中的第2个8×8块,其地址为5(4+1);
10. 搜索该8×8块中的1个4×4块,其地址为5;
11. 搜索该8×8块中的1个4×4块,其地址为6(5+1);
12. 搜索该8×8块中的1个4×4块,其地址为7(6+1);
13. 搜索该8×8块中的1个4×4块,其地址为8(7+1);
14. 搜索上一层16×16块中的第3个8×8块,其地址为9(8+1);
15. 搜索该8×8块中的1个4×4块,其地址为9;
16. 搜索该8×8块中的1个4×4块,其地址为10(9+1);
17. 搜索该8×8块中的1个4×4块,其地址为11(10+1);
18. 搜索该8×8块中的1个4×4块,其地址为12(11+1);
……
列出该顺序后,可以得到在下一个预测单元(PU)的大小小于当前预测单元(PU)的大小的情况下,预测单元(PU)的地址不变;在下一个预测单元(PU)的大小大于等于当前预测单元(PU)的大小的情况下,预测单元(PU)的地址加1。此处,地址仍以一个4×4大小的预测单元(PU)作为基本单位。
又对图6所示的后序遍历的搜索顺序,帧内预测将:
1. 搜索第1个4×4块,其地址为1;
2. 搜索第2个4×4块,其地址为2(1+1);
3. 搜索第3个4×4块,其地址为3(2+1);
4. 搜索第4个4×4块,其地址为4(3+1);
5. 搜索第1个8×8块,其地址为1(4-3*1);
6. 搜索第5个4×4块,其地址为5(1+4);
7. 搜索第6个4×4块,其地址为6(5+1);
8. 搜索第7个4×4块,其地址为7(6+1);
9. 搜索第8个4×4块,其地址为8(7+1);
10. 搜索第2个8×8块,其地址为5(8-3*1);
11. 搜索第9个4×4块,其地址为9(5+4);
12. 搜索第10个4×4块,其地址为10(9+1);
13. 搜索第11个4×4块,其地址为11(10+1);
14. 搜索第12个4×4块,其地址为12(11+1);
15. 搜索第3个8×8块,其地址为9(12-3*1);
16. 搜索第13个4×4块,其地址为13(9+4);
17. 搜索第14个4×4块,其地址为14(13+1);
18. 搜索第15个4×4块,其地址为15(13+1);
……
列出该顺序后,可以得到在下一个预测单元(PU)的大小大于当前预测单元(PU)的大小的情况下,下一个预测单元(PU)的地址等与当前地址减去之前所述的Offset变量的3倍;在下一个预测单元(PU)的大小小于等于当前预测单元(PU)的大小的情况下,下一个预测单元(PU)的地址等于当前地址加上Offset变量。此处,地址仍以一个4×4大小的预测单元(PU)作为基本单位。
再如对图7所示的基于给定分块方式(Partition)的搜索,在这个示例下,帧内预测将:
1. 搜索第1个32×32块,其地址为1;
2. 搜索下一个8×8块,其地址为65(1+64);
3. 搜索下一个8×8块,其地址为69(65+4);
4. 搜索下一个8×8块,其地址为73(69+4);
5. 搜索下一个8×8块,其地址为77(73+4);
6. 搜索下一个16×16块,其地址为81(77+4);
7. 搜索下一个16×16块,其地址为97(81+16);
8. 搜索下一个16×16块,其地址为113(97+16);
9. 搜索下一个16×16块,其地址为129(113+16);
10. 搜索下一个16×16块,其地址为145(129+16);
11. 搜索下一个8×8块,其地址为161(145+16);
12. 搜索下一个8×8块,其地址为165(161+4);
13. 搜索下一个8×8块,其地址为169(165+4);
14. 搜索下一个8×8块,其地址为173(169+4);
15. 搜索下一个16×16块,其地址为177(173+4);
16. 搜索下一个16×16块,其地址为193(177+16);
17. 搜索下一个16×16块,其地址为209(193+16);
18. 搜索下一个16×16块,其地址为225(209+16);
19. 搜索下一个8×8块,其地址为241(225+16);
20. 搜索下一个8×8块,其地址为245(241+4);
21. 搜索下一个8×8块,其地址为249(245+4);
22. 搜索下一个8×8块,其地址为253(249+4);
列出该顺序后,可以得到在下一个预测单元(PU)的大小大于当前预测单元(PU)的大小的情况下,下一个预测单元(PU)的地址永远等于当前地址加上之前所述的Offset变量。
Claims (1)
1.一种用于HEVC标准中帧内预测预测单元的硬件编址寻址方法,在HEVC帧内编码的过程中需要依据当前的搜索模式,对预测单元(PU)进行不同顺序的寻址;其特征在于:
假设当前编码的最大单位(LCU)为一个64×64块,那么对于当前的处理单位,其中所有4×4大小的预测单元(PU)按照Z字即Zig-Zag顺序编址;对于其他预测单元(PU),将以其左上角的4×4块表征其地址;
在此编址基础上,如果帧内预测按照前序遍历的顺序搜索,那么对于下一块预测单元(PU)的寻址的公式为:
(1)
此处,Addr nxt 是下一个PU的地址,Addr cur 是当前PU的地址,Size nxt 是下一个的PU的大小,Size cur 是当前的PU的大小,Addr nxt 和Addr cur 的单位是4×4大小的预测单元(PU),Size nxt 和Size cur 取的是预测单元(PU)的边长,单位是像素;
如果帧内预测按照后序遍历的顺序搜索,那么对于下一块预测单元(PU)的寻址的公式为:
(2)
此处,Addr nxt 是下一个PU的地址,Addr cur 是当前PU的地址,Offset是需要加上的偏移地址,Size nxt 是下一个的PU的大小,Size cur 是当前的PU的大小,Addr nxt 、Addr cur 和Offset的单位是4×4大小的预测单元(PU),Size nxt 和Size cur 取的是预测单元(PU)的边长,单位是像素;
如果帧内预测按照给定分块(Partition)的顺序搜索,那么对于下一块预测单元(PU)的寻址的公式为:
(3)
此处,Addr nxt 是下一个PU的地址,Addr cur 是当前PU的地址,Offset是需要加上的偏移地址, Size cur 是当前的PU的大小Addr nxt 、Addr cur 和Offset的单位是4×4大小的预测单元(PU),Size cur 取的是预测单元(PU)的边长,单位是像素。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410590929.4A CN104363458B (zh) | 2014-10-29 | 2014-10-29 | 一种用于hevc标准中帧内预测的预测单元的硬件编址寻址方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410590929.4A CN104363458B (zh) | 2014-10-29 | 2014-10-29 | 一种用于hevc标准中帧内预测的预测单元的硬件编址寻址方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104363458A true CN104363458A (zh) | 2015-02-18 |
CN104363458B CN104363458B (zh) | 2017-10-10 |
Family
ID=52530677
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410590929.4A Active CN104363458B (zh) | 2014-10-29 | 2014-10-29 | 一种用于hevc标准中帧内预测的预测单元的硬件编址寻址方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104363458B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2081388A1 (en) * | 2007-01-11 | 2009-07-22 | Huawei Technologies Co Ltd | A method and a device for intra frame prediction encoding/decoding |
CN101854540A (zh) * | 2009-04-01 | 2010-10-06 | 辉达公司 | 用于应用h.264视频编码标准的帧内预测方法及装置 |
CN103414895A (zh) * | 2013-07-29 | 2013-11-27 | 复旦大学 | 一种适用于hevc标准的编码器帧内预测装置及方法 |
CN103974069A (zh) * | 2014-05-22 | 2014-08-06 | 华为技术有限公司 | 可重用的视频编码方法和编码器 |
-
2014
- 2014-10-29 CN CN201410590929.4A patent/CN104363458B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2081388A1 (en) * | 2007-01-11 | 2009-07-22 | Huawei Technologies Co Ltd | A method and a device for intra frame prediction encoding/decoding |
CN101854540A (zh) * | 2009-04-01 | 2010-10-06 | 辉达公司 | 用于应用h.264视频编码标准的帧内预测方法及装置 |
CN103414895A (zh) * | 2013-07-29 | 2013-11-27 | 复旦大学 | 一种适用于hevc标准的编码器帧内预测装置及方法 |
CN103974069A (zh) * | 2014-05-22 | 2014-08-06 | 华为技术有限公司 | 可重用的视频编码方法和编码器 |
Also Published As
Publication number | Publication date |
---|---|
CN104363458B (zh) | 2017-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11553175B2 (en) | Method and apparatus for candidate list pruning | |
TWI536811B (zh) | 影像處理方法與系統、解碼方法、編碼器與解碼器 | |
CN110100436A (zh) | 使用导出色度模式译码视频数据 | |
CN110024384A (zh) | 基于帧间预测模式处理视频的方法和用于该方法的设备 | |
WO2009088038A1 (ja) | 画像符号化装置、画像復号装置、画像符号化方法、および画像復号方法 | |
RU2014117487A (ru) | Способ и устройство для кодирования/декодирования видеоданных | |
CN104284197A (zh) | 视频编码器及其操作方法 | |
CN104519367B (zh) | 视频解码处理装置及其操作方法 | |
CN102685477A (zh) | 获取用于合并模式的图像块的方法和设备 | |
US20160050431A1 (en) | Method and system for organizing pixel information in memory | |
US20070133689A1 (en) | Low-cost motion estimation apparatus and method thereof | |
CN101350928A (zh) | 一种运动估计方法及装置 | |
CN101179724B (zh) | 帧间压缩编码中的帧存储方法及装置 | |
CN105376586A (zh) | 一种适用于hevc标准中整数运动估计的三级流水线硬件架构 | |
WO2020185723A1 (en) | Intra prediction mode partitioning | |
TW201633786A (zh) | 多媒體編解碼器、包括其之應用處理器、及操作該應用處理器之方法 | |
CN104363458A (zh) | 一种用于hevc标准中帧内预测的预测单元的硬件编址寻址方法 | |
KR20090041944A (ko) | 인근 블록의 모드정보를 이용한 움직임 추정 방법 및 장치 | |
CN103581685A (zh) | H264参考帧选择方法及其装置 | |
CN103327340A (zh) | 一种整数搜索方法及装置 | |
CN105530517B (zh) | 一种解码器及有损解码视频图像的方法 | |
CN104363455A (zh) | 一种适用于hevc标准中帧内预测的参考像素的硬件片上存储方法 | |
CN105430413A (zh) | 一种适用于hevc标准中整数运动估计的四分块硬件扫描方法 | |
CN106817583B (zh) | 一种hevc sao计算方法和装置 | |
CN104602026A (zh) | 一种适用于hevc标准下编码器中全复用的重建环路结构 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |