CN114913235B - 一种位姿估计方法、装置及智能机器人 - Google Patents
一种位姿估计方法、装置及智能机器人 Download PDFInfo
- Publication number
- CN114913235B CN114913235B CN202210840792.8A CN202210840792A CN114913235B CN 114913235 B CN114913235 B CN 114913235B CN 202210840792 A CN202210840792 A CN 202210840792A CN 114913235 B CN114913235 B CN 114913235B
- Authority
- CN
- China
- Prior art keywords
- corner
- dynamic
- point
- points
- label
- 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
- 238000000034 method Methods 0.000 title claims abstract description 42
- 230000011218 segmentation Effects 0.000 claims abstract description 31
- 238000012216 screening Methods 0.000 claims abstract description 22
- 230000003068 static effect Effects 0.000 claims abstract description 15
- 238000012795 verification Methods 0.000 claims description 39
- 238000012546 transfer Methods 0.000 claims description 13
- 230000033001 locomotion Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 9
- 238000003709 image segmentation Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 230000008602 contraction Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
-
- 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/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
- Manipulator (AREA)
Abstract
本发明涉及机器人定位领域,尤其涉及一种位姿估计方法、装置及智能机器人。该位姿估计方法包括验证初始匹配的角点对,以从第一角点集和第二角点集中剔除误匹配的角点;根据第二角点集,从第一角点集中筛选出第一动态角点集;根据语义分割结果,剔除语义目标的动态角点,得到无标签动态目标的第二动态角点集;基于第二动态角点集,从当前帧中分割出无标签动态目标区域;剔除语义目标区域内的特征点,并判断剩余特征点是否在无标签动态目标区域内,若在,则剔除特征点,以根据当前帧图像中的静态特征点进行位姿估计。该方法可在语义分割的基础上,进一步分割出无标签目标区域,从而可更加全面地检测动态目标,排除干扰,有效提升定位精度。
Description
技术领域
本发明涉及移动机器人自主定位技术领域,尤其涉及一种位姿估计方法、装置及智能机器人。
背景技术
近年来,基于视觉的同时定位与建图(Simultaneous Localization andMapping, SLAM)技术被应用于移动机器人、虚拟现实等领域,通过相机构建出环境地图并感知自身定位,为自主导航、虚拟交互等技术提供前提条件。当视觉SLAM系统追踪到动态物体时,会严重影响位姿估计以及地图构建的精度,使其在动态环境下存在极大挑战。随着深度学习技术的飞速发展,越来越多的视觉SLAM系统采用图像分割网络进行语义物体分割,获取环境语义信息,以在动态环境下发现并剔除动态物体,提升系统性能。
但是,基于深度学习的图像分割网络仍存在缺陷,其分割能力受限于训练集。虽然目前图像分割数据集的规模达到百万级别,但是仍无法概括世界上所有的物体,比如常用的COCO数据集只有八十个类别。此外,许多类别的物体还存在多种外观形式,使得图像分割网络无法全面地分割或识别出场景中各种目标物体,即无标签物体。在视觉SLAM系统运行过程中,若存在无标签物体处于运动状态,会大大影响SLAM系统位姿估计的准确性。
发明内容
本发明实施例提供一种位姿估计方法、装置及智能机器人,以解决目前动态环境下图像分割网络无法识别无标签动态目标,导致SLAM系统位姿估计的准确性无法保证的问题。
一种位姿估计方法,包括:
对当前帧图像的第一角点集以及上一帧图像的第二角点集进行匹配,获取多个角点对;
对每一所述角点对进行验证,以从所述第一角点集和所述第二角点集中剔除误匹配的角点;
根据所述第二角点集,从所述第一角点集中筛选出第一动态角点集;其中,第一动态角点集为所述第一角点集中发生运动的动态角点的集合;
根据语义分割结果,剔除所述第一动态角点集中语义目标的动态角点,得到无标签动态目标的第二动态角点集;其中,所述无标签动态目标为语义分割不可识别的动态目标;
基于所述第二动态角点集,从所述当前帧图像中分割出所述无标签动态目标区域;
剔除语义目标区域内的特征点,并判断剩余特征点是否在无标签动态目标区域内,若在,则剔除所述特征点,以根据所述当前帧图像中的静态特征点进行位姿估计。
一种位姿估计装置,包括:
角点匹配模块,用于对当前帧图像的第一角点集以及上一帧图像的第二角点集进行匹配,获取多个角点对;
匹配验证模块,用于对每一所述角点对进行验证,以从所述第一角点集和所述第二角点集中剔除误匹配的角点;
动态角点筛选模块,用于根据所述第二角点集,从所述第一角点集中筛选出第一动态角点集;其中,第一动态角点集为所述第一角点集中发生运动的动态角点的集合;
无标签动态角点筛选模块,用于根据语义分割结果,剔除所述第一动态角点集中语义目标的动态角点,得到无标签动态目标的第二动态角点集;其中,所述无标签动态目标为语义分割不可识别的动态目标;
无标签动态目标区域分割模块,用于基于所述第二动态角点集,从所述当前帧图像中分割出所述无标签动态目标区域;
动态目标剔除模块,用于剔除语义目标区域内的特征点,并判断剩余特征点是否在无标签动态目标区域内,若在,则剔除所述特征点,以根据所述当前帧图像中的静态特征点进行位姿估计。
一种智能机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述位姿估计方法的步骤。
上述位姿估计方法、装置及智能机器人中,通过对初始匹配的角点对进行验证,以从第一角点集和第二角点集中剔除误匹配的角点,保证两帧之间匹配角点的可靠性。然后,根据第二角点集,从第一角点集中筛选出动态目标的第一动态角点集,并根据语义分割结果,剔除第一动态角点集中语义目标的动态角点,得到无标签动态目标的第二动态角点集,再基于第二动态角点集,通过以点寻面的方式从当前帧图像中分割出无标签动态目标区域,以便根据该无标签动态目标区域判断剔除语义目标的特征点后的剩余特征点是否在其内,若在,则剔除该特征点,以使系统根据当前帧图像中的静态特征点进行位姿估计,如此可更加全面地检测当前帧图像中的动态目标,排除其干扰,提升定位精度,同时,本实施例中是在语义分割的基础上进一步分割出无标签动态目标,故后续根据位姿估计结果进行建图时,可同时融合场景中各目标的语义信息构建语义地图。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中位姿估计方法的一流程图;
图2是本发明一实施例中通过关联信息筛选动态角点的一示例图;
图3是图1中步骤S102的一具体流程图;
图4是图3中步骤S202的一具体流程图;
图5是本发明一实施例中第一至第四像素范围的一示例图;
图6是图1中步骤S103的一具体流程图;
图7是图1中步骤S105的一具体流程图;
图8是图7中步骤S503的一具体流程图;
图9是本发明一实施例中几何扩张的一示例图;
图10是图8中步骤S707的一具体流程图;
图11是图1中步骤S106的一具体流程图;
图12是本发明一实施例中射线相交法的一示例图;
图13是本发明一实施例中位姿估计装置的一示意图。
图14是本发明一实施例中智能机器人的一示意图。
具体实施方式
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
为了更好地理解本申请实施例的方案,下面先对本申请实施例可能涉及的相关术语和概念进行介绍。应理解的是,相关的概念解释可能会因为本申请实施例的具体情况有所限制,但并不代表本申请仅能局限于该具体情况,在不同实施例的具体情况可能也会存在差异,具体此处不做限定。
角点,指图像中两条边缘线的接合点,可较容易在图像中定位。角点所在的区域通常也是图像中稳定的、信息丰富的区域,这些区域可能具有某些特性,如旋转不变性、尺度不变性、仿射不变性和光照亮度不变性。角点在保留图像图形重要特征的同时,可以有效地减少信息的数据量,使其信息的含量很高,有效地提高了计算的速度。
语义分割,是计算机视觉领域中一项重要的研究内容,其目标是将图像分割成具有不同语义目标的区域,并且标注区域内每一像素点对应的语义标签(如物体类别信息)。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在一实施例中,如图1所示,提供一种位姿估计方法,包括如下步骤:
S101:对当前帧图像的第一角点集以及上一帧图像的第二角点集进行匹配,获取多个角点对。
其中,角点匹配即为寻找两幅图像之间的特征像素点的对应关系,从而确定两幅图像的位置关系。第一角点集为根据当前帧灰度图像提取得到的角点集合。第二角点集为根据上一帧的灰度图像提取得到的角点集合。
本实施例中,当读取到当前帧图像时,通过对上一帧的灰度图像提取Shi-Tomasi角点集合作为第二角点集,然后通过金字塔光流法对当前帧图像的第一角点集以及上一帧图像的第二角点集进行匹配,得到第一角点集与第二角点集中一一对应的角点,即角点对。
进一步地,由于图像边缘的角点一般为相机运动产生的噪点,故在得到角点对后,可剔除图像边缘的角点,以排除噪点干扰,减少后续处理的计算量。示例性地,图像边缘的角点可定义为距离图像边缘10像素以内的角点,或者其他像素范围内的角点,可根据实际情况选择,此处不做限定。
S102:对每一角点对进行验证,以从第一角点集和第二角点集中剔除误匹配的角点。
可以理解的是,由于光照变化或相机快速移动时产生的模糊,可能产生一些错误的匹配角点,这些角点的像素灰度值虽然相同,但却不是场景中的同一点,因此需要逐一验证角点匹配的可靠性,即对步骤S101中初步匹配的角点对进行验证,从而判断角点对是否为误匹配,若误匹配,则将该角点对对应的从第一角点集和第二角点集中剔除。
具体地,对于同一空间点P,其在两帧图像中的深度值相差无几,因此可基于两帧图像的深度信息初步排除部分错误匹配的角点。此外,对于同一空间点,其在两帧图像中周围的像素灰度值也应当相同,故本实施例中,还通过利用角点周围的像素信息进一步验证角点匹配的可靠性。其中,为加快验证速度,本实施例中采用先横纵搜索再对角搜索的方式比较角点对中与周围像素的灰度相似性,即对于与先判断其在横纵方向上r(例如,r可取5)像素范围内的像素灰度差之和是否大于第一阈值,若大于,则认为与为误匹配,从第一角点集中剔除,从第二角点集中剔除;若不大于第一阈值,则判断其在对角方向上r像素范围内的像素灰度差之和是否大于第二阈值,若大于,则认为与为误匹配,从第一角点集中剔除,从第二角点集中剔除;若不大于,则认为其验证通过。如此,通过对每一角点对执行上述步骤,即可得到优化后的第一角点集,以及第二角点集。优选地,第一阈值或第二阈值可取210。
S103:根据第二角点集,从第一角点集中筛选出第一动态角点集。第一动态角点集为第一角点集中发生运动的动态角点的集合。
其中,第一动态角点集中包括多个第一动态角点,该第一动态角点指在两帧图像中发生运动的角点。对于与中一对匹配的角点和,若其对应的空间点在两帧之间没有发生位移,那么经过相机位姿变换后投影到当前帧的坐标值应与相同,若发生运动并产生位移,那么经过相机位姿变换后投影到当前帧的坐标值与则具有明显差异,故可通过重投影误差判断角点的运动状态,进而得到当前帧中的动态角点。
进一步地,由于此时未剔除场景中的动态物体,因此利用RANSAC迭代得到的相机位姿估计是不准确的,可能导致某静态角点经过位姿变换后得到的坐标值与其对应的有较大差异,最终将误判为动态角点,为避免这种情况,本实施例中,通过融合角点的关联信息筛选动态角点。
可以理解的是,对于场景中某个目标物体,其上的各角点之间具有同源关联性,即距离相近的两个角点也具有相似的深度值。基于此性质,可对每帧的角点进行两两关联,两个关联角点的运动状态应具有一致性。当关联角点的投影误差同时大于阈值,才认为这两个角点为动态角点。示例性地,如图2所示,处于动态区域(即图中多边形区域内)的关联角点从第K帧重投影到第K-1帧时,与其对应角点的坐标发生了明显偏移。
本实施例中,通过该融合角点的关联信息,以严格的标准筛选动态角点,尽可能地保证所筛选出的动态角点具有高可靠性,防止出现静态角点被误判导致静态物体被剔除的情况。
S104:根据语义分割结果,剔除第一动态角点集中语义目标的动态角点,得到无标签动态目标的第二动态角点集;其中,无标签动态目标为语义分割不可识别的动态目标。
具体地,由于本实施例是在图像分割的基础上对图像分割无法识别的物体,即无标签动态目标进行检测并剔除,故对于第一动态角点集中可被图像分割识别到的语义目标的动态角点进行剔除,即可得到无标签动态目标对应的第二动态角点集,该第二动态角点集中包括无标签动态目标的第二动态角点。
S105:基于第二动态角点集,从当前帧图像中分割出无标签动态目标区域。
由于此时图像分割无法识别到无标签动态目标,即对于无标签动态目标所在区域未知,故需要进一步根据第二动态角点集,从当前帧图像中分割出无标签动态目标区域。
具体地,根据第二动态角点集,从当前帧图像中分割出无标签动态目标区域过程如下:(1)由于场景中可能存在无标签动态目标,故首先需要对第二动态角点集进行划分,以将相同无标签动态目标对应的第二动态角点划分为一组,从而得到每一无标签动态目标对应的动态角点组;(2)在筛选出场景中各无标签动态目标对应的动态角点后,可进一步结合图像深度信息分割出每组动态角点组所属的区域,例如可基于漫水填充方法的思想根据深度值由角点扩充出整个物体区域,进而分割出无标签动态目标区域。
进一步,由于漫水填充方法进行图像分割时,需要逐一对像素向四个或八个方向进行探索填充,过大的计算量会大大影响SLAM系统的实时性。因此,本实施例中,采用几何扩张方法,即通过矩形或四边形扩张方式向目标区域边界进行探索,从而得到多个边界点,再通过连接各边界点,即可快速计算出每组无标签目标的轮廓,分割出无标签动态目标区域。
S106:剔除语义目标区域内的特征点,并判断剩余特征点是否在无标签动态目标区域内,若在,则剔除特征点,以根据当前帧图像中的静态特征点进行位姿估计。
可以理解的是,对于图像分割网络所获得的像素级掩码,SLAM系统能够直接剔除处于动态语义物体上的特征点,而本实施例中通过几何扩张法获得的分割结果是多边界点连接而成的多边形,故无法直接通过掩码判断特征点是否处于其内。因此,本实施例中通过射线相交法验证特征点是否处于所分割出的无标签动态目标区域内。
在一实施方式中,在获取到无标签动态目标区域内的特征点后,可先剔除语义目标区域内的特征点,并判断剩余特征点是否在无标签动态目标区域内,若在,则剔除该特征点,以使系统根据当前帧图像中的静态特征点进行位姿估计,有效排除动态目标的干扰,提升定位精度,同时,本实施例中是在语义分割的基础上进一步分割出无标签动态目标,故后续根据位姿估计结果进行建图时,可同时融合场景中各目标的语义信息构建语义地图。
本实施例中,通过对初始匹配的角点对进行验证,以从第一角点集和第二角点集中剔除误匹配的角点,保证两帧之间匹配角点的可靠性。然后,根据第二角点集,从第一角点集中筛选出动态目标的第一动态角点集,并根据语义分割结果,剔除第一动态角点集中语义目标的动态角点,得到无标签动态目标的第二动态角点集,再基于第二动态角点集,通过以点寻面的方式从当前帧图像中分割出无标签动态目标区域,以便根据该无标签动态目标区域判断剔除语义目标的特征点后的剩余特征点是否在其内,若在,则剔除该特征点,以使系统根据当前帧图像中的静态特征点进行位姿估计,如此可更加全面地检测当前帧图像中的动态目标,排除其干扰,提升定位精度,同时,本实施例中是在语义分割的基础上进一步分割出无标签动态目标,故后续根据位姿估计结果进行建图时,可同时融合场景中各目标的语义信息构建语义地图。
在一实施例中,如图3所示,步骤S102中,即对每一角点对进行验证,具体包括如下步骤:
S201:基于角点对中的第一角点和第二角点之间的深度差,对角点对进行初始验证,若初始验证失败,则获取误匹配的角点。
S202:若初始验证通过,则基于第一角点和第二角点的周围像素的灰度相似性,对角点对进行二次验证,若二次验证失败,则获取误匹配的角点。
具体地,通过对角点对中的第一角点和第二角点之间的深度差进行验证,若深度差较大,认为二者为误匹配的角点,可直接将其从对应的第一角点集合第二角点集中剔除;若深度差较小,或相同,则认为验证通过,此时可进一步验证其周围像素的灰度相似性,以对角点对进行二次验证,若二次验证失败,则获取误匹配的角点,通过如上两次验证,可保证角点对的高可靠性。
在一实施例中,如图4所示,步骤S202中,即基于所述第一角点和所述第二角点的周围像素的灰度相似性,对所述角点对进行二次验证,具体包括如下步骤:
S301:获取第一角点在当前帧图像中的第一像素范围以及第二角点在上一帧图像的第二像素范围;其中,第一像素范围包括以第一角点为原点建立的坐标系中横纵坐标轴上的像素点;第二像素范围包括以第二角点为原点建立的坐标系中横纵坐标轴上的像素点。
S302:统计第一像素范围和第二像素范围中对应像素点之间的像素灰度差之和。
S303:若横纵坐标轴上的像素灰度差之和大于第一阈值,则二次验证失败,将第一角点和第二角点作为误匹配的角点。
S304:若横纵坐标轴上的像素灰度差之和不大于第一阈值,则获取第一角点在当前帧图像中的第三像素范围以及第二角点在上一帧图像的第四像素范围;其中,第三像素范围包括以第一角点为原点建立的坐标系中象限角平分线上的像素点;第四像素范围包括以第二角点为原点建立的坐标系中象限角平分线上的像素点。
S305:统计第三像素范围和第四像素范围中对应像素点之间的像素灰度差之和。
S306:若象限角平分线上的像素灰度差之和大于第二阈值,则二次验证失败,将第一角点和第二角点作为误匹配的角点。
示例性地,如图5所示,第一像素范围包括以第一角点为原点建立的坐标系中横纵坐标轴上的像素点(即指图5中的(b)中横纵方向上的灰色方块);所示第二像素范围包括以第二角点为原点建立的坐标系中横纵坐标轴上的像素点(即指图5中的(a)中横纵方向上的灰色方块)。第三像素范围包括以第一角点为原点建立的坐标系中象限角平分线上的像素点(即指图5中的(b)中对角方向上的灰色方块);第四像素范围包括以第二角点为原点建立的坐标系中象限角平分线上的像素点(即指图5中的(a)中对角方向上的灰色方块)。
具体地,根据如下公式(1)统计第一像素范围和第二像素范围中对应像素点(第一像素范围和第二像素范围中对应的像素点由图中的中间连接线所指示)之间的像素灰度差之和,即两帧图像在横纵坐标轴上的r像素范围内的像素灰度差之和,若大于第一阈值,则认为与为误匹配点,继续验证下一对角点;反之,根据如下公式(2)进一步统计第三像素范围和第四像素范围中对应像素点(第三像素范围和第四像素范围中对应的像素点由图中的中间连接线所指示)之间的像素灰度差之和,即两帧图像在象限角平分线上的r像素范围内的像素灰度差之和。若大于第二阈值,则认为与为误匹配点,反之,将其分别加入优化后的角点集合与,以得到更可靠的匹配角点集合。
在一实施例中,如图6所示,步骤S103中,即根据第二角点集,从第一角点集中筛选出动态目标对应的第一动态角点集,具体包括如下步骤:
S401:从第一角点集中,获取与第一角点的运动状态一致的关联角点。
S402:分别将第一角点以及关联角点重投影至上一帧图像中,得到第一投影点以及第二投影点。
S403:根据第二角点集,分别计算第一投影点以及第二投影点的对称转移误差。
S404:当第一投影点以及第二投影点的对称转移误差均大于预设阈值,则将第一角点以及关联角点作为动态角点。
具体地,对于第一角点集中的第一角点,获取与第一角点的运动状态一致的关联角点,即指与其距离最近且深度相似的角点,若与之距离最近但深度值具有差异,则认为该第一角点为孤立点,可将其剔除。然后,分别将第一角点以及关联角点重投影至上一帧图像中,得到第一角点对应的第一投影点以及关联角点对应的第二投影点,通过计算第一角点在第二角点集中与之匹配的第二角点与第一投影点之间的欧氏距离作为第一投影点的对称转移误差,同时计算关联角点在第二角点集中与之匹配的第二角点与第二投影点之间的欧氏距离作为第二投影点的对称转移误差STE,当第一投影点的对称转移误差以及第二投影点的对称转移误差均大于预设阈值,则将第一角点以及关联角点作为动态角点;通过对每一第一角点进行上述分析,即可从第一角点集中筛选出动态目标的第一动态角点集。
在一实施例中,如图7所示,步骤S105中,即基于第二动态角点集,从当前帧图像中分割出无标签动态目标区域,具体包括如下步骤:
S501:对第二动态角点集进行分组,获取多个动态角点组;其中,动态角点组用于指示同一无标签动态目标的多个动态角点。
具体地,将与每一第二动态角点的深度值相等且距离最近的其他第二动态角点划分为一组,即可将第二动态角点集划分为多个动态角点组,每一动态角点组对应一无标签动态目标。
S502:计算每一动态角点组对应的平均深度。
S503:基于平均深度,对每一动态角点组进行几何扩张,以获取每一无标签动态目标所在的区域。
具体地,对于每一动态角点组,首先获取该动态角点组对应的外接矩形(该外接矩形由动态角点组中的最小横纵坐标和最大横纵坐标确定),然后基于改动态角点组对应的平均深度判断外接矩形是否超出无标签目标区域,若超出,则收缩外接矩形直至外接矩形在无标签目标区域内,以将处于无标签目标区域内的外接矩形按照固定步长d(于本实施例中d的取值范围为3~8)扩张,直至外接矩形中任一顶点扩张至无标签目标区域的边界,再对扩张后的外接矩形进行四边形扩张,直至四边形的各顶点扩张至无标签目标区域的边界,获取初始四边形,并对初始四边形按照四边形扩张方式进行迭代扩张,直至满足停止扩张条件,以此获取无标签目标区域的多个边界点,最后通过连接各边界点,即可得到目标轮廓,从而获取每一动态角点组对应的无标签动态目标区域。
在一实施例中,如图8所示,步骤S503中,即基于平均深度,对每一动态角点组进行几何扩张,以获取每一无标签动态目标所在的区域,具体包括如下步骤:
S701:获取动态角点组对应的外接矩形;其中,外接矩形由动态角点组中的最小横纵坐标和最大横纵坐标确定。
S702:基于外接矩形中任一顶点的深度值与平均深度之间的差异,判断外接矩形是否超出无标签目标区域。
S703:若超出,则收缩外接矩形直至外接矩形中每一顶点均在无标签目标区域内。
S704:将处于无标签目标区域内的外接矩形按照固定步长扩张,直至外接矩形中任一顶点扩张至无标签目标区域的边界。
S705:对扩张后的外接矩形进行四边形扩张,直至四边形的各顶点扩张至无标签目标区域的边界,获取初始四边形。
S706:对初始四边形按照四边形扩张方式进行迭代扩张,直至满足停止扩张条件,获取无标签目标区域的多个边界点。
S707:连接边界点,获取无标签动态目标区域。
示例性地,如图9所示,首先对各动态角点组中的各角点横坐标和纵坐标进行排序,从而获取该动态角点组中的最小横纵坐标和最大横纵坐标,以此确定该组的外接矩形,如图9中的(b)所示。然后,基于外接矩形中任一顶点的深度值与平均深度之间的差异,以此判断外接矩形是否超出无标签目标区域,若具有明显差异,认为该外接矩形超出无标签目标区域,则收缩点或点至次最小横纵坐标或次最大横纵坐标,直至外接矩形中每一顶点均在无标签目标区域内,如图9中的(c)所示;其中,若角点仅剩一个不足以构成矩形,则以其为中心构造默认矩形作为该组的外接矩形。接着,将处于无标签目标区域内的外接矩形按照固定步长扩张,直至外接矩形中任一顶点扩张至无标签目标区域的边界,即该顶点的深度发生明显变化,停止扩张,结果如图9中的(d)所示。之后,再对扩张后的外接矩形进行四边形扩张,直至四边形的各顶点扩张至无标签目标区域的边界,即取该扩张后的外接矩形中心O,以矩形各边中点为起点,在中心O与该中点的射线方向上探索物体边界,从而获取初始四边形,如图9中的(e)所示。继续对初始四边形按照四边形扩张方式进行迭代扩张,即取初始四边形中心,以各边中点为起点,沿着与中点的射线方向上探索物体边界,得到新的四边形,如此迭代并记录所有边界点,直至满足停止扩张条件,即可获取无标签目标区域的多个边界点,如图9中的(h)所示。其中,停止扩张条件为新的边界点与前一边界点位置不再发生明显变化,或者新的边界点形成的四边形中点已超出物体区域。最后,通过连接各边界点,即可获取无标签动态目标区域,如图9中的(i)所示。
在一实施例中,如图10所示,步骤S707中,即连接边界点,获取无标签动态目标区域,具体包括如下步骤:
S801:对边界点的横坐标进行排序,得到横坐标最小的第一边界点,以及横坐标最大的第二边界点。
S802:基于第一边界点以及第二边界点,确定目标直线方程。
S803:根据目标直线方程,将多个边界点划分为上边界点和下边界点。
S804:按照各边界点的横坐标的顺序,将上边界点依次连接以及将下边界点依次连接,获取无标签动态目标区域。
具体地,为防止边界点出现错误相连,需要将各边界点中按照横坐标进行排序,得到横坐标最小的第一边界点和横坐标最大的第二边界点,并基于第一边界点以及第二边界点,通过如下公式(3)获取其直线方程,即目标直线方程,即图9中的(h)中的直线。然后根据公式(4)和(5)将多个边界点划分为上边界点和下边界点各边界点,即和两部分,然后按照各边界点的横坐标的顺序,分别将上边界点依次连接以及将下边界点依次连接,并保存各线段方程,结果如图9中的(i)所示。如此即可分割出该组动态角点所属的无标签动态物体轮廓,即无标签动态目标区域。
在一实施例中,如图11所示,无标签动态目标区域对应多个线段方程;线段方程通过连接边界点得到;步骤S106中,即判断剩余特征点是否在无标签动态目标区域内,具体包括如下步骤:
S901:判断当前帧图像中的特征点是否处于无标签动态目标区域的边界上。
S902:若是,则确定特征点在无标签动态目标区域内。
S903:若否,则统计特征点在目标方向上的射线与各线段方程之间的交点数。
S904:若交点数为奇数,则确定特征点在无标签动态目标区域内。
可以理解的是,对于处于无标签动态目标区域内的特征点有如下两种表现形式,一种是处于无标签动态目标区域的边界上,即如图12所示的多边形的边上,另一种是处于无标签动态目标区域的内部,即如图12所示的多边形的内部。
示例性地,如图12所示,对于该多边形内部的特征点和外部的特征点,分别向目标方向(如水平右侧方向)做射线,首先,判断特征点是否在多边形的边上,即是否属于各线段方程上的点,若属于,则认为其在无标签动态目标区域内。否则,统计特征点在目标方向上的射线与各线段方程之间的交点数,即计算各点的射线与多边形上各线段的交点数,若交点数为奇数,则确定该点在多边形内部,即无标签动态目标区域内,若交点数为偶数,则确定该点在多边形外部,即无标签动态目标区域外,如此,即可获取无标签动态目标区域内的多个特征点,进而可将其剔除,完成对当前帧图像中无标签动态目标的剔除。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种位姿估计装置,该位姿估计装置与上述实施例中位姿估计方法一一对应。如图13所示,该位姿估计装置包括角点匹配模块10、匹配验证模块20、动态角点筛选模块30、无标签动态角点筛选模块40、无标签动态目标区域分割模块50和动态目标剔除模块60。各功能模块详细说明如下:
角点匹配模块10,用于对当前帧图像的第一角点集以及上一帧图像的第二角点集进行匹配,获取多个角点对;
匹配验证模块20,用于对每一所述角点对进行验证,以从所述第一角点集和所述第二角点集中剔除误匹配的角点;
动态角点筛选模块30,用于根据所述第二角点集,从所述第一角点集中筛选出第一动态角点集;其中,第一动态角点集为所述第一角点集中发生运动的动态角点的集合;
无标签动态角点筛选模块40,用于根据语义分割结果,剔除所述第一动态角点集中语义目标的动态角点,得到无标签动态目标的第二动态角点集;其中,所述无标签动态目标为语义分割不可识别的动态目标;
无标签动态目标区域分割模块50,用于基于所述第二动态角点集,从所述当前帧图像中分割出所述无标签动态目标区域;
动态目标剔除模块60,用于剔除语义目标区域内的特征点,并判断剩余特征点是否在无标签动态目标区域内,若在,则剔除所述特征点,以根据所述当前帧图像中的静态特征点进行位姿估计。
具体地,匹配验证模块包括初始验证单元和二次验证单元。
初始验证单元,用于基于所述角点对中的第一角点和第二角点之间的深度差,对所述角点对进行初始验证,若初始验证失败,则获取所述误匹配的角点;
二次验证单元,用于若初始验证通过,则基于所述第一角点和所述第二角点的周围像素的灰度相似性,对所述角点对进行二次验证,若二次验证失败,则获取所述误匹配的角点。
具体地,二次验证单元包括像素范围获取子单元、第一像素灰度差之和子单元、第一处理子单元、像素范围获取子单元、第二像素灰度差之和子单元以及第二处理子单元。
像素范围获取子单元,用于获取所述第一角点在所述当前帧图像中的第一像素范围以及第二角点在上一帧图像的第二像素范围;其中,所述第一像素范围包括以第一角点为原点建立的坐标系中横纵坐标轴上的像素点;所述第二像素范围包括以第二角点为原点建立的坐标系中横纵坐标轴上的像素点;
第一像素灰度差之和子单元,用于统计所述第一像素范围和所述第二像素范围中对应像素点之间的像素灰度差之和;
第一处理子单元,用于若横纵坐标轴上的像素灰度差之和大于第一阈值,则二次验证失败,将所述第一角点和所述第二角点作为误匹配的角点;
像素范围获取子单元,用于若所述横纵坐标轴上的像素灰度差之和不大于第一阈值,则获取所述第一角点在所述当前帧图像中的第三像素范围以及第二角点在上一帧图像的第四像素范围;其中,所述第三像素范围包括以第一角点为原点建立的坐标系中象限角平分线上的像素点;所述第四像素范围包括以第二角点为原点建立的坐标系中象限角平分线上的像素点;
第二像素灰度差之和子单元,用于统计所述第三像素范围和所述第四像素范围中对应像素点之间的像素灰度差之和;
第二处理子单元,用于若象限角平分线上的像素灰度差之和大于第二阈值,则二次验证失败,将所述第一角点和所述第二角点作为误匹配的角点。
具体地,动态角点筛选模块包括关联角点获取单元、重投影单元、转移误差计算单元和动态角点筛选单元。
关联角点获取单元,用于从所述第一角点集中,获取与第一角点的运动状态一致的关联角点;
重投影单元,用于分别将所述第一角点以及所述关联角点重投影至上一帧图像中,得到第一投影点以及第二投影点;
转移误差计算单元,用于根据所述第二角点集,分别计算第一投影点以及第二投影点的对称转移误差;
动态角点筛选单元,用于当所述第一投影点以及第二投影点的对称转移误差均大于预设阈值,则将所述第一角点以及所述关联角点作为动态角点。
具体地,无标签动态目标区域分割模块包括动态角点分组单元、平均深度计算单元和几何扩张单元。
动态角点分组单元,用于对所述第二动态角点集进行分组,获取多个动态角点组;其中,所述动态角点组用于指示同一无标签动态目标的多个动态角点;
平均深度计算单元,用于计算每一所述动态角点组对应的平均深度;
几何扩张单元,用于基于所述平均深度,对每一所述动态角点组进行几何扩张,以获取每一所述无标签动态目标所在的区域。
具体地,动态角点分组单元具体为,将与每一所述第二动态角点的深度值相等且距离最近的其他第二动态角点划分为一组,作为所述动态角点组。
具体地,几何扩张单元包括外接矩形获取子单元、外接矩形判断子单元、收缩单元、矩形扩张子单元、四边形扩张子单元、迭代扩张子单元和无标签动态目标区域子单元。
外接矩形获取子单元,用于获取所述动态角点组对应的外接矩形;其中,所述外接矩形由所述动态角点组中的最小横纵坐标和最大横纵坐标确定;
外接矩形判断子单元,用于基于所述外接矩形中任一顶点的深度值与所述平均深度之间的差异,判断所述外接矩形是否超出无标签目标区域;
收缩单元,用于若超出,则收缩所述外接矩形直至所述外接矩形中每一顶点均在所述无标签目标区域内;
矩形扩张子单元,用于将处于无标签目标区域内的外接矩形按照固定步长扩张,直至所述外接矩形中任一顶点扩张至所述无标签目标区域的边界;
四边形扩张子单元,用于对扩张后的外接矩形进行四边形扩张,直至四边形的各顶点扩张至所述无标签目标区域的边界,获取初始四边形;
迭代扩张子单元,用于对所述初始四边形按照四边形扩张方式进行迭代扩张,直至满足停止扩张条件,获取所述无标签目标区域的多个边界点;
无标签动态目标区域子单元,用于连接所述边界点,获取无标签动态目标区域。
具体地,无标签动态目标区域子单元包括最值边界点获取子单元、目标直线方程确定子单元、边界点划分子单元和边界点连接子单元。
最值边界点获取子单元,用于对所述边界点的横坐标进行排序,得到横坐标最小的第一边界点,以及横坐标最大的第二边界点;
目标直线方程确定子单元,用于基于所述第一边界点以及所述第二边界点,确定目标直线方程;
边界点划分子单元,用于根据所述目标直线方程,将所述多个边界点划分为上边界点和下边界点;
边界点连接子单元,用于按照各边界点的横坐标的顺序,将所述上边界点依次连接以及将所述下边界点依次连接,获取所述无标签动态目标区域。
具体地,所述无标签动态目标区域对应多个线段方程;所述线段方程通过连接边界点得到;动态目标剔除模块包括边界点判断单元、第一区域内特征点确定单元、交点数统计单元和第二区域内特征点确定单元。
边界点判断单元,判断所述当前帧图像中的特征点是否处于所述无标签动态目标区域的边界上;
第一区域内特征点确定单元,若是,则确定所述特征点在所述无标签动态目标区域内;
交点数统计单元,用于若否,则统计所述特征点在目标方向上的射线与各所述线段方程之间的交点数;
第二区域内特征点确定单元,用于若所述交点数为奇数,则确定所述特征点在所述无标签动态目标区域内。
关于位姿估计装置的具体限定可以参见上文中对于位姿估计方法的限定,在此不再赘述。上述位姿估计装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,如图14所示,提供了一种智能机器人,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现如下步骤:
对当前帧图像的第一角点集以及上一帧图像的第二角点集进行匹配,获取多个角点对;
对每一所述角点对进行验证,以从所述第一角点集和所述第二角点集中剔除误匹配的角点;
根据所述第二角点集,从所述第一角点集中筛选出第一动态角点集;其中,第一动态角点集为所述第一角点集中发生运动的动态角点的集合;
根据语义分割结果,剔除所述第一动态角点集中语义目标的动态角点,得到无标签动态目标的第二动态角点集;其中,所述无标签动态目标为语义分割不可识别的动态目标;
基于所述第二动态角点集,从所述当前帧图像中分割出所述无标签动态目标区域;
剔除语义目标区域内的特征点,并判断剩余特征点是否在无标签动态目标区域内,若在,则剔除所述特征点,以根据所述当前帧图像中的静态特征点进行位姿估计。
或者,处理器执行计算机程序时实现位姿估计装置这一实施例中的各模块/单元的功能,例如图13所示的各模块/单元的功能,为避免重复,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (9)
1.一种位姿估计方法,其特征在于,包括:
对当前帧图像的第一角点集以及上一帧图像的第二角点集进行匹配,获取多个角点对;
对每一所述角点对进行验证,以从所述第一角点集和所述第二角点集中剔除误匹配的角点;
根据所述第二角点集,从所述第一角点集中筛选出第一动态角点集;其中,第一动态角点集为所述第一角点集中发生运动的动态角点的集合;
根据语义分割结果,剔除所述第一动态角点集中动态语义目标的动态角点,得到无标签动态目标的第二动态角点集;其中,所述无标签动态目标为语义分割不可识别的动态目标;所述动态语义目标为语义分割可识别的动态目标;
基于所述第二动态角点集,从所述当前帧图像中分割出无标签动态目标区域;
根据所述语义分割结果,剔除所述动态语义目标所在区域内的特征点,并判断剩余特征点是否在所述无标签动态目标区域内,若在,则剔除所述特征点,以根据所述当前帧图像中的静态特征点进行位姿估计;
其中,所述基于所述第二动态角点集,从所述当前帧图像中分割出所述无标签动态目标区域,包括:
对所述第二动态角点集进行分组,获取多个动态角点组;其中,所述动态角点组用于指示同一无标签动态目标的多个动态角点;
计算每一所述动态角点组对应的平均深度;
基于所述平均深度,对每一所述动态角点组进行几何扩张,以获取每一所述无标签动态目标所在的区域;其中,所述基于所述平均深度,对每一所述动态角点组进行几何扩张,以获取每一所述无标签动态目标所在的区域,包括:
获取所述动态角点组对应的外接矩形;其中,所述外接矩形由所述动态角点组中的最小横纵坐标和最大横纵坐标确定;
基于所述外接矩形中任一顶点的深度值与所述平均深度之间的差异,判断所述外接矩形是否超出无标签目标区域;
若超出,则收缩所述外接矩形直至所述外接矩形中每一顶点均在所述无标签目标区域内;
将处于无标签目标区域内的外接矩形按照固定步长扩张,直至所述外接矩形中任一顶点扩张至所述无标签目标区域的边界;
对扩张后的外接矩形进行四边形扩张,直至四边形的各顶点扩张至所述无标签目标区域的边界,获取初始四边形;
对所述初始四边形按照四边形扩张方式进行迭代扩张,直至满足停止扩张条件,获取所述无标签目标区域的多个边界点;
连接所述边界点,获取所述无标签动态目标区域。
2.如权利要求1所述的一种位姿估计方法,其特征在于,所述对每一所述角点对进行验证,包括:
基于所述角点对中的第一角点和第二角点之间的深度差,对所述角点对进行初始验证,若初始验证失败,则获取所述误匹配的角点;
若初始验证通过,则基于所述第一角点和所述第二角点的周围像素的灰度相似性,对所述角点对进行二次验证,若二次验证失败,则获取所述误匹配的角点。
3.如权利要求2所述的一种位姿估计方法,其特征在于,所述基于所述第一角点和所述第二角点的周围像素的灰度相似性,对所述角点对进行二次验证,包括:
获取所述第一角点在所述当前帧图像中的第一像素范围以及第二角点在上一帧图像的第二像素范围;其中,所述第一像素范围包括以第一角点为原点建立的坐标系中横纵坐标轴上的像素点;所述第二像素范围包括以第二角点为原点建立的坐标系中横纵坐标轴上的像素点;
统计所述第一像素范围和所述第二像素范围中对应像素点之间的像素灰度差之和;
若横纵坐标轴上的像素灰度差之和大于第一阈值,则二次验证失败,将所述第一角点和所述第二角点作为误匹配的角点;
若所述横纵坐标轴上的像素灰度差之和不大于第一阈值,则获取所述第一角点在所述当前帧图像中的第三像素范围以及第二角点在上一帧图像的第四像素范围;其中,所述第三像素范围包括以第一角点为原点建立的坐标系中象限角平分线上的像素点;所述第四像素范围包括以第二角点为原点建立的坐标系中象限角平分线上的像素点;
统计所述第三像素范围和所述第四像素范围中对应像素点之间的像素灰度差之和;
若象限角平分线上的像素灰度差之和大于第二阈值,则二次验证失败,将所述第一角点和所述第二角点作为误匹配的角点。
4.如权利要求1所述的一种位姿估计方法,其特征在于,所述根据所述第二角点集,从所述第一角点集中筛选出第一动态角点集,包括:
从所述第一角点集中,获取与第一角点的运动状态一致的关联角点;
分别将所述第一角点以及所述关联角点重投影至上一帧图像中,得到第一投影点以及第二投影点;
根据所述第二角点集,分别计算第一投影点以及第二投影点的对称转移误差;
当所述第一投影点以及第二投影点的对称转移误差均大于预设阈值,则将所述第一角点以及所述关联角点作为动态角点。
5.如权利要求1所述的一种位姿估计方法,其特征在于,所述对所述第二动态角点集进行分组,获取多个动态角点组,包括:
将与每一所述第二动态角点的深度值相等且距离最近的其他第二动态角点划分为一组,作为所述动态角点组。
6.如权利要求1所述的一种位姿估计方法,其特征在于,所述连接所述边界点,获取所述无标签动态目标区域,包括:
对所述边界点的横坐标进行排序,得到横坐标最小的第一边界点,以及横坐标最大的第二边界点;
基于所述第一边界点以及所述第二边界点,确定目标直线方程;
根据所述目标直线方程,将所述多个边界点划分为上边界点和下边界点;
按照各边界点的横坐标的顺序,将所述上边界点依次连接以及将所述下边界点依次连接,获取所述无标签动态目标区域。
7.如权利要求6所述的一种位姿估计方法,其特征在于,所述无标签动态目标区域对应多个线段方程;所述线段方程通过连接边界点得到;所述判断剩余特征点是否在所述无标签动态目标区域内,包括:
判断所述当前帧图像中的特征点是否处于所述无标签动态目标区域的边界上;
若是,则确定所述特征点在所述无标签动态目标区域内;
若否,则统计所述特征点在目标方向上的射线与各所述线段方程之间的交点数;
若所述交点数为奇数,则确定所述特征点在所述无标签动态目标区域内。
8.一种位姿估计装置,其特征在于,包括:
角点匹配模块,用于对当前帧图像的第一角点集以及上一帧图像的第二角点集进行匹配,获取多个角点对;
匹配验证模块,用于对每一所述角点对进行验证,以从所述第一角点集和所述第二角点集中剔除误匹配的角点;
动态角点筛选模块,用于根据所述第二角点集,从所述第一角点集中筛选出第一动态角点集;其中,第一动态角点集为所述第一角点集中发生运动的动态角点的集合;
无标签动态角点筛选模块,用于根据语义分割结果,剔除所述第一动态角点集中动态语义目标的动态角点,得到无标签动态目标的第二动态角点集;其中,所述无标签动态目标为语义分割不可识别的动态目标;所述动态语义目标为语义分割可识别的动态目标;
无标签动态目标区域分割模块,用于基于所述第二动态角点集,从所述当前帧图像中分割出无标签动态目标区域;
动态目标剔除模块,用于根据所述语义分割结果,剔除动态语义目标区域内的特征点,并判断剩余特征点是否在所述无标签动态目标区域内,若在,则剔除所述特征点,以根据所述当前帧图像中的静态特征点进行位姿估计;
其中,所述基于所述第二动态角点集,从所述当前帧图像中分割出所述无标签动态目标区域,包括:
对所述第二动态角点集进行分组,获取多个动态角点组;其中,所述动态角点组用于指示同一无标签动态目标的多个动态角点;
计算每一所述动态角点组对应的平均深度;
基于所述平均深度,对每一所述动态角点组进行几何扩张,以获取每一所述无标签动态目标所在的区域;其中,所述基于所述平均深度,对每一所述动态角点组进行几何扩张,以获取每一所述无标签动态目标所在的区域,包括:
获取所述动态角点组对应的外接矩形;其中,所述外接矩形由所述动态角点组中的最小横纵坐标和最大横纵坐标确定;
基于所述外接矩形中任一顶点的深度值与所述平均深度之间的差异,判断所述外接矩形是否超出无标签目标区域;
若超出,则收缩所述外接矩形直至所述外接矩形中每一顶点均在所述无标签目标区域内;
将处于无标签目标区域内的外接矩形按照固定步长扩张,直至所述外接矩形中任一顶点扩张至所述无标签目标区域的边界;
对扩张后的外接矩形进行四边形扩张,直至四边形的各顶点扩张至所述无标签目标区域的边界,获取初始四边形;
对所述初始四边形按照四边形扩张方式进行迭代扩张,直至满足停止扩张条件,获取所述无标签目标区域的多个边界点;
连接所述边界点,获取所述无标签动态目标区域。
9.一种智能机器人,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的一种位姿估计方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210840792.8A CN114913235B (zh) | 2022-07-18 | 2022-07-18 | 一种位姿估计方法、装置及智能机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210840792.8A CN114913235B (zh) | 2022-07-18 | 2022-07-18 | 一种位姿估计方法、装置及智能机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114913235A CN114913235A (zh) | 2022-08-16 |
CN114913235B true CN114913235B (zh) | 2022-10-14 |
Family
ID=82772923
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210840792.8A Active CN114913235B (zh) | 2022-07-18 | 2022-07-18 | 一种位姿估计方法、装置及智能机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114913235B (zh) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6448181A (en) * | 1987-08-19 | 1989-02-22 | Hitachi Ltd | Method and device for discriminating moving body |
JP2005063463A (ja) * | 2004-11-08 | 2005-03-10 | Toshiba Corp | 動画像処理装置 |
US10061878B2 (en) * | 2015-12-22 | 2018-08-28 | Dassault Systemes Simulia Corp. | Effectively solving structural dynamics problems with modal damping in physical coordinates |
CN111179344B (zh) * | 2019-12-26 | 2023-05-23 | 广东工业大学 | 一种修复语义信息的高效移动机器人slam系统 |
CN112132893B (zh) * | 2020-08-31 | 2024-01-09 | 同济人工智能研究院(苏州)有限公司 | 一种适用于室内动态环境的视觉slam方法 |
CN114445490A (zh) * | 2020-10-31 | 2022-05-06 | 华为技术有限公司 | 一种位姿确定方法及其相关设备 |
CN112308921B (zh) * | 2020-11-09 | 2024-01-12 | 重庆大学 | 一种基于语义和几何的联合优化动态slam方法 |
CN112802197A (zh) * | 2021-03-19 | 2021-05-14 | 浙江农林大学 | 动态场景下基于全卷积神经网络的视觉slam方法及系统 |
CN114677323A (zh) * | 2021-12-31 | 2022-06-28 | 北京工业大学 | 一种室内动态场景下基于目标检测的语义视觉slam定位方法 |
-
2022
- 2022-07-18 CN CN202210840792.8A patent/CN114913235B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN114913235A (zh) | 2022-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110807350B (zh) | 用于面向扫描匹配的视觉slam的系统和方法 | |
CN111899334B (zh) | 一种基于点线特征的视觉同步定位与地图构建方法及装置 | |
JP2885823B2 (ja) | 視覚認識装置 | |
CN108717709B (zh) | 图像处理系统及图像处理方法 | |
David et al. | Softposit: Simultaneous pose and correspondence determination | |
CN114782499A (zh) | 一种基于光流和视图几何约束的图像静态区域提取方法及装置 | |
Zhu et al. | Arbitrary-oriented ship detection based on retinanet for remote sensing images | |
Martínez-Díaz | 3D distance measurement from a camera to a mobile vehicle, using monocular vision | |
Hu et al. | Multiple maps for the feature-based monocular SLAM system | |
US20230138821A1 (en) | Inspection method for inspecting an object and machine vision system | |
Montero et al. | Robust detection of corners and corner-line links in images | |
CN114913235B (zh) | 一种位姿估计方法、装置及智能机器人 | |
US12001218B2 (en) | Mobile robot device for correcting position by fusing image sensor and plurality of geomagnetic sensors, and control method | |
Shao | A Monocular SLAM System Based on the ORB Features | |
CN113570713B (zh) | 一种面向动态环境的语义地图构建方法及装置 | |
Munoz et al. | Improving Place Recognition Using Dynamic Object Detection | |
CN113222999A (zh) | 一种基于投票机制的遥感目标分割和自动拼合方法 | |
Roy et al. | Recognizing large isolated 3-D objects through next view planning using inner camera invariants | |
Ruan et al. | Performance of monocular and stereo camera in indoor environment for Visual SLAM using ORB method | |
Zheng et al. | Dyna VIO: Real-Time Visual-Inertial Odometry with Instance Segmentation in Dynamic Environments | |
Mock et al. | Monocular localization in feature-annotated 3d polygon maps | |
CN112396593B (zh) | 一种基于关键帧选择和局部特征的闭环检测方法 | |
Yeh et al. | Model quality aware ransac: A robust camera motion estimator | |
Leyder | Weighted Plane Features for Simultaneous Localization and Mapping | |
Branca et al. | Feature matching constrained by cross ratio invariance |
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 |