The invention discloses a parallel frame 8x8 sub macroblock in H.265/HEVC prediction method, which comprises the following steps: unified intra prediction formula, establish coefficient table and the reference position table and parallel intra prediction in the specific implementation steps, unified intra prediction formula and establish coefficient table and the reference position table is based on CUDA and the characteristics of intra prediction formula is made, more conducive to a 8x8 macro block in 64 sub pixel to be predicted and the corresponding 35 prediction modes by predicting the unified formula to predict, to meet the CUDA multi-threaded SIMD needs, achieve intra prediction sub macroblock in fine grain parallelism, eliminates the influence of a large number of branches of the parallel algorithm performance. The invention realizes the pixel level parallelism in the intra prediction process, and can effectively utilize the public resources in the GPU to accelerate the intra prediction process and shorten the encoding time.
【技术实现步骤摘要】
本专利技术属于视频编码领域和显卡通用计算领域,更具体地,涉及一种H.265/HEVC中8x8子宏块的并行帧内预测方法。
技术介绍
H.265/HEVC标准是提出不久的新一代视频压缩标准,在许多领域都开始推广应用。与之前的已经成熟的H.264/AVC标准相似,H.265/HEVC同样采用是的基于像素域的帧内预测方法,该方法针对可用的预测模式以及各种分块大小进行遍历计算,通过率失真公式得到一个在视频质量和视频压缩率两方面效果都比较好的一种预测模式,这种全模式预测使得整个过程计算复杂度相当高。H.265/HEVC相比于H.264/AVC标准采用更多帧内预测模式,由H.264/AVC标准的9种帧内预测模式增加到35种;同时采用了更多更大的预测块进行预测,这样能更好的处理高分辨率的视频。为了降低全模式预测的编码时间,研究者提出了许多行之有效的解决方案,其中基于GPU硬件加速的方法在减少编码时间上效果最好。基于GPU的帧内预测主要采用的是CUDA架构,它是由NVIDIA提出的通用计算平台,将复杂的GPU指令包装成浅显易懂的运行时指令,极大地降低了编写显卡设备代码的难度。CUDA采用的是一种类似于SIMD的执行模型,比较适合于易并行计算,对于数据相关性强、逻辑复杂的情况,CUDA并行并不是很好的选择。利用GPU的众核优势并行处理多帧图像,可以极大地提升编码效率。这一类算法需要修改视频帧中的像素块之间的编码顺序来 ...
【技术保护点】
一种H.265/HEVC中8×8子宏块的并行帧内预测方法,其特征在于,所述方法包括以下步骤:(1)从已编码的视频帧中获取17个参考像素Ri,j,其中R1,0、R2,0、R3,0、R4,0、R5,0、R6,0、R7,0和R8,0为从左到右排列的上方参考像素,R9,0、R10,0、R11,0、R12,0、R13,0、R14,0、R15,0和R16,0为从左到右排列的右上方参考像素,R0,1、R0,2、R0,3、R0,4、R0,5、R0,6、R0,7和R0,8为从上到下排列的左侧参考像素,R0,9、R0,10、R0,11、R0,12、R0,13、R0,14、R0,15和R0,16为从上到下排列的左下方参考像素,R0,0为左上方参考像素;其中待预测8×8子宏块中的像素为Pi,j,i∈[1,8],j∈[1,8],所有待预测像素Pi,j构成8×8子宏块,所述待预测像素在对应的子宏块内的坐标位置表示为(x,y);(2)根据获取的参考像素生成一个长度为36的空的参考值数组Ref,该参考值数组用于存储Ri,j的像素、两个随机生成的保留值和一个根据H.265/HEVC标准对17个参考像素进行计算生成的预测 ...
【技术特征摘要】
1.一种H.265/HEVC中8×8子宏块的并行帧内预测方法,其特征在
于,所述方法包括以下步骤:
(1)从已编码的视频帧中获取17个参考像素Ri,j,其中R1,0、R2,0、
R3,0、R4,0、R5,0、R6,0、R7,0和R8,0为从左到右排列的上方参考像素,R9,0、
R10,0、R11,0、R12,0、R13,0、R14,0、R15,0和R16,0为从左到右排列的右上方参考
像素,R0,1、R0,2、R0,3、R0,4、R0,5、R0,6、R0,7和R0,8为从上到下排列的左侧
参考像素,R0,9、R0,10、R0,11、R0,12、R0,13、R0,14、R0,15和R0,16为从上到下排
列的左下方参考像素,R0,0为左上方参考像素;其中待预测8×8子宏块中的
像素为Pi,j,i∈[1,8],j∈[1,8],所有待预测像素Pi,j构成8×8子宏块,所述待
预测像素在对应的子宏块内的坐标位置表示为(x,y);
(2)根据获取的参考像素生成一个长度为36的空的参考值数组
Ref,该参考值数组用于存储Ri,j的像素、两个随机生成的保留值和一个根
据H.265/HEVC标准对17个参考像素进行计算生成的预测值DC;
(3)根据H.265/HEVC中针对8×8子宏块的帧内预测计算公式和参考
值数组Ref构造系数表T1和参考位置表T2;
(4)根据步骤(3)构造的系数表T1和参考位置表T2对8×8子宏块执
行基于CUDA的并行帧内预测,其共有2240个线程用于并行处理所有35种
预测模式。
2.根据权利要求1所述的并行帧内预测方法,其特征在于,步骤
(3)包括以下子步骤:
(3.1)将H.265/HEVC中针对8×8子宏块的帧内预测计算公式归纳成如
下:
针对预测模式18-34,帧内预测公式如下:
pred(x,y,m)=((32-wy)·Ri,0+wy·Ri+1,0+16)>>5(1)
cy=(y·d)>>5(2)
wy=(y·d)&31(3)
i=x+cy(4)
其中Ri,0和Ri+1,0是8×8子宏块中的上方、右上方以及左上方参考像素,
wy为权重因子,d为预测模式18-34中任一种预测模式相对于预测模式26的
偏移量,x和y为待预测像素在对应的子宏块内的坐标位置,cy为与待预测
像素纵坐标y有关的中间值,pred(x,y,m)是指坐标为(x,y)且预测模式
为m的待预测像素的预测值,m表示8×8子宏块中帧内预测的18-34预测模
式,(x,y,m)表示待预测像素对应的线程序号;
针对预测模式2-18,帧内预测公式如下:
pred(x,y,m)=((32-wx)·R0,j+wx·R0,j+1+16)>>5(5)
cx=(x·d)>>5(6)
wx=(x·d)&31(7)
j=y+cx(8)
其中R0,j和R0,j+1是8×8子宏块中的左侧、左下方以及左上方参考像
素,wy为权重因子,d为预测模式2-18中任一种预测模式相对于预测模式10
的偏移量,x和y为待预测像素在对应的子宏块内的坐标位置,cx为与待预
测像素横坐标x有关的中间值,pred(x,y,m)是指坐标为(x,y)且预测模
式为m的像素的预测值,m表示8×8子宏块中帧内预测的2-18预测模式,(x,
y,m)表示待预测像素对应的线程序号;
针对预测模式0,Plannar预测模式,帧内预测公式如下:
predV(x,y,0)=(8-y)·Rx,0+y·R0,9(9)
predH(x,y,0)=(8-x)·R0,y+y·R9,0(10)
pred(x,y,0)=(predV(x,y,m)+predH(x,y,m)+8)>>4(11)
其中Rx,0是和待预测像素横坐标x位置所对应的上方参考像素,R0,y是
和待预测像素纵坐标y位置所对应的左侧参考像素,x和y为待预测像素在
对应的子宏块内的坐标位置,pred(x,y,0)是指坐标为(x,y)且预测模式
为0的像素的预测值,0表示8×8子宏块中帧内预测的预测模式0,(x,y,0)表
示待预测像素对应的线程序号;
...
【专利技术属性】
技术研发人员:蒋文斌,金海,池也,
申请(专利权)人:华中科技大学,
类型:发明
国别省市:湖北;42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。