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

定位方法和装置 Download PDF

Info

Publication number
WO2018098811A1
WO2018098811A1 PCT/CN2016/108392 CN2016108392W WO2018098811A1 WO 2018098811 A1 WO2018098811 A1 WO 2018098811A1 CN 2016108392 W CN2016108392 W CN 2016108392W WO 2018098811 A1 WO2018098811 A1 WO 2018098811A1
Authority
WO
WIPO (PCT)
Prior art keywords
vslam
positioning
processes
unit
successfully located
Prior art date
Application number
PCT/CN2016/108392
Other languages
English (en)
French (fr)
Inventor
林义闽
廉士国
Original Assignee
深圳前海达闼云端智能科技有限公司
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 深圳前海达闼云端智能科技有限公司 filed Critical 深圳前海达闼云端智能科技有限公司
Priority to PCT/CN2016/108392 priority Critical patent/WO2018098811A1/zh
Priority to CN201680006927.3A priority patent/CN107223244B/zh
Priority to US16/465,234 priority patent/US20190333239A1/en
Priority to EP16922760.0A priority patent/EP3534234A1/en
Priority to JP2019529633A priority patent/JP6775263B2/ja
Publication of WO2018098811A1 publication Critical patent/WO2018098811A1/zh

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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0251Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • 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
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/66Updates of program code stored in read-only memory [ROM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture

Definitions

  • the present invention relates to the field of positioning and navigation, and in particular to a positioning method and apparatus.
  • vSLAM visual simultaneous localization and mapping
  • vSLAM is based on image processing, it is easy to be affected by illumination and perspective. Impact. For example, vSLAM builds a map of a certain scene at a certain time during the day, so at night, for the same scene, because the illumination changes, the vSLAM map collected at this time cannot find a matching image in the map built during the day, so it cannot be realized. Positioning and navigation; In addition, vSLAM is affected by the perspective of the sensor when acquiring images. The perspective of constructing the map is directional. If there is a big difference between the viewing angle and the saved viewing angle, the positioning and navigation cannot be completed.
  • Embodiments of the present invention provide a positioning method and apparatus, which are mainly used to solve the problem that the vSLAM cannot be located and navigated by the perspective and illumination effects.
  • a positioning method comprising:
  • the positioning is performed according to the positioning result obtained by each successfully located vSLAM process.
  • a positioning device comprising:
  • a positioning unit configured to call each vSLAM process to perform positioning based on a real-time image
  • the locating unit is further configured to perform positioning according to the positioning result obtained by each successfully located vSLAM process.
  • a computer storage medium for storing computer software instructions for use in a positioning device, comprising program code designed to perform the positioning method of the first aspect.
  • a computer program product which can be directly loaded into an internal memory of a computer and contains software code, and the computer program can be loaded and executed by a computer to implement the positioning method described in the first aspect.
  • an electronic device comprising: a memory, a communication interface, and a processor, the memory is configured to store computer execution code, and the processor is configured to execute the computer to perform code control to perform the positioning in the first aspect
  • the method is used for data transmission between the positioning device and an external device.
  • the positioning method and device provided by the embodiments of the present invention match the real-time image by using a map database corresponding to different shooting time periods or shooting angles, and then perform positioning according to the matching result, thereby solving the problem that the vSLAM cannot be positioned and navigated by the perspective and illumination effects. .
  • FIG. 1 is a schematic diagram of a viewing angle according to an embodiment of the present invention
  • FIG. 2 is a schematic diagram of positioning provided by an embodiment of the present invention.
  • FIG. 3 is a schematic flowchart diagram of a positioning method according to an embodiment of the present disclosure.
  • FIG. 4 is a schematic flowchart diagram of a positioning method according to an embodiment of the present disclosure.
  • FIG. 5 is a schematic structural diagram of a positioning apparatus according to an embodiment of the present disclosure.
  • FIG. 6 is a schematic structural diagram of another positioning device according to an embodiment of the present disclosure.
  • FIG. 7 is a schematic structural diagram of still another positioning apparatus according to an embodiment of the present invention.
  • the positioning method and device provided by the embodiments of the present invention can be used for visual positioning and navigation of indoor and outdoor devices such as robots and self-driving cars.
  • the positioning device can be located in the cloud as a positioning server or in the field as a terminal (eg, a blind guide helmet).
  • the viewing angle according to the embodiment of the present invention refers to an angle between the optical axis direction of the camera and the forward direction.
  • the positioning described in the embodiment of the present invention refers to determining the position (x, y) in the X-Y plane of the Cartesian coordinate system.
  • the embodiment of the present invention provides a positioning method, which is applied to the positioning device, as shown in FIG. 3, and includes:
  • the map database is a map database of different time periods and different perspectives collected in advance for the same route. Specifically, after the initial location, the destination, and the travel route are determined, the photographing vehicle maintains the viewing angle of the visual sensor module at a certain time period, starting from the starting route along the traveling route to the destination, and the traveling process is separated by a certain time. The image is captured once and the position coordinates (relative position or absolute position) are recorded. When the destination is reached, a set of map databases of the travel route is formed, wherein each map database includes an image, a view angle, a time and a position when the image is captured. coordinate.
  • the map database at 0-23 can be collected at intervals of one hour as shown in Table 1 at the shooting time interval, so that the map database under different illumination conditions can be obtained; From the perspective, a map database of 360 degrees of view can be acquired at intervals of 45 degrees as shown in Table 1. Further preferably, the 360-degree panoramic camera can be directly used for shooting to obtain a map database as shown in Table 2.
  • Each map database includes a 360-degree panoramic image, which saves the shooting workload and saves the calculation amount during positioning. .
  • the number of vSLAM processes created can be less than or equal to the number of groups in the map database. For example, if there are 16 groups of map databases, you can create 1-16 processes to perform the above matching operations.
  • Each process takes a set of map databases and real-time images for positioning. When a process is positioned, it is from the remaining sets of map databases. Take a set and then position it with the live image until all N sets of map databases are loaded.
  • Each vSLAM process can use the same positioning rule to locate different map databases, or can use different positioning rules to locate the same map database.
  • multiple vSLAM processes may be created during initialization.
  • a vSLAM process fails to locate, the vSLAM process is closed to the section.
  • Trust computing resources when each vSLAM process created is closed, multiple vSLAM processes are recreated.
  • a real-time image of the current frame can be acquired by a visual sensor module (eg, a camera).
  • a visual sensor module eg, a camera
  • the process may notify other untargeted successful vSLAM processes to narrow down the search range in the corresponding map database, such that the narrowed search range includes the location output by the successfully located vSLAM process.
  • the location indicated by the result Exemplarily, assuming that the first process processes the first set of map databases, and the second process processes the second set of map databases, the first process processes the 100th map database that first searches for the first set of map databases in the positioning process, and the positioning is successful.
  • the second process may be instructed to directly skip the first 89 map databases in the second set of map databases. , starting from the 90th map database to achieve the purpose of saving computing effort.
  • each vSLAM process fails to locate, indicating that the map database loaded by the process may not be able to locate the real-time image due to illumination, viewing angle, shooting interval, etc.
  • the map database of the group is no longer involved.
  • the subsequent real-time image localization process so the vSLAM process is closed until all the vSLAM processes are closed, and then multiple vSLAM processes are created according to step S101, so that the real-time image of the next shooting interval can be successfully located with the map database to achieve further Save the purpose of calculating the workload.
  • the way of the position indicates whether each set of map database participates in the positioning process of subsequent real-time images.
  • the positioning device performs positioning according to the positioning result of the N group map database.
  • the coordinate values of the positions indicated by the positioning results obtained by each vSLAM process may be averaged as the position result of the current real-time image. Then according to the position coordinates of the positioning, the navigation direction is given in combination with the path planning result.
  • the method may further include:
  • S104 Acquire an image captured by the panoramic image capturing device on a plurality of angles, and configure an image corresponding to each angle to be assigned to a map database used by a vSLAM process.
  • Each map database can contain 360-degree panoramic images, which saves the shooting workload while also saving the amount of calculations during positioning.
  • the positioning method provided by the embodiment of the present invention locates the map database and the real-time image corresponding to different shooting time periods or shooting angles, and then locates according to the positioning result, thereby solving the problem that the vSLAM cannot be positioned and navigated by the perspective and illumination effects.
  • the embodiment of the present invention may divide the function module into the positioning device according to the foregoing method example.
  • each function module may be divided according to each function, or two or more functions may be integrated into one processing module.
  • the above integrated modules can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of the module in the embodiment of the present invention is schematic, and is only a logical function division, and the actual implementation may have another division manner.
  • FIG. 5 shows a possible structural diagram of the positioning device involved in the above embodiment, in the case of dividing each functional module by corresponding functions.
  • the setting 11 includes: a creating unit 1101, a positioning unit 1102, and an obtaining unit 1103.
  • the creating unit 1101 is configured to support the positioning device to perform the process S101 in FIG. 3, the process S101 in FIG. 4;
  • the positioning unit 1102 is configured to support the positioning device to perform the processes S102, S103 in FIG. 3, the processes S102, S103 in FIG.
  • the obtaining unit 1103 is for supporting the positioning device to perform the process S104 in FIG. All the related content of the steps involved in the foregoing method embodiments may be referred to the functional descriptions of the corresponding functional modules, and details are not described herein again.
  • FIG. 6 shows a possible structural diagram of the electronic device involved in the above embodiment.
  • the electronic device 11 includes a processing module 1112 and a communication module 1113.
  • the processing module 1112 is configured to control and manage the actions of the positioning device.
  • the processing module 1112 is configured to support the positioning device to perform the processes S101-S103 in FIG. 3, the processes S101-S104 in FIG. 4, and/or Other processes of the described techniques
  • communication module 1113 is used to support communication of electronic device 11 with other external entities.
  • the electronic device 11 may further include a storage module 1111 for storing program codes and data of the positioning device.
  • the processing module 1112 may be a processor or a controller, for example, may be a central processing unit (CPU), a general-purpose processor, a digital signal processor (DSP), and an application-specific integrated circuit (application-specific). Integrated circuit (ASIC), field programmable gate array (FPGA) or other programmable logic device, transistor logic device, hardware component, or any combination thereof. It is possible to implement or carry out the various illustrative logical blocks, modules and circuits described in connection with the present disclosure.
  • the processor may also be a combination of computing functions, for example, including one or more microprocessor combinations, a combination of a DSP and a microprocessor, and the like.
  • the storage module 1111 may be a memory.
  • the positioning device When the processing module 1112 is a processor, the communication module 1113 is a communication interface, and the storage module 1111 is a memory, the positioning device according to the embodiment of the present invention may be the positioning device shown in FIG.
  • the electronic device 11 includes: a processor 1122 and a communication interface. 1123, memory 1121, and bus 1124.
  • the processor 1122, the communication interface 1123, and the memory 1121 are connected to each other through a bus 1124.
  • the bus 1124 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus. Wait.
  • PCI peripheral component interconnect
  • EISA extended industry standard architecture
  • the bus can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 7, but it does not mean that there is only one bus or one type of bus.
  • the electronic device herein may be a consumer electronic device, or may be a server that provides a corresponding function.
  • the steps of a method or algorithm described in connection with the present disclosure may be implemented in a hardware, or may be implemented by a processor executing software instructions.
  • the embodiment of the present invention further provides a storage medium, which may include a memory 1121 for storing computer software instructions used by the positioning device, including program code designed to execute the positioning method.
  • the software instructions may be composed of corresponding software modules, and the software modules may be stored in a random access memory (RAM), a flash memory, a read only memory (ROM), and an erasable programmable only.
  • EPROM Erasable programmable ROM
  • EEPROM electrically erasable programmable read only memory
  • registers hard disk, removable hard disk, compact disk read only (CD-ROM) or any other form of storage well known in the art.
  • An exemplary storage medium is coupled to the processor to enable the processor to read information from, and write information to, the storage medium.
  • the storage medium can also be an integral part of the processor.
  • the processor and the storage medium can be located in an ASIC. Additionally, the ASIC can be located in a positioning device. Of course, the processor and the storage medium can also be present in the positioning device as discrete components.
  • the embodiment of the invention further provides a computer program, which can be directly loaded into the memory 1121 and contains software code, and the computer program can be loaded and executed by the computer to implement the above-mentioned human-machine hybrid decision-making method.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Remote Sensing (AREA)
  • Software Systems (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Electromagnetism (AREA)
  • Signal Processing (AREA)
  • Navigation (AREA)
  • Image Analysis (AREA)

Abstract

提供了一种定位方法和装置,涉及定位和导航领域,用于解决vSLAM受视角和光照影响无法定位和导航的问题。该定位方法包括:创建多个视觉即时定位与地图构建vSLAM进程,并分别为各个vSLAM进程加载对应的地图数据库(S101);调用各个vSLAM进程基于实时图像进行定位(S102);根据各个定位成功的vSLAM进程所得到的定位结果进行定位(S103)。该定位方法和装置可应用于机器人、自动驾驶汽车等装置的定位或导航。

Description

定位方法和装置 技术领域
本发明涉及定位和导航领域,尤其涉及一种定位方法和装置。
背景技术
当前,vSLAM(visual simultaneous localization and mapping,视觉即时定位与地图构建)已经广泛应用在机器人导航中,其可以帮助机器人完成定位和导航任务,但是由于vSLAM是基于图像处理的,容易受到光照和视角变换的影响。比如,vSLAM在白天构建了某一场景某一时刻的地图,那么在晚上对于同样的场景,由于光照发生了变化,此时采集的vSLAM地图无法在白天构建的地图中找到匹配图像,因此无法实现定位和导航;另外,vSLAM在采集图像时受到传感器的视角影响,构建地图的视角是有指向性的,如果定位时视角与保存视角存在较大的差别,同样无法完成定位和导航。
发明内容
本发明的实施例提供一种定位方法和装置,主要用于解决vSLAM受视角和光照影响无法定位和导航的问题。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供了一种定位方法,包括:
创建多个视觉即时定位与地图构建vSLAM进程,并分别为各个vSLAM进程加载对应的地图数据库;
调用各个vSLAM进程基于实时图像进行定位;
根据各个定位成功的vSLAM进程所得到的定位结果进行定位。
第二方面,提供了一种定位装置,包括:
创建单元,用于创建多个视觉即时定位与地图构建vSLAM进程,并分别为各个vSLAM进程加载对应的地图数据库;
定位单元,用于调用各个vSLAM进程基于实时图像进行定位;
所述定位单元,还用于根据各个定位成功的vSLAM进程所得到的定位结果进行定位。
第三方面,提供了一种计算机存储介质,用于储存为定位装置所用的计算机软件指令,其包含执行第一方面所述的定位方法所设计的程序代码。
第四方面,提供了一种计算机程序产品,可直接加载到计算机的内部存储器中,并含有软件代码,所述计算机程序经由计算机载入并执行后能够实现第一方面所述的定位方法。
第五方面,提供了一种电子设备,包括:存储器、通信接口和处理器,所述存储器用于存储计算机执行代码,所述处理器用于执行所述计算机执行代码控制执行第一方面所述定位方法,所述通信接口用于所述定位设备与外部设备的数据传输。。
本发明实施例提供的定位方法和装置,通过对应不同拍摄时间段或拍摄视角的地图数据库与实时图像进行匹配,然后根据匹配结果进行定位,解决了vSLAM受视角和光照影响无法定位和导航的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的视角的示意图;
图2为本发明实施例提供的定位的示意图;
图3为本发明实施例提供的一种定位方法的流程示意图;
图4为本发明实施例提供的一种定位方法的流程示意图;
图5为本发明实施例提供的一种定位装置的结构示意图;
图6为本发明实施例提供的另一种定位装置的结构示意图;
图7为本发明实施例提供的又一种定位装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的定位方法和装置可以用于机器人、自动驾驶汽车等装置在室内外的视觉定位和导航。定位装置可以位于云端作为定位服务器,或者位于现场作为终端(例如导盲头盔)。
参照图1中所示,本发明实施例所述的视角是指摄像头光轴方向与前进方向的夹角。参照图2中所示,本发明实施例所述的定位是指确定在直角坐标系X-Y平面中的位置(x,y)。
本发明实施例提供了一种定位方法,应用于上述定位装置,参照图3中所示,包括:
S101、创建多个vSLAM进程,并分别为各个vSLAM进程加载对应的地图数据库。
地图数据库为针对同一路线事先采集的不同时段、不同视角的地图数据库。具体的,当起始地、目的地和行进路线确定之后,在某一时段,拍摄车辆保持视觉传感器模块的视角不变,从起始地沿行进路线向目的地出发,行进过程中间隔一定时间拍摄一次图像同时记录位置坐标(相对位置或绝对位置),到达目的地后即形成了该行进路线的一组地图数据库,其中,每个地图数据库均包括图像、拍摄图像时的视角、时间和位置坐标。
为了平衡计算量和匹配准确度,在拍摄时间间隔上可以如表1中所示以一小时为间隔分别采集0-23时的地图数据库,这样可以得到不同光照条件下的地图数据库;另外,在视角上可以如表1中所示以45度为间隔采集360度视角的地图数据库。进一步优选的,可以直接采用360度全景相机进行拍摄来得到如表2中所示的地图数据库,每个地图数据库包含360度全景图像,这样既节省拍摄工作量,同时也节省定位时的计算量。
表1
Figure PCTCN2016108392-appb-000001
表2
Figure PCTCN2016108392-appb-000002
所创建的vSLAM进程数目可以小于等于地图数据库的组数。例如,如果有16组地图数据库,可以创建1-16个进程来进行上述匹配运算,每个进程取一组地图数据库与实时图像进行定位,当一个进程定位完成后从剩余的几组地图数据库中取一组再与实时图像进行定位,直至所有N组地图数据库加载完成。
各个vSLAM进程可以采用相同的定位规则,针对不同的地图数据库进行定位;或者可以采用不同定位规则,针对同一地图数据库进行定位。
在一些实施方式中,在初始化时,可以创建多个vSLAM进程,当一个vSLAM进程定位失败时,则关闭该vSLAM进程,以节 省计算资源;当所创建的各个vSLAM进程均关闭后,重新创建多个vSLAM进程。
S102、调用各个vSLAM进程基于实时图像进行定位。
具体的,可以通过视觉传感器模块(例如摄像头)采集当前帧的实时图像。
在各个进程根据实时图像从加载的地图数据库中得到定位结果时,为了进一步简化运算,不必将二者所有像素点一一进行匹配,可以分别从二者中提取图像特征,然后将二者的图像特征进行匹配,这样可以大大节省计算量。更进一步地,由于地图数据库是保持不变的,可以提前将地图数据库保存为图像特征,这样每次进行定位时,可以仅对实时图像提取图像特征,可以进一步节省计算量。
在一些实施方式中,如果一个vSLAM进程定位成功,则该进程可以通知其他未定位成功vSLAM进程缩小在对应地图数据库中的搜索范围,使得缩小后的搜索范围包括定位成功的vSLAM进程所输出的定位结果所指示的位置。示例性的,假设第一进程处理第一组地图数据库,第二进程处理第二组地图数据库,第一进程处理在定位过程中首先搜索到第一组地图数据库的第100个地图数据库定位成功,则通知第二进程(尚未定位成功),在第二组地图数据库的第100个地图数据库附近最有可能定位成功,例如可以指示第二进程直接跳过第二组地图数据库中前89个地图数据库,从第90个地图数据库开始搜索,从而达到节省计算工作量的目的。
在一些实施方式中,在每一个vSLAM进程定位失败时,说明该进程所加载的本组地图数据库可能由于光照、视角、拍摄间隔等原因无法对实时图像进行定位,则本组地图数据库不再参与后续实时图像的定位过程,因此关闭该vSLAM进程,直至所有vSLAM进程均关闭后,重新按照步骤S101创建多个vSLAM进程,以期待下个拍摄间隔的实时图像能够与地图数据库定位成功,以达到进一步节省计算工作量的目的。具体的,可以通过对每组地图数据库置标 志位的方式来指示每组地图数据库是否参与后续实时图像的定位过程。
S103、定位装置根据N组地图数据库的定位结果进行定位。
具体的,可以将定位成功各个vSLAM进程所得定位结果所指示位置的坐标值求平均值,作为当前实时图像的位置结果。然后根据定位的位置坐标,结合路径规划结果给出导航方向。
可选的,参照图4中所示,在步骤S101之前,还可以包括:
S104、获取全景图像摄像装置在多个角度上拍摄的图像,将每一个角度上拍摄的图像对应的配置到一个vSLAM进程所使用的地图数据库中。
每个地图数据库可以包含360度全景图像,这样既节省拍摄工作量,同时也节省定位时的计算量。
本发明实施例提供的定位方法,通过对应不同拍摄时间段或拍摄视角的地图数据库与实时图像进行定位,然后根据定位结果进行定位,解决了vSLAM受视角和光照影响无法定位和导航的问题。
本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本发明能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本发明实施例可以根据上述方法示例对定位装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用对应各个功能划分各个功能模块的情况下,图5示出了上述实施例中所涉及的定位装置的一种可能的结构示意图,定位装 置11包括:创建单元1101、定位单元1102、获取单元1103。创建单元1101用于支持定位装置执行图3中的过程S101、图4中的过程S101;定位单元1102用于支持定位装置执行图3中的过程S102、S103,图4中的过程S102、S103;获取单元1103用于支持定位装置执行图4中的过程S104。其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
在采用集成的单元的情况下,图6示出了上述实施例中所涉及的电子设备的一种可能的结构示意图。电子设备11包括:处理模块1112和通信模块1113。处理模块1112用于对定位装置的动作进行控制管理,例如,处理模块1112用于支持定位装置执行图3中的过程S101-S103,图4中的过程S101-S104,和/或用于本文所描述的技术的其它过程,通信模块1113用于支持电子设备11与其他外部实体的通信。电子设备11还可以包括存储模块1111,用于存储定位装置的程序代码和数据。
其中,处理模块1112可以是处理器或控制器,例如可以是中央处理器(central processing unit,CPU),通用处理器,数字信号处理器(digital signal processor,DSP),专用集成电路(application-specific integrated circuit,ASIC),现场可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。存储模块1111可以是存储器。
当处理模块1112为处理器,通信模块1113为通信接口,存储模块1111为存储器时,本发明实施例所涉及的定位装置可以为图7所示的定位装置。
参阅图7所示,该电子设备11包括:处理器1122、通信接口 1123、存储器1121以及总线1124。其中,处理器1122、通信接口1123以及存储器1121通过总线1124相互连接;总线1124可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
在具体实施时,这里的电子设备可以为消费类的电子设备,也可以是指提供相应功能的服务器等。
结合本发明公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。本发明实施例还提供一种存储介质,该存储介质可以包括存储器1121,用于储存为定位装置所用的计算机软件指令,其包含执行定位方法所设计的程序代码。具体的,软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read only memory,ROM)、可擦除可编程只读存储器(erasable programmable ROM,EPROM)、电可擦可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于定位装置中。当然,处理器和存储介质也可以作为分立组件存在于定位装置中。
本发明实施例还提供一种计算机程序,该计算机程序可直接加载到存储器1121中,并含有软件代码,该计算机程序经由计算机载入并执行后能够实现上述的人机混合决策方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技 术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (15)

  1. 一种定位方法,其特征在于,包括:
    创建多个视觉即时定位与地图构建vSLAM进程,并分别为各个vSLAM进程加载对应的地图数据库;
    调用各个vSLAM进程基于实时图像进行定位;
    根据各个定位成功的vSLAM进程所得到的定位结果进行定位。
  2. 根据权利要求1所述的方法,其特征在于,所述创建多个视觉即时定位与地图构建vSLAM进程,包括:
    创建采用不同定位规则的多个vSLAM进程。
  3. 根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
    在其中一个vSLAM进程定位成功后,缩小其他vSLAM进程在其对应的地图数据库中的搜索范围,其中,缩小后的搜索范围包括定位成功的vSLAM进程所输出的定位结果所指示的位置。
  4. 根据权利要求1-3中任一项所述的方法,其特征在于,
    所述创建多个视觉即时定位与地图构建vSLAM进程,包括:
    在初始化时,创建多个vSLAM进程;以及在所创建的各个vSLAM进程均关闭后,创建多个vSLAM进程;
    所述方法还包括:
    在每一个vSLAM进程定位失败时,关闭该vSLAM进程。
  5. 根据权利要求1-4中任一项所述的方法,其特征在于,所述根据各个定位成功的vSLAM进程所得到的定位结果进行定位,包括:
    将定位成功的各个vSLAM进程所得到的定位结果所指示的位置的坐标值的平均值作为当前的定位结果。
  6. 根据权利要求1-5中任一项所述的方法,其特征在于,还包括:
    获取全景图像摄像装置在多个角度上拍摄的图像;
    将每一个角度上拍摄的图像对应的配置到一个vSLAM进程所使用的地图数据库中。
  7. 一种定位装置,其特征在于,包括:
    创建单元,用于创建多个视觉即时定位与地图构建vSLAM进程,并分别为各个vSLAM进程加载对应的地图数据库;
    定位单元,用于调用各个vSLAM进程基于实时图像进行定位;
    所述定位单元,还用于根据各个定位成功的vSLAM进程所得到的定位结果进行定位。
  8. 根据权利要求7所述的装置,其特征在于,所述创建单元,具体用于:
    创建采用不同定位规则的多个不同类型的vSLAM进程。
  9. 根据权利要求7或8所述的装置,其特征在于,所述定位单元还用于:
    在其中一个vSLAM进程定位成功后,缩小其他vSLAM进程在其对应的地图数据库中的搜索范围,其中,缩小后的搜索范围包括定位成功的vSLAM进程所输出的定位结果所指示的位置。
  10. 根据权利要求7-9中任一项所述的装置,其特征在于:
    所述创建单元,具体用于在初始化时,创建多个vSLAM进程;以及在所创建的各个vSLAM进程均关闭后,创建多个vSLAM进程;
    所述定位单元,还用于在每一个vSLAM进程定位失败时,关闭该vSLAM进程。
  11. 根据权利要求7-10中任一项所述的装置,其特征在于,所述定位单元具体用于:
    将定位成功的各个vSLAM进程所得到的定位结果所指示的位置的坐标值的平均值作为当前的定位结果。
  12. 根据权利要求7-11中任一项所述的装置,其特征在于,所述装置还包括:
    获取单元,用于获取全景图像摄像装置在多个角度上拍摄的图像;并将每一个角度上拍摄的图像对应的配置到一个vSLAM进程所使用的地图数据库中。
  13. 一种计算机存储介质,其特征在于,用于储存为定位装置所用的计算机软件指令,其包含执行权利要求1~6中任一项所述的定位方法所设计的程序代码。
  14. 一种计算机程序产品,其特征在于,可直接加载到计算机的内部存储器中,并含有软件代码,所述计算机程序经由计算机载入并执行后能够实现权利要求1~6中任一项所述的定位方法。
  15. 一种电子设备,其特征在于,包括:存储器、通信接口和处理器,所述存储器用于存储计算机执行代码,所述处理器用于执行所述计算机执行代码控制执行权利要求1-6任一项所述定位方法,所述通信接口用于所述定位设备与外部设备的数据传输。
PCT/CN2016/108392 2016-12-02 2016-12-02 定位方法和装置 WO2018098811A1 (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
PCT/CN2016/108392 WO2018098811A1 (zh) 2016-12-02 2016-12-02 定位方法和装置
CN201680006927.3A CN107223244B (zh) 2016-12-02 2016-12-02 定位方法和装置
US16/465,234 US20190333239A1 (en) 2016-12-02 2016-12-02 Positioning method and device
EP16922760.0A EP3534234A1 (en) 2016-12-02 2016-12-02 Localization method and device
JP2019529633A JP6775263B2 (ja) 2016-12-02 2016-12-02 測位方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/108392 WO2018098811A1 (zh) 2016-12-02 2016-12-02 定位方法和装置

Publications (1)

Publication Number Publication Date
WO2018098811A1 true WO2018098811A1 (zh) 2018-06-07

Family

ID=59927648

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/108392 WO2018098811A1 (zh) 2016-12-02 2016-12-02 定位方法和装置

Country Status (5)

Country Link
US (1) US20190333239A1 (zh)
EP (1) EP3534234A1 (zh)
JP (1) JP6775263B2 (zh)
CN (1) CN107223244B (zh)
WO (1) WO2018098811A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109691185A (zh) * 2018-07-26 2019-04-26 深圳前海达闼云端智能科技有限公司 一种定位方法、装置、终端和可读存储介质
CN112097742A (zh) * 2019-06-17 2020-12-18 北京地平线机器人技术研发有限公司 一种位姿确定方法及装置

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019126957A1 (zh) * 2017-12-25 2019-07-04 深圳前海达闼云端智能科技有限公司 端云结合定位方法、装置及电子设备、计算机程序产品
CN108564657B (zh) * 2017-12-28 2021-11-16 达闼科技(北京)有限公司 一种基于云端的地图构建方法、电子设备和可读存储介质
WO2019148467A1 (zh) * 2018-02-02 2019-08-08 深圳前海达闼云端智能科技有限公司 定位方法、装置、机器人及计算机可读存储介质
CN109074676B (zh) * 2018-07-03 2023-07-07 达闼机器人股份有限公司 建立地图的方法、定位方法、终端及计算机可读存储介质
WO2020006685A1 (zh) * 2018-07-03 2020-01-09 深圳前海达闼云端智能科技有限公司 一种建立地图的方法、终端和计算机可读存储介质
CN108885110B (zh) * 2018-07-10 2022-04-08 达闼机器人有限公司 一种定位方法、定位装置、定位系统及可读存储介质
WO2020014832A1 (zh) * 2018-07-16 2020-01-23 深圳前海达闼云端智能科技有限公司 一种地图加载的方法、装置、电子设备和可读存储介质
CN109073398B (zh) * 2018-07-20 2022-04-08 达闼机器人有限公司 一种建立地图的方法、定位方法、装置、终端及存储介质
CN109073390B (zh) * 2018-07-23 2022-10-04 达闼机器人股份有限公司 一种定位方法及装置、电子设备和可读存储介质
WO2020019221A1 (zh) * 2018-07-26 2020-01-30 深圳前海达闼云端智能科技有限公司 一种自主定位和地图建立方法、装置和机器人
CN110769159B (zh) * 2019-11-19 2021-07-09 海南车智易通信息技术有限公司 拍摄方法、拍摄装置以及全景拍摄系统
CN111932623A (zh) * 2020-08-11 2020-11-13 北京洛必德科技有限公司 一种基于移动机器人的人脸数据自动采集标注方法、系统及其电子设备
JP2022039187A (ja) * 2020-08-28 2022-03-10 富士通株式会社 位置姿勢算出方法および位置姿勢算出プログラム
JP7468254B2 (ja) * 2020-08-28 2024-04-16 富士通株式会社 位置姿勢算出方法および位置姿勢算出プログラム
WO2022116156A1 (zh) * 2020-12-04 2022-06-09 深圳市优必选科技股份有限公司 视觉定位方法、机器人及存储介质
CN112488007B (zh) * 2020-12-04 2023-10-13 深圳市优必选科技股份有限公司 视觉定位方法、装置、机器人及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103632606A (zh) * 2012-08-27 2014-03-12 联想(北京)有限公司 信息处理方法和装置
CN104520732A (zh) * 2012-02-10 2015-04-15 Isis创新有限公司 定位传感器的方法以及相关设备
CN105143821A (zh) * 2013-04-30 2015-12-09 高通股份有限公司 依据slam地图的广域定位
CN105469405A (zh) * 2015-11-26 2016-04-06 清华大学 基于视觉测程的同时定位与地图构建方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050234679A1 (en) * 2004-02-13 2005-10-20 Evolution Robotics, Inc. Sequential selective integration of sensor data
KR101538775B1 (ko) * 2008-09-12 2015-07-30 삼성전자 주식회사 전방 영상을 이용한 위치 인식 장치 및 방법
JP2011039968A (ja) * 2009-08-18 2011-02-24 Mitsubishi Electric Corp 車両可動領域検出装置
JP5793851B2 (ja) * 2010-11-08 2015-10-14 富士通株式会社 位置推定方法、位置推定装置及びプログラム
JP5500388B2 (ja) * 2011-02-16 2014-05-21 アイシン・エィ・ダブリュ株式会社 撮影位置特定システム、撮影位置特定プログラム、及び撮影位置特定方法
CN102654577A (zh) * 2011-03-03 2012-09-05 黎亮 一种高精度移动机器人二维地图数据融合方法
CN103631261B (zh) * 2012-08-27 2017-11-28 联想(北京)有限公司 信息处理方法和装置
US9495389B2 (en) * 2013-03-15 2016-11-15 Qualcomm Incorporated Client-server based dynamic search
CN103398717B (zh) * 2013-08-22 2016-04-20 成都理想境界科技有限公司 全景地图数据库采集系统及基于视觉的定位、导航方法
CN105737832B (zh) * 2016-03-22 2019-03-22 北京工业大学 基于全局最优数据融合的分布式slam方法
JP2018028489A (ja) * 2016-08-18 2018-02-22 トヨタ自動車株式会社 位置推定装置、位置推定方法
CN106885574B (zh) * 2017-02-15 2020-02-07 北京大学深圳研究生院 一种基于重跟踪策略的单目视觉机器人同步定位与地图构建方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104520732A (zh) * 2012-02-10 2015-04-15 Isis创新有限公司 定位传感器的方法以及相关设备
CN103632606A (zh) * 2012-08-27 2014-03-12 联想(北京)有限公司 信息处理方法和装置
CN105143821A (zh) * 2013-04-30 2015-12-09 高通股份有限公司 依据slam地图的广域定位
CN105469405A (zh) * 2015-11-26 2016-04-06 清华大学 基于视觉测程的同时定位与地图构建方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3534234A4 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109691185A (zh) * 2018-07-26 2019-04-26 深圳前海达闼云端智能科技有限公司 一种定位方法、装置、终端和可读存储介质
CN109691185B (zh) * 2018-07-26 2022-09-30 达闼机器人股份有限公司 一种定位方法、装置、终端和可读存储介质
CN112097742A (zh) * 2019-06-17 2020-12-18 北京地平线机器人技术研发有限公司 一种位姿确定方法及装置
CN112097742B (zh) * 2019-06-17 2022-08-30 北京地平线机器人技术研发有限公司 一种位姿确定方法及装置

Also Published As

Publication number Publication date
JP2019537023A (ja) 2019-12-19
CN107223244A (zh) 2017-09-29
JP6775263B2 (ja) 2020-10-28
EP3534234A4 (en) 2019-09-04
CN107223244B (zh) 2019-05-03
EP3534234A1 (en) 2019-09-04
US20190333239A1 (en) 2019-10-31

Similar Documents

Publication Publication Date Title
WO2018098811A1 (zh) 定位方法和装置
EP3627109B1 (en) Visual positioning method and apparatus, electronic device and system
US10659925B2 (en) Positioning method, terminal and server
EP3633539A2 (en) Method for position detection, device, and storage medium
JP2020046427A (ja) マルチセンサーのキャリブレーション方法とその装置、コンピュータ機器、媒体及び車両
WO2021004416A1 (zh) 一种基于视觉信标建立信标地图的方法、装置
WO2020133172A1 (zh) 图像处理方法、设备及计算机可读存储介质
CN108326845B (zh) 基于双目相机和激光雷达的机器人定位方法、装置及系统
CN111489288B (zh) 一种图像的拼接方法和装置
CN111754579A (zh) 多目相机外参确定方法及装置
WO2023005457A1 (zh) 位姿计算方法和装置、电子设备、可读存储介质
CN113029128A (zh) 视觉导航方法及相关装置、移动终端、存储介质
WO2021129345A1 (zh) 场景地图建立方法、设备及存储介质
WO2020019117A1 (zh) 一种定位方法及装置、电子设备和可读存储介质
CN112150550B (zh) 一种融合定位方法及装置
WO2021027945A1 (zh) 可移动设备的坐标获取方法及装置
CN110966981B (zh) 测距方法及装置
WO2023184869A1 (zh) 室内停车场的语义地图构建及定位方法和装置
CN113628284B (zh) 位姿标定数据集生成方法、装置、系统、电子设备及介质
CN110853098A (zh) 机器人定位方法、装置、设备及存储介质
WO2021072764A1 (zh) 作业区域处理方法、作业任务执行方法、设备及存储介质
WO2022204953A1 (zh) 确定俯仰角的方法、装置及终端设备
CN111462251B (zh) 摄像机标定方法及终端
CN108534757B (zh) 一种基于云端的视觉地图比例尺检测方法及装置
CN117830397A (zh) 重定位方法、装置、电子设备、介质和车辆

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16922760

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019529633

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2016922760

Country of ref document: EP

Effective date: 20190529