System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种实现并行螺旋搜索算法的硬件架构制造技术_技高网

一种实现并行螺旋搜索算法的硬件架构制造技术

技术编号:40158684 阅读:5 留言:0更新日期:2024-01-26 23:33
本发明专利技术涉及一种实现并行螺旋搜索算法的硬件架构,包括分像素插值存储模块、UMVP控制模块、运动估计控制模块、Merge控制模块、代价计算比较模块以及亮度预测像素重构模块;整像素运动估计、分像素运动估计和Merge共用相同的代价计算比较模块来进行代价计算和代价比较,硬件资源使用率高。本发明专利技术中整像素运动估计可以以螺旋搜索算法为核心进行搜索,分像素运动估计采用运动矢量分组的策略,Merge采用剪裁Merge候选列表长度同时采取列光栅扫描和CU块穿插扫描的策略,有效地减少计算复杂度,降低了硬件实现所需的时钟数。

【技术实现步骤摘要】

本专利技术属于视频编解码,具体涉及一种实现并行螺旋搜索算法的硬件架构


技术介绍

1、hevc视频编码标准在h.264/avc的基础上,新增了一套特殊的图像分割模式,包括对编码单元、预测单元、变换单元的模式划分,hevc编码视频在同等psnr的条件下码流相比h.264可节省25%-50%。

2、hevc在编码效率上的出色表现得益于其拥有先进的编码结构、各种先进技术,但是这也使得hevc在复杂度上也是远远超过h.264编码格式。帧间预测在整个编码过程中占据高达80%的复杂度,而帧间预测中运动估计计算时间大约是整个帧间预测的70%,因此减少运动估计时间能有效降低整个编码过程的复杂度。hm16.7测试模型中采用的tzsearch算法,能够在性能损失仅为0.28%的情况下有效降低93%以上的复杂度;但是搜索点位置变化大,快速读取数据困难,耗时多,不利于硬件实现;而对于搜索顺序固定的全搜索算法,其复杂度之高远远无法满足实时应用的需求。在hevc中,常用的帧间运动估计搜索算法需要对cu块不断进行迭代,以此来获取所有pu块的最佳mv和代价,这样不适用于ctu不断增大的视频编码,且迭代过程中重复计算像素点残差和,造成很多像素点重复计算。在hevc编码标准中pu块确定了整像素运动估计的最优点后,会先搜索最优点周围8个1/2精度的分像素点,确定最优的1/2分像素点后再搜索其周围8个1/4分像素点,即每个pu块需要进行16次分像素运动估计得到最终结果。尽管分像素运动估计的复杂度在算法层面相比于整像素运动估计会低上一个数量级,但是在硬件实现中仍需要大量的时钟周期和逻辑资源。在hevc中传统merge的实现方式存在一个较大的回环电路,邻块间运动信息相互依赖的问题会导致硬件流水线断流,相邻pu块计算merge预测时需要等待较长的时钟周期间隔。

3、针对这些问题,本专利技术提出一种实现并行螺旋搜索算法的硬件架构。该架构中整像素运动估计可以以并行螺旋搜索算法为核心进行搜索,该算法具有固定的搜索顺序和较高的数据复用率,能够有效解决冗余计算,降低计算复杂度,每四个时钟周期即可完成一个搜索点的计算;分像素运动估计采用运动矢量分组的策略,对拥有相同运动矢量的预测块同时进行分像素运动估计,有效地减少计算复杂度;merge采用剪裁merge候选列表长度同时采取列光栅扫描和cu块穿插扫描的策略,实现了全流水计算,减少了硬件实现所需的时钟数;整像素运动估计、分像素运动估计和merge共用相同的代价计算比较模块来进行代价计算和代价比较,硬件资源使用率高。


技术实现思路

1、鉴于此,本专利技术的目的在于提供一种实现并行螺旋搜索算法的硬件架构。架构中整像素运动估计可以以并行螺旋搜索算法为核心进行搜索,该算法具有固定的搜索顺序和较高的数据复用率,能够有效解决冗余计算,降低计算复杂度,每四个时钟周期即可完成一个搜索点的计算;分像素运动估计采用运动矢量分组的策略,对拥有相同运动矢量的预测块同时进行分像素运动估计,有效地减少计算复杂度;merge采用剪裁merge候选列表长度同时采取列光栅扫描和cu块穿插扫描的策略,实现了全流水计算,减少了硬件实现所需的时钟数;整像素运动估计、分像素运动估计和merge共用相同的代价计算比较模块来进行代价计算和代价比较,硬件资源使用率高。

2、为实现上述目的,本专利技术采用如下技术方案:

3、一种实现并行螺旋搜索算法的硬件架构,包括以下特征:

4、所述架构包括分像素插值存储模块、umvp控制模块、运动估计控制模块、merge控制模块、代价计算比较模块以及亮度预测像素重构模块;所述的运动估计控制模块与所述的merge控制模块共用所述的代价计算比较模块计算率失真代价与代价比较;

5、所述分像素插值存储模块是将编码器顶层模块传来的参考像素裁剪成搜索框存入存储模块中,并提前插值滤波并存储搜索框内所有1/2、1/4分像素值,以用于运动估计和merge的计算代价;

6、所述umvp控制模块计算出当前ctu最大cu的mvp值,作为整像素运动估计的起始点;

7、所述运动估计控制模块控制完成整像素运动估计和两次分像素运动估计过程,并输出四个深度下所有cu块的最小率失真代价、划分模式和运动矢量;

8、所述merge控制模块建立各pu块的候选列表,依次计算率失真代价后与运动估计的结果比较并更新最优结果;

9、所述代价计算比较模块,用于运动估计和merge过程中当前匹配块的率失真代价计算和各pu块的率失真代价比较;

10、所述亮度预测像素重构模块根据当前ctu的编码信息从存储模块中提取所有帧间块的预测像素值,用于后续重构模块使用。

11、进一步的,所述分像素插值存储模块具体为:

12、所述分像素插值存储模块包括分像素插值存储控制模块、参考像素存储矩阵模块、整像素缓存模块、分像素插值滤波模块、读地址译码模块和参考像素筛选模块;

13、所述分像素插值存储控制模块,用于控制参考像素读取以及分像素的写入,还用于启动分像素插值滤波模块。

14、所述整像素缓存模块,用于缓存参考像素存储矩阵模块输入的参考像素。

15、所述分像素插值滤波模块,用于对参考整像素进行插值滤波,以得到分像素运动估计中所需要的分像素。

16、所述读地址译码模块,用于将接收到的mv信号转译成存储矩阵的读地址;

17、所述参考像素筛选模块,根据位置信息筛选输出的参考像素,得到32×32大小的参考像素用于帧间预测模块的代价计算。

18、进一步的,所述运动估计控制模块具体为:

19、所述运动估计控制模块包括整像素运动估计控制模块、分像素运动估计控制模块、划分模式选择模块和最优代价及划分模式及mv存储模块;

20、所述整像素运动估计控制模块,用于计算整像素运动估计所需要的运动矢量,所述的分像素插值存储模块根据此运动矢量输出整像素运动估计所需要的参考像素,整像素运动估计以螺旋搜索算法为核心,搜索时自起始点向四周以螺旋延伸的顺序进行搜索,该算法具有固定的搜索顺序和较高的数据复用率,整像素运动估计以并行的方式计算一个ctu内所有pu块的代价;

21、所述分像素运动估计控制模块,用于计算分像素运动估计所需要运动矢量,所述的分像素插值存储模块根据此运动矢量输出分像素运动估计所需要的参考像素,分像素运动估计采用运动矢量分组的策略,对拥有相同运动矢量的预测块合并进行分像素运动估计;

22、所述划分模式选择模块,用于确定当前cu的最优划分模式;

23、所述最优代价及划分模式及mv存储模块,用于存储各cu块的最小代价、最优划分模式以及相应的运动矢量。

24、进一步的,所述merge控制模块具体为:

25、所述merge控制模块包括mv选取控制模块、时域mv伸缩模块、时域及空域参考mv存储器模块、cu划分模式表模块、mv查找表模块以及用于本文档来自技高网...

【技术保护点】

1.一种实现并行螺旋搜索算法的硬件架构,其特征在于:所述架构包括分像素插值存储模块、UMVP控制模块、运动估计控制模块、Merge控制模块、代价计算比较模块以及亮度预测像素重构模块;所述的运动估计控制模块与所述的Merge控制模块共用所述的代价计算比较模块计算率失真代价与代价比较;

2.根据权利要求1所述的一种实现并行螺旋搜索算法的硬件架构,其特征在于,所述分像素插值存储模块包括分像素插值存储控制模块、参考像素存储矩阵模块、整像素缓存模块、分像素插值滤波模块、读地址译码模块和参考像素筛选模块;

3.根据权利要求1所述的一种实现并行螺旋搜索算法的硬件架构,其特征在于,所述运动估计控制模块包括整像素运动估计控制模块、分像素运动估计控制模块、划分模式选择模块和最优代价及划分模式及MV存储模块;

4.根据权利要求1所述的一种实现并行螺旋搜索算法的硬件架构,其特征在于,所述Merge控制模块包括MV选取控制模块、时域MV伸缩模块、时域及空域参考MV存储器模块、CU划分模式表模块、MV查找表模块以及用于缓存数据的FIFO;

5.根据权利要求1所述的一种实现并行螺旋搜索算法的硬件架构,其特征在于,所述代价计算比较模块包括原始像素缓存模块、参考像素缓存模块、SAD/SATD计算模块,MVD比特数计算模块和代价比较模块,整像素运动估计、分像素运动估计和Merge共用代价计算比较模块来进行代价计算和代价比较;

...

【技术特征摘要】

1.一种实现并行螺旋搜索算法的硬件架构,其特征在于:所述架构包括分像素插值存储模块、umvp控制模块、运动估计控制模块、merge控制模块、代价计算比较模块以及亮度预测像素重构模块;所述的运动估计控制模块与所述的merge控制模块共用所述的代价计算比较模块计算率失真代价与代价比较;

2.根据权利要求1所述的一种实现并行螺旋搜索算法的硬件架构,其特征在于,所述分像素插值存储模块包括分像素插值存储控制模块、参考像素存储矩阵模块、整像素缓存模块、分像素插值滤波模块、读地址译码模块和参考像素筛选模块;

3.根据权利要求1所述的一种实现并行螺旋搜索算法的硬件架构,其特征在于,所述运动估计控制模块包括整像素运...

【专利技术属性】
技术研发人员:陈志峰施隆照王诗鑫杨小玲
申请(专利权)人:福州时芯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1