CN113077513B - 视觉定位方法、装置和计算机设备 - Google Patents
视觉定位方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN113077513B CN113077513B CN202110618509.2A CN202110618509A CN113077513B CN 113077513 B CN113077513 B CN 113077513B CN 202110618509 A CN202110618509 A CN 202110618509A CN 113077513 B CN113077513 B CN 113077513B
- Authority
- CN
- China
- Prior art keywords
- feature points
- point
- corner
- points
- pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C11/00—Photogrammetry or videogrammetry, e.g. stereogrammetry; Photographic surveying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/136—Segmentation; Edge detection involving thresholding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/579—Depth or shape recovery from multiple images from motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20112—Image segmentation details
- G06T2207/20164—Salient point detection; Corner detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Multimedia (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及图像数据处理领域,揭示了视觉定位方法,包括:提取当前帧图片对应的若干角点特征点;判断若干角点特征点之间的间距是否小于第一预设阈值;若是则判断间距小于第一预设阈值的角点特征点的灰度值是否在第二预设阈值范围之内;若间距小于第一预设阈值的角点特征点的灰度值在第二预设阈值范围之内,则得出角点特征点的聚类集合;在聚类集合中筛选有效特征点;根据有效特征点的数量和若干角点特征点的数量的比值,计算定位置信度;若定位置信度在预设范围内,则根据定位置信度确定视觉定位。通过对角点特征点分类分析,确定分布均匀、彼此间的像素间距大的有效特征点,有效特征点占比所有角点特征点的比例作为定位置信度,衡量定位鲁棒性。
Description
技术领域
本申请涉及图像数据处理领域,特别是涉及到视觉定位方法、装置和计算机设备。
背景技术
搭载有视觉传感器的机器人在所处环境中进行建图和导航时,无法基于常用视觉平面特征的区域分布特性,实时评估搭载有视觉传感器的机器人在所处环境中进行建图和导航过程中的定位置信度,且在建图和导航过程中提特的视觉平面特征的特征点具有随机性,无法衡量当前机器人建图和导航过程的鲁棒性,更无法及时采取相应的预警补救措施,如预先在该区域中布置特定标示物(如二维码等)或增加其他感知辅助设备等,紧急避开该视觉特征稀疏或定位稳定性差的危险区域,而只能最终依靠人力查看所建地图的质量好坏或长时间监测机器人是否因定位漂移、丢失引发导航行为异常事故,代价高昂、效率低下。
发明内容
本申请的主要目的为提供视觉定位方法,旨在解决现有建图和导航过程中定位鲁棒性难以直观描述或衡量的技术问题。
本申请提出一种视觉定位方法,包括:
提取当前帧图片对应的若干角点特征点;
判断所述若干角点特征点之间的间距是否小于第一预设阈值;
若是,则判断所述间距小于第一预设阈值的角点特征点的灰度值是否在第二预设阈值范围之内;
若所述间距小于第一预设阈值的角点特征点的灰度值在第二预设阈值范围之内,则得出角点特征点的聚类集合;
在聚类集合中筛选有效特征点,其中,所述有效特征点为同一聚类集合中相距指定像素间距、均匀分布的角点特征点;
根据所述有效特征点的数量和所述若干角点特征点的数量的比值,计算定位置信度;
若所述定位置信度在预设范围内,则根据所述定位置信度确定视觉定位。
优选地,所述得出角点特征点的聚类集合的步骤,包括:
选择第一特征点为聚类中心,其中,所述第一特征点为所述间距小于第一预设阈值的角点特征点中的任意一特征点;
计算距离所述聚类中心的第一像素间距对应的预设区域内的灰度均值;
判断距离所述聚类中心的第二像素间距的距离范围内是否存在相邻的特征点,其中,所述第二像素间距大于所述第一像素间距,所述第二像素间距小于或等于所述第一预设阈值;
若是,则计算所述相邻的特征点与所述灰度均值的像素偏差;
根据所述像素偏差筛选与所述第一特征点属于同一聚类集合的指定相邻特征点;
根据以所述第一特征点为聚类中心的聚类过程,分别对所有角点特征点进行聚类分析,得到角点特征点的聚类集合。
优选地,所述根据所述像素偏差筛选与所述第一特征点属于同一聚类集合的指定相邻特征点的步骤,包括:
获取第一相邻特征点对应的第一像素偏差,其中,所述第一相邻特征点为第二像素间距的距离范围内的所有相邻的特征点中的任一个;
判断所述第一像素偏差的绝对值是否小于或等于像素灰度偏差阈值;
若是,则判断所述第一相邻特征点是否存在于所述第一特征点所属的聚类集合中;
若否,则将所述第一相邻特征点作为所述指定相邻特征点,合并至所述第一特征点所属的聚类集合中。
优选地,所有角点特征点分别存储于kd-tree,所述第一特征点存储于所述kd-tree的指定节点,所述根据以所述第一特征点为聚类中心的聚类过程,分别对所有角点特征点进行聚类分析,得到角点特征点的聚类集合的步骤,包括:
将所述指定节点记为检索路径的起点;
确定与所述检索路径的起点相连的下级节点;
获取所述下级节点对应存储的第二特征点;
按照以所述第一特征点为聚类中心的聚类过程,对所述第二特征点进行聚类分析;
自所述第二特征点的遍历至所述kd-tree的叶子节点,得到各聚类集合。
优选地,所述在聚类集合中筛选有效特征点的步骤,包括:
获取指定聚类集合中的所有角点特征点分别对应的像素坐标,其中,所述指定聚类集合为所有聚类集合中的任一个;
根据所有角点特征点分别对应的像素坐标,计算最小外接多边形;
将位于所述最小外接多边形周边上的角点特征点,纳入所述有效特征点所属集合。
优选地,所述根据所有角点特征点分别对应的像素坐标,计算最小外接多边形的步骤之后,包括:
获取计算所述最小外接多边形时的起点特征点;
将所述起点特征点加入降采样集合;
获取计算所述最小外接多边形时与所述起点特征点相邻的第二相邻特征点;
计算所述起点特征点与所述第二相邻特征点之间的像素间距;
判断所述起点特征点与所述第二相邻特征点之间的像素间距是否大于第三预设阈值;
若是,则将所述第二相邻特征点添加至所述降采样集合;
根据所述第二相邻特征点的降采样过程,对所述最小外接多边形周边上的所有角点特征点进行降采样,得到降采样后的降采样集合;
将降采样后的降采样集合中的特征点,纳入所述有效特征点所属集合。
本申请还提供了一种视觉定位装置,包括:
提取模块,用于提取当前帧图片对应的若干角点特征点;
第一判断模块,用于判断所述若干角点特征点之间的间距是否小于第一预设阈值;
第二判断模块,用于若是小于预设阈值,则判断所述间距小于第一预设阈值的角点特征点的灰度值是否在第二预设阈值范围之内;
得出模块,用于若所述间距小于第一预设阈值的角点特征点的灰度值在第二预设阈值范围之内,则得出角点特征点的聚类集合;
筛选模块,用于在聚类集合中筛选有效特征点,其中,所述有效特征点为同一聚类集合中相距指定像素间距、均匀分布的角点特征点;
计算模块,用于根据所述有效特征点的数量和所述若干角点特征点的数量的比值,计算定位置信度;
确定模块,用于若所述定位置信度在预设范围内,则根据所述定位置信度确定视觉定位。
本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本申请通过对角点特征点进行分类分析,并通过预设算法进行降采样,以确定分布均匀、彼此间的像素间距大的有效特征点,并通过有效特征点占比提取到的所有角点特征点的比例作为定位置信度,衡量定位鲁棒性。
附图说明
图1 本申请一实施例的视觉定位方法流程示意图;
图2 本申请一实施例的视觉定位装置结构示意图;
图3 本申请一实施例的计算机设备内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本申请一实施例的视觉定位方法,包括:
S1:提取当前帧图片对应的若干角点特征点;
S2:判断所述若干角点特征点之间的间距是否小于第一预设阈值;
S3:若小于第一预设阈值,则判断所述间距小于第一预设阈值的角点特征点的灰度值是否在第二预设阈值范围之内;
S4:若所述间距小于第一预设阈值的角点特征点的灰度值在第二预设阈值范围之内,则得出角点特征点的聚类集合;
S5:在聚类集合中筛选有效特征点,其中,所述有效特征点为同一聚类集合中相距指定像素间距、均匀分布的角点特征点;
S6:根据所述有效特征点的数量和所述所有角点特征点的数量的比值,计算所述定位置信度;
S7:若所述定位置信度在预设范围内,则根据所述定位置信度确定视觉定位。
本申请实施例中,上述角点特征点包括但不限于ORB(ORiented Brief)、Fast(Features From Accelerated Segment Test,加速分段试验的特点),SURF(Speeded UpRobust Feature,加速稳健特征)等。上述角点特征点的提取仅仅依赖于平面图像的局部区域的灰度变化,不受空间约束限制,导致某些灰度变化强烈的局部区域,如物体附近,灯管周边等等,会出现角点特征点聚集扎堆的分布现象,导致定位的鲁棒性较弱。
本申请中机器人在建图和导航过程中的视觉定位,依赖于上述角点特征点实现。每采集一帧当前时刻对应的相机图像,即得到一张当前帧图片,并对当前帧图片提取上述的角点特征点并缓存,角点特征点的总数记作N。然后判断N是否大于稳定定位需求的数量阈值,若不大于数量阈值,则认为未满足稳定定位的需求,则直接输出本帧图像的定位置信度为零,并在后续的定位中启用该图片;若N大于稳定定位需求的数量阈值,则对该帧图片中的角点特征点进行角点分类,相同定位效果的角点特征点归为同一个聚类集合中,然后在每个聚类集合中以选取分布均匀且彼此间的像素间距较大的角点特征点,作为定位评价的有效特征点,提高定位鲁棒性。通过选择像素间距大、分散均匀的角点特征点作为有效特征点,然后通过统计有效特征点和所有特征点的比值,确定视觉定位的定位置信度,以衡量定位鲁棒性。因为在角点特征点总数确定的情况下,角点特征点分布越均匀、彼此间的像素间距越大,则定位的鲁棒性越强。上述扎堆聚集的角点特征点不仅不能对定位的鲁棒性产生等效的增益价值,反而会因为容易引入匹配错误而造成定位恶化的问题。通过以有效特征点的数量M和原提取的角点特征点的数量N之间的比例,作为定位置信度,及时预警用户采取相应补救措施,有效提高其建图效率、降低其导航风险,有效衡量定位的鲁棒性。如果角点特征点彼此间的像素间距比较大,前面的某个角点特征点经过移动后,后面的角点特征点就不容易误匹配到附近的其他角点特征点上,避免引发匹配错误则定位的鲁棒性更好。
本申请中,通过对角点特征点进行分类分析,并通过降采样,以确定分布均匀、彼此间的像素间距大的有效特征点,并通过有效特征点占比提取到的所有角点特征点的比例作为定位置信度,以衡量定位鲁棒性。
进一步地,所述得出角点特征点的聚类集合的步骤S4,包括:
S41:选择第一特征点为聚类中心,其中,所述第一特征点为所述间距小于第一预设阈值的角点特征点中的任意一特征点;
S42:计算距离所述聚类中心的第一像素间距对应的预设区域内的灰度均值;
S43:判断距离所述聚类中心的第二像素间距的距离范围内是否存在相邻的特征点,其中,所述第二像素间距大于所述第一像素间距,所述第二像素间距小于或等于所述第一预设阈值;
S44:若存在相邻特征点,则计算所述相邻的特征点与所述灰度均值的像素偏差;
S45:根据所述像素偏差筛选与所述第一特征点属于同一聚类集合的指定相邻特征点,所述同一聚类集合中的对象相似度较高,通常表示相同物体/目标;
S46:根据以所述第一特征点为聚类中心的聚类过程,分别对所有角点特征点进行聚类分析,得到角点特征点的聚类集合。
本申请中,上述第一像素间距为最小采样像素间距阈值为S0,上述的预设区域为以聚类中心为中心,计算其S0×S0矩形区域,通过计算上述矩形区域的灰度均值作为有效特征点的筛选标准。上述第二像素间距为最大检索像素间距阈值为L0, 通过检索第二像素间距内的所有角点特征点作为相邻的特征点。将上述相邻的特征点与聚类中心进行像素偏差计算,根据像素偏差进行聚类,把像素偏差的绝对值在预设偏差范围内的角点特征点作为与聚类中心类别相同的一类,归并至同一个聚类集合中。举例地,上述L0=10,S0=5,预设偏差范围为G0=5,像素偏差表示为▲g,如果|▲g|<=G0, 且相邻的特征点和聚类中心分别属于不同的定位等效角点的聚类集合,聚类开始时每个角点特征点分别作为独立的定位等效角点,则将该相邻的特征点合并到聚类中心所属的聚类集合中。
进一步地,所述根据所述像素偏差筛选与所述第一特征点属于同一聚类集合的指定相邻特征点的步骤S45,包括:
S451:获取第一相邻特征点对应的第一像素偏差,其中,所述第一相邻特征点为第二像素间距的距离范围内的所有相邻的特征点中的任一个;
S452:判断所述第一像素偏差的绝对值是否小于或等于像素灰度偏差阈值;
S453:若小于或等于像素灰度偏差阈值,则判断所述第一相邻特征点是否存在于所述第一特征点所属的聚类集合中;
S454:若不存在于所述第一特征点所属的聚类集合中,则将所述第一相邻特征点作为所述指定相邻特征点,合并至所述第一特征点所属的聚类集合中。
本申请在聚类开始时,每个角点特征点分别作为一个独立的聚类处理,通过确定聚类中心、聚类中心对应的灰度均值和聚类中心对应的相邻特征点集合,实现对聚类中心对应的聚类集合的聚类,依此类推直至整个当前帧图片对应的所有角点特征点的聚类集合的数量不再变化为止,角点特征点的聚类分析终止。每个特征点对应的灰度均值为以其为中心的S0×S0矩形区域范围内的像素均值。上述的预设偏差范围为像素灰度偏差阈值,判断两个特征点是不是属于同一物体的边界,通过比较两个特征点分别对应的灰度均值的偏差的绝对值,若上述绝对值小于或等于像素灰度偏差阈值,则认为两个特征点处于相似的环境,处于同一物体的边界上,相比于通过各特征点自身的灰度值判断两个特征点的环境相似性,鲁棒性更好。本申请中的“第一”、“第二”等类似用于仅用于区分,不用于限定或排序,其他处的类似用语作用相同,不赘述。
进一步地,所有角点特征点分别存储于kd-tree,所述第一特征点存储于所述kd-tree的指定节点,所述根据以所述第一特征点为聚类中心的聚类过程,分别对所有角点特征点进行聚类分析,得到角点特征点的聚类集合的步骤S46,包括:
S461:将所述指定节点记为检索路径的起点;
S462:确定与所述检索路径的起点相连的下级节点;
S463:获取所述下级节点对应存储的第二特征点;
S464:按照以所述第一特征点为聚类中心的聚类过程,对所述第二特征点进行聚类分析;
S465:自所述第二特征点的遍历至所述kd-tree的叶子节点,得到各聚类集合。
本申请实施例,当前帧图片的角点特征点缓存于一个kd-tree(K-dimensionaltree,高维索引树)上,方便检索且避免漏检。每提取一个角点特征点就按照kd-tree的节点连接次序进行一一对应缓存,即一个节点存储一个角点特征点。在聚类分析时,以kd-tree的根节点为起始节点,逐步分析至叶子节点为止。每个节点对应的角点特征点的聚类分析的计算过程如上所述,不赘述。
进一步地,所述在聚类集合中筛选有效特征点的步骤S5,包括:
S51:获取指定聚类集合中的所有角点特征点分别对应的像素坐标,其中,所述指定聚类集合为所有聚类集合中的任一个;
S52:根据所有角点特征点分别对应的像素坐标,计算最小外接多边形;
S53:将位于所述最小外接多边形周边上的角点特征点,纳入所述有效特征点所属集合。
本申请实施例中,每个聚类集合中的角点特征点具有相类似的定位等效性,在定位中无需使用某个聚类集合中的所有角点特征点,会导致定位的鲁棒性较差,本申请通过在某个聚类集合中,根据各角点特征点分别对应的像素坐标,执行最小外接多边形计算。定位倾向于所在环境的物体的唯一性识别,物体的唯一性概率越高,场景的可识别性就越高。角点特征点一般都处在物体的边界上,理论上边界上的特征点越多,就越可以拟合出该物体的轮廓形态,越可以表述物体的唯一性和可识别性,通过执行最小外接多边形计算,确定落在物体边缘轮廓上的角点特征点,作为有效特征点,衡量定位的鲁棒性。
进一步地,所述根据所有角点特征点分别对应的像素坐标,计算最小外接多边形的步骤S52之后,包括:
S521:获取计算所述最小外接多边形时的起点特征点;
S522:将所述起点特征点加入降采样集合;
S523:获取计算所述最小外接多边形时与所述起点特征点相邻的第二相邻特征点;
S524:计算所述起点特征点与所述第二相邻特征点之间的像素间距;
S525:判断所述起点特征点与所述第二相邻特征点之间的像素间距是否大于第三预设阈值;
S526:若是,则将所述第二相邻特征点添加至所述降采样集合;
S527:根据所述第二相邻特征点的降采样过程,对所述最小外接多边形周边上的所有角点特征点进行降采样,得到降采样后的降采样集合;
S528:将降采样后的降采样集合中的特征点,纳入所述有效特征点所属集合。
上述根据所述第二相邻特征点的降采样过程,对所述最小外接多边形周边上的所有角点特征点进行降采样,得到降采样后的降采样集合的过程,包括:
获取计算所述最小外接多边形时与所述第二相邻特征点相邻的第三相邻特征点;
计算所述起点特征点与所述第三相邻特征点之间的像素间距,以及所述第二相邻特征点与所述第三相邻特征点之间的像素间距;
判断所述起点特征点与所述第三相邻特征点之间的像素间距,以及所述第二相邻特征点与所述第三相邻特征点之间的像素间距是否均大于第三预设阈值;
若是,则将所述第三相邻特征点添加至所述降采样集合;
按照所述第二相邻特征点和所述第三相邻特征点的降采样过程,对所述最小外接多边形周边上的所有角点特征点进行降采样,得到降采样后的降采样集合。
本申请实施例中,为进一步优选用于定位的角点特征点,对处于最小外接多边形上的角点特征点进行降采样处理,上述降采样根据像素间距进行,不仅考虑了各角点特征点之间的像素差异,同时考虑了各角点特征点之间的像素间距。
将最小外接多边形时的起点特征点纳入降采样集合中,认为起点特征点一定为有效特征点,然后将最小外接多边形上与起点特征点相邻的特征点进行评估,即计算相邻的特征点与起点特征点的像素间距,如果像素间距大于预设间距阈值,则将该相邻的特征点纳入降采样集合,并以当前降采样集合中的起点特征点和该相邻的特征点共同作为分析标准,分析最小外接多边形上与该相邻的特征点相邻的其他特征点是否符合降采样标准,即起点特征点与其他特征点之间的像素间距,以及该相邻的特征点与其他特征点之间的像素间距是否均大于预设间距阈值,若均符合像素间距的要求,则纳入降采样集合,否则舍弃该角点特征点,直至分析完最小外接多边形上的所有角点特征点,得到最终的降采样集合,进一步降低了有效特征点的数量,进一步提高有效特征点之间的像素间距,进一步有效衡量定位的鲁棒性。
举例地,最小外接多边形上的所有角点特征点依次接续为特征点1至特征点6,其中特征点1为起始特征点,上述像素间距对应的间距预设阈值为5,特征点1和特征点2的像素间距为4,小于间距预设阈值5,则舍弃特征点2。然后计算特征点1和特征点3的像素间距为8,大于间距预设阈值5,则将特征点3纳入降采样集合,此时降采样集合中包括特征点1和特征点3,然后根据特征点1和特征点3分析特征点4,计算特征点1和特征点4的像素间距为10.特征点3和特征点4的像素间距为3,则特征点4不符合要求应舍弃。然后根据特征点1和特征点3分析特征点5,计算特征点1和特征点5的像素间距为9。特征点3和特征点5的像素间距为7,则特征点5符合要求,应纳入降采样集合,此时降采样集合中包括特征点1、3、5,然后根据特征点1、3、5分析特征点6,计算得到特征点5和特征点6的像素间距为3,则特征点6舍弃,最终的降采样集合中的有效特征点就为特征点1、3、5。
参照图2,本申请一实施例的视觉定位装置,包括:
提取模块1,用于提取当前帧图片对应的若干角点特征点;
第一判断模块2,用于判断所述若干角点特征点之间的间距是否小于第一预设阈值;
第二判断模块3,用于若是小于第一预设阈值,则判断所述间距小于第一预设阈值的角点特征点的灰度值是否在第二预设阈值范围之内;
得出模块4,用于若所述间距小于第一预设阈值的角点特征点的灰度值在第二预设阈值范围之内,则得出角点特征点的聚类集合;
筛选模块5,用于在聚类集合中筛选有效特征点,其中,所述有效特征点为同一聚类集合中相距指定像素间距、均匀分布的角点特征点;
计算模块6,用于根据所述有效特征点的数量和所述所有角点特征点的数量的比值,计算所述定位置信度;
确定模块7,用于若所述定位置信度在预设范围内,则根据所述定位置信度确定视觉定位。
本申请实施例的相应解释参照适用对应方法部分的解释,不赘述。
进一步地,得出模块4,包括:
选择单元,用于选择第一特征点为聚类中心,其中,所述第一特征点为所述间距小于第一预设阈值的角点特征点中的任意一特征点;
第一计算单元,用于计算距离所述聚类中心的第一像素间距对应的预设区域内的灰度均值;
第一判断单元,用于判断距离所述聚类中心的第二像素间距的距离范围内是否存在相邻的特征点,其中,所述第二像素间距大于所述第一像素间距,所述第二像素间距小于或等于所述第一预设阈值;
第二计算单元,用于若存在相邻特征点,则计算所述相邻的特征点与所述灰度均值的像素偏差;
筛选单元,用于根据所述像素偏差筛选与所述第一特征点属于同一聚类集合的指定相邻特征点,所述同一聚类集合中的对象相似度较高,通常表示相同物体/目标;
聚类单元,用于根据以所述第一特征点为聚类中心的聚类过程,分别对所有角点特征点进行聚类分析,得到角点特征点的聚类集合。
进一步地,筛选单元包括:
第一获取子单元,用于获取第一相邻特征点对应的第一像素偏差,其中,所述第一相邻特征点为第二像素间距的距离范围内的所有相邻的特征点中的任一个;
第一判断子单元,用于判断所述第一像素偏差的绝对值是否小于或等于像素灰度偏差阈值;
第二判断子单元,用于若小于或等于像素灰度偏差阈值,则判断所述第一相邻特征点是否存在于所述第一特征点所属的聚类集合中;
合并子单元,用于若不存在于所述第一特征点所属的聚类集合中,则将所述第一相邻特征点作为所述指定相邻特征点,合并至所述第一特征点所属的聚类集合中。
进一步地,所有角点特征点分别存储于kd-tree,所述第一特征点存储于所述kd-tree的指定节点,聚类单元,包括:
记为子单元,用于将所述指定节点记为检索路径的起点;
确定子单元,用于确定与所述检索路径的起点相连的下级节点;
第二获取子单元,用于获取所述下级节点对应存储的第二特征点;
聚类子单元,用于按照以所述第一特征点为聚类中心的聚类过程,对所述第二特征点进行聚类分析;
遍历子单元,用于自所述第二特征点的遍历至所述kd-tree的叶子节点,得到各聚类集合。
进一步地,筛选模块5,包括:
第一获取单元,用于获取指定聚类集合中的所有角点特征点分别对应的像素坐标,其中,所述指定聚类集合为所有聚类集合中的任一个;
第三计算单元,用于根据所有角点特征点分别对应的像素坐标,计算最小外接多边形;
第一纳入单元,用于将位于所述最小外接多边形周边上的角点特征点,纳入所述有效特征点所属集合。
进一步地,筛选模块5,包括:
第二获取单元,用于获取计算所述最小外接多边形时的起点特征点;
第一加入单元,用于将所述起点特征点加入降采样集合;
第四计算单元,用于获取计算所述最小外接多边形时与所述起点特征点相邻的第二相邻特征点;
第五计算单元,用于计算所述起点特征点与所述第二相邻特征点之间的像素间距;
第二判断单元,用于判断所述起点特征点与所述第二相邻特征点之间的像素间距是否大于第三预设阈值;
第一添加单元,用于若大于第三预设阈值,则将所述第二相邻特征点添加至所述降采样集合;
第二纳入单元,用于将降采样后的降采样集合中的特征点,纳入所述有效特征点所属集合。
进一步地,还包括:
第三获取单元,用于获取计算所述最小外接多边形时与所述第二相邻特征点相邻的第三相邻特征点;
第六获取单元,用于分别计算所述起点特征点与所述第三相邻特征点之间的像素间距,以及所述第二相邻特征点与所述第三相邻特征点之间的像素间距;
第三判断单元,用于判断所述起点特征点与所述第三相邻特征点之间的像素间距,以及所述第二相邻特征点与所述第三相邻特征点之间的像素间距是否均大于第三预设阈值;
第二添加单元,用于若均大于第三预设阈值,则将所述第三相邻特征点添加至所述降采样集合;
降采样单元,用于按照所述第二相邻特征点和所述第三相邻特征点的降采样过程,对所述最小外接多边形周边上的所有角点特征点进行降采样,得到降采样后的降采样集合。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储视觉定位过程需要的所有数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现视觉定位方法。
上述处理器执行上述视觉定位方法,包括:提取当前帧图片对应的若干角点特征点;判断所述若干角点特征点之间的间距是否小于第一预设阈值;若是,则判断所述间距小于第一预设阈值的角点特征点的灰度值是否在第二预设阈值范围之内;若所述间距小于第一预设阈值的角点特征点的灰度值在第二预设阈值范围之内,则得出角点特征点的聚类集合;在聚类集合中筛选有效特征点,其中,所述有效特征点为同一聚类集合中相距指定像素间距、均匀分布的角点特征点;根据所述有效特征点的数量和所述若干角点特征点的数量的比值,计算定位置信度;若所述定位置信度在预设范围内,则根据所述定位置信度确定视觉定位。
上述计算机设备,通过对角点特征点进行分类分析,并通过预设算法进行降采样,以确定分布均匀、彼此间的像素间距大的有效特征点,并通过有效特征点占比提取到的所有角点特征点的比例作为定位置信度,衡量定位鲁棒性。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现视觉定位方法,包括:提取当前帧图片对应的若干角点特征点;判断所述若干角点特征点之间的间距是否小于第一预设阈值;若是,则判断所述间距小于第一预设阈值的角点特征点的灰度值是否在第二预设阈值范围之内;若所述间距小于第一预设阈值的角点特征点的灰度值在第二预设阈值范围之内,则得出角点特征点的聚类集合;在聚类集合中筛选有效特征点,其中,所述有效特征点为同一聚类集合中相距指定像素间距、均匀分布的角点特征点;根据所述有效特征点的数量和所述若干角点特征点的数量的比值,计算定位置信度;若所述定位置信度在预设范围内,则根据所述定位置信度确定视觉定位。
上述计算机可读存储介质,通过对角点特征点进行分类分析,并通过预设算法进行降采样,以确定分布均匀、彼此间的像素间距大的有效特征点,并通过有效特征点占比提取到的所有角点特征点的比例作为定位置信度,衡量定位鲁棒性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种视觉定位方法,其特征在于,包括:
提取当前帧图片对应的若干角点特征点;
判断所述若干角点特征点之间的间距是否小于第一预设阈值;
若是,则判断间距小于第一预设阈值的角点特征点的灰度值是否在第二预设阈值范围之内;
若所述间距小于第一预设阈值的角点特征点的灰度值在第二预设阈值范围之内,则得出角点特征点的聚类集合;
在聚类集合中筛选有效特征点,其中,所述有效特征点为同一聚类集合中相距指定像素间距、均匀分布的角点特征点;
根据所述有效特征点的数量和所述若干角点特征点的数量的比值,计算定位置信度;
若所述定位置信度在预设范围内,则根据所述定位置信度确定视觉定位。
2.根据权利要求1所述的视觉定位方法,其特征在于,所述得出角点特征点的聚类集合的步骤,包括:
选择第一特征点为聚类中心,其中,所述第一特征点为所述间距小于第一预设阈值的角点特征点中的任意一特征点;
计算距离所述聚类中心的第一像素间距对应的预设区域内的灰度均值;
判断距离所述聚类中心的第二像素间距的距离范围内是否存在相邻的特征点,其中,所述第二像素间距大于所述第一像素间距,所述第二像素间距小于或等于所述第一预设阈值;
若是,则计算所述相邻的特征点与所述灰度均值的像素偏差;
根据所述像素偏差筛选与所述第一特征点属于同一聚类集合的指定相邻特征点;
根据以所述第一特征点为聚类中心的聚类过程,分别对所有角点特征点进行聚类分析,得到角点特征点的聚类集合。
3.根据权利要求2所述的视觉定位方法,其特征在于,所述根据所述像素偏差筛选与所述第一特征点属于同一聚类集合的指定相邻特征点的步骤,包括:
获取第一相邻特征点对应的第一像素偏差,其中,所述第一相邻特征点为第二像素间距的距离范围内的所有相邻的特征点中的任一个;
判断所述第一像素偏差的绝对值是否小于或等于像素灰度偏差阈值;
若是,则判断所述第一相邻特征点是否存在于所述第一特征点所属的聚类集合中;
若否,则将所述第一相邻特征点作为所述指定相邻特征点,合并至所述第一特征点所属的聚类集合中。
4.根据权利要求3所述的视觉定位方法,其特征在于,所有角点特征点分别存储于kd-tree,所述第一特征点存储于所述kd-tree的指定节点,所述根据以所述第一特征点为聚类中心的聚类过程,分别对所有角点特征点进行聚类分析,得到角点特征点的聚类集合的步骤,包括:
将所述指定节点记为检索路径的起点;
确定与所述检索路径的起点相连的下级节点;
获取所述下级节点对应存储的第二特征点;
按照以所述第一特征点为聚类中心的聚类过程,对所述第二特征点进行聚类分析;
自所述第二特征点的遍历至所述kd-tree的叶子节点,得到各聚类集合。
5.根据权利要求1所述的视觉定位方法,其特征在于,所述在聚类集合中筛选有效特征点的步骤,包括:
获取指定聚类集合中的所有角点特征点分别对应的像素坐标,其中,所述指定聚类集合为所有聚类集合中的任一个;
根据所有角点特征点分别对应的像素坐标,计算最小外接多边形;
将位于所述最小外接多边形周边上的角点特征点,纳入所述有效特征点所属集合。
6.根据权利要求5所述的视觉定位方法,其特征在于,所述根据所有角点特征点分别对应的像素坐标,计算最小外接多边形的步骤之后,包括:
获取计算所述最小外接多边形时的起点特征点;
将所述起点特征点加入降采样集合;
获取计算所述最小外接多边形时与所述起点特征点相邻的第二相邻特征点;
计算所述起点特征点与所述第二相邻特征点之间的像素间距;
判断所述起点特征点与所述第二相邻特征点之间的像素间距是否大于第三预设阈值;
若是,则将所述第二相邻特征点添加至所述降采样集合;
根据所述第二相邻特征点的降采样过程,对所述最小外接多边形周边上的所有角点特征点进行降采样,得到降采样后的降采样集合;
将降采样后的降采样集合中的特征点,纳入所述有效特征点所属集合。
7.一种视觉定位装置,其特征在于,包括:
提取模块,用于提取当前帧图片对应的若干角点特征点;
第一判断模块,用于判断所述若干角点特征点之间的间距是否小于第一预设阈值;
第二判断模块,用于若是小于第一预设阈值,则判断间距小于第一预设阈值的角点特征点的灰度值是否在第二预设阈值范围之内;
得出模块,用于若所述间距小于第一预设阈值的角点特征点的灰度值在第二预设阈值范围之内,则得出角点特征点的聚类集合;
筛选模块,用于在聚类集合中筛选有效特征点,其中,所述有效特征点为同一聚类集合中相距指定像素间距、均匀分布的角点特征点;
计算模块,用于根据所述有效特征点的数量和所述若干角点特征点的数量的比值,计算定位置信度;
确定模块,用于若所述定位置信度在预设范围内,则根据所述定位置信度确定视觉定位。
8.根据权利要求7所述的视觉定位装置,其特征在于,所述得出模块,包括:
选择单元,用于选择第一特征点为聚类中心,其中,所述第一特征点为所述间距小于第一预设阈值的角点特征点中的任意一特征点;
第一计算单元,用于计算距离所述聚类中心的第一像素间距对应的预设区域内的灰度均值;
判断单元,用于判断距离所述聚类中心的第二像素间距的距离范围内是否存在相邻的特征点,其中,所述第二像素间距大于所述第一像素间距,所述第二像素间距小于或等于所述第一预设阈值;
第二计算单元,用于若存在相邻的特征点,则计算所述相邻的特征点与所述灰度均值的像素偏差;
筛选单元,用于根据所述像素偏差筛选与所述第一特征点属于同一聚类集合的指定相邻特征点;
聚类单元,用于根据以所述第一特征点为聚类中心的聚类过程,分别对所有角点特征点进行聚类分析,得到角点特征点的聚类集合。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110618509.2A CN113077513B (zh) | 2021-06-03 | 2021-06-03 | 视觉定位方法、装置和计算机设备 |
US17/488,343 US11989908B2 (en) | 2021-06-03 | 2021-09-29 | Visual positioning method, mobile machine using the same, and computer readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110618509.2A CN113077513B (zh) | 2021-06-03 | 2021-06-03 | 视觉定位方法、装置和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113077513A CN113077513A (zh) | 2021-07-06 |
CN113077513B true CN113077513B (zh) | 2021-10-29 |
Family
ID=76616984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110618509.2A Active CN113077513B (zh) | 2021-06-03 | 2021-06-03 | 视觉定位方法、装置和计算机设备 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11989908B2 (zh) |
CN (1) | CN113077513B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104008387A (zh) * | 2014-05-19 | 2014-08-27 | 山东科技大学 | 一种基于特征点分段线性拟合的车道线检测方法 |
CN108734743A (zh) * | 2018-04-13 | 2018-11-02 | 深圳市商汤科技有限公司 | 用于标定摄像装置的方法、装置、介质及电子设备 |
CN112365470A (zh) * | 2020-11-12 | 2021-02-12 | 中运科技股份有限公司 | 基于sift的广告素材与现场照片自动匹配评估方法、存储介质及计算机设备 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5754813B2 (ja) * | 2012-01-10 | 2015-07-29 | Kddi株式会社 | 画像中の特徴点を検出する特徴点検出プログラム、画像処理装置及び方法 |
US9037396B2 (en) * | 2013-05-23 | 2015-05-19 | Irobot Corporation | Simultaneous localization and mapping for a mobile robot |
CN105678304B (zh) * | 2015-12-30 | 2020-04-10 | 浙江宇视科技有限公司 | 一种车标识别方法及装置 |
CN112435215B (zh) * | 2017-04-11 | 2024-02-13 | 创新先进技术有限公司 | 一种基于图像的车辆定损方法、移动终端、服务器 |
US11348269B1 (en) * | 2017-07-27 | 2022-05-31 | AI Incorporated | Method and apparatus for combining data to construct a floor plan |
CN109376734B (zh) * | 2018-08-13 | 2020-07-31 | 东南大学 | 一种基于车牌角点特征的道路救援装备正方位拖牵诱导方法 |
CN109344710B (zh) * | 2018-08-30 | 2020-12-18 | 东软集团股份有限公司 | 一种图像特征点的定位方法、装置、存储介质及处理器 |
CN109344742B (zh) * | 2018-09-14 | 2021-03-16 | 腾讯科技(深圳)有限公司 | 特征点定位方法、装置、存储介质和计算机设备 |
US11113819B2 (en) * | 2019-01-15 | 2021-09-07 | Nvidia Corporation | Graphical fiducial marker identification suitable for augmented reality, virtual reality, and robotics |
CN111538855B (zh) * | 2020-04-29 | 2024-03-08 | 浙江商汤科技开发有限公司 | 视觉定位方法及装置、电子设备和存储介质 |
CN111899334B (zh) * | 2020-07-28 | 2023-04-18 | 北京科技大学 | 一种基于点线特征的视觉同步定位与地图构建方法及装置 |
-
2021
- 2021-06-03 CN CN202110618509.2A patent/CN113077513B/zh active Active
- 2021-09-29 US US17/488,343 patent/US11989908B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104008387A (zh) * | 2014-05-19 | 2014-08-27 | 山东科技大学 | 一种基于特征点分段线性拟合的车道线检测方法 |
CN108734743A (zh) * | 2018-04-13 | 2018-11-02 | 深圳市商汤科技有限公司 | 用于标定摄像装置的方法、装置、介质及电子设备 |
CN112365470A (zh) * | 2020-11-12 | 2021-02-12 | 中运科技股份有限公司 | 基于sift的广告素材与现场照片自动匹配评估方法、存储介质及计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
US20220392103A1 (en) | 2022-12-08 |
CN113077513A (zh) | 2021-07-06 |
US11989908B2 (en) | 2024-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Tian et al. | Building change detection based on satellite stereo imagery and digital surface models | |
CN110781756A (zh) | 基于遥感图像的城市道路提取方法及装置 | |
CN109559324B (zh) | 一种线阵图像中的目标轮廓检测方法 | |
CN114981840A (zh) | 基于点云数据的地面分割方法、装置和计算机设备 | |
Dai et al. | Building segmentation and outline extraction from UAV image-derived point clouds by a line growing algorithm | |
CN108537169B (zh) | 一种基于中心线和路宽检测算法的高分辨率遥感影像道路提取方法 | |
CN112101195B (zh) | 人群密度预估方法、装置、计算机设备和存储介质 | |
EP4083917A1 (en) | Depth image processing method, small obstacle detection method and system, robot, and medium | |
CN111178193A (zh) | 一种车道线的检测方法、检测装置及计算机可读存储介质 | |
CN114359181A (zh) | 一种基于图像和点云的智慧交通目标融合检测方法及系统 | |
CN105469380A (zh) | 对于对象的遮挡进行检测的方法和装置 | |
JP2016099835A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
CN112085778A (zh) | 基于超像素和形态学的倾斜摄影违法建筑检测方法及系统 | |
CN114882460A (zh) | 一种基于特征层融合的道路车辆检测方法 | |
CN113077513B (zh) | 视觉定位方法、装置和计算机设备 | |
CN116106904B (zh) | 面向对象MT-InSAR的设施变形监测方法及设备 | |
CN115656991A (zh) | 车辆外参标定方法、装置、设备以及存储介质 | |
Sheikh et al. | A multi-level approach for change detection of buildings using satellite imagery | |
CN112558091B (zh) | 一种输电线对树空间距离的实时检测方法、装置及终端设备 | |
CN114742849A (zh) | 一种基于图像增强的水准仪距离测量方法 | |
CN112766914A (zh) | 基于大数据的输变电工程造价评估方法及云计算评估平台 | |
CN114092850A (zh) | 重识别方法、装置、计算机设备和存储介质 | |
Narwade et al. | Road extraction from airborne LiDAR data using SBF and CD-TIN | |
CN113139454B (zh) | 基于单张图像的道路宽度提取方法及装置 | |
CN117423010B (zh) | 一种基于遥感数据的河湖划界识别监测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |