首页 / 专利库 / 显示技术 / 立体视觉法 / 一种利用双目立体相机构建栅格地图的方法

一种利用双目立体相机构建栅格地图的方法

阅读:657发布:2020-05-11

专利汇可以提供一种利用双目立体相机构建栅格地图的方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种利用双目立体相机构建栅格地图的方法,属于 图像处理 和 计算机视觉 领域。利用双目相机和GPU构建高性能运算平台,并构建高性能求解 算法 以获高 质量 的包含三维信息栅格地图。本发明中的系统容易构建,使用双目立体相机即可完成输入数据的采集;程序简单,易于实现;本发明利用空间先验信息,统计学知识推算栅格高度,使得三维结果更具有鲁棒性;本发明利用空间几何求解栅格的自适应 阈值 ,完成栅格的过滤筛选,提升了算法的泛化能 力 和鲁棒性。,下面是一种利用双目立体相机构建栅格地图的方法专利的具体信息内容。

1.一种利用双目立体相机构建栅格地图的方法,其特征在于,该方法包括以下步骤:
1)创建栅格地图:
1.1)确定栅格地图的空间信息:从配置文件中获取目标计算的最高高度、最低高度、最远距离和视场;并确定栅格地图的空间信息,即栅格地图覆盖最高位置、最低位置、最远位置、最近位置、最右侧位置和最左侧位置;
1.2)划分栅格:将栅格地图划分为规则图形;计算出每个栅格中心的坐标;默认所有栅格的状态为空;
1.3)根据双目相机的实际摆放位置确定世界坐标系
2)获取原始数据:利用双目立体相机获取场景图像和视差图;
3)生成三维坐标点:利用场景图像中匹配点的三角关系和视差图,生成三维坐标点,并转换到世界坐标系,只保留位于1.1)中确定的栅格空间之内的三维坐标点;
4)平面投影:
4.1)将过滤后三维坐标点投影到栅格地图所在平面,如果投影后的三维坐标点映射在栅格中心的距离R内,则保留并统计投影次数,否则剔除不统计投影次数;
4.2)统计每个栅格中点的个数Ni;
5)高度统计及高度过滤:
5.1)令统计区间i的长度为length,每一个统计区间表示的高度为hi,hi=i×length,计算投影至栅格中所有三维点的Y轴坐标y所在的区间 并计算频数Ci;
5.2)根据应用场景先验,令Th为最低的障碍高度,如果栅格的高度hi<Th,则令栅格的状态为空,否则继续;
6)栅格阈值筛选:
6.1)利用视差图和1)中建立的栅格地图,计算出每个栅格的阈值Ti,公式如下:
Ti=βr×ar×bi        (4)
式(2)为深度测量准确时,应用ar个像素表示位于第r行的栅格边长,其中img_width表示视差图宽度,grid_size表示栅格边长,depthr表示第r行的栅格深度,fov表示视场角大小;式(3)为深度测量准确时,应用bi个像素表示第r行的栅格高度hi,其中hi为栅格i中的高度,由步骤5)计算;Ti为栅格阈值,ar×bi表示深度测量准确时,第r行中宽为grid_size、高为hi的矩形面应有的像素个数,考虑到不规则形状以及鲁棒性增加了第二尺度因子βr;
6.2)比较每个栅格中投影点的个数Ni与栅格阈值Ti;如果Ni>γTi,则令栅格的状态为占据,否则为空;γ为第三尺度因子;
6.3)如果栅格的状态为占据,则将栅格中心的Xi、Zi坐标和栅格高度hi组合为当前栅格的最高点;
7)扫描地图。
2.根据权利要求1所述的一种利用双目立体相机构建栅格地图的方法,其特征在于,步骤4.1)中R取栅格内接圆团半径的四分之三。
3.根据权利要求1所述的一种利用双目立体相机构建栅格地图的方法,其特征在于,步骤5.1)中,选取最大统计区间imax,条件有二,一是统计区间的频数Ci大于上一个统计区间频数Ci-1的一定数量,二是频数Ci大于N,公式为:
imax=argmaxi{Ci>N,Ci>αCi-1}(1)
式中,Ci为第i个统计区间的频数,Ci-1为第i-1个统计区间的频数,α为第一尺度因子,N是最低频数。
4.根据权利要求1所述的一种利用双目立体相机构建栅格地图的方法,其特征在于,步骤7)扫描地图:
7.1)栅格地图中视场角fov外区域的栅格的状态设置为未知;
7.2)将双目相机光心坐标转换到世界坐标系,设为O′;连接O′与状态为占据的栅格虚拟最高点(Xi,Zi,hi)形成直线l,并将直线l投影到栅格地图所在的XOZ平面,投影线为l′;
7.3)检索投影线l′远离双目相机的方向,如果投影线l′穿过空状态栅格,则将空状态的栅格置为未知;如果投影线l′穿过占据状态栅格,将栅格中心(Xi,0,Zi)垂直投影到投影线l′得到投影点(Xi′,0,Zi′),如果 则将其状态置为未知;如果投影线l′穿过占据状态栅格,且hi>l(Xi′,Zi′)y,则重新计算直线l和投影线l′并继续上述过程;如果投影线l′穿过占据状态栅格,且 则继续检索;如果投影线l′到达栅格空间之外,则检索结束;其中l(Xi′,Zi′)y表示当X=Xi′、Z=Zi′时取直线l上的Y轴坐标。
5.根据权利要求1所述的一种利用双目立体相机构建栅格地图的方法,其特征在于,还包括步骤8)可视化:设置栅格对应像素分辨率,将7)中栅格地图可视化输出。

说明书全文

一种利用双目立体相机构建栅格地图的方法

技术领域

[0001] 本发明属于图像处理计算机视觉领域,具体涉及一种利用双目立体相机构建栅格地图的方法。本发明采用双目立体相机获取视差图像,并且利用三维空间的先验信息构建栅格地图,并利用统计学推导空间的占据以及物体的高度信息。

背景技术

[0002] 近年伴随着人工智能的发展,移动机器人汽车自动驾驶越来越受到人们的关注,而其中一个需要解决主要的问题就是导航地图的构建。导航地图中栅格地图是最为常见的一种,但是现阶段大量的栅格地图构建算法都是利用激光传感器。但是激光传感器存在着不可避免的问题,价格昂贵、现阶段难以普及,图像分辨率低难以呈现场景细节。本发明提出使用双目立体相机构建栅格地图,双目立体相机的成本低,普世易用,而且图像分辨率高。但是在现阶段的应用中少有利用双目立体相机构建栅格地图的方法,而且大多数的栅格地图构建方法所构建的是二维地图,缺少高度的信息,无法满足无人机等具有三维机动性的设备的需求。与概率栅格地图有所不同,本发明更关注每个栅格中存在物体的三维信息,因此在栅格地图存储的是物体的三维信息,而将栅格地图中栅格存在物体的概率理解为栅格被投影的次数,这样就可以通过算法进行筛选,保留高投影次数,高概率的栅格,剔除低投影次数,低概率的栅格。本发明旨在使用双目相机构建包含三维空间信息的局部避障栅格地图。

发明内容

[0003] 为实现上述目的,本发明提供了一种利用双目立体相机构建栅格地图的方法。栅格地图是对空间的一种表示,在空间中某一平面上表示当前场景信息。为了说明具体算法在本发明中有如下实例,在空间中以双目立体相机中左相机与地面的垂线的交点为原点O建立空间直坐标系平向右为X轴正方向,垂直向上为Y轴正方向,水平向前为Z轴正方向,此坐标系为世界坐标系。栅格地图建立在XOZ平面上,栅格地图中的每一个栅格表示平面上的一个小平面区域。栅格地图中每一个栅格有且只有一个状态,可设置的状态有三个:未知、占据、空。
[0004] 本发明的具体技术方案:
[0005] 一种利用双目立体相机构建栅格地图的方法,包括以下步骤:
[0006] 1)创建栅格地图:
[0007] 1.1)确定栅格地图的空间信息:从配置文件中获取目标计算的最高高度、最低高度、最远距离和视场角;并确定栅格地图的空间信息,即栅格地图覆盖最高位置、最低位置、最远位置、最近位置、最右侧位置和最左侧位置;
[0008] 1.2)划分栅格:将栅格地图划分为规则图形;计算出每个栅格中心的坐标;默认所有栅格的状态为空;
[0009] 1.3)根据双目相机的实际摆放位置确定世界坐标系;
[0010] 2)获取原始数据:利用双目立体相机获取场景图像和视差图;
[0011] 3)生成三维坐标点:利用场景图像中匹配点的三角关系和视差图,生成三维坐标点,并转换到世界坐标系,只保留位于1.1)中确定的栅格空间之内的三维坐标点;
[0012] 4)平面投影:
[0013] 4.1)将过滤后三维坐标点投影到栅格地图所在平面,如果投影后的三维坐标点映射在栅格中心的距离R内,则保留并统计投影次数,否则剔除不统计投影次数;
[0014] 4.2)统计每个栅格中点的个数Ni;
[0015] 5)高度统计及高度过滤:
[0016] 5.1)令统计区间i的长度为length,每一个统计区间表示的高度为hi(hi=i×length),计算投影至栅格中所有三维点的Y轴坐标y所在的区间 并计算频数Ci。选取最大统计区间imax,条件有二,一是统计区间的频数Ci大于上一个统计区间频数Ci-1的一定数量,二是频数Ci大于N,公式为:
[0017] imax=argmaxi{Ci>N,Ci>αCi-1}   (1)
[0018] 式中,Ci为第i个统计区间的频数,Ci-1为第i-1个统计区间的频数,α为第一尺度因子,N是最低频数;
[0019] 5.2)根据应用场景先验,令Th为最低的障碍高度,如果栅格的高度hi
[0020] 6)栅格阈值筛选:
[0021] 6.1)利用视差图和1)中建立的栅格地图,计算出每个栅格的阈值Ti,公式如下:
[0022]
[0023]
[0024] Ti=βr×ar×bi  (4)
[0025] 式(2)为深度测量准确时,应用ar个像素表示位于第r行的栅格边长,其中img_width表示视差图宽度,grid_size表示栅格边长,depthr表示第r行的栅格深度,fov表示视场角大小;式(3)为深度测量准确时,应用bi个像素表示第r行的栅格高度hi,其中hi为栅格i中的高度,由步骤5)计算;Ti为栅格阈值,ar×bi表示深度测量准确时,第r行中宽为grid_size、高为hi的矩形面应有的像素个数,考虑到不规则形状以及鲁棒性增加了第二尺度因子βr;
[0026] 6.2)比较每个栅格中投影点的个数Ni与栅格阈值Ti;如果Ni>γTi,则令栅格的状态为占据,否则为空;γ为第三尺度因子;
[0027] 6.3)如果栅格的状态为占据,则将栅格中心的Xi、Zi坐标和栅格高度hi组合为当前栅格的最高点;
[0028] 7)扫描地图:
[0029] 7.1)栅格地图中视场角fov外区域的栅格的状态设置为未知;
[0030] 7.2)将双目相机光心坐标转换到世界坐标系,设为O′;连接O′与状态为占据的栅格虚拟最高点(Xi,Zi,hi)形成直线l,并将直线l投影到栅格地图所在的XOZ平面,投影线为l′;
[0031] 7.3)检索投影线l′远离双目相机的方向,如果投影线l′穿过空状态栅格,则将空状态的栅格置为未知;如果投影线l′穿过占据状态栅格,将栅格中心(Xi,0,Zi)垂直投影到投影线l′得到投影点(Xi′,0,Zi′),如果 则将其状态置为未知;如果投影线l′穿过占据状态栅格,且hi>l(Xi′,Zi′)y,则重新计算直线l和投影线l′并继续上述过程;如果投影线l′穿过占据状态栅格,且 则继续检索;如果投影线l′到达栅格空间之外,则检索结束;其中l(Xi′,Zi′)y表示当X=Xi′、Z=Zi′时取直线l上的Y轴坐标;
[0032] 8)可视化:设置栅格对应像素分辨率,将7)中栅格地图可视化输出。
[0033] 本发明的有益效果:
[0034] 本发明设计了一种利用双目立体相机构建栅格地图的方法,利用统计学求解出栅格的高度,利用空间几何求解栅格的自适应阈值,构建了可靠的栅格地图,具有以下特点:
[0035] (1)系统容易构建,使用立体双目相机即可完成输入数据的采集;
[0036] (2)程序简单,易于实现;
[0037] (3)利用空间先验信息过滤视差和高效算法进行栅格过滤,提升栅格计算的运行速度和精度
[0038] (4)利用统计推算出栅格高度,具有鲁棒性;
[0039] (5)利用空间几何求解栅格的自适应阈值,提升算法的泛化能和鲁棒性。附图说明
[0040] 图1是实际采集平台。
[0041] 图2为左相机采集的左图像。
[0042] 图3为右相机采集的右图像。
[0043] 图4为视差图。
[0044] 图5为算法整体流程图
[0045] 图6为过滤和筛选流程图。
[0046] 图7为栅格阈值计算方法示意图。
[0047] 图8为没有过滤处理的可视化结果。
[0048] 图9为图8添加高度过滤后的可视化结果。
[0049] 图10为图9添加阈值过滤后的可视化结果。
[0050] 图11为细节放大图。

具体实施方式

[0051] 本发明提出了一种利用双目立体相机构建栅格地图的方法,结合技术方案和附图详细叙述本发明的具体实施方式。
[0052] 将双目立体相机摆放在固定的平台上,实验相机的图像分辨率为1280×720,视场角为45.4°,实验平台如图1所示,为保证实时性利用GPU计算栅格地图。在此基础上设计构建栅格地图的方法,所述的方法包括下列步骤:
[0053] 1)创建栅格地图:
[0054] 1.1)从配置文件中获取需要计算的最高高度max_height、最低高度min_height、最远距离max_depth和视场角fov,即可确定最右侧位置为max_rigtht=tan(fov/2)×max_depth,最左侧位置为max_left=-tan(fov/2)×max_depth,从而确定了栅格地图的空间信息。
[0055] 1.2)将栅格地图划分为规则图形,以正方形为例(下同),边长为grid_size,所以栅格共有行数为rows=max_depth/grid_size,列数为cols=(max_rigtht-max_left)/grid_size。
[0056] 计算出栅格中心的X坐标为(c-cols/2+0.5)×*grid_size,c为栅格所在列号;Z坐标为(rows-r-0.5)×*grid_size,r为栅格所在行号;Y坐标设为0。
[0057] 1.3)根据双目相机的实际摆放位置确定世界坐标系;
[0058] 在空间中以双目立体相机中左相机与地面的垂线的交点为原点O建立空间直角坐标系,水平向右为X轴正方向,垂直向上为Y轴正方向,水平向前为Z轴正方向,此坐标系为世界坐标系。
[0059] 2)获取原始数据:利用双目立体相机获取场景图像和视差图,场景图像如如图2、图3所示,视差图如图4所示;
[0060] 如图5所示,下面是算法的主要流程,具体描述如下:
[0061] 3)生成三维坐标点:利用双目图像中匹配点的三角关系和视差图,生成三维坐标点,并转换到世界坐标系,只保留位于1.1)中确定的栅格空间之内的三维坐标点;
[0062] 4)平面投影:
[0063] 4.1)将过滤后三维坐标点(X,Y,Z)投影到栅格地图所在平面,投影点为(X,0,Z),投影到的栅格行号为r=rows-Z/grid_size-1,如果X<0则列号c=X/grid_size-max_left-1,否则为c=X/grid_size-max_left。可由步骤1)查找出栅格中心坐标。计算投影点与栅格中心的距离d,如果d则保留投影点,否则剔除,R取栅格内接圆团半径的四分之三;
[0064] 4.2)统计每个栅格中点的个数Ni;
[0065] 5)高度统计及高度过滤,:
[0066] 5.1)令统计区间i的长度为length,每一个统计区间表示的高度为hi(hi=i×length),计算投影至栅格中所有三维点的Y轴坐标y所在的区间 并计算频数Ci。选取最大统计区间imax,条件有二,一是统计区间的频数Ci大于上一个统计区间频数Ci-1的一定数量,二是频数Ci大于N,公式为:
[0067] imax=argmaxi{Ci>N,Ci>αCi-1}   (1)
[0068] 式中,Ci为第i个统计区间的频数,Ci-1为第i-1个统计区间的频数,α为第一尺度因子,N是最低频数;
[0069] 5.3)根据应用场景先验,令Th为最低的障碍高度,如果栅格的高度hi
[0070] 6)栅格阈值筛选,如图7所示:
[0071] 6.1)计算出每个栅格的阈值Ti,公式如下:
[0072]
[0073]
[0074] Ti=βr×ar×bi   (4)
[0075] 式(2)为深度测量准确时,应用ar个像素表示位于第r行的栅格边长,其中img_width表示视差图宽度,grid_size表示栅格边长,depthr表示第r行的栅格深度,fov表示视场角大小;式(3)为深度测量准确时,应用bi个像素表示第r行的栅格高度hi,其中hi为栅格i中的高度,由步骤5)计算;Ti为栅格阈值,ar×bi表示深度测量准确时,第r行中宽为grid_size、高为hi的矩形面应有的像素个数,考虑到不规则形状以及鲁棒性增加了第二尺度因子βr;
[0076] 6.2)比较每个栅格中投影点的个数Ni与Ti,如果Ni>γTi,则令栅格的状态为占据,否则为空,γ为第三尺度因子;
[0077] 6.3)如果栅格的状态为占据,则将栅格中心的Xi、Zi坐标和栅格高度 组合为当前栅格的最高点(Xi,Zi,hi);
[0078] 7)扫描地图:
[0079] 7.1)栅格地图中视场角fov外区域的栅格的状态设置为未知,该区域栅格行号r和列号c有如下关系:
[0080] c<r×tan(fov/2)||r×tan(fov/2)≥grid_width–c
[0081] 7.2)将双目相机光心坐标转换到世界坐标系,设为O′;连接O′与状态为占据的栅格虚拟最高点(Xi,Zi,hi)形成直线l,并将直线l投影到栅格地图所在的XOZ平面,投影线为l′;
[0082] 7.3)检索投影线l′远离双目相机的方向,如果投影线l′穿过空状态栅格,则将空状态的栅格置为未知;如果投影线l′穿过占据状态栅格,将栅格中心(Xi,0,Zi)垂直投影到投影线l′得到投影点(Xi′,0,Zi′),如果 则将其状态置为未知;如果投影线l′穿过占据状态栅格,且hi>l(Xi′,Zi′)y,则重新计算直线l和投影线l′并继续上述过程;如果投影线l′穿过占据状态栅格,且 则继续检索;如果投影线l′到达栅格空间之外,则检索结束;其中l(Xi′,Zi′)y表示当X=Xi′、Z=Zi′时取直线l上的Y轴坐标;
[0083] 8)可视化:设置栅格对应像素分辨率将之前栅格地图可视化输出,图8-图11中设置分辨率为一个栅格用4×4大小的像素
[0084] 本实施例详细描述了利用双目立体相机构建栅格地图的方法,图1-图4为系统设备和输入,图5-图7是为算法流程的描述,输出如图8-图11所示。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈