CN118552614A - 视觉定位方法、终端和服务器 - Google Patents

视觉定位方法、终端和服务器 Download PDF

Info

Publication number
CN118552614A
CN118552614A CN202410537502.1A CN202410537502A CN118552614A CN 118552614 A CN118552614 A CN 118552614A CN 202410537502 A CN202410537502 A CN 202410537502A CN 118552614 A CN118552614 A CN 118552614A
Authority
CN
China
Prior art keywords
image
vertical line
information
characteristic
descriptor
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
CN202410537502.1A
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202410537502.1A priority Critical patent/CN118552614A/zh
Publication of CN118552614A publication Critical patent/CN118552614A/zh
Pending legal-status Critical Current

Links

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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • 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
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • G06V20/176Urban or other man-made structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/32Indexing scheme for image data processing or generation, in general involving image mosaicing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Instructional Devices (AREA)

Abstract

本申请实施例公开了一种视觉定位方法,可以在拍摄图像的场景变化较大的情况下,实现准确度较高的定位。本申请实施例方法包括:终端获取建筑物的图像;所述终端根据所述图像生成描述子,所述描述子包括所述图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,所述第一特征竖线指示所述建筑物的第一立面交线,所述第二特征竖线指示所述建筑物的第二立面交线;所述终端根据所述描述子在预设的描述子数据库中匹配,以获取所述图像的拍摄地点的定位信息。

Description

视觉定位方法、终端和服务器
本申请是分案申请,原申请的申请号是201910736244.9,原申请日是2019年08月09日,原申请的全部内容通过引用结合在本申请中。
技术领域
本申请涉及定位技术领域,尤其涉及一种视觉定位方法、终端和服务器。
背景技术
随着通信技术逐渐发展以及终端硬件计算能力的提升,室外基于位置的服务(location based service,LBS)需求越来越丰富,例如增强导航、增强现实(augmentedreality,AR)广告、AR游戏等。室外定位技术主要依赖全球定位系统(global positioningsystem,GPS),GPS信号易受建筑影响发生遮挡与多径反射,定位精度较低。而视觉定位能够通过获取当前场景的图像信息进行更精确的定位。
为满足LBS对于定位精度的需求,现有技术中,预先采集大量图像,基于图像像素点的亮度变化提取特征点,构建出场景的三维空间地图,该地图包含特征点的三维空间位置和其对应的描述子,该特征点的描述子用于描述特征点与周边像素点的关系。进行视觉定位时输入当前拍摄图像,首先对图像进行特征点的提取,然后将图像中的特征点和地图中的特征点进行匹配,进而得到视觉定位结果。
由于现有技术中,基于图像像素点的亮度变化提取特征点,并通过当前拍摄图像提取的特征点与数据库构建时采集的图像提取的特征点进行匹配,若当前图像拍摄时与数据库采集拍摄时的场景变化较大,例如光照条件变化较大或雨雪天气影响等,提取的特征点将无法有效匹配,视觉定位结果准确度较低。
发明内容
本申请实施例提供了一种视觉定位方法,可以在拍摄图像的场景变化较大的情况下,实现准确度较高的定位。
本申请实施例第一方面提供了一种视觉定位方法,该方法包括:终端获取建筑物的图像;该终端根据该图像生成描述子,该描述子包括该图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,该第一特征竖线指示该建筑物的第一立面交线,该第二特征竖线指示该建筑物的第二立面交线;该终端根据该描述子在预设的描述子数据库中匹配,以获取该图像的拍摄地点的定位信息。
视觉定位时,用户通过拍摄图像可以获取当前图像的拍摄地点的定位信息,本申请实施例中,通过拍摄建筑物,终端可以获取建筑物的图像,终端根据该图像可以生成图像对应的描述子,该描述子用于指示图像的拍摄地点与拍摄的建筑物的立面交线之间的空间位置关系,描述子包括该图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,该第一特征竖线指示该建筑物的第一立面交线,该第二特征竖线指示该建筑物的第二立面交线,该终端根据该描述子在预设的描述子数据库中匹配,以获取该图像的拍摄地点的定位信息。预设的描述子数据库中包括已知地理位置的备选点的描述子,根据描述子匹配的相似度,确定目标备选点,根据目标备选点的地理位置,终端可以获取该图像的拍摄地点的定位信息。
在第一方面的一种可能的实现方式中,该终端根据该图像生成描述子包括:该终端从该图像中提取该建筑物的该第一特征竖线和该第二特征竖线;该终端根据该第一特征竖线和该第二特征竖线的位置关系生成该描述子,该位置关系包括该第一特征竖线和该第二特征竖线的之间的水平视角的信息。
本申请实施例提供的视觉定位方法,终端可以从该图像中提取该建筑物的该第一特征竖线和该第二特征竖线,进而生成描述子。
在第一方面的一种可能的实现方式中,该描述子包括:该第一特征竖线和该第二特征竖线的高度信息和/或深度信息,该第一特征竖线的高度信息用于指示该第一立面交线的高度,该第二特征竖线的高度信息用于指示该第二立面交线的高度,该第一特征竖线的深度信息用于指示该图像的拍摄地点到该第一立面交线的距离,该第二特征竖线的深度信息用于指示该图像的拍摄地点到该第二立面交线的距离。
本申请实施例提供的视觉定位方法,描述子还可以包括特征竖线的高度信息和/或深度信息,特征竖线的高度信息用于指示建筑物立面交线的高度,深度信息用于指示该图像的拍摄地点到立面交线的距离,由此,描述子除了包括图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,还可以包括关于建筑物立面交线更丰富的位置信息,该高度信息和深度信息也可以用于匹配定位,例如拍摄地点周围的建筑物的立面交线分别较均匀时,如果同时具有立面交线的高度信息,可以用于提高定位的准确性,还可以提供图像拍摄时的朝向信息。
在第一方面的一种可能的实现方式中,该描述子以环形数组表示,该环形数组中包括指示第一特征竖线的第一数据,和指示第一特征竖线的第二数据,该第一数据和该第二数据在该环形数组中的位置间隔用于指示该第一特征竖线和该第二特征竖线之间水平视角信息。
本申请实施例提供的视觉定位方法,给出了描述子的一种具体的存储形式,即环形数组,可以利用数据的间隔方便的表达没有具体朝向的角度信息,还可以便于与描述子数据库进行匹配。
在第一方面的一种可能的实现方式中,该描述子以环形数组表示,该环形数组中包括该第一数据、该第二数据和第三数据,该第三数据用于指示未出现该建筑物的特征竖线。
本申请实施例提供的视觉定位方法,给出了描述子的另一种具体的存储形式,环形数组中包括各特征竖线对应的数据,以及指示未出现该建筑物的特征竖线的第三数据,提升了方案的可实现性。
在第一方面的一种可能的实现方式中,该第一数据包括该第一特征竖线的高度信息和/或深度信息,该第二数据包括该第二特征竖线的高度信息和/或深度信息。
本申请实施例提供的视觉定位方法,给出了描述子的另一种具体的存储形式,环形数组的第一数据中还可以包含高度信息和/或深度信息,提供了实现高度信息和/或深度信息存储的一种具体方式。
在第一方面的一种可能的实现方式中,该描述子以圆、圆上指示该第一特征竖线的第一特征点和指示该第二特征竖线第二特征点表示,该圆以该图像对应的光心为圆心,该第一特征点为该第一特征竖线投影在以经过该光心的重力轴为轴线的圆柱上,再投影至包含该光心的水平面上得到的点,该第二特征点为该第二特征竖线投影在该圆柱上,再投影至该水平面上得到的点,该第一特征点和圆心的连线与第二特征点和圆心的连线之间的夹角用于指示该水平视角的信息。
本申请实施例提供的视觉定位方法,描述子可以通过直观的几何信息来表达,可以方便地展示描述子的生成方式,体现视觉定位的具体过程,提升交互体验。
在第一方面的一种可能的实现方式中,该预设的描述子数据库包括:备选点的地理位置和该备选点的描述子,该备选点的描述子包括,以该备选点为视点,周围建筑物的可视的立面交线的朝向信息。
本申请实施例提供的视觉定位方法,预设的描述子数据库包括备选点的地理位置和该备选点的描述子,备选点为预先选定的已知地理位置的点,作为参考点采集周围建筑物的可视立面交线的朝向信息,包含了以该备选点为视点,任意两条立面交线之间的水平视角信息。由此,根据图像获取的描述子可以与备选点的描述子进行匹配,确定匹配度较高的备选点的描述子,对应的描述子的地理位置可用于确定图像的拍摄地点的定位信息。
在第一方面的一种可能的实现方式中,该方法还包括:该终端获取第一定位信息,该第一定位信息包括根据GPS信号、wifi信号、为该终端提供服务的基站的位置信息或用户手动输入地址获取的定位信息;该终端根据该描述子在预设的描述子数据库中匹配,以获取该图像的拍摄地点的定位信息包括:该终端根据该描述子在第一描述子数据库中匹配,以获取该定位信息,该第一描述子数据库包括第一备选点的地理位置和该第一备选点的描述子,该第一备选点为地理位置在该第一定位信息对应的第一位置范围内的备选点。
本申请实施例提供的视觉定位方法,终端可以通过第一定位信息获取粗略的第一位置范围,据此缩小描述子数据库匹配的范围,仅与属于该第一位置范围的备选点的描述子进行匹配,可以减少计算量,提升视觉定位速度。
在第一方面的一种可能的实现方式中,该方法还包括:该终端获取第一定位信息,该第一定位信息包括根据GPS信号、wifi信号、为该终端提供服务的基站的位置信息或用户手动输入地址获取的定位信息;该终端将该第一定位信息发送给服务器,该终端接收该服务器发送的该预设的描述子数据库,该预设的描述子数据库包括第一备选点的地理位置和该第一备选点的描述子,该第一备选点为地理位置在该第一定位信息对应的第一位置范围内的该备选点。
本申请实施例提供的视觉定位方法,终端可以通过将第一定位信息发送给服务器,从服务器获取预设的描述子数据库,可以实现本地匹配和定位。
在第一方面的一种可能的实现方式中,该方法还包括:该终端获取该图像的拍摄朝向信息;该终端根据该描述子在预设的描述子数据库中匹配,以获取该图像的拍摄地点的定位信息:该终端根据该拍摄朝向信息确定的第一角度范围,将该描述子与预设的描述子数据库进行匹配,以获取该定位信息。
本申请实施例提供的视觉定位方法,终端可以通过获取该图像的拍摄朝向信息,在该朝向信息约束的角度范围内,与备选点的描述子进行匹配,可以减少计算量,提升视觉定位速度。
在第一方面的一种可能的实现方式中,该终端获取建筑物的图像包括:该终端获取在第一地点拍摄的第一图像和在第二地点拍摄的第二图像,该第一地点和该第二地点为同一地点,或者该第一地点与该第二地点的距离小于预设阈值,该第一图像和该第二图像包括部分重复的图像信息。
本申请实施例提供的视觉定位方法,终端可以通过拍摄多张图像拓宽视场角,获取更多建筑物图像信息,具有部分重复的图像信息的第一图像和第二图像可以进行拼接,并用于生成描述子。
在第一方面的一种可能的实现方式中,该预设的描述子数据库根据卫星图像生成。
本申请实施例提供的视觉定位方法,预设的描述子数据库可以根据卫星图像生成,例如卫星图像生成LOD模型,在LOD模型中选取备选点,获取每个备选点的描述子,进而构建描述子数据库。该方案采用卫星影像大规模自动化构建描述子数据库,无需现场采集图像,减少了工作量,降低了构建数据库的难度。
本申请实施例第二方面提供了一种视觉定位方法,包括:服务器接收终端发送的建筑物的图像;该服务器根据该图像生成描述子,该描述子包括该图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,该第一特征竖线指示该建筑物的第一立面交线,该第二特征竖线指示该建筑物的第二立面交线;该服务器根据该描述子在预设的描述子数据库中匹配,以获取该图像的拍摄地点的定位信息;该服务器将该定位信息发送给该终端。
在第二方面的一种可能的实现方式中,该服务器根据该图像生成描述子包括:该服务器从该图像中提取该建筑物的该第一特征竖线和该第二特征竖线;该服务器根据该第一特征竖线和该第二特征竖线的位置关系生成该描述子,该位置关系包括该第一特征竖线和该第二特征竖线的之间的水平视角的信息。
本申请实施例提供的视觉定位方法,服务器可以从该图像中提取该建筑物的该第一特征竖线和该第二特征竖线,进而生成描述子。
在第二方面的一种可能的实现方式中,该描述子包括:该第一特征竖线和该第二特征竖线的高度信息和/或深度信息,该第一特征竖线的高度信息用于指示该第一立面交线的高度,该第二特征竖线的高度信息用于指示该第二立面交线的高度,该第一特征竖线的深度信息用于指示该图像的拍摄地点到该第一立面交线的距离,该第二特征竖线的深度信息用于指示该图像的拍摄地点到该第二立面交线的距离。
本申请实施例提供的视觉定位方法,描述子还可以包括特征竖线的高度信息和/或深度信息,描述子除了包括图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,还可以提供关于建筑物立面交线更丰富的位置信息,该高度信息和深度信息也可以用于匹配定位,例如拍摄地点周围的建筑物的立面交线分别较均匀时,如果同时具有立面交线的高度信息,可以用于提高定位的准确性,还可以提供图像拍摄时的朝向信息。
在第二方面的一种可能的实现方式中,该描述子以环形数组表示,该环形数组中包括指示第一特征竖线的第一数据,和指示第一特征竖线的第二数据,该第一数据和该第二数据在该环形数组中的位置间隔用于指示该第一特征竖线和该第二特征竖线之间水平视角信息。
本申请实施例提供的视觉定位方法,给出了描述子的一种具体的存储形式,即环形数组,可以利用数据的间隔方便的表达没有具体朝向的角度信息,还可以便于与描述子数据库进行匹配。
在第二方面的一种可能的实现方式中,该描述子以环形数组表示,该环形数组中包括该第一数据、该第二数据和第三数据,该第三数据用于指示未出现该建筑物的特征竖线。
本申请实施例提供的视觉定位方法,给出了描述子的另一种具体的存储形式,环形数组中包括各特征竖线对应的数据,以及指示未出现该建筑物的特征竖线的第三数据,提升了方案的可实现性。
在第二方面的一种可能的实现方式中,该第一数据包括该第一特征竖线的高度信息和/或深度信息,该第二数据包括该第二特征竖线的高度信息和/或深度信息。
本申请实施例提供的视觉定位方法,给出了描述子的另一种具体的存储形式,环形数组的第一数据中还可以包含高度信息和/或深度信息,提供了实现高度信息和/或深度信息存储的一种具体方式。
在第二方面的一种可能的实现方式中,该描述子以圆、圆上指示该第一特征竖线的第一特征点和指示该第二特征竖线第二特征点表示,该圆以该图像对应的光心为圆心,该第一特征点为该第一特征竖线投影在以经过该光心的重力轴为轴线的圆柱上,再投影至包含该光心的水平面上得到的点,该第二特征点为该第二特征竖线投影在该圆柱上,再投影至该水平面上得到的点,该第一特征点和圆心的连线与第二特征点和圆心的连线之间的夹角用于指示该水平视角的信息。
本申请实施例提供的视觉定位方法,描述子可以通过直观的几何信息来表达,可以方便地展示描述子的生成方式,体现视觉定位的具体过程,提升交互体验。
在第二方面的一种可能的实现方式中,该预设的描述子数据库包括:备选点的地理位置和该备选点的描述子,该备选点的描述子包括,以该备选点为视点,周围建筑物的可视的立面交线的朝向信息。
本申请实施例提供的视觉定位方法,预设的描述子数据库包括备选点的地理位置和该备选点的描述子,备选点为预先选定的已知地理位置的点,作为参考点采集周围建筑物的可视立面交线的朝向信息,包含了以该备选点为视点,任意两条立面交线之间的水平视角信息。由此,根据图像获取的描述子可以与备选点的描述子进行匹配,确定匹配度较高的备选点的描述子,对应的描述子的地理位置可用于确定图像的拍摄地点的定位信息。
在第二方面的一种可能的实现方式中,该方法还包括:该服务器获取该终端发送的第一定位信息,该第一定位信息包括根据GPS信号、wifi信号、为该终端提供服务的基站的位置信息或用户手动输入地址获取的定位信息;该服务器根据该描述子在预设的描述子数据库中匹配,以获取该图像的拍摄地点的定位信息包括:该服务器根据该描述子在第一描述子数据库中匹配,以获取该定位信息,该第一描述子数据库包括第一备选点的地理位置和该第一备选点的描述子,该第一备选点为地理位置在该第一定位信息对应的第一位置范围内的备选点。
本申请实施例提供的视觉定位方法,服务器可以通过第一定位信息获取粗略的第一位置范围,据此缩小描述子数据库匹配的范围,仅与属于该第一位置范围的备选点的描述子进行匹配,可以减少计算量,提升视觉定位速度。
在第二方面的一种可能的实现方式中,该方法还包括:该服务器获取该终端发送的该图像的拍摄朝向信息;该服务器根据该描述子在预设的描述子数据库中匹配,以获取该图像的拍摄地点的定位信息包括:该终端根据该拍摄朝向信息确定的第一角度范围,将该描述子与预设的描述子数据库进行匹配,以获取该定位信息。
本申请实施例提供的视觉定位方法,服务器可以通过获取该图像的拍摄朝向信息,在该朝向信息约束的角度范围内,与备选点的描述子进行匹配,可以减少计算量,提升视觉定位速度。
在第二方面的一种可能的实现方式中,服务器接收终端发送的建筑物的图像包括:该服务器接收在第一地点拍摄的第一图像和在第二地点拍摄的第二图像,该第一地点和该第二地点为同一地点,或者该第一地点与该第二地点的距离小于预设阈值,该第一图像和该第二图像包括部分重复的图像信息。
本申请实施例提供的视觉定位方法,服务器可以接收多张图像,获取更多建筑物图像信息,具有部分重复的图像信息的第一图像和第二图像可以进行拼接,并用于生成描述子。
在第二方面的一种可能的实现方式中,该预设的描述子数据库根据卫星图像生成。
本申请实施例提供的视觉定位方法,预设的描述子数据库可以根据卫星图像生成,例如卫星图像生成LOD模型,在LOD模型中选取备选点,获取每个备选点的描述子,进而构建描述子数据库。该方案采用卫星影像大规模自动化构建描述子数据库,无需现场采集图像,减少了工作量,降低了构建数据库的难度。
本申请实施例第三方面提供了一种视觉定位方法,包括:终端获取建筑物的图像;该终端将该图像发送给服务器;该终端获取该服务器发送的定位信息,该定位信息由该服务器根据该图像生成的描述子在预设的描述子数据库中匹配得到,该描述子包括该图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,该第一特征竖线指示该建筑物的第一立面交线,该第二特征竖线指示该建筑物的第二立面交线。
在第三方面的一种可能的实现方式中,该终端获取该图像的拍摄朝向信息;该终端将该拍摄朝向信息发送给该服务器,该拍摄朝向信息用于确定第一角度范围,该定位信息由该服务器,在该第一角度范围内,根据该图像生成的描述子在该服务器预设的描述子数据库中匹配得到。
本申请实施例第四方面提供了一种视觉定位方法,包括:服务器获取终端发送的第一定位信息;该服务器根据该第一定位信息向该终端发送预设的描述子数据库,该预设的描述子数据库包括第一备选点的地理位置和该第一备选点的描述子,该第一备选点为地理位置在该第一定位信息对应的第一位置范围内的该备选点。该第一描述子数据库用于终端的视觉定位。
本申请实施例第五方面提供了一种终端,其特征在于,包括:获取单元,用于获取建筑物的图像;生成单元,用于根据该图像生成描述子,该描述子包括该图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,该第一特征竖线指示该建筑物的第一立面交线,该第二特征竖线指示该建筑物的第二立面交线;该获取单元还用于,根据该描述子在预设的描述子数据库中匹配,以获取该图像的拍摄地点的定位信息。
在第五方面的一种可能的实现方式中,该生成单元具体用于:从该图像中提取该建筑物的该第一特征竖线和该第二特征竖线;根据该第一特征竖线和该第二特征竖线的位置关系生成该描述子,该位置关系包括该第一特征竖线和该第二特征竖线的之间的水平视角的信息。
在第五方面的一种可能的实现方式中,该描述子包括:该第一特征竖线和该第二特征竖线的高度信息和/或深度信息,该第一特征竖线的高度信息用于指示该第一立面交线的高度,该第二特征竖线的高度信息用于指示该第二立面交线的高度,该第一特征竖线的深度信息用于指示该图像的拍摄地点到该第一立面交线的距离,该第二特征竖线的深度信息用于指示该图像的拍摄地点到该第二立面交线的距离。
在第五方面的一种可能的实现方式中,该描述子以环形数组表示,该环形数组中包括指示第一特征竖线的第一数据,和指示第一特征竖线的第二数据,该第一数据和该第二数据在该环形数组中的位置间隔用于指示该第一特征竖线和该第二特征竖线之间水平视角信息。
在第五方面的一种可能的实现方式中,该描述子以环形数组表示,该环形数组中包括该第一数据、该第二数据和第三数据,该第三数据用于指示未出现该建筑物的特征竖线。
在第五方面的一种可能的实现方式中,该第一数据包括该第一特征竖线的高度信息和/或深度信息,该第二数据包括该第二特征竖线的高度信息和/或深度信息。
在第五方面的一种可能的实现方式中,该描述子以圆、圆上指示该第一特征竖线的第一特征点和指示该第二特征竖线第二特征点表示,该圆以该图像对应的光心为圆心,该第一特征点为该第一特征竖线投影在以经过该光心的重力轴为轴线的圆柱上,再投影至包含该光心的水平面上得到的点,该第二特征点为该第二特征竖线投影在该圆柱上,再投影至该水平面上得到的点,该第一特征点和圆心的连线与第二特征点和圆心的连线之间的夹角用于指示该水平视角的信息。
在第五方面的一种可能的实现方式中,该预设的描述子数据库包括:备选点的地理位置和该备选点的描述子,该备选点的描述子包括,以该备选点为视点,周围建筑物的可视的立面交线的朝向信息。
在第五方面的一种可能的实现方式中,该获取单元还用于:获取第一定位信息,该第一定位信息包括根据GPS信号、wifi信号、为该终端提供服务的基站的位置信息或用户手动输入地址获取的定位信息;该获取单元具体用于:根据该描述子在第一描述子数据库中匹配,以获取该定位信息,该第一描述子数据库包括第一备选点的地理位置和该第一备选点的描述子,该第一备选点为地理位置在该第一定位信息对应的第一位置范围内的备选点。
在第五方面的一种可能的实现方式中,该获取单元还用于:获取第一定位信息,该第一定位信息包括根据GPS信号、wifi信号、为该终端提供服务的基站的位置信息或用户手动输入地址获取的定位信息;该终端还包括:发送单元,用于将该第一定位信息发送给服务器,接收单元,用于接收该服务器发送的该预设的描述子数据库,该预设的描述子数据库包括第一备选点的地理位置和该第一备选点的描述子,该第一备选点为地理位置在该第一定位信息对应的第一位置范围内的该备选点。
在第五方面的一种可能的实现方式中,该获取单元还用于:获取该图像的拍摄朝向信息;该获取单元具体用于:根据该拍摄朝向信息确定的第一角度范围,将该描述子与预设的描述子数据库进行匹配,以获取该定位信息。
在第五方面的一种可能的实现方式中,该获取单元具体用于:获取在第一地点拍摄的第一图像和在第二地点拍摄的第二图像,该第一地点和该第二地点为同一地点,或者该第一地点与该第二地点的距离小于预设阈值,该第一图像和该第二图像包括部分重复的图像信息。
在第五方面的一种可能的实现方式中,该预设的描述子数据库根据卫星图像生成。
本申请实施例第六方面提供了一种服务器,包括:接收单元,用于接收终端发送的建筑物的图像;生成单元,用于根据该图像生成描述子,该描述子包括该图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,该第一特征竖线指示该建筑物的第一立面交线,该第二特征竖线指示该建筑物的第二立面交线;获取单元,用于根据该描述子在预设的描述子数据库中匹配,以获取该图像的拍摄地点的定位信息;发送单元,用于将该定位信息发送给该终端。
在第六方面的一种可能的实现方式中,该生成单元具体用于:从该图像中提取该建筑物的该第一特征竖线和该第二特征竖线;根据该第一特征竖线和该第二特征竖线的位置关系生成该描述子,该位置关系包括该第一特征竖线和该第二特征竖线的之间的水平视角的信息。
在第六方面的一种可能的实现方式中,该描述子包括:该第一特征竖线和该第二特征竖线的高度信息和/或深度信息,该第一特征竖线的高度信息用于指示该第一立面交线的高度,该第二特征竖线的高度信息用于指示该第二立面交线的高度,该第一特征竖线的深度信息用于指示该图像的拍摄地点到该第一立面交线的距离,该第二特征竖线的深度信息用于指示该图像的拍摄地点到该第二立面交线的距离。
在第六方面的一种可能的实现方式中,该描述子以环形数组表示,该环形数组中包括指示第一特征竖线的第一数据,和指示第一特征竖线的第二数据,该第一数据和该第二数据在该环形数组中的位置间隔用于指示该第一特征竖线和该第二特征竖线之间水平视角信息。
在第六方面的一种可能的实现方式中,该描述子以环形数组表示,该环形数组中包括该第一数据、该第二数据和第三数据,该第三数据用于指示未出现该建筑物的特征竖线。
在第六方面的一种可能的实现方式中,该第一数据包括该第一特征竖线的高度信息和/或深度信息,该第二数据包括该第二特征竖线的高度信息和/或深度信息。
在第六方面的一种可能的实现方式中,该描述子以圆、圆上指示该第一特征竖线的第一特征点和指示该第二特征竖线第二特征点表示,该圆以该图像对应的光心为圆心,该第一特征点为该第一特征竖线投影在以经过该光心的重力轴为轴线的圆柱上,再投影至包含该光心的水平面上得到的点,该第二特征点为该第二特征竖线投影在该圆柱上,再投影至该水平面上得到的点,该第一特征点和圆心的连线与第二特征点和圆心的连线之间的夹角用于指示该水平视角的信息。
在第六方面的一种可能的实现方式中,该预设的描述子数据库包括:备选点的地理位置和该备选点的描述子,该备选点的描述子包括,以该备选点为视点,周围建筑物的可视的立面交线的朝向信息。
在第六方面的一种可能的实现方式中,该获取单元还用于:获取该终端发送的第一定位信息,该第一定位信息包括根据GPS信号、wifi信号、为该终端提供服务的基站的位置信息或用户手动输入地址获取的定位信息;该获取单元具体用于:根据该描述子在第一描述子数据库中匹配,以获取该定位信息,该第一描述子数据库包括第一备选点的地理位置和该第一备选点的描述子,该第一备选点为地理位置在该第一定位信息对应的第一位置范围内的备选点。
在第六方面的一种可能的实现方式中,该获取单元还用于:获取该终端发送的该图像的拍摄朝向信息;该获取单元具体用于:根据该拍摄朝向信息确定的第一角度范围,将该描述子与预设的描述子数据库进行匹配,以获取该定位信息。
在第六方面的一种可能的实现方式中,该接收单元具体用于:接收在第一地点拍摄的第一图像和在第二地点拍摄的第二图像,该第一地点和该第二地点为同一地点,或者该第一地点与该第二地点的距离小于预设阈值,该第一图像和该第二图像包括部分重复的图像信息。
在第六方面的一种可能的实现方式中,该预设的描述子数据库根据卫星图像生成。
本申请实施例第七方面提供了一种终端,包括:处理器和存储器;该存储器用于存储指令;该处理器用于根据该指令执行前述第一方面或第三方面提供的各实施方式的方法。
本申请实施例第八方面提供了一种服务器,包括:处理器和存储器;该存储器用于存储指令;该处理器用于根据该指令执行前述第二方面或第四方面提供的各实施方式的方法。
本申请实施例第九方面提供了包含指令的计算机程序产品,当其在计算机上运行时,使得该计算机执行前述第一方面至第四方面提供的各实施方式的方法。
本申请实施例第十方面提供了计算机可读存储介质,该计算机可读存储介质存储指令,当该指令在计算机上运行时,使得该计算机执行前述第一方面至第四方面提供的各实施方式的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例提供的视觉定位方法,获取对建筑物进行拍摄得到的建筑物的图像,分级该图像生成描述子,根据该描述子在预设的描述子数据库中进行匹配得到图像的拍摄地点的定位信息。其中,该描述子包括该图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,该第一特征竖线指示该建筑物的第一立面交线,该第二特征竖线指示该建筑物的第二立面交线。本申请实施例提供的视觉定位方法,从图像中提取的特征竖线具有几何语义信息,对应于实体建筑物的立面交线,该特征竖线不易受图像拍摄时的场景变化的影响,即使建筑被部分遮挡,或者未拍摄到顶端天际线,或者光照条件变化较大,或者雨雪天气时,都不影响描述子的生成和使用,根据该描述子匹配,获取的视觉定位结果准确度较高。
此外,现有技术中,基于图像像素点的亮度变化提取特征点,特征点的描述子用于描述特征点与周边像素点的数值关系,通常为一个多维特征向量,例如128维特征向量,可见,特征点数量较多,且生成描述子的计算量较大,而本申请中提取图像中对应于实体建筑物的立面交线的特征竖线,描述子包含特征竖线之间的水平视角的信息,特征竖线数量少,获取描述子的计算更简便。
此外,现有技术中,描述子数据库的构建需要现场采集大量图像,季节变换时还需要刷新数据库,耗时费力,本申请实施例的描述子数据库可采用卫星影像大规模自动化构建,无需现场采集图像,极大程度上减少了工作量,降低了构建数据库的难度。
此外,现有技术中,描述子数据库存储大量的二维图像、三维特征点云、以及特征点的描述子,数据量大,需大量存储空间,通常只能基于较小的地理范围构建。而本申请实施例提供的视觉定位方法,根据图像生成的描述子直接关联地图备选点的描述子,描述子记录备选点周边建筑物可视的立面交线的朝向信息,无需存储大量二维图像和三维点云数据,数据量较小,占用存储空间小,例如,对于同一位置范围,本方案的描述子数据库约为视觉同步定位与地图构建(visual simultaneous localization and mapping,vSLAM)特征库的百万分之一量级。
附图说明
图1为本申请实施例中视觉定位方法的一个实施例示意图;
图2为相机坐标系的示意图;
图3为本申请实施例中对图像进行语义分割的示意图;
图4为本申请实施例中获取建筑物的特征竖线的示意图;
图5为本申请实施例中圆柱投影转换的示意图;
图6为本申请实施例中多张图像进行圆柱投影的示意图;
图7为本申请实施例中描述子的数据结构示意图;
图8为本申请实施例中GPS信号辅助进行视觉定位的一个实施例示意图;
图9为本申请实施例中构建描述子数据库的一个实施例示意图;
图10为本申请实施例中选取备选点的一个实施例示意图;
图11为为本申请实施例中根据LOD模型进行圆柱投影的示意图;
图12为本申请实施例中生成备选点的描述子的示意图;
图13为本申请实施例中一种视觉定位方法的一个实施例交互图;
图14为本申请实施例中一种视觉定位方法的另一个实施例交互图;
图15为本申请实施例中终端的一个实施例示意图;
图16为本申请实施例中服务器的一个实施例示意图;
图17为本申请实施例中终端的另一个实施例示意图;
图18为本申请实施例中服务器的另一个实施例示意图;
图19为本申请实施例公开的一种AR设备的结构示意图。
具体实施方式
本申请实施例提供了一种视觉定位方法,用于在光照条件变化较大的场景中的提高视觉定位的准确度。
下面结合附图,对本申请的实施例进行描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。在本申请中出现的对步骤进行的命名或者编号,并不意味着必须按照命名或者编号所指示的时间/逻辑先后顺序执行方法流程中的步骤,已经命名或者编号的流程步骤可以根据要实现的技术目的变更执行次序,只要能达到相同或者相类似的技术效果即可。
请参阅图1,为本申请实施例中视觉定位方法的一个实施例示意图;
本申请实施例提供的视觉定位方法,包括:
1001、终端获取建筑物的图像;
用户需要获取当前所在的精确位置信息时,可以通过拍摄周围的建筑物进行视觉定位。终端获取对建筑物进行拍摄得到的图像,该图像中将包括建筑物图像。
可选的,获取图像的图像采集设备有多种,可以是单目相机、双目相机、深度相机或激光雷达等,此处对于图像采集设备的具体类型不做限定。该图像采集设备可以是设置在该终端内的相机部件,还可以是外置于该终端且可与该终端通信的设备,图像采集设备的设置形式具体此处不做限定。
在某些场景下,单张图像视场角较小,无法拍摄到一栋完整的建筑物,提供的信息有限,终端可以通过获取多张图像扩大视场角,增加图像的信息量。终端获取的图像,可以是一张图像,也可以是多张图像,此处对于获取的图像的数量不做限定。可选的,该终端获取在第一地点拍摄的第一图像和在第二地点拍摄的第二图像,该第一地点和该第二地点为同一地点,或者该第一地点与该第二地点的距离小于预设阈值,该第一图像和该第二图像包括部分重复的图像信息。
该多张图像可以为在同一地点进行拍摄得到,例如,用户通过终端拍摄建筑物并旋转该终端,通过等间隔抓取,或者智能识别等方式获取多张有重叠度的照片,通过图像拼接算法将多张图像进行拼接,得到包含建筑物的图像。需要说明的是,由于拍摄多张图像的过程中,图像采集设备通常会发生相对位移,这里拍摄第一图像的第一地点和拍摄第二图像的第二地点的距离应小于预设阈值,该预设阈值可以根据实际使用需求设定,可选的,预设阈值可以为对于远景拍摄的景深而言可以忽略的位移值,示例性的,例如景深与位移的比值大于100,可以是200或500等。例如图像景深200米,预设阈值可以为1米,在用户手持终端原地拍摄时,手臂旋转产生的位移通常在0.5米以内,由此获取的图像可以视为同一拍摄地点的定位。
1002、从图像中提取建筑物的特征竖线;
为便于描述,下面对相机坐标系和图像坐标系进行介绍。请参阅图2,相机坐标系是以相机的光心O为原点,以光轴为z轴的三维直角坐标系。相机坐标系的x轴与y轴与图像的X,Y轴平行,相机坐标系的z轴为相机光轴,与图形平面垂直。光轴与图像平面的交点,即为图像坐标系的原点,图像坐标系为二维直角坐标系。
由于建筑物的立面交线通常垂直于水平面,相应的,若拍摄建筑物时,相机x轴水平,由此获取的图像中,建筑物的特征竖线应为平行于Y轴的线段。然而在实际应用中,拍摄图像时相机坐标系的x轴可能不水平,由此获取的图像中,建筑物的特征竖线与图像Y轴将存在一定的夹角,需要对建筑物的轮廓线进行规则化处理,例如通过图像校正技术,进行旋转变换,可以获取垂直于图像Y轴的特征竖线。
可选的,对建筑物的轮廓线进行规则化处理的过程包括,对相机坐标系进行旋转,绕相机坐标系的x轴和z轴进行旋转,使得相机坐标系的x轴平行于世界坐标系的水平轴,相机坐标系的y轴平行于世界坐标系的重力轴。从而使得相机成像的图像坐标系中Y轴与世界坐标系中的重力轴y轴平行,完成图像校正,使得图像中建筑物的轮廓竖线与图像坐标系y轴平行。
从图像中提取建筑物的特征竖线的方式有多种,本申请对此具体不做限定。
可选的,首先,使用语义分割算法,识别图像中的不同类型物体的图像信息并进行区分。示例性的,请参阅图3,为本申请实施例中对图像进行语义分割的示意图,图像被分割为建筑物、植被、地面和天空区域。由此可以得到建筑物的轮廓线,然后,提取轮廓线中的竖线作为图像的特征竖线。请参阅图4,为本申请实施例中获取建筑物的特征竖线的示意图,图中加粗的线段指示获取的特征竖线。可选的,可以使用线段检测算法(line segmentdetector,LSD)等直线提取算法获得图像中的规则化线段信息,接着,利用语义分割得到的分类结果掩模作为约束条件,剔除建筑物范围内部和外部的杂线段,只保留建筑物和天空交界处的目标线段。最后,对每一条待提取的直线段,在建筑物掩模有效范围内,按照线段斜率方向进行延长,得到符合建筑物外轮廓形状的直线线段。
1003、进行圆柱投影转换;
相机拍摄得到的图像通常为中心投影图像,对该中心投影图像进行圆柱投影,投影至以相机坐标系y轴为轴线的圆柱上,可以实现中心投影到圆柱投影的转换。
将圆柱投影图像投影至相机坐标系x轴和z轴所在的xOz平面,将得到以光心O为圆心的圆,从图像中获取的建筑物的特征竖线投影为圆上的特征点。该特征点表示从图像中获取的建筑物的特征竖线。
请参阅图5,为圆柱投影转换的示意图,其中,A点、B点连成的直线段代表中心投影的成像面,D点、I点和E点所构成的圆弧段为该圆柱投影的成像面。C点为线段A B的中点,由于获取中心投影图像的相机的焦距已知,可以根据焦距获取中心投影的成像面AB与光心O之间的距离,即线段OC的长度,圆柱半径为设定值,具体大小不做限定,可选的,图5中以OC长度作为圆柱半径。
由图5所示,D点为AO线段与圆O弧的交点,即经过圆柱投影变换后,图像中的A点与圆柱投影面上的D点对应,类似的,F点与I点对应,C点与C点对应,B点与E点对应。若F点代表建筑物的特征竖线,连接F点与O点,与O点所在的圆的交点为I点即为几何语义描述子的一个特征点。圆柱投影中的建筑物的特征竖线为本申请实施例中几何语义描述子的特征点。
需要说明的是,步骤1003与步骤1002的执行顺序不做限定,可以先执行步骤1002,再执行步骤1003,也可以先执行步骤1003,再执行步骤1002,下面分别进行介绍:
一、若先从图像中提取建筑物的特征竖线,再进行圆柱投影转换。
可以仅将获取的特征竖线进行圆柱投影转换;若根据具有重叠信息的多张图像获取了每张图像中建筑物的特征竖线,则在进行圆柱投影后多张图像中重复出现的特征竖线将在圆柱投影中重合。请参阅图6,为多张图像进行圆柱投影的示意图。P1、P2和P3分别代表在同一位置拍摄的三张图像,其中A点为P1中提取的建筑物的特征竖线,由于P1和P2有部分图像信息重叠,A点代表的该特征竖线与P2中B点代表的特征竖线对应于同一建筑物实体的立面交线,在中心投影转换为圆柱投影时,A点和B点均投影至圆柱投影上的C点。
二、若先进行圆柱投影转换,再从圆柱投影图像中提取建筑物的特征竖线。
需要将获取的中心投影图像整体转换为圆柱投影图像,然后从该圆柱投影图像中提取建筑物的特征竖线。
需要说明的是,当需要根据具有重叠信息的多张图像进行拼接时,通常先进行圆柱投影再进行拼接。由于拍摄得到的图像均为中心投影,其成像面为平面,若直接对多张图像进行拼接,可能因投影变形使得拼接结果出现较大变形,因此,需要先进行圆柱投影变换把中心投影转换到圆柱投影面上,使得所有待处理图像的投影面保持一致。由于多张图像为同一采集设备在同一位置进行拍摄获取的,对于室外远景拍摄,终端拍摄图像的位置可以近似作为相机的光心的位置,由于多张图像是站在同一位置拍摄得到,可视为单视点旋转,因此该多张图像可以转换到同一坐标系下。
可选的,将具有重叠信息的多张图像进行图像拼接时,由于拍摄该多张图像拍摄的亮度可能不一致,在拼接后往往会出现明显的拼接缝隙,因此需要进行图像融合以消除拼接缝隙。示例性的,获取三张图像进行拼接,可以把第一张图做为参考图像,依次把第二张图和第三张图拼接到第一张图的坐标系下。图像融合的方式有多种,具体此处不做限定。可选的,采用渐进渐出法,即越靠近拼接边缘,待拼接图像像素点的权值越大,拼接图像的像素值权值越小,取加权平均以获取拼接后的图像。
1004、生成几何语义描述子;
描述子包括该图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,该第一特征竖线指示该建筑物的第一立面交线,第二特征竖线指示该建筑物的第二立面交线;对于图像可以确定其唯一的视点,即拍摄该图像的相机的光心,从该视点观察,在水平面上,可以确定第一特征竖线和第二特征竖线之间的水平视角的信息。
步骤1003中将该第一特征点为该第一特征竖线投影在以经过该光心的重力轴为轴线的圆柱上,再投影至包含该光心的水平面上得到的特征点,根据特征点与光心的连线之间的角度关系可以生成描述子,本申请实施例中该描述子也被称作几何语义描述子。
可选的,从该图像中提取的该建筑物的第一特征竖线和第二特征竖线,经过圆柱投影转换后,得到相机坐标系的xOz平面上,以光心O为圆心的圆上第一特征点和第二特征点,描述子包括该第一特征点和第二特征点构成的圆弧对应的角度间隔信息。
可选的,几何语义描述子仅包括特征点之间的角度信息;可选的,还可以将图像上建筑物轮廓竖线高度信息也记录在特征点对应的信息中,几何语义描述子包括特征点之间的角度信息和特征点的高度信息。该高度信息可以是像素高度信息。
可选的,若传感器有深度数据,或者通过双目相机计算深度、单目相机深度恢复等技术获取了轮廓竖线的深度值,也可以记录在该特征点对应的信息中。几何语义描述子包括特征点之间的角度信息和该特征点的深度信息。该高度信息用于指示该第二立面交线的高度,深度信息用于指示该图像的拍摄地点到对应的建筑物的立面交线的距离。
可选的,描述子包括:环形数组,即由环形数组表示或存储描述子的信息,该环形数组中包括指示第一特征竖线的第一数据,和指示第一特征竖线的第二数据,该第一数据和该第二数据在该环形数组中的位置间隔用于指示该第一特征竖线和该第二特征竖线之间水平视场角信息。
可选的,该描述子以环形数组表示,该环形数组中包括该第一数据、该第二数据和第三数据,该第三数据用于指示未出现该建筑物的特征竖线。
可选的,该水平视场角信息的精度可以根据实际需求确定,例如1度或0.1度等,具体此处不做限定。
示例性的,以角度信息的精度为1度为例,环形数组包含360个数据用于表示360度范围内的特征点信息,可以由数字“1”代表该角度存在一个特征点,数字“0”代表未检测到或者没有特征点。可以理解的是,由图像获取的视场角通常只包含了360度视场中的部分,对于未获取图像的剩余视场角,可以用“0”填充,由此,可以生成图像对应的几何语义描述子。这里用“1”的位置,描述了建筑物轮廓竖线基于图像拍摄点的空间关系。若需记录特征点的高度和/或深度信息,可以采用图像中竖线轮廓线长即像素高度替代“1”,也可以用单目估计出的建筑物轮廓竖线深度和地图建筑物轮廓竖线深度替代“1”。从而提升了信息的维度,增大鲁棒性。
可选的,该描述子以圆、圆上指示该第一特征竖线的第一特征点和指示该第二特征竖线第二特征点表示,该圆以该图像对应的光心为圆心,该第一特征点为该第一特征竖线投影在以经过该光心的重力轴为轴线的圆柱上,再投影至包含该光心的水平面上得到的点,该第二特征点为该第二特征竖线投影在该圆柱上,再投影至该水平面上得到的点,该第一特征点和圆心的连线与第二特征点和圆心的连线之间的夹角用于指示该水平视角的信息。
1005、获取约束信息;
终端获取约束信息包括拍摄该图像时的第一定位信息和/或方位信息。
第一定位信息,包括根据GPS信号、wifi信号、为该终端提供服务的基站的位置信息或用户手动输入地址获取的定位信息,该定位信息精度较低,可以为视觉定位提供参考。在第一定位信息确定的第一位置范围内进一步根据几何语义描述子匹配的方式获取较第一定位信息更精确的视觉定位。
该终端根据该描述子在第一描述子数据库中匹配,以获取该定位信息,该第一描述子数据库包括第一备选点的地理位置和该第一备选点的描述子,该第一备选点为地理位置在该第一定位信息对应的第一位置范围内的备选点。在该第一定位数据确定的第一位置范围内,将该描述子与预设的描述子数据库进行匹配得到,终端获取在该第一位置范围内的更精确的定位信息。
方位信息是指根据终端传感器获取的在拍摄该图像时的角度信息,可选的,该方位信息为根据磁力计获取的朝向角,代表了拍摄该图像时的朝向,具体为在东北天坐标系(east north up,ENU)坐标系的方向。可以理解的是,磁力计提供的该ENU坐标系的方向具有一定的误差,准确度较低,可以用于为视觉定位提供参考。该终端获取该图像的拍摄朝向信息;该终端根据该拍摄朝向信息确定的第一角度范围,将该描述子与预设的描述子数据库进行匹配,以获取该定位信息。
需要说明的是,步骤1005为可选步骤,可以执行,也可以不执行,此处不做限定。若执行步骤1005,通常获取执行步骤1001获取图像时的约束信息。
1006、匹配描述子并获取视觉定位信息;
根据图像的几何语义描述子,与描述子数据库中的备选点的描述子进行匹配,根据匹配的相似度获取与定位信息相关的备选点,根据备选点在地图中的坐标位置,可以确定图像拍摄点的视觉定位。
描述子数据库中包括了地图上多个备选点的描述子,具体的,以备选点的位置坐标为索引,备选点周围建筑物的特征竖线的角度信息存储在数据库。可选的,备选点的描述子还包括周围建筑物的特征竖线的深度和/或高度信息。
描述子的数据结构可能有多种,可选的,请参阅图7,本申请实施例中描述子的数据结构示意图,为按照的1度精度,将360度环形数组展开成长度为360的一维数组。图像的描述子(photo descriptor)为当前坐标系下图像中建筑物轮廓竖线的角度信息数组,数字“1”的位置代表当前坐标系下可以获取到图像中建筑物轮廓竖线的角度。数据库中地图的描述子(map descriptor)为ENU坐标系下建筑物外环角点的角度信息数组,数字“1”的位置代表ENU坐标系下建筑物外环角点的角度。
例如map descriptor第4位的“1”是指当前地图位置ENU坐标系下4度朝向可以看到建筑物外环角点。Photo descriptor第1位的“1”是指ENU坐标系下1度朝向可以看到图像中建筑物轮廓竖线。数字为“0”的位置表示当前朝向上未检测到或者没有建筑物特征竖线。
需定位的图像可以直接与地图上的备选点通过描述子进行匹配定位。匹配的方式有多种,此处不做限定。
可选的,由于拍摄图像生成的描述子中,特征点的间隔角度与备选点的描述子统一到了一致的360度尺度上,但是由于拍摄点的方位不确定,因此描述子的角度信息不在同一个坐标系中。通过首尾相接的圆环上滑动几何语义描述子数据,每次滑动可以形成一个新的带角度偏移的几何语义描述子,再与当前地图备选点几何语义描述子计算相似度。根据描述子匹配的相似度,确定目标备选点,根据目标备选点的地理位置,终端可以获取该图像的拍摄地点的定位信息。
然后,可以在磁力计的误差范围内进行描述子匹配。
描述子相似度的计算方式有多种,可选的,通过离散傅里叶变换,将几何语义描述子转换到频域,计算二者的互功率谱,通过狄拉克函数获取几何语义描述子相对于几何语义描述子数据库中某个备选点的描述子的偏移量和相关性。通过匹配定位计算,同时优化求解最优角度与最优位置,可以得到带有角度信息的定位结果。
可选的,若步骤1005中获取了第一定位信息,第一定位信息可以确定粗略的定位为第一位置范围内,可以仅将该第一位置范围的备选点用于进行描述子匹配,可以减少计算量。
示例性的,请参阅图8,图8中的点A代表GPS定位的点,方框代表根据GPS精度信息确定的第一位置范围,本步骤可以在该方框的范围内进行描述子匹配,即将地图上属于该第一位置范围内的所有备选点的描述子与拍摄图像的描述子进行匹配。可选的,计算备选点与拍摄点相似度时,可以对第一位置范围内的所有备选点得分绘制热力图,分数代表该备选点与拍摄点相似度。建立预设大小的滑动窗口,遍历热力图,获取滑动窗口得分综合最高的点即为计算的定位结果。
下面介绍本申请实施例提供的视觉定位方法中,离线数据库的构建方法,包括:
请参阅图9,为本申请实施例中构建描述子数据库的一个实施例示意图。
数据库的构建过程,包括:
901、根据LOD模型在备选点进行采样;
基于卫星图像,根据网格简化算法,可以生成不同细节层次(level of detail,LOD)模型,示例性的,LOD0为建筑物俯视平面轮廓,LOD1为带有高度信息的建筑物立体轮廓,LOD2带有建筑物屋顶信息。
本实施例中,基于卫星图像生成LOD模型,提取道路层,在道路上每隔一定间隔选取备选点,该间隔例如可以为一米,具体间隔数值此处不做限定。请参阅图10,为本申请实施例中选取备选点的一个实施例示意图,图中道路上的点即为备选点。
对于每一个备选点构建圆柱投影,获取360度展开的投影结果,示例性的,请参阅图11,为本申请实施例中根据LOD模型进行圆柱投影的示意图,横轴为角度,纵轴是周边建筑物的透视投影高度。构建圆柱投影时可设置不同的采集精度,例如,精度可以设置为1度、0.1度等,具体此处不做限定。
902、提取圆柱投影中建筑物的特征竖线;
识别模型投影结果的轮廓竖线,作为几何语义描述子数据库的抽取特征,请参阅图11中加粗的线段,为LOD模型中建筑物的立面交线进行圆柱投影,获取的特征竖线。
903、构建几何语义描述子数据库;
记录地图中每一个备选点,以及该备选点的描述子,构建几何语义描述子数据库。
根据步骤902中获取的特征竖线生成描述子。备选点的描述子包括,以该备选点为参考点,周围的建筑物的可视立面交线的朝向角信息。
描述子数据库包括,备选点的地理位置和该备选点的描述子,该备选点的描述子包括,以该备选点为视点,周围建筑物的可视的立面交线的朝向信息。
示例性的:请参阅图12,为本申请实施例中生成备选点的描述子的示意图。
将LOD模型投影至水平面,图中的矩形分别代表建筑物ABCD、建筑物EFGH、建筑物IJKL和建筑物MNQP,如右上角的建筑物ABCD中,A点、B点、C点、D点分别代表建筑物ABCD的四条立面交线,每个点的坐标已知。点O为地图上选取的备选点,这里的备选点是人为指定的地图坐标数据,由于地图数据作为输入源,坐标是预先已知的。以备选点O点为例:站在O点,对于右上角建筑,A点被遮挡不可见,可以看到建筑物立面交线为:B点、C点、D点,分别连接B点、C点、D点与O点,与O点所在的单位圆的交点即为几何语义描述子的一个特征点,在实际物理意义上,该特征点代表了建筑物的一条轮廓竖线。由于在ENU坐标系中,每个特征点与光心的连线与正北的夹角已知,此夹角的物理意义是站在O点看到该建筑物轮廓竖线的朝向,由此可以获取每个特征点与光心连线的朝向角信息。
用此夹角代表描述特征的角度信息描述,用于后续的匹配定位。
b点、c点和d点记录下了站在O点,周围建筑物在O点产生的空间约束信息,具体的,包括以O点为参考点,建筑物立面交线的朝向角信息。此外,以b点、c点和d点的朝向角信息作为索引,还可以存储B点、C点、D点代表的立面交线,相对于点O的距离信息和高度信息。
计算机存储中,采用键值(key-value)结构存储数据。O点在地图中的位置(x,y)作为索引,描述子对360度单位圆进行采样,典型的,如以1度为精度采样,则形成360个数据组成的数组。存在特征子的角度存储“1”,没有特征子的角度存储“0”,示例性的,图中Ob和正北的夹角是26.86度,则在数组中的27个位置记录“1”。
对地图上所有选定的备选点进行描述子生成即可产生描述子数据库。
可选的,由于备选点与建筑物立面交线的距离已知,备选点的描述子还可以记录下每个特征点的深度信息。
可选的,由于建筑物立面交线的透视投影高度已知,备选点的描述子还可以记录下每个特征点的高度信息。
在地图的道路约束下,可以仅在道路上选取备选点,生成所有道路上间隔采样的备选点的几何语义描述子。
本申请提供的视觉定位方法,在实现过程中,可以由终端侧进行描述子匹配,也可以由或服务器侧进行描述子匹配,下面分别进行介绍,
一、由终端侧进行描述子匹配;
请参阅图13,为本申请实施例中一种视觉定位方法的一个实施例交互图;
1301、服务器构建几何语义描述子数据库;
1302、终端获取第一定位信息并发送给服务器;
1303、服务器确定第一子数据库并发送给终端;
1304、终端获取图像;
需要说明的是,步骤1304与步骤1302的执行顺序不做限定,可以先执行步骤1302,在执行步骤1304,也可以先执行步骤1304,再执行步骤1302。
1305、终端从从图像中提取建筑物的特征竖线;
1306、终端生成几何语义描述子;
1307、终端在第一描述子数据库中进行匹配得到视觉定位结果。
步骤1301至1307的具体内容可以参考图1和图9对应的实施例,此处不再赘述。
二、由服务器侧进行描述子匹配;
请参阅图14,为本申请实施例中一种视觉定位方法的另一个实施例交互图;
1401、服务器构建几何语义描述子数据库;
1402、终端获取图像并发送给服务器;
1403、终端获取第一定位信息并发送给服务器;
需要说明的是,步骤1401至步骤1403的执行顺序不做限定。
1404、服务器从图像中提取建筑物的特征竖线;
1405、服务器生成几何语义描述子;
1406、服务器在第一描述子数据库中进行匹配,获取视觉定位结果并发送给终端。
步骤1401至1406的具体内容可以参考图1和图9对应的实施例,此处不再赘述。
上面介绍了本申请实施例提供的视觉定位方法,下面对实现该方法的终端和服务器进行介绍,请参阅图15,为本申请实施例中终端的一个实施例示意图。
本申请实施例提供的终端,包括:
获取单元1501,用于获取建筑物的图像;
生成单元1502,用于根据该图像生成描述子,该描述子包括该图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,该第一特征竖线指示该建筑物的第一立面交线,该第二特征竖线指示该建筑物的第二立面交线;
该获取单元1501还用于,根据该描述子在预设的描述子数据库中匹配,以获取该图像的拍摄地点的定位信息。
可选的,该生成单元1502具体用于:从该图像中提取该建筑物的该第一特征竖线和该第二特征竖线;根据该第一特征竖线和该第二特征竖线的位置关系生成该描述子,该位置关系包括该第一特征竖线和该第二特征竖线的之间的水平视角的信息。
可选的,该描述子包括:该第一特征竖线和该第二特征竖线的高度信息和/或深度信息,该第一特征竖线的高度信息用于指示该第一立面交线的高度,该第二特征竖线的高度信息用于指示该第二立面交线的高度,该第一特征竖线的深度信息用于指示该图像的拍摄地点到该第一立面交线的距离,该第二特征竖线的深度信息用于指示该图像的拍摄地点到该第二立面交线的距离。
可选的,该描述子以环形数组表示,该环形数组中包括指示第一特征竖线的第一数据,和指示第一特征竖线的第二数据,该第一数据和该第二数据在该环形数组中的位置间隔用于指示该第一特征竖线和该第二特征竖线之间水平视角信息。
可选的,该描述子以环形数组表示,该环形数组中包括该第一数据、该第二数据和第三数据,该第三数据用于指示未出现该建筑物的特征竖线。
可选的,该第一数据包括该第一特征竖线的高度信息和/或深度信息,该第二数据包括该第二特征竖线的高度信息和/或深度信息。
可选的,该描述子以圆、圆上指示该第一特征竖线的第一特征点和指示该第二特征竖线第二特征点表示,该圆以该图像对应的光心为圆心,该第一特征点为该第一特征竖线投影在以经过该光心的重力轴为轴线的圆柱上,再投影至包含该光心的水平面上得到的点,该第二特征点为该第二特征竖线投影在该圆柱上,再投影至该水平面上得到的点,该第一特征点和圆心的连线与第二特征点和圆心的连线之间的夹角用于指示该水平视角的信息。
可选的,该预设的描述子数据库包括:备选点的地理位置和该备选点的描述子,该备选点的描述子包括,以该备选点为视点,周围建筑物的可视的立面交线的朝向信息。
可选的,该获取单元1501还用于:获取第一定位信息,该第一定位信息包括根据GPS信号、wifi信号、为该终端提供服务的基站的位置信息或用户手动输入地址获取的定位信息;该获取单元1501具体用于:根据该描述子在第一描述子数据库中匹配,以获取该定位信息,该第一描述子数据库包括第一备选点的地理位置和该第一备选点的描述子,该第一备选点为地理位置在该第一定位信息对应的第一位置范围内的备选点。
可选的,述获取单元1501还用于:获取第一定位信息,该第一定位信息包括根据GPS信号、wifi信号、为该终端提供服务的基站的位置信息或用户手动输入地址获取的定位信息;
该终端还包括:
发送单元1503,用于将该第一定位信息发送给服务器,
接收单元1504,用于接收该服务器发送的该预设的描述子数据库,该预设的描述子数据库包括第一备选点的地理位置和该第一备选点的描述子,该第一备选点为地理位置在该第一定位信息对应的第一位置范围内的该备选点。
可选的,该获取单元1501还用于:获取该图像的拍摄朝向信息;
该获取单元1501具体用于:根据该拍摄朝向信息确定的第一角度范围,将该描述子与预设的描述子数据库进行匹配,以获取该定位信息。
可选的,该获取单元1501具体用于:获取在第一地点拍摄的第一图像和在第二地点拍摄的第二图像,该第一地点和该第二地点为同一地点,或者该第一地点与该第二地点的距离小于预设阈值,该第一图像和该第二图像包括部分重复的图像信息。
可选的,该预设的描述子数据库根据卫星图像生成。
请参阅图16,为本申请实施例中服务器的一个实施例示意图。
本申请实施例提供的服务器,包括:
接收单元1601,用于接收终端发送的建筑物的图像;
生成单元1602,用于根据该图像生成描述子,该描述子包括该图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,该第一特征竖线指示该建筑物的第一立面交线,该第二特征竖线指示该建筑物的第二立面交线;
获取单元1603,用于根据该描述子在预设的描述子数据库中匹配,以获取该图像的拍摄地点的定位信息;
发送单元1604,用于将该定位信息发送给该终端。
可选的,该生成单元1602具体用于:从该图像中提取该建筑物的该第一特征竖线和该第二特征竖线;根据该第一特征竖线和该第二特征竖线的位置关系生成该描述子,该位置关系包括该第一特征竖线和该第二特征竖线的之间的水平视角的信息。
可选的,该描述子包括:该第一特征竖线和该第二特征竖线的高度信息和/或深度信息,该第一特征竖线的高度信息用于指示该第一立面交线的高度,该第二特征竖线的高度信息用于指示该第二立面交线的高度,该第一特征竖线的深度信息用于指示该图像的拍摄地点到该第一立面交线的距离,该第二特征竖线的深度信息用于指示该图像的拍摄地点到该第二立面交线的距离。
可选的,其特征在于,该描述子以环形数组表示,该环形数组中包括指示第一特征竖线的第一数据,和指示第一特征竖线的第二数据,该第一数据和该第二数据在该环形数组中的位置间隔用于指示该第一特征竖线和该第二特征竖线之间水平视角信息。
可选的,该描述子以环形数组表示,该环形数组中包括该第一数据、该第二数据和第三数据,该第三数据用于指示未出现该建筑物的特征竖线。
可选的,该第一数据包括该第一特征竖线的高度信息和/或深度信息,该第二数据包括该第二特征竖线的高度信息和/或深度信息。
可选的,该描述子以圆、圆上指示该第一特征竖线的第一特征点和指示该第二特征竖线第二特征点表示,该圆以该图像对应的光心为圆心,该第一特征点为该第一特征竖线投影在以经过该光心的重力轴为轴线的圆柱上,再投影至包含该光心的水平面上得到的点,该第二特征点为该第二特征竖线投影在该圆柱上,再投影至该水平面上得到的点,该第一特征点和圆心的连线与第二特征点和圆心的连线之间的夹角用于指示该水平视角的信息。
可选的,该预设的描述子数据库包括:备选点的地理位置和该备选点的描述子,该备选点的描述子包括,以该备选点为视点,周围建筑物的可视的立面交线的朝向信息。
可选的,该获取单元1603还用于:获取该终端发送的第一定位信息,该第一定位信息包括根据GPS信号、wifi信号、为该终端提供服务的基站的位置信息或用户手动输入地址获取的定位信息;
可选的,该获取单元1603具体用于:根据该描述子在第一描述子数据库中匹配,以获取该定位信息,该第一描述子数据库包括第一备选点的地理位置和该第一备选点的描述子,该第一备选点为地理位置在该第一定位信息对应的第一位置范围内的备选点。
可选的,该获取单元1603还用于:获取该终端发送的该图像的拍摄朝向信息;
该获取单元1603具体用于:根据该拍摄朝向信息确定的第一角度范围,将该描述子与预设的描述子数据库进行匹配,以获取该定位信息。
可选的,该接收单元1601具体用于:接收在第一地点拍摄的第一图像和在第二地点拍摄的第二图像,该第一地点和该第二地点为同一地点,或者该第一地点与该第二地点的距离小于预设阈值,该第一图像和该第二图像包括部分重复的图像信息。
可选的,该预设的描述子数据库根据卫星图像生成。
请参阅图17,为本申请实施例中终端的另一个实施例示意图。
图17示出的是与本申请实施例提供的终端的部分结构的框图。该终端包括:图像采集单元1710、全球卫星定位系统(global positioning system,GPS)模块1720、传感器1730、显示单元1740、输入单元1750、存储器1760、处理器1770、以及电源1780等部件。本领域技术人员可以理解,图17中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图17对终端的各个构成部件进行具体的介绍:
图像采集单元1710,用于采集图像,在本申请实施例中用于获取建筑物的图像,例如可以是单目相机、双目相机、深度相机或激光雷达等,此处对于图像采集单元的具体类型不做限定。
GPS模块1720,基于卫星的全球导航系统,为用户提供定位或导航,相较视觉定位,精度较低。本申请实施例中可用于辅助定位。
终端还可包括至少一种传感器1730,例如磁力计1731、惯性测量单元(inertialmeasurement unit,IMU)1732,惯性测量单元是测量物体三轴姿态角(或角速率)以及加速度的装置。一般的,一个IMU包含了三个单轴的加速度计和三个单轴的陀螺,加速度计检测物体在载体坐标系统独立三轴的加速度信号,而陀螺检测载体相对于导航坐标系的角速度信号,测量物体在三维空间中的角速度和加速度,并以此解算出物体的姿态。为了提高可靠性,还可以为每个轴配备更多的传感器。此外,终端还可以包括振动识别相关功能(比如计步器、敲击)等。此外,还可以包括比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1741的亮度,接近传感器可在终端移动到耳边时,关闭显示面板1741和/或背光。至于终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
显示单元1740可用于显示由用户输入的信息或提供给用户的信息以及终端的各种菜单。显示单元1740可包括显示面板1741,可选的,可以采用液晶显示器(liquidcrystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配置显示面板1741。进一步的,触控面板1751可覆盖显示面板1741,当触控面板1751检测到在其上或附近的触摸操作后,传送给处理器1770以确定触摸事件的类型,随后处理器1770根据触摸事件的类型在显示面板1741上提供相应的视觉输出。虽然在图17中,触控面板1751与显示面板1741是作为两个独立的部件来实现终端的输入和输入功能,但是在某些实施例中,可以将触控面板1751与显示面板1741集成而实现终端的输入和输出功能。
输入单元1750可用于接收输入的数字或字符信息,以及产生与终端的用户设置以及功能控制有关的键信号输入。具体地,输入单元1750可包括触控面板1751以及其他输入设备1752。触控面板1751,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1751上或在触控面板1751附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1751可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1770,并能接收处理器1770发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1751。除了触控面板1751,输入单元1750还可以包括其他输入设备1752。具体地,其他输入设备1752可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
存储器1760可用于存储软件程序以及模块,处理器1770通过运行存储在存储器1760的软件程序以及模块,从而执行终端的各种功能应用以及数据处理。存储器1760可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1760可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器1770是终端的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器1720内的软件程序和/或模块,以及调用存储在存储器1720内的数据,执行终端的各种功能和处理数据,从而对终端进行整体监控。可选的,处理器1770可包括一个或多个处理单元;优选的,处理器1770可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1770中。
终端还包括给各个部件供电的电源1780(比如电池),优选的,电源可以通过电源管理系统与处理器1770逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,可选的,终端可以包括音频电路,音频电路包括扬声器和传声器,可提供用户与终端之间的音频接口。
尽管未示出,可选的,终端可以包括无线保真(wireless fidelity,WiFi)模块,WiFi属于短距离无线传输技术,终端通过WiFi模块1770可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。
尽管未示出,可选的,终端还可以包括射频(radio frequency,RF)电路。
尽管未示出,终端还可以包括蓝牙模块等,在此不再赘述。
在本申请实施例中,该终端所包括的处理器1770还具有实现上述各手势交互方法的功能。
请参阅图18,为本申请实施例中一种服务器的另一个实施例示意图。本实施例提供的服务器为虚拟机热迁移的目的服务器,本申请实施例中对其具体设备形态不做限定。
该服务器1800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器1801和存储器1802,该存储器1802中存储有程序或数据。
其中,存储器1802可以是易失性存储或非易失性存储。可选地,处理器1801是一个或多个中央处理器(CPU,Central Processing Unit,该CPU可以是单核CPU,也可以是多核CPU。处理器1801可以与存储器1802通信,在服务器1800上执行存储器1802中的一系列指令。
该服务器1800还包括一个或一个以上有线或无线网络接口1803,例如以太网接口。
可选地,尽管图18中未示出,服务器1800还可以包括一个或一个以上电源;一个或一个以上输入输出接口,输入输出接口可以用于连接显示器、鼠标、键盘、触摸屏设备或传感设备等,输入输出接口为可选部件,可以存在也可以不存在,此处不做限定。
本实施例中服务器1800中的处理器1801所执行的流程可以参考前述方法实施例中描述的方法流程,此处不加赘述。
上述终端设备还可以为增强现实(augmented reality,AR)设备,请参阅图19,图19是本申请实施例公开的一种AR设备的结构示意图。
如图19所示,该AR设备包括处理器1901,该处理器1901可以耦合一个或多个存储介质。该存储介质包括存储媒介111和至少一个存储器1902。该存储媒介1911可以是只读的,如只读存储器(read-only memory,ROM),或者可读/可写的硬盘或闪存。存储器1902例如可以是随机存取存储器(random access memory,RAM)。该存储器1902可以与处理器1901结合,或者,集成于处理器1901中,或者,由一个独立单元或多个单元构成。该处理器1901是该AR设备的控制中心,具体提供用于执行指令、完成中断事件、提供时间功能以及其他诸多功能的时间序列及工艺设备。可选的,该处理器1901包括一个或多个中央处理单元CPU,如图2中的CPU0和CPU1。可选的,该AR设备还可以包括多个处理器,每一个处理器可以是单核或多核。除非特别说明,本申请所描述的处理器或存储器的具体实现方式包括通用组件或专用组件,该通用组件在特定时刻被配置用于执行某一任务,该专用组件被生产用于执行专用任务。本申请实施例所描述的处理器至少包括一个电子设备、电路、和/或被配置为处理数据(如计算机程序指令)的处理器芯片。该处理器1901,和/或,该处理器1912,或,该处理器1901和/或该处理器1912中的单个CPU所执行的程序代码可以存储在该存储器1902中。
进一步地,该AR设备还包括前置摄像头1903、前置测距仪1904、后置摄像头1905、后置测距仪1906,输出模块1907(如光学投影仪或激光投影仪等)和/或通信接口1908。其中,该前置摄像头1903、该前置测距仪1904、该后置摄像头1905、该后置测距仪1906以及该输出模块1907与该处理器1901耦合。此外,该AR设备还可以包括接收/发送电路1909和天线1910。该接收/发送电路1909和天线1910用于实现AR设备与外部网络的连接。该AR设备的组成单元可以通过通信总线相互耦合,该通信总线至少包括以下任意一种:数据总线、地址总线、控制总线、扩展总线和局部总线。需要注意的是,该AR设备仅仅是本申请实施例公开的一种示例实体装置形态,本申请实施例对AR设备的具体形态不做唯一限定。
该AR设备的处理器1901能够耦合该至少一个存储器1902,该存储器1902中预存有程序代码,该程序代码具体包括图像获取模块、参数检测模块、系数确定模块、图像裁剪模块、影像生成模块、影像显示模块,该存储器1902还进一步存储有内核模块,该内核模块包括操作系统(如WINDOWSTM,ANDROIDTM,IOSTM等)。
该AR设备的处理器1901被配置用于调用该程序代码,以执行本申请实施例中的定位方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例该方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上该,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (31)

1.一种视觉定位方法,其特征在于,包括:
终端获取建筑物的图像;
所述终端根据所述图像生成描述子,所述描述子包括所述图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,所述第一特征竖线指示所述建筑物的第一立面交线,所述第二特征竖线指示所述建筑物的第二立面交线;
所述终端根据所述描述子在所述图像对应的地图的信息中匹配,以获取所述图像的拍摄地点的定位信息。
2.根据权利要求1所述的方法,其特征在于,所述终端根据所述图像生成描述子包括:
所述终端从所述图像中提取所述建筑物的所述第一特征竖线和所述第二特征竖线;
所述终端根据所述第一特征竖线和所述第二特征竖线的位置关系生成所述描述子,所述位置关系包括所述第一特征竖线和所述第二特征竖线的之间的水平视角的信息。
3.根据权利要求1或2所述的方法,其特征在于,所述描述子包括:
所述第一特征竖线的高度信息和所述第二特征竖线的高度信息,所述第一特征竖线的高度信息用于指示所述第一立面交线的高度,所述第二特征竖线的高度信息用于指示所述第二立面交线的高度。
4.根据权利要求1或2所述的方法,其特征在于,所述描述子包括所述第一特征竖线的深度信息和所述第二特征竖线的深度信息,所述第一特征竖线的深度信息用于指示所述图像的拍摄地点到所述第一立面交线的距离,所述第二特征竖线的深度信息用于指示所述图像的拍摄地点到所述第二立面交线的距离。
5.根据权利要求1或2所述的方法,其特征在于,
所述描述子以环形数组表示,所述环形数组中包括指示第一特征竖线的第一数据,和指示第一特征竖线的第二数据,所述第一数据和所述第二数据在所述环形数组中的位置间隔用于指示所述第一特征竖线和所述第二特征竖线之间水平视角信息。
6.根据权利要求5所述的方法,其特征在于,所述描述子以环形数组表示,所述环形数组中包括所述第一数据、所述第二数据和第三数据,所述第三数据用于指示未出现所述建筑物的特征竖线。
7.根据权利要求5所述的方法,其特征在于,所述第一数据包括所述第一特征竖线的高度信息和/或深度信息,所述第二数据包括所述第二特征竖线的高度信息和/或深度信息。
8.根据权利要求1或2所述的方法,其特征在于,
所述描述子以圆、圆上指示所述第一特征竖线的第一特征点和指示所述第二特征竖线第二特征点表示,所述圆以所述图像对应的光心为圆心,所述第一特征点为所述第一特征竖线投影在以经过所述光心的重力轴为轴线的圆柱上,再投影至包含所述光心的水平面上得到的点,所述第二特征点为所述第二特征竖线投影在所述圆柱上,再投影至所述水平面上得到的点,所述第一特征点和圆心的连线与第二特征点和圆心的连线之间的夹角用于指示所述水平视角的信息。
9.根据权利要求1或2所述的方法,其特征在于,所述图像对应的地图的信息包括预设的描述子数据库,所述预设的描述子数据库包括:
备选点的地理位置和所述备选点的描述子,所述备选点的描述子包括,以所述备选点为视点,周围建筑物的可视的立面交线的朝向信息。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
所述终端获取第一定位信息,所述第一定位信息包括根据GPS信号、wifi信号、为所述终端提供服务的基站的位置信息或用户手动输入地址获取的定位信息;
所述终端根据所述描述子在预设的描述子数据库中匹配,以获取所述图像的拍摄地点的定位信息包括:
所述终端根据所述描述子在第一描述子数据库中匹配,以获取所述定位信息,所述第一描述子数据库包括第一备选点的地理位置和所述第一备选点的描述子,所述第一备选点为地理位置在所述第一定位信息对应的第一位置范围内的备选点。
11.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述终端获取第一定位信息,所述第一定位信息包括根据GPS信号、wifi信号、为所述终端提供服务的基站的位置信息或用户手动输入地址获取的定位信息;
所述终端将所述第一定位信息发送给服务器,
所述终端接收所述服务器发送的所述预设的描述子数据库,所述预设的描述子数据库包括第一备选点的地理位置和所述第一备选点的描述子,所述第一备选点为地理位置在所述第一定位信息对应的第一位置范围内的所述备选点。
12.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述终端获取所述图像的拍摄朝向信息;
所述终端根据所述描述子在所述图像对应的地图的信息中匹配,以获取所述图像的拍摄地点的定位信息包括:
所述终端根据所述拍摄朝向信息确定的第一角度范围,将所述描述子与所述预设的描述子数据库进行匹配,以获取所述定位信息。
13.根据权利要求1或2所述的方法,其特征在于,所述终端获取建筑物的图像包括:
所述终端获取在第一地点拍摄的第一图像和在第二地点拍摄的第二图像,所述第一地点和所述第二地点为同一地点,或者所述第一地点与所述第二地点的距离小于预设阈值,所述第一图像和所述第二图像包括部分重复的图像信息。
14.根据权利要求9所述的方法,其特征在于,所述预设的描述子数据库根据卫星图像生成。
15.一种视觉定位方法,其特征在于,包括:
服务器接收终端发送的建筑物的图像;
所述服务器根据所述图像生成描述子,所述描述子包括所述图像中的第一特征竖线和第二特征竖线之间的水平视角的信息,所述第一特征竖线指示所述建筑物的第一立面交线,所述第二特征竖线指示所述建筑物的第二立面交线;
所述服务器根据所述描述子在所述图像对应的地图的信息中匹配,以获取所述图像的拍摄地点的定位信息;
所述服务器将所述定位信息发送给所述终端。
16.根据权利要求15所述的方法,其特征在于,所述服务器根据所述图像生成描述子包括:
所述服务器从所述图像中提取所述建筑物的所述第一特征竖线和所述第二特征竖线;
所述服务器根据所述第一特征竖线和所述第二特征竖线的位置关系生成所述描述子,所述位置关系包括所述第一特征竖线和所述第二特征竖线的之间的水平视角的信息。
17.根据权利要求15或16所述的方法,其特征在于,所述描述子包括:
所述第一特征竖线的高度信息和所述第二特征竖线的高度信息,所述第一特征竖线的高度信息用于指示所述第一立面交线的高度,所述第二特征竖线的高度信息用于指示所述第二立面交线的高度。
18.根据权利要求15或16所述的方法,其特征在于,所述描述子包括所述第一特征竖线的深度信息和所述第二特征竖线的深度信息,所述第一特征竖线的深度信息用于指示所述图像的拍摄地点到所述第一立面交线的距离,所述第二特征竖线的深度信息用于指示所述图像的拍摄地点到所述第二立面交线的距离。
19.根据权利要求15或16所述的方法,其特征在于,
所述描述子以环形数组表示,所述环形数组中包括指示第一特征竖线的第一数据,和指示第一特征竖线的第二数据,所述第一数据和所述第二数据在所述环形数组中的位置间隔用于指示所述第一特征竖线和所述第二特征竖线之间水平视角信息。
20.根据权利要求19所述的方法,其特征在于,所述描述子以环形数组表示,所述环形数组中包括所述第一数据、所述第二数据和第三数据,所述第三数据用于指示未出现所述建筑物的特征竖线。
21.根据权利要求19所述的方法,其特征在于,所述第一数据包括所述第一特征竖线的高度信息和/或深度信息,所述第二数据包括所述第二特征竖线的高度信息和/或深度信息。
22.根据权利要求15或16所述的方法,其特征在于,
所述描述子以圆、圆上指示所述第一特征竖线的第一特征点和指示所述第二特征竖线第二特征点表示,所述圆以所述图像对应的光心为圆心,所述第一特征点为所述第一特征竖线投影在以经过所述光心的重力轴为轴线的圆柱上,再投影至包含所述光心的水平面上得到的点,所述第二特征点为所述第二特征竖线投影在所述圆柱上,再投影至所述水平面上得到的点,所述第一特征点和圆心的连线与第二特征点和圆心的连线之间的夹角用于指示所述水平视角的信息。
23.根据权利要求15或16所述的方法,其特征在于,所述图像对应的地图的信息包括预设的描述子数据库,所述预设的描述子数据库包括:
备选点的地理位置和所述备选点的描述子,所述备选点的描述子包括,以所述备选点为视点,周围建筑物的可视的立面交线的朝向信息。
24.根据权利要求23所述的方法,其特征在于,所述方法还包括:
所述服务器获取所述终端发送的第一定位信息,所述第一定位信息包括根据GPS信号、wifi信号、为所述终端提供服务的基站的位置信息或用户手动输入地址获取的定位信息;
所述服务器根据所述描述子在所述图像对应的地图的信息中匹配,以获取所述图像的拍摄地点的定位信息包括:
所述服务器根据所述描述子在第一描述子数据库中匹配,以获取所述定位信息,所述第一描述子数据库包括第一备选点的地理位置和所述第一备选点的描述子,所述第一备选点为地理位置在所述第一定位信息对应的第一位置范围内的备选点。
25.根据权利要求15或16所述的方法,其特征在于,所述方法还包括:
所述服务器获取所述终端发送的所述图像的拍摄朝向信息;
所述服务器根据所述描述子在在所述图像对应的地图的信息中匹配,以获取所述图像的拍摄地点的定位信息包括:
所述终端根据所述拍摄朝向信息确定的第一角度范围,将所述描述子与预设的描述子数据库进行匹配,以获取所述定位信息。
26.根据权利要求15或16所述的方法,其特征在于,所述服务器接收终端发送的建筑物的图像包括:
所述服务器接收在第一地点拍摄的第一图像和在第二地点拍摄的第二图像,所述第一地点和所述第二地点为同一地点,或者所述第一地点与所述第二地点的距离小于预设阈值,所述第一图像和所述第二图像包括部分重复的图像信息。
27.根据权利要求23所述的方法,其特征在于,所述预设的描述子数据库根据卫星图像生成。
28.一种终端,其特征在于,包括:处理器和存储器;
所述存储器用于存储指令;
所述处理器用于根据所述指令以执行如权利要求1至14中任一项所述的方法。
29.一种服务器,其特征在于,包括:处理器和存储器;
所述存储器用于存储指令;
所述处理器用于根据所述指令以执行如权利要求15至27中任一项所述的方法。
30.一种包含指令的计算机程序产品,其特征在于,当其在计算机上运行时,使得所述计算机执行如权利要求1至27中任一项所述的方法。
31.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储指令,当所述指令在计算机上运行时,使得所述计算机执行如权利要求1至27中任一项所述的方法。
CN202410537502.1A 2019-08-09 2019-08-09 视觉定位方法、终端和服务器 Pending CN118552614A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410537502.1A CN118552614A (zh) 2019-08-09 2019-08-09 视觉定位方法、终端和服务器

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202410537502.1A CN118552614A (zh) 2019-08-09 2019-08-09 视觉定位方法、终端和服务器
CN201910736244.9A CN112348886B (zh) 2019-08-09 2019-08-09 视觉定位方法、终端和服务器

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201910736244.9A Division CN112348886B (zh) 2019-08-09 2019-08-09 视觉定位方法、终端和服务器

Publications (1)

Publication Number Publication Date
CN118552614A true CN118552614A (zh) 2024-08-27

Family

ID=74367069

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201910736244.9A Active CN112348886B (zh) 2019-08-09 2019-08-09 视觉定位方法、终端和服务器
CN202410537502.1A Pending CN118552614A (zh) 2019-08-09 2019-08-09 视觉定位方法、终端和服务器

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201910736244.9A Active CN112348886B (zh) 2019-08-09 2019-08-09 视觉定位方法、终端和服务器

Country Status (3)

Country Link
US (2) US12046001B2 (zh)
CN (2) CN112348886B (zh)
WO (1) WO2021027676A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110688500B (zh) * 2018-06-20 2021-09-14 华为技术有限公司 一种数据库构建方法、一种定位方法及其相关设备
CN113112544B (zh) * 2021-04-09 2022-07-19 国能智慧科技发展(江苏)有限公司 基于智能物联网与大数据的人员定位异常检测系统
CN113820697B (zh) * 2021-09-09 2024-03-26 中国电子科技集团公司第五十四研究所 一种基于城市建筑特征与三维地图的视觉定位方法
CN113947635A (zh) * 2021-10-15 2022-01-18 北京百度网讯科技有限公司 图像定位方法、装置、电子设备以及存储介质
CN115564837B (zh) * 2022-11-17 2023-04-18 歌尔股份有限公司 一种视觉定位方法、装置和系统
CN117788595B (zh) * 2024-02-28 2024-05-10 四川圣才科技开发有限公司 一种智能图像测距方法、系统、设备及存储介质

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4697931B2 (ja) * 2004-10-20 2011-06-08 ソニー・エリクソン・モバイルコミュニケーションズ株式会社 情報提供システムおよび携帯端末
JP3900365B2 (ja) * 2005-03-03 2007-04-04 三菱電機株式会社 測位装置および測位方法
WO2009021068A1 (en) * 2007-08-06 2009-02-12 Trx Systems, Inc. Locating, tracking, and/or monitoring personnel and/or assets both indoors and outdoors
CN100547603C (zh) * 2007-08-08 2009-10-07 华中科技大学 一种地面建筑物识别定位方法
JP2009229180A (ja) * 2008-03-21 2009-10-08 Mitsubishi Electric Corp ナビゲーション装置
US20100201082A1 (en) * 2008-04-24 2010-08-12 Hart Jamie R Multilayer Seal for a Container
JP5396585B2 (ja) * 2008-05-02 2014-01-22 株式会社ジオ技術研究所 地物特定方法
CN102308320B (zh) * 2009-02-06 2013-05-29 香港科技大学 从图像生成三维模型
US9324003B2 (en) * 2009-09-14 2016-04-26 Trimble Navigation Limited Location of image capture device and object features in a captured image
JP5505723B2 (ja) * 2010-03-31 2014-05-28 アイシン・エィ・ダブリュ株式会社 画像処理システム及び位置測位システム
US8274508B2 (en) * 2011-02-14 2012-09-25 Mitsubishi Electric Research Laboratories, Inc. Method for representing objects with concentric ring signature descriptors for detecting 3D objects in range images
US8989483B2 (en) * 2011-06-10 2015-03-24 Sri International Method and apparatus for inferring the geographic location of captured scene depictions
CN103139700B (zh) * 2011-11-28 2017-06-27 联想(北京)有限公司 一种终端定位的方法和系统
US9275300B2 (en) * 2012-02-24 2016-03-01 Canon Kabushiki Kaisha Method and apparatus for generating image description vector, image detection method and apparatus
CN103295186B (zh) * 2012-02-24 2016-03-09 佳能株式会社 图像描述符生成方法和系统、图像检测方法和系统
EP2711670B1 (en) * 2012-09-21 2019-01-30 NavVis GmbH Visual localisation
JP6110780B2 (ja) * 2013-12-05 2017-04-05 株式会社ジオ技術研究所 付加情報表示システム
US9560273B2 (en) * 2014-02-21 2017-01-31 Apple Inc. Wearable information system having at least one camera
CN104573735A (zh) * 2015-01-05 2015-04-29 广东小天才科技有限公司 基于图像拍摄以优化定位的方法、智能终端及服务器
US9652896B1 (en) * 2015-10-30 2017-05-16 Snap Inc. Image based tracking in augmented reality systems
US10127685B2 (en) * 2015-12-16 2018-11-13 Objectvideo Labs, Llc Profile matching of buildings and urban structures
US10402448B2 (en) * 2017-06-28 2019-09-03 Google Llc Image retrieval with deep local feature descriptors and attention-based keypoint descriptors
US10949669B2 (en) * 2017-08-22 2021-03-16 Kreatar, Llc Augmented reality geolocation using image matching
CN107742311B (zh) 2017-09-29 2020-02-18 北京易达图灵科技有限公司 一种视觉定位的方法及装置
CN109059941B (zh) 2018-07-06 2019-11-29 禾多科技(北京)有限公司 特征地图构建方法、视觉定位方法及对应装置
WO2020014924A1 (zh) 2018-07-19 2020-01-23 驭势科技(北京)有限公司 视觉定位地图存储及加载方法、装置、系统及存储介质
CN109614859B (zh) 2018-11-01 2021-01-12 清华大学 视觉定位特征提取和匹配方法及装置

Also Published As

Publication number Publication date
WO2021027676A1 (zh) 2021-02-18
US12046001B2 (en) 2024-07-23
CN112348886A (zh) 2021-02-09
CN112348886B (zh) 2024-05-14
US20240338846A1 (en) 2024-10-10
US20220156969A1 (en) 2022-05-19

Similar Documents

Publication Publication Date Title
CN112348886B (zh) 视觉定位方法、终端和服务器
US11586218B2 (en) Method and apparatus for positioning vehicle, electronic device and storage medium
US9092899B1 (en) Automatic method for photo texturing geolocated 3D models from geolocated imagery
EP3246660B1 (en) System and method for referencing a displaying device relative to a surveying instrument
JP5980295B2 (ja) カメラ姿勢決定方法、及び実環境物体認識方法
CN109084732A (zh) 定位与导航方法、装置及处理设备
KR102200299B1 (ko) 3d-vr 멀티센서 시스템 기반의 도로 시설물 관리 솔루션을 구현하는 시스템 및 그 방법
CN104180814A (zh) 移动终端上实景功能中的导航方法和电子地图客户端
CN106471548A (zh) 使用外围信息的加速模板匹配
CN109269472B (zh) 倾斜摄影测量建筑物特征线提取方法、装置与存储介质
KR102130687B1 (ko) 다중 센서 플랫폼 간 정보 융합을 위한 시스템
CN110926478B (zh) 一种ar导航路线纠偏方法、系统及计算机可读存储介质
CN111862215B (zh) 一种计算机设备定位方法、装置、计算机设备和存储介质
CN107885763B (zh) 室内图中兴趣点信息的更新方法、装置及计算机可读介质
CN113284239B (zh) 一种关于智慧城市的电子沙盘制作方法及装置
RU2571300C2 (ru) Способ дистанционного определения абсолютного азимута целевой точки
CN112348887A (zh) 终端位姿确定方法以及相关装置
CN204963858U (zh) 一种可定位定姿的近景摄影测量系统
CN113960614A (zh) 一种基于帧-地图匹配的高程图构建方法
CN113610702B (zh) 一种建图方法、装置、电子设备及存储介质
KR102249381B1 (ko) 3차원 영상 정보를 이용한 모바일 디바이스의 공간 정보 생성 시스템 및 방법
Porzi et al. An automatic image-to-DEM alignment approach for annotating mountains pictures on a smartphone
CN116576866B (zh) 导航方法和设备
CN118379453B (zh) 一种无人机航拍影像与webGIS三维场景联动交互方法及系统
CN112348884B (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