CN113936064B - 定位方法和装置 - Google Patents

定位方法和装置 Download PDF

Info

Publication number
CN113936064B
CN113936064B CN202111545059.5A CN202111545059A CN113936064B CN 113936064 B CN113936064 B CN 113936064B CN 202111545059 A CN202111545059 A CN 202111545059A CN 113936064 B CN113936064 B CN 113936064B
Authority
CN
China
Prior art keywords
image
target image
feature descriptor
image set
topological structure
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
Application number
CN202111545059.5A
Other languages
English (en)
Other versions
CN113936064A (zh
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.)
Shanghai Glory Smart Technology Development Co ltd
Original Assignee
Honor Device 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 Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202111545059.5A priority Critical patent/CN113936064B/zh
Publication of CN113936064A publication Critical patent/CN113936064A/zh
Application granted granted Critical
Publication of CN113936064B publication Critical patent/CN113936064B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Image Analysis (AREA)

Abstract

本申请实施例提供一种定位方法和装置,涉及终端技术领域,方法包括:第二设备接收来自第一设备的目标图像;第二设备构建目标图像对应的拓扑结构描述向量;第二设备利用目标图像对应的拓扑结构描述向量对预设的图像集进行筛选,得到第一候选图像集;第二设备基于目标图像的特征描述子信息以及第一候选图像集中的图像的特征描述子信息,计算得到目标图像对应的位置和朝向;第二设备向第一设备发送目标图像对应的位置和朝向。这样,第二设备可以基于拓扑结构描述向量从预设的地图图像数据库中筛选出与目标图像较为匹配的候选图像,进而通过候选图像中的图像与目标图像的匹配,确定更为准确的目标图像的位姿。

Description

定位方法和装置
技术领域
本申请涉及终端技术领域,尤其涉及一种定位方法和装置。
背景技术
随着互联网的普及和发展,人们对于终端设备的功能需求也越发多样化,例如用户可以利用终端设备中的导航功能指示方向。而随着技术的不断发展,增强现实(augmented reality,AR)导航也以其实景导航的优势,为用户提供可视化的路线导航。
然而,在用户使用AR导航的过程中,可能存在定位不准确的问题,使得AR导航所指示的路线的准确性较低。
发明内容
本申请实施例提供一种定位方法和装置,云端设备可以基于终端设备拍摄得到的目标图像,构建用于指示目标图像中的对象的相对位置关系的拓扑结构描述向量,并通过拓扑结构描述向量从地图图像数据库中筛选出与目标图像较为匹配的候选图像,进而通过候选图像中的任一图像与目标图像的匹配,确定目标图像的位姿,使得终端设备可以基于目标图像的位姿为用户提供准确的导航路线。
第一方面,本申请实施例提供一种定位方法,方法包括:第二设备接收来自第一设备的目标图像;第二设备构建目标图像对应的拓扑结构描述向量;拓扑结构描述向量用于指示图像中的多个对象、以及多个对象之间的相对位置关系;第二设备利用目标图像对应的拓扑结构描述向量对预设的图像集进行筛选,得到第一候选图像集;第二设备基于目标图像的特征描述子信息以及第一候选图像集中的图像的特征描述子信息,计算得到目标图像对应的位置和朝向;特征描述子信息用于指示图像中包含特征点的区域;第二设备向第一设备发送目标图像对应的位置和朝向。
这样,第二设备可以基于第一设备拍摄得到的目标图像,构建用于指示目标图像中的对象的相对位置关系的拓扑结构描述向量,并基于拓扑结构描述向量从预设的地图图像数据库中筛选出与目标图像较为匹配的候选图像,进而通过候选图像中的任一图像与目标图像的匹配,确定目标图像的位姿,使得第一设备可以基于目标图像的位姿为用户提供准确的导航路线。其中,第一设备可以为本申请实施例中的终端设备,第二设备可以为本申请实施例中的云端设备,位置和朝向可以为本申请实施例中的位姿。
在一种可能的实现方式中,第二设备构建目标图像对应的拓扑结构描述向量,包括:第二设备获取目标图像对应的语义信息;语义信息用于指示目标图像中的多个对象、以及多个对象的位置;第二设备基于语义信息构建目标图像对应的拓扑结构描述向量。这样,第二设备可以通过语义信息构建拓扑结构描述向量,使得拓扑结构描述向量能够更为准确的体现出图像中包含的对象的特征。
在一种可能的实现方式中,第二设备利用目标图像对应的拓扑结构描述向量对预设的图像集进行筛选,得到第一候选图像集,包括:第二设备获取预设的图像集中的图像的拓扑结构描述向量;当目标图像对应的拓扑结构描述向量与预设的图像集中的图像的拓扑结构描述向量的第一相似度大于第一阈值时,第二设备提取第一相似度大于第一阈值时对应的预设的图像集中的图像,得到第一候选图像集。这样,第二设备可以通过拓扑结构描述向量对预设的图像集进行筛选,可以能够避免由于物体间位置的细微移动对筛选过程的影响,增加算法的鲁棒性。
在一种可能的实现方式中,第二设备利用目标图像对应的拓扑结构描述向量对预设的图像集进行筛选,得到第一候选图像集,包括:第二设备构建目标图像对应的图像特征描述符向量;其中,图像特征描述符向量用于指示特征描述子信息属于多个类中的一个类的数量;多个类是由目标图像中的特征描述子信息的聚类构成的;第二设备利用目标图像对应的图像特征描述符向量对预设的图像集进行筛选,得到第二候选图像集;第二设备利用目标图像对应的拓扑结构描述向量对第二候选图像集进行筛选,得到第一候选图像集。这样,第二设备可以基于图像特征描述符向量对图像集进行再次筛选,使得筛选出的图像集与目标图像的相似度较高,进而基于筛选出的图像集以及目标图像计算得到更为准确的位姿。
在一种可能的实现方式中,第二设备构建目标图像对应的图像特征描述符向量,包括:第二设备获取目标图像对应的特征描述子信息;第二设备利用目标图像对应的特征描述子信息,构建目标图像对应的图像特征描述符向量。这样,第二设备可以通过特征描述子信息构建图像特征描述符向量,使得图像特征描述符向量能够更为准确的体现出图像中的特征点的聚类情况。
在一种可能的实现方式中,第二设备利用目标图像对应的图像特征描述符向量对预设的图像集进行筛选,得到第二候选图像集,包括:第二设备获取预设的图像集中的图像对应的图像特征描述符向量;当目标图像对应的图像特征描述符向量与预设的图像集中的图像对应的图像特征描述符向量的第二相似度大于第二阈值时,第二设备提取第二相似度大于第二阈值时对应的预设的图像集中的图像,得到第二候选图像集。这样,第二设备可以通过图像特征描述符向量对预设的图像集进行筛选,得到与目标图像相似度更高的图像集,使得基于筛选出的图像以及目标图像计算得到的位姿具有更高的准确性。
第二方面,本申请实施例提供一种定位装置,装置包括:通信单元以及处理单元,通信单元,用于接收来自第一设备的目标图像;处理单元,用于构建目标图像对应的拓扑结构描述向量;拓扑结构描述向量用于指示图像中的多个对象、以及多个对象之间的相对位置关系;处理单元,还用于利用目标图像对应的拓扑结构描述向量对预设的图像集进行筛选,得到第一候选图像集;处理单元,还用于基于目标图像的特征描述子信息以及第一候选图像集中的图像的特征描述子信息,计算得到目标图像对应的位置和朝向;特征描述子信息用于指示图像中包含特征点的区域;通信单元,还用于向第一设备发送目标图像对应的位置和朝向。
在一种可能的实现方式中,处理单元,具体用于:获取目标图像对应的语义信息;语义信息用于指示目标图像中的多个对象、以及多个对象的位置;基于语义信息构建目标图像对应的拓扑结构描述向量。
在一种可能的实现方式中,处理单元,具体用于:获取预设的图像集中的图像的拓扑结构描述向量;当目标图像对应的拓扑结构描述向量与预设的图像集中的图像的拓扑结构描述向量的第一相似度大于第一阈值时,提取第一相似度大于第一阈值时对应的预设的图像集中的图像,得到第一候选图像集。
在一种可能的实现方式中,处理单元,具体用于:构建目标图像对应的图像特征描述符向量;其中,图像特征描述符向量用于指示特征描述子信息属于多个类中的一个类的数量;多个类是由目标图像中的特征描述子信息的聚类构成的;利用目标图像对应的图像特征描述符向量对预设的图像集进行筛选,得到第二候选图像集;利用目标图像对应的拓扑结构描述向量对第二候选图像集进行筛选,得到第一候选图像集。
在一种可能的实现方式中,处理单元,具体用于:获取目标图像对应的特征描述子信息;利用目标图像对应的特征描述子信息,构建目标图像对应的图像特征描述符向量。
在一种可能的实现方式中,处理单元,具体用于:获取预设的图像集中的图像对应的图像特征描述符向量;当目标图像对应的图像特征描述符向量与预设的图像集中的图像对应的图像特征描述符向量的第二相似度大于第二阈值时,提取第二相似度大于第二阈值时对应的预设的图像集中的图像,得到第二候选图像集。
第三方面,本申请实施例提供一种电子设备,包括处理器和存储器,存储器用于存储代码指令;处理器用于运行代码指令,使得电子设备以执行如第一方面或第一方面的任一种实现方式中描述的定位方法。
第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质存储有指令,当指令被执行时,使得计算机执行如第一方面或第一方面的任一种实现方式中描述的定位方法。
第五方面,一种计算机程序产品,包括计算机程序,当计算机程序被运行时,使得计算机执行如第一方面或第一方面的任一种实现方式中描述的定位方法。
应当理解的是,本申请的第二方面至第五方面与本申请的第一方面的技术方案相对应,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
附图说明
图1为本申请实施例提供的一种场景示意图;
图2为一种定位方法的流程示意图;
图3为本申请实施例提供的一种终端设备的硬件结构示意图;
图4为本申请实施例提供的一种定位方法的流程示意图;
图5为本申请实施例提供的另一种导航界面示意图;
图6为本申请实施例提供的一种环境图像的示意图;
图7为本申请实施例提供的一种PNP算法的原理示意图;
图8为本申请实施例提供的一种定位装置的结构示意图;
图9为本申请实施例提供的一种控制设备的硬件结构示意图;
图10为本申请实施例提供的一种芯片的结构示意图。
具体实施方式
下面对本申请实施例中所描述的词汇进行说明。可以理解,该说明是为更加清楚的解释本申请实施例,并不必然构成对本申请实施例的限定。
描述子(或称特征描述子):可以用于反映图像的特征。例如,描述子可以为对特征点(如角点)周围区域的一种描述,如该描述子可以理解为一个描述特征点周围S*S的区块的向量。
角点:可以用于反映图像的局部结构特征,其可以被描述成灰度强度变化不连续的点,被称为灰度图像上的奇异特征点。其中,角点以及描述子可以共同用于描述语义特征。
语义信息:图像的语义可以分为视觉层、对象层以及概念层。其中,该视觉层可以为底层特征语义,例如颜色、纹理、和形状等;该对象层可以为中间层,包含属性特征,如某一对象在某一时刻的状态;该概念层可以为高层,可以理解为最接近用户理解的描述。本申请实施例中,该语义信息可以包括语义特征在图像中的位置信息、以及图像中语义特征的属性信息。
角度-N-点(perspective-n-point ,PNP):是指在给定一组n个3D点及其在图像中相应的2D投影的情况下,估计相机位姿的问题。例如,在已知的n个三维空间点坐标(如相对于某个指定的坐标系A)及其二维投影位置的情况下,估计相机的位姿(如相机在坐标系A下的位姿)。其中,该相机的位姿可以包括相机方向、以及相机光心位置。
为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一值和第二值仅仅是为了区分不同的值,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
需要说明的是,本申请中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a和b,a和c,b和c,或a、b和c,其中a,b,c可以是单个,也可以是多个。
通信技术的发展带动着各类业务的出现,例如定位技术,尤其是视觉定位技术逐渐融入人们的日常生活。其中,视觉定位技术通过使用拍摄的图片作为数据来源,与离线地图进行匹配,实现定位功能,其具有时间短、功耗少等显著特点。
示例性的,图1为本申请实施例提供的一种导航界面示意图。在图1对应的实施例中,以终端设备为手机为例进行示例说明,该示例并不构成对本申请实施例的限定。
当用户需要从当前位置走到饭店所在的位置时,用户可以利用手机中的导航功能,例如AR导航指示路线。例如,当手机接收到用户打开AR导航功能,并利用该AR导航指示由当前位置到饭店103的路线时,手机可以显示如图1所示的界面。如图1所示,该界面中可以包括用于指示用户当前位置的标识如用户101、用于指示导航路线的多个箭头、超市102、饭店103、用于指示当前处于AR导航界面的标识105、以及用于文字指示导航路线的提示信息104,该提示信息104可以显示为直行100米后右转。
可能的实现方式中,在用户利用AR导航指示路线的过程中,手机可以基于如图2对应的实施例中描述的定位方法,基于摄像头获取当前的环境图像,并基于环境图像以及预设的地图数据库确定用户当前的位置信息。示例性的,图2为一种定位方法的流程示意图。
如图2所示,手机可以基于摄像头获取输入图像,并将该输入图像发送至云端设备(或称云端);云端设备接收到输入图像,并提取该输入图像的特征描述子,基于特征描述子建立输入图像的图像特征描述符向量;并利用输入图像的图像特征描述符向量,在云端设备存储的地图图像数据库中筛选出与该输入图像的图像特征描述符向量相似度大于阈值的图像(如图2所示的排序靠前的图像)作为候选图像集;进一步的,对候选图像集中的图像以及输入图像分别进行特征提取、特征匹配、以及PNP位姿计算,得到输入图像的位姿;云端设备将该输入图像的位姿发送至手机;进一步的,如图1所示,手机可以基于用户101的位置信息、以及饭店103所在的位置等信息重新进行路径规划,并利用该AR导航指示由用户101到饭店103的路线。
然而,由于图2对应的实施例中描述的定位方法是基于输入图像的特征描述子得到的,当拍摄处于弱纹理场景中的图像时,则可能无法准确的提取出弱纹理区域(如光滑的地面、或洁白的墙面等)中的特征描述子,进而无法基于弱纹理区域中的特征描述子,计算得到准确的当前位置;并且,当终端设备拍摄的场景中存在重复纹理的情况时,通过上述图像特征符向量的匹配从数据库中找出的候选图像,可能存在候选图像与终端拍摄图像不属于同一个场景的情况,进而难以计算得到准确的当前位置。
有鉴于此,本申请实施例提供一种定位方法,云端设备可以基于终端设备拍摄得到的目标图像,构建用于指示目标图像中的对象的相对位置关系的拓扑结构描述向量,并通过拓扑结构描述向量从地图图像数据库中筛选出与目标图像较为匹配的候选图像,进而通过候选图像中的任一图像与目标图像的匹配,确定目标图像的位姿,使得终端设备可以基于目标图像的位姿为用户提供准确的导航路线。
可以理解的是,本申请实施例提供的一种定位方法的应用场景不限于图1对应的实施例,还可以应用于商场室内导航场景、机场室内导航场景、展览馆室内导航场景、医院导航场景、以及停车场导航场景等。
可能的实现方式中,本申请实施例提供的一种定位方法还可以应用于大规模视觉定位技术场景,例如自动驾驶、或无人机等场景中。该应用场景可以根据实际情况包括其他内容,本申请实施例中对此不做限定。
可以理解的是,上述终端设备也可以称为终端,(terminal)、用户设备(userequipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。终端设备可以为拥有触摸屏的手机(mobile phone)、智能电视、穿戴式设备、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmentedreality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self-driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。本申请的实施例对终端设备所采用的具体技术和具体设备形态不做限定。
因此,为了能够更好地理解本申请实施例,下面对本申请实施例的终端设备的结构进行介绍。示例性的,图3为本申请实施例提供的一种终端设备的结构示意图。
终端设备可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,指示器192,摄像头193,以及显示屏194等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本申请实施例示意的结构并不构成对终端设备的具体限定。在本申请另一些实施例中,终端设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。处理器110中还可以设置存储器,用于存储指令和数据。本申请实施例中,处理器110也可以用于对摄像头采集到的环境图像与预设的地图库中的图像进行匹配、计算进而得到用户当前的位置信息。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为终端设备充电,也可以用于终端设备与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。电源管理模块141用于连接充电管理模块140与处理器110。
终端设备的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。终端设备中的天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。
移动通信模块150可以提供应用在终端设备上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。
无线通信模块160可以提供应用在终端设备上的包括无线局域网(wirelesslocalarea networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequencymodulation,FM)等无线通信的解决方案。
终端设备通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。在一些实施例中,终端设备可以包括1个或N个显示屏194,N为大于1的正整数。本申请实施例中,显示屏194用于显示终端设备基于环境图像的位姿的计算得到的导航路线。
终端设备可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
摄像头193用于捕获静态图像或视频。在一些实施例中,终端设备可以包括1个或N个摄像头193,N为大于1的正整数。本申请实施例中,摄像头193可以用于在用户使用AR导航等功能的过程中采集环境图像,例如摄像头193可以周期性的采集环境图像,或者摄像头193可以在检测到环境变化时采集环境图像,或者摄像头193可以在检测到用户指示的拍照指示时采集环境图像。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展终端设备的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。
终端设备可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。终端设备可以通过扬声器170A收听音乐,或收听免提通话。受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当终端设备接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。耳机接口170D用于连接有线耳机。麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。本申请实施例中,终端设备可以拥有设置一个麦克风170C。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。陀螺仪传感器180B可以用于确定终端设备的运动姿态。气压传感器180C用于测量气压。磁传感器180D包括霍尔传感器。加速度传感器180E可检测终端设备在各个方向上(一般为三轴)加速度的大小。距离传感器180F,用于测量距离。接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。环境光传感器180L用于感知环境光亮度。指纹传感器180H用于采集指纹。温度传感器180J用于检测温度。触摸传感器180K,也称“触控器件”。骨传导传感器180M可以获取振动信号。
触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,或称“触控屏”。其中,该触摸屏内可以设置有电容感测节点网格,当终端设备确定该电容传感器接收到的至少一个网格中的电容的数值超出电容阈值时,则可以确定发生触摸操作;进一步的,终端设备可以基于超出电容阈值的至少一个网格所占的区域,确定触摸操作对应的触摸区域。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。终端设备可以接收按键输入,产生与终端设备的用户设置以及功能控制有关的键信号输入。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
终端设备的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构等,在此不再赘述。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以独立实现,也可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
示例性的,图4为本申请实施例提供的一种定位方法的流程示意图。
可以理解的是,本申请实施例中提供的定位方法中可以涉及终端设备以及云端设备。其中,云端设备可以为用于对终端设备上传的环境图像进行特征提取,基于环境图像以及地图图像数据库中的图像进行特征匹配以及位姿计算的服务器。可以理解的是,由于云端设备通常都具有较强的数据计算能力,因此在云端设备中执行定位方法中的上述步骤可以避免终端设备执行上述步骤时的内存占用,提高定位方法的运行速度。
可能的实现方式中,上述终端设备和云端设备可以建立通信连接,例如终端设备和云端设备可以通过超文本传输协议(hyper text tansfer protocol,HTTP)或基于安全套接字层的超文本传输协议(hyper text transfer trotocol over secure socketlayer,HTTPS)等协议建立通信连接,本申请实施例中对此不做任何限制。
本申请实施例中,图5为本申请实施例提供的另一种导航界面示意图。如图5所示,该界面中可以包括用户101、地点501、地点502、用于重定位的控件503等。该界面中的其他内容与图1所示的界面类似,在此不再赘述。
如图5所示,在用户利用终端设备(如手机)中的AR导航指示路线的过程中,终端设备可以基于摄像头获取环境图像,并将该环境图像发送至云端设备,进而云端设备可以基于下述S402-S406所示的步骤对环境图像以及地图图像数据库中的图像的匹配、和计算得到当前位置。
如图4所示,定位方法可以包括如下步骤:
S401、终端设备获取待定位的环境图像,并将该环境图像上传至云端设备。
本申请实施例中,该环境图像为基于终端设备的摄像头采集到的,该环境图像可以为一张图像或者也可以为多张图像。其中,终端设备可以周期性的获取环境图像,例如每0.5秒钟获取一次环境图像;或者,终端设备可以在检测到当前环境与上一时刻(例如上一帧)的环境图像的相似度大于预设阈值时自动获取环境图像;或者,终端设备也可以基于用户对于终端设备的触发获取环境图像。
如图5所示,当用户101位于地点501所在的位置,而AR导航中指示用户101位于超市门口,例如地点502所在的位置时,用户可以确定当前导航可能定位有误,并通过触发该控件503进行重新定位。例如,当终端设备接收到用户触发该控件503的操作时,终端设备可以基于摄像头获取当前的环境图像,并将环境图像上传至云端设备,进而云端设备可以执行S402所示的步骤。
S402、云端设备提取环境图像的描述子信息以及环境图像的语义信息。
本申请实施例中,该描述子信息为用于指示环境图像的特征信息,例如该描述子信息可以为特征点(例如角点)周围区域的描述。
示例性的,云端设备可以基于加速分段试验(features from acceleratedsegment test,FAST)特征点检测算法、哈里斯(harris)特征点检测算法、尺寸不变特征转换(scale-invariant feature transform,SIFT)特征点检测算法、或加速稳健特征(speeded up robust features,SURF)特征检测算法等生成该环境图像的特征点和/或描述子信息。
示例性的,图6为本申请实施例提供的一种环境图像的示意图。如图6中的a所示,当环境图像中包含水壶、桌子、椅子等物体时,该描述子信息可以包括:水壶的各特征点对应的区块、桌子的各特征点对应的区块以及椅子的各特征点对应的区块等。可以理解的是,一个物体可以由多个描述子信息构成。
本申请实施例中,该语义信息用于指示环境图像中包含的对象(例如物体)的情况,例如该语义信息中可以包括:环境图像中包含对象的位置信息、以及环境图像中包含的对象的属性信息。其中,云端设备可以基于训练好的神经网络模型等方法获取该环境图像的语义信息。
示例性的,如图6中的a所示,当环境图像中包含水壶、桌子、椅子等物体时,该语义信息中可以包括:水壶以及该水壶对应的位置信息、桌子以及该桌子对应的位置信息、和椅子以及该椅子对应的位置信息等。
S403、云端设备根据环境图像的语义信息,构建环境图像的拓扑结构描述向量,并且,根据环境图像的描述子信息,构建环境图像的图像特征描述符向量。
本申请实施例中,该拓扑结构描述向量用于指示环境图像中存在的对象、以及对象之间的相对位置分布情况。其中,云端设备可以通过对语义信息中的各对象的位置信息,例如各对象的坐标值等进行计算,确定任意两个对象间的相对位置分布,得到环境图像的拓扑结构描述向量。
示例性的,如图6中的a所示,当环境图像中包含水壶、桌子、椅子等物体时,该拓扑结构描述向量可以包括:水壶、桌子、椅子、水壶与桌子之间的相对位置分布信息、桌子与椅子之间的相对位置分布信息、和水壶和椅子之间的相对位置分布信息。例如,该拓扑结构描述向量可以指示:水壶位于桌子的上方,桌子位于椅子的左方,水壶位于椅子的左上方等。其中,该相对位置分布信息可以不限于物体间相对方位的描述,本申请实施例中对此不做限定。
本申请实施例中,该图像特征描绘符向量用于描述环境图像的整体特征。其中,云端设备可以通过词袋(bags of words,BOW)算法、改进的局部聚合描述符(vector oflocally aggregated descriptors,VLAD)等方法,基于该图像的描述子信息构建环境图像的图像特征描述符向量。
示例性的,云端利用BOW算法构建描述子信息对应的图像特征描述符向量的过程可以为:云端设备对环境图像中的描述子信息进行聚类,并将描述子信息划分为具体的某一类,每一类可以相当于一个视觉词汇,该视觉词汇可以用于构建视觉词汇库;该环境图像中可以由多个视觉词汇构成,云端设备可以统计该环境图像中的描述子信息属于该视觉词汇库中的任一视觉词汇的数值,进而由该数值得到图像特征描述符向量。例如,若环境图中包含1个桌子、1个椅子以及1个水壶时,可以通过对该桌子、椅子以及水壶各自的语义信息的聚类,得到包含水壶对应的视觉词汇、桌子对应的视觉词汇、以及椅子对应的视觉词汇的视觉词汇库。进一步的,当该环境图像中的描述子信息中,3个描述子信息属于水壶对应的视觉词汇,5个描述子信息属于桌子对应的视觉词汇,以及6个描述子信息属于椅子对应的视觉词汇时,则环境图像中由(水壶,桌子,椅子)构成图像特征描绘符向量可以为(3,5,6)。
S404、云端设备利用环境图像的图像特征描述符向量,对环境图像与地图图像数据库进行匹配,筛选出第一候选图像集。
示例性的,云端设备可以获取地图图像数据库中的各图像的描述子信息;将各图像的描述子信息在S403所示的步骤中得到的视觉词汇库中进行检索,并将描述子信息归为上述视觉词汇数据库中的某一视觉词汇;利用视觉词汇量化图像特征,例如统计各图像的描述子信息属于上述各视觉词汇的次数。
具体的,当视觉词汇库中包含桌子对应的视觉词汇、椅子对应的视觉词汇、以及水壶对应的视觉词汇时,云端设备可以统计地图图像数据库中的各图像的描述子信息属于上述视觉词汇的次数,若地图图像数据库中的某一图像中有4个描述子信息属于水壶对应的视觉词汇,有2个描述子信息属于桌子对应的视觉词汇,且有3个描述子信息属于椅子对应的视觉词汇时,则该图像中用于表示(水壶,桌子,椅子)的特征描述符向量可以为(4,2,3)。可以理解的是,云端设备可以基于上述获取特征描述符向量的方法,获取地图图像数据库中的各图像的特征描述符向量。
进一步的,云端设备可以基于地图图像数据库中的各图像的特征描述符向量,筛选出与环境图像相似度大于预设阈值的图像,得到第一候选图像集。
S405、云端设备利用环境图像的拓扑结构描述向量,对第一候选图像集进行再次筛选,得到第二候选图像集。
本申请实施例中,云端设备可以筛选出该第一候选图像集中的图像的拓扑结构描述向量与该环境图像的拓扑结构描述向量的相似度大于预设阈值的图像,得到第二候选图像集。
示例性的,如图6中的a所示,当该环境图像中的拓扑结构描述向量为:水壶位于桌子的上方、桌子位于椅子的左方、以及水壶位于椅子的左上方,并且,第一候选图像集中包含图像1(如图6中的b所示)以及图像2(如图6中的c所示),如图6中的b所示的图像1的拓扑结构描述向量为:水壶位于桌子的上方、桌子位于椅子的右方、以及水壶位于椅子的右上方,如图6中的c所示的图像2的拓扑结构描述向量为:水壶位于桌子的上方、桌子位于椅子的左方、以及水壶位于椅子的左上方时,则云端可以从图像1以及图像2中筛选出与环境图像相似度较高的图像2。
可以理解的是,通过拓扑结构描述向量对第一候选图像集的筛选过程不仅可以提高筛选出的图像集的准确性;并且,相对于直接利用语义信息对第一候选图像集进行筛选,通过拓扑结构描述向量对第一候选图像集的筛选,还能够避免由于图像中的对象间位置的细微移动对筛选过程的影响,增加算法的鲁棒性。
S406、云端设备根据第二候选图像集、以及环境图像之间的描述子信息的匹配关系,计算得到环境图像的位姿信息。
示例性的,云端设备可以利用PNP方法,对第二候选图像集、以及环境图像进行特征匹配,找到环境图像的2D-3D相关性关系,进而计算得到环境图像的位姿信息。其中,在PNP算法中,云端设备还可以利用直线线性变换(direct linear transform,DLT)、P3P、或Epnp等求解方法进行位姿计算。
可能的实现方式中,云端设备可以利用PNP算法中的直接线性变换方法,基于第二候选图像集的描述子信息、以及环境图像的描述子信息的匹配关系,计算得到环境图像的位姿信息。
具体的,该环境图像可以为2D图像;该第二候选图像集中的图像可以为2D图像,且该第二候选图像集中的图像还具有其2D图像相对应的3D点云地图,因此该第二候选图像集中的图像可以通过描述子信息的索引构建2D-3D相关性关系。云端设备可以通过对环境图像以及第二候选图像集中的任一图像的特征匹配,构建环境图像与第二候选图像集中的任一图像的2D-2D相关性关系;进一步的,云端通过第二候选图像集中的任一图像的2D-3D相关性关系,以及环境图像与该第二候选图像集中的对应图像的2D-2D相关性关系的匹配,得到环境图像的2D-3D相关性关系。可以理解的是,该环境图像的2D-3D相关性关系可以作为PnP算法的输入,使得云端可以通过PnP算法输出环境图像的位姿信息。其中,该2D-2D相关性关系可以理解为2D坐标点与2D坐标点之间的匹配关系,该2D-3D相关性关系可以理解为2D坐标点与3D坐标点之间的匹配关系。
示例性的,图7为本申请实施例提供的一种PNP算法的原理示意图。例如,当输入n个(n≥3)3D点对应世界坐标系下的坐标,如P1,P2,P3,…,Pi,…,Pn,n个3D点对应相机坐标系下的坐标,如Q1,Q2,Q3,…,Qi,…Qn,以及相机的内参矩阵K等参数时,则可以输出相机坐标系(OCXCYCZC)相对于世界坐标系(OwXwYwZw)的位姿(R,t)。
具体的,已知环境图像的2D-3D相关性关系中的任一3D点的坐标为:
Figure 693821DEST_PATH_IMAGE001
; 该3D点的齐次坐标表示为
Figure 775040DEST_PATH_IMAGE002
;该3D点坐标对应的2D点坐标为:
Figure 767267DEST_PATH_IMAGE003
;该2D点的 齐次坐标表示为
Figure 525008DEST_PATH_IMAGE004
;相机的内参矩阵为:
Figure DEST_PATH_IMAGE005
,则可以求解相机的位姿(或理解为环境图 像的位姿信息):R,t。其中,t可以理解为相机的光心位置,R可以理解为相机方向。
其中,投影变换模型为:
Figure 570893DEST_PATH_IMAGE006
进一步展开为:
Figure DEST_PATH_IMAGE007
转换为方程组的形式为:
Figure 908334DEST_PATH_IMAGE008
消去
Figure 20646DEST_PATH_IMAGE009
,整理得:
Figure 700020DEST_PATH_IMAGE010
其中,每组2D-3D匹配对应两个方程,一共12个未知数,因此至少需要6组匹配点才能求取参数(或理解为n=6)。
设有N组匹配点,则:
Figure 694521DEST_PATH_IMAGE011
写成矩阵的形式为:
Figure 570073DEST_PATH_IMAGE012
当N大于6时,可以通过奇异值分解(singular value decomposition,SVD)方法求解F的最小二乘解。
求出F矩阵后,可以得到旋转和平移矩阵为:
Figure DEST_PATH_IMAGE013
Figure 802472DEST_PATH_IMAGE014
可以理解的是,上述得到的R,t可以称为相机的位姿信息(或称为相机的外参),或理解为环境图像的位姿信息。
S407、云端设备将环境图像的位姿信息发送至终端设备。
基于此,云端设备可以基于环境图像的描述子信息、语义信息、以及地图图像数据库精准定位当前的位置,避免弱纹理区域对于定位的影响,进而使得终端设备可以基于用户的位置为提供准确的导航路线。
可能的实现方式中,当终端设备中存储有S404所示的步骤中描述的地图图像数据库时,终端设备也可以在本设备中执行S402-S406所示的步骤中的任一步骤,或者终端设备可以在本设备中执行S402-S406所示的步骤中的全部步骤,本申请实施例中对此不做限定。
基于此,终端设备可以无需与云端设备进行数据交互,仅在本地就能够实现基于拍摄得到的环境图像的定位功能。
可能的实现方式中,当终端设备在预设的时间阈值内接收到云端设备发送的环境图像的位姿信息时,可以基于重新定位得到的位姿信息更新导航路线;或者,当终端设备在预设的时间阈值内未接收到云端设备发送的环境图像的位姿信息时,可以在终端设备的界面中显示提示信息,该提示信息用于提示当前定位失败。
基于此,用户不仅可以基于重新规划的导航路线指示方向,也可以基于提示信息及时察觉到定位失败的情况,并通过切换网络等方式进行重新定位。
可能的实现方式中,在S407之后,终端设备也可以基于环境图像的位姿信息进行路径规划,并将规划后的路线显示在终端设备的界面中。
可以理解的是,本申请实施例所提供的界面仅作为一种示意,并不能构成对本申请实施例的限定。
上面结合图4-图7,对本申请实施例提供的方法进行了说明,下面对本申请实施例提供的执行上述方法的装置进行描述。如图8所示,图8为本申请实施例提供的一种定位装置的结构示意图,该定位装置可以是本申请实施例中的终端设备,也可以是终端设备内的芯片或芯片系统。
如图8所示,定位装置80可以用于通信设备、电路、硬件组件或者芯片中,该定位装置包括:处理单元801以及通信单元802。其中,处理单元801用于支持定位装置执行信息处理的步骤;通信单元802用于指示定位装置执行信息的接收和发送等步骤。其中,通信单元802可以是输入或者输出接口、管脚或者电路等。
具体的,本申请实施例提供一种定位装置80,装置包括:通信单元802以及处理单元801,通信单元802,用于接收来自第一设备的目标图像;处理单元801,用于构建目标图像对应的拓扑结构描述向量;拓扑结构描述向量用于指示图像中的多个对象、以及多个对象之间的相对位置关系;处理单元801,还用于利用目标图像对应的拓扑结构描述向量对预设的图像集进行筛选,得到第一候选图像集;处理单元801,还用于基于目标图像的特征描述子信息以及第一候选图像集中的图像的特征描述子信息,计算得到目标图像对应的位置和朝向;特征描述子信息用于指示图像中包含特征点的区域;通信单元802,还用于向第一设备发送目标图像对应的位置和朝向。
在一种可能的实现方式中,处理单元801,具体用于:获取目标图像对应的语义信息;语义信息用于指示目标图像中的多个对象、以及多个对象的位置;基于语义信息构建目标图像对应的拓扑结构描述向量。
在一种可能的实现方式中,处理单元801,具体用于:获取预设的图像集中的图像的拓扑结构描述向量;当目标图像对应的拓扑结构描述向量与预设的图像集中的图像的拓扑结构描述向量的第一相似度大于第一阈值时,提取第一相似度大于第一阈值时对应的预设的图像集中的图像,得到第一候选图像集。
在一种可能的实现方式中,处理单元801,具体用于:构建目标图像对应的图像特征描述符向量;其中,图像特征描述符向量用于指示特征描述子信息属于多个类中的一个类的数量;多个类是由目标图像中的特征描述子信息的聚类构成的;利用目标图像对应的图像特征描述符向量对预设的图像集进行筛选,得到第二候选图像集;利用目标图像对应的拓扑结构描述向量对第二候选图像集进行筛选,得到第一候选图像集。
在一种可能的实现方式中,处理单元801,具体用于:获取目标图像对应的特征描述子信息;利用目标图像对应的特征描述子信息,构建目标图像对应的图像特征描述符向量。
在一种可能的实现方式中,处理单元801,具体用于:获取预设的图像集中的图像对应的图像特征描述符向量;当目标图像对应的图像特征描述符向量与预设的图像集中的图像对应的图像特征描述符向量的第二相似度大于第二阈值时,提取第二相似度大于第二阈值时对应的预设的图像集中的图像,得到第二候选图像集。
在一种可能的实施例中,定位装置还可以包括:存储单元803。处理单元801、存储单元803通过线路相连。
存储单元803可以包括一个或者多个存储器,存储器可以是一个或者多个设备、电路中用于存储程序或者数据的器件。
存储单元803可以存储终端设备中的方法的计算机执行指令,以使处理单元801执行上述实施例中的方法。存储单元803可以是寄存器、缓存或者RAM等,存储单元803可以和处理单元801集成在一起。存储单元803可以是只读存储器(read-only memory,ROM)或者可存储静态信息和指令的其他类型的静态存储设备,存储单元803可以与处理单元801相独立。
图9为本申请实施例提供的一种控制设备的硬件结构示意图,如图9所示,该控制设备包括处理器901,通信线路904以及至少一个通信接口(图9中示例性的以通信接口903为例进行说明)。
处理器901可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
通信线路904可包括在上述组件之间传送信息的电路。
通信接口903,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线局域网(wireless local area networks,WLAN)等。
可能的,该控制设备还可以包括存储器902。
存储器902可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过通信线路904与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器902用于存储执行本申请方案的计算机执行指令,并由处理器901来控制执行。处理器901用于执行存储器902中存储的计算机执行指令,从而实现本申请实施例所提供的定位方法。
可能的,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
在具体实现中,作为一种实施例,处理器901可以包括一个或多个CPU,例如图9中的CPU0和CPU1。
在具体实现中,作为一种实施例,控制设备可以包括多个处理器,例如图9中的处理器901和处理器905。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
示例性的,图10为本申请实施例提供的一种芯片的结构示意图。芯片100包括一个或两个以上(包括两个)处理器1020和通信接口1030。
在一些实施方式中,存储器1040存储了如下的元素:可执行模块或者数据结构,或者他们的子集,或者他们的扩展集。
本申请实施例中,存储器1040可以包括只读存储器和随机存取存储器,并向处理器1020提供指令和数据。存储器1040的一部分还可以包括非易失性随机存取存储器(non-volatile random access memory,NVRAM)。
本申请实施例中,存储器1040、通信接口1030以及存储器1040通过总线系统1010耦合在一起。其中,总线系统1010除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。为了便于描述,在图10中将各种总线都标为总线系统1010。
上述本申请实施例描述的方法可以应用于处理器1020中,或者由处理器1020实现。处理器1020可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1020中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1020可以是通用处理器(例如,微处理器或常规处理器)、数字信号处理器(digitalsignal processing,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门、晶体管逻辑器件或分立硬件组件,处理器1020可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。
结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。其中,软件模块可以位于随机存储器、只读存储器、可编程只读存储器或带电可擦写可编程存储器(electricallyerasable programmable read only memory,EEPROM)等本领域成熟的存储介质中。该存储介质位于存储器1040,处理器1020读取存储器1040中的信息,结合其硬件完成上述方法的步骤。
在上述实施例中,存储器存储的供处理器执行的指令可以以计算机程序产品的形式实现。其中,计算机程序产品可以是事先写入在存储器中,也可以是以软件形式下载并安装在存储器中。
计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包括一个或多个可用介质集成的服务器、数据中心等数据存储设备。例如,可用介质可以包括磁性介质(例如,软盘、硬盘或磁带)、光介质(例如,数字通用光盘(digital versatile disc,DVD))、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
本申请实施例还提供了一种计算机可读存储介质。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。计算机可读介质可以包括计算机存储介质和通信介质,还可以包括任何可以将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任何目标介质。
作为一种可能的设计,计算机可读介质可以包括紧凑型光盘只读储存器(compactdisc read-only memory,CD-ROM)、RAM、ROM、EEPROM或其它光盘存储器;计算机可读介质可以包括磁盘存储器或其它磁盘存储设备。而且,任何连接线也可以被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,DSL或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,DSL或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘(CD),激光盘,光盘,数字通用光盘(digital versatile disc,DVD),软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。
上述的组合也应包括在计算机可读介质的范围内。以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种定位方法,其特征在于,所述方法包括:
第二设备接收来自第一设备的目标图像;
所述第二设备构建所述目标图像对应的拓扑结构描述向量;所述拓扑结构描述向量用于指示图像中的多个对象、以及所述多个对象之间的相对位置关系;
所述第二设备利用所述目标图像对应的拓扑结构描述向量对预设的图像集进行筛选,得到第二候选图像集;
所述第二设备基于所述目标图像的特征描述子信息以及所述第二候选图像集中的图像的特征描述子信息,计算得到所述目标图像对应的位置和朝向;所述特征描述子信息用于指示图像中包含特征点的区域;
所述第二设备向所述第一设备发送所述目标图像对应的位置和朝向;
其中,所述第二设备利用所述目标图像对应的拓扑结构描述向量对预设的图像集进行筛选,得到第二候选图像集,包括:
所述第二设备获取所述预设的图像集中的图像的拓扑结构描述向量;当所述目标图像对应的拓扑结构描述向量与所述预设的图像集中的图像的拓扑结构描述向量的第一相似度大于第一阈值时,所述第二设备提取所述第一相似度大于第一阈值时对应的所述预设的图像集中的图像,得到所述第二候选图像集;
或者,所述第二设备构建所述目标图像对应的图像特征描述符向量;其中,所述图像特征描述符向量用于指示所述特征描述子信息属于多个类中的一个类的数量;所述多个类是由所述目标图像中的特征描述子信息的聚类构成的;所述第二设备利用所述目标图像对应的图像特征描述符向量对所述预设的图像集进行筛选,得到第一候选图像集;所述第二设备利用所述目标图像对应的拓扑结构描述向量对所述第一候选图像集进行筛选,得到所述第二候选图像集。
2.根据权利要求1所述的方法,其特征在于,所述第二设备构建所述目标图像对应的拓扑结构描述向量,包括:
所述第二设备获取所述目标图像对应的语义信息;所述语义信息用于指示所述目标图像中的多个对象、以及所述多个对象的位置;
所述第二设备基于所述语义信息构建所述目标图像对应的拓扑结构描述向量。
3.根据权利要求1所述的方法,其特征在于,所述第二设备构建所述目标图像对应的图像特征描述符向量,包括:
所述第二设备获取所述目标图像对应的特征描述子信息;
所述第二设备利用所述目标图像对应的特征描述子信息,构建所述目标图像对应的图像特征描述符向量。
4.根据权利要求1所述的方法,其特征在于,所述第二设备利用所述目标图像对应的图像特征描述符向量对所述预设的图像集进行筛选,得到第一候选图像集,包括:
所述第二设备获取所述预设的图像集中的图像对应的图像特征描述符向量;
当所述目标图像对应的图像特征描述符向量与所述预设的图像集中的图像对应的图像特征描述符向量的第二相似度大于第二阈值时,所述第二设备提取所述第二相似度大于第二阈值时对应的所述预设的图像集中的图像,得到所述第一候选图像集。
5.一种定位装置,其特征在于,所述装置包括:通信单元以及处理单元,
所述通信单元,用于接收来自第一设备的目标图像;
所述处理单元,用于构建所述目标图像对应的拓扑结构描述向量;所述拓扑结构描述向量用于指示图像中的多个对象、以及所述多个对象之间的相对位置关系;
所述处理单元,还用于利用所述目标图像对应的拓扑结构描述向量对预设的图像集进行筛选,得到第二候选图像集;
所述处理单元,还用于基于所述目标图像的特征描述子信息以及所述第二候选图像集中的图像的特征描述子信息,计算得到所述目标图像对应的位置和朝向;所述特征描述子信息用于指示图像中包含特征点的区域;
所述通信单元,还用于向所述第一设备发送所述目标图像对应的位置和朝向;
所述处理单元,还用于获取所述预设的图像集中的图像的拓扑结构描述向量;当所述目标图像对应的拓扑结构描述向量与所述预设的图像集中的图像的拓扑结构描述向量的第一相似度大于第一阈值时,所述处理单元,还用于提取所述第一相似度大于第一阈值时对应的所述预设的图像集中的图像,得到所述第二候选图像集;
或者,所述处理单元,还用于构建所述目标图像对应的图像特征描述符向量;其中,所述图像特征描述符向量用于指示所述特征描述子信息属于多个类中的一个类的数量;所述多个类是由所述目标图像中的特征描述子信息的聚类构成的;所述处理单元,还用于利用所述目标图像对应的图像特征描述符向量对所述预设的图像集进行筛选,得到第一候选图像集;所述处理单元,还用于利用所述目标图像对应的拓扑结构描述向量对所述第一候选图像集进行筛选,得到所述第二候选图像集。
6.根据权利要求5所述的装置,其特征在于,所述处理单元,具体用于:获取所述目标图像对应的语义信息;所述语义信息用于指示所述目标图像中的多个对象、以及所述多个对象的位置;基于所述语义信息构建所述目标图像对应的拓扑结构描述向量。
7.根据权利要求5所述的装置,其特征在于,所述处理单元,具体用于:获取所述目标图像对应的特征描述子信息;利用所述目标图像对应的特征描述子信息,构建所述目标图像对应的图像特征描述符向量。
8.根据权利要求5所述的装置,其特征在于,所述处理单元,具体用于:获取所述预设的图像集中的图像对应的图像特征描述符向量;当所述目标图像对应的图像特征描述符向量与所述预设的图像集中的图像对应的图像特征描述符向量的第二相似度大于第二阈值时,提取所述第二相似度大于第二阈值时对应的所述预设的图像集中的图像,得到所述第一候选图像集。
9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,使得所述电子设备执行如权利要求1至4任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,使得计算机执行如权利要求1至4任一项所述的方法。
CN202111545059.5A 2021-12-17 2021-12-17 定位方法和装置 Active CN113936064B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111545059.5A CN113936064B (zh) 2021-12-17 2021-12-17 定位方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111545059.5A CN113936064B (zh) 2021-12-17 2021-12-17 定位方法和装置

Publications (2)

Publication Number Publication Date
CN113936064A CN113936064A (zh) 2022-01-14
CN113936064B true CN113936064B (zh) 2022-05-20

Family

ID=79289128

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111545059.5A Active CN113936064B (zh) 2021-12-17 2021-12-17 定位方法和装置

Country Status (1)

Country Link
CN (1) CN113936064B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114119758B (zh) * 2022-01-27 2022-07-05 荣耀终端有限公司 获取车辆位姿的方法、电子设备和计算机可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109671119A (zh) * 2018-11-07 2019-04-23 中国科学院光电研究院 一种基于slam的室内定位方法及装置
CN112348890A (zh) * 2020-10-27 2021-02-09 深圳技术大学 一种空间定位方法、装置及计算机可读存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111368860B (zh) * 2018-12-25 2024-04-26 深圳市优必选科技有限公司 重定位方法及终端设备
CN110631588B (zh) * 2019-09-23 2022-11-18 电子科技大学 一种基于rbf网络的无人机视觉导航定位方法
CN111046125A (zh) * 2019-12-16 2020-04-21 视辰信息科技(上海)有限公司 一种视觉定位方法、系统及计算机可读存储介质
CN111199564B (zh) * 2019-12-23 2024-01-05 中国科学院光电研究院 智能移动终端的室内定位方法、装置与电子设备
CN111538855B (zh) * 2020-04-29 2024-03-08 浙江商汤科技开发有限公司 视觉定位方法及装置、电子设备和存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109671119A (zh) * 2018-11-07 2019-04-23 中国科学院光电研究院 一种基于slam的室内定位方法及装置
CN112348890A (zh) * 2020-10-27 2021-02-09 深圳技术大学 一种空间定位方法、装置及计算机可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于深度特征的视觉SLAM定位技术研究;吴雅琴 等;《智能计算机与应用》;20201031;第10卷(第10期);第65-70页 *

Also Published As

Publication number Publication date
CN113936064A (zh) 2022-01-14

Similar Documents

Publication Publication Date Title
CN110463165B (zh) 信息处理装置、信息处理方法和记录介质
CN110807361B (zh) 人体识别方法、装置、计算机设备及存储介质
CN111652678A (zh) 物品信息显示方法、装置、终端、服务器及可读存储介质
CN113936085B (zh) 三维重建方法和装置
CN111445583B (zh) 增强现实处理方法及装置、存储介质和电子设备
CN111316333A (zh) 一种信息提示方法及电子设备
CN112598686B (zh) 图像分割方法、装置、计算机设备及存储介质
US11989400B2 (en) Data sharing method and device
CN111476783A (zh) 基于人工智能的图像处理方法、装置、设备及存储介质
CN113610750A (zh) 对象识别方法、装置、计算机设备及存储介质
CN111983559A (zh) 室内定位导航方法及装置
CN114332530A (zh) 图像分类方法、装置、计算机设备及存储介质
CN111027490B (zh) 人脸属性识别方法及装置、存储介质
CN110942046A (zh) 图像检索方法、装置、设备及存储介质
CN113936064B (zh) 定位方法和装置
CN112561084B (zh) 特征提取方法、装置、计算机设备及存储介质
CN112053360B (zh) 图像分割方法、装置、计算机设备及存储介质
CN114282035A (zh) 图像检索模型的训练和检索方法、装置、设备及介质
CN113822263A (zh) 图像标注方法、装置、计算机设备及存储介质
WO2015068447A1 (ja) 情報処理装置、情報処理方法および情報処理システム
CN112287070A (zh) 词语的上下位关系确定方法、装置、计算机设备及介质
CN114842069A (zh) 一种位姿确定方法以及相关设备
CN113569042A (zh) 文本信息分类方法、装置、计算机设备及存储介质
CN113570510A (zh) 图像处理方法、装置、设备及存储介质
CN113468929A (zh) 运动状态识别方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230909

Address after: 201306 building C, No. 888, Huanhu West 2nd Road, Lingang New District, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai

Patentee after: Shanghai Glory Smart Technology Development Co.,Ltd.

Address before: Unit 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong 518040

Patentee before: Honor Device Co.,Ltd.