Method and system for creating magnetic maps through crowdsourcing

The method and system create magnetic maps using crowdsourced data from platforms with magnetometers and motion sensors, addressing positioning challenges in indoor and outdoor environments by reducing sensor drift and bias, enabling precise navigation.

JP2026509220APending Publication Date: 2026-03-17INVENSENSE INC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-03-06
Publication Date
2026-03-17

AI Technical Summary

Technical Problem

Existing positioning technologies, such as GNSS and INS, face challenges in indoor and outdoor environments with degraded satellite signals, leading to performance degradation and high costs when integrating additional sensors, and magnetic-based positioning offers a cost-effective solution.

Method used

A method and system for creating magnetic maps using crowdsourced data from platforms equipped with magnetometers, GNSS, and motion sensors to construct magnetic field values and attitudes, updating these values based on platform attitudes and constraints.

Benefits of technology

Enables accurate and cost-effective indoor and outdoor navigation by generating magnetic maps that reduce sensor drift and bias, leveraging Earth's magnetic field variations for precise positioning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026509220000001_ABST
    Figure 2026509220000001_ABST
Patent Text Reader

Abstract

A system and method for creating a magnetic map by obtaining magnetic field measurements from multiple platforms are disclosed. A first set of attitudes for each platform is determined, and information from the magnetic map is obtained for any existing magnetic field values ​​for the first set. Magnetic constraints for the platform attitudes are determined and used to determine a second set of attitudes for each platform. The magnetic field values ​​in the magnetic map are then updated, at least partially, based on the second set of attitudes for each platform.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] (Cross-reference of related applications) This application claims priority and benefits from U.S. Provisional Patent Application No. 63 / 450632, titled "Crowdsourced Creation of Magnetic Map," filed on 7 March 2023, and U.S. Patent Application No. 18 / 596233, titled "Method And System For Crowdsourced Creation Of Magnetic Map," filed on 5 March 2024, both of which have been assigned to the assignee of this application.

[0002] This disclosure relates to the positioning of people, vehicles, and articles in indoor or outdoor environments. More specifically, it provides a system and method for creating magnetic maps that can be used for navigation. [Background technology]

[0003] Various technologies have been developed to help determine the position of mobile platforms such as autonomous or piloted ground or air vehicles, robots, and other types of vehicles, including automobiles, electric bicycles and electric scooters (eBikes and eScooters). Pedestrians are also considered mobile platforms. For example, Global Navigation Satellite Systems (GNSS) consist of a group of satellites that transmit encoded signals and ground receivers, and their positions can be calculated using trilateration techniques with information on the travel time of the satellite signals and the satellites' current positions. GNSS is considered a reference-based technology that provides an absolute source of navigation information and includes, but is not limited to, the Global Positioning System (GPS), Global Navigation Satellite System (GLONASS), Galileo, and / or BeiDou. Alternatively or additionally, other types of absolute navigation information that rely on information from external sources may include Wi-Fi® positioning, cellular tower positioning, Bluetooth® positioning beacons, or other similar methods. The desirability of obtaining location information extends to indoor environments where pedestrians may pass through, forklifts and other service machinery in warehouses, cars and buses in underground parking structures, wheelchairs in hospitals, and multiple types of vehicles may be employed, including portable robots or unmanned aerial vehicles (UAVs) / drones navigating within buildings. However, when used for indoor positioning, GNSS is typically insufficient due to attenuation of satellite signals in buildings with walls and roofs, or when outdoor environments such as urban canyons interfere, requiring the use of different technologies.

[0004] In the absence of GNSS signals, an Inertial Navigation System (INS) may be used, employing techniques such as dead reckoning to help determine position. INS is an internal and / or "non-reference-based" technique that utilizes inertial sensors within a moving object and does not rely on external sources of information that may be interrupted or blocked. Motion sensors are built into the moving object and measure motion using gyroscopes to measure the object's rotational velocity / angular velocity and accelerometers to measure specific forces on the object (from which acceleration is obtained). Using initial estimates of the moving object's position, velocity, and attitude angles as a starting point, INS readings can then be integrated over time and used to determine the navigation solution. Typically, the measurements are integrated once (a mathematical integral, which is a differential integral) for the gyroscope to obtain the attitude angle, and twice for the accelerometer to obtain the moving object's position incorporating the attitude angle. Thus, the sensor measurements undergo three integration operations during the process that yields the position. Integrated navigation techniques typically integrate (i.e., combine) reference-based or absolute navigation information with embedded or non-reference-based navigation information. Integrated navigation techniques may employ state estimation techniques such as Kalman filters, extended Kalman filters, Gaussian sum filters, unscented filters, particle filters, or others, which have characteristics including a prediction phase and an update phase (sometimes called a measurement update phase). Absolute navigation information in the measurement domain may be integrated with state estimation techniques in a tightly coupled architecture, or absolute navigation information in the position / velocity domain may be integrated with state estimation techniques in a loosely coupled architecture. The state estimation techniques also use a system model and / or measurement models, depending on which measurements are used. The system model is used in the prediction phase, and / or measurement models are used in the update phase.

[0005] Due to integral operations (mathematical integration, such as in calculus), motion sensor-based technologies may not provide adequate performance, especially over longer durations, due to significant performance degradation from sensor drift and bias accumulation. Therefore, positioning technologies that rely solely on motion sensors may not meet all the requirements for seamless indoor navigation applications. Consequently, alternative positioning technologies that can provide strong coverage in areas where access to GNSS and other reference-based positioning is degraded or denied are desirable.

[0006] State-of-the-art solutions for challenging GNSS conditions primarily rely on the fusion of GNSS and motion data with data provided by camera-based, radar-based, or lidar-based technologies. However, equipping a platform with such devices can be costly and / or difficult due to design limitations. Furthermore, performance can degrade in rain, snow, and other environmental conditions, and power consumption can also be a problem for some types of platforms.

[0007] Another type of technique that can be used to compensate for degraded GNSS availability is known as "fingerprinting," which relies on recording patterns of electromagnetic signals at known locations within an area where location information may be desired. When a device subsequently measures a pattern of received signals that correlates with a known location, that location can be used to determine the device's location and / or to support other positioning techniques, such as integration with the INS technique described above. Preferred examples of signals that can be used for fingerprinting may be based on wireless signals for the Institute of Electrical and Electronics Engineers (IEEE) 802.11 Wireless Local Area Network (WLAN), commonly known as "Wi-Fi," other wireless communication signals such as Bluetooth®, and / or radiofrequency identification (RFID) signals.

[0008] Importantly, environmental electromagnetic signals, such as magnetic fields, can also provide the necessary fingerprints and benefit from the technology of this disclosure. In particular, magnetic-based positioning depends on variations in the Earth's magnetic field generated by natural phenomena or by human activities such as building construction and the use of iron materials in densely populated urban areas. Therefore, to enable magnetic-based positioning, it would be desirable to create maps of magnetic anomalies in such outdoor areas as urban canyons and construction sites, as well as in combinations of outdoor and indoor areas such as streets adjacent to buildings, tunnels, or underground parking lots. All such areas are characterized by challenging conditions for GNSS positioning, where outdoor satellite signals are affected by multipath and obstacles (so-called out-of-line or NLOS conditions) or attenuated indoors, resulting in a dramatic degradation of GNSS positioning accuracy. Magnetic-based positioning is an attractive positioning technique in challenging GNSS conditions because it does not require infrastructure and benefits from the long-term stability of magnetic fields. Magnetometers are small, inexpensive devices with low power consumption and can be easily added to platform equipment or devices carried by platforms. Therefore, the technology of this disclosure may be employed, in particular, to create a magnetic map of an area, using crowdsourcing to facilitate the collection of necessary magnetic field measurements. [Overview of the project] [Means for solving the problem]

[0009] As described in detail below, this disclosure includes a method for constructing a magnetic map of an area. The area may consist of multiple locations, and the magnetic map includes magnetic field values ​​for each location. The method involves acquiring magnetic field measurements from at least one magnetometer associated with each of a plurality of platforms passing through at least a portion of the area, along with available absolute navigation information and motion sensor data from sensor assemblies associated with each platform. Next, the absolute navigation information and motion sensor data are used to determine a first set of attitudes for each platform. Information from the magnetic map is also acquired for any existing magnetic field values ​​for the first set of attitudes. Then, magnetic constraints for the attitudes of the platforms are determined, at least in part, based on the acquired magnetic map information and acquired magnetic field measurements. Subsequently, a second set of attitudes for each platform is determined, at least in part, based on the determined magnetic constraints, acquired magnetic field measurements, absolute navigation information, and motion sensor data. The magnetic field values ​​in the magnetic map are then updated, at least in part, based on the second set of attitudes for each platform.

[0010] This disclosure also includes a system for constructing a magnetic map of an area, where the area includes multiple locations, and the magnetic map includes magnetic field values ​​for each location. The system may include a plurality of platforms passing through at least a portion of an area, each platform configured to provide magnetic field measurements from at least one magnetometer associated with each platform, available absolute navigation information, and motion sensor data from a sensor assembly associated with each platform; at least one remote memory for storing magnetic maps; and at least one remote processor, wherein the at least one remote processor operates to acquire a first set of determined attitudes for each platform, the first set of attitudes being determined by using absolute navigation information and motion sensor data; to acquire information from the magnetic map for any existing magnetic field values ​​for the first set of attitudes; to determine magnetic constraints for the attitudes of the platforms at least in part on the acquired magnetic map information and acquired magnetic field measurements; to acquire a second set of attitudes for each platform at least in part on the determined magnetic constraints, acquired magnetic field measurements, absolute navigation information, and motion sensor data; and to update the magnetic field values ​​of the magnetic map at least in part on the second set of attitudes for each platform.

[0011] Furthermore, the disclosure also includes a non-temporary computer-readable storage medium storing instructions causing at least one processor to carry out a method for constructing a magnetic map of an area, wherein the area includes a plurality of locations, and the magnetic map includes magnetic field values ​​for the locations. A method implemented by at least one processor may include obtaining a first set of determined attitudes of a plurality of platforms passing through at least a portion of an area, each platform configured to provide magnetic field measurements from at least one magnetometer associated with each platform, available absolute navigation information, and motion sensor data from a sensor assembly associated with each platform, wherein the first set of determined attitudes of the plurality of platforms is determined by employing the absolute navigation information and motion sensor data; obtaining information from a magnetic map for any existing magnetic field values ​​for the first set of attitudes; determining magnetic constraints for the attitudes of the platforms based at least in part on the obtained magnetic map information and the obtained magnetic field measurements; obtaining a second set of attitudes of each platform based at least in part on the determined magnetic constraints, the obtained magnetic field measurements, the absolute navigation information, and the motion sensor data; and updating the magnetic field values ​​of the magnetic map based at least in part on the second set of attitudes of each platform. [Brief explanation of the drawing]

[0012] [Figure 1] This is a schematic diagram illustrating the construction of a magnetic map using information from multiple platforms, according to one embodiment. [Figure 2] This is a schematic diagram of a typical routine that constructs a magnetic map using information from multiple platforms, according to one embodiment. [Figure 3] This is a schematic diagram showing three platforms for acquiring magnetic field measurements within an area during the construction of a magnetic map, according to one embodiment. [Figure 4a]This is a schematic diagram showing an example of a magnetic map in a coordinate frame according to one embodiment. [Figure 4b] This is a schematic diagram showing an example of the attitude angle of the platform in the coordinate frame of Figure 4a, according to one embodiment. [Figure 5a] This is a schematic diagram showing an example of the relationship between a coordinate frame and a bicycle platform frame according to one embodiment. [Figure 5b] This is a schematic diagram illustrating an example of the relationship between a coordinate frame and pedestrian and vehicle platform frames according to one embodiment. [Figure 6] This is a schematic diagram illustrating the determination of a first set of platform orientations according to one embodiment. [Figure 7] This is a schematic diagram illustrating the acquisition of a portion of the magnetic map for a first set of platform orientations according to one embodiment. [Figure 8] This is a schematic diagram illustrating the determination of magnetic constraints on the orientation of a platform according to one embodiment. [Figure 9a] This is a schematic diagram illustrating the effect of magnetic anomalies on magnetic orientation according to one embodiment. [Figure 9b] This is a schematic diagram illustrating the effect of magnetic anomalies on magnetic orientation according to one embodiment. [Figure 10] This is a schematic diagram illustrating the determination of a second set of platform orientations according to one embodiment. [Figure 11a] This is a schematic diagram illustrating a robust estimation procedure for determining magnetic field values ​​according to one embodiment. [Figure 11b] This is a schematic diagram illustrating a robust estimation procedure for determining magnetic field values ​​according to one embodiment. [Figure 12a] This is a schematic diagram illustrating the effect of using an increased number of datasets when estimating magnetic field values, according to one embodiment. [Figure 12b] This is a schematic diagram illustrating the effect of using an increased number of datasets when estimating magnetic field values, according to one embodiment. [Figure 12c]This is a schematic diagram illustrating the effect of using an increased number of datasets when estimating magnetic field values, according to one embodiment. [Figure 13] This is a schematic diagram showing a 3D plot of the estimated magnetic anomaly map according to one embodiment. [Figure 14] This is a schematic diagram comparing the availability of absolute navigation information for two platforms according to one embodiment. [Figure 15] This is a schematic diagram illustrating the determination of a second set of platform attitudes when absolute navigation information is only partially available, according to one embodiment. [Figure 16a] This is a schematic diagram illustrating the effect of using an increased number of datasets when estimating magnetic field values, according to one embodiment. [Figure 16b] This is a schematic diagram illustrating the effect of using an increased number of datasets when estimating magnetic field values, according to one embodiment. [Figure 16c] This is a schematic diagram illustrating the effect of using an increased number of datasets when estimating magnetic field values, according to one embodiment. [Figure 17a] This is a schematic diagram showing a platform having magnetometers installed at different heights and a corresponding magnetic field map according to one embodiment. [Figure 17b] This is a schematic diagram showing a platform having magnetometers installed at different heights and a corresponding magnetic field map according to one embodiment. [Figure 17c] This is a schematic diagram showing a platform having magnetometers installed at different heights and a corresponding magnetic field map according to one embodiment. [Modes for carrying out the invention]

[0013] First, it should be understood that this disclosure is not limited to, and is therefore subject to change, the materials, architectures, routines, methods, or structures specifically illustrated. Therefore, several such options similar or equivalent to those described herein may be used in the practice or embodiments of this disclosure, but preferred materials and methods are described herein.

[0014] Furthermore, it should be understood that the terms used herein are intended solely to describe and not to limit the specific embodiments of this disclosure. It should also be understood that the terms used herein are given their accepted meanings known to those skilled in the art. Where appropriate, terms may also be given express definitions herein to convey their intended meanings.

[0015] For convenience and clarity purposes only, terms indicating direction, such as top, bottom, left, right, up, down, directly above, upward, downward, directly below, rear, rear, and front, may be used in reference to embodiments of the accompanying drawings or chips. These and similar terms indicating direction should not be construed as limiting the scope of this disclosure in any way.

[0016] In this specification and in the claims, when an element is referred to as being “connected” or “joined” to another element, it will be understood that the element can be directly connected or joined to that other element, or that an intervening element may exist. In contrast, when an element is referred to as being “directly connected” or “directly joined” to another element, no intervening element exists.

[0017] Part of the following detailed description is presented with respect to procedures, logical blocks, processes, and other symbolic representations of operations on data bits in computer memory. These descriptions and representations are means used by those skilled in the field of data processing to communicate the content of their work most effectively to others skilled in the field. In this application, procedures, logical blocks, processes, etc., are considered to be a self-consistent sequence of steps or instructions leading to a desired result. A step is one that requires the physical manipulation of a physical quantity. Usually, but not always, these quantities take the form of electrical or magnetic signals that can be stored, transferred, combined, compared, and otherwise manipulated in a computer system.

[0018] However, it should be noted that all these terms and similar terms should be associated with appropriate physical quantities and are merely convenient labels applied to those quantities. As will be evident from the following explanation, unless otherwise specified, throughout this application, explanations using terms such as “access,” “receive,” “transmit,” “use,” “select,” “determine,” “normalize,” “multiply,” “average,” “monitor,” “compare,” “apply,” “update,” “measure,” and “derive” should be understood to refer to the operation and processes of a computer system or similar electronic computing device that manipulates data represented as physical (electronic) quantities in the registers and memory of a computer system to convert it into other data similarly represented as physical quantities in the memory or registers of a computer system or other such information storage devices, transmission devices, or display devices.

[0019] The embodiments described herein may be described in the general context of processor-executable instructions residing on some form of non-transient processor-readable medium, such as program modules executed by one or more computers or other devices. Generally, a program module includes routines, programs, objects, components, data structures, etc., that perform a particular task or implement a particular abstract data type. The functions of a program module may be combined or distributed as desired in various embodiments.

[0020] In the diagrams, a single block may be described as performing one or more functions; however, in practice, the one or more functions performed by that block may be performed in a single component or across multiple components, and / or using hardware, software, or a combination of hardware and software. To clearly illustrate this hardware and software compatibility, various exemplary components, blocks, modules, circuits, and steps are described above in general terms of their functions. Whether such functions are implemented as hardware or software depends on the specific application and the design constraints imposed on the overall system. A person skilled in the art may implement the described functions in various ways for specific applications, but such implementation decisions should not be construed as causing a departure from the scope of this disclosure. Furthermore, the exemplary wireless communication device may include components other than those shown, including well-known components such as processors and memory.

[0021] The technologies described herein may be implemented in hardware, software, firmware, or any combination thereof, unless specifically described as being implemented in a particular manner. Any feature described as a module or component may also be implemented together within an integrated logic device, or separately as individual but interoperable logic devices. When implemented in software, the technology may be at least partially implemented by a non-temporary processor-readable storage medium having instructions that, when executed, perform one or more of the methods described above. The non-temporary processor-readable data storage medium may form part of a computer program product, which may include packaging materials.

[0022] Non-temporary processor-readable storage media include random access memory (RAM), such as synchronous dynamic random access memory (SDRAM), read-only memory (ROM), non-volatile random access memory (NVRAM), electrically erasable programmable read-only memory (EEPROM), flash memory, and other known storage media. Additionally or alternatively, the technology may be at least partially implemented by a processor-readable communication medium that carries or communicates code in the form of instructions or data structures and can be accessed, read, and / or executed by a computer or other processor. For example, a carrier wave may be used to carry computer-readable electronic data, such as when sending and receiving email, or when accessing a network such as the Internet or a local area network (LAN). Of course, many modifications can be made to this configuration without departing from the scope or spirit of the claimed subject matter.

[0023] Various exemplary logic blocks, modules, circuits, and instructions described in relation to the embodiments disclosed herein may be executed by one or more processors, such as motion processing units (SPUs), digital signal processors (DSPs), general-purpose microprocessors, application-specific integrated circuits (ASICs), application-specific instruction set processors (ASIPs), field-programmable gate arrays (FPGAs), or other equivalent integrated or discrete logic circuits. In this specification, the term “processor” may refer to any of the aforementioned structures or any other structure suitable for implementing the technology described herein. In addition, in some embodiments, the functions described herein may be provided within a dedicated software module or dedicated hardware module configured as described herein. Furthermore, the technology can be fully implemented within one or more circuits or logic elements. The general-purpose processor may be a microprocessor, but alternatively, the processor may be any conventional processor, controller, microcontroller, or state machine. Processors can also be implemented as a combination of computing devices, for example, as a combination of an SPU and a microprocessor, multiple microprocessors, one or more microprocessors working in conjunction with an SPU core, or any other such configuration.

[0024] Unless otherwise defined, all technical and scientific terms used herein have the same meanings as those generally understood by those skilled in the art to whom this disclosure relates.

[0025] Finally, as used herein and in the appended claims, the singular forms "a," "an," and "the" refer to multiple subjects unless the context clearly indicates otherwise.

[0026] The technologies of this disclosure provide systems and methods for enabling magnetic information-based positioning technologies by creating magnetic maps of areas. In one embodiment, these technologies can replace labor-intensive periodic surveys of magnetic fields using crowdsourcing, so that measurements and data for mapping are collected by multiple platforms moving across the area in overlapping routes. The information may also be collected using portable devices such as smartphones transported by pedestrians and different types of vehicles, including regular bicycles, electric bicycles and scooters, and automobiles. During the information collection process, already collected information may be used to improve the accuracy of the mapping. The disclosure also provides technologies for addressing the problem of ambiguity in magnetic fields, where the same magnetic field value may occur at different locations. These technologies also accommodate measurements collected from magnetometers located at different positions relative to the platform, assuming that the magnetic field depends not only on 2D position but also on height.

[0027] Magnetic information-based positioning utilizes variations in the Earth's magnetic field generated by iron materials in building structures and in densely populated urban areas. As mentioned above, magnetic information-based positioning is an attractive technology for indoor and outdoor positioning in urban environments due to its lack of infrastructure requirements and long-term stability of the magnetic field within buildings. The first stage of magnetic information-based positioning is a two-stage process of creating a magnetic fingerprint map representing the local magnetic field. Creating such a map requires collecting magnetometer readings across the entire area covered by the map. Examples of techniques for creating magnetic fingerprint maps are detailed in the jointly owned U.S. Patent No. 10341982, U.S. Patent No. 11035915, and U.S. Patent Application No. 17 / 512301, each of which incorporates the whole by reference.

[0028] The platform position tracking according to this disclosure also involves the use of motion sensor data, which may be obtained from one or more sensor assemblies, representing the motion of the platform in space, and may include a portable device carried by a platform equipped with inertial sensors such as accelerometers and gyroscopes, sometimes called an inertial measurement unit (IMU), and other motion sensors, including pressure sensors, may be used further. Depending on the configuration, the sensors measure one or more rotation axes and / or one or more acceleration axes of the device. In one embodiment, this may include an inertial rotational motion sensor or an inertial linear motion sensor. For example, the rotational motion sensor may be a gyroscope that measures angular velocity along one or more orthogonal axes, and the linear motion sensor may be an accelerometer that measures linear acceleration along one or more orthogonal axes. In one embodiment, three gyroscopes and three accelerometers may be employed so that the sensor fusion operation combines the data to provide six-axis determination or six degrees of freedom (6DOF) of motion. If desired, one or more sensors may be implemented using a Micro Electro Mechanical System (MEMS), enabling integration into a single small package; however, the techniques of this disclosure can be applied to any sensor design or implementation configuration. Exemplary details of preferred sensor configurations can be found in jointly owned U.S. Patents 8,250921 and 8,952832, which are incorporated herein by reference in their entirety, and implementation configurations are available from InvenSense, Inc. (San Jose, CA). Using dead reckoning or other suitable techniques, the positioning of a portable device may be propagated forward in time, enabling the portable device to be tracked. However, significant performance degradation can occur from accumulated sensor drift and bias, particularly over longer durations.

[0029] To help illustrate the technology of this disclosure, a typical example of multiple platforms moving within an area is schematically shown in Figure 1. Although only two vehicles 110 (vehicle 1) and 120 (vehicle N) are shown in the figure, any number of platforms, including thousands, may be used to collect information. Each platform is equipped with at least a magnetometer (113, 123), a GNSS receiver (112, 122), and a motion sensor (111, 121), either as part of the vehicle equipment or included in portable devices carried by the platform. In other embodiments, different sources of absolute navigation information may be employed. The vehicles pass through the area on overlapping trajectories and repeatedly provide corresponding magnetic field measurements when they are in the same location. A set of data (dataset) containing these instrument measurements from each platform can be transmitted to a server or cloud. The server / cloud processes the datasets from the platforms individually, as schematically represented by switch 130. Processing operation 150 includes several steps, as detailed below, aimed at iteratively generating magnetic field measurements for magnetic map 140. In some embodiments, the covariance of the magnetic map is also calculated, and therefore, the overall description of magnetic field measurements in this disclosure may include covariance information.

[0030] As further illustrated by Figure 2, this typical routine for crowdsource-based mapping of magnetic fields within an area involves several operations. First, a remote processing resource, such as server 150, initializes a magnetic map 140 of the area in step 145, the magnetic map including locations within the area and corresponding magnetic field values, and may include covariance. Next, measurement data 210 in Figure 2, including magnetic field measurements, GNSS-based data, and motion sensor measurements, is acquired for several platforms, such as vehicles 110 and 120 moving within the area, each platform equipped with a magnetometer (113, 123), GNSS receivers (112, 122), and motion sensors (111, 121). Then, each dataset of measurements acquired from the platforms is iteratively processed by server 150, including the following operations. i. In step 151, the acquired measurements are used to determine a first set of attitudes for each platform, which may also include attitude covariances in any embodiment. ii. In step 152, obtain a portion of the magnetic map and optionally the covariance of the magnetic map for a first set of platform orientations. iii. In step 153, the magnetic constraints on the platform's orientation are determined using the magnetometer measurements and the acquisition of the magnetic map. iv. In step 154, a second set of attitudes (and covariances, depending on the embodiment) for each platform is determined using the measurements from the platform and the magnetic constraints. v. In step 155, update the magnetic map (and optionally the covariance) for a second set of magnetometer measurements and platform orientation. These steps are repeated for each platform.

[0031] Further illustrative examples are shown in Figure 3, where three different types of platforms are shown within an outdoor area 300, such as a crossroads, but a considerable number of vehicles, which may be of different shapes and sizes, could be present in the area. In this example, platform 1 is a small car 321, platform 2 is a large car 322, and platform 3 is a bicycle 323. In this case as well, each platform is equipped with a magnetometer 123, a GNSS receiver 122, and a motion sensor 121, as shown for platform 2 (322). The magnetometer of each vehicle measures the ambient magnetic field, and its fluctuations are indicated by contour lines 310 within area 300. The GNSS receiver receives signals from navigation satellites 330, shown at the top of Figure 3. The illustrated building 340 may obstruct the GNSS signal, which is an environment known as an "urban canyon." The motion sensor determines the motion parameters of each platform. Each platform transmits the measured magnetic field values, received GNSS data, and motion data 210 to the server 150 using communication means (not shown). The vehicle may also transmit other information, such as configuration data as described below, to the server.

[0032] A server 150 comprising at least one processor 350 and at least one memory 360 receives data from multiple platforms, e.g., 321, 322, and 323. The processor 350 is configured to process data from the vehicles as described above with respect to Figures 1 and 2. The memory 360 of the server 150 stores the magnetic map 140 and, optionally, other parameters such as covariance and a history of magnetometer measurements. Periodic connections between the processor and the memory represent iterative updates of the magnetic map as described above. In addition to the magnetic map, the memory can also store other maps, such as other electromagnetic fingerprint maps, that can be created and / or used by the processor. Processing can be provided on the server or, in some embodiments, distributed between the server and the vehicles / platforms, the vehicles / platforms may be equipped with processors for this purpose, thereby allowing at least one of a first set of attitudes, a second set of attitudes, and magnetic constraints to be determined by at least one of the platforms or by a remote processor.

[0033] Therefore, the created magnetic map 370 (and other fingerprint maps of the area, if employed) can be sent back to the vehicle / platform for use in positioning within the area. The platform can transmit magnetic field measurements, absolute navigation data such as GNSS-based data, and motion sensor measurements to the server. The platform can receive the acquired portion of the magnetic map from the server to support the distributed processing described above. To support data exchange between the platform and the server, the platform and the server can communicate via a wireless or cellular network. Any suitable protocol can be employed, including cellular-based technologies and wireless local area network (WLAN) technologies such as Universal Terrestrial Radio Access (UTRA), Code Division Multiple Access (CDMA) networks, Global System for Portable Communications (GSM), IEEE 802.16 (WiMAX), Long Term Evolution (LTE), and IEEE 802.11 (Wi-Fi®). Communication can be direct or indirect, such as through multiple interconnected networks. As understood, various systems, components, and network configurations, topologies, and infrastructures, such as client / server, peer-to-peer, or hybrid architectures, can be employed to support distributed computing environments. For example, computing systems can be connected together by wired or wireless systems, and by local or wide-area distributed networks.Currently, many networks are connected to the Internet, which provides infrastructure for wide-area distributed computing and encompasses many different networks, but any network infrastructure can be used for exemplary communications carried out in conjunction with the technologies described in various embodiments.

[0034] Accordingly, the present disclosure includes a method for creating a magnetic map by acquiring magnetic field measurements from at least one magnetometer associated with each of a plurality of platforms passing through at least a portion of an area, available absolute navigation information, and motion sensor data from a sensor assembly associated with each platform. Next, the absolute navigation information and motion sensor data are taken to determine a first set of attitudes for each platform. Information from the magnetic map is also taken for any existing magnetic field values ​​for the first set. Then, magnetic constraints for the attitudes of the platforms are determined, at least in part, based on the acquired magnetic map information and acquired magnetic field measurements. Subsequently, a second set of attitudes for each platform is determined, at least in part, based on the determined magnetic constraints, acquired magnetic field measurements, absolute navigation information, and motion sensor data. The magnetic field values ​​in the magnetic map are then updated, at least in part, based on the second set of attitudes for each platform.

[0035] In one embodiment, the magnetic map further includes the covariance of magnetic field values, and further includes updating the covariance of magnetic field values ​​of the magnetic map based at least in part on a second set of attitudes of each platform.

[0036] In one embodiment, determining a second set includes matching acquired magnetic field measurements with acquired magnetic map information using the determined magnetic constraints. Matching includes adopting consecutive magnetic field measurements.

[0037] In one embodiment, determining a second set may involve taking the acquired magnetic field measurements and using the determined magnetic constraints to estimate the magnetic orientation for at least some of the orientations. Estimating the magnetic orientation may also be based on acquired magnetic map information.

[0038] At least one of the first set of attitudes and the second set of attitudes can be determined by densely integrating absolute navigation information.

[0039] In one embodiment, updating the magnetic field values ​​of a magnetic map can be performed recursively, at least partially based on the relationship between the covariance of the acquired magnetic map information and the acquired magnetic field measurements.

[0040] In one embodiment, updating the magnetic field values ​​of a magnetic map may be based on estimated uncertainties associated with magnetic field measurements by applying a robust estimation procedure.

[0041] In one embodiment, absolute navigation information may be unavailable for at least one attitude of at least one platform.

[0042] In one embodiment, at least one magnetometer and sensor assembly associated with at least one of a plurality of platforms may be integrated into a portable device carried by the platform, thereby enabling the method to operate when the portable device is confined within the platform and when the portable device is not confined within the platform. The platform carrying the portable device may be at least one of pedestrians and vehicles.

[0043] In one embodiment, the method may also include determining the height of at least one magnetometer on the platform, thereby updating the magnetic map information, including the determined height.

[0044] In one embodiment, the method may also involve integrating measurements from at least one of additional data sources to determine at least one of the first and second sets, wherein at least one of the multiple platforms further comprises at least one of a wireless receiver, a camera, a lidar, and a radar from which measurements from the additional data sources are obtained.

[0045] In one embodiment, the method may also involve creating a map of wireless signals based on received wireless signals and at least in part on a second set of each platform, wherein at least one of the multiple platforms further comprises a wireless receiver.

[0046] In one embodiment, motion sensor data from at least one of the platforms may include information obtained from at least one of an odometry sensor, a velocity sensor, and a pressure sensor.

[0047] In one embodiment, the motion sensor data of at least one of the platforms may include inertial motion sensor information.

[0048] In one embodiment, the method may also involve at least partially initializing a magnetic map using at least one of values ​​from a global geomagnetic model and the results of a previous mapping operation.

[0049] As described above, the disclosure also includes a system for constructing a magnetic map of an area, where the area includes multiple locations, and the magnetic map includes magnetic field values ​​for each location. The system may include a plurality of platforms passing through at least a portion of an area, each platform configured to provide magnetic field measurements from at least one magnetometer associated with each platform, available absolute navigation information, and motion sensor data from a sensor assembly associated with each platform; at least one remote memory for storing magnetic maps; and at least one remote processor, wherein the at least one remote processor operates to acquire a first determined set of attitudes for each platform, the first set being determined by using absolute navigation information and motion sensor data; acquire information from the magnetic map for any existing magnetic field values ​​for the first set; determine magnetic constraints for the attitudes of the platforms at least in part on the acquired magnetic map information and acquired magnetic field measurements; acquire a second set of attitudes for each platform at least in part on the determined magnetic constraints, acquired magnetic field measurements, absolute navigation information, and motion sensor data; and update the magnetic field values ​​of the magnetic map at least in part on the second set of attitudes for each platform.

[0050] In one embodiment, at least one of the first set, the second set, and the magnetic constraints may be determined by at least one of the platforms.

[0051] In one embodiment, at least one of the first set, the second set, and the magnetic constraints can be determined by at least one remote processor.

[0052] In one embodiment, at least one of at least one remote processor and at least one remote memory may be further configured to build and store a map of wireless signals.

[0053] In one embodiment, at least one remote processor may be further configured to acquire the height of at least one magnetometer on the platform, and updating the magnetic map information includes the acquired height.

[0054] In one embodiment, the magnetic map may also include the covariance of magnetic field values, and at least one remote processor is further configured to update the covariance of magnetic field values ​​in the magnetic map, at least partially based on a second set of each platform.

[0055] Furthermore, the disclosure also includes a non-temporary computer-readable storage medium storing instructions causing at least one processor to carry out a method for constructing a magnetic map of an area, wherein the area includes a plurality of locations, and the magnetic map includes magnetic field values ​​for the locations. A method implemented by at least one processor may include obtaining a first set of determined attitudes of a plurality of platforms passing through at least a portion of an area, each platform configured to provide magnetic field measurements from at least one magnetometer associated with each platform, available absolute navigation information, and motion sensor data from a sensor assembly associated with each platform, wherein the first set of determined attitudes of the plurality of platforms is determined by employing the absolute navigation information and motion sensor data; obtaining information from a magnetic map for any existing magnetic field values ​​for the first set; determining magnetic constraints for the attitudes of the platforms based at least in part on the obtained magnetic map information and the obtained magnetic field measurements; obtaining a second set of attitudes of each platform based at least in part on the determined magnetic constraints, the obtained magnetic field measurements, the absolute navigation information, and the motion sensor data; and updating the magnetic field values ​​of the magnetic map based at least in part on the second set of attitudes of each platform.

[0056] In one embodiment, the magnetic map may also include the covariance of magnetic field values, thereby a method implemented by at least one processor involves updating the covariance of magnetic field values ​​in the magnetic map based at least partially on a second set of attitudes for each platform. (Examples)

[0057] The embodiments described below in relation to the accompanying drawings are intended to describe exemplary embodiments of the present disclosure and are not intended to represent only exemplary embodiments that may be used to implement the disclosure. The term “exemplary” as used throughout this description means “acting as an example, case, or illustration” and should not necessarily be construed as being preferable or advantageous to other exemplary embodiments. This detailed description includes certain details for the purpose of providing a full understanding of the exemplary embodiments of this specification. It will be apparent to those skilled in the art that the exemplary embodiments of this specification may be implemented without these specific details. In some cases, well-known structures and devices are shown in block diagram form to avoid obscuring the novelty of the exemplary embodiments presented herein.

[0058] 1.1 Initialize the magnetic map (145) A magnetic map provides a correlation between magnetic field values ​​and location. For example, a magnetic map can be considered a database, and all its records may include a 3D vector of the magnetic field at a particular location. In addition to the 3D vector of the magnetic field, the records may include its covariance as a 3x3 covariance matrix, as described below. In some embodiments, the magnetic map may also include a history of magnetometer measurements converted into a map frame having the corresponding covariance of the magnetic measurements, which may be supplemented with timestamps of the measurements and possibly other information. In some embodiments, in addition to the magnetic field and covariance, the magnetic map may also include other data, such as the gradient of the magnetic field with the relevant covariance for the corresponding location in the area.

[0059] Locations within the magnetic map may be in any suitable coordinate frame, such as a Cartesian frame like a global frame (ECEF) or a local frame (ENU or NED), or in a geodetic (latitude / longitude) coordinate system. An example of a magnetic map in an NED frame is shown in Figure 4a, where the positive X-axis points north, the positive Y-axis points east, and the positive Z-axis points downward. The example magnetic map is shown as a rectangular area 410 in the horizontal plane, but the map can have different shapes. A grid filling area 410 illustrates a possible structure of the magnetic map, where each cell in the grid features a specific location (and possibly includes a 3D vector of the magnetic field, along with covariance and other information). The magnetic map in Figure 4a is shown as layers of a specific height, but the map may also include several layers of different heights, as will be further described. For the purposes of clarification in this example, the magnetic map can be considered defined in an NED frame, sometimes also called a navigation frame, but in other embodiments, other suitable frames or systems may be adopted and transformed as desired.

[0060] In one embodiment, the magnetic map can be initialized with values ​​from one of the global geomagnetic models, for example, the World Magnetic Model (WMM) for an area or the International Geomagnetic Reference Field (IGRF). The diagonal elements of the map's covariance can be set to a large value representing the uncertainty of the initial magnetic field. In another embodiment, the magnetic map can be initialized with the results of previous surveys or crowdsourced mappings (if one of them is available), using a covariance that takes into account the aging of previously collected data. These variations of magnetic map initialization can be combined; that is, part of the magnetic map can be initialized with available results from previous surveys or crowdsourcing, and the remainder can be initialized with values ​​from one of the global geomagnetic models. Any other existing sources of information for the magnetic map may also be employed as desired.

[0061] 1.2 Obtain measurement data for each of the multiple platforms moving within the area. As described above, the acquired measurement data may include magnetic field measurements, GNSS-based data or other sources of absolute navigation information, and motion sensor measurements. Each vehicle may have, for example, a magnetometer, a GNSS receiver, and a motion sensor. The GNSS receiver or other source of navigation information may provide one or a combination of the following data, namely PVT (position, velocity, and time) solutions such as pseudo-range and pseudo-Doppler and / or raw measurements, along with other information such as ephemeris for use in the art of this disclosure.

[0062] Motion sensor data may include information from inertial motion sensors such as accelerometers and gyroscopes, but may also include other sources of platform motion parameters such as odometry (e.g., wheel sensors), velocity sensors (e.g., Doppler sensors), and / or pressure sensors (e.g., pressure gauges). In many cases, a platform implemented as a vehicle may be equipped with some of the sensors listed above, and there are standard methods for obtaining their information, for example, via a CAN bus or OBD-2.

[0063] Generally, the state of a rigid vehicle is described by its 3D Cartesian coordinates and three attitude angles (roll, pitch, and heading). Instead of Cartesian frames such as ECEF and ENU / NED, any other coordinate frame, such as a geodetic frame (latitude / longitude), can be used. For clarity, this example is described in the context of 2D Cartesian coordinates and heading measured clockwise from the geographical or true North Pole direction. In this example, motion sensor data is at least the velocity v of the platform, measured by any combination of odometry, velocity sensors, and IMU. t , as well as the heading angular velocity δψ measured by the gyroscope t It provides that, in the case of pedestrians carrying portable devices, motion sensor data employs a type of pedestrian dead reckoning (PDR), with at least one stride length. t The heading angular velocity δψ t It can be provided together with the following. As shown in Figure 4b, the attitude angles for an example of an NED frame for an example of an automobile 420 may include the roll angle being a rotation φ about the X axis, the pitch angle being a rotation θ about the Y axis, and the heading angle being a rotation about the Z axis, where angle 430 is an example of heading ψ.

[0064] A 3D magnetometer measures the magnetic field value in the main frame, sometimes also called the device frame. For the purposes of this discussion, the magnetometer measurement is a vector m having three components.t =(m xt ,m yt ,m zt ) T can be defined as, where x, y, and z represent three components of the magnetometer output, and t is the instant of measurement. Since the magnetometer measurement value and the magnetic map value are in different frames, the magnetometer measurement value can be converted from the body (device) frame to the frame of the magnetic map as described above, such as the NED navigation frame in this context. As is generally known, the conversion between frames can be described by a conversion matrix.

[0065] Correspondingly, FIG. 5a shows the relationship between frames for an example of a bicycle. Specifically, FIG. 5a shows the body (device) frame where the magnetometer measurement is taken, the platform frame, and the NED (navigation) frame which is the frame of the magnetic anomaly map. The arrows indicate the conversion between frames. The index "b" refers to the coordinate axes of the body frame, and the index "v" refers to the coordinate axes of the platform frame such as in an example of a cyclist in FIG. 5a. The index "n" refers to the navigation frame defined as the NED frame in FIG. 4a. The conversion matrix shown in FIG. 5a converts between frames. Matrix C bv converts from the body frame to the platform frame, and matrix C vn converts from the platform frame to the navigation frame, and matrix C bn converts from the body frame to the navigation frame. As another example, FIG. 5b shows the device frame and the platform frame for the case of a pedestrian (person) and a car. The navigation frame is not shown in FIG. 5b but may be the same as in FIG. 5a. Correspondingly, the conversion between the frames in FIG. 5b is described by the same matrix as in FIG. 5a.

[0066] This data from the platform is provided to a server or cloud for processing. One possibility is to transmit the data in real time via available wireless and cellular communication channels, such as those described above, while another possibility is to record the dataset on the platform while the platform is in motion and then upload the accumulated dataset for processing. After being retrieved by the server, the dataset from the platform is processed iteratively as shown in Figures 1 and 2. In some embodiments, in addition to the motion sensor data described above, one or more of the platforms may also have configurable parameters, such as the installation height of the magnetometer from the ground, and possibly other parameters.

[0067] 1.3 Determine the first set of platform attitudes This operation can narrow the area of ​​correlation between magnetometer measurements and magnetic maps, and thus mitigate the effects of magnetic field ambiguity. A first set of platform attitudes is determined using measurements from the platform, e.g., absolute navigation information such as GNSS and motion data. To achieve better accuracy, the data can be processed together or fused using one or another integration technique, e.g., factor graph optimization (FGO), extended Kalman filter (EKF), or particle filter (PF). In this example, FGO is used to further illustrate the possible use of other techniques.

[0068] For example, suppose the state vector describing the vehicle's attitude includes at least the platform's 2D Cartesian coordinates x, y and heading ψ.

number

number

[0069] In FGO, sensor measurements are considered factors associated with a specific state. While FGO can accommodate different timestamps, for clarity, we assume that all data have the same timestamp t=1,…,T. In some embodiments, data with different timestamps can be interpolated to the same timestamp if necessary.

[0070] The goal of factor graph optimization is to minimize the objective function, thereby reducing the estimated value

number

number

number

[0071] The first addend in the sum of equation (2) is the motion sensor coefficient representing the platform's motion. Taking a simplified platform motion model as an example, the function q can be expressed as follows:

number

[0072] For pedestrians, a simplified motion model can be represented as follows:

number

number

number

[0073] The expected j-th pseudorange is given by the measurement function.

number

[0074] During the ceremony,

number

[0075] The advantage of using raw GNSS measurements is that it can improve the accuracy of determining the first set of platform attitudes by detecting and excluding spurious ranges contaminated by strong multipath and NLOS conditions typical of dense urban environments from equation (6). Different methods can be used to detect contaminated spurious ranges, such as GNSS shadow matching on 3D city maps, M estimators, and other techniques known in the art.

[0076] The technique of using raw GNSS measurements, such as the pseudo-range described above for one constellation, for example GPS, can be extended to several constellations, such as Galileo, GLONASS, and BeiDou, by adding clock shifts for additional constellations in equations (5) to (7). In some embodiments, the raw GNSS measurements may further include a pseudo-Doppler, which can also be used in the objective function as in equation (6).

[0077] By minimizing the objective function of equation (2) or equation (6), the first set of platform attitudes can be determined.

number

[0078] Therefore, Figure 6 shows an example of determining the first step of position, which is based on a simulation of the platform's motion and data from a GNSS receiver and motion sensors. The small filled dots in Figure 6 represent the true trajectory of the square platform, starting at (0,0), moving counterclockwise as indicated by the horizontal arrow, and ending at the same position. The square represents the GNSS-based position, and the triangle represents the position based on motion data. The filled hexagram shows the first set of platform positions obtained by minimizing the objective function of equation (2) above. Due to the fusion of GNSS-based data and motion data, the first set of determined positions is found to be closer to the true trajectory of the platform than other data sources.

[0079] In some embodiments, other data sources can be incorporated as additional factors into the objective function of equation (2) or (6). For example, this may be wireless data in the form of either the platform's position or the range from the platform to the Wi-Fi access point, measured by methods such as Wi-Fi RTT. Furthermore, one or more platforms may be equipped with means such as cameras, lidar, and / or radar. Their measurements can also be used to determine a first set of attitudes by incorporating them as additional factors into the objective function of equation (2) or (6). In another example, magnetic headings determined outside of a magnetic anomaly can be used as described below. Yet another example is using the platform's velocity vectors from a GNSS PVT solution. These additional data sources, if available, can help determine a first set of attitudes more accurately.

[0080] 1.4 Obtain a partial magnetic map for a first set of platform attitudes (152) Figure 7 shows obtaining a portion of the magnetic map for a first set of platform orientations, and an exemplary example of one component of the simulated magnetic map is shown as a 3D picture, where the horizontal axis defines the position in meters and the vertical axis defines the magnetic field for each position in microteslas (uT). The magnetic map in this example includes area 710 with a constant level of the Earth's magnetic field and eight equal magnetic anomalies 721-728. The equivalence of these magnetic anomalies indicates magnetic field ambiguity, meaning that the same magnetic field value can exist at different locations. Magnetic field ambiguity makes it more difficult to correlate magnetic data, and what is proposed helps to solve this problem.

[0081] The hexagram (six-pointed star) 730 is the first set of platform orientations determined.

number

number

number

number

[0082] The rectangular shape 740 encompassing the portion of the magnetic map for position 730 is shown as an example; other shapes, such as an ellipse, can be used. The dimensions of the area within the rectangle or ellipse can be chosen to cover the uncertainty of the first set of positions, as defined by the covariance Σ_X of the first set of positions. For example, in the case of an ellipse, the semi-axis of the ellipse may be proportional to the square root of the diagonal elements of the covariance. Using a frequently used proportionality constant of 3, the portion of the magnetic map for a particular position from the first set of positions is determined with a probability greater than 0.95.

[0083] In the context of this example,

number

number

number

[0084] 1.5 Determine magnetic constraints on the platform's orientation (153) In a crowdsourcing scenario, multiple platforms move across cities on overlapping trajectories. As shown in Figure 1, datasets acquired from the platform's equipment (magnetometer, GNSS receiver, and motion sensor) are processed one by one to incrementally update the magnetic map. When processing the next dataset, the previously created magnetic map can be used to more accurately determine the platform's position for the next dataset, contributing to a more accurate update of the magnetic map in the next step. For this purpose, magnetic constraints on the platform's orientation can be determined using magnetometer measurements and the acquired portion of the magnetic map.

[0085] Figure 8 shows one exemplary embodiment of module 153 for determining magnetic constraints. Input data for determining magnetic constraints is, for example, the attitude X of the relevant platform from a first set of positions. t and covariance Σ t Magnetometer measurement values ​​accompanied by m t (810) and covariance Ω t Acquisition portion μ of the magnetic map having t (812) may also be included. Magnetic data 814 from the IGRF's WMM for the platform position can also be used. The module's output 850 is the magnetic constraint used in the next step of the iterative process. The module may include submodules such as magnetic matching 820, magnetic orientation determination unit 830, and magnetic anomaly detector 840. Examples of these specific magnetic constraints are shown below.

[0086] A. Estimation of platform position using magnetometer measurement matching By comparing magnetometer measurements with magnetic field values ​​in the acquired portion of the magnetic map, the promising location of the platform can be determined by the best match between the measurements and the magnetic field values ​​for a particular location. For example, several variations of the matching are possible, using the magnitude of the magnetic field, using separate horizontal and vertical components of the magnetic field, or using the 3D vector of the magnetic field. Submodule 820 in Figure 8 is configured for this purpose.

[0087] For example, in one embodiment, the magnitude of the magnetometer measurement value 810

number

number

number

number

number

[0088] In another embodiment, the position of the platform is its position

number

number

number

number

[0089] Furthermore, the covariance of the platform locations can be estimated.

number

[0090] As can be understood, equations (10) and (11) use, for example, the magnitude of the magnetic field, rather than the separate horizontal component of the magnetic field.

number

[0091] In particular, the horizontal and vertical components can be estimated using the roll angle φ and pitch angle θ, respectively (see Figure 4b for the definition of angles).

number

[0092] B. Several consecutive measurements By using the matching of several consecutive magnetometer measurements 810 with the acquisition portion of the magnetic map 812, the association of magnetic data with situations where the dimensions of area 740 are larger can be further improved when the accuracy of determining the positions of some of the first set of attitudes is low. For example, the same variations of the magnetic data described above may be used, such as the magnitude of the magnetic field, or separate horizontal and vertical components of the magnetic field, or the 3D vector of the magnetic field.

[0093] For example, d t-k+1:t However, this defines the last series of k magnetic measurements taken consecutively from time t-k+1 to time t, and in the equation, d t This is the magnitude of the magnetometer measurement.

number

number

number

number

number

[0094] The best match between consecutive magnetic measurements and acquired portions of the magnetic map can be obtained by minimizing the difference between a series of magnetic measurements and a series of candidate magnetic maps, according to the following:

number

[0095] Since all values ​​in the magnetic map are correlated with specific locations, the platform's location

number

number

[0096] C. Magnetic direction using the model Submodule 830 helps determine the magnetic direction. Magnetometer measurements taken outside the magnetic anomaly m t This can be used to determine the heading using the following formula.

number

[0097] Therefore, Figure 9a shows component m shown in the NED frame (see Figure 4a). x , m y , and m zFigure 9b shows the 3D vector of the magnetic field with , where d is the magnetic declination. Figure 9b shows the effect of magnetic anomalies on magnetic direction. Contour line 910 indicates the level of magnetic anomaly, such as one of the magnetic anomalies 721-728 in Figure 7. Arrow 920 outside the contour line, i.e., outside the magnetic anomaly, indicates the Earth's original magnetic field. Arrow 930 inside the contour line indicates the magnetic field disturbed by the anomaly. It can be seen that the direction of the magnetic field 930 inside the magnetic anomaly is different from the magnetic field 920 outside.

[0098] Module 830 for detecting magnetic anomalies can help determine the magnetic direction outside the magnetic anomaly according to equation (17). For example, the magnitude of the Earth's magnetic field given by WMM or IGRF relative to the platform position and the magnitude of the magnetometer measurement.

number

[0099] If a magnetic anomaly is detected, the magnetic heading in equation (17) should not be used. Standard deviation of heading estimates.

number

number

[0100] D. Magnetic direction using acquired partial magnetic maps The aforementioned method for determining magnetic orientation relies on a magnetic model and can therefore be used even if a magnetic map has not yet been created. However, as mentioned above, it cannot be used at locations with magnetic anomalies. If a magnetic map has been determined at least partially using a preceding dataset from the platform, magnetic orientation can be estimated for the current dataset based on magnetometer measurements 810 and the acquired portion of the magnetic map 812 that includes locations with magnetic anomalies 930.

[0101] A simplified formula for determining the magnetic direction for this method can be as follows:

number

[0102] Both methods for determining the magnetic orientation may be used in combination for different portions of the magnetic map, both on the outer (920) and inner (930) sides of the magnetic anomaly.

[0103] E. Combinations of magnetic constraints The magnetic constraints 850 on the attitude of the platform described above, including constraints on position (sections A and B) and heading (sections C and D), can be combined into a single vector of constraints on the attitude of the platform, for example, as follows:

number

number

[0104] The determined magnetic constraints and their covariances can then be used in the next step to determine a second set of platform orientations.

[0105] 1.6 Determine the second set of platform attitudes (154) Second set of posture

number

number

[0106] A second set of platform attitudes can be determined by an appropriate state estimation technique, such as FGO, which was used to determine the first set of attitudes, using additional factors of the magnetic constraints determined in the previous step. The modified objective function of equation (2), combining the motion data, GNSS position, and magnetic constraints, can be expressed, for example, as follows:

number

number

[0107] The motion coefficients and GNSS coefficients in equations (22) and (23) are the same as those in the objective function for the first set of attitudes in equations (2) and (6), respectively. Since the magnetic constraint by equation (20) is linearizable, optimization can be carried out in the same way as described in Section 1.3 for the second set of attitudes.

number

[0108] Correspondingly, Figure 10 shows an example of determining a second set of positions. Similar to the first set of positions in Figure 6, the small filled dots in Figure 10 represent the true trajectory of the square platform, starting at (0,0), moving counterclockwise, and ending at the same position. The squares represent GNSS-based positions, and the triangles represent positions based on motion data. The crosses indicate magnetic constraints on the platform's position. Magnetic constraints are shown only for positions where the diagonal elements of the magnetic constraint covariance are small, because constraints at other positions have a weaker impact on optimizing the objective function in equation (22) or (23). It can be seen that the useful magnetic constraints coincide with the positions of magnetic anomalies 721–728 shown in Figure 7. The filled hexagram shows a second set of platform positions obtained by minimizing the objective function in equation (22) described above. Due to the use of magnetic constraints, the second set of determined positions is closer to the true trajectory of the platform than the first set of positions shown in Figure 6, allowing for a more accurate update of the magnetic map.

[0109] Similar to the determination of the first set of location data, other data sources may be included in the objective function of equation (22) or (23) as additional factors for determining the second set of location data. For example, wireless data in the form of either the platform's location or the range from the platform to the Wi-Fi access point, measured by methods such as Wi-Fi RTT. Furthermore, one or more platforms may be equipped with means such as cameras, lidar, and / or radar. Their measurements can also be used to determine the second set of location data by incorporating them as additional factors in the objective function of equation (22) or (23). Another example is using the platform's velocity vector from a GNSS PVT solution. These additional data sources, if available, can help determine the second set of location data more accurately.

[0110] 1.7 Update the magnetic map (155) Once a second set of platform orientations is determined, which is more accurate due to the use of additional magnetic constraints, the magnetic map 140 can be updated using magnetometer measurements. The covariance of the magnetic map can also be updated. As defined in equation (1), the platform orientation is given by the 2D Cartesian coordinates x of the platform. t ,y t and heading ψ t It can include...

[0111] Second set of posture

number

number

[0112] The transformation matrix can be expressed as follows (following the definition of attitude angles in 1.2 and Figure 4b).

number

[0113] The covariance of magnetometer measurements containing several components is described in detail in U.S. Patent No. 1,1035915, co-owned, which is incorporated herein by reference in its entirety. A simplified variant for the purposes of this disclosure may be expressed as follows:

number

number

[0114] Component P of Equation (26) t is caused by the incorrect device orientation angle. Using a simplification for small values of the variance of the orientation angle, matrix P t can be expressed according to Equation (27).

Number

Number

[0115] It can be seen that the conversion of the magnetometer measurement values from the device (body) frame to the navigation frame of the magnetic map generates an additional error (not the magnetometer noise and bias error) caused by the error of the orientation angle.[[]]

[0116] In one embodiment, the magnetic map 140 and its covariance are recursively updated by adding a portion of the current magnetometer measurement value n-1 to the previous value μ

Number

Number

Number

[0117] In another embodiment, as described in Section 1.1, an additional set of magnetometer measurements

Number

Number

[0118] In further examples, the parameters of a magnetic map can be estimated separately for the X, Y, and Z components of the magnetic vector by using an M estimator, although other known robust estimation techniques can also be used. Therefore, it should be understood that the following explanation concerns the determination of the position and scale of the X component of the magnetic field, and that the Y and Z components can be determined using similar methods. For all locations in the magnetic map, the magnetic field value μ x,n This can be estimated from the following equation.

number

number

number

[0119] As can be understood, this formula is based on magnetic field measurements.

number

number

[0120] Exemplary results of the above technology are shown in FIGS. 11 to 16. Specifically, FIG. 11 shows a robust procedure for reducing pollution measurement values. FIG. 11a shows a histogram of one component of the magnetometer measurement values for a specific position, which consists of the correct measurement value 1110 of the Earth's magnetic field and an incorrect measurement value 1120 caused by different reasons, for example, errors in the position and orientation determination of the portable device. The curve of the normal distribution 1130 in FIG. 11a indicates that the magnetic field was inaccurately estimated by using the conventional averaging of all magnetometer measurement values. As can be seen, the magnetic field was estimated with a bias (shifted to the left from the correct value), and the standard deviation of the magnetic field was significantly larger than its true value. Conversely, FIG. 11b shows the same histogram of one component of the magnetometer measurement values for a specific position. The curve of the normal distribution 1140 in FIG. 11b indicates that the magnetic field was accurately estimated by using the robust procedure of Equation (30). Incorrect measurement values were substantially ignored, and both the magnetic field and its standard deviation were accurate, resulting in a more accurate update of the magnetic map 140.

[0121] Furthermore, the remaining figures show the update of the magnetic map for different use cases using the examples described above. In FIG. 12, GNSS measurement values are available throughout the platform's route from a) to c), and cross-sections of one component of the magnetic field for an increasing number of processed data sets, specifically, for n = 10, 20, and 30 data sets respectively, of two magnetic anomalies (corresponding to 725 and 726 in FIG. 7) are shown. The dashed line in FIG. 12 indicates the true magnetic field set for this example, and the solid line indicates the estimated value of the magnetic field according to the technology of the present disclosure. It can be seen that as the number of data sets increases, the estimated value of the magnetic field gradually approaches the true value and converges to the true value.

[0122] Next, FIG. 13 shows a 3D plot of the magnetic anomaly map for one component of the magnetic field after processing 30 data sets. It can be seen that the estimated map of magnetic anomalies in FIG. 13 is close to the true map shown in FIG. 7.

[0123] Further examples illustrate the possibility or proposed method of creating magnetic maps of areas where GNSS locations are unavailable, such as narrow urban canyons, tunnels, and underground parking lots. All such areas share the characteristic that the platform's orbit passes through areas where GNSS locations are partially available, but some other parts are obstructed by GNSS satellites. An example of such a situation would be if a car is being driven outdoors in areas where GNSS is available and then passes through a tunnel, or ends its orbit in an underground parking lot where GNSS is unavailable.

[0124] Another use case where such a situation may occur is when a pedestrian walking outdoors then enters an indoor area, such as a shopping mall. The overall optimization during determining a second set of platform attitudes using magnetic constraints that include all parts of the orbit allows incremental iterative dataset processing to estimate magnetic field values ​​in such areas where there is no GNSS location. Figure 14 shows the magnetic anomalies 721–728 in Figure 7 as contour lines. In this example, it is assumed that the signal from GNSS satellite 1410 can reach platform 1 (1420), but the GNSS signal is unreachable to platform 2 when platform 2 (1430) is traveling through tunnel 1440 where magnetic anomalies 725 and 726 are located. Thus, GNSS is available for the platform traveling through magnetic anomalies 721–724 preceding the occluded area 1440, and for magnetic anomalies 727 and 728 following the occluded area 1440 on the platform's route, this example illustrates a typical situation in an urban canyon or tunnel.

[0125] Next, Figure 15 shows the determination of a second set of locations for this example when GNSS locations are partially unavailable. In contrast to Figure 10, where GNSS data was always available, Figure 15 gives an example of determining a second set of locations when GNSS locations, indicated by the square, are unavailable on the upper horizontal side of the square orbit. Nevertheless, the magnetic constraints were determined appropriately, and the second set of locations was close enough to the true path to correctly update the magnetic map in the GNSS-hidden area.

[0126] Finally, Figure 16 shows cross-sections of one component of the magnetic map for these two magnetic anomalies (725 and 726) in the tunnel for an increasing number of processed datasets, specifically 10, 50, and 100 datasets, respectively, from a) to c). The dashed lines in Figure 16 represent the true magnetic field set for the simulation, and the solid lines represent the estimates of the magnetic map by the proposed solution. It can be seen that as the number of datasets increases, the estimates of the magnetic field approach the true values.

[0127] Further transformation forms 2.1 Corresponding to different magnetometer heights It is known that ambient magnetic fields depend not only on 2D position but also on height. Therefore, a magnetic fingerprint map should preferably represent the magnetic field at the same height as the magnetometer used to obtain magnetic field measurements for a given platform. This, therefore, may depend on the position of the magnetometer within the vehicle. Thus, it is beneficial to employ a magnetic fingerprint map with measurements at an appropriate height. For ground vehicles, the magnetic fingerprint map should be at the height at which the magnetometer is installed.

[0128] Accordingly, in some embodiments, motion sensor data may also include configuration parameters such as the installation height of the magnetometer from the ground, misalignment of the magnetometer axis with respect to the platform axis, and possibly other parameters. These configuration parameters can be determined (measured) while the device, such as the magnetometer, is being installed on the platform. Configuration parameters such as the installation height of the magnetometer can be transmitted to a server, for example, via an available wireless communication channel. Alternatively or additionally, a specific model of a vehicle with a known magnetometer height may be registered on the server so that the configuration parameters are previously stored and then used when subsequent datasets are acquired from that platform, and the platform may be identified, for example, by appropriate identification.

[0129] The magnetic map is created in layers, thereby creating several layers of a 2D magnetic fingerprint map, each layer featuring a different height from the ground according to the height of the magnetometer reported by the vehicle. This concept is illustrated in Figure 17 (the dimensions and installation locations of the magnetometers in this figure are illustrative and not limited to any specific implementation). Specifically, Figure 17a shows an example of a vehicle such as car 1710 equipped with a magnetometer 1730 installed at a height h1 from the ground, and Figure 17b shows an example of a bicycle 1720 equipped with a magnetometer 1740 installed at a height h2 from the ground. In this example, it can be seen that the height of the magnetometer on the car is higher than the height on the bicycle. Although only two vehicles are shown as an example in Figure 17, the same information can be sent to the server from multiple platforms within the area. When the server receives magnetometer measurements from platforms associated with specific heights of magnetometers, it groups the magnetometer measurements by the height of the magnetometer from the ground. Next, the server constructs the magnetic map for each group as a set of 2D layers, each layer featuring different heights from the ground according to the magnetometer height reported by the vehicle. Each layer is constructed separately using the procedure described above for the magnetometer measurements grouped for each particular height. Figure 17c shows an example of a two-layer magnetic map in the same NED frame as Figure 4a. The magnetic map in Figure 4a has only one layer 410, while the magnetic map in Figure 17c has two layers, the first layer 410-1 representing the magnetic field at height h1, which is the magnetometer height on the automobile 1710 shown in Figure 17a, and the second layer 410-2 representing the magnetic field at height h2, which is the magnetometer height on the bicycle 1720 shown in Figure 17b.

[0130] Furthermore, an additional optional embodiment involves interpolating interlayer magnetic map information to derive environmental magnetic field measurements at magnetometer height. As understood, this makes it possible to provide means for performing magnetic information-based vehicle positioning in a wider range of situations, as described in the jointly owned U.S. Patent No. 1,1536571 incorporated herein by reference.

[0131] 2.2 Different State Estimation Techniques In the above explanation, FGO was used to merge different data. Instead of FGO, other state estimation techniques, such as EKF or PF, can be used.

[0132] EKF is a known technique for integrating motion data and GNSS data, the latter of which may take the form of a PVT solution (loose integration) or raw GNSS measurements (tight integration). EKF is based on the linearization of motion and measurement models, and as soon as magnetic constraints (see paragraph 4.5) are linearizable, they can also be employed by EKF. To obtain smoother estimates, known methods such as forward-reverse recursion of EKF can also be used. PF does not require linearization and can be used similarly to EKF.

[0133] 2.3 Creating Other Maps In addition to the magnetic map which was the focus of the above disclosure, other maps can be created for wireless signals such as Wi-Fi, FM radio, and LTE. For this purpose, the platform or portable device may be equipped with a wireless receiver which can provide RSSI levels of different signal sources, such as Wi-Fi access points, which may be accompanied by timestamps. The creation of wireless maps, for example, Wi-Fi signal level maps, is done to associate RSSI measurements with a second set of positions of the vehicle's attitude determined by the proposed method.

[0134] Conceived Embodiment This disclosure describes the body frame with x being forward, y being positive toward the right side of the body, and the z axis being positive toward the downward. Any body frame definition is intended to be usable for the applications of the methods and apparatus described herein.

[0135] Magnetic information-based indoor vehicle positioning can be combined with other positioning technologies, depending on availability, for further improvements in positioning accuracy and reliability. The embodiments and technologies described above can be implemented in software as various interconnected functional blocks or separate software modules. However, this is not mandatory, and these functional blocks or modules may be equivalently aggregated into a single logical device, program, or operation with unclear boundaries. In any case, the functional blocks and software modules or interface features implementing the embodiments described above can be implemented either alone or in combination with other operations in either hardware or software, entirely within a device, or together with the device and in combination with other processor-enabled devices that communicate with devices such as servers.

[0136] The above disclosure details how a map of magnetic anomalies in an area can be crowdsourced using data from thousands of vehicles operating on overlapping routes within the area. The data may also be collected using portable devices such as smartphones transported by a platform including pedestrians and vehicles. The data provided by the portable devices may include, at a minimum, magnetometer measurements, GNSS measurements, and motion data measurements, and in some embodiments may include wireless data and other data.

[0137] The areas where magnetic fields are mapped may be entirely outdoor areas, such as urban areas, or partially outdoor and partially indoor areas, such as tunnels, parking lots, or shopping malls in the case of pedestrians. In these cases, it has been demonstrated that the magnetic maps become progressively more accurate as the number of datasets collected by portable devices increases.

[0138] Similarly, the present disclosure demonstrates how to reduce the impact of the ambiguity of magnetic field values and how to solve the problem of different heights of magnetometer installations on vehicles.

[0139] The present disclosure is supported by simulations for the sake of clearer explanation, but it will be clear that the simulation examples do not narrow the application fields of the proposed solutions. In particular, although some embodiments have been shown and described, those skilled in the art will understand that various changes and modifications can be made to these embodiments without changing or departing from their scope, intent, or function. The terms and expressions used in the foregoing specification are used herein as terms of explanation rather than limitation, and in the use of such terms and expressions, there is no intention to exclude equivalents of the features shown and described or portions thereof, and it is recognized that the present disclosure is defined and limited only by the following claims.

Description of Symbols

[0140] 110, 120 Vehicles 111, 121 Motion Sensors 112, 122 Global Navigation Satellite System (GNSS) Receivers 113, 123 Magnetometers 130 Switch 140 Magnetic Map 150 Server 210 Measured Magnetic Field Values, Received GNSS Data, and Motion Data 300 Outdoor Area 310 Contour Lines 321 Platform 1, Compact Car 322 Platform 2, Large Vehicle 323 Platform 3, Bicycle 330 Navigation Satellite 340 Building 350 Processor 360 Memory 370 Created Magnetic Map

Claims

1. A method for constructing a magnetic map of an area, wherein the area includes a plurality of locations, the magnetic map includes magnetic field values ​​for the locations, and the method is a) For each of the multiple platforms passing through at least a portion of the area, obtain magnetic field measurements from at least one magnetometer associated with each platform, available absolute navigation information, and motion sensor data from the sensor assembly associated with each platform. b) Using the absolute navigation information and motion sensor data, determine a first set of attitudes for each platform, c) Obtaining information from the magnetic map for any existing magnetic field values ​​for the first set of attitudes, d) Determining magnetic constraints on the attitude of the platform based at least in part on the acquired magnetic map information and the acquired magnetic field measurements, e) Determining a second set of attitudes for each platform, at least in part, based on the determined magnetic constraints, the acquired magnetic field measurements, the absolute navigation information, and the motion sensor data. f) Updating the magnetic field values ​​of the magnetic map based at least partially on the second set of attitudes of each platform, including, method.

2. The method according to claim 1, wherein the magnetic map further includes the covariance of the magnetic field values, and the method further includes updating the covariance of the magnetic field values ​​of the magnetic map based at least in part on the second set of attitudes of each platform.

3. The method according to claim 1, wherein determining the second set includes matching the acquired magnetic field measurements with the acquired magnetic map information using the determined magnetic constraints.

4. The method according to claim 3, wherein the matching includes employing a series of magnetic field measurements.

5. The method according to claim 1, wherein determining the second set includes taking the acquired magnetic field measurements and using the determined magnetic constraints to estimate the magnetic orientation for at least some of the orientations.

6. The method according to claim 5, wherein the estimation of the magnetic direction is also based on the acquired magnetic map information.

7. The method according to claim 1, wherein at least one of the first set of platform attitudes and the second set of platform attitudes is determined by densely integrating the absolute navigation information.

8. The method according to claim 1, wherein updating the magnetic field value of the magnetic map is performed recursively, at least in part, based on the relationship between the covariance of the acquired magnetic map information and the acquired magnetic field measurement value.

9. The method according to claim 1, wherein updating the magnetic field values ​​and covariance of the magnetic map is further based on estimated uncertainties associated with the magnetic field measurements by applying a robust estimation procedure.

10. The method according to claim 1, wherein absolute navigation information is unavailable for at least one attitude of at least one of the platforms.

11. The method according to claim 1, wherein the at least one magnetometer and the sensor assembly associated with at least one of the plurality of platforms are integrated into a portable device carried by the platform, and the method is operable when the portable device is confined within the platform and when the portable device is not confined within the platform.

12. The method according to claim 11, wherein the platform for carrying the portable device is at least one of pedestrians and vehicles.

13. The method according to claim 1, further comprising determining the height of at least one of the magnetometers on the platform and updating the magnetic map information, including the determined height.

14. The method according to claim 1, further comprising integrating measurements from at least one of additional data sources to determine at least one of the first set and the second set of attitudes of a platform, wherein at least one of the plurality of platforms further comprises at least one of a wireless receiver, a camera, a lidar, and a radar from which the measurements from the additional data sources are obtained.

15. The method according to claim 1, further comprising creating a map of wireless signals based on received wireless signals and at least partially on the second set of attitudes of each platform, wherein at least one of the plurality of platforms further comprises a wireless receiver.

16. The method according to claim 1, wherein the motion sensor data of at least one of the platforms includes information obtained from at least one of an odometry sensor, a velocity sensor, and a pressure sensor.

17. The method according to claim 1, wherein the motion sensor data of at least one of the platforms includes inertial motion sensor information.

18. The method according to claim 1, further comprising initializing the magnetic map at least partially using at least one of values ​​from a global geomagnetic model and the results of a previous mapping operation.

19. A system for constructing a magnetic map of an area, wherein the area includes a plurality of locations, the magnetic map includes magnetic field values ​​for the locations, and the system a) A plurality of platforms passing through at least a portion of the area, each platform configured to provide magnetic field measurements from at least one magnetometer associated with each platform, available absolute navigation information, and motion sensor data from a sensor assembly associated with each platform, b) At least one remote memory for storing the magnetic map, c) at least one remote processor, The at least one remote processor is provided i) Obtaining a determined first set of attitudes for each platform, wherein the first set is determined by employing the absolute navigation information and the motion sensor data. ii) Obtaining information from the magnetic map for any existing magnetic field values ​​for the first set of attitudes, iii) Determining magnetic constraints on the attitude of the platform based at least partially on the acquired magnetic map information and the acquired magnetic field measurements, iv) Obtaining a second set of attitudes for each platform, at least partially based on the determined magnetic constraints, the acquired magnetic field measurements, the absolute navigation information, and the motion sensor data, v) Updating the magnetic field values ​​of the magnetic map based at least in part on the second set of attitudes of each platform, It operates in such a way that it does the following: system.

20. The system according to claim 19, wherein at least one of the first set of attitudes, the second set of attitudes, and the magnetic constraints is determined by at least one of the platforms.

21. The system according to claim 19, wherein at least one of the first set of attitudes, the second set of attitudes, and the magnetic constraints is determined by the at least one remote processor.

22. The system according to claim 19, wherein at least one of the at least one remote processor and the at least one remote memory is further configured to build and store a map of wireless signals.

23. The system according to claim 19, wherein the at least one remote processor is further configured to acquire the height of at least one of the magnetometers on the platform, and updating the magnetic map information includes the acquired height.

24. The system according to claim 19, wherein the magnetic map further includes the covariance of the magnetic field values, and the at least one remote processor is further configured to update the covariance of the magnetic field values ​​of the magnetic map based at least in part on the second set of attitudes of each platform.

25. A non-temporary computer-readable storage medium storing instructions causing at least one processor to carry out a method for constructing a magnetic map of an area, wherein the area includes a plurality of locations, the magnetic map includes magnetic field values ​​for the locations, and the method is a) Obtaining a first set of determined attitudes of a plurality of platforms passing through at least a portion of the area, wherein each platform is configured to provide magnetic field measurements from at least one magnetometer associated with the platform, available absolute navigation information, and motion sensor data from a sensor assembly associated with the platform, and the first set of attitudes of the plurality of platforms is determined by employing the absolute navigation information and the motion sensor data, b) Obtaining information from the magnetic map for any existing magnetic field values ​​for the first set of attitudes, c) Determining magnetic constraints on the attitude of the platform based at least partially on the acquired magnetic map information and the acquired magnetic field measurements, d) Obtaining a second set of attitudes for each platform, at least partially based on the determined magnetic constraints, the acquired magnetic field measurements, the absolute navigation information, and the motion sensor data, e) Updating the magnetic field values ​​of the magnetic map based at least partially on the second set of attitudes of each platform, including, Non-temporary computer-readable storage medium.

26. The non-temporary computer-readable storage medium according to claim 25, wherein the magnetic map further includes the covariance of the magnetic field values, and the method performed by the at least one processor further includes updating the covariance of the magnetic field values ​​of the magnetic map based at least in part on the second set of attitudes of each platform.