一种梯度计算、缓存装置和节约资源的代价计算方法制造方法及图纸

技术编号:38432980 阅读:10 留言:0更新日期:2023-08-11 14:19
本发明专利技术公开了一种梯度计算、缓存装置和节约资源的代价计算方法,装置包括若干行缓存和窗口缓存;窗口缓存包括排布成行列的若干寄存器,每一行缓存对应一行寄存器;首个行缓存的输入数据为左目或右目的灰度图,两个灰度图的行缓存长度不同;其他每一行缓存的输入数据基于上一行缓存的一个寄存器确定;窗口缓存中A列寄存器用于梯度计算,A列寄存器组成B个梯度计算模块,每一梯度计算模块包括连续的若干行寄存器,A和B基于窗口大小确定;各梯度计算模块分别对应的一行寄存器包含梯度信息,用于计算匹配代价。本发明专利技术通过设置多个梯度计算模块,避免缓存大量的梯度信息,解决了目前应用于代价计算的硬件架构会消耗大量的资源和缓存空间的问题。存空间的问题。存空间的问题。

【技术实现步骤摘要】
一种梯度计算、缓存装置和节约资源的代价计算方法


[0001]本专利技术涉及双目立体匹配领域,尤其涉及的是一种梯度计算、缓存装置和节约资源的代价计算方法。

技术介绍

[0002]双目立体视觉是通过模拟人类视觉原理,实现三维深度感知的技术。其目标是从左右相机拍到的同一场景的图片中找到对应点,利用相似三角形原理生成参考图像视差图。其广泛运用于无人机、自动驾驶和目标检测等领域。目前主流的双目算法有全局匹配,半全局匹配和局部匹配。其中,半全局立体匹配可以较好平衡计算量和精度,但是由于其复杂度极高,硬件实现方面仍存在挑战。梯度计算和代价计算是双目立体匹配中的重要步骤。其中,代价计算直接影响到双目立体匹配的精度和效率,其目的是衡量待匹配像素和候选像素之间的相关性。具体地,在梯度计算中,需要利用窗口和索贝尔算子进行卷积操作,同时在代价计算中的普查变换里也需要窗口。普遍思维是将输入的灰度数据通过缓存形成梯度计算所需窗口,计算后传输梯度信息。梯度信息也通过行缓存进入窗口,为代价计算做准备。因此需要三行灰度缓存和三行梯度信息缓存,且梯度信息需要缓存x方向,y方向以及总方向,因此现有的应用于代价计算的硬件架构会消耗大量的资源和缓存空间。目前急需一种融合代价信息量大并设计资源消耗少的硬件架构。
[0003]因此,现有技术还有待改进和发展。

技术实现思路

[0004]本专利技术要解决的技术问题在于,针对现有技术的上述缺陷,提供一种梯度计算、缓存装置和节约资源的代价计算方法,旨在解决现有的应用于代价计算的硬件架构会消耗大量的资源和缓存空间的问题。
[0005]本专利技术解决问题所采用的技术方案如下:
[0006]第一方面,本专利技术实施例提供一种梯度计算、缓存装置,其中,所述装置包括若干行缓存和窗口缓存;所述窗口缓存包括排布成行列的若干寄存器,每一所述行缓存对应一行所述寄存器;
[0007]首个所述行缓存的输入数据为左目或右目的灰度图,左目和右目的灰度图分别对应的所述行缓存的长度不同;除首个所述行缓存之外,每一所述行缓存的输入数据基于上一所述行缓存对应的其中一个所述寄存器确定;
[0008]所述窗口缓存中A列所述寄存器用于进行梯度计算,A列所述寄存器组成B个梯度计算模块;每一所述梯度计算模块包括连续的若干行所述寄存器,其中,所述A和所述B的数值基于预设的窗口大小确定;
[0009]各所述梯度计算模块分别对应的一行所述寄存器包含像素点的梯度信息,所述梯度信息用于计算像素点的匹配代价。
[0010]在一种实施方式中,各所述梯度计算模块的梯度计算过程相互独立。
[0011]在一种实施方式中,所述寄存器的总数量基于预设的视差范围,所述窗口大小以及所述行缓存的总行数确定。
[0012]第二方面,本专利技术实施例还提供一种节约资源的代价计算方法,其中,所述方法包括:
[0013]获取左目和右目分别对应的灰度图;
[0014]将左目和右目的所述灰度图输入如上述任一所述的梯度计算、缓存装置,得到左目和右目的所述灰度图分别对应的梯度信息;
[0015]针对两个所述灰度图中相对应的每一像素点,根据所述梯度信息确定该像素点的梯度代价,并通过普查变换基于所述梯度信息确定该像素点的汉明距离;
[0016]分别对所述梯度代价和所述汉明距离进行归一化处理,根据归一化处理后的所述梯度代价和所述汉明距离进行加权融合,得到该像素点的匹配代价。
[0017]在一种实施方式中,所述根据所述梯度信息确定该像素点的梯度代价,包括:
[0018]根据所述梯度信息获取该像素点在两个所述灰度图中沿x方向和y方向的梯度;
[0019]根据x方向梯度相减的绝对值和y方向梯度相减的绝对值之和,确定该像素点对应的所述梯度代价。
[0020]在一种实施方式中,所述普查变换中每一像素点的普查比特串基于该像素点与周围预设范围内的像素点的梯度大小关系确定。
[0021]在一种实施方式中,所述梯度代价的归一化处理通过线性拟合执行,所述汉明距离的归一化处理通过选择器执行。
[0022]在一种实施方式中,所述方法还包括:
[0023]根据所述匹配代价计算视差,得到视差图。
[0024]第三方面,本专利技术实施例还提供一种终端,其中,所述终端包括有存储器和一个以上处理器;所述存储器存储有一个以上的程序;所述程序包含用于执行如上述任一所述的节约资源的代价计算方法的指令;所述处理器用于执行所述程序。
[0025]第四方面,本专利技术实施例还提供一种计算机可读存储介质,其上存储有多条指令,其中,所述指令适用于由处理器加载并执行,以实现上述任一所述的节约资源的代价计算方法的步骤。
[0026]本专利技术的有益效果:本专利技术实施例公开了一种梯度计算、缓存装置和节约资源的代价计算方法,装置包括若干行缓存和窗口缓存;窗口缓存包括排布成行列的若干寄存器,每一行缓存对应一行寄存器;首个行缓存的输入数据为左目或右目的灰度图,两个灰度图的行缓存长度不同;其他每一行缓存的输入数据基于上一行缓存的一个寄存器确定;窗口缓存中A列寄存器用于梯度计算,A列寄存器组成B个梯度计算模块,每一梯度计算模块包括连续的若干行寄存器,A和B基于窗口大小确定;各梯度计算模块分别对应的一行寄存器包含梯度信息,用于计算匹配代价。本专利技术通过设置多个梯度计算模块,避免缓存大量的梯度信息,解决了目前应用于代价计算的硬件架构会消耗大量的资源和缓存空间的问题。
附图说明
[0027]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
专利技术中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0028]图1是本专利技术实施例提供的梯度计算、缓存装置的架构示意图。
[0029]图2是本专利技术实施例提供的梯度重复计算时序图。
[0030]图3是本专利技术实施例提供的节约资源的代价计算方法的流程示意图。
[0031]图4是本专利技术实施例提供的代价计算架构图。
[0032]图5是本专利技术实施例提供的线性拟合e指数归一化原理图及架构图。
[0033]图6是本专利技术实施例提供的双目立体匹配的主要步骤示意图。
[0034]图7是本专利技术实施例提供的终端的原理框图。
具体实施方式
[0035]本专利技术公开了一种梯度计算、缓存装置和节约资源的代价计算方法,为使本专利技术的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本专利技术进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。
[0036]本
技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本专利技术的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种梯度计算、缓存装置,其特征在于,所述装置包括若干行缓存和窗口缓存;所述窗口缓存包括排布成行列的若干寄存器,每一所述行缓存对应一行所述寄存器;首个所述行缓存的输入数据为左目或右目的灰度图,左目和右目的灰度图分别对应的所述行缓存的长度不同;除首个所述行缓存之外,每一所述行缓存的输入数据基于上一所述行缓存对应的其中一个所述寄存器确定;所述窗口缓存中A列所述寄存器用于进行梯度计算,A列所述寄存器组成B个梯度计算模块;每一所述梯度计算模块包括连续的若干行所述寄存器,其中,所述A和所述B的数值基于预设的窗口大小确定;各所述梯度计算模块分别对应的一行所述寄存器包含像素点的梯度信息,所述梯度信息用于计算像素点的匹配代价。2.根据权利要求1所述的梯度计算、缓存装置,其特征在于,各所述梯度计算模块的梯度计算过程相互独立。3.根据权利要求1所述的梯度计算、缓存装置,其特征在于,所述寄存器的总数量基于预设的视差范围,所述窗口大小以及所述行缓存的总行数确定。4.一种节约资源的代价计算方法,其特征在于,所述方法包括:获取左目和右目分别对应的灰度图;将左目和右目的所述灰度图输入如权利要求1

3任一所述的梯度计算、缓存装置,得到左目和右目的所述灰度图分别对应的梯度信息;针对两个所述灰度图中相对应的每一像素点,根据所述梯度信息确定该像素点的梯度代价,并通过普查变换基于所述梯度信息确定该像素点的汉明距离;分别对...

【专利技术属性】
技术研发人员:李可董平成
申请(专利权)人:深圳聚源视芯科技有限公司
类型:发明
国别省市:

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

1