CN112400122A - 定位目标对象的系统和方法 - Google Patents
定位目标对象的系统和方法 Download PDFInfo
- Publication number
- CN112400122A CN112400122A CN201980045176.XA CN201980045176A CN112400122A CN 112400122 A CN112400122 A CN 112400122A CN 201980045176 A CN201980045176 A CN 201980045176A CN 112400122 A CN112400122 A CN 112400122A
- Authority
- CN
- China
- Prior art keywords
- map
- pose
- target object
- target
- determining
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000003860 storage Methods 0.000 claims description 23
- 238000005259 measurement Methods 0.000 claims description 15
- 238000004891 communication Methods 0.000 claims description 12
- 230000001131 transforming effect Effects 0.000 claims description 11
- 238000012545 processing Methods 0.000 description 67
- 230000015654 memory Effects 0.000 description 34
- 230000008569 process Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 14
- 230000004048 modification Effects 0.000 description 10
- 238000012986 modification Methods 0.000 description 10
- 230000033001 locomotion Effects 0.000 description 9
- 239000011159 matrix material Substances 0.000 description 6
- 230000009466 transformation Effects 0.000 description 6
- 230000003190 augmentative effect Effects 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000005484 gravity Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000004807 localization Effects 0.000 description 3
- 239000003550 marker Substances 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000010977 jade Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000029305 taxis Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/42—Determining position
- G01S19/48—Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system
- G01S19/49—Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system whereby the further system is an inertial position system, e.g. loosely-coupled
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/28—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
- G01C21/30—Map- or contour-matching
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
- G01C21/165—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/86—Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/42—Determining position
- G01S19/48—Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system
- G01S19/485—Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system whereby the further system is an optical system or imaging system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2420/00—Indexing codes relating to the type of sensors based on the principle of their operation
- B60W2420/40—Photo, light or radio wave sensitive means, e.g. infrared sensors
- B60W2420/403—Image sensing, e.g. optical camera
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2420/00—Indexing codes relating to the type of sensors based on the principle of their operation
- B60W2420/40—Photo, light or radio wave sensitive means, e.g. infrared sensors
- B60W2420/408—Radar; Laser, e.g. lidar
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2556/00—Input parameters relating to data
- B60W2556/45—External transmission of data to or from the vehicle
- B60W2556/50—External transmission of data to or from the vehicle of positioning data, e.g. GPS [Global Positioning System] data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Electromagnetism (AREA)
- Human Computer Interaction (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Navigation (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本申请涉及确定目标对象的目标位姿的系统和方法,该方法包括实时确定目标对象的初始位姿(510)。该方法还包括确定表明与所述目标对象的所述初始位姿相关联的第一环境的至少两个图像(520)。该方法进一步包括基于所述至少两个图像确定第一地图。所述第一地图包括表明与所述目标对象的所述初始位姿相关联的所述第一环境的第一地图数据(530)。该方法还包括基于所述初始位姿、所述第一地图和第二地图实时确定所述目标对象的目标位姿。所述第二地图包括表明与包括所述目标对象的所述初始位姿的区域相对应的第二环境的第二地图数据(540)。
Description
技术领域
本申请涉及定位目标对象的系统和方法,尤其涉及使用由定位传感器和预先生成的高精度地图数据收集的实时地图数据来定位目标对象的系统和方法。
背景技术
全球定位系统(Global Positioning System,GPS)能够定位对象(例如,移动的车辆、办公楼等)。通常,GPS提供对象在经度和纬度上的位置而没有提供在姿态(如偏航角、侧滚角、俯仰角)上的位置。在一些地方(如,隧道),GPS信号可能不够强而不能准确地定位通过隧道的对象。为了解决这些问题,当前平台可以将GPS与其他定位传感器融合以定位对象,例如,惯性测量单元(Inertial Measurement Unit,IMU)。IMU可以提供对象的姿态。此外,当GPS信号的强度在某些地方(例如,隧道)较弱时,IMU仍然可以独自定位对象。然而,在诸如定位和导航自主车辆的情况下,GPS/IMU的定位精度(例如,在米级或在分米级别)不够高。由于高精度地图的定位精度可以达到厘米级,本申请融合使用GPS/IMU和高精度地图来定位对象以提高定位精度。因此,期望提供使用GPS/IMU和高精度地图以更高精度自动定位目标对象的系统和方法。
发明内容
本申请的一方面提供了一种确定目标对象的目标位姿的系统。所述系统包括至少一个存储介质以及至少一个与所述至少一个存储介质通信的处理器。所述至少一个存储介质包括指令集。其中,当执行所述指令集时,所述至少一个处理器用于:通过定位设备,实时确定目标对象的初始位姿;通过至少两个图像获取设备,确定表明与所述目标对象的所述初始位姿相关联的第一环境的至少两个图像;基于所述至少两个图像确定第一地图,其中,所述第一地图包括表明与所述目标对象的所述初始位姿相关联的所述第一环境的第一地图数据;以及基于所述初始位姿、所述第一地图和第二地图实时确定所述目标对象的目标位姿,其中,所述第二地图是基于激光雷达预先确定的,和所述第二地图包括表明与包括所述目标对象的所述初始位姿的区域相对应的第二环境的第二地图数据。
在一些实施例中,所述定位设备包括全球定位系统GPS和惯性测量单元IMU。
在一些实施例中,将所述全球定位系统和所述惯性测量单元分别安装在所述目标对象上。
在一些实施例中,所述初始位姿包括所述目标对象的位置和所述目标对象的姿态。
在一些实施例中,所述至少两个图像获取设备包括至少一个深度相机。
在一些实施例中,将所述至少一个深度相机分别安装在所述目标对象上。
在一些实施例中,为了基于所述至少两个图像确定第一地图,所述至少一个处理器用于:确定所述至少两个图像获取设备中每一个的第一个位姿;以及基于所述至少两个图像获取设备的第一位姿,通过融合所述至少两个图像确定所述第一地图。
在一些实施例中,为了基于所述至少两个图像获取设备的第一位姿,通过融合所述至少两个图像来确定所述第一地图,所述至少一个处理器用于:获取由所述至少两个图像中的每一个表示的点云;基于所述至少两个图像获取设备的所述第一位姿,将所述点云变换为融合后的点云;以及基于所述融合后的点云确定所述第一地图。
在一些实施例中,为了基于所述初始位姿、所述第一地图和第二地图实时确定所述目标对象的所述目标位姿,所述至少一个处理器用于:基于所述目标对象的所述初始位姿确定所述第二地图的至少一部分,其中,所述第二地图的所述至少一部分包括所述第二地图数据的至少一部分,其对应于在所述区域内包括所述目标对象的所述初始位姿的子区域;以及通过对比所述第一地图数据与所述第二地图数据的所述至少一部分确定所述目标位姿。
在一些实施例中,为了通过对比所述第一地图数据与所述第二地图数据的所述至少一部分确定所述目标位姿,所述至少一个处理器用于:确定所述第二地图的所述至少一部分上的每个位姿的地图数据与所述第一地图的地图数据之间的匹配度;以及指定在所述第二地图的所述至少一部分上的具有最高匹配度的位姿为所述目标位姿。
在一些实施例中,所述匹配度由归一化信息距离NID或互信息MI表示。
在一些实施例中,所述目标对象包括自主车辆或机器人。
在一些实施例中,所述至少一个处理器用于:向终端发送消息,指示所述终端实时地在所述终端的用户界面上显示所述目标对象的所述目标位姿。
在一些实施例中,所述至少一个处理器用于:基于所述目标对象的所述目标位姿实时为所述目标对象提供导航服务。
本申请的另一方面提供了一种确定目标对象的目标位姿的方法。所述方法可以在计算设备上实现,所述计算设备有至少一个处理器、至少一个存储介质和连接到网络的通信平台,所述方法包括:通过定位设备实时确定目标对象的初始位姿;通过至少两个图像获取设备确定表明与所述目标对象的所述初始位姿相关联的第一环境的至少两个图像;基于所述至少两个图像确定第一地图,其中,所述第一地图包括表明与所述目标对象的所述初始位姿相关的所述第一环境的第一地图数据;以及基于所述初始位姿、所述第一地图和第二地图实时确定所述目标对象的目标位姿,其中,所述第二地图是基于激光雷达预先确定的,和所述第二地图包括表明与包括所述目标对象的所述初始位姿的区域相对应的第二环境的第二地图数据。
在一些实施例中,所述定位设备包括全球定位系统GPS和惯性测量单元IMU。
在一些实施例中,所述全球定位系统和所述惯性测量单元分别安装在所述目标对象上。
在一些实施例中,所述初始位姿包括所述目标对象的位置和所述目标对象的姿态。
在一些实施例中,所述至少两个图像获取设备包括至少一个深度相机。
在一些实施例中,所述至少一个深度相机分别安装在所述目标对象上。
在一些实施例中,基于所述至少两个图像确定第一地图包括:确定所述至少两个图像获取设备中每一个的第一个位姿;以及基于所述至少两个图像获取设备的第一位姿,通过融合所述至少两个图像确定所述第一地图。
在一些实施例中,基于所述至少两个图像获取设备的第一位置,通过融合所述至少两个图像来确定所述第一地图包括:获取由所述至少两个图像中的每一个表示的点云;基于所述至少两个图像获取设备的所述第一位姿,将所述点云变换为融合后的点云;以及基于所述融合后的点云确定所述第一地图。
在一些实施例中,基于所述初始位姿、所述第一地图和第二地图实时确定所述目标对象的所述目标位姿包括:基于所述目标对象的所述初始位姿确定所述第二地图的至少一部分,其中,所述第二地图的所述至少一部分包括所述第二地图数据的至少一部分,其对应于在所述区域内包括所述目标对象的所述初始位姿的子区域;以及通过对比所述第一地图数据与所述第二地图数据的所述至少一部分确定所述目标位姿。
在一些实施例中,通过对比所述第一地图数据与所述第二地图数据的所述至少一部分确定所述目标位姿包括:确定所述第二地图的所述至少一部分上的每个位姿的地图数据与所述第一地图的地图数据之间的匹配度;以及指定在所述第二地图的至少一部分上的具有最高匹配度的位姿为所述目标位姿。
在一些实施例中,所述匹配度由归一化信息距离NID或互信息MI表示。
在一些实施例中,所述目标对象包括自主车辆或机器人。
在一些实施例中,所述方法进一步包括:向终端发送消息,指示所述终端实时地在所述终端的用户界面上显示所述目标对象的所述目标位姿。
在一些实施例中,所述方法进一步包括:基于所述目标对象的所述目标位姿实时为所述目标对象提供导航服务。
本申请的另一方面提供了一种非暂时性计算机可读存储介质,包括可执行指令,当由至少一个处理器执行时,所述可执行指令指示所述至少一个处理器执行方法,所述方法包括:通过定位设备实时确定目标对象的初始位姿;通过至少两个图像获取设备确定表明与所述目标对象的所述初始位姿相关联的第一环境的至少两个图像;基于所述至少两个图像确定第一地图,其中,所述第一地图包括表明与所述目标对象的所述初始位姿相关的所述第一环境的第一地图数据;以及基于所述初始位姿、所述第一地图和第二地图实时确定所述目标对象的目标位姿,其中,所述第二地图是基于激光雷达预先确定的,和所述第二地图包括表明与包括所述目标对象的所述初始位姿的区域相对应的第二环境的第二地图数据。
本申请的一部分附加特性可以在下面的描述中进行说明。通过对以下描述和相应附图的研究或者对实施例的生产或操作的了解,本申请的一部分附加特性对于本领域技术人员是明显的。本申请的特征可以通过对以下描述的具体实施例的各种方面的方法、手段和组合的实践或使用得以实现和达到。
附图说明
本申请将通过示例性实施例进行进一步描述。这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的符号表示相同的部件,其中:
图1是根据本申请的一些实施例所示的示例性定位系统的示意图;
图2是根据本申请的一些实施例所示的计算设备的示例性硬件和/或软件组件的示意图;
图3是根据本申请的一些实施例所示的移动设备的示例性硬件组件和/或软件组件的示意图;
图4是根据本申请的一些实施例所示的示例性处理引擎的模块图;
图5是根据本申请的一些实施例所示的确定目标对象的目标位姿的示例性流程的流程图;
图6是根据本申请的一些实施例所示的基于至少两个图像确定第一地图的示例性流程的流程图;以及
图7是根据本申请的一些实施例所示的基于目标对象的初始位姿、第一地图和第二地图确定目标对象的目标位姿的示例性流程的流程图。
具体实施方式
以下描述是为了使本领域的普通技术人员能够实施和利用本申请,并且该描述是在特定的应用场景及其要求的环境下提供的。对于本领域的普通技术人员来讲,显然可以对所公开的实施例作出各种改变,并且在不偏离本申请的原则和范围的情况下,本申请中所定义的普遍原则可以适用于其他实施例和应用场景。因此,本申请并不限于所描述的实施例,而应该被给予与权利要求一致的最广泛的范围。
本申请中所使用的术语仅用于描述特定的示例性实施例,并不限制本申请的范围。如本申请使用的单数形式“一”、“一个”及“该”可以同样包括复数形式,除非上下文明确提示例外情形。还应当理解,如在本申请说明书中,术语“包括”、“包含”仅提示存在所述特征、整体、步骤、操作、组件和/或部件,但并不排除存在或添加一个或以上其他特征、整体、步骤、操作、组件、部件和/或其组合的情况。
根据以下对附图的描述,本申请的这些和其他的特征、特点以及相关结构元件的功能和操作方法,以及部件组合和制造经济性,可以变得更加显而易见,这些附图都构成本申请说明书的一部分。然而,应当理解的是,附图仅仅是为了说明和描述的目的,并不旨在限制本申请的范围。应当理解的是,附图并不是按比例绘制的。
本申请中使用了流程图用来说明根据本申请的一些实施例的系统所执行的操作。应当理解的是,流程图中的操作可以不按顺序执行。相反,可以按照倒序或同时处理各种步骤。此外,可以向流程图添加一个或以上其他操作。也可以从流程图中删除一个或以上操作。
本申请的一个方面涉及实时确定目标对象的目标位姿的系统和方法。系统可以通过定位设备(例如,GPS/IMU)实时确定目标对象的初始位姿。系统还可以确定包括第一地图数据的第一地图,该第一地图数据表明与目标对象的初始位姿相关联的实时第一环境。具体地,系统可以基于与第一环境相关联的至少两个图像来确定第一地图,该至少两个图像可以由至少两个图像获取设备获取。此外,至少两个图像获取设备可以包括至少一个深度相机。另外,系统可以预先确定包括表明第二环境地图数据的高精度地图,该第二环境对应于包括目标对象初始位姿的区域。该系统可以基于初始位姿通过匹配第一地图和高精度地图来确定目标对象的目标位姿。
根据本申请,由于高精度地图的定位精度高于GPS/IMU的定位精度,与仅使用GPS/IMU的定位平台相比,通过融合GPS/IMU和高精度地图实现的定位精度可以得到改善。
图1是根据本申请的一些实施例所示的示例性定位系统的示意图。定位系统100可以包括服务器110、网络120、终端设备130、定位引擎140和存储器150。
在一些实施例中,服务器110可以是单个服务器,也可以是服务器组。所述服务器组可以是集中式的,也可以是分布式的(例如,服务器110可以是分布式的系统)。在一些实施例中,服务器110可以是本地的,也可以是远程的。例如,服务器110可以经由网络120访问存储于终端设备130或存储器150中的信息和/或数据。又例如,服务器110可以直接连接到终端设备130和/或存储器150以访问存储的信息和/或数据。在一些实施例中,服务器110可以在云平台上实施。仅作为示例,该云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。在一些实施例中,服务器110可以在图2中所示的有一个或以上组件的计算设备200上实现。
在一些实施例中,服务器110可以包括处理引擎112。处理引擎112可以处理信息和/或数据以执行本申请中描述的一个或以上的功能。例如,处理引擎112可以基于表明与对象的位置相关联的第一环境的至少两个图像来确定第一地图。在一些实施例中,处理引擎112可以包括一个或者以上处理引擎(例如,单芯片处理引擎或多芯片处理引擎)。处理引擎112可以包括中央处理单元(CPU)、专用集成电路(ASIC)、专用指令集处理器(ASIP)、图形处理单元(GPU)、物理处理单元(PPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、控制器、微控制器单元、精简指令集计算机(RISC)、微处理器或类似物、或其任意组合。
网络120可以促进信息和/或数据的交换。在一些实施例中,定位系统100中的一个或以上组件(例如,服务器110、终端设备130或存储器150)可以通过网络120将信息和/或数据发送到定位系统100中的其他组件。例如,服务器110可以通过网络120从定位引擎140获取表明与对象的位姿相关联的第一环境的至少两个图像。在一些实施例中,网络120可以是有线网络或无线网络等或其任意组合。仅作为示例,网络120可以包括电缆网络、有线网络、光纤网络、电信网络,内部网络、互联网、局域网络(LAN)、广域网络(WAN)、无线局域网络(WLAN)、城域网(MAN),公共开关电话网络(PSTN)、蓝牙网络、ZigBee网络、近场通信(NFC)网络等,或其任意组合。在一些实施例中,网络120可以包括一个或以上网络接入点。例如,网络120可以包括有线或无线网络接入点,如基站和/或互联网交换点120-1、120-2、……,通过该网络交换点,系统100的一个或以上部件可以连接到网络120以交换数据和/或信息。
在一些实施例中,终端设备130可以包括移动设备130-1、平板计算机130-2、膝上型计算机130-3、车载设备130-4等或其任意组合。在一些实施例中,移动设备130-1可以包括智能家居设备、可穿戴设备、智能移动设备、虚拟现实设备、增强现实设备等,或其任意组合。在一些实施例中,智能家居设备可以包括智能照明设备、智能电器控制设备、智能监控设备、智能电视、智能摄像机、对讲机等,或其任意组合。在一些实施例中,该可穿戴设备可以包括智能手镯、智能鞋袜、智能眼镜、智能头盔、智能手表、智能衣服、智能背包、智能配件等或其任意组合。在一些实施例中,智能移动设备可以包括智能电话、个人数字助理(PDA)、游戏设备、导航设备、销售点(POS)等,或其任意组合。在一些实施例中,虚拟现实设备和/或增强型虚拟现实设备可以包括虚拟现实头盔、虚拟现实眼镜、虚拟现实眼罩、增强现实头盔、增强现实眼镜、增强现实眼罩等,或其任意组合。例如,虚拟现实设备和/或增强现实设备可以包括Google GlassTM、Oculus RiftTM、HololensTM或Gear VRTM等。在一些实施例中,车载设备130-4可以包括车载计算机、车载电视等。
在一些实施例中,终端设备130可以与定位系统100的其他组件(例如,服务器110、定位引擎140、存储器150)进行通信。例如,服务器110可以将目标对象的目标位姿发送到终端设备130。终端设备130可以在终端设备130的用户界面(图1中未示出)上显示目标位姿。又例如,终端设备130可以发送指令并控制服务器110执行指令。
如图1所示,定位引擎112可以至少包括定位设备140-1和至少两个图像获取设备140-2。可以将定位设备140-1安装和/或固定在目标对象上。定位设备140-1可以确定目标对象的姿态数据。姿态数据可以包括对应于目标对象的位置和对应于目标对象的姿态。位置可以指由经度和纬度信息表示的空间(例如,世界)中的目标对象的绝对位置。姿态可以指目标对象相对于惯性参照系的方向,如,水平面、垂直平面、目标对象的运动平面或诸如附近物体的另一实体。姿态可以包括目标对象的偏航角、目标对象的俯仰角、目标对象的侧滚角等。
在一些实施例中,定位设备140-1可以包括不同类型的定位传感器(例如,如图1所示的两种类型的定位传感器)。可以将不同类型的定位传感器分别安装和/或固定在目标对象上。在一些实施例中,可以将一个或以上定位传感器集成到目标对象中。在一些实施例中,定位设备140-1可以包括能够确定目标对象的绝对位置的第一定位传感器和能够确定目标对象的姿态的第二定位传感器。仅作为示例,第一定位传感器可以包括全球定位系统(global positioning system,GPS)、全球导航卫星系统(global navigation satellitesystem,GLONASS)、罗盘导航系统(compass navigation system,COMPASS)、伽利略定位系统、准天顶卫星系统(quasi-zenith satellite system,QZSS)、无线保真(WiFi)定位技术等或其任何组合。第二定位传感器可以包括惯性测量单元(IMU)。在一些实施例中,IMU可以包括至少一个运动传感器和至少一个旋转传感器。至少一个运动传感器可以确定目标对象的线性加速度。至少一个旋转传感器可以确定目标对象的角速度。IMU可以基于线性加速度和角速度确定目标对象的姿态。然而,基于IMU确定目标对象的位姿时存在误差,也即基于IMU确定的目标对象的位姿不准确,可以将IMU和其他定位设备结合使用来准确地确定目标对象的姿态。出于说明的目的,IMU可以包括平台式惯性测量单元(PIMU)、联式惯性测量单元(SIMU)等。
出于说明目的,定位设备140-1可以包括GPS和IMU(也称为”GPS/IMU”)。可以将GPS和IMU分别安装和/或固定在目标对象上。在一些实施例中,可以将GPS和/或IMU集成到目标对象。GPS可以确定与目标对象相对应的位置,IMU可以确定与目标对象相对应的姿态。
在一些实施例中,可以将至少两个图像获取设备140-2中的每一个安装在目标对象上。至少两个图像获取设备140-2可以分别获取图像数据。在一些实施例中,至少两个图像获取设备可以包括至少一个深度相机。图像数据可以包括与第一环境相关联的每个点的距离信息和像素信息。点的距离信息可以表示从观察点(例如,获取图像处的点)到该点的距离。像素信息可以表示该点的灰度值或该点接收的光的强度。
存储器150可以储存数据和/或指令。在一些实施例中,存储器150可以存储从终端设备130获取的数据。在一些实施例中,存储器150可以储存服务器110用来执行或使用来完成本申请中描述的示例性方法的数据及/或指令。在一些实施例中,存储器150可包括大容量存储器、可移动存储器、易失性读写存储器、只读存储器(ROM)等或其任意组合。示例性的大容量存储器可以包括磁盘、光盘、固态磁盘等。示例性可移动存储器可以包括闪存驱动器、软盘、光盘、存储卡、压缩盘、磁带等。示例性易失性读写存储器可以包括随机存取内存(RAM)。示例性RAM可包括动态随机存取存储器(DRAM)、双倍数据速率同步动态随机存取存储器(DDR SDRAM)、静态随机存取存储器(SRAM)、晶闸管随机存取存储器(T-RAM)和零电容随机存取存储器(Z-RAM)等。示例性只读存储器可以包括掩模型只读存储器(MROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(PEROM)、电可擦除可编程只读存储器(EEPROM)、光盘只读存储器(CD-ROM)和数字多功能磁盘只读存储器等。在一些实施例中,存储器150可以在云平台上实现。仅作为示例,云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云,多层云等,或其任意组合。
在一些实施例中,存储器150可以连接到网络120以与定位系统100的一个或在一些实施例中,存储器150可以连接到网络120以与定位系统100的一个或以上组件(例如,服务器110、终端设备130)通信。定位系统100的一个或以上组件可以经由网络120访问存储在存储器150中的数据和/或指令。在一些实施例中,存储器150可以直接连接到定位系统100的一个或以上组件(例如,服务器110、终端设备130)或与之通信。在一些实施例中,存储器150可以是服务器110的一部分。
本领域普通技术人员将理解,当定位系统100的元件(或组件)执行时,该元件可以通过电信号和/或电磁信号执行。例如,当终端设备130向服务器110发送指令时,终端设备130的处理器可以生成编码该指令的电信号。然后,终端设备130的处理器可以将电信号发送到输出端口。若终端设备130通过有线网络与服务器110通信,则输出端口可物理连接至电缆,其进一步将电信号传输给服务器110的输入端口。如果终端设备130通过无线网络与服务器110通信,则终端设备130的输出端口可以是一个或以上天线,其将电信号转换为电磁信号。在电子设备(例如终端设备130、定位引擎140和/或服务器110)内,当其处理器处理指令,发出指令和/或执行动作时,该指令和/或动作通过电信号执行。例如,当处理器从存储介质(例如,存储器150)检索或保存数据时,它可以将电信号发送到存储介质的读/写设备,其可以在存储介质中读取或写入结构化数据。该结构化数据可以电信号的形式通过电子装置的总线传输至处理器。如本申请所示的,电信号可以指一个电信号、一系列电信号和/或至少两个不连续的电信号。
图2是根据本申请的一些实施例所示的计算设备200的示例性硬件和/或软件组件的示意图。在一些实施例中,服务器110和/或终端设备130可以在计算设备200上实现。例如,处理引擎112可以在计算设备200上实施并执行本申请所公开的处理引擎112的功能。
计算设备200可用于实现如本申请所述的定位系统100的任何组件。例如,处理引擎112可以在计算设备200上通过其硬件、软件程序、固件或其组合实现。为了方便起见,图中仅示出了一台计算机,但是本申请所描述的与确定目标对象的目标位姿有关的计算机功能可以在多个类似平台上以分布式的方式实现,以分担处理负载。
计算设备200可以包括与网络相连接通信端口250,以实现数据通信。计算设备200还可以包括处理器220,可以以一个或以上处理器(例如,逻辑电路)的形式执行程序指令。例如,处理器220可以包括接口电路和其中的处理电路。接口电路可以被配置为从总线210接收电信号,其中电信号编码用于处理电路的结构化数据和/或指令。处理电路可以进行逻辑计算,然后将结论、结果和/或指令编码确定为电信号。然后,接口电路可以经由总线210从处理电路发出电信号。
计算设备200还可以包括不同形式的程序存储和数据存储,例如磁盘270、只读存储器(ROM)230或随机存取存储器(RAM)240,用于存储由计算设备处理和/或传输的各种数据文件。示例性计算机平台也可以包括储存在ROM 230、RAM 240和/或其他类型的非暂时储存介质中的程序指令,以由处理器220执行。本申请的方法和/或流程可以以程序指令的方式实现。计算设备200还包括输入/输出(I/O)260,用来支持计算机和其他组件之间的输入/输出。计算设备200也可以通过网络通信接收编程和数据。
为了方便说明,图2中仅描述了一个处理器。也可以包括至少两个处理器,因此本申请中描述的由一个处理器执行的操作和/或方法步骤也可以由多个处理器共同地或单独执行。例如,如果在本申请中,计算设备200的处理器执行步骤A和步骤B,应当理解的是,步骤A和步骤B也可以由计算设备200的两个不同的CPU和/或处理器共同地或独立地执行(例如,第一处理器执行步骤A、第二处理器执行步骤B,或者第一和第二处理器共同地执行步骤A和步骤B)。
图3是根据本申请的一些实施例所示的移动设备的示例性硬件和/或软件组件的示意图。终端设备130可以在移动设备300上实现。如图3所示,移动设备300可以包括通信平台310、显示器320、图形处理单元(GPU)330、中央处理单元(CPU)340、输入/输出(I/O)350、内存360、操作系统(OS)370和存储器390。在一些实施例中,任何其他合适的组件,包括但不限于系统总线或控制器(未示出),也可包括在移动设备300内。
在一些实施例中,操作系统370(例如,iOSTM、AndroidTM、Windows PhoneTM等)和一个或以上应用程序380可从存储器390下载至内存360以及由CPU 340执行。应用程序380可以包括浏览器或任何其他合适的移动应用程序,用于接收和呈现与确定目标对象的目标位姿或来自定位系统100的其他信息有关的信息。用户与信息流的交互可以经由输入/输出单元(I/O)350实现,并且经由网络120提供给处理引擎112和/或定位系统100的其他组件。
图4是根据本申请的一些实施例所示的示例性处理引擎的模块图。处理引擎112可以包括第一位姿确定模块410、图像确定模块420、第一地图确定模块430和第二位姿确定模块440。
第一位姿确定模块410可以被配置为通过定位设备(例如,定位设备140-1)实时确定目标对象的初始位姿。其中,目标对象可以是任何需要定位的对象。目标对象的初始位姿可以指对应于目标对象的目标点的位姿。在一些实施例中,对于不同目标对象,第一定位模块410可以预先确定相同的点(例如,中心)作为这些不同目标对象的目标点。在一些实施例中,对于不同目标对象,第一定位模块410可以预先确定不同点为这些不同目标对象的目标点。仅作为示例,目标点可以包括目标对象的重心、定位设备(例如,定位设备140-1)在目标对象上安装的点、图像获取设备(例如,图像获取设备140-2)在目标对象上安装的点等。
在一些实施例中,第一定位确定模块410可以基于由定位设备确定的第一位姿数据,和与目标点和定位设备在目标对象上安装的第一点相关联的关系来确定初始位姿。在一些实施例中,第一定位确定模块410可以根据与第一点和目标点相关联的关系通过转换第一位姿来确定初始位姿。具体地,第一定位确定模块410可以基于与第一点和目标点相关联的关系来确定转换矩阵。第一定位确定模块410可以基于与第一点和目标点相关联的平移以及与第一点和目标点相关联的旋转来确定转换矩阵。
其中,第一定位数据可以包括对应于第一点的位置和对应于第一点的姿态。位置可以指由经度和纬度信息表示的空间(例如,世界)中的点(例如,第一点)的绝对位置。该绝对位置可以表示空间中的点的地理位置,即经度和纬度。姿态可以指点(例如,第一点)相对于惯性参考系的方向,例如水平面、垂直平面、目标对象的运动平面或诸如附近物体的另一实体。对应于第一点的姿态可以包括第一点的偏航角、第一点的侧滚角、第一点的俯仰角等。因此,目标对象的初始位姿(即,目标点)可以包括目标对象的初始位置(即,目标点)和目标对象的初始姿态(即,目标点)。初始位置可以指空间中的目标对象的绝对位置,即经度和纬度。初始姿态可以指目标对象相对于惯性参考系的方向,例如水平面、垂直平面、目标对象的运动平面或诸如附近物体的另一实体。
图像确定模块420可以被配置用于通过至少两个图像获取设备确定表明与目标对象的初始位姿相关联的第一环境的至少两个图像。其中,第一环境可以指从初始位姿处获取目标对象所处的环境。至少两个图像可以包括表明从初始位姿处获取的第一环境的图像数据(也被称为“第一图像数据”)。图像确定模块420可以基于由至少两个图像获取设备中的每一个获取的图像数据(也称为“第二图像数据”)来确定第一图像数据。
在一些实施例中,可以将至少两个图像获取设备中的每一个安装在目标对象的第四点处。至少两个图像获取设备可以从对应于第四点的第四位姿处分别获取第二图像数据。如上所述,对应于初始位姿的目标点可以是目标对象的重心、定位设备在目标对象上安装的点、图像获取设备在目标对象上安装的点等。第四点中的每一个可以与目标点不同或者与目标点相同。在一些实施例中,如果目标点与第四点中的一个相同,目标对象的初始位姿即为第四点对应的位姿,从第四位姿处获取的图像数据是从初始位姿处获取的图像数据。在一些实施例中,如果目标点与第四点中的每一个不同,由于目标点和第四点可以固定在目标对象上,对应于目标点的初始位姿与对应于第四点的第四位姿之间的差异可以忽略不计,从而从初始位姿处获取的第一图像数据和从第四位姿处获取的第二图像数据可以是相同的,图像确定模块420可以将从第四位姿处获取的图像数据指定为从初始位姿处获取的图像数据。
在不同的应用场景中,第一环境中的物体可能不同。以道路上行驶的车辆为例,在第一环境中可能有道路、路障、交通标志、障碍物、交通线标记、交通信号灯、树、行人、另一车辆、建筑物等。
在一些实施例中,如上所述,至少两个图像获取设备可以从不同视角获取图像数据。对于一个图像获取设备,该图像获取设备可以获取与第一环境的一部分相对应的图像数据。可以基于该图像数据生成至少两个图像的一个图像,即,该图像可以包括与第一环境的一部分对应的图像数据。在一些实施例中,至少两个图像获取设备可以根据圆进行安装。例如,至少两个图像获取设备的数量可以是6,每个图像获取设备可以获取对应于第一环境的1/6的图像数据,从而获取第一环境的综合图像数据。
第一地图确定模块430可以被配置用于基于至少两个图像确定第一地图。其中,第一地图可以包括表明与目标对象的初始位姿相关联的第一环境的第一地图数据。如上所述,至少两个图像中的每一个可以包括与第一环境的部分对应的图像数据,第一地图确定模块430可以通过融合至少两个图像来确定第一地图。此外,如上所述,可以从不同视角(例如,从至少两个图像获取设备安装和/或固定的第四点对应的第四位姿处)获取每个部分的图像数据,第一地图确定模块430可以通过将至少两个图像变换到相同视角来融合至少两个图像。由于第四点是目标对象上的固定点,第一地图确定模块430可以基于第四点中的每两个之间的差异将从不同视角处获取的至少两个图像(例如,图像数据)转换到相同视角下。
在一些实施例中,第一地图确定模块430可以分别确定由至少两个图像表示的点云。第一地图确定模块430可以基于第四点中的每两个之间的差异将点云变换到相同视角来确定第一地图。其中,图像的点云可以指空间中的一组数据点,每个数据点可以对应于图像中的点的数据。仅作为示例,每个数据点可以包括该点的信息、该点的颜色信息、该点的强度信息、该点的纹理信息等或者其任意组合。在一些实施例中,该组数据点可以表示图像的特征信息。特征信息可以包括图像中的对象的轮廓、图像中的对象的表面、图像中的对象的大小等或其任何组合。
第二位姿确定模块440可以被配置用于基于初始位姿、第一地图和第二地图实时确定目标对象的目标位姿。其中,第二地图可以包括指示与包括目标对象的初始位姿的区域相对应的第二环境的第二地图数据。例如,该区域可以包括城市中的区域、城市的环形道内的区域、城镇、城市等。在一些实施例中,第二地图可以由定位系统100或第三方预先确定。第二位姿确定模块440可以从如本申请中其他地方披露的存储设备(例如,存储器150)获取第二地图。在一些实施例中,第二地图可以包括对应于区域中的每个点的参考位置。类似于本申请中其他地方描述的初始位姿,参考位姿可以包括该点的参考位置和该点的参考姿态。
在一些实施例中,第二定位模块440可以确定第二地图的子地图上的每个位姿的地图数据与第一地图的地图数据之间的匹配度(也称为本申请中其他地方的“第一地图数据”)。在一些实施例中,子地图可以包括第二地图的至少一部分,其对应于该区域内的子区域。匹配度可以表明地图数据之间的相似性。相似性越大,匹配度越大。在一些实施例中,匹配度可以由归一化信息距离(NID)或互信息(MI)表示。NID或MI越大,匹配度越大。
在一些实施例中,第二定位模块440可以指定具有最高匹配度的子地图上的位姿作为目标位姿。如果第二地图的至少一部分上的某个位姿的地图数据与第一地图的地图数据完全匹配,则第二定位模块440可以认为目标对象可以在第二地图上的该位置处。
处理引擎112中的模块可以通过有线连接或无线连接实现互相连接或互相通讯。有线连接可以包括金属线缆、光缆、混合电缆等或其任意组合。无线连接可以包括局域网络(LAN)、广域网路(WAN),蓝牙,ZigBee网络,近场通讯(NFC)等或其任意组合。两个或以上模块可以合并成一个模块,以及任何一个模块可以被拆分成两个或以上单元。例如,第一位姿确定模块410和第二位姿确定模块460可以融合为单个模块,其可以通过定位设备实时地确定目标对象的初始位姿,并且基于初始位姿、第一地图和第二地图实时确定目标对象的目标位姿。又例如,处理引擎112可以包括存储模块(未示出),其可以用于存储由上述模块生成的数据。
图5是根据本申请的一些实施例所示的确定目标对象的目标位姿的示例性流程的流程图。在一些实施例中,流程500可以通过存储在ROM 230或RAM 240中的一组指令(例如,应用程序)来实现。处理器220和/或图4中的模块可以执行该指令,当执行该指令时,处理器220和/或模块可以被配置为执行流程500。以下所示过程的操作仅出于说明的目的。在一些实施例中,流程500可以通过未描述的一个或以上附加操作和/或不通过一个或以上本申请讨论的操作来完成。另外,如图5中所示和下面描述的过程的操作顺序不旨在是限制性的。
在510中,处理引擎112(例如,第一位姿确定模块410或处理器220的接口电路)可以通过定位设备(例如,定位设备140-1)实时确定目标对象的初始位姿。其中,目标对象可以是任何需要定位的任何对象。仅作为示例,目标对象可以包括有人驾驶车辆、半自动驾驶车辆、自动驾驶车辆、机器人(如路面机器人)等。车辆可以包括出租车、私家车、顺风车、公共汽车、火车、动车、高铁、地铁等。
其中,目标对象的初始位姿可以指对应于目标对象的目标点的位姿。在一些实施例中,对于不同目标对象,定位系统100可以预先确定相同的点(例如,中心)作为这些不同目标对象的目标点。在一些实施例中,对于不同目标对象,定位系统100可以预先确定不同的点作为这些不同目标对象的目标点。仅作为示例,目标点可以包括目标对象的重心、定位设备(例如,定位设备140-1)在目标对象上安装的点、图像获取设备(例如,图像获取设备140-2)在目标对象上安装的点等。
在一些实施例中,如图1所述,可以将定位设备安装和/或固定在目标对象的第一点上,定位设备可以确定第一点的第一位姿数据。此外,处理引擎112可以基于第一定位数据确定目标对象的初始位姿。具体地,由于第一点和目标点是目标对象的两个固定点,处理引擎112可以基于第一位姿和与目标点和第一点相关联的关系确定初始位姿。在一些实施例中,处理引擎112可以根据与第一点和目标点相关联的关系通过转换第一位姿来确定初始位姿。具体地,处理引擎112可以基于与第一点和目标点相关联的关系来确定转换矩阵。处理引擎112可以基于与第一点和目标点相关联的平移以及与第一点和目标点相关联的旋转来确定转换矩阵。
其中,第一定位数据可以包括对应于第一点的位置和对应于第一点的姿态。位置可以指由经度和纬度信息表示的空间(例如,世界)中的点(例如,第一点)的绝对位置。该绝对位置可以表示空间中的点的地理位置,即经度和纬度。姿态可以指相对于惯性参考系的点(例如,第一点)的方向,例如水平平面、垂直平面、目标对象的运动平面或诸如附近对象的另一实体。对应于第一点的姿态可以包括第一点的偏航角、第一点的侧滚角、第一点的俯仰角等。因此,目标对象的初始位姿(即,目标点)可以包括目标对象的初始位置(即,目标点)和目标对象的初始姿态(即,目标点)。初始位置可以指空间中的目标对象的绝对位置,即经度和纬度。初始姿态可以指目标对象相对于惯性参考帧的方向,例如水平面、垂直平面、目标对象的运动平面或诸如附近对象的另一实体。
在一些实施例中,定位设备可以包括不同类型的定位传感器。可以将不同类型的定位传感器分别安装和/或固定在目标对象的点上。在一些实施例中,可以将一个或以上定位传感器集成到目标对象中。在一些实施例中,定位设备可以包括第一定位传感器和第二定位传感器。第一定位传感器可确定目标对象的绝对位置(例如,对象的点)、第二定位传感器可确定目标对象的姿态。仅作为示例,第一定位传感器可以包括全球定位系统(GPS)、全球导航卫星系统(GLONASS)、指南针导航系统(COMPASS)、伽利略定位系统、准天顶卫星系统(QZSS)、无线保真(WiFi)定位技术等或其任何组合。第二定位传感器可以包括惯性测量单元(IMU)。在一些实施例中,IMU可以包括至少一个运动传感器和至少一个旋转传感器。至少一个运动传感器可以确定对象的线性加速度,并且至少一个旋转传感器可以确定目标对象的角速度。IMU可以基于线性加速度和角速度确定对象的姿态。出于说明的目的,IMU可以包括平台式惯性测量单元(PIMU)、联式惯性测量单元(SIMU)等。
出于说明的目的,定位设备可以包括GPS和IMU(也称为“GPS/IMU”)。在一些实施例中,可以将GPS和/或IMU集成到目标对象中。在一些实施例中,可以将GPS安装和/或固定在目标对象的第二点上。可以将IMU安装和/或固定在目标对象的第三点上。因此,GPS可以确定第二点的第二位置,IMU可以确定第三点的第三姿态。由于第三点和第二点是目标对象的两个固定点,处理引擎112可以基于第二点和第三点之间的差异(例如,位置差异)来确定第三点的第三位置。此外,如上所述,处理引擎112可以通过根据与第三点和目标点相关联的关系转换第三点的位姿(即,第三姿态和第三位置)来确定初始位姿。具体地,处理引擎112可以基于与第三点和目标点相关联的关系来确定转换矩阵。处理引擎112可以基于与第三点和目标点相关联的平移以及与第三点和目标点相关联的旋转来确定转换矩阵。
在520中,处理引擎112(例如,图像确定模块420或处理器220的接口电路)可以通过至少两个图像获取设备确定表明与目标对象的初始位姿相关联的第一环境的至少两个图像。其中,第一环境可以指从初始位姿处获取目标对象所处的环境。至少两个图像可以包括表明从初始位姿处获取的第一环境的图像数据(也被称为“第一图像数据”)。处理引擎112可以基于由至少两个图像获取设备中的每一个获取的图像数据(也称为“第二图像数据”)来确定第一图像数据。
在一些实施例中,如图1所述,可以将至少两个图像获取设备中的每一个安装在目标对象的第四点处。至少两个图像获取设备可以分别从对应于第四点的第四位姿处获取第二图像数据。如上所述,对应于初始位姿的目标点可以是目标对象的重心、定位设备在目标对象上安装的点、图像获取设备在目标对象上安装的点等。第四点中的每一个可以与目标点不同或者与目标点相同。在一些实施例中,如果目标点与第四点中的一个相同,目标对象的初始位姿即为第四点对应的位姿,从第四位姿处获取的图像数据是从初始位姿处获取的图像数据。在一些实施例中,如果目标点与第四点中的每一个不同,由于目标点和第四点可以固定在目标对象上,对应于目标点的初始位姿与对应于第四点的第四位姿之间的差可以忽略不计,从而从初始位姿处获取的第一图像数据和从第四位姿处获取的第二图像数据可以是相同的,处理引擎112可以将从第四位姿处获取的图像数据指定为从初始位姿处获取的图像数据。
在不同的应用场景中,第一环境中的物体可能不同。以道路上行驶的车辆为例,在第一环境中可能有道路、路障、交通标志、障碍物、交通线标记、交通信号灯、树、行人、另一车辆、建筑物等。
在一些实施例中,如上所述,至少两个图像获取设备可以从不同视角获取图像数据。对于一个图像获取设备,该图像获取设备可以获取与第一环境的一部分相对应的图像数据。可以基于该图像数据生成至少两个图像的一个图像,即,该图像可以包括与第一环境的该部分对应的图像数据。在一些实施例中,至少两个图像获取设备可以按照圆进行安装。例如,至少两个图像获取设备的数量可以是6,每个图像获取设备可以获取对应于第一环境的1/6的图像数据,从而获取第一环境的综合图像数据。
在一些实施例中,至少两个图像获取设备可以包括至少一个深度相机,该至少两个图像可以是深度图像。深度图像可以包括图像中每个点的距离信息和像素信息。点的距离信息可以表示从观察点(例如,获取图像的点)到该点的距离。像素信息可以表示该点的灰度值或该点接收的光的强度。每个深度图像可以显示图像中每个物体的几何形状。
在530中,处理引擎112(例如,第一地图确定模块430或处理器220的接口电路)可基于至少两个图像确定第一地图。其中,第一地图可以包括表明与目标对象的初始位姿相关联的第一环境的第一地图数据。如上所述,至少两个图像中的每一个可以包括与第一环境的部分对应的图像数据,处理引擎112可以通过融合该至少两个图像来确定第一地图。此外,如上所述,可以从不同视角获取每个部分的图像数据(例如,从与安装至少两个图像获取设备的第四点对应的第四位姿),处理引擎112可以通过将至少两个图像变换到相同视角来融合至少两个图像。由于第四点是目标对象上的固定点,处理引擎112可以基于第四点中的每两个之间的差异将不同视角处的至少两个图像(例如,图像数据)转换到相同的视角。
在一些实施例中,处理引擎112可以分别确定由至少两个图像表示的点云。处理引擎112可以基于第四点中的每两个之间的差异将点云变换到相同视角下来确定第一地图。其中,图像的点云可以指空间中的一组数据点,每个数据点可以对应于图像中的点的数据。仅作为示例,每个数据点可以包括该点的位置信息、该点的颜色信息、该点的强度信息、该点的纹理信息等或其任意组合。在一些实施例中,该组数据点可以表示图像的特征信息。特征信息可以包括图像中的物体的轮廓、图像中的物体的表面、图像中的物体的大小等,或其任何组合。在一些实施例中,点云可以是PLY、STL、OBJ、X3D、IGS、DXF的形式。确定第一地图的更详细描述可以在本申请的其他地方找到,如图6及其描述。
在540中,处理引擎112(例如,第一地图确定模块440或处理器220的接口电路)可以基于初始位姿、第一地图和第二地图实时确定目标对象的目标位姿。其中,第二地图可以包括指示与包括目标对象的初始位姿的区域相对应的第二环境的第二地图数据。例如,该区域可以包括城市中的区域、城市的环形道内的区域、城镇、城市等。在一些实施例中,第二地图可以由定位系统100或第三方预先确定。处理引擎112可以从如本申请中其他地方披露的存储设备(例如,存储器150)获取第二地图。
在一些实施例中,第二地图可以包括对应于区域中的每个点的参考位置。类似于本申请中其他地方描述的初始位姿,参考位姿可以包括该点的参考位置和该点的参考姿态。由于第二地图的定位精度比GPS/IMU的定位精度更准确,处理引擎112可以基于初始位姿通过匹配第一地图和第二地图来确定目标对象的更准确位置(也称为“目标位姿”)。确定目标对象的目标位姿的更详细描述可以在本申请的其他地方找到,例如,图7及其描述。
在一种应用场景中,定位系统100可以实时定位自主车辆。此外,可以由定位系统100导航该自动车辆。
在一种应用场景中,定位系统100可以向终端(例如终端设备130)发送消息,以指示终端,如在终端的用户界面上,实时显示目标对象的目标位姿,从而便于用户知道目标对象的实时位姿。
在一种应用场景中,定位系统100可以在GPS信号较弱的一些地方(例如隧道)中确定目标对象的目标位姿。此外,可使用目标对象的该目标位姿对该目标对象进行导航服务。
应当理解的是,以上描述仅出于说明的目的,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出多种修改和变化。然而,这些修改和变化不会背离本申请的范围。例如,可以在示例性流程500中的其他地方添加一个或以上其他可选步骤(例如,存储步骤)。在存储步骤中,处理引擎112可以在如本申请中其他地方披露的存储设备(例如,存储器150)存储与目标对象相关联的信息(如,初始位姿、至少两个图像、第一地图、第二地图)。又例如,如果在操作520中确定的至少两个图像不包括特定物体,例如,交通线标记,则可省略操作530和操作540。
图6是根据本申请的一些实施例所示的基于至少两个图像确定第一地图的示例性流程的流程图。在一些实施例中,流程600可以通过存储在ROM 230或RAM 240中的一组指令(例如,应用程序)来实现。处理器220和/或图4中的模块可以执行该组指令,当执行该组指令时,处理器220和/或模块可以被配置为执行流程600。以下所示过程的操作仅出于说明的目的。在一些实施例中,流程600可以通过未描述的一个或以上附加操作和/或不通过一个或以上本申请讨论的操作来完成。另外,如图6中所示和下面描述的过程的操作顺序不旨在是限制性的。在一些实施例中,可以基于流程600来执行流程500的操作530。
在610中,处理引擎112(例如,第一地图确定模块430或处理器220的接口电路)可以获取由至少两个图像中的每一个表示的点云。如操作530所述,至少两个图像可以是深度图像,其包括图像中的每个点的距离信息和像素信息。对于至少两个图像中的一个图像,处理引擎112可以基于图像中的每个点的距离信息和像素信息获取点云。具体地,处理引擎112可以先,如基于相机成像模型,确定该点云的坐标系。处理引擎112可以通过将图像中的每个点的距离信息和像素信息转换到点云的该坐标系中来确定点云。在一些实施例中,至少两个图像的每个点云的每个坐标系可以不同或相同。
如本申请中其他地方所述,点云可以指空间(例如,在点云的坐标系中)中的一组数据点,每个数据点可以对应于图像中的点的数据。此外,至少两个图像中的每一个可以包括与第一环境的部分对应的图像数据,图像的点云可以包括与第一环境的该部分对应的一组数据点。仅作为示例,每个数据点可以包括该点的位置信息、该点的颜色信息、该点的强度信息、该点的纹理信息等或者其任意组合。在一些实施例中,该组数据点可以表示图像的特征信息。特征信息可以包括图像中的对象的轮廓、图像中的对象的表面、图像中的对象的大小等或其任何组合。
在620中,处理引擎112(例如,第一地图确定模块430或处理器220的接口电路)可以基于至少两个图像获取设备的位姿将点云变换为融合后的点云。如操作610所述,图像的每个点云可以包括与第一环境的一部分对应的数据点集,至少两个图像的每个点云的每个坐标系可以不同或相同。处理引擎112可通过将点云融合和/或转换到融合后的点云的坐标系中以确定融合后的点云。对于与图像对应的每个点云,处理引擎112可以根据下面的公式(1)将点云中的每个点变换到融合后的点云的坐标系中:
其中,P指融合后的点云,R指相对于融合后的点云坐标系该点的旋转角度,t指相对于融合后的点云坐标系该点的平移值,f指获取该图像的图像获取设备的焦点,(x,y)指像素坐标系中图像中点的坐标,(cx,cy)指图像像素点坐标系中图像中心的坐标,以及Z是指该点的深度信息。其中,像素坐标可以指在图像像素坐标系统中识别像素的位置的数字。图像像素坐标系的原点可以是图像中左上角像素的左上角,例如,(0,0)。
在630中,处理引擎112(例如,第一地图确定模块430或处理器220的接口电路)可基于融合后的点云确定第一地图。在一些实施例中,处理引擎112可以将融合后的点云投影在水平平面上,并确定第一地图。
应当理解的是,以上描述仅出于说明的目的,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出多种修改和变化。然而,这些修改和变化不会背离本申请的范围。
图7是根据本申请的一些实施例所示的基于目标对象的初始位姿、第一地图和第二地图确定目标对象的目标位姿的示例性流程的流程图。在一些实施例中,流程700可以通过存储在ROM 230或RAM 240中的一组指令(例如,应用程序)来实现。处理器220和/或图4中的模块可以执行该组指令,当执行该组指令时,处理器220和/或模块可以被配置为执行流程700。以下所示过程的操作仅出于说明的目的。在一些实施例中,流程700可以通过未描述的一个或以上附加操作和/或不通过一个或以上本申请讨论的操作来完成。另外,如图7中所示和下面描述的过程的操作顺序不旨在是限制性的。在一些实施例中,可以基于流程700来执行流程500中的操作540。
在710中,处理引擎112(例如,第二位姿确定模块440或处理器220的接口电路)可以基于目标对象的初始位姿确定第二地图的至少一部分。第二地图的至少一部分(也称为“子地图”)可以对应于该区域内的一个子区域,该子区域可以包括初始位姿。如操作540所述,第二地图可以包括与区域中的每个点对应的参考位姿。相应地,子地图可以包括与子区域中的每个点相对应的参考位姿。在一些实施例中,子区域可以是具有预定半径的以初始位姿为中心的圆。预定半径可以是定位系统100的默认设置,或者可以基于实时情况来调整。
在720中,处理引擎112(例如,第二位姿确定模块440或处理器220的接口电路)可以确定子地图上每个位姿的地图数据与第一地图的地图数据(在本申请的其他地方也被称之为“第一地图数据”)之间的匹配度(也称为本申请中其他地方的“第一地图数据”)。匹配度可以表明地图数据之间的相似性。相似性越大,匹配度越大。在一些实施例中,匹配度可以由归一化信息距离(NID)或互信息(MI)表示。NID或MI越大,匹配度越大。在一些实施例中,对于子地图上的某一位姿的地图数据与第一地图的地图数据之间的NID或MI,处理引擎112可以基于下述等式(2)确定NID或基于下述的等式(3)确定MI:
MI(Ir,Is)=H(Ir)+H(Is)-H(Ir,Is) (3)
其中,Ir指的是第一地图,Is指的是第二地图,NID(Ir,Is)指Ir和Is之间的NID,H(Ir,Is)指Ir和Is的联合熵,H(Ir)指Ir的熵,以及H(Is)指Is的熵。其中,处理引擎112可以基于等式(4)确定H(Is)。其中,Ps指由n-bin离散直方图表示的Is的离散分布,以及a表示与Is相关联的单个bin指数。处理引擎112可以基于等式(5)确定H(Ir),其中,Pr指由n-bin离散直方图表示的Ir的离散分布,以及a指与Ir关联的单个bin指数。处理引擎112可以基于等式(6)确定H(Ir,Is),其中,Pr,s(a,b)是指由n-bin离散直方图表示的Ir和Is的联合离散分布。
在730中,处理引擎112(例如,第二位姿确定模块440或处理器220的接口电路)可以指定具有最高匹配度的子地图上的位姿作为目标位姿。如果第二地图的至少一部分上的某个位姿的地图数据与第一地图的地图数据完全匹配,则处理引擎112可以认为目标对象可以在第二地图上的该位置处。
应当理解的是,以上描述仅出于说明的目的,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出多种修改和变化。然而,这些修改和变化不会背离本申请的范围。
上文已对基本概念做了描述,显然,对于阅读此申请后的本领域的普通技术人员来说,上述发明公开仅作为示例,并不构成对本申请的限制。虽然此处并没有明确说明,本领域技术人员可能会对本申请进行各种修改、改进和修正。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。
同时,本申请使用了特定词语来描述本申请的实施例。例如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特性。因此,应当强调并注意的是,本说明书中在不同位置两次或以上提及的“一实施例”或“一个实施例”或“一替代性实施例”并不一定系指同一实施例。此外,本申请的一个或以上实施例中的某些特征、结构或特性可以进行适当的组合。
此外,本领域的普通技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的过程、机器、产品或物质的组合,或对其任何新的和有用的改良。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括韧体、常驻软件、微代码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“单元”、“模块”或“系统”。此外,本申请公开的各方面可以采取体现在一个或以上计算机可读介质中的计算机程序产品的形式,其中计算机可读程序代码包含在其中。
计算机可读信号介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。此类传播信号可以有多种形式,包括电磁形式、光形式等或任何合适的组合形式。计算机可读信号介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机可读信号介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质等或其任意组合。
本申请各部分操作所需的计算机程序编码可以用任意一种或以上程序语言编写,包括面向主体编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran 2003、Perl、COBOL 2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本申请所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或以上发明实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或以上发明实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。
Claims (29)
1.一种确定目标对象的目标位姿的系统,包括:
至少一个包括指令集的存储介质;以及
至少一个与所述至少一个存储介质通信的处理器,其中,当执行所述指令集时,所述至少一个处理器用于:
通过定位设备,实时确定目标对象的初始位姿;
通过至少两个图像获取设备,确定表明与所述目标对象的所述初始位姿相关联的第一环境的至少两个图像;
基于所述至少两个图像确定第一地图,其中,所述第一地图包括表明与所述目标对象的所述初始位姿相关联的所述第一环境的第一地图数据;以及
基于所述初始位姿、所述第一地图和第二地图实时确定所述目标对象的目标位姿,其中,所述第二地图是基于激光雷达预先确定的,和所述第二地图包括表明与包括所述目标对象的所述初始位姿的区域相对应的第二环境的第二地图数据。
2.根据权利要求1所述的系统,其中,所述定位设备包括全球定位系统GPS和惯性测量单元IMU。
3.根据权利要求2所述的系统,其中,将所述全球定位系统和所述惯性测量单元分别安装在所述目标对象上。
4.根据权利要求2或3所述的系统,其中,所述初始位姿包括所述目标对象的位置和所述目标对象的姿态。
5.根据权利要求1所述的系统,其中,所述至少两个图像获取设备包括至少一个深度相机。
6.根据权利要求5所述的系统,其中,将所述至少一个深度相机分别安装在所述目标对象上。
7.根据权利要求1所述的系统,其中,为了基于所述至少两个图像确定第一地图,所述至少一个处理器用于:
确定所述至少两个图像获取设备中每一个的第一个位姿;以及
基于所述至少两个图像获取设备的第一位姿,通过融合所述至少两个图像确定所述第一地图。
8.根据权利要求7所述的系统,其中,为了基于所述至少两个图像获取设备的第一位姿,通过融合所述至少两个图像来确定所述第一地图,所述至少一个处理器用于:
获取由所述至少两个图像中的每一个表示的点云;
基于所述至少两个图像获取设备的所述第一位姿,将所述点云变换为融合后的点云;以及
基于所述融合后的点云确定所述第一地图。
9.根据权利要求1-8任一项所述的系统,其中,为了基于所述初始位姿、所述第一地图和第二地图实时确定所述目标对象的所述目标位姿,所述至少一个处理器用于:
基于所述目标对象的所述初始位姿确定所述第二地图的至少一部分,其中,所述第二地图的所述至少一部分包括所述第二地图数据的至少一部分,其对应于在所述区域内包括所述目标对象的所述初始位姿的子区域;以及
通过对比所述第一地图数据与所述第二地图数据的所述至少一部分确定所述目标位姿。
10.根据权利要求9所述的系统,其中,为了通过对比所述第一地图数据与所述第二地图数据的所述至少一部分确定所述目标位姿,所述至少一个处理器用于:
确定所述第二地图的所述至少一部分上的每个位姿的地图数据与所述第一地图的地图数据之间的匹配度;以及
指定在所述第二地图的所述至少一部分上的具有最高匹配度的位姿为所述目标位姿。
11.根据权利要求10所述的系统,其中,所述匹配度由归一化信息距离NID或互信息MI表示。
12.根据权利要求1所述的系统,其中,所述目标对象包括自主车辆或机器人。
13.根据权利要求1-11任一项所述的系统,其中,所述至少一个处理器用于:
向终端发送消息,指示所述终端实时地在所述终端的用户界面上显示所述目标对象的所述目标位姿。
14.根据权利要求1-11任一项所述的系统,其中,所述至少一个处理器用于:
基于所述目标对象的所述目标位姿实时为所述目标对象提供导航服务。
15.一种在计算设备上实现的方法,所述计算设备有至少一个处理器、至少一个存储介质和连接到网络的通信平台,所述方法包括:
通过定位设备实时确定目标对象的初始位姿;
通过至少两个图像获取设备确定表明与所述目标对象的所述初始位姿相关联的第一环境的至少两个图像;
基于所述至少两个图像确定第一地图,其中,所述第一地图包括表明与所述目标对象的所述初始位姿相关的所述第一环境的第一地图数据;以及
基于所述初始位姿、所述第一地图和第二地图实时确定所述目标对象的目标位姿,其中,所述第二地图是基于激光雷达预先确定的,和所述第二地图包括表明与包括所述目标对象的所述初始位姿的区域相对应的第二环境的第二地图数据。
16.根据权利要求15所述的方法,其中,所述定位设备包括全球定位系统GPS和惯性测量单元IMU。
17.根据权利要求16所述的方法,其中,所述全球定位系统和所述惯性测量单元分别安装在所述目标对象上。
18.根据权利要求16或17所述的方法,其中,所述初始位姿包括所述目标对象的位置和所述目标对象的姿态。
19.根据权利要求15所述的方法,其中,所述至少两个图像获取设备包括至少一个深度相机。
20.根据权利要求19所述的方法,其中,所述至少一个深度相机分别安装在所述目标对象上。
21.根据权利要求15所述的方法,其中,基于所述至少两个图像确定第一地图包括:
确定所述至少两个图像获取设备中每一个的第一个位姿;以及
基于所述至少两个图像获取设备的第一位姿,通过融合所述至少两个图像确定所述第一地图。
22.根据权利要求21所述的方法,其中,基于所述至少两个图像获取设备的第一位置,通过融合所述至少两个图像来确定所述第一地图包括:
获取由所述至少两个图像中的每一个表示的点云;
基于所述至少两个图像获取设备的所述第一位姿,将所述点云变换为融合后的点云;以及
基于所述融合后的点云确定所述第一地图。
23.根据权利要求15-22任一项所述的系统,其中,基于所述初始位姿、所述第一地图和第二地图实时确定所述目标对象的所述目标位姿包括:
基于所述目标对象的所述初始位姿确定所述第二地图的至少一部分,其中,所述第二地图的所述至少一部分包括所述第二地图数据的至少一部分,其对应于在所述区域内包括所述目标对象的所述初始位姿的子区域;以及
通过对比所述第一地图数据与所述第二地图数据的所述至少一部分确定所述目标位姿。
24.根据权利要求23所述的方法,其中,通过对比所述第一地图数据与所述第二地图数据的所述至少一部分确定所述目标位姿包括:
确定所述第二地图的所述至少一部分上的每个位姿的地图数据与所述第一地图的地图数据之间的匹配度;以及
指定在所述第二地图的至少一部分上的具有最高匹配度的位姿为所述目标位姿。
25.根据权利要求24所述的方法,其中,所述匹配度由归一化信息距离NID或互信息MI表示。
26.根据权利要求15所述的方法,其中,所述目标对象包括自主车辆或机器人。
27.根据权利要求15-25任一项所述的方法,进一步包括:
向终端发送消息,指示所述终端实时地在所述终端的用户界面上显示所述目标对象的所述目标位姿。
28.根据权利要求15-25任一项所述的方法,进一步包括:
基于所述目标对象的所述目标位姿实时为所述目标对象提供导航服务。
29.一种非暂时性计算机可读存储介质,包括可执行指令,当由至少一个处理器执行时,所述可执行指令指示所述至少一个处理器执行方法,所述方法包括:
通过定位设备实时确定目标对象的初始位姿;
通过至少两个图像获取设备确定表明与所述目标对象的所述初始位姿相关联的第一环境的至少两个图像;
基于所述至少两个图像确定第一地图,其中,所述第一地图包括表明与所述目标对象的所述初始位姿相关的所述第一环境的第一地图数据;以及
基于所述初始位姿、所述第一地图和第二地图实时确定所述目标对象的目标位姿,其中,所述第二地图是基于激光雷达预先确定的,和所述第二地图包括表明与包括所述目标对象的所述初始位姿的区域相对应的第二环境的第二地图数据。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/102566 WO2021035471A1 (en) | 2019-08-26 | 2019-08-26 | Systems and methods for positioning a target subject |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112400122A true CN112400122A (zh) | 2021-02-23 |
CN112400122B CN112400122B (zh) | 2024-07-16 |
Family
ID=74603069
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980045176.XA Active CN112400122B (zh) | 2019-08-26 | 2019-08-26 | 定位目标对象的系统和方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220178701A1 (zh) |
CN (1) | CN112400122B (zh) |
WO (1) | WO2021035471A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115177178B (zh) * | 2021-04-06 | 2024-10-15 | 美智纵横科技有限责任公司 | 一种清扫方法、装置和计算机存储介质 |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012118207A1 (ja) * | 2011-03-03 | 2012-09-07 | 株式会社豊田中央研究所 | 局所地図生成装置、局所地図生成システム、グローバル地図生成装置、グローバル地図生成システム、及びプログラム |
US20150094089A1 (en) * | 2013-09-27 | 2015-04-02 | Qualcomm Incorporated | Hybrid photo navigation and mapping |
US20150098614A1 (en) * | 2013-10-04 | 2015-04-09 | Qualcomm Incorporated | Object tracking based on dynamically built environment map data |
CN105607071A (zh) * | 2015-12-24 | 2016-05-25 | 百度在线网络技术(北京)有限公司 | 一种室内定位方法及装置 |
US20170169300A1 (en) * | 2015-12-15 | 2017-06-15 | Honda Motor Co., Ltd. | System and method for image based vehicle localization |
CN107144285A (zh) * | 2017-05-08 | 2017-09-08 | 深圳地平线机器人科技有限公司 | 位姿信息确定方法、装置和可移动设备 |
US20170307746A1 (en) * | 2016-04-22 | 2017-10-26 | Mohsen Rohani | Systems and methods for radar-based localization |
JP2018055695A (ja) * | 2017-10-26 | 2018-04-05 | エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd | ある環境内で無人航空機を制御する方法、ある環境のマップを生成する方法、システム、プログラムおよび通信端末 |
CN108303721A (zh) * | 2018-02-12 | 2018-07-20 | 北京经纬恒润科技有限公司 | 一种车辆定位方法及系统 |
CN108401461A (zh) * | 2017-12-29 | 2018-08-14 | 深圳前海达闼云端智能科技有限公司 | 三维建图方法、装置、系统、云端平台、电子设备和计算机程序产品 |
US20180322643A1 (en) * | 2017-05-04 | 2018-11-08 | Mim Software Inc. | System and method for predictive fusion |
CN109084732A (zh) * | 2018-06-29 | 2018-12-25 | 北京旷视科技有限公司 | 定位与导航方法、装置及处理设备 |
CN109087359A (zh) * | 2018-08-30 | 2018-12-25 | 网易(杭州)网络有限公司 | 位姿确定方法、位姿确定装置、介质和计算设备 |
CN109540148A (zh) * | 2018-12-04 | 2019-03-29 | 广州小鹏汽车科技有限公司 | 基于slam地图的定位方法及系统 |
KR20190076815A (ko) * | 2018-03-27 | 2019-07-02 | 한화시스템 주식회사 | 전자 장치의 이동체 포즈 추정 방법 |
CN110118554A (zh) * | 2019-05-16 | 2019-08-13 | 深圳前海达闼云端智能科技有限公司 | 基于视觉惯性的slam方法、装置、存储介质和设备 |
CN110147705A (zh) * | 2018-08-28 | 2019-08-20 | 北京初速度科技有限公司 | 一种基于视觉感知的车辆定位方法及电子设备 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10585409B2 (en) * | 2016-09-08 | 2020-03-10 | Mentor Graphics Corporation | Vehicle localization with map-matched sensor measurements |
CN107328410B (zh) * | 2017-06-30 | 2020-07-28 | 百度在线网络技术(北京)有限公司 | 用于定位自动驾驶车辆的方法和汽车电脑 |
US11009365B2 (en) * | 2018-02-14 | 2021-05-18 | Tusimple, Inc. | Lane marking localization |
US10928207B2 (en) * | 2018-03-02 | 2021-02-23 | DeepMap Inc. | Camera based localization for autonomous vehicles |
CN108958266A (zh) * | 2018-08-09 | 2018-12-07 | 北京智行者科技有限公司 | 一种地图数据获取方法 |
US10922840B2 (en) * | 2018-12-20 | 2021-02-16 | Here Global B.V. | Method and apparatus for localization of position data |
EP3714290B1 (en) * | 2019-01-30 | 2022-08-03 | Baidu.com Times Technology (Beijing) Co., Ltd. | Lidar localization using 3d cnn network for solution inference in autonomous driving vehicles |
US11594011B2 (en) * | 2019-01-30 | 2023-02-28 | Baidu Usa Llc | Deep learning-based feature extraction for LiDAR localization of autonomous driving vehicles |
JP7238998B2 (ja) * | 2019-08-22 | 2023-03-14 | 日本電気株式会社 | 推定装置、学習装置、制御方法及びプログラム |
-
2019
- 2019-08-26 CN CN201980045176.XA patent/CN112400122B/zh active Active
- 2019-08-26 WO PCT/CN2019/102566 patent/WO2021035471A1/en active Application Filing
-
2022
- 2022-02-22 US US17/651,912 patent/US20220178701A1/en not_active Abandoned
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012118207A1 (ja) * | 2011-03-03 | 2012-09-07 | 株式会社豊田中央研究所 | 局所地図生成装置、局所地図生成システム、グローバル地図生成装置、グローバル地図生成システム、及びプログラム |
US20150094089A1 (en) * | 2013-09-27 | 2015-04-02 | Qualcomm Incorporated | Hybrid photo navigation and mapping |
US20150098614A1 (en) * | 2013-10-04 | 2015-04-09 | Qualcomm Incorporated | Object tracking based on dynamically built environment map data |
US20170169300A1 (en) * | 2015-12-15 | 2017-06-15 | Honda Motor Co., Ltd. | System and method for image based vehicle localization |
CN105607071A (zh) * | 2015-12-24 | 2016-05-25 | 百度在线网络技术(北京)有限公司 | 一种室内定位方法及装置 |
US20170307746A1 (en) * | 2016-04-22 | 2017-10-26 | Mohsen Rohani | Systems and methods for radar-based localization |
US20180322643A1 (en) * | 2017-05-04 | 2018-11-08 | Mim Software Inc. | System and method for predictive fusion |
CN107144285A (zh) * | 2017-05-08 | 2017-09-08 | 深圳地平线机器人科技有限公司 | 位姿信息确定方法、装置和可移动设备 |
JP2018055695A (ja) * | 2017-10-26 | 2018-04-05 | エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd | ある環境内で無人航空機を制御する方法、ある環境のマップを生成する方法、システム、プログラムおよび通信端末 |
CN108401461A (zh) * | 2017-12-29 | 2018-08-14 | 深圳前海达闼云端智能科技有限公司 | 三维建图方法、装置、系统、云端平台、电子设备和计算机程序产品 |
CN108303721A (zh) * | 2018-02-12 | 2018-07-20 | 北京经纬恒润科技有限公司 | 一种车辆定位方法及系统 |
KR20190076815A (ko) * | 2018-03-27 | 2019-07-02 | 한화시스템 주식회사 | 전자 장치의 이동체 포즈 추정 방법 |
CN109084732A (zh) * | 2018-06-29 | 2018-12-25 | 北京旷视科技有限公司 | 定位与导航方法、装置及处理设备 |
CN110147705A (zh) * | 2018-08-28 | 2019-08-20 | 北京初速度科技有限公司 | 一种基于视觉感知的车辆定位方法及电子设备 |
CN109087359A (zh) * | 2018-08-30 | 2018-12-25 | 网易(杭州)网络有限公司 | 位姿确定方法、位姿确定装置、介质和计算设备 |
CN109540148A (zh) * | 2018-12-04 | 2019-03-29 | 广州小鹏汽车科技有限公司 | 基于slam地图的定位方法及系统 |
CN110118554A (zh) * | 2019-05-16 | 2019-08-13 | 深圳前海达闼云端智能科技有限公司 | 基于视觉惯性的slam方法、装置、存储介质和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112400122B (zh) | 2024-07-16 |
US20220178701A1 (en) | 2022-06-09 |
WO2021035471A1 (en) | 2021-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107328410B (zh) | 用于定位自动驾驶车辆的方法和汽车电脑 | |
US11781863B2 (en) | Systems and methods for pose determination | |
JP4232167B1 (ja) | 対象特定装置、対象特定方法および対象特定プログラム | |
CN110686686B (zh) | 用于地图匹配的系统和方法 | |
CN111936821A (zh) | 用于定位的系统和方法 | |
EP3632139B1 (en) | Methods and systems for naming a pick up location | |
JP4978615B2 (ja) | 対象特定装置 | |
CN112823294B (zh) | 用于标定相机和多线激光雷达的系统和方法 | |
CN110689719B (zh) | 用于识别封闭路段的系统和方法 | |
CN112889041B (zh) | 一种确定二维地图的系统和方法 | |
CN111351502A (zh) | 用于从透视图生成环境的俯视图的方法,装置和计算机程序产品 | |
CN115439531A (zh) | 一种获取目标对象的目标空间位置信息的方法与设备 | |
EP3642821A1 (en) | Systems and methods for determining a new route in a map | |
CN112041210B (zh) | 用于自动驾驶的系统和方法 | |
CN112105956B (zh) | 用于自动驾驶的系统和方法 | |
CN111833443A (zh) | 自主机器应用中的地标位置重建 | |
US20220178701A1 (en) | Systems and methods for positioning a target subject | |
US20220178719A1 (en) | Systems and methods for positioning a target subject | |
TW202132804A (zh) | 地圖建構系統以及地圖建構方法 | |
CN111936946A (zh) | 一种定位系统和方法 | |
WO2021212297A1 (en) | Systems and methods for distance measurement | |
CN113433566B (zh) | 地图建构系统以及地图建构方法 | |
CN111060114A (zh) | 用于生成高精度地图的特征图的方法和装置 | |
CN112384756A (zh) | 定位系统和方法 | |
CN112840232B (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 |