CN111046125A - 一种视觉定位方法、系统及计算机可读存储介质 - Google Patents

一种视觉定位方法、系统及计算机可读存储介质 Download PDF

Info

Publication number
CN111046125A
CN111046125A CN201911299956.5A CN201911299956A CN111046125A CN 111046125 A CN111046125 A CN 111046125A CN 201911299956 A CN201911299956 A CN 201911299956A CN 111046125 A CN111046125 A CN 111046125A
Authority
CN
China
Prior art keywords
image
global feature
pose
module
candidate
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
Application number
CN201911299956.5A
Other languages
English (en)
Inventor
王强
张小军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shichen Information Technology Shanghai Co ltd
Original Assignee
Shichen Information Technology Shanghai Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shichen Information Technology Shanghai Co ltd filed Critical Shichen Information Technology Shanghai Co ltd
Priority to CN201911299956.5A priority Critical patent/CN111046125A/zh
Publication of CN111046125A publication Critical patent/CN111046125A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence

Abstract

本申请实施例提供了一种视觉定位方法、系统及计算机可读存储介质,其中所述方法包括获取待定位图像,在预先构建的三维视觉地图数据库中检索得到至少一个图像为候选图像,所述候选图像与所述待定位图像的全局特征向量相似度大于阈值;分别计算所述待定位图像与至少一个所述候选图像各自的相对位姿信息,利用所述计算得到的相对位姿信息得到所述待定位图像相对于三维视觉地图的至少一个位姿结果;对至少一个所述位姿结果进行校验测试,输出所述校验测试中得分最高的位姿结果。本申请实施例提供的方法、系统及计算机可读存储介质能够在复杂的动态场景中、受到遮挡的场所内实现视觉精确定位。

Description

一种视觉定位方法、系统及计算机可读存储介质
技术领域
本申请涉及计算机视觉领域,特别是涉及一种视觉定位方法、系统及计算机可读存储介质。
背景技术
精确定位是在无人驾驶、无人机、增强现实、基于地理位置的(Location BasedServices,LBS)游戏、步行导航等应用中都需要用到的关键技术。传统的定位手段(如北斗系统,全球定位系统(Global Positioning System,GPS),蓝牙beacon等)容易受到建筑物、行人等遮挡影响,可适用的场景以及定位精度都受限。近年来,基于相机图像的视觉定位系统由于其体积小、精度高、室内定位效果鲁棒、功耗低、信息采集丰富等特点,已广泛应用于自主导航、增强现实、辅助驾驶、无人机等领域。通用的视觉定位方案容易受到光照、动态场景变化等影响,定位的成功率和准确率都不高。
现有的视觉定位主要流程主要是采集图像数据库,提取图像特征,图像特征与数据库进行匹配,去除错误匹配的外点,解算三维的位置和姿态。随着深度学习技术的发展,结合深度学习进行视觉重定位可以提高定位的成功率,但定位精度仍然偏低。现有结合深度学习进行视觉定位的方法有的采用直接训练神经网络计算得到相机的位置和姿态,缺少几何约束,导致定位成功率低;现有的基于深度学习的视觉定位有些基于回归迭代每个像素点的三维坐标,进一步计算相机的位置和姿态,但是像素点的坐标回归误差通常较大,导致最终定位精度受限。
发明内容
本申请提供一种视觉定位方法、系统及计算机可读存储介质,融合机器学习和三维计算机视觉算法,能够在复杂的动态场景中、受到遮挡的场所内实现精确定位。
本申请提供一种视觉定位方法,其特征在于,所述方法包括:
获取待定位图像,在预先构建的三维视觉地图数据库中检索得到至少一个图像为候选图像,所述候选图像与所述待定位图像的全局特征向量相似度大于阈值;
分别计算所述待定位图像与至少一个所述候选图像各自的相对位姿信息,利用计算得到的相对位姿信息得到所述待定位图像相对于三维视觉地图的至少一个位姿结果;
对至少一个所述位姿结果进行校验测试,输出所述校验测试中得分最高的位姿结果。
优选地,利用图像采集设备采集目标区域内的场景图像,对所述场景图像进行三维重建,得到所述三维视觉地图;
建立包括所述三维视觉地图包含的每一幅所述场景图像的相关信息的三维视觉地图数据库。
优选地,所述在预先构建的三维视觉地图数据库中检索得到至少一个图像为候选图像具体包括:
利用全局特征提取网络获取所述待定位图像的全局特征向量;
在预先构建的所述三维视觉地图数据库中检索确定与所述待定位图像的全局特征向量的相似度大于阈值的至少一个图像为所述候选图像。
优选地,所述全局特征提取网络满足||do-dp||<||do-dq||;
其中,所述do、dp、dq分别为图像Xo、Xp、Xq利用所述全局特征提取网络获取的对应的全局特征向量,所述图像Xo和Xp的相似度高于所述图像Xo和Xq的相似度。
优选地,所述分别计算所述待定位图像与每个所述候选图像各自的相对位姿信息具体包括:
选取至少一个所述候选图像;
利用局部姿态计算网络,分别得到每一个所选取的候选图像与所述待定位的相对位姿信息。
优选地,所述局部姿态计算网络满足Top与T′op的差值小于预设阈值;
其中,所述T′op是图像Xo、Xp利用所述局部姿态计算网络得到的相对位姿信息,所述Top是图像Xo、Xp的真实相对位姿信息。
优选地,所述局部姿态计算网络还包括语义约束条件和/或几何约束条件。
本申请还提供一种视觉定位系统,其特征在于,包括:处理器和存储器;
所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时执行如前所述的视觉定位方法的步骤。
本申请还提供一种视觉定位系统,其特征在于,所述系统包括第一定位模块、第二定位模块,其中:
所述第一定位模块,用于获取待定位图像,在预先构建的三维视觉地图数据库中检索得到至少一个图像为候选图像,所述候选图像与所述待定位图像的全局特征向量相似度大于阈值;
所述第二定位模块,用于分别计算所述待定位图像与至少一个所述候选图像各自的相对位姿信息,利用计算得到的相对位姿信息得到所述待定位图像相对于三维视觉地图的至少一个位姿结果;对至少一个所述位姿结果进行校验测试,输出所述校验测试中得分最高的位姿结果。
优选地,所述系统还包括地图构建模块,其中:
所述地图构建模块,用于利用图像采集设备采集目标区域内的场景图像,对所述场景图像进行三维重建,得到所述三维视觉地图;
所述地图构建模块,还用于建立包括所述三维视觉地图包含的每一幅所述场景图像的相关信息的三维视觉地图数据库。
优选地,所述系统还包括全局特征提取模块,其中:
所述全局特征提取模块,用于接收所述待定位图像,输出所述待定位图像的全局特征向量;在预先构建的所述三维视觉地图数据库中检索确定与所述待定位图像的全局特征向量的相似度大于阈值的至少一个图像为所述候选图像。
优选地,所述全局特征提取模块满足||do-dp||<||do-dq||;
其中,所述do、dp、dq分别为图像Xo、Xp、Xq利用所述全局特征提取模块获取的对应的全局特征向量,所述图像Xo和Xp的相似度高于所述图像Xo和Xq的相似度。
优选地,所述系统还包括局部姿态计算模块,其中:
所述局部姿态计算模块,用于接收选取的至少一个所述候选图像,分别输出每一个所选取的候选图像与所述待定位的相对位姿信息。
优选地,所述局部姿态计算模块满足Top与T′op的差值小于预设阈值;
其中,所述T′op是图像Xo、Xp利用所述局部姿态计算模块得到的相对位姿信息,所述Top是图像Xo、Xp的真实相对位姿信息。
优选地,所述局部姿态计算模块还包括语义约束条件和/或几何约束条件。
本申请还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述的视觉定位方法的步骤。
本申请实施例所提供的一种视觉定位方法、系统及计算机可读存储介质,可以实现的有益效果是:
本申请提供一种视觉定位的流程,利用深度神经网络学习对全局特征提取网络和局部姿态计算网络进行训练,充分利用图像的全局和局部信息,可以快速准确地筛选出可能的候选区域,提高了在光照变化、视场角变化的场景中定位的效率和鲁棒性。此外,全局特征提取网络和局部姿态计算网络的可扩展性强,无需重新训练即可直接扩展应用于新的场景。
附图说明
图1是本申请实施例视觉定位系统的第一结构示意图;
图2是本申请实施例视觉定位方法的第一流程示意图;
图3是本申请实施例视觉定位方法的第二流程示意图;
图4是本申请实施例视觉定位系统的第二结构示意图;
图5是本申请实施例视觉定位系统的第三结构示意图;
图6是本申请实施例视觉定位系统的第四结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
除非上下文明确地另外指明,否则单数形式“一”和“所述”包括复数指代物。如本申请中所使用的,用语“第一”和“第二”可互换使用,以将一个或一类构件分别与另一个或另一类区分开,且不旨在表示独立构件的位置或重要性。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于用户设备、网络设备或用户设备与网络设备通过网络相集成所构成的设备。所述用户设备其包括但不限于任何一种可与用户通过触摸板进行人机交互的移动电子产品,例如智能手机、平板电脑等,所述移动电子产品可以采用任意操作系统,如android操作系统、IOS操作系统等。其中,所述网络设备包括一种能够按照事先设定或存储的指令,自动进行数值计算和信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific IntegratedCircuit,ASIC)、可编程门阵列(Field-ProgrammableGate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。所述网络设备其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云;在此,云由基于云计算(Cloud Computing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟超级计算机。
所述网络104包括但不限于互联网、移动通信网络、广域网、城域网、局域网、VPN网络、无线自组织网络(AdHoc网络)等。例如,移动通信网络可以是3G、4G或5G移动通信系统,例如,移动通信网络可以是宽带码分多址(Wideband Code Division Multiple Access,WCDMA)系统、频分多址(Frequency Division Multiple Access,FDMA)系统、正交频分多址(Orthogonal Frequency-Division Multiple Access,OFDMA)系统、单载波FDMA(SC-FDMA)系统、通用分组无线业务(General Packet Radio Service,GPRS)系统或长期演进(LongTerm Evolution,LTE)系统,以及其他此类通信系统。当然,本领域技术人员应能理解上述终端设备仅为举例,其他现有的或今后可能出现的终端设备如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。
服务器105可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心,例如云端服务器。其也可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。
需要说明的是,本申请实施例所提供的视觉定位方法一般由服务器执行,相应地,视觉定位系统/装置一般设置于服务器中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
如图2所示,为本申请实施例提供的一种视觉定位方法的流程示意图,所述视觉定位方法可以由云端服务器执行。所述云端服务器可以为图1中所述服务器105。
步骤21,获取待定位图像。
例如,图像采集设备带有摄像和/或数据传输模块,可以通过有线和/或无线的方式获取到在目标区域内的所述待定位图像,并将所述待定位图像传输至所述云端服务器;所述图像采集设备可以是智能手机、平板、增强现实(Augmented Reality,AR)眼镜等。
步骤22,在预先构建的三维视觉地图数据库中检索得到至少n个图像为候选图像,所述候选图像与所述待定位图像的全局特征向量相似度大于阈值,其中,n≥1且n为自然数。
所述全局特征向量可以是表征图像全局信息的多维向量,例如,提取所述待定位图像的至少一个特征点,并对每一个所述特征点进行特征描述得到所述待定位图像的全局特征向量。例如,将所述待定位图像输入全局特征提取网络,输出所述待定位图像的全局特征向量。所述全局特征提取网络可以通过训练得到,所述全局特征提取网络的训练过程后续再进行详细描述。
所述三维视觉地图可以是包含现实环境图像的三维地图,例如,所述三维视觉地图包括位置信息和姿态信息,所述位置信息和姿态信息可以通过定位设备获取,所述定位设备可以是全球定位系统(GPS)、陀螺仪、惯性测量单元(IMU)、气压计等,所述位置信息包括地理位置信息,例如地理位置名称或者包括经度和纬度,所述姿态信息包括海拔、方位角、水平定位精度和垂直定位精度中的一个或者多个。所述三维视觉地图及所述三维视觉地图数据库的构建过程在下文详述。
步骤23,分别计算所述待定位图像与m个所述候选图像各自的相对位姿信息,利用所述计算得到的相对位姿信息得到所述待定位图像相对于所述三维视觉地图的m个位姿结果,其中,1≤m≤n且m为自然数。
例如,选取至少一个所述候选图像,分别将每一个所述候选图像与所述待定位图像输入局部姿态计算网络,分别输出所述待定位图像与每一个所述候选图像的相对位姿信息。所述相对位姿信息可以是所述待定位图像相对于所述候选图像的位置关系和/或姿态关系(例如相对方向和相对距离),例如,所述待定位图像与所述候选图像的相对方向和相对距离。所述局部姿态计算网络可以通过训练得到,所述局部姿态计算网络的训练过程在下文详述。
所述位姿信息包括图像在所述三维视觉地图中的位置信息和姿态信息。
步骤24,对至少一个所述位姿结果进行校验测试,输出所述校验测试中得分最高的位姿结果,所述得分最高的位姿结果即为所述待定位图像在所述三维视觉地图中的位姿信息。
例如,所述校验测试可以是依次选择一个所述位姿结果,选取的所述位姿结果对应的候选图像Hi,所述候选图像Hi与所述待定位图像有c个匹配对,其中,c≥1且c为自然数,利用所述待定位图像与所述候选图像Hi的相对位姿信息计算每个所述匹配对的距离。所述匹配对的距离可以用投影误差、位移差等方法表示。例如,所述候选图像Hi与所述待定位图像的其中一个匹配对由所述候选图像Hi中的特征点HP1和所述待定位图像中的特征点HP2组成,用投影误差法计算所述匹配对的距离可以是将所述待定位图像中的特征点HP2变换映射到所述候选图像Hi中得到变换点HP2’。例如,可以计算所述候选图像Hi与所述待定位图像的单应变换矩阵H,所述单应变换矩阵H可具体表征为:
Figure BDA0002320690150000111
如上公式表示所述单应变化矩阵H的计算过程,其中argmin表示使得表达式的值最小。所述单应变换矩阵H使得将所述待定位图像中的点(例如,所述特征点HP2,在所述待定位图像中所述特征点HP2的坐标为
Figure BDA0002320690150000112
)经过单应变换后得到的变换点(例如,所述特征点HP2经过所述单应变换后得到变换点HP2’,所述变换点HP2’的坐标为
Figure BDA0002320690150000121
)与所述候选图像Hi中的点(例如,所述特征点HP1,在所述候选图像Hi中的坐标为(ui,vi))之间的距离之和最小。所述特征点HP1与所述变换点HP2’的欧式距离/街区距离/汉明距离/绝对值距离即为所述HP1和HP2组成的匹配对的距离。如果所述匹配对的距离小于预先设定的阈值dist则标定该匹配对是正确匹配对,所述候选图像Hi的校验测试分数可以是所述待定位图像与所述候选图像Hi的正确匹配对个数。例如,所述候选图像Hi与所述待定位图像有d个正确匹配对,所述候选图像Hi的校验测试分数即为d,其中,d≤c且d为大于等于1的自然数。所述匹配对的生成过程在下文详述。
上述描述的视觉定位方法,通过在所述三维视觉地图数据库中检索得到所述候选图像,再分别计算所述待定位图像与每个所述候选图像的相对位姿,并进行置信度检测,得到待定位图像的精确定位,能够有效提高视觉定位的效率和鲁棒性。
如图3所示,在本申请的另一实施例中,构建所述三维视觉地图和所述三维视觉地图数据库的具体过程可以如下所述。
步骤31,利用所述图像采集设备采集所述目标区域内的场景图像,对所述场景图像做三维重建,得到所述三维视觉地图。
例如,所述三维视觉地图的构建过程可以采用运动推断结构法,例如,将至少两帧所述场景图像组成场景图像集Q,在所述场景图像集Q中随机选择一帧场景图像Ii,其中,Ii|i=[1,a],i和a为自然数,且a不大于总的所述场景图像数量。
提取所述场景图像Ii的至少一个特征点,例如,可以使用特征提取算子提取所述场景图像Ii的至少一个特征点,例如,使用加速角点特征(Features from AcceleratedSegment Test,FAST)检测算法、哈里斯(Harris)角点检测算法、莫拉维克(Moravec)角点检测算法、史托马西(Shi-Tomasi)角点检测算法或基于加速角点特征和二元独立特征描述(Oriented FASTand Rotated BRIEF,ORB)特征检测算法等。所述特征点是图像中的特殊位置,也可以称为“角点”,或“兴趣点(interest point)”。例如,FAST角点检测算法是找到与周围邻域内大于预定数量的像素点相差大于等于阈值的像素点P,则所述像素点P为角点,角点即为所要提取的特征点。例如,随机选择一个像素点P,以P为圆心画一个半径为3像素的圆经过16个像素点,如果圆周上有连续n个像素点的灰度值与P点的灰度值之差大于等于阈值,则认为P为所要提取的特征点,其中n为大于等于1的整数,例如,n可以设置为12,阈值可以根据应用场景预设。
将所述场景图像Ii与所述场景图像集Q中其他图像进行特征点匹配,以在场景图像集Q中找到所述场景图像Ij和Ik,其中,Ij|j=[1,a],Ik|k=[1,a],且i、j、k为互不相同的自然数。
例如,所述特征点匹配可以是对所述场景图像的特征点进行特征描述得到所述场景图像的特征描述向量,在所述场景图像Ij中找到一个特征点IP2与所述场景图像Ii中的特征点IP1的特征描述向量的相似度大于阈值,所述特征点IP1与所述特征点IP2即为匹配的特征点,所述特征点IP1与所述特征点IP2可以称为所述场景图像Ii与所述场景图像Ij的一个匹配对。
在本申请的另一实施例中,所述对特征点进行特征描述的过程可以使用尺度不变特征转换(Scale-Invariant Feature Transform,SIFT)特征描述子算法、加速稳健特征(Speeded Up Robust Features,SURF)特征描述子算法或二元尺度不变(Binary RobustInvariant Scalable Keypoints,BRISK)特征描述子算法等。
例如,SIFT特征描述子算法,用于侦测与描述图像中的局部性特征,对所述特征点进行梯度计算,生成梯度直方图,统计选取的领域内像素的梯度和方向,从而确定所述特征点的方向;取所述特征点周围4×4共16个区域块,统计每个所述区域块内8个梯度方向,这4×4×8共128维向量为所述特征点的特征描述向量,将所述场景图像中的所有特征点都用SIFT算法转化为128维的特征描述向量,得到所述场景图像的特征描述向量。
当所述场景图像Ij与所述场景图像Ii匹配的特征点个数超过预设阈值时,将所述场景图像Ij与所述场景图像Ii称为相似图像对。当所述场景图像Ik与所述场景图像Ii匹配的特征点个数小于阈值时,将所述场景图像Ik与所述场景图像Ii称为非相似图像对。
遍历整个所述场景图像集Q,得到所有相似图像对。选择包含的两帧所述场景图像的相似度低于预设标准的一组所述相似图像对(例如Ii和Ii),计算所述场景图像Ii和Ij的相对位姿。
例如可以采用特征点匹配法,匹配所述场景图像Ii和Ij的特征点,将相同或相似度大于阈值的特征点确定为所述场景图像Ii和Ij的重合部分,利用所述重合部分以及所述场景图像Ii和Ij中未确定的特征点,计算得到所述场景图像Ii和Ij的相对位姿。
利用所述场景图像Ii和Ij中的匹配对以及所述场景图像Ii和Ij的相对位姿,构建所述三维视觉地图。
例如,分别提取所述场景图像Ii和Ij中的特征点并进行特征点匹配,得到所述场景图像Ii和Ij的匹配对,所述场景图像Ii中的特征点IP1与所述场景图像Ij中的特征点IP2是一个匹配对。通过8点法计算得到所述场景图像Ii和Ij的相对位姿,例如,计算矩阵P使得所述特征点IP1(可以用矩阵x表示)与所述特征点IP2(可以用矩阵x’表示)满足方程x′TPx=0,其中所述矩阵P可以是一个3×3的齐次矩阵,分别在方程中代入7个匹配对计算得到所述矩阵P。利用矩阵P可以计算得到所述场景图像Ii与所述场景图像Ij的所有匹配对在所述三维视觉地图中的位置。
依次选取所述场景图像集Q中尚未加入所述三维视觉地图的场景图像,遍历完所有所述场景图像,完成所述三维视觉地图的构建。
在本申请实施例的一个可选方案中,为了保证所述三维视觉地图的误差尽可能小,每加入一帧所述场景图像之后,运行全局的捆绑约束对所述三维视觉地图中的场景图像及所述场景图像的位姿进行优化。例如,将所述场景图像Ii和Ij的每一个匹配对(例如,所述场景图像Ii和Ij共有r个匹配对,且r为自然数)的投影误差记为(f1f2…fr),捆绑约束的目标函数为
Figure BDA0002320690150000161
其中argmin表示使得表达式的值最小。可以通过莱文贝格-马夸特方法(Levenberg-Marquardt,LM)法进行求解。例如,将f(x)的雅可比矩阵记录为J(x),每一次迭代LM算法解决最小二乘问题。例如,利用公式
δ*=arg min||J(x)δ+fx||2+γ||D(x)δ||2
使得x←x+δ*直到迭代次数达到要求或者更新量小于预先设定的阈值。
步骤32,建立包括所述三维视觉地图包含的每一幅所述场景图像的相关信息的三维视觉地图数据库。
例如,存储所述三维视觉地图中包含的每一幅所述场景图像和/或所述场景图像的特征点和/或所述场景图像的特征描述向量,得到所述三维视觉地图数据库。
在本申请实施例的一个可选方案中,可以将所述三维视觉地图与所述三维视觉地图数据库存储在所述云端服务器中。
在本申请实施例的一个可选方案中,还可以利用所述定位设备获取每个所述场景图像的位姿信息,并将所述场景图像的位姿信息存储在所述三维视觉地图数据库中。
在本申请实施例的一个可选方案中,还可以利用所述全局特征提取网络计算所述场景图像的全局特征向量,并将所述场景图像的全局特征向量存储在所述三维视觉地图数据库中。
在本申请的另一实施例中,所述全局特征提取网络可以利用第一神经网络训练得到。
例如,所述图像采集设备采集训练图像,利用所述训练图像构建所述三维视觉地图。
所述训练图像Xo、Xp、Xq…可以是所述目标区域中的场景图像,也可以是所述目标区域以外的场景图像;所述训练图像还可以是经过数字处理的非真实场景图像;所述训练图像也可以从所述三维视觉地图数据库中提取,无需再次进行构建所述三维视觉地图。其中,Xo|o=[1,b],Xp|p=[1,b],Xq|q=[1,b],o、p、q为互不相同的自然数,b为自然数,且b不大于总的所述训练图像数量。
所述全局特征提取网络的输入为单帧所述训练图像,所述全局特征提取网络的输出为所述输入的单帧训练图像的全局特征向量,所述全局特征向量可以是多维特征向量;并且通过所述全局特征提取网络计算得到的全局特征向量,其中,所述相似图像对中的两帧图像的全局特征向量之间的距离小于非相似图像对中的两帧图像的全局特征向量之间的距离。所述全局特征向量之间的距离可以是欧氏距离(Euclidean Distance)、汉明距离绝对值距离、街区距离等。例如,所述训练图像Xo、Xp、Xq可以分别是所述场景图像Ii、Ij、Ik,且Ii和Ii为所述相似图像对,Ii和Ik为所述非相似图像对。
所述相似图像对和所述非相似图像对均可以通过人工标注和/或机器标注得到,例如,人工标注两帧图像为所述相似图像对,或者,根据预设的标准标注两帧图像为所述相似图像对。
卷积神经网络通常包含卷积层、池化层和全连接层等。所述卷积层(Convolutionallayer),卷积神经网路中每层卷积层由若干卷积单元组成,每个卷积单元的参数都是通过反向传播算法优化得到的。卷积运算的目的是提取输入的不同特征,第一层卷积层可能只能提取一些低级的特征如边缘、线条和角等层级,更多层的网络能从低级特征中迭代提取更复杂的特征。所述池化层(Pooling layer),通常在卷积层之后会得到维度很大的特征,将特征切成几个区域,取其最大值或平均值,得到新的、维度较小的特征。所述全连接层(Fully-Connected layer),把所有局部特征结合变成全局特征,用来计算最后每一类的得分。
所述第一神经网络可以是任意卷积神经网络如AlexNet,VGGNet,ResNet等。其中所述第一神经网络包含卷积层和全连接层,所述卷积层和全连接层的参数的初始值可以随机设定。对于任意的三张训练图像Xo、Xp、Xq,其中Xo和Xp属于相似图像对,Xo和Xq属于非相似图像对,经过所述第一神经网络分别计算得到所述三张图像Xo、Xp、Xq对应的全局特征向量do、dp、dq,训练所述第一神经网络,使得||do-dp||<||do-dq||。或者,使得||do-dq||-||do-dp||的值大于预设的阈值。
例如,所述第一神经网络优化的第一损失函数可以是
Figure BDA0002320690150000191
其中pos()表示仅计算正数部分,M表示一共有M对训练图像对(包括非相似图像对和相似图像对)。通过反向传播算法确定所述第一神经网络中所述卷积层和全连接层的参数,使得即使增加训练的次数,所述第一损失函数L也不再降低,此时认为所述第一神经网络已收敛,所述收敛的第一神经网络即为所述全局特征提取网络。
在本申请实施例的一个可选方案中,可以采用反向传播算法,所述反向传播算法是利用神经网络的预测值误差返回修改神经网络中的参数,例如,计算所述第一神经网络的输出相对于所述卷积层和全连接层参数的梯度值,快速确定所述第一神经网络中的参数。
在本申请另一实施例中,可以利用自编码-解码(Auto Encoder-decoder)网络训练得到所述全局特征提取网络。所述自编码-解码网络包括编码器和解码器,所述编码器可以将所述训练图像编码为所述训练图像的全局特征向量,所述解码器可以将所述训练图像的全局特征向量解码为所述训练图像。例如,所述编码器和解码器可以分别由两个不同的神经网络模型组成。例如,所述编码器包含卷积层和池化层。利用所述自编码-解码网络对每一帧所述训练图像进行编码和解码,确定所述编码器的卷积层和池化层的参数,使得所述解码器解码后的训练图像与输入所述编码器的训练图像的相似度大于阈值。
例如,将所述目标区域场景内的b帧训练图像X1、X2、X3...Xb输入所述编码器,得到其全局特征向量d0,d1,d2...db;将所述全局特征向量d1,d2,d3...db输入所述解码器,得到与输入所述编码器的训练图像像素相同的解码图像X’1,X’2,X’3...X’b
所述自编码-解码网络的优化目标函数为
Figure BDA0002320690150000201
确定所述编码器的卷积层和池化层的参数,使得即使增加训练的次数,所述优化目标函数L2也不再降低,此时认为所述自编码-解码网络已收敛,所述收敛的编码器部分为所述全局特征提取网络。
在本申请实施例的一个可选方案中,可以采用反向传播算法,计算所述自编码-解码网络的输出相对于所述编码器的卷积层和池化层参数的梯度值,快速确定所述编码器的卷积层和池化层参数。
在本申请的另一实施例中,所述局部姿态计算网络的训练过程可以通过训练第二神经网络得到。
例如,从所述训练图像、相似图像对和三维视觉地图中,选取一组所述相似图像对(例如,所述训练图像Xo和Xp),并计算所述图像Xo和图像Xp的相对位姿关系。
例如,可以用四元数Top表示所述Xo和Xp的相对位姿关系,例如分别以Xo和Xp的中心点为原点建立两个xyz坐标系,找到某个虚拟轴使得所述以Xo的中心点为原点的坐标系绕着所述虚拟轴旋转可以得到以Xp的中心点为原点的坐标系。例如,所述Xo和Xp的两个坐标系的相对位置为Top=[q0 q1 q2 q3]T,其中q0、q1、q2分别表示所述虚拟轴,q3表示绕所述虚拟轴的旋转角度,所述Top为所述Xo和Xp相对位姿关系的真实值。将所述相似图像对Xo和Xp输入所述第二神经网络,其中所述第二神经网络所用参数的初始值可以是任意的,输出表示Xo和Xp相对位姿关系的四元数T′op
所述第二神经网络优化的第三损失函数为
L3=∑||bt-bg||2
其中bt为所述第二神经网络输出的Xo和Xp相对位姿关系T′op,bg为Xo和Xp的相对位姿关系的实际值Top。将所有的相似图像对分别输入所述第二神经网络进行训练,优化所述第二神经网络所用参数,使得即使增加训练的次数,所述第三损失函数L3也不再降低,此时认为所述第二神经网络已收敛,所述收敛的第二神经网络为所述局部姿态计算网络。
在本申请实施例的一个可选方案中,可以采用反向传播算法,计算所述第二神经网络的输出相对于所述第二神经网络所用参数的梯度值,快速确定所述第二神经网络所用参数。
在本申请实施例的一个可选方案中,在训练所述第二神经网络时,可以利用训练图像之间的语义关系增加语义约束条件,提高视觉定位的计算效率和准确性。例如,在所述局部匹配网络中设置图像语义分割任务,获得所述相似图像对Xo和Xp的匹配特征点,其中所述Xo中的特征点IPt与Xp中的特征点IPg是一组匹配特征点,分别对所述特征点IPt、IPg进行语义分割,得到所述特征点IPt、IPg所属的物体类别Ct、Cg,并作为训练所述局部姿态计算网络时所用的第四损失函数的一部分。
所述第四损失函数可以定义为
Figure BDA0002320690150000221
确定所述第二神经网络所用参数,使得即使增加训练的次数,所述第四损失函数L′也不再降低,此时认为所述第二神经网络已收敛,所述收敛的第二神经网络为所述局部姿态计算网络。在本申请实施例的一个可选方案中,可以采用反向传播算法,计算所述第二神经网络的输出相对于所述第二神经网络所用参数的梯度值,快速确定所述第二神经网络所用参数。
在本申请实施例的一个可选方案中,还可以在训练所述第二神经网络的过程中设置多个训练任务,所述多个训练任务构成一个整体,联合对所述第二神经网络进行优化训练。
所述多个训练任务联合训练的第五损失函数可以为
LTotal=∑||bt-bg||2+α*||Ct-Cg||2
其中α为控制不同任务损失函数的权重。确定所述第二神经网络所用参数,使得即使增加训练的次数,所述第五损失函数LTotal也不再降低,此时认为所述第二神经网络已收敛,所述收敛的第二神经网络为所述局部姿态计算网络。在本申请实施例的一个可选方案中,可以采用反向传播算法,计算所述第二神经网络的输出相对于所述所述第二神经网络所用参数的梯度值,快速确定所述第二神经网络所用参数。
在本申请实施例中,面对新的目标区域场景,可以直接利用所述全局特征提取网络构建所述三维视觉地图,也可以直接利用所述全局特征提取网络和局部姿态计算网络对所述待定位图像进行视觉定位,无需重新训练全局特征提取网络以及局部姿态计算网络,可扩展性强。
如图4所示,本申请实施例还提供了一种视觉定位系统,所述系统包括存储器301和处理器302。
所述存储器301,用于存储代码和相关数据中的至少一项。
所述处理器302,用于执行所述存储器301中的代码和/或相关数据用以实现前述实施例中的方法步骤。
如图5所示,本申请实施例还提供了一种视觉定位系统,所述视觉定位系统可以包括第一设备51和第二设备52,所述第一设备51通过网络53与第二设备52进行通信。
所述第一设备51,用于定位所述待定位图像。例如,所述第一设备51可以包括通过系统总线相互通信连接的第一定位模块402和第二定位模块403。
所述第二设备52,用于构建和/或存储所述第一设备51在所述定位过程中使用的数据/信号。例如,所述第二设备52可以包括通过系统总线相互通信连接的地图构建模块401、全局特征提取模块404和局部姿态计算模块405。
所述网络53,用于联通所述第一设备51和所述第二设备52,所述网络53的具体功能可以如图1所描述的视觉定位系统的网络104的工作过程。
所述地图构建模块401,利用图像采集设备采集目标区域内的场景图像,对所述场景图像进行三维重建,得到所述三维视觉地图。所述地图构建模块,还用于建立包括所述三维视觉地图包含的每一幅所述场景图像的相关信息的三维视觉地图数据库。所述地图构建模块401的具体功能可以执行如图3所描述的视觉定位方法的步骤31、步骤32。
所述第一定位模块402,用于获取待定位图像,在预先构建的三维视觉地图数据库中检索得到至少一个图像为候选图像,所述候选图像与所述待定位图像的全局特征向量相似度大于阈值。所述第一定位模块402的具体功能可以执行如图2所描述的视觉定位方法的步骤21、步骤22。
所述第二定位模块403,用于分别计算所述待定位图像与至少一个所述候选图像各自的相对位姿信息,利用所述计算得到的相对位姿信息得到所述待定位图像相对于三维视觉地图的至少一个位姿结果;对至少一个所述位姿结果进行校验测试,输出所述校验测试中得分最高的位姿结果。所述第二定位模块403的具体功能可以执行如图2所描述的视觉定位方法的步骤23、步骤24。
所述全局特征提取模块404,用于接收所述待定位图像,输出所述待定位图像的全局特征向量;在预先构建的所述三维视觉地图数据库中检索确定与所述待定位图像的全局特征向量的相似度大于阈值的至少一个图像为所述候选图像。所述全局特征提取模块404满足||do-dp||<||do-dq||;其中,所述do、dp、dq分别为图像Xo、Xp、Xq利用所述全局特征提取模块获取的对应的全局特征向量,所述图像Xo和Xp的相似度高于所述图像Xo和Xq的相似度。所述全局特征提取模块404的具体功能可以如前文所述。
所述局部姿态计算模块405,用于接收选取的至少一个所述候选图像,分别输出每一个所选取的候选图像与所述待定位的相对位姿信息。所述局部姿态计算模块405满足Top与T′op的差值小于预设阈值;其中,所述T′op是图像Xo、Xp利用所述局部姿态计算模块得到的相对位姿信息,所述Top是图像Xo、Xp的真实相对位姿信息。在本申请实施例的一个可选方案中,所述局部姿态计算模块405还包括语义约束条件和/或几何约束条件。所述局部姿态计算模块405的具体功能可以如前文所述。
在本申请实施例中,所述地图构建模块401、第一定位模块402、第二定位模块403、全局特征提取模块404和局部姿态计算模块405可以集成在设备上,例如集成在设备的处理器上,设备的处理器可以是CPU、服务器,或者其他中央处理器等。
本申请实施例还提供计算机设备。具体请参阅图6,图6为本实施例计算机设备基本结构框图。
所述计算机设备10可以作为云端服务器,包括通过系统总线相互通信连接存储器1001、处理器1002、网络接口1003。需要指出的是,图中仅示出了具有组件1001、1002、1003的计算机设备10,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器1001至少包括一种类型的可读存储介质,所述可读存储介质包括非易失性存储器(non-volatile memory)或易失性存储器,例如,闪存(flash memory)、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦写可编程只读存储器(erasableprogrammable read-only memory,EPROM)、电可擦写可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、可编程只读存储器(programmableread-only memory,PROM)、磁性存储器、磁盘、光盘等,所述RAM可以包括静态RAM或动态RAM。在一些实施例中,所述存储器1001可以是所述计算机设备10的内部存储单元,例如,该计算机设备10的硬盘或内存。在另一些实施例中,所述存储器1001也可以是所述计算机设备10的外部存储设备,例如该计算机设备10上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器1001还可以既包括所述计算机设备10的内部存储单元也包括其外部存储设备。本实施例中,所述存储器1001通常用于存储安装于所述计算机设备10的操作系统和各类应用软件,例如视觉定位方法的程序代码等。此外,所述存储器1001还可以用于暂时地存储已经输出或者将要输出的各类数据。
在本申请实施例中,该处理器1002可以是中央处理单元(Central ProcessingUnit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器1002还可以是其他通用处理器、数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,例如单片机等。
该处理器1002通常用于控制所述计算机设备10的总体操作。本实施例中,所述存储器1001用于存储程序代码或指令,所述程序代码包括计算机操作指令,所述处理器1002用于执行所述存储器1001存储的程序代码或指令或者处理数据,例如运行所述视觉定位方法的程序代码。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,EISA)总线等。该总线系统可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本申请的另一实施例还提供一种计算机可读介质,计算机可读介质可以是计算机可读信号介质或者计算机可读介质。计算机中的处理器读取存储在计算机可读介质中的计算机可读程序代码,使得处理器能够执行在流程图2、图3中每个步骤、或各步骤的组合中规定的功能动作;生成实施在框图的每一块、或各块的组合中规定的功能动作的装置。
计算机可读介质包含但不限于电子、磁性、光学、电磁、红外的存储器或半导体系统、设备或者装置,或者前述的任意适当组合,所述存储器用于存储程序代码或指令,所述程序代码包括计算机操作指令,所述处理器用于执行所述存储器存储的程序代码或指令。
所述存储器和所述处理器的定义,可以参考前述计算机设备实施例的描述,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所属技术领域的技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,并被通讯设备内部的处理器执行,前述的程序在被执行时处理器可以执行包括上述方法实施例的全部或者部分步骤。其中,所述处理器可以作为一个或多个处理器芯片实施,或者可以为一个或多个专用集成电路(Application Specific Integrated Circuit,ASIC)的一部分;而前述的存储介质可以包括但不限于以下类型的存储介质:闪存(Flash Memory)、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (16)

1.一种视觉定位方法,其特征在于,所述方法包括:
获取待定位图像,在预先构建的三维视觉地图数据库中检索得到至少一个图像为候选图像,所述候选图像与所述待定位图像的全局特征向量相似度大于阈值;
分别计算所述待定位图像与至少一个所述候选图像各自的相对位姿信息,利用所述计算得到的相对位姿信息得到所述待定位图像相对于三维视觉地图的至少一个位姿结果;
对至少一个所述位姿结果进行校验测试,输出所述校验测试中得分最高的位姿结果。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
利用图像采集设备采集目标区域内的场景图像,对所述场景图像进行三维重建,得到所述三维视觉地图;
建立包括所述三维视觉地图包含的每一幅所述场景图像的相关信息的三维视觉地图数据库。
3.如权利要求1所述的方法,其特征在于,所述在预先构建的三维视觉地图数据库中检索得到至少一个图像为候选图像具体包括:
利用全局特征提取网络获取所述待定位图像的全局特征向量;
在预先构建的所述三维视觉地图数据库中检索确定与所述待定位图像的全局特征向量的相似度大于阈值的至少一个图像为所述候选图像。
4.如权利要求3所述的方法,其特征在于,所述全局特征提取网络满足||do-dp||<||do-dq||;
其中,所述do、dp、dq分别为图像Xo、Xp、Xq利用所述全局特征提取网络获取的对应的全局特征向量,所述图像Xo和Xp的相似度高于所述图像Xo和Xq的相似度。
5.如权利要求1所述的方法,其特征在于,所述分别计算所述待定位图像与每个所述候选图像各自的相对位姿信息具体包括:
选取至少一个所述候选图像;
利用局部姿态计算网络,分别得到每一个所选取的候选图像与所述待定位的相对位姿信息。
6.如权利要求5所述的方法,其特征在于,所述局部姿态计算网络满足Top与T′op的差值小于预设阈值;
其中,所述T′op是图像Xo、Xp利用所述局部姿态计算网络得到的相对位姿信息,所述Top是图像Xo、Xp的真实相对位姿信息。
7.如权利要求6所述的方法,其特征在于,所述局部姿态计算网络还包括语义约束条件和/或几何约束条件。
8.一种视觉定位系统,其特征在于,包括:处理器和存储器;
所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时执行如权利要求1-7任意一项所述的视觉定位方法的步骤。
9.一种视觉定位系统,其特征在于,所述系统包括第一定位模块、第二定位模块,其中:
所述第一定位模块,用于获取待定位图像,在预先构建的三维视觉地图数据库中检索得到至少一个图像为候选图像,所述候选图像与所述待定位图像的全局特征向量相似度大于阈值;
所述第二定位模块,用于分别计算所述待定位图像与至少一个所述候选图像各自的相对位姿信息,利用所述计算得到的相对位姿信息得到所述待定位图像相对于三维视觉地图的至少一个位姿结果;对至少一个所述位姿结果进行校验测试,输出所述校验测试中得分最高的位姿结果。
10.如权利要求9所述的系统,其特征在于,所述系统还包括地图构建模块,其中:
所述地图构建模块,用于利用图像采集设备采集目标区域内的场景图像,对所述场景图像进行三维重建,得到所述三维视觉地图;
所述地图构建模块,还用于建立包括所述三维视觉地图包含的每一幅所述场景图像的相关信息的三维视觉地图数据库。
11.如权利要求9所述的系统,其特征在于,所述系统还包括全局特征提取模块,其中:
所述全局特征提取模块,用于接收所述待定位图像,输出所述待定位图像的全局特征向量;在预先构建的所述三维视觉地图数据库中检索确定与所述待定位图像的全局特征向量的相似度大于阈值的至少一个图像为所述候选图像。
12.如权利要求11所述的系统,其特征在于,所述全局特征提取模块满足||do-dp||<||do-dq||;
其中,所述do、dp、dq分别为图像Xo、Xp、Xq利用所述全局特征提取模块获取的对应的全局特征向量,所述图像Xo和Xp的相似度高于所述图像Xo和Xq的相似度。
13.如权利要求9所述的系统,其特征在于,所述系统还包括局部姿态计算模块,其中:
所述局部姿态计算模块,用于接收选取的至少一个所述候选图像,分别输出每一个所选取的候选图像与所述待定位的相对位姿信息。
14.如权利要求13所述的系统,其特征在于,所述局部姿态计算模块满足Top与T′op的差值小于预设阈值;
其中,所述T′op是图像Xo、Xp利用所述局部姿态计算模块得到的相对位姿信息,所述Top是图像Xo、Xp的真实相对位姿信息。
15.如权利要求14所述的系统,其特征在于,所述局部姿态计算模块还包括语义约束条件和/或几何约束条件。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的视觉定位方法的步骤。
CN201911299956.5A 2019-12-16 2019-12-16 一种视觉定位方法、系统及计算机可读存储介质 Pending CN111046125A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911299956.5A CN111046125A (zh) 2019-12-16 2019-12-16 一种视觉定位方法、系统及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911299956.5A CN111046125A (zh) 2019-12-16 2019-12-16 一种视觉定位方法、系统及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN111046125A true CN111046125A (zh) 2020-04-21

Family

ID=70236812

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911299956.5A Pending CN111046125A (zh) 2019-12-16 2019-12-16 一种视觉定位方法、系统及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN111046125A (zh)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538855A (zh) * 2020-04-29 2020-08-14 浙江商汤科技开发有限公司 视觉定位方法及装置、电子设备和存储介质
CN111627065A (zh) * 2020-05-15 2020-09-04 Oppo广东移动通信有限公司 一种视觉定位方法及装置、存储介质
CN111652929A (zh) * 2020-06-03 2020-09-11 全球能源互联网研究院有限公司 一种视觉特征的识别定位方法及系统
CN111652934A (zh) * 2020-05-12 2020-09-11 Oppo广东移动通信有限公司 定位方法及地图构建方法、装置、设备、存储介质
CN111724443A (zh) * 2020-06-09 2020-09-29 中国科学院自动化研究所 基于生成式对抗网络的统一场景视觉定位方法
CN111967481A (zh) * 2020-09-18 2020-11-20 北京百度网讯科技有限公司 视觉定位方法、装置、电子设备及存储介质
CN112001947A (zh) * 2020-07-30 2020-11-27 海尔优家智能科技(北京)有限公司 拍摄位置的确定方法及装置、存储介质、电子装置
CN112529913A (zh) * 2020-12-14 2021-03-19 北京达佳互联信息技术有限公司 图像分割模型训练方法、图像处理方法及装置
CN112699266A (zh) * 2020-12-30 2021-04-23 视辰信息科技(上海)有限公司 一种基于关键帧相关性的视觉地图定位方法和系统
CN113298871A (zh) * 2021-05-14 2021-08-24 视辰信息科技(上海)有限公司 地图生成方法、定位方法及其系统、计算机可读存储介质
CN113393515A (zh) * 2021-05-21 2021-09-14 杭州易现先进科技有限公司 一种结合场景标注信息的视觉定位方法和系统
CN113409470A (zh) * 2021-06-18 2021-09-17 杭州灵伴科技有限公司 基于ar的场景导览方法、ar眼镜、电子装置和存储介质
CN113804222A (zh) * 2021-11-16 2021-12-17 浙江欣奕华智能科技有限公司 一种定位精度的测试方法、装置、设备及存储介质
CN113844674A (zh) * 2020-12-30 2021-12-28 上海飞机制造有限公司 紧固件安装状态检测方法、装置、电子设备及介质
CN113899363A (zh) * 2021-09-29 2022-01-07 北京百度网讯科技有限公司 车辆的定位方法、装置及自动驾驶车辆
CN113936064A (zh) * 2021-12-17 2022-01-14 荣耀终端有限公司 定位方法和装置
WO2022247126A1 (zh) * 2021-05-24 2022-12-01 浙江商汤科技开发有限公司 视觉定位方法、装置、设备、介质及程序
US20230063099A1 (en) * 2021-08-24 2023-03-02 Beijing Baidu Netcom Science Technology Co., Ltd. Method and apparatus for correcting positioning information, and storage medium
WO2023124948A1 (zh) * 2021-12-31 2023-07-06 华为技术有限公司 一种三维地图的创建方法及电子设备
CN116776909A (zh) * 2023-08-28 2023-09-19 四川星点网络技术有限公司 一种瓶盖二维码溯源系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110249867A1 (en) * 2010-04-13 2011-10-13 International Business Machines Corporation Detection of objects in digital images
CN106461400A (zh) * 2014-06-27 2017-02-22 克朗设备公司 使用关联特征对的车辆位置确定或导航
CN107084727A (zh) * 2017-04-12 2017-08-22 武汉理工大学 一种基于高精度三维地图的视觉定位系统及方法
CN108229416A (zh) * 2018-01-17 2018-06-29 苏州科技大学 基于语义分割技术的机器人slam方法
CN109086745A (zh) * 2018-08-31 2018-12-25 广东工业大学 一种定位方法、装置、设备以及计算机可读存储介质
CN109584299A (zh) * 2018-11-13 2019-04-05 深圳前海达闼云端智能科技有限公司 一种定位方法、定位装置、终端及存储介质
CN109948709A (zh) * 2019-03-21 2019-06-28 南京斯玛唯得智能技术有限公司 一种目标对象的多任务属性识别系统
CN110335319A (zh) * 2019-06-26 2019-10-15 华中科技大学 一种语义驱动的相机定位与地图重建方法和系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110249867A1 (en) * 2010-04-13 2011-10-13 International Business Machines Corporation Detection of objects in digital images
CN106461400A (zh) * 2014-06-27 2017-02-22 克朗设备公司 使用关联特征对的车辆位置确定或导航
CN107084727A (zh) * 2017-04-12 2017-08-22 武汉理工大学 一种基于高精度三维地图的视觉定位系统及方法
CN108229416A (zh) * 2018-01-17 2018-06-29 苏州科技大学 基于语义分割技术的机器人slam方法
CN109086745A (zh) * 2018-08-31 2018-12-25 广东工业大学 一种定位方法、装置、设备以及计算机可读存储介质
CN109584299A (zh) * 2018-11-13 2019-04-05 深圳前海达闼云端智能科技有限公司 一种定位方法、定位装置、终端及存储介质
CN109948709A (zh) * 2019-03-21 2019-06-28 南京斯玛唯得智能技术有限公司 一种目标对象的多任务属性识别系统
CN110335319A (zh) * 2019-06-26 2019-10-15 华中科技大学 一种语义驱动的相机定位与地图重建方法和系统

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538855A (zh) * 2020-04-29 2020-08-14 浙江商汤科技开发有限公司 视觉定位方法及装置、电子设备和存储介质
CN111538855B (zh) * 2020-04-29 2024-03-08 浙江商汤科技开发有限公司 视觉定位方法及装置、电子设备和存储介质
CN111652934A (zh) * 2020-05-12 2020-09-11 Oppo广东移动通信有限公司 定位方法及地图构建方法、装置、设备、存储介质
CN111627065A (zh) * 2020-05-15 2020-09-04 Oppo广东移动通信有限公司 一种视觉定位方法及装置、存储介质
CN111627065B (zh) * 2020-05-15 2023-06-20 Oppo广东移动通信有限公司 一种视觉定位方法及装置、存储介质
CN111652929A (zh) * 2020-06-03 2020-09-11 全球能源互联网研究院有限公司 一种视觉特征的识别定位方法及系统
CN111724443B (zh) * 2020-06-09 2022-11-08 中国科学院自动化研究所 基于生成式对抗网络的统一场景视觉定位方法
CN111724443A (zh) * 2020-06-09 2020-09-29 中国科学院自动化研究所 基于生成式对抗网络的统一场景视觉定位方法
CN112001947A (zh) * 2020-07-30 2020-11-27 海尔优家智能科技(北京)有限公司 拍摄位置的确定方法及装置、存储介质、电子装置
CN111967481A (zh) * 2020-09-18 2020-11-20 北京百度网讯科技有限公司 视觉定位方法、装置、电子设备及存储介质
CN111967481B (zh) * 2020-09-18 2023-06-20 北京百度网讯科技有限公司 视觉定位方法、装置、电子设备及存储介质
CN112529913A (zh) * 2020-12-14 2021-03-19 北京达佳互联信息技术有限公司 图像分割模型训练方法、图像处理方法及装置
CN113844674A (zh) * 2020-12-30 2021-12-28 上海飞机制造有限公司 紧固件安装状态检测方法、装置、电子设备及介质
CN112699266A (zh) * 2020-12-30 2021-04-23 视辰信息科技(上海)有限公司 一种基于关键帧相关性的视觉地图定位方法和系统
CN113844674B (zh) * 2020-12-30 2024-03-01 上海飞机制造有限公司 紧固件安装状态检测方法、装置、电子设备及介质
CN113298871B (zh) * 2021-05-14 2022-05-24 视辰信息科技(上海)有限公司 地图生成方法、定位方法及其系统、计算机可读存储介质
CN113298871A (zh) * 2021-05-14 2021-08-24 视辰信息科技(上海)有限公司 地图生成方法、定位方法及其系统、计算机可读存储介质
CN113393515B (zh) * 2021-05-21 2023-09-19 杭州易现先进科技有限公司 一种结合场景标注信息的视觉定位方法和系统
CN113393515A (zh) * 2021-05-21 2021-09-14 杭州易现先进科技有限公司 一种结合场景标注信息的视觉定位方法和系统
WO2022247126A1 (zh) * 2021-05-24 2022-12-01 浙江商汤科技开发有限公司 视觉定位方法、装置、设备、介质及程序
CN113409470A (zh) * 2021-06-18 2021-09-17 杭州灵伴科技有限公司 基于ar的场景导览方法、ar眼镜、电子装置和存储介质
US20230063099A1 (en) * 2021-08-24 2023-03-02 Beijing Baidu Netcom Science Technology Co., Ltd. Method and apparatus for correcting positioning information, and storage medium
CN113899363A (zh) * 2021-09-29 2022-01-07 北京百度网讯科技有限公司 车辆的定位方法、装置及自动驾驶车辆
US11953609B2 (en) 2021-09-29 2024-04-09 Beijing Baidu Netcom Science Technology Co., Ltd. Vehicle positioning method, apparatus and autonomous driving vehicle
CN113804222B (zh) * 2021-11-16 2022-03-04 浙江欣奕华智能科技有限公司 一种定位精度的测试方法、装置、设备及存储介质
CN113804222A (zh) * 2021-11-16 2021-12-17 浙江欣奕华智能科技有限公司 一种定位精度的测试方法、装置、设备及存储介质
CN113936064A (zh) * 2021-12-17 2022-01-14 荣耀终端有限公司 定位方法和装置
WO2023124948A1 (zh) * 2021-12-31 2023-07-06 华为技术有限公司 一种三维地图的创建方法及电子设备
CN116776909A (zh) * 2023-08-28 2023-09-19 四川星点网络技术有限公司 一种瓶盖二维码溯源系统
CN116776909B (zh) * 2023-08-28 2023-11-03 四川星点网络技术有限公司 一种瓶盖二维码溯源系统

Similar Documents

Publication Publication Date Title
CN111046125A (zh) 一种视觉定位方法、系统及计算机可读存储介质
Chen et al. City-scale landmark identification on mobile devices
CN105637530B (zh) 一种使用众包视频的3d模型更新的方法及系统
Sun et al. A dataset for benchmarking image-based localization
Li et al. Camera localization for augmented reality and indoor positioning: a vision-based 3D feature database approach
CN111459269B (zh) 一种增强现实显示方法、系统及计算机可读存储介质
EP3274964B1 (en) Automatic connection of images using visual features
CN112435338B (zh) 电子地图的兴趣点的位置获取方法、装置及电子设备
US10089762B2 (en) Methods for navigating through a set of images
US11276201B1 (en) Localizing an augmented reality device
US10810466B2 (en) Method for location inference from map images
US20150371396A1 (en) Constructing a 3d structure
CN112348885A (zh) 视觉特征库的构建方法、视觉定位方法、装置和存储介质
CN110926478A (zh) 一种ar导航路线纠偏方法、系统及计算机可读存储介质
WO2022247126A1 (zh) 视觉定位方法、装置、设备、介质及程序
CN113592015B (zh) 定位以及训练特征匹配网络的方法和装置
Turk et al. Computer vision for mobile augmented reality
KR102249381B1 (ko) 3차원 영상 정보를 이용한 모바일 디바이스의 공간 정보 생성 시스템 및 방법
CN114674328B (zh) 地图生成方法、装置、电子设备、存储介质、及车辆
CN115393423A (zh) 目标检测方法和装置
WO2021244114A1 (zh) 视觉定位方法和装置
Ayadi et al. A skyline-based approach for mobile augmented reality
CN114140512A (zh) 一种图像处理方法以及相关设备
Porzi et al. An automatic image-to-DEM alignment approach for annotating mountains pictures on a smartphone
CN113409470A (zh) 基于ar的场景导览方法、ar眼镜、电子装置和存储介质

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200421

RJ01 Rejection of invention patent application after publication