CN112131902A - 闭环检测方法及装置、存储介质和电子设备 - Google Patents
闭环检测方法及装置、存储介质和电子设备 Download PDFInfo
- Publication number
- CN112131902A CN112131902A CN201910548833.4A CN201910548833A CN112131902A CN 112131902 A CN112131902 A CN 112131902A CN 201910548833 A CN201910548833 A CN 201910548833A CN 112131902 A CN112131902 A CN 112131902A
- Authority
- CN
- China
- Prior art keywords
- video frame
- frame image
- feature
- loop detection
- closed
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/71—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
Abstract
本发明公开了一种闭环检测方法及装置、存储介质和电子设备,涉及图像处理技术领域。该闭环检测方法包括:获取摄像头在运动过程中拍摄的各视频帧图像,提取各视频帧图像的全局特征和局部不变特征;根据各视频帧图像的全局特征构建特征索引图,利用特征索引图确定待与当前视频帧图像进行闭环比对的候选视频帧图像;将当前视频帧图像的局部不变特征转换为第一哈希特征,将候选视频帧图像的局部不变特征转换为第二哈希特征,利用第一哈希特征和第二哈希特征判断当前视频帧图像与候选视频帧图像是否匹配;结合当前视频帧图像与候选视频帧图像是否匹配的结果确定闭环检测结果。本公开可以提高闭环检测的效果。
Description
技术领域
本公开涉及图像处理技术领域,具体而言,涉及一种闭环检测方法、闭环检测装置、存储介质和电子设备。
背景技术
SLAM(Simultaneous Localization And Mapping,同步定位与建图)的目的是解决在进入未知环境后,如何感知周围环境,构建增量式地图,并同时进行自身定位的问题。SLAM作为自主导航的主要技术之一,可以应用于无人驾驶、机器人控制等众多领域。
在SLAM中,一个重要的问题是闭环检测(Loop Closure Detection,LCD),闭环检测又称为回环检测,是指机器人识别曾经到达过某个场景,使得构建出的地图闭环的技术。
然而,在一些实现闭环检测的过程中,内存占用较大,并且难以保证较快的检测速度,导致闭环检测的效果不理想。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种闭环检测方法、闭环检测装置、存储介质和电子设备,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的闭环检测效果不佳的问题。
根据本公开的一个方面,提供一种闭环检测方法,包括:获取摄像头在运动过程中拍摄的各视频帧图像,提取各所述视频帧图像的全局特征和局部不变特征;根据各所述视频帧图像的全局特征构建特征索引图,利用所述特征索引图确定待与当前视频帧图像进行闭环比对的候选视频帧图像;将所述当前视频帧图像的局部不变特征转换为第一哈希特征,将所述候选视频帧图像的局部不变特征转换为第二哈希特征,利用所述第一哈希特征和所述第二哈希特征判断所述当前视频帧图像与所述候选视频帧图像是否匹配;结合所述当前视频帧图像与所述候选视频帧图像是否匹配的结果确定闭环检测结果。
可选地,提取各所述视频帧图像的全局特征包括:将各所述视频帧图像输入一训练后的卷积神经网络,以确定出各所述视频帧图像对应的全局特征。
可选地,提取各所述视频帧图像的局部不变特征包括:确定各所述视频帧图像的SURF特征,作为各所述视频帧图像对应的局部不变特征。
可选地,所述特征索引图为HNSW图;其中,利用所述特征索引图确定待与当前视频帧图像进行闭环比对的候选视频帧图像包括:配置一先入先出队列;将在连续拍摄情况下所述当前视频帧图像前第一预定数量个视频帧图像的全局特征写入所述先入先出队列,以便确定出的候选视频帧图像不同于所述第一预定数量个视频帧图像中的任意一个。
可选地,所述闭环检测方法还包括:确定摄像头帧率以及一时间常数;根据所述摄像头帧率和所述时间常数确定所述第一预定数量。
可选地,利用所述第一哈希特征和所述第二哈希特征判断所述当前视频帧图像与所述候选视频帧图像是否匹配包括:利用所述第一哈希特征和所述第二哈希特征进行二值比率测试,以确定所述当前视频帧图像与所述候选视频帧图像的特征匹配点;采用随机采样一致性算法从所述特征匹配点中剔除误匹配点;基于剔除所述误匹配点后的特征匹配点判断所述当前视频帧图像与所述候选视频帧图像是否匹配。
可选地,基于剔除所述误匹配点后的特征匹配点判断所述当前视频帧图像与所述候选视频帧图像是否匹配包括:确定剔除所述误匹配点后的特征匹配点的数量;如果剔除所述误匹配点后的特征匹配点的数量不小于一预定匹配参数,则确定出所述当前视频帧图像与所述候选视频帧图像匹配。
可选地,基于剔除所述误匹配点后的特征匹配点判断所述当前视频帧图像与所述候选视频帧图像是否匹配包括:基于剔除所述误匹配点后的特征匹配点估计基础矩阵;根据所述基础矩阵判断所述当前视频帧图像与所述候选视频帧图像是否匹配。
可选地,结合所述当前视频帧图像与所述候选视频帧图像是否匹配的结果确定闭环检测结果包括:当所述当前视频帧图像与所述候选视频帧图像匹配时,如果所述当前视频帧图像前第二预定数量个视频帧图像均与所述候选视频帧图像匹配,则确定出闭环检测结束。
根据本公开的一个方面,提供一种闭环检测装置,包括特征提取模块、候选帧确定模块、图像匹配模块和闭环检测模块。
具体的,特征提取模块用于获取摄像头在运动过程中拍摄的各视频帧图像,提取各所述视频帧图像的全局特征和局部不变特征;候选帧确定模块用于根据各所述视频帧图像的全局特征构建特征索引图,利用所述特征索引图确定待与当前视频帧图像进行比对的候选视频帧图像;图像匹配模块用于将所述当前视频帧图像的局部不变特征转换为第一哈希特征,将所述候选视频帧图像的局部不变特征转换为第二哈希特征,利用所述第一哈希特征和所述第二哈希特征判断所述当前视频帧图像与所述候选视频帧图像是否匹配;闭环检测模块用于结合所述当前视频帧图像与所述候选视频帧图像是否匹配的结果确定闭环检测结果。
可选地,特征提取模块包括第一特征提取单元。
具体的,第一特征提取单元用于将各所述视频帧图像输入一训练后的卷积神经网络,以确定出各所述视频帧图像对应的全局特征。
可选地,特征提取模块包括第二特征提取单元。
具体的,第二特征提取单元用于确定各所述视频帧图像的SURF特征,作为各所述视频帧图像对应的局部不变特征。
可选地,所述特征索引图为HNSW图;其中,候选帧确定模块被配置为执行:配置一先入先出队列;将在连续拍摄情况下所述当前视频帧图像前第一预定数量个视频帧图像的全局特征写入所述先入先出队列,以便确定出的候选视频帧图像不同于所述第一预定数量个视频帧图像中的任意一个。
可选地,候选帧确定模块还被配置为执行:确定摄像头帧率以及一时间常数;根据所述摄像头帧率和所述时间常数确定所述第一预定数量。
可选地,图像匹配模块包括匹配点确定单元、误点剔除单元和图像匹配单元。
具体的,匹配点确定单元用于利用所述第一哈希特征和所述第二哈希特征进行二值比率测试,以确定所述当前视频帧图像与所述候选视频帧图像的特征匹配点;误点剔除单元用于采用随机采样一致性算法从所述特征匹配点中剔除误匹配点;图像匹配单元用于基于剔除所述误匹配点后的特征匹配点判断所述当前视频帧图像与所述候选视频帧图像是否匹配。
可选地,图像匹配单元被配置为执行:确定剔除所述误匹配点后的特征匹配点的数量;如果剔除所述误匹配点后的特征匹配点的数量不小于一预定匹配参数,则确定出所述当前视频帧图像与所述候选视频帧图像匹配。
可选地,图像匹配单元被配置为执行:基于剔除所述误匹配点后的特征匹配点估计基础矩阵;根据所述基础矩阵判断所述当前视频帧图像与所述候选视频帧图像是否匹配。
可选地,闭环检测模块被配置为执行:当所述当前视频帧图像与所述候选视频帧图像匹配时,如果所述当前视频帧图像前第二预定数量个视频帧图像均与所述候选视频帧图像匹配,则确定出闭环检测结束。
根据本公开的一个方面,提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一种闭环检测方法。
根据本公开的一个方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一种闭环检测方法。
在本公开的一些实施例所提供的技术方案中,通过利用各视频帧图像的全局特征构建特征索引图,确定候选视频帧图像,对各视频帧图像的局部不变特征进行哈希处理,基于哈希特征确定当前视频帧图像与候选视频帧图像是否匹配,并结合是否匹配的结果确定闭环检测结果。一方面,将图像的局部不变特征转换为哈希特征,可以大大降低内存占用量,由此,可以将本公开所述的方案应用于内存较小的机器人系统中,扩展了闭环检测,乃至SLAM技术的应用范围;另一方面,通过构建特征索引图,并利用特征索引图确定候选视频帧图像,可以快速实现图像匹配,提高了闭环检测的检测速度;再一方面,本公开闭环检测方案是一个实时且在线的检测方案,可以应用于采用自主导航技术的各个领域。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出了根据本公开的示例性实施方式的闭环检测方法的流程图;
图2示出了根据本公开的示例性实施方式的当前视频帧图像与候选视频帧图像匹配的示意图;
图3示意性示出了根据本公开的示例性实施方式的闭环检测装置的方框图;
图4示意性示出了根据本公开的示例性实施方式的特征提取模块的方框图;
图5示意性示出了根据本公开的另一示例性实施方式的特征提取模块的方框图;
图6示意性示出了根据本公开的示例性实施方式的图像匹配模块的方框图;
图7示意性示出了根据本公开的示例性实施方式的电子设备的方框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的步骤。例如,有的步骤还可以分解,而有的步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。另外,下面所使用的术语“第一”、“第二”等仅是为了区分的目的,并不应作为本公开的限制。
应当理解的是,下面所述闭环检测方法通常可以由终端设备实现,也就是说,终端设备可以执行闭环检测方法的各个步骤,其中,终端设备可以包括但不限于手机、平板、可穿戴设备、各种机器人设备等。在这种情况下,闭环检测装置可以包含于该终端设备中。
虽然下面以终端设备执行本公开闭环检测方法为例进行说明,然而,还可以由服务器执行下面所述闭环检测方法的各个步骤,具体的,该服务器可以从摄像头获取场景下的各视频帧图像,并对各视频帧图像进行分析处理,以确定闭环检测的结果。
图1示意性示出了本公开的示例性实施方式的闭环检测方法的流程图。参考图1,闭环检测方法可以包括以下步骤:
S12.获取摄像头在运动过程中拍摄的各视频帧图像,提取各所述视频帧图像的全局特征和局部不变特征。
在本公开的示例性实施方式中,摄像头可以是与终端设备配置为一体的摄像头,例如,摄像头可以是手机的后置摄像头。另外,摄像头还可以是与终端设备分离配置且能向终端设备发送图像数据的摄像头,在这种情况下,摄像头可以针对现实环境拍摄视频帧图像,并通过有线或无线的方式将图像数据发送至终端设备。
本公开实施例可以采用单目摄像头来获取运动过程中拍摄的视频帧图像,在这种情况下,本公开所述的闭环检测方法可以应用于单目SLAM技术中。其中,单目摄像头是依据小孔成像原理构造的摄像头,是单个彩色(或灰度)摄像头,其具有廉价、使用简单、准确性高、方便配置等优点。然而,在一些实施例中,还可以采用双目或多目摄像头获取图像,以执行随后的分析处理过程,本公开对摄像头的类型、数量、分辨率等均不作特殊限制。
现实场景中,随着摄像头的不断运动,可以拍摄到多个视频帧图像。终端设备在获取这些视频帧图像后,可以从各视频帧图像中提取对应的全局特征和局部不变特征。
一方面,视频帧图像的全局特征可以表示视频帧图像的整体信息,是像素级的底层特征,可以涉及视频帧图像整体的颜色特征、图像整体的纹理特征、图像整体的空间布局特征等;另一方面,视频帧图像的局部不变特征是指图像在几何变化、光照变化和/或噪声干扰时仍保持稳定性的特征。下面将以SURF(Speeded Up Robust Features,加速稳健特征)为例对本公开所述的局部不变特征进行说明,然而,应当理解的是,本公开所述的局部不变特征还可以包括Sift(Scale-invariant feature transform,尺度不变特征变换)特征、哈里斯角点、ORB特征等。
针对确定视频帧图像的全局特征的过程:
根据本公开的一些实施例,可以利用机器学习模型来从视频帧图像中提取全局特征。具体的,本公开可以采用MobileNetV2这种轻量级深度卷积神经网络,通过该网络的最后一个平均池化层提取到全局特征。
MobileNetV2模型通过合并批归一化层(BN层),对网络结构进行了简化,减少了前向传播的时间。具体合并BN层的计算过程可以如下式所示:
其中,WBN∈RC×C,bBN∈RC,分别表示权值矩阵和特征图F的归一化版本偏差。在BN层之前的参数可以被表示为其中bconv∈RC,以及Cprev输入卷积层的特征图Fprev的通道数量,k×k为卷积核的大小。Fprev的k×k邻域被解包进入一个k2·Cprev矢量fi,j。跟随BN层和之前的卷积层可以使用一个单独的卷积层代替,该单独的卷积层参数可以被表示为:
W=WBN·Wconv
b=WBN·bconv+bBN
应当理解的是,采用MobileNetV2提取各视频帧图像的过程仅是本公开的一个实例性方案。在另一些实例中,本公开还可以将卷积神经网络的全连接层的输出结果作为全局特征,本公开对该卷积神经网络的具体结构不做特殊限制。
此外,还可以利用方向梯度直方图(Histogram of Oriented Gradient,HOG)等方法提取各视频帧图像的全局特征。
针对确定视频帧图像的局部不变特征的过程:
在以SURF特征作为局部不变特征的实例中,可以利用海森矩阵(Hessian Matrix)来检测特征点。具体的,可以确定海森矩阵对应的行列式值,该行列式值表征像素点周围的变化量,接下来,在所有行列式值中确定局部极值作为局部不变特征。
另外,为了使得闭环检测具有高的精度,可以使用128维的SURF特征。
S14.根据各所述视频帧图像的全局特征构建特征索引图,利用所述特征索引图确定待与当前视频帧图像进行闭环比对的候选视频帧图像。
在本公开的示例性实施方式中,特征索引图可以为HNSW图(HierarchcalNavigable Small World graphs,分层可导航小世界图),HNSW图是一种基于图的增量k最近邻搜索结构,这种结构在图的路由上具有对数或多重对数的扩展性。
可以根据各视频帧图像的全局特征构建HNSW图,构建出的HNSW图中的一个节点对应一个视频帧图像的全局特征向量。具体的,针对新采集到图像的全局特征向量q,在插入HNSW图后,可以利用KNN搜索算法查询距离全局特征向量q最邻近的全局特征向量,并将确定出的全局特征向量对应的视频帧图像作为本公开所述的候选视频帧图像。这些候选视频帧图像将作为与当前视频帧图像进行比对的图像,以确定出闭环检测的结果。
在对HNSW图进行搜索的过程中,涉及确定全局特征之间相似度的方案,可以采用余弦距离确定特征之间的相似度,具体参考下式:
根据本公开的一些实施例,考虑到视频帧图像是依序获取的,相邻的图像之间具有高的相似度,这会影响到闭环检测的结果。因此,可以配置一先入先出队列(First InputFirst Output,FIFO),将当前视频帧图像前第一预定数量个视频帧图像的全局特征写入该先入先出队列,从而确定出的候选视频帧图像不同于上述第一预定数量个视频帧图像中的任意一个。
针对第一预定数量的确定,首先,可以确定摄像头帧率φ和一个时间常数ψ,其中该时间常数ψ可以人为设定;接下来。可以根据摄像头帧率φ和一个时间常数ψ确定第一预定数量。具体的,第一预定数量可以为ψ×φ。也就是说,如果进入先入先出队列的图像帧数超过ψ×φ,才进行HNSW图的插入、搜索过程,否则图像会先输入到先入先出队列中。在这种情况下,当使用当前视频帧图像的全局特征作为搜索特征时,仅搜索N-ψ×φ的数据库内容,其中,N表示所有图像的总数量。
S16.将所述当前视频帧图像的局部不变特征转换为第一哈希特征,将所述候选视频帧图像的局部不变特征转换为第二哈希特征,利用所述第一哈希特征和所述第二哈希特征判断所述当前视频帧图像与所述候选视频帧图像是否匹配。
应当理解的是,局部不变特征为浮点描述子,对于一些终端设备(例如,移动机器人),其配备的内存资源有限,难以对这些浮点数进行处理。在这种情况下,本公开将这些特征转换为哈希特征,便于进行后续处理。
具体的,可以采用CasHash算法对视频帧图像的局部不变特征进行转换,将当前视频帧图像的局部不变特征转换为第一哈希特征,将候选视频帧图像的局部不变特征转换为第二哈希特征。以128维SURF特征为例,可以将128个浮点数转换为128比特,内存消耗仅为原来的1/32,这使得本公开的闭环检测方案可以应用于内存较小的移动机器人。
在确定出第一哈希特征和第二哈希特征后,首先,可以利用第一哈希特征和第二哈希特征进行二值比率测试,以确定当前视频帧图像与候选视频帧图像的特征匹配点。具体的,针对二值比率测试的过程而言,二值比率阈值ε可以表示为如下:
在确定出当前视频帧图像与候选视频帧图像的特征匹配点后,可以采用随机采样一致性算法(Random Sample Consensus,RANSAC)从这些特征匹配点中剔除误匹配点。另外,通过RANSAC算法,可以将正确的匹配点记为内点(inliers),将误匹配点(outliers)。
接下来,可以基于剔除误匹配点后的特征匹配点判断当前视频帧图像与候选视频帧图像是否匹配,也就是说,基于内点判断当前视频帧图像与候选视频帧图像是否匹配。
根据本公开的一个实施例,可以确定内点的数量,如果内点的数量不小于一预定匹配参数τ,则确定出当前视频帧图像与候选视频帧图像匹配;如果内点的数量小于该预定匹配参数τ,则忽略该用于闭环检测的候选视频帧图像。其中,预定匹配参数τ可以由人为设定,本公开对其取值不做特殊限制。
根据本公开的另一个实施例,在剔除外点的过程中,可以基于RANSAC算法估计当前视频帧图像与候选帧图像的基础矩阵,该基础矩阵可以用于剔除图像之间的错误匹配,使得匹配的鲁棒性和精度得到较大提高。在这种情况下,可以根据基础矩阵判断当前视频帧图像与候选视频帧图像是否匹配。具体的,如果基础矩阵计算失败,则可以忽略该用于闭环检测的候选视频帧图像。
图2示出了当前视频帧图像与候选视频帧图像匹配的示意图。从图2中可以看出,作为内点的特征匹配点较多,例如,塔尖、树木、房屋等对应的像素点均为特征匹配点。
S18.结合所述当前视频帧图像与所述候选视频帧图像是否匹配的结果确定闭环检测结果。
根据本公开的一些实施例,如果当前视频帧图像与候选视频帧图像匹配,则闭环检测过程结束。例如,在移动机器人的应用场景中,此时,移动机器人确认其曾经到达过当前的场景。
根据本公开的另一些实施例,可以结合时序一致性原理确定闭环检测结果。具体的,当确定出当前视频帧图像与候选视频帧图像匹配时,如果当前视频帧图像前第二预定数量个视频帧图像均与该候选视频帧图像匹配,则闭环检测过程结束。其中,可以将第二预定数量设定为1,也就是说,如果连续两个图像与候选视频帧图像匹配,则确定出闭环检测过程结束。然而,应当理解的是,考虑到闭环检测的具体应用场景及精度,还可以将第二预定数量设定为其他数值,本示例性实施方式中对此不做特殊限定。
应当注意,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
进一步的,本示例实施方式中还提供了一种闭环检测装置。
图3示意性示出了本公开的示例性实施方式的闭环检测装置的方框图。参考图3,根据本公开的示例性实施方式的闭环检测装置3可以包括特征提取模块31、候选帧确定模块33、图像匹配模块35和闭环检测模块37。
具体的,特征提取模块31可以用于获取摄像头在运动过程中拍摄的各视频帧图像,提取各所述视频帧图像的全局特征和局部不变特征;候选帧确定模块33可以用于根据各所述视频帧图像的全局特征构建特征索引图,利用所述特征索引图确定待与当前视频帧图像进行比对的候选视频帧图像;图像匹配模块35可以用于将所述当前视频帧图像的局部不变特征转换为第一哈希特征,将所述候选视频帧图像的局部不变特征转换为第二哈希特征,利用所述第一哈希特征和所述第二哈希特征判断所述当前视频帧图像与所述候选视频帧图像是否匹配;闭环检测模块37可以用于结合所述当前视频帧图像与所述候选视频帧图像是否匹配的结果确定闭环检测结果。
根据本公开示例性实施方式的闭环检测装置,一方面,将图像的局部不变特征转换为哈希特征,可以大大降低内存占用量,由此,可以将本公开所述的方案应用于内存较小的机器人系统中,扩展了闭环检测乃至SLAM技术的应用范围;另一方面,通过构建特征索引图,并利用特征索引图确定候选视频帧图像,可以快速实现图像匹配,提高了闭环检测的检测速度;再一方面,本公开闭环检测方案是一个实时且在线的检测方案,可以应用于采用自主导航技术的各个领域。
根据本公开的示例性实施例,参考图4,特征提取模块31可以包括第一特征提取单元401。
具体的,第一特征提取单元401可以用于将各所述视频帧图像输入一训练后的卷积神经网络,以确定出各所述视频帧图像对应的全局特征。
根据本公开的示例性实施例,参考图5,特征提取模块31可以包括第二特征提取单元501。
具体的,第二特征提取单元501可以用于确定各所述视频帧图像的SURF特征,作为各所述视频帧图像对应的局部不变特征。
根据本公开的示例性实施例,所述特征索引图为HNSW图;其中,候选帧确定模块33可以被配置为执行:配置一先入先出队列;将在连续拍摄情况下所述当前视频帧图像前第一预定数量个视频帧图像的全局特征写入所述先入先出队列,以便确定出的候选视频帧图像不同于所述第一预定数量个视频帧图像中的任意一个。
根据本公开的示例性实施例,候选帧确定模块33还可以被配置为执行:确定摄像头帧率以及一时间常数;根据所述摄像头帧率和所述时间常数确定所述第一预定数量。
根据本公开的示例性实施例,参考图6,图像匹配模块35可以包括匹配点确定单元601、误点剔除单元603和图像匹配单元605。
具体的,匹配点确定单元601可以用于利用所述第一哈希特征和所述第二哈希特征进行二值比率测试,以确定所述当前视频帧图像与所述候选视频帧图像的特征匹配点;误点剔除单元603可以用于采用随机采样一致性算法从所述特征匹配点中剔除误匹配点;图像匹配单元605可以用于基于剔除所述误匹配点后的特征匹配点判断所述当前视频帧图像与所述候选视频帧图像是否匹配。
根据本公开的示例性实施例,图像匹配单元605可以被配置为执行:确定剔除所述误匹配点后的特征匹配点的数量;如果剔除所述误匹配点后的特征匹配点的数量不小于一预定匹配参数,则确定出所述当前视频帧图像与所述候选视频帧图像匹配。
根据本公开的示例性实施例,图像匹配单元605可以被配置为执行:基于剔除所述误匹配点后的特征匹配点估计基础矩阵;根据所述基础矩阵判断所述当前视频帧图像与所述候选视频帧图像是否匹配。
根据本公开的示例性实施例,闭环检测模块37可以被配置为执行:当所述当前视频帧图像与所述候选视频帧图像匹配时,如果所述当前视频帧图像前第二预定数量个视频帧图像均与所述候选视频帧图像匹配,则确定出闭环检测结束。
由于本发明实施方式的程序运行性能分析装置的各个功能模块与上述方法发明实施方式中相同,因此在此不再赘述。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
根据本发明的实施方式的用于实现上述方法的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光盘、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图7来描述根据本发明的这种实施方式的电子设备700。图7显示的电子设备700仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,电子设备700以通用计算设备的形式表现。电子设备700的组件可以包括但不限于:上述至少一个处理单元710、上述至少一个存储单元720、连接不同系统组件(包括存储单元720和处理单元710)的总线730、显示单元740。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元710执行,使得所述处理单元710执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元710可以执行如图1中所示的步骤S12:获取摄像头在运动过程中拍摄的各视频帧图像,提取各所述视频帧图像的全局特征和局部不变特征;步骤S14:根据各所述视频帧图像的全局特征构建特征索引图,利用所述特征索引图确定待与当前视频帧图像进行闭环比对的候选视频帧图像;步骤S16:将所述当前视频帧图像的局部不变特征转换为第一哈希特征,将所述候选视频帧图像的局部不变特征转换为第二哈希特征,利用所述第一哈希特征和所述第二哈希特征判断所述当前视频帧图像与所述候选视频帧图像是否匹配;步骤S18:结合所述当前视频帧图像与所述候选视频帧图像是否匹配的结果确定闭环检测结果。
存储单元720可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)7201和/或高速缓存存储单元7202,还可以进一步包括只读存储单元(ROM)7203。
存储单元720还可以包括具有一组(至少一个)程序模块7205的程序/实用工具7204,这样的程序模块7205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线730可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备700也可以与一个或多个外部设备800(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备700交互的设备通信,和/或与使得该电子设备700能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口750进行。并且,电子设备700还可以通过网络适配器760与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器760通过总线730与电子设备700的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备700使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。
Claims (12)
1.一种闭环检测方法,其特征在于,包括:
获取摄像头在运动过程中拍摄的各视频帧图像,提取各所述视频帧图像的全局特征和局部不变特征;
根据各所述视频帧图像的全局特征构建特征索引图,利用所述特征索引图确定待与当前视频帧图像进行闭环比对的候选视频帧图像;
将所述当前视频帧图像的局部不变特征转换为第一哈希特征,将所述候选视频帧图像的局部不变特征转换为第二哈希特征,利用所述第一哈希特征和所述第二哈希特征判断所述当前视频帧图像与所述候选视频帧图像是否匹配;
结合所述当前视频帧图像与所述候选视频帧图像是否匹配的结果确定闭环检测结果。
2.根据权利要求1所述的闭环检测方法,其特征在于,提取各所述视频帧图像的全局特征包括:
将各所述视频帧图像输入一训练后的卷积神经网络,以确定出各所述视频帧图像对应的全局特征。
3.根据权利要求1所述的闭环检测方法,其特征在于,提取各所述视频帧图像的局部不变特征包括:
确定各所述视频帧图像的SURF特征,作为各所述视频帧图像对应的局部不变特征。
4.根据权利要求1所述的闭环检测方法,其特征在于,所述特征索引图为HNSW图;其中,利用所述特征索引图确定待与当前视频帧图像进行闭环比对的候选视频帧图像包括:
配置一先入先出队列;
将在连续拍摄情况下所述当前视频帧图像前第一预定数量个视频帧图像的全局特征写入所述先入先出队列,以便确定出的候选视频帧图像不同于所述第一预定数量个视频帧图像中的任意一个。
5.根据权利要求4所述的闭环检测方法,其特征在于,所述闭环检测方法还包括:
确定摄像头帧率以及一时间常数;
根据所述摄像头帧率和所述时间常数确定所述第一预定数量。
6.根据权利要求1所述的闭环检测方法,其特征在于,利用所述第一哈希特征和所述第二哈希特征判断所述当前视频帧图像与所述候选视频帧图像是否匹配包括:
利用所述第一哈希特征和所述第二哈希特征进行二值比率测试,以确定所述当前视频帧图像与所述候选视频帧图像的特征匹配点;
采用随机采样一致性算法从所述特征匹配点中剔除误匹配点;
基于剔除所述误匹配点后的特征匹配点判断所述当前视频帧图像与所述候选视频帧图像是否匹配。
7.根据权利要求6所述的闭环检测方法,其特征在于,基于剔除所述误匹配点后的特征匹配点判断所述当前视频帧图像与所述候选视频帧图像是否匹配包括:
确定剔除所述误匹配点后的特征匹配点的数量;
如果剔除所述误匹配点后的特征匹配点的数量不小于一预定匹配参数,则确定出所述当前视频帧图像与所述候选视频帧图像匹配。
8.根据权利要求6所述的闭环检测方法,其特征在于,基于剔除所述误匹配点后的特征匹配点判断所述当前视频帧图像与所述候选视频帧图像是否匹配包括:
基于剔除所述误匹配点后的特征匹配点估计基础矩阵;
根据所述基础矩阵判断所述当前视频帧图像与所述候选视频帧图像是否匹配。
9.根据权利要求1所述的闭环检测方法,其特征在于,结合所述当前视频帧图像与所述候选视频帧图像是否匹配的结果确定闭环检测结果包括:
当所述当前视频帧图像与所述候选视频帧图像匹配时,如果所述当前视频帧图像前第二预定数量个视频帧图像均与所述候选视频帧图像匹配,则确定出闭环检测结束。
10.一种闭环检测装置,其特征在于,包括:
特征提取模块,用于获取摄像头在运动过程中拍摄的各视频帧图像,提取各所述视频帧图像的全局特征和局部不变特征;
候选帧确定模块,用于根据各所述视频帧图像的全局特征构建特征索引图,利用所述特征索引图确定待与当前视频帧图像进行比对的候选视频帧图像;
图像匹配模块,用于将所述当前视频帧图像的局部不变特征转换为第一哈希特征,将所述候选视频帧图像的局部不变特征转换为第二哈希特征,利用所述第一哈希特征和所述第二哈希特征判断所述当前视频帧图像与所述候选视频帧图像是否匹配;
闭环检测模块,用于结合所述当前视频帧图像与所述候选视频帧图像是否匹配的结果确定闭环检测结果。
11.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至9中任一项所述的闭环检测方法。
12.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至9中任一项所述的闭环检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910548833.4A CN112131902A (zh) | 2019-06-24 | 2019-06-24 | 闭环检测方法及装置、存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910548833.4A CN112131902A (zh) | 2019-06-24 | 2019-06-24 | 闭环检测方法及装置、存储介质和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112131902A true CN112131902A (zh) | 2020-12-25 |
Family
ID=73849951
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910548833.4A Pending CN112131902A (zh) | 2019-06-24 | 2019-06-24 | 闭环检测方法及装置、存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112131902A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114418927A (zh) * | 2021-11-09 | 2022-04-29 | 四川大学 | 一种基于空间关系特征匹配的闭环检测方法及系统 |
-
2019
- 2019-06-24 CN CN201910548833.4A patent/CN112131902A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114418927A (zh) * | 2021-11-09 | 2022-04-29 | 四川大学 | 一种基于空间关系特征匹配的闭环检测方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020228446A1 (zh) | 模型训练方法、装置、终端及存储介质 | |
CN108256479B (zh) | 人脸跟踪方法和装置 | |
CN111797893B (zh) | 一种神经网络的训练方法、图像分类系统及相关设备 | |
Snavely et al. | Skeletal graphs for efficient structure from motion | |
CN109960742B (zh) | 局部信息的搜索方法及装置 | |
WO2019001481A1 (zh) | 车辆外观特征识别及车辆检索方法、装置、存储介质、电子设备 | |
CN111046125A (zh) | 一种视觉定位方法、系统及计算机可读存储介质 | |
CN109858333B (zh) | 图像处理方法、装置、电子设备及计算机可读介质 | |
CN113362382A (zh) | 三维重建方法和三维重建装置 | |
WO2024021194A1 (zh) | 激光雷达点云分割方法、装置、设备及存储介质 | |
CN107766864B (zh) | 提取特征的方法和装置、物体识别的方法和装置 | |
WO2024083006A1 (zh) | 一种三维成像方法、装置、设备和存储介质 | |
WO2019100348A1 (zh) | 图像检索方法和装置以及图像库的生成方法和装置 | |
CN113592015B (zh) | 定位以及训练特征匹配网络的方法和装置 | |
CN113793370B (zh) | 三维点云配准方法、装置、电子设备及可读介质 | |
Hutchcroft et al. | CoVisPose: Co-visibility pose transformer for wide-baseline relative pose estimation in 360∘ indoor panoramas | |
CN111582449B (zh) | 一种目标域检测网络的训练方法、装置、设备及存储介质 | |
Geng et al. | SANet: A novel segmented attention mechanism and multi-level information fusion network for 6D object pose estimation | |
CN112131902A (zh) | 闭环检测方法及装置、存储介质和电子设备 | |
CN111753736A (zh) | 基于分组卷积的人体姿态识别方法、装置、设备和介质 | |
CN114913330B (zh) | 点云部件分割方法、装置、电子设备与存储介质 | |
CN115984093A (zh) | 基于红外图像的深度估计方法、电子设备以及存储介质 | |
CN117036658A (zh) | 一种图像处理方法及相关设备 | |
CN116152334A (zh) | 图像处理方法及相关设备 | |
CN115063831A (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 |