更全的杂志信息网

基于BWDSP的HEVC帧内预测角度模式的并行化算法

更新时间:2016-07-05

HM算法测试模型基于LCU(Largest Coding Unit)的编码单元,采用遍历的方法,块的尺寸根据图像细节复杂度通过划分自适应改变其大小。编码单元(CU)包括从64×64到8×8的各种大小。帧内预测支持多达35种模式,包括DC模式,Planar模式和33个角度方向模式。基于四叉树结构计算全部RDCost来得到最优CU大小[1]。帧内预测要对每一种可能的预测模式都进行计算和比较,从而得到最优模式这个过程非常耗时存在着巨大的计算量。其中对计算过程较为复杂和耗时的角度预测模式进行并行化设计,缩短帧内预测的时间,对于实现HEVC的实时性意义很重大。现在 H265帧内预测的加速和优化研究重点基本在4个方面:一是块类型预判断或者提前终止CU块的划分[2-4]; 二是缩小模式选择范围[5-7]; 三是优化率失真代价函数,率失真代价的计算用更简单的方法 [8-11];四是从多处理器角度并行实现DC和平面模式[12]。本文对在帧内角度预测模式具有典型代表的角度预测模式20和垂直模式26进行并行化探究,提出了适合在多核和多运算部件结构上并行计算的算法,对于加速帧内预测有实际意义,大大缩短帧内预测所需时间。

(一)宣传力度与品牌创建不够,旅游管理团队水平偏低。中心区旅游缺乏全方位、高效系统又吸引人眼球的宣传模式,对外主动性营销力度不够,形象不鲜明、不具体,品牌效应不足。旅游管理队伍中真正懂管理、通业务的高端人才不多,景区管理团队尚不专业,营销理念和管理经验落后,尤其是在与外地旅游企业合作方面思想保守陈旧,创新意识不强。

1 角度模式的算法研究

相对于H.264/AVC支持8个预测方向,HEVC规定了33种角度方向预测,进一步细化了这些预测方向,方向性预测的基本原理是:当前待预测的像素沿特定的预测方向在参考样本上投影,投影所在的位置对应的像素值就是预测值。预测角度设计的倾向是为接近水平和垂直的角度提供更密集的覆盖。各个模式的格点(角度)分布是不均匀的。越靠近垂直方向,分布越是细密,越是靠近对角方向越是稀疏。角度中模式都相当于做了一个偏移在垂直或水平方向上。下面以垂直类模式为例给出预测像素的计算步骤(水平类模式计算过程与之类似)。

(1)对于给定垂直类模式M,使用“投影像素”法具体方法如下:将需要使用的参考像素投影成一维形式,记为Ref。若对应的角度偏移值offset[M]<0的模式M,则将当前变换块(TU)左侧的像素值按照模式M对应的方向投影到上方参考像素的左侧。Ref可有式(1)计算得出:

式中:m为UAV飞行的节点数;Nt为危险壁障的数量;d为当前节点与危险壁障距离的平方,d的取值由飞行空间决定;L为UAV飞行时与危险壁障的安全距离;δ为定量,δ=0.01;Xi(xi,yi,zi)为UAV当前节点坐标;T(xt,yt,zt)为危险壁障的坐标。

(1)

其中,Round(•)表示四舍五入。

offset[M]≥0则只需用到当前TU上方的参考像素。Ref由下式计算:

Ref[x]=Rx,0x=0,1,…,nTbs (注:nTbS表示PU块的大小)

为了验证本文提出的并行化方案的并行度和正确性,在BWDSP1041仿真平台ECS上进行了验证。角度模式20在C语言和汇编优化下的时钟周期数如表3所示。

pos=(y·offset[M])×5

(3)计算当前像素对应参考像素的加权因子ω:

ω=(y·offset[M])&31

其中,& 表示按位与运算。

(4)计算当前像素的预测值:

Pxy=((32-ω)·Ref[pos]+ω·Ref[pos+1]+16)≫5

对于模式26(垂直模式)且块尺寸小于32×32,预测像素值改由下式计算:

Pxy=Rx,0+((R0,y-R0,0)≫1)

以下部分绍模式20(offset = -21)和垂直模式26(offset = 0),以预测块32×32大小为例,参考像素投影成一维的结果。此时,offset[20] = -21 <0,并且((nTbS × offset[20]) >> 5) < -1,上方的参考像素就要进行扩充,由式(1)可得相应的一维参考数组并投影到上方参考像素的左侧,结果如图1所示。

图1 模式20 32×32块一维参考像素集投影成一行

在模式20计算预测值过程中,当加权因子ω≠0时,预测值Pxy由步骤④中的计算公式得到,ω = 0时,预测值Pxy =Ref[x+pos + 1] 。

图2 模式26 32×32块一维参考像素集投影成一行

垂直模式时,offset[26] = 0只需用预测块上方的参考像素进行预测,不需要扩充,结果如图2所示。

3.完整性。指标体系要能够客观地反映投资与效益的关系。指标体系覆盖面要广,能够全面反映影响信息化水平的各种因素;结构要明晰,能够点面结合,从整体和局部的不同角度系统地反映信息化水平。

2 角度预测模式的并行化

2.1 BWDSP1041仿真平台

BWDSP1041是中国电子科技集团公司第38研究所设计的一款32位静态超标量浮点DSP处理器。处理器共有13级流水,BWDSP1041核内部包含4个基本执行宏(Element operation Macro,简称宏)。指令主要由数据传输/调用,如存储器同运算部件之间、存储器之间的数据交互、数据运算、程序控制及输入输出数据命令等组成。

欧阳锋很长一段时间没有接到彭伟民的威胁电话,一切看似风平浪静。欧阳锋在风平浪静中体验着一种前所未有的恐慌。

第一步,将参考像素加载到寄存器。用双字寻址指令从存储地址分别同时读出数据送到四个宏中的寄存器Rs+1和Rs),从存储参考像素内存读出 ref[-1]~ref[6]、ref[7]~ref[14]、ref[15]~ref[22]、ref[23]~ref[31]按顺序加载到x,y,z,t宏通用寄存器组,再利用宏间传输指令将y宏寄存器存储的ref[7]填充到x宏寄存器,z宏寄存器的ref[15]填充到y宏寄存器。z、t宏寄存器加载参考像素值依此类推。xy宏加载参考像素结果如表1和表2所示。

BWDSP1041有4个执行宏,分别标识X、Y、Z、T,其结构和功能相同,在指令前指定宏标识,来说明指令在哪个执行宏中运行,指定多个则在多个执行宏运行,不指定宏则在 4个执行宏同时运行 ( 宏标识与 R 紧邻 ),每个执行宏资源有:8 个 ALU,编号 0~7; 8 个 MUL,编号 0~7,4 个 SHF,编号0~3;1个SPU,128个通用寄存器(参见图3)。

(2)地址产生器及数据传输通道

BWDSP1041 处理器有3个地址产生器,其结构和功能一样。地址生成器(AGU)产生存储器与宏之间的数据交换所需的地址。地址产生器每个都有1组地址辅助寄存器,用于寄存各种地址变化关系的参数值,编号 0~15。

(5) 区域逗留人数:进出车站周边区域并逗留的人流量,与车站客流量直接相关,也是以上各个因素的直观反映。该指标可以通过手机运营商的信令数据获得。本文拟通过某运营商工作日一天(00:00—24:00)内手机数据推测站点周边区域人员数量。

图3 执行宏内部结构以及内部数据传输位宽

ECS(Efficient Coding Studio)是BWDSP根据自身硬件结构设计的一套完整的集成开发环境,通过可视化的图形界面和用户进行交互,调试器(Debugger)能够将性能统计信息以图形化的方式显示出来,其集成了指令模拟器(Simulator)、硬件仿真器(Emulator),实现了准确的硬件时钟周期数统计。本文提出的并行化方案在ECS上进行验证。

马国平巡视着全连,语重心长地说:“是我这个当连长的,让大家提出自己的愿望。四班长敢于提出自己的要求,是诚实的表现。再说,爱,也是人的本性,风华正茂的青年,爱慕美女也是应该的。特别是在生死未卜的战场,表白自己的爱恋,是对脚下热土的依恋、是对生命的眷恋。”

2.2 角度模式20并行化

本文的并行化方法是:由PU块预测像素值计算公式可知,对于角度模式20,当加权因子ω≠0,计算一个预测像素值需要进行两次乘法、两次加法和一次移位。以PU块大小为32×32为例,共需2 048次乘法、2 048次加法和 1 024次移位,可见计算量是很大的,串行计算必然很耗时。通过本文提出的数据分配方式就是将计算每行预测值所需的参考像素值全部填充到每个宏中的寄存器组中,通过4个宏中乘法器和加法器的并行工作,快速算出预测值。

黄芪甲苷对D-半乳糖诱导原代培养心肌细胞凋亡的保护作用及机制研究 ………………………………… 王晓霞等(9):1189

求预测值:将四个宏中通用寄存器组的参考像素值依次填充预测块的第一行,再从上到下依次将各行的预测值用通用寄存器组的参考像素值填充。

图4 单执行宏结构示意图

(1)处理宏

表1 x宏寄存器加载参考像素值

寄存器名称xr31xr32xr33xr34xr35xr36xr37xr38xr39参考像素值ref[-1]ref[0]ref[1]ref[2]ref[3]ref[4]ref[5]ref[6]ref[7]

表2 y宏寄存器加载参考像素值

寄存器名称yr31yr32yr33yr34yr35yr36yr37yr38yr39参考像素值ref[7]ref[8]ref[9]ref[10]ref[11]ref[12]ref[13]ref[14]ref[15]

第二步,并行计算第一行32个像素值。由公式可知,计算预测块第一行像素值的加权因子不变只是参考像素的位置不同,预测值之间没有关联性,模式20中第一行的加权因子分别为21和11。将加权因子21加载到寄存器r9中(注:此时表示4个宏中的r9寄存器),将11加载到寄存器r10中,将16加载到MACC中(注:每个宏有8个MACC(乘法累加寄存器),s表示每个宏中MACC的标号,此时表示将16加载到4个宏中MACC)。首先,并行计算第一行32个预测像素值的(32-ω)﹒ref[pos]部分。用xr9与ref[-1]~ref[6]相乘,用到了x宏8个乘法器,分别将所乘结果放到xMACCs中。用yr9与ref[7]~ref[14]相乘,将所乘结果放到yMACCs中。用zr9与ref[15]~ref[22]相乘,将所乘结果放到zMACCs中。用tr9与ref[23]~ref[30]相乘,将所乘结果放到tMACCs中。然后,第二个指令行再并行计算预测像素值的ω﹒ref[pos+1]部分。用xr10与ref[0]~ref[7]相乘,将所乘结果放到xMACCs中。用yr10与ref[8]~ref[15]相乘,将所乘结果放到yMACCs中。用zr10与ref[16]~ref[23]相乘,将所乘结果放到zMACCs中。用tr10分别与ref[24]~ref[31]相乘,将所乘结果放到tMACCs中。此时4个宏中MACC存储的是第一行32个预测像素没有右移5位时的预测值。最后进行移位操作,但在实际的汇编过程中,为了减少汇编代码长度和指令执行周期数,本文用到了BWDSP1041指令集中关于MACC的一个截位操作,形式为MACCn(U,cut=C)(注:C是无符号数,要截的位数),最后,将MACCn中截位输出的数送到r56,r57,r58,r59,r60,r61,r62,r63寄存器,寄存器中的值就是第一行32个预测像素值。

第三步,r56~r63寄存器预测值转移。为了让计算得到的预测值写到内存效率最优,本文对r56~r63寄存器预测值进行了重组,用寄存器赋值指令将xr56、xr57值转移到xr54、xr55,用宏间双字赋值指令将xr58、xr59值转移到yr54、yr55,将xr60、xr61值转移到zr54、zr55,将xr62、xr63值转移到tr54、tr55,数据转移示意图及结果如图5所示。yztr56~63寄存器预测值转移与xr56~63步骤一样。

图5 寄存器数据转移示意图及结果

 ̄第四步,将计算的数据写到内存地址中。用双字寻址指令 (注:每一个宏中可以同时送2个数据到存储器,是否传送数据取决于指令中助记符{x,y,z,t}的出现,如果助记符{x,y,z,t}出现,则对应宏有数据传输,否则不传输),2~31行的预测像素值计算过程,如上所述。32行ω= 0,只需将ref[-21]~ref[10]依次填充32行,每个宏可以同时写出2个数据,4个宏可以同时写出8个数据,通过U地址发生器写到内存中,再通过并行指令通过V地址发生器将8个数据写到内存中,在一个指令行同时将16个数据写到内存,用二个指令行就可完成填充最后一行32个数。单个宏中计算数据流程如图6所示。

图6 单个宏中计算数据流程图

3 垂直预测模式并行化

根据对上文垂直预测模式计算过程的介绍,垂直预测模式并行方法是:每个地址产生器中数据从宏到内存有一条写总线,每条带宽为8×32bit。从宏到内存同时可写8个数据,即每个宏可以同时向总线写入2个数据。再利用指令并行,同时利用两个地址产生器可写16个数据,即可并行求出预测值。

由图1~图3可知,不论是温度、湿度还是光照度,随着测量时刻不同曲线波动幅度较大,这是因为测量当天天空有云层影响。从图中可见云层影响对光照度的波动最大,温度和湿度曲线较为平缓,且比光照度有一定的滞后性。

数据分析:由图2可以看出,预测块中每列的预测值可由预测块上方的参考像素直接填充得到。

第一步,用双字寻址指令,将参考像素依次加载到四个宏中的通用寄存器组中,加载后的结果如图7所示。

图7 通用寄存器加载参考像素值

第二步,四个宏与存储器写总线的关系是,X宏与写总线的[63:0]相接;Y宏与写总线的[127:64]相接;Z宏与写总线的[191:128]相接; T宏与写总线的[255:192]相接。写总线结构如图8所示。

图8 存储器写操作的总线结构

利用指令并行技术,在第一个时钟周期内用U、V地址产生器将前16个参考像素填充预测块第一行前16个预测值,在第二个时钟周期将后16个参考像素填充至预测块的后16个预测值,只需二个时钟周期即可完成预测块第一行32个预测值的赋值。

数据分析:由公式推导出,图1中参考像素ref[-1]~ref[31]用于第一行像素的预测,ref[-2]~ref[30]用于第二行像素的预测,……,ref[-21]~ref[11]用于第31行像素的预测。第32行,加权因子ω = 0,用参考像素ref[-21]~ref[10]填充最后一行,可以看出各行预测像素点之间不存在数据依赖性,这是能够并行计算的一个充要条件。用到的单个宏中的寄存器组,ALU、MUL、SHF如图4所示。

4 验证与分析

(2)计算当前像素对应参考像素在Ref中的位置,记为pos:

表3 角度模式20在C语言和汇编优化下的时钟周期数

C语言(时钟周期数)汇编(时钟周期数)94742586

由表3看出,在C语言下由编译器实现的汇编函数,不做任何优化时硬件利用率不高,利用并行算法之后在一个指令行可以同时实现32个数的乘和累加,利用指令流水在不造成数据相关的前提下,将数据进行排流水,提升了各运算部件的利用率和加快了数据计算时间上的并行度。并行实现,大大减少预测所用的时钟周期数,并行加速比达到161.68。

垂直预测模式在C语言和汇编优化下的时钟周期数如表4所示。

表4 垂直预测模式在C语言和汇编优化下的时钟周期数

C语言(时钟周期数)汇编(时钟周期数)55488161

由表4看出,本算法提出在垂直预测中,将所需参考像素值全部加载到通用寄存器中再利用存储器同内核之间强大的数据交换能力,从而使所需时钟周期数得到有效减少,得到了344.65的加速比。

5 结束语

HEVC视频编解中加速帧内预测是非常关键的,本文结合具有优越的并行处理能力的BWDSP1041处理器,提出了一种帧内角度模式预测的并行优化算法。在HEVC标准算法的基础上,将没有相互关联的数据计算所需的数据提前加载到通用寄存器中,通过填充指令流水将数据的读和写放在一个指令行,提出了适合并行化的算法。利用4个宏内的32个乘法器和加法器进行并行计算,大大提高了计算效率。实验中发现指令行大小不能超过16字,写总线只有256bit等编程资源约束,所提并行算法的时间加速还有很大的优化潜力。本文提出的并行算法属于通用方法。

海内外学者相继投身于对个人信用评估模型的研究,目前已有不少研究取得了可观的成果,逐渐实现利用低成本的信用评估模型预测个人未来信用状况、提高金融机构操作效率、降低授信成本、精确估计消费信贷风险等目标,这为互联网金融的发展带来福音。本文着重从实证角度出发,探讨SVM和Logistic回归模型在个人信用预测中的作用。

参考文献

[1] LAINEMA J,BOSSEN F,HAN W J,et al. Intra Coding of the HEVC Standard [J]. IEEE Transactions on Circuits & Systems for Video Technology,2012,22(12):1792-1801.

[2] CRISTINA O C,MIHNEA U R,IONUT P. HEVC intra partitioning and mode decision using histograms of oriented gradients[C]. Electronics and Telecommunications (ISETC),2016 12th IEEE International Symposium on. IEEE,2016: 277-280.

[3] LU,Xiao N,HU Y,et al. A hierarchical fast coding unit depth decision algorithm for HEVC intra coding[C]. Visual Communications and Image Processing (VCIP),2016. IEEE,2016: 1-4.

[4] CHEN J,YU L. Effective HEVC intra coding unit size decision based on online progressive Bayesian classification[C]. Multimedia and Expo (ICME),2016 IEEE International Conference on. IEEE,2016: 1-6.

[5] TIAN R,ZHANG Y,FAN R,et al. Adaptive Fast Mode Decision for HEVC Intra Coding[C]. International Conference on Digital Image Computing: Techniques and Applications. 2016:1-6.

[6] ZHOU X,SHI G,ZHOU W. Perceptual CU Size Decision and Fast Prediction Mode Decision Algorithm for HEVC Intra Coding[C]. Multimedia (ISM),2016 IEEE International Symposium on. IEEE,2016: 375-378.

[7] JIANG W,MA H,CHEN Y. Gradient based fast mode decision algorithm for intra prediction in HEVC[C]. Consumer Electronics,Communications and Networks (CECNet),2012 2nd International Conference on. IEEE,2012: 1836-1840.

[8] JAMALI M,COULOMBE S. RDO cost modeling for low-complexity HEVC intra coding[C]. Electrical and Computer Engineering (CCECE),2016 IEEE Canadian Conference on. IEEE,2016: 1-5.

[9] 费马燕,彭宗举,李持航,等. 融合视觉感知特性的 HEVC 率失真优化[J]. 中国图象图形学报,2015,20(7): 857-864.

[10] YEO C,TAN H L,TAN Y H. On rate distortion optimization using SSIM[J]. IEEE Transactions on Circuits and Systems for Video Technology,2013,23(7): 1170-1181.

[11] JIANG W,YANG J. The rate-distortion optimized quantization algorithm in Compressive Sensing[J]. Optik - International Journal for Light and Electron Optics,2014,125(15):3980-3985.

[12] 谢晓燕,徐卫芳,刘帆. HEVC帧内预测Planar和DC模式算法的并行化设计[J]. 电视技术,2015,39(5):4-8.

佘成龙,郎文辉,段苓丽,汪辉
《电视技术》 2018年第03期
《电视技术》2018年第03期文献

服务严谨可靠 7×14小时在线支持 支持宝特邀商家 不满意退款

本站非杂志社官网,上千家国家级期刊、省级期刊、北大核心、南大核心、专业的职称论文发表网站。
职称论文发表、杂志论文发表、期刊征稿、期刊投稿,论文发表指导正规机构。是您首选最可靠,最快速的期刊论文发表网站。
免责声明:本网站部分资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有
如有不愿意被转载的情况,请通知我们删除已转载的信息 粤ICP备2023046998号