CN110390356B - 视觉词典生成方法及装置、存储介质 - Google Patents
视觉词典生成方法及装置、存储介质 Download PDFInfo
- Publication number
- CN110390356B CN110390356B CN201910595710.6A CN201910595710A CN110390356B CN 110390356 B CN110390356 B CN 110390356B CN 201910595710 A CN201910595710 A CN 201910595710A CN 110390356 B CN110390356 B CN 110390356B
- Authority
- CN
- China
- Prior art keywords
- feature information
- target
- visual dictionary
- image
- positioning area
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/55—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/587—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/28—Determining representative reference patterns, e.g. by averaging or distorting; Generating dictionaries
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种视觉词典生成方法,包括:获取目标定位区域内环境图像所对应的至少一个特征信息;其中,所述特征信息包括所述环境图像中局部元素的相关信息;基于所述环境图像所对应的至少一个特征信息,构建与所述目标定位区域对应的目标视觉词典;所述目标视觉词典中至少包括所述目标定位区域内多个物体图像的局部元素的相关信息;所述目标视觉词典用于对目标定位区域中待定位图像进行语义表示。本发明的实施例同时公开了一种视觉词典生成装置以及计算机可读存储介质。
Description
技术领域
本申请涉及但不限于机器导航技术领域,尤其涉及一种视觉词典生成方法及装置、存储介质。
背景技术
目前,基于同步定位和地图构建(Simultaneous localization and mapping,SLAM)的重定位方法采用词袋(bag of words,BoW)模型进行图像表示,并基于BoW模型对图像进行检索分析得到机器准确的位置和姿态。通常情况下,使用BoW模型表征图像时,首先需要构建图像类的视觉词典,视觉词典是由相互独立的底层图像特征构成;进而根据图像在该视觉词典中的不同分布进行图像分析和理解。
然而,相关技术中视觉词典是由大量的图像数据集训练生成,视觉词典中的图像特征是固定的,并不能随着环境的变化而变化;因此,现有技术中建立的视觉词典会造成在不同场景下对图像描述不一致的问题,例如在一个场景下使用上述视觉词典对一图像进行描述的准确率为95%,但在另一个场景下的准确率可能仅有80%。因此,现有技术中的视觉词典并不具备对不同场景的适应性,在不同场景下描述的一致性也会受到影响。
发明内容
为解决上述技术问题,本申请实施例提供了一种视觉词典的生成方法及装置、存储介质。
第一方面,本申请实施例提供一种视觉词典生成方法,所述方法包括:
获取目标定位区域内环境图像所对应的至少一个特征信息;其中,所述特征信息包括所述环境图像中局部元素的相关信息;
基于所述环境图像所对应的至少一个特征信息,构建与所述目标定位区域对应的目标视觉词典;所述目标视觉词典中至少包括所述目标定位区域内多个物体图像的局部元素的相关信息;所述目标视觉词典用于对目标定位区域中待定位图像进行语义表示。
第二方面,本申请实施例提供一种视觉词典生成装置,包括:
获取单元,用于获取目标定位区域内环境图像所对应的至少一个特征信息;其中,所述特征信息包括所述环境图像中局部元素的相关信息;
处理单元,用于基于所述环境图像所对应的至少一个特征信息,构建与所述目标定位区域对应的目标视觉词典;所述目标视觉词典中至少包括所述目标定位区域内多个物体图像的局部元素的相关信息;所述目标视觉词典用于对目标定位区域中待定位图像进行语义表示。
第三方面,本申请实施例提供一种电子设备,包括:处理器和配置为存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器配置为运行所述计算机程序时,执行第一方面所述视觉词典生成方法的步骤。
第四方面,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行实现上述任一方法的步骤。
本申请实施例提供的视觉词典生成方法、装置及存储介质,首先获取目标定位区域内环境图像所对应的至少一个特征信息;其中,所述特征信息包括所述环境图像中局部元素的相关信息;然后,基于所述环境图像所对应的至少一个特征信息,构建与所述目标定位区域对应的目标视觉词典;所述目标视觉词典中至少包括所述目标定位区域内多个物体图像的局部元素的相关信息;所述目标视觉词典用于对目标定位区域中待定位图像进行语义表示。如此,能够针对不同的区域或场景生成与当前场景密切相关的目标视觉词典,使用该方法得到的视觉词典对场景的适应性较强;同时,目标视觉词典中包含与当前场景密切相关的视觉单词,因此,使用目标视觉词典对于在对应的目标定位区域中采集的图像进行相似度评分时,则更加准确。
附图说明
图1为本申请实施例提供的一种视觉词典生成方法的流程示意图1;
图2为本申请实施例提供的一种视觉词典生成方法的流程示意图2;
图3为本申请实施例提供的一种树形结构的目标视觉词典的示意图1;
图4为本申请实施例提供的一种视觉词典生成方法的流程示意图3;
图5为本申请实施例提供的一种树形结构的目标视觉词典的示意图2;
图6为本申请实施例提供的一种树形结构的目标视觉词典的示意图3;
图7为本申请实施例提供的一种目标视觉词典部署的架构示意图;
图8为本申请实施例提供的一种图像匹配效果图;
图9为本申请实施例提供的一种视觉词典生成装置的结构组成示意图;
图10为本发明实施例提供的一种电子设备的硬件结构组成示意图。
具体实施方式
为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明实施例。
在相关技术中,机器在进行SLAM的重定位时一般采用词袋模型对采集到的图像进行表示,进一步基于词袋模型对场景进行认知从而确定机器的位置,具体过程如下:
A1、加载视觉单词训练文件,并将所述视觉单词训练文件中的视觉单词生成视觉单词树;
这里,单词训练文件是指通过图像数据集训练得到的视觉词典,视觉词典中包含多个视觉单词。视觉单词具体是指图像特征或者特征描述子。视觉单词树是指以树形结构存储的视觉词典。
A2、利用视觉单词树对当前采集的图像进行分析,具体地,将当前采集的图像中的图像特征与视觉单词树中的视觉单词进行相似度评分。
A3、将当前图像中每个特征与视觉单词树的视觉单词相似度评分汇总,并和数据库中其它图片逐一进行比对,将数据库中与当前图像相似度高于固定阈值的图片收集起来。
A4、在收集到的相似图片集中,将时间顺序相连的组合在一起,生成图像集合称之为岛集(Island),将每个Island再与当前图像进行匹配,找到匹配最好的Island,在匹配最好的Island当中选取匹配最好的图片,将匹配最好的图片与当前采集的图像进行几何约束的检测,若通过几何约束的检测,则判定为重定位成功。
根据上述重定位方案中,用于给采集的图像进行评分的视觉词典是由图像数据集训练得到的,也就是说,现有技术中视觉词典中图像描述子数量和特征是固定的;训练的视觉单词虽然由一个比较丰富全面的数据集训练生成,但视觉单词并不能随着判断环境的变化而变化,所以并不具备对不同场景的适应性。这样会造成一个准确率的问题。在不同场景下表现的一致性也会受到影响,例如一个场景下的准确率为95%,但在另一个场景下的准确率可能仅有80%。
基于以上原因,本实施例提供一种视觉词典生成方法,如图1所示,包括以下步骤:
步骤101、获取目标定位区域内环境图像所对应的至少一个特征信息;其中,特征信息包括环境图像中局部元素的相关信息;
步骤102、基于环境图像所对应的至少一个特征信息,构建与目标定位区域对应的目标视觉词典;目标视觉词典中至少包括目标定位区域内多个物体图像的局部元素的相关信息;目标视觉词典用于对目标定位区域中待定位图像进行语义表示。
这里,步骤101至步骤102的执行主体可以为电子设备,所述电子设备可以是在云端部署的服务器。
在本实施例中,电子设备能够与用户终端建立无线或有线的通信连接,为用户终端提供服务。用户终端分布能够分布在不同的区域或不同的场景中,为服务器提供所处区域的周围环境的图像,以使得服务器能够构建用户终端所处区域的目标视觉词典。所述用户终端可以是机器人、无人机、无人驾驶汽车、智能手机等。
这里,上述方案中的目标定位区域可以是当前用户终端所处的区域。用户终端能够采集当前所处区域内的环境图像,并将采集到的环境图像直接发送至服务器,服务器对所述环境图像进行处理,得到环境图像的至少一个特征信息。
或者,用户终端采集当前所处区域的环境的图像,直接对环境图像进行处理,得到环境图像的至少一个特征信息,并将环境图像的至少一个特征信息发送至服务器中。
在本实施例中,特征信息是指环境图像中局部元素的相关信息,例如特征点的描述子信息,或者特征点的特征向量等。所述特征点可以是指环境图像中的角点、关键点等具有特征性质的点。例如,特征信息为相互独立的图像特征,特征信息可以为ORB/BRIEF描述子,是256位的二进制序列。
具体地,服务器或用户终端,在得到环境图像后,可以提取至少一个特征点以及特征点周围的图像特征得到环境图像所对应的至少一个特征信息。
实际应用中,视觉词典中包含多个视觉单词,每个视觉单词都是一个独立的图像特征。在本实施例中,目标视觉词典的过程可以理解为是一个不断学习新的视觉单词的过程,在得到目标区域内的环境图像的至少一个特征信息后,服务器将基于至少一个特征信息进行分析处理,生成目标视觉词典。
具体地,服务器首先判断用户终端当前所处的目标定位区域是否有对应的视觉词典,若目标定位区域中不存在初始视觉词典,即初始视觉词典为空,则将所述至少一个特征信息进行聚类,得到目标视觉词典。若目标定位区域中初始视觉词典不为空,则将至少一个特征信息保存至初始视觉词典中。
如此,基于上述步骤得到目标定位区域对应的目标视觉词典,能够针对不同的场景需求生成与当前场景密切相关的目标视觉词典,使用该方法得到的目标视觉词典对场景的适应性较强;同时,目标视觉词典中包含与当前场景密切相关的视觉单词,因此,使用目标视觉词典对于在当前场景中采集的图像进行相似度评分时,则更加准确。
需要说明的是,步骤101至步骤102也能够在终端侧实现,实现步骤与前述步骤相同。
基于前述实施例,本发明实施例提供一种视觉词典的生成方法,如图2所示,包括以下步骤:
步骤201、获取目标定位区域内环境图像所对应的至少一个特征信息;其中,特征信息包括环境图像中局部元素的相关信息;
步骤202、若目标定位区域中不存在初始视觉词典,则对环境图像对应的至少一个特征信息进行聚类处理,得到K类特征信息集合;其中,K为大于1且小于N的整数;N为所述环境图像中至少一个特征信息的总数;
步骤203、将K类特征信息集合作为目标定位区域对应的目标视觉词典。
在本发明提供的实施例中,服务器可以为不同的区域建立目标视觉词典。当服务器判断在用户终端所处的目标定位区域中不存在初始视觉词典时,即目标定位区域对应的初始视觉词典为空,服务器可以通过在该目标定位区域中的用户终端对当前的环境进行图像采集。用户终端在目标定位区域中采集当前环境图像,提取环境图像中至少一个特征点以及特征点周围的图像特征,得到环境图像的至少一个特征信息。进一步,终端将环境图像对应的至少一个特征信息上传至服务器中,服务器基于所述至少一个特征信息建立目标视觉词典。
在本实施例中,使用目标视觉词典对图像进行表示的关键在于计算图像特征和目标视词典中每个视觉单词的相似度,这样一一进行计算相似度非常耗时,因此需要将提取的至少一个特征信息进行聚类处理。
示例性的,在当前环境图像中提取了10000个特征信息,可以使用K均值(K-means)方法将这10000个特征聚类,得到1000类特征信息集合。在本实施例中,将类中心作为视觉单词,由视觉单词构建得到目标视觉词典。
在本发明的其他实施例中,对环境图像对应的至少一个特征信息进行聚类处理,得到K类特征信息集合之后,还包括:
若第k类特征信息集合中的特征信息个数大于预设个数,对第k类特征信息集合中的特征信息进行聚类处理,得到第k类特征信息集合对应的至少一个第k子类特征信息集合;k为大于等于1且小于等于K的整数;
若第m个第k子类特征信息集合中的特征信息个数大于预设个数,对第m个第k子类特征信息集合中的特征信息进行聚类处理,直至特征信息集合中的特征信息个数小于预设个数,形成环境图像对应的至少一个特征信息的树形结构数据库;m为正整数;
将环境图像对应的至少一个特征信息的树形结构数据库作为目标视觉词典。
这里,为了提高效率,在目标视觉词典生成的过程中,还可以建立树形结构的数据组织机制。具体地,采用分层聚类算法进行逐层聚类,生成树形结构的目标视觉词典。其中,预设个数是指树形结构中节点的孩子数。
具体地,服务器对接收到的环境图像的至少一个特征信息进行K-means聚类,将至少一个特征信息划分成K个分支,对每个分支递归地执行K-means聚类以得到下一层的K个更细分支,直到每个非叶节点下的子节点数量小于或等于预设个数。在树形结构中,层节点提供的粗分类,下层节点提供了细分类,直到叶子节点。图3提供了一个K为2,预设个数为3的树形结构的目标视觉词典,目标视觉词典中保存了10个特征信息,包括d0至d9,其中R为根节点。
基于上述步骤,目标定位区域对应的目标视觉词典中已经非空并存储了一定的视觉单词,用户终端再上传目标定位区域的环境图像所对应的特征信息,就变成了更新所述目标视觉词典的过程。这里,更新过程在下一个实施例进行详细描述。
需要说明的是,本实施例中与其它实施例中相同步骤和相同内容的说明,可以参照其它实施例中的描述,此处不再赘述。
这样,基于上述步骤得到目标定位区域的目标视觉词典,本发明提供的实施例能够针对不同的场景需求生成与当前场景密切相关的目标视觉词典,使用该方法得到的目标视觉词典对场景的适应性较强;同时,目标视觉词典中包含与当前场景密切相关的视觉单词,因此,使用目标视觉词典对于在目标定位区域中采集的图像进行相似度评分时,则更加准确。
基于前述实施例,本发明实施例提供一种视觉词典生成方法,如图4所示,包括以下步骤:
步骤401、获取目标定位区域内环境图像所对应的至少一个特征信息;其中,特征信息包括环境图像中局部元素的相关信息;
在本实施例中,环境图像中可以包括N个特征信息。N为大于等于1的整数。特征信息是指环境图像中局部元素的相关信息,例如特征点的描述子信息,或者特征点的特征向量等。本实施例中的特征信息具体可以是ORB/BRIEF描述子,是256位的二进制序列。
步骤402、若目标定位区域对应的初始视觉词典中包含M个预设特征信息,将至少一个特征信息保存至预设视觉词典中,得到目标定位区域对应的目标视觉词典;其中,M为大于等于1的整数。
这里,初始视觉词典可以是预先通过图像训练集训练得到的视觉词典,也可以是服务器基于目标定位区域构建的视觉词典。初始视觉词典可以是树形结构构建的视觉单词树。预设特征信息为相互独立的图像特征,预设特征信息可以为ORB/BRIEF描述子,是256位的二进制序列。
这里,将当前环境图像中的至少一个特征信息作为保存到初始视觉词典的方式有两种:
方式一、
若初始视觉词典中存在环境图像中至少一个特征信息中的某个特征信息,则采用合并方式将该特征信息保存至初始视觉词典中;
方式二、
若初始视觉词典中不存在环境图像中至少一个特征信息中的某个特征信息,则采用新增的方式将该特征信息添加至初始视觉词典中。
具体地,将所述至少一个特征信息保存至所述预设视觉词典中,得到所述目标定位区域对应的目标视觉词典,包括:
检测初始视觉词典中是否有与至少一个特征信息中第i个特征信息匹配的预设特征信息;
当所述至少一个特征信息中第i个特征信息与初始视觉词典中第j个预设特征信息匹配,将所述第i个特征信息和第j个预设特征信息进行合并处理,得到更新后的第j个预设特征信息;其中,i为大于零且小于等于N的整数,N为所述环境图像中至少一个特征信息的总数;j为大于零且小于等于M整数;将所述更新后的第j个预设特征信息存入所述初始视觉词典中,得到与所述目标定位区域对应的目标视觉词典;
当初始视觉词典中没有预设特征信息与所述至少一个特征信息中第i个特征信息匹配,从初始视觉词典中获取与所述第i个特征信息相似度大于第一预设阈值的目标特征信息集合;将所述第i个特征信息添加至所述目标特征信息集合中,得到所述目标视觉词典。
这里,i为大于等于1且小于等于N的整数,j为大于等于1且小于等于M的整数。
具体地,服务器计算至少一个特征信息中第i个特征信息与初始视觉词典中每个预设特征信息之间的相似度,这里计算特征信息之间的相似度可以是计算汉明距离,当初始视觉词典中的预设特征信息排列为树形结构时,可以从根节点位置的预设特征信息计算与第i个特征信息之间的相似度。
当第i个特征信息与初始视觉词典中的某个预设特征信息之间的相似度大于第二预设阈值时,则认为第i个特征信息与该预设特征信息匹配;相似度小于第二预设阈值时,则认为第i个特征信息与该预设特征信息不匹配。这里第二预设阈值可以取值为90。
具体地,如图5所示,当前环境图像中至少一个特征信息的第i个特征信息为w1,计算得到初始视觉词典中与w1匹配度最高预设特征信息为第j个预设特征信息w2。将w1和w2进行合并处理,生成一个新的特征信息Wm,将Wm作为更新后的第j个预设特征信息。这里,w1和w2合并处理可以是将w1和w2进行按位与操作进行合并。
最后,将更新后的第j个预设特征信息存入所述初始视觉词典,得到目标定位区域对应的目标视觉词典。
另外,当环境图像中出现了初始视觉词典中无法匹配到的新的特征信息,则需要将初始视觉词典进行扩充,在初始视觉词典中找到与特征信息最相似的预设特征信息类别,把该特征信息插入到最相似的目标特征信息集合中。
具体地,初始视觉词典中没有预设特征信息与至少一个特征信息中第i个特征信息匹配,则需要将第i个特征信息添加至初始视觉词典中。基于上文中的描述,初始视觉词典中的预设特征信息可以被聚类为多个特征信息集合。将第i个特征信息添加至初始视觉词典中,首先要找到第i个特征信息在初始视觉词典中对应的类别。在本实施例中,服务器可以从初始视觉词典中查找与第i个特征信息相似度大于第一预设阈值的目标特征信息集合,将第i个特征信息添加至目标特征集合中。
在另一实施方式中,初始视觉词典可以是树形结构的单词树,在树形结构中,层节点提供粗分类,下层节点提供了细分类。因此,在树形结构的初始视觉词典中,没有与第i个特征信息匹配的节点,则需扩充初始视觉词典中的视觉单词树,将第i个特征信息作为新的视觉单词,从视觉单词树中找到与第i个特征信息最相似的节点,第i个特征信息作为新的视觉单词插入到最相近的节点中。如图6所示,当前环境图像中至少一个特征信息的第i个特征信息为W2,计算得到初始视觉词典中与W2最相似的节点为W1,其中W1还有其他的下层节点Wm,这里,将第i个特征信息为W2插入到节点W1下。
如此,基于上述步骤得到目标定位区域内环境的目标视觉词典,本发明提供的实施例能够针对不同的场景需求生成与当前场景密切相关的目标视觉词典,使用该方法得到的目标视觉词典对场景的适应性较强;同时,目标视觉词典中包含与当前场景密切相关的视觉单词,因此,使用目标视觉词典对于在当前场景中采集的图像进行相似度评分时,则更加准确。
这样,不同的目标视觉词典能够应用于不同的区域,可以理解为,不同的场景可适配不同的目标视觉词典用于该区域下的定位。在本实施例中,可以通过云端分布式部署不同区域的目标视觉词典。如图7所示,提供一种目标视觉词典的部署架构,其中,场景1-4对应的目标视觉词典1-4可以保存在不同的主机中,共同构成了地图视觉词典。
在本发明的其他实施例中,所述方法还包括:
响应用户终端的定位请求;定位请求中包括用户终端所处区域和用户终端在所处区域采集的待定位图像;
获取与用户终端所处区域的距离小于预设距离的至少一个目标定位区域所对应的目标视觉词典;
从至少一个目标定位区域所对应的目标视觉词典中获取,与待定位图像匹配的最优视觉词典;
基于最优视觉词典,对待定位图像进行语义表示,得到待定位图像特征向量;
将所述特征向量,与用户终端所处区域对应的历史图像数据库中历史图像的特征向量进行特征匹配,得到所述用户终端的目标位置。
具体地,当用户终端在调取重定位功能时,云端会基于用户终端所处区域的地理位置就近搜索附近n个区域对应的目标视觉词典,采用云端分布式计算的方法,控制多个云端主机根据存储的目标视觉词典进行搜索判定。接下来,不同目标视觉词典生成的搜索评分反馈给云端,云端会将判定分数最高的目标视觉词典作为最佳匹配场景,并将结果反馈给用户终端。如此,大大节省了传统搜索方式的时间成本,更高效的完成定位。
具体地,用户终端使用最优视觉词典对当前采集的图像进行相似度评分,得到当前采集图像的词袋模型特征向量,并将当前采集图像的词袋模型特征向量和数据库中离线地图的词袋模型特征向量逐一进行匹配,将离线地图中与当前图像匹配度高于固定阈值的图像收集起来。接着,在收集到的图像集中,将时间顺序相连的组合在一起,生成图像集合Island,将每个Island再与当前采集的图像进行匹配,找到匹配最好的Island,接着,在匹配最好的Island当中选取匹配最好的图像,将匹配最好的图像与当前采集的图像进行几何约束的检测,若通过几何约束的检测,则重定位成功。
相比于固定通用型的词袋模型的视觉词典,分布式词袋模型的视觉词典优势在于针对于不同的场景需求会生成自己的视觉词典,这样确保了对于场景的适应性强。同时,云端需要在不同的区域内配置并生成不同的词袋模型的视觉词典,而非之前的采用统一的视觉词典配置文件来解决。
本申请实施例提供了通过自适应视觉词典提高在不同区域中对图像的识别率,并且在室外也有相对较好的重定位识别表现,如图8所示,图8(a)为用户终端采集的目标定位区域内的环境图像,图8(b)为基于本申请实施例提供的目标视觉词典得到的定位图像。可以看见,使用本实施例提供的视觉词典生成方法进行的图片定位,能够有效地适用于室外场景。
本申请针对现有技术中采用固定通用型的词袋模型的视觉词典,提出了一种分布式视觉词典,具体根据目标定位区域的环境图像进行增量式的视觉词典的生成,本实施例提供的视觉词典生成方法,具有以下创新点:
1、基于增量式的视觉词典进行重定位判定;
2、适用不同的场景;
3、视觉词典部署于云端,通过多台主机分布式搜索减少搜索时间。
本申请提供的视觉词典生成方法,不仅可用于局部场景(某个商场,某个地标性建筑),还可与高德,谷歌等地图信息结合。将地图地理位置信息与分布式视觉词典绑定,实现全覆盖式的视觉定位系统。
基于前述实施例,本发明实施例提供了一种视觉词典生成装置;如图9所示,所述装置包括:
获取单元91,用于获取目标定位区域内环境图像所对应的至少一个特征信息;其中,特征信息包括环境图像中局部元素的相关信息;
处理单元92,用于基于环境图像所对应的至少一个特征信息,构建与目标定位区域对应的目标视觉词典;目标视觉词典中至少包括目标定位区域内多个物体图像的局部元素的相关信息;目标视觉词典用于对目标定位区域中待定位图像进行语义表示。
在本发明的其他实施例中,所述处理单元92,具体用于若目标定位区域中不存在初始视觉词典,则对所述环境图像对应的至少一个特征信息进行聚类处理,得到K类特征信息集合;其中,K为大于1且小于N的整数;N为所述环境图像中至少一个特征信息的总数;
将所述K类特征信息集合作为所述目标定位区域对应的目标视觉词典。
在本发明的其他实施例中,处理单元92,还用于若所述目标定位区域对应的初始视觉词典中包含M个预设特征信息,将所述至少一个特征信息保存至所述预设视觉词典中,得到所述目标定位区域对应的目标视觉词典;其中,M为大于等于1的整数。
在本发明的其他实施例中,处理单元92,还用于当所述至少一个特征信息中第i个特征信息与初始视觉词典中第j个预设特征信息匹配,将所述第i个特征信息和第j个预设特征信息进行合并处理,得到更新后的第j个预设特征信息;其中,i为大于零且小于等于N的整数,N为所述环境图像中至少一个特征信息的总数;j为大于零且小于等于M整数;
将所述更新后的第j个预设特征信息存入所述初始视觉词典中,得到与所述目标定位区域对应的目标视觉词典。
在本发明的其他实施例中,处理单元92,还用于当初始视觉词典中没有预设特征信息与所述至少一个特征信息中第i个特征信息匹配,从初始视觉词典中获取与所述第i个特征信息相似度大于第一预设阈值的目标特征信息集合;
将所述第i个特征信息添加至所述目标特征信息集合中,得到所述目标视觉词典。
在本发明的其他实施例中,所述处理单元92,还用于若第k类特征信息集合中的特征信息个数大于预设个数,对所述第k类特征信息集合中的特征信息进行聚类处理,得到所述第k类特征信息集合对应的至少一个第k子类特征信息集合;k为大于等于1且小于等于K的整数;
若第m个第k子类特征信息集合中的特征信息个数大于预设个数,对所述第m个第k子类特征信息集合中的特征信息进行聚类处理,直至特征信息集合中的特征信息个数小于预设个数,形成所述环境图像对应的至少一个特征信息的树形结构数据库;m为正整数;
将所述环境图像对应的至少一个特征信息的树形结构数据库作为所述目标视觉词典。
在本发明的其他实施例中,所述处理单元92,还用于响应用户终端的定位请求;所述定位请求中包括用户终端所处区域和用户终端在所处区域采集的待定位图像;
所述获取单元91,还用于获取与用户终端所处区域的距离小于预设距离的至少一个目标定位区域所对应的目标视觉词典;
所述处理单元92,用于从至少一个目标定位区域所对应的目标视觉词典中获取,与所述待定位图像匹配的最优视觉词典;基于所述最优视觉词典,对所述待定位图像进行语义表示,得到待定位图像特征向量;将所述特征向量,与用户终端所处区域对应的历史图像数据库中历史图像的特征向量进行特征匹配,得到所述用户终端的目标位置。
基于上述装置中各单元的硬件实现,为了实现本发明实施例提供的视觉词典生成方法,本发明实施例还提供了一种电子设备,如图10所示,所述电子设备100包括:处理器1001和配置为存储能够在处理器上运行的计算机程序的存储器1002,
其中,所述处理器1001配置为运行所述计算机程序时,执行前述实施例中的方法步骤。
当然,实际应用时,如图10所示,该电子设备100中的各个组件通过总线系统1003耦合在一起。可理解,总线系统1003用于实现这些组件之间的连接通信。总线系统1003除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图10将各种总线都标为总线系统1003。
在示例性实施例中,本发明实施例还提供了一种计算机可读存储介质,例如包括计算机程序的存储器1002,上述计算机程序可由电子设备100的处理器1001执行,以完成前述方法所述步骤。计算机可读存储介质可以是磁性随机存取存储器(FRAM,ferromagneticrandom access memory)、只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,ErasableProgrammable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,ElectricallyErasable Programmable Read-Only Memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory)等存储器。
本发明实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。
在本发明所提供的几个实施例中,应该理解到,所揭露的方法和智能设备,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个第二处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。
Claims (7)
1.一种视觉词典生成方法,所述方法包括:
获取目标定位区域内环境图像所对应的至少一个特征信息;其中,所述特征信息包括所述环境图像中局部元素的相关信息;
若所述目标定位区域对应的初始视觉词典中包含M个预设特征信息,并且所述初始视觉词典中没有预设特征信息与所述至少一个特征信息中第i个特征信息匹配,从所述初始视觉词典中获取与所述第i个特征信息相似度大于第一预设阈值的目标特征信息集合,将所述第i个特征信息添加至所述目标特征信息集合中,得到目标视觉词典;其中,M为大于等于1的整数;
所述目标视觉词典中至少包括所述目标定位区域内多个物体图像的局部元素的相关信息;所述目标视觉词典用于对目标定位区域中待定位图像进行语义表示;
响应用户终端的定位请求;所述定位请求中包括用户终端所处区域和用户终端在所处区域采集的待定位图像;
获取与用户终端所处区域的距离小于预设距离的至少一个目标定位区域所对应的目标视觉词典;
从所述至少一个目标定位区域所对应的目标视觉词典中获取,与所述待定位图像匹配的最优视觉词典;
基于所述最优视觉词典,对所述待定位图像进行语义表示,得到待定位图像特征向量;
将所述特征向量,与用户终端所处区域对应的历史图像数据库中历史图像的特征向量进行特征匹配,得到所述用户终端的目标位置。
2.根据权利要求1所述的方法,其特征在于,所述基于所述环境图像所对应的至少一个特征信息,构建与所述目标定位区域对应的目标视觉词典,包括:
若所述目标定位区域中不存在初始视觉词典,则对所述环境图像对应的至少一个特征信息进行聚类处理,得到K类特征信息集合;其中,K为大于1且小于N的整数;N为所述环境图像中至少一个特征信息的总数;
将所述K类特征信息集合作为所述目标定位区域对应的目标视觉词典。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述至少一个特征信息中第i个特征信息与初始视觉词典中第j个预设特征信息匹配,将所述第i个特征信息和第j个预设特征信息进行合并处理,得到更新后的第j个预设特征信息;其中,i为大于零且小于等于N的整数,N为所述环境图像中至少一个特征信息的总数;j为大于零且小于等于M整数;
将所述更新后的第j个预设特征信息存入所述初始视觉词典中,得到与所述目标定位区域对应的目标视觉词典。
4.根据权利要求2所述的方法,其特征在于,所述对所述环境图像对应的至少一个特征信息进行聚类处理,得到K类特征信息集合之后,还包括:
若第k类特征信息集合中的特征信息个数大于预设个数,对所述第k类特征信息集合中的特征信息进行聚类处理,得到所述第k类特征信息集合对应的至少一个第k子类特征信息集合;k为大于等于1且小于等于K的整数;
若第m个第k子类特征信息集合中的特征信息个数大于预设个数,对所述第m个第k子类特征信息集合中的特征信息进行聚类处理,直至特征信息集合中的特征信息个数小于预设个数,形成所述环境图像对应的至少一个特征信息的树形结构数据库;m为正整数;
对应地,所述将所述K类特征信息集合作为所述目标定位区域对应的目标视觉词典,包括:
将所述环境图像对应的至少一个特征信息的树形结构数据库作为所述目标视觉词典。
5.一种视觉词典的生成装置,包括:
获取单元,用于获取目标定位区域内环境图像所对应的至少一个特征信息;其中,所述特征信息包括所述环境图像中局部元素的相关信息;
处理单元,用于若所述目标定位区域对应的初始视觉词典中包含M个预设特征信息,并且所述初始视觉词典中没有预设特征信息与所述至少一个特征信息中第i个特征信息匹配,从所述初始视觉词典中获取与所述第i个特征信息相似度大于第一预设阈值的目标特征信息集合,将所述第i个特征信息添加至所述目标特征信息集合中,得到目标视觉词典;其中,M为大于等于1的整数;所述目标视觉词典中至少包括所述目标定位区域内多个物体图像的局部元素的相关信息;所述目标视觉词典用于对目标定位区域中待定位图像进行语义表示;
所述处理单元,还用于响应用户终端的定位请求;所述定位请求中包括用户终端所处区域和用户终端在所处区域采集的待定位图像;
所述获取单元,还用于获取与用户终端所处区域的距离小于预设距离的至少一个目标定位区域所对应的目标视觉词典;
所述处理单元,还用于从所述至少一个目标定位区域所对应的目标视觉词典中获取,与所述待定位图像匹配的最优视觉词典;基于所述最优视觉词典,对所述待定位图像进行语义表示,得到待定位图像特征向量;将所述特征向量,与用户终端所处区域对应的历史图像数据库中历史图像的特征向量进行特征匹配,得到所述用户终端的目标位置。
6.一种电子设备,包括:处理器和配置为存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器配置为运行所述计算机程序时,执行权利要求1至4任一项所述视觉词典生成方法的步骤。
7.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行实现权利要求1至4任一项所述视觉词典生成方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910595710.6A CN110390356B (zh) | 2019-07-03 | 2019-07-03 | 视觉词典生成方法及装置、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910595710.6A CN110390356B (zh) | 2019-07-03 | 2019-07-03 | 视觉词典生成方法及装置、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110390356A CN110390356A (zh) | 2019-10-29 |
CN110390356B true CN110390356B (zh) | 2022-03-08 |
Family
ID=68286184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910595710.6A Active CN110390356B (zh) | 2019-07-03 | 2019-07-03 | 视觉词典生成方法及装置、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110390356B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111191681A (zh) * | 2019-12-12 | 2020-05-22 | 北京联合大学 | 一种面向对象型图像集的视觉词字典生成方法及系统 |
CN111415388B (zh) * | 2020-03-17 | 2023-10-24 | Oppo广东移动通信有限公司 | 一种视觉定位方法及终端 |
CN111401482B (zh) * | 2020-04-29 | 2024-03-19 | Oppo广东移动通信有限公司 | 特征点匹配方法及装置、设备、存储介质 |
CN111859003B (zh) * | 2020-07-22 | 2021-12-28 | 浙江商汤科技开发有限公司 | 视觉定位方法及装置、电子设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1773492A (zh) * | 2004-11-09 | 2006-05-17 | 国际商业机器公司 | 组织多个文档的方法以及显示多个文档的设备 |
CN102831446A (zh) * | 2012-08-20 | 2012-12-19 | 南京邮电大学 | 单目视觉slam中基于图像外观的闭环检测方法 |
CN105654054A (zh) * | 2015-12-30 | 2016-06-08 | 上海颐本信息科技有限公司 | 基于半监督近邻传播学习和多视觉词典模型的智能视频分析方法 |
CN106934401A (zh) * | 2017-03-07 | 2017-07-07 | 上海师范大学 | 一种基于改进词袋模型的图像分类方法 |
CN107886129A (zh) * | 2017-11-13 | 2018-04-06 | 湖南大学 | 一种基于视觉词袋的移动机器人地图闭环检测方法 |
CN109242899A (zh) * | 2018-09-03 | 2019-01-18 | 北京维盛泰科科技有限公司 | 一种基于在线视觉词典的实时定位与地图构建方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104794219A (zh) * | 2015-04-28 | 2015-07-22 | 杭州电子科技大学 | 一种基于地理位置信息的场景检索方法 |
CN104978395B (zh) * | 2015-05-22 | 2019-05-21 | 北京交通大学 | 视觉词典构建及应用方法和装置 |
CN105843223B (zh) * | 2016-03-23 | 2018-11-20 | 东南大学 | 一种基于空间词袋模型的移动机器人三维建图与避障方法 |
CN108256563B (zh) * | 2018-01-09 | 2020-05-26 | 深圳市无限动力发展有限公司 | 基于距离度量的视觉词典闭环检测方法与装置 |
-
2019
- 2019-07-03 CN CN201910595710.6A patent/CN110390356B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1773492A (zh) * | 2004-11-09 | 2006-05-17 | 国际商业机器公司 | 组织多个文档的方法以及显示多个文档的设备 |
CN102831446A (zh) * | 2012-08-20 | 2012-12-19 | 南京邮电大学 | 单目视觉slam中基于图像外观的闭环检测方法 |
CN105654054A (zh) * | 2015-12-30 | 2016-06-08 | 上海颐本信息科技有限公司 | 基于半监督近邻传播学习和多视觉词典模型的智能视频分析方法 |
CN106934401A (zh) * | 2017-03-07 | 2017-07-07 | 上海师范大学 | 一种基于改进词袋模型的图像分类方法 |
CN107886129A (zh) * | 2017-11-13 | 2018-04-06 | 湖南大学 | 一种基于视觉词袋的移动机器人地图闭环检测方法 |
CN109242899A (zh) * | 2018-09-03 | 2019-01-18 | 北京维盛泰科科技有限公司 | 一种基于在线视觉词典的实时定位与地图构建方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110390356A (zh) | 2019-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110390356B (zh) | 视觉词典生成方法及装置、存储介质 | |
US8798357B2 (en) | Image-based localization | |
Zamir et al. | Image geo-localization based on multiplenearest neighbor feature matching usinggeneralized graphs | |
CN111652934A (zh) | 定位方法及地图构建方法、装置、设备、存储介质 | |
KR102296908B1 (ko) | 특징점 지도 관리방법 및 장치 | |
CN110555428B (zh) | 行人重识别方法、装置、服务器以及存储介质 | |
US20180012105A1 (en) | Localization and mapping method | |
CN110986969B (zh) | 地图融合方法及装置、设备、存储介质 | |
JP2014022837A (ja) | 学習装置、及びプログラム | |
CN112445929B (zh) | 视觉定位方法及相关装置 | |
CN113033507B (zh) | 场景识别方法、装置、计算机设备和存储介质 | |
CN111784776A (zh) | 视觉定位方法及装置、计算机可读介质和电子设备 | |
CN109871891A (zh) | 一种物体识别方法、装置和存储介质 | |
CN112036362A (zh) | 图像处理方法、装置、计算机设备和可读存储介质 | |
CN112200041A (zh) | 视频动作识别方法、装置、存储介质与电子设备 | |
Martinez-Carranza et al. | Enhancing 6D visual relocalisation with depth cameras | |
CN113254687B (zh) | 图像检索、图像量化模型训练方法、装置和存储介质 | |
CN109699003B (zh) | 位置确定方法及装置 | |
US20230266470A1 (en) | Robot relocalization method and apparatus, and storage medium and electronic device | |
US11127199B2 (en) | Scene model construction system and scene model constructing method | |
Wu et al. | A vision-based indoor positioning method with high accuracy and efficiency based on self-optimized-ordered visual vocabulary | |
Sui et al. | An accurate indoor localization approach using cellphone camera | |
JP6601965B2 (ja) | 探索木を用いて量子化するプログラム、装置及び方法 | |
CN111353346A (zh) | 动作识别方法、装置、系统、电子设备、存储介质 | |
KR102426594B1 (ko) | 크라우드소싱 환경에서 객체의 위치를 추정하는 시스템 및 방법 |
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 |