Inertial localization and mapping system

WO2026222451A1PCT designated stage Publication Date: 2026-10-22NORTHWESTERN UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/US2026/024265
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2025-04-17
Filing Date
2026-04-17
Publication Date
2026-10-22

Smart Images

  • Figure US2026024265_22102026_PF_FP_ABST
    Figure US2026024265_22102026_PF_FP_ABST
Patent Text Reader

Abstract

An inertial localization and mapping (ILM) system simultaneously builds environmental maps and performs localization using human motion data from wearable IMU sensors without any visual input. The ILM system processes daily human movements and interactions that encode rich information about environmental geometry to both correct IMU drift and construct semantic scene maps from passive sensing alone. The ILM system uses a hierarchical trajectory fusion approach that enables mapping from both single and multiple users' trajectories by identifying and merging overlapping path segments. Further, a temporal refinement system is used to iteratively improve map quality by aggregating motion patterns over time from both single and multi-user data. Additionally, a joint optimization framework leverages progressively detected environmental constraints to simultaneously refine both human trajectories and the evolving map. The ILM system scales from single rooms to entire buildings and outdoor spaces, while requiring no infrastructure or active sensing.
Need to check novelty before this filing date? Find Prior Art

Description

INERTIAL LOCALIZATION AND MAPPING SYSTEM RELATED APPLICATIONS

[0001] This application claims priority to Patent Application No. 63 / 790,552 entitled “Inertial Localization and Mapping System” filed April 17, 2025, which is incorporated by reference in its entirety.BACKGROUND

[0002] Traditional localization and mapping systems rely heavily on visual sensors and active sensing techniques like cameras, LiDAR, or depth sensors. However, these approaches raise privacy concerns, consume significant power, and require active user engagement.

[0003] Visual SLAM approaches have demonstrated impressive results but require power- hungry cameras and also raise privacy concerns. Recent works have explored alternative sensing modalities, particularly for localization in global positioning system (GPS)-denied environments.

[0004] Inertial measurement units (IMUs) present an attractive alternative for motion tracking due to their low power consumption and ubiquitous presence in consumer devices. However, traditional IMU-based tracking faces fundamental limitations - sensor noise accumulates through integration, leading to significant drift over time. Recent advances in data-driven approaches have shown promising results in reducing this drift. RoNIN [1], TLIO [2] and MobilePoser [6] introduced a learning-based framework that achieves remarkably low drift by directly regressing velocities from IMU data.

[0005] A parallel line of research has explored mapping from minimal sensing. The recent Walk2Map [3] system showed that human trajectories contain implicit information about room geometry, enabling basic floor plan reconstruction. However, it focuses solely on single-room scenarios and not on joint optimization of localization and mapping. Furthermore, it assumes walk trajectories as a prior, and not inferred from IMUs which have inherently different noise characteristics.

[0006] In the context of visual mapping, researchers have long recognized the value ofcollaboratively building and refining maps from multiple users' data. Systems like Google's Visual Positioning Service [4] aggregate visual observations across users to create and maintain accurate urban-scale maps. However, equivalent techniques for IMU-only mapping remain unexplored.

[0007] SLAM systems have demonstrated the power of jointly optimizing sensor poses and environmental structure [5]. Classical approaches like bundle adjustment in visual SLAM show how mutual constraints between camera motion and 3D structure can improve both localization and mapping accuracy. However, existing IMU-based approaches only consider translation and localization but not mapping.SUMMARY

[0008] The following presents a simplified summary in order to provide a basic understanding of some aspects of the disclosure. The summary is not an extensive overview of the disclosure. It is neither intended to identify key or critical elements of the disclosure nor to delineate the scope of the disclosure. The following summary presents some concepts of the disclosure in a simplified form as a prelude to the description below.

[0009] An inertial localization and mapping (ILM) system simultaneously builds environmental maps and performs localization using human motion data from wearable IMU sensors without any visual input. The ILM system processes daily human movements and interactions that encode rich information about environmental geometry to both correct IMU drift and construct semantic scene maps from passive sensing alone. The ILM system is the first approach to estimate environmental maps just from inertial localizations. ILM introduces several key innovations: First, a hierarchical trajectory fusion approach that enables mapping from both single and multiple users' trajectories by identifying and merging overlapping path segments. Second, a temporal refinement system that iteratively improves map quality by aggregating motion patterns over time from both single and multi-user data. Third, a joint optimization framework that leverages progressively detected environmental constraints to simultaneously refine both human trajectories and the evolving map. Similar to how visual SLAM systems concurrently optimize camera poses and environmental structure, ILM demonstrates that inertial data alone can enableconcurrent refinement of human trajectories and semantic map reconstruction. This approach scales from single rooms to entire buildings and outdoor spaces, while requiring no infrastructure or active sensing. Preliminary results demonstrate over 80% accuracy in detecting indoor structural elements (walls, doors, tables, chairs) while our multi-trajectory fusion enables increasingly accurate mapping without requiring visual sensors.

[0010] These features, along with many others, are discussed in greater detail below.BRIEF DESCRIPTION OF THE DRAWINGS

[0011] The present disclosure is described by way of example and not limited in the accompanying figures in which like reference numerals indicate similar elements and in which:

[0012] FIG. 1 shows an illustrative block diagram of a hierarchical motion-based inertial localization system according to one or more aspects of the disclosure; and

[0013] FIG. 2 shows an illustrative block diagram of a processor platform implementing at least a portion of the hierarchical motion-based inertial localization system, according to aspects of the present disclosure.DETAILED DESCRIPTION

[0014] In the following description of various illustrative embodiments, reference is made to the accompanying drawings, which fomi a part hereof, and in which is shown, by way of illustration, various embodiments in which aspects of the disclosure may be practiced. It is to be understood that other embodiments may be utilized, and structural and functional modifications may be made, without departing from the scope of the present disclosure.

[0015] It is noted that various connections between elements are discussed in the following description. It is noted that these connections are general and, unless specified otherwise, may be direct or indirect, wired or wireless, and that the specification is not intended to be limiting in this respect.

[0016] As used throughout this disclosure, computer-executable “software and data” caninclude one or more: algorithms, applications, application program interfaces (APIs), attachments, big data, daemons, emails, encryptions, databases, datasets, drivers, data structures, file systems or distributed file systems, firmware, graphical user interfaces, images, instructions, machine learning (e.g., supervised, semisupervised, reinforcement, and unsupervised), middleware, modules, objects, operating systems, processes, protocols, programs, scripts, tools, and utilities. The computer-executable software and data is on tangible, computer-readable memory (local, in network-attached storage, or remote), can be stored in volatile or nonvolatile memory, and can operate autonomously, on-demand, on a schedule, and / or spontaneously.

[0017] “Computer machines” can include one or more: general-purpose or specialpurpose network-accessible administrative computers, clusters, computing devices, computing platforms, desktop computers, distributed systems, enterprise computers, laptop or notebook computers, primary node computers, nodes, personal computers, portable electronic devices, servers, node computers, smart devices, tablets, and / or workstations, which have one or more microprocessors or executors for executing or accessing the computer-executable software and data. References to computer machines and names of devices within this definition are used interchangeably in this specification and are not considered limiting or exclusive to only a specific type of device. Instead, references in this disclosure to computer machines and the like are to be interpreted broadly as understood by skilled artisans. Further, as used in this specification, computer machines also include all hardware and components typically contained therein such as, for example, processors, executors, cores, volatile and non-volatile memories, communication interfaces, etc.

[0018] Computer “networks” can include one or more local area networks (LANs), wide area networks (WANs), the Internet, wireless networks, digital subscriber line (DSL) networks, frame relay networks, asynchronous transfer mode (ATM) networks, virtual private networks (VPN), or any combination of the same. Networks also include associated “network equipment” such as access points, ethemet adaptors (physical and wireless), firewalls, hubs, modems, routers, and / or switches located inside the network and / or on its periphery, and software executing on the foregoing.

[0019] The above-described examples and arrangements are merely some examples ofarrangements in which the systems described herein may be used. Various other arrangements employing aspects described herein may be used without departing from the innovative concepts described.

[0020] FIG. 1 shows an illustrative image of a hierarchical motion-based inertial localization and mapping system 100 according to one or more aspects of the disclosure as described below. The Human motion patterns encoded in IMU data carry rich information about environmental geometry and semantics that can be leveraged for concurrent localization and mapping without any visual sensing.

[0021] The inertial localization and mapping (1LM) system 100 may comprise an input processing engine 102 that may be communicatively coupled to one or more user devices 105 that are associated with one or more users to receive signals associated with movements of one or more users within an environment. The ILM system may also be communicatively coupled to at least one motion localization consuming device 190 that consumes an environmental map generated by the ILM system based on the motion information received from the user devices 105. Additionally, the ILM system 100 may include an input processing engine 110, an inertial localization engine 120, a motion pattern recognition module 130, a multi-trajectory fusion module 140, an environmental constraint recognition module 150, a map modeling engine 160, a geolocation module 170, and a map generation engine 180, and / or the like,

[0022] The ILM system 100 can construct environmental maps solely from human motion trajectories obtained without data from a visual sensor, while simultaneously improving localization accuracy. At its core, the ILM system 100 operates at multiple temporal and spatial scales. For single trajectories, the ILM system 100 employs a hierarchical understanding of interior motion localization to infer environmental constraints. Recent work demonstrates consumer IMUs can resolve full-body pose and global translation [6], The ILM system 100 builds upon this by recognizing that pose transitions and motion patterns (like turning corners, entering doorways, or avoiding obstacles) encode rich information about environmental geometry.

[0023] Beyond single trajectories, the ILM system 100 introduces a novel multi-trajectoryfusion approach. While individual IMU trajectories may have significant drift and arbitrary starting positions, the ILM system 100 identifies and aligns overlapping path segments across users through a robust optimization framework. This allows construction of increasingly accurate maps as more trajectory data becomes available. Further, the ILM system 100 leverages temporal persistence - the fact that environmental structures remain largely static while human motions vary - to progressively refine maps by aggregating consistent patterns corresponding to multiple users’ movements through and interaction with spaces over time.

[0024] The ILM system includes a joint optimization framework, e.g., the input processing engine 110, the inertial localization engine 120, the motion pattern recognition module 130, the multi -trajectory fusion module 140, the environmental constraint recognition module 150, the map modeling engine 160, the geolocation module 170, and the map generation engine 180, and the like, that concurrently refines both inertial localization trajectories and maps. Similar to how visual SLAM systems optimize camera poses and 3D structure together, the ILM system introduces mutual constraints between human motion and environmental geometry. Detected environmental features provide constraints for trajectory correction, while refined trajectories enable better feature detection. In doing so, the ILM system includes a positive feedback loop that improves both localization and mapping accuracy over time.

[0025] The ILM system 100 is inherently scalable, working effectively across different spatial scales - from single rooms, to floors, to entire buildings, and even to outdoor spaces. The ILM system 100 can start with sparse, single-user data and progressively incorporate additional trajectories to build increasingly detailed and accurate maps. By operating purely from IMU data, the ILM system 100 enables ambient mapping without any requirements for infrastructure information and / or active user engagement, while still preserving privacy because no visual data is captured.

[0026] The ILM system 100 demonstrates that rich environmental understanding is possible without visual sensing, unlocking new possibilities for passive privacy-preserving mapping at scale. The ILM system’s ability to improve both localization and mapping accuracy through joint optimization, while being able to operate acrossdifferent spatial and temporal scales, represents a fundamental advancement in infrastructure-free environmental mapping.

[0027] The ILM system 100 bridges the previous diverse threads of research, showing that accurate environmental mapping is possible from human motion alone through careful fusion of multiple trajectories (current trajectories, historical trajectories, real-time trajectories, and the like) and joint optimization of trajectories and maps. This enables a new paradigm of ambient mapping that preserves privacy while scaling from individual rooms to entire buildings to extended geographical areas.Overview

[0028] The ILM system 100 augments existing inertial localization systems with a novel mapping framework. The inputs to the ILM system 100, such as IMU signals received from the user devices 105 and processed by the input processing engine 110, are trajectory and / or localization data (e.g., 3-Dimensional (3D) series) obtained from transformer-based inertial localization system (e.g., the inertial localization engine 120) that processes IMU measurements A = { Aa, Ag] G p'2l)xl>,where AaG R(DxT)and AgG R",xl )represent acceleration and angular velocity respectively, recorded over D = 3 channels for T timesteps. For variable device configurations, measurements are concatenated into A G R,2l)xXx 12where N is the number of active devices associated with a user (e.g., a mobile phone, a smart watch, alternate reality (AR) headsets, earbuds or other headphones, etc.), the user devices 105.

[0029] The multi-trajectory fusion module 140 operates on a learnt graph neural network structure G = (V,E) where vertices V represent trajectory segments and edges E encode potential correspondences between segments. For each trajectory segment, the ILM system, such as by the motion pattern recognition module 130, computes a local descriptor that captures motion patterns and environmental interactions within the segment duration. Potential correspondences between segments are identified using a learned similarity metric that considers both geometric and semantic compatibility, such as by the environmental constraint recognition module 150. The ILM system 100, such as via the map modeling engine 160, the geolocation module 170, and / or the map generation engine 180, maintains a globally consistent map representation that operates across inertially inferred trajectories. The map is progressively refined through a weighted consensus mechanism that favors consistentobservations across multiple users and identifies persistent patterns in human motion that indicate environmental features.

[0030] The map structure is modeled, by the map modeling engine 160, using a representation that captures both local geometric constraints (walls, doors, corridors) and global topological relationships that may be identified by the environmental constraint recognition module 150. The joint optimization framework minimizes an objective function that combines motion consistency terms, map structure priors, and mutual constraints between trajectories and map elements. The motion consistency term penalizes deviations from the raw IMU inferred localization trajectories while allowing for drift correction. The map structure term enforces priors on environmental layout such as parallel walls and right angles. The mutual constraint term ensures that corrected trajectories respect environmental constraints (e.g., not passing through walls) while environmental features align with consistent motion patterns (e.g., doorways coinciding with trajectory transitions). The ILM system 100 optimizes the complete objective using alternating minimization, iteratively refining inertial localization estimates and map structure. This joint optimization enables the system to leverage the complementary strengths of motion understanding and environmental constraints, producing increasingly accurate reconstructions as more data becomes available. The ILM system 100 explicitly models uncertainties in both trajectory estimates and map features, allowing the ILM system 100 to appropriately apply weights to different sources of information during optimization.

[0031] The inertial localization and mapping (ILM) system may simultaneously build environmental maps and perform localization using human motion data from wearable inertial measurement unit (IMU) sensors without any visual input. The ILM system 100, such as by the geolocation module 170, may process daily human movements and interactions that encode information about environmental geometry to both correct IMU drift and construct semantic scene maps from passive sensing alone. In some cases, the ILM system receives IMU signals from a plurality of user devices associated with a user, where each user device may be located adjacent a different portion of the user's body. The ILM system may generate, via the inertial localization engine 120, a trajectory corresponding to movements of the user within an environment based on the received IMU signals.

[0032] The ILM system may detect, based on one or more motion patterns identified within the trajectory, one or more environmental features and generate a map of the environment based on the trajectory and the detected environmental features. The environmental features may include obstacles within the environment (such as fixed obstacles or movable obstacles), portals within the environment (such as doors or corridors), windows, and objects of interest. The ILM system may iteratively refine both the trajectory and the map through a joint optimization framework, where detected environmental features provide constraints for correcting the trajectory and the refined trajectory enables detection of additional environmental features. In some cases, the joint optimization framework uses alternating minimization, where a first minimization step refines the trajectory based on detected environmental constraints and a second minimization step refines the map based on the refined trajectory.

[0033] The ILM system may receive IMU signals from the plurality of user devices associated with the user. Each user device of the plurality of user devices may be positioned at a different location on the user's body. For example, the user devices may include one or more of a mobile phone, a smart watch, an audio device such as earbuds or headphones, and an augmented reality (AR) headset, and / or the like. Each user device may include an IMU that senses motion of the user device in relation to the user and may generate acceleration data and / or angular velocity data corresponding to movements of the user. As discussed above, the acceleration data may be represented as AaG lKDx7’and the angular velocity data may be represented as AgG IKDXT, where D represents measurement channels and T represents a number of timesteps. In an illustrative example, when D may be three, which corresponds to three-dimensional spatial measurements along orthogonal axes. In some cases, the IMU signals may be communicated via a local network connection, such as a wireless connection such as Bluetooth, Wi-Fi, or another short-range communication protocol. In some cases, the IMU signals may be transmitted from each user device to a different computing device that processes the IMU signals.

[0034] The ILM system may concatenate the IMU signals from the plurality of user devices into a multi-device input representation associated with a particular user. The multidevice input representation may comprise the tensor discussed above.The factor oftwo-dimensional (2D) accounts for both acceleration data and angular velocity data from each user device.

[0035] The ILM system may determine whether one or more wearable devices of the user are unavailable. For example, the wearable device may be unavailable because it is not worn by the user, when the wearable device is powered off, when the wearable device is out of communication range, and / or when the wearable device experiences a malfunction. The ILM system may detect device unavailability based on absence of received signals, signal quality metrics, and / or explicit status indicators from the wearable devices. When one or more wearable devices are determined to be unavailable, the ILM system may mask input values corresponding to the particular unavailable wearable devices with predetermined values in the multi-device input representation. In some cases, the predetermined values are zero values. This masking operation allows the ILM system to process variable device configurations without requiring all devices to always be present and / or operational.

[0036] The multi-device input representation, including any masked input values corresponding to unavailable devices, may be provided to an inertial localization engine for processing. The inertial localization engine may be a transformer-based inertial localization engine that processes the multi-device input representation to generate a trajectory of the associated user corresponding to movements of the user within an environment. The trajectory may comprise a three-dimensional position series of the user over time. The inertial localization engine may process the concatenated IMU signals to resolve full-body pose and global translation of the user. By receiving IMU signals from multiple user devices positioned at different locations on the user's body, the inertial localization engine can capture a more complete representation of the user's movements particularly when compared to single-device configurations. This multi-device input representation enables the ILM system to leverage complementary motion information from different body locations to generate more accurate positioning information.

[0037] In some cases, the ILM system receives IMU signals from a first set of user devices associated with a first user and a second set of user devices associated with a second user. The ILM system may generate a first trajectory based on the first set of IMU signals and a second trajectory based on the second set of IMU signals. The first trajectory and the second trajectory may have independent coordinate origins, and theILM system may align the trajectories based on identified correspondences between trajectory segments.

[0038] In some cases, the transformer-based inertial localization engine may generate a trajectory corresponding to movements of a user within an environment based on IMU signals received from a plurality of user devices, where the trajectory includes a three-dimensional position series of the user over time. By receiving IMU signals from multiple user devices positioned at different locations on the user's body, the transformer-based inertial localization engine may capture a more complete representation of the user's movements compared to single-device configurations. The multi-device input representation enables the ILM system to leverage complementary motion information from different body locations to resolve full-body pose and global translation.

[0039] In some cases, the ILM system may receive trajectory data generated from inertial measurement unit (IMU) signals of one or more wearable devices associated with a user. The trajectory data may comprise a series of positions corresponding to movements of the user within an environment, such as a three-dimensional position series of the user over time. The ILM system may segment the trajectory data into a plurality of trajectory segments. Each trajectory segment may represent a portion of the user's movement through the environment over a defined time interval or spatial extent. The segmentation may be performed based on temporal boundaries, spatial characteristics, and / or detected changes in motion patterns within the trajectory data.

[0040] For each trajectory segment, the ILM system may analyze one or more motion pattern transitions within the segment, such as one or more of turning a corner, entering a doorway, traversing a corridor, avoiding an obstacle, and the like. In some cases, the motion pattern transitions include changes in velocity, direction, or body pose that indicate interaction with environmental structures. Based on the one or more motion pattern transitions, the ILM system may generate a local descriptor for each trajectory segment of the plurality of trajectory segments. The local descriptor may capture motion patterns and environmental interactions within the segment duration. In some cases, the local descriptor may correspond to an environmental feature of the environment.

[0041] For example, turning a comer may be detected as a motion pattern transition when the trajectory data indicates a change in heading direction exceeding a threshold angleover a defined distance or time period. Additionally, the angular change may be accompanied by a reduction in velocity as the user navigates the comer. In some cases, the ILM system analyzes angular velocity data from the IMU signals to identify movement events (e.g., the comer-turning events). Similarly, entering a doorway may be detected as a motion pattern transition when the trajectory data indicates a nanowing of the user's path followed by a change in spatial context. The doorway entry may be characterized by a brief deceleration, a constrained lateral movement, and a subsequent change in the user's heading or environment. In some cases, the ILM system identifies doorway entries based on pose transitions captured in the IMU signals. Traversing a corridor may be detected as a motion pattern transition when the trajectory data indicates sustained linear movement with constrained lateral deviation. The corridor traversal may be characterized by consistent heading direction and velocity over an extended distance. In some cases, the ILM system identifies corridor traversal based on the absence of significant heading changes over multiple consecutive trajectory segments. In some cases, the extended traversal may be accompanied by spatial information indicating a narrow bound area in direction perpendicular to the traversal direction. Avoiding an obstacle may be detected as a motion pattern transition when the trajectory data indicates a deviation from an otherwise linear path followed by a return to the original heading. The obstacle avoidance may be characterized by lateral movement, changes in velocity, or body pose adjustments that indicate navigation around an object. In some cases, the obstacle is a fixed obstacle such as furniture or a structural element. In some cases, the obstacle is a movable obstacle such as a temporary object or another person.

[0042] The environmental feature may comprise a portal within the environment, such as an opening to a passage accessible to the user within the environment. The passage may comprise one of a door or a corridor. In some cases, the environmental feature may be a window. In some cases, the environmental feature comprises an object of interest within the environment (e.g., artwork on a wall, a video display, and / or other object inviting user interaction).

[0043] In some cases, a local descriptor may encode geometric information derived from the motion pattern transitions, including heading changes, path curvature, and spatial extent of the trajectory segment. The local descriptor may encode semantic information derived from the motion pattern transitions, including the type of environmental interaction detected and the confidence level of the detection. Basedon the local descriptors, the ILM system may infer a geometry of the environment without input from a visual sensor. The geometry may include the locations and orientations of walls, doors, corridors, and obstacles within the environment. The inference may be performed by aggregating local descriptors across multiple trajectory segments and identifying consistent patterns that indicate persistent environmental structures.

[0044] The plurality of trajectory segments may be represented as vertices in a graph structure. Potential correspondences between segments may be encoded as edges in the graph structure. In some cases, the graph structure comprises a learned graph neural network, where the graph neural network may process the local descriptors associated with each vertex to identify relationships between trajectory segments from different trajectories of the same user and / or from different users.

[0045] The ILM system may identify correspondences between trajectory segments using a learned similarity metric. The similarity metric may consider both geometric compatibility and semantic compatibility of the trajectory segments. Geometric compatibility may be determined based on the spatial relationships between trajectory segments, including relative positions and orientations. Semantic compatibility may be determined based on the types of environmental features detected in each trajectory segment and the consistency of the detected features across segments.

[0046] The ILM system may generate, via a map modeling engine, a map of the environment based on trajectory data and detected environmental features. The map modeling engine may receive trajectory data corresponding to movements of one or more users within an environment. The map modeling engine may process the trajectory data along with environmental features detected from motion patterns to construct a representation of the environment,

[0047] The map structure may be modeled using a representation that captures both local geometric constraints and global topological relationships. Local geometric constraints may include walls, doors, and corridors detected within the environment. Global topological relationships may describe how different regions of the environment connect to one another and the spatial arrangement of environmental features relative to each other. In some cases, the map modeling engine may enforce map structure priors on environmental layout, such as parallel walls, perpendicularwalls, and right-angle intersections. Enforcing parallel wall priors may cause the map modeling engine to align detected wall segments that exhibit parallel orientation within a threshold tolerance. Enforcing perpendicular wall priors may cause the map modeling engine to adjust wall segments that meet at angles close to ninety degrees (e.g., within a predetermined threshold such as within five degrees) to conform to right-angle intersections.

[0048] In some cases, the map modeling engine may generate the map, at least in part, based on environmental features comprising obstacles (e.g., fixed, movable, transitory, etc.) within the environment. Fixed obstacles may include furniture, structural columns, or other permanent fixtures while movable obstacles may include chairs, tables, or other objects that may change position over time.

[0049] The map modeling engine may generate the map, at least in part, based on environmental features such as portals within the environment. As mentioned, the portal may be an opening to a passage accessible to a user within the environment, such as a door or a corridor. In some cases, the map modeling engine may detect portals based on motion pattern transitions within trajectory segments, such as entering a doorway or traversing a corridor.

[0050] In some cases, the map modeling engine may generate the map, at least in part, based on environmental features such as windows. Windows may be detected based on motion patterns indicating user interaction with or proximity to window locations. The map modeling engine may also generate the map based on environmental features comprising objects of interest within the environment. Such features may be detected based on motion stopping and / or orientation changes at certain locations.

[0051] In some cases, the map modeling engine may maintain a globally consistent map representation that operates across multiple inertially inferred trajectories. The map may be progressively and / or iteratively refined through a weighted consensus mechanism that favors consistent observations across multiple users. The weighted consensus mechanism may assign greater weight to observations that are consistent across multiple time periods or multiple users.

[0052] In some cases, the map modeling engine may distinguish static environmental features from dynamic elements within the environment based on variability of motionpatterns across multiple time periods. Static environmental features may comprise walls, doors, corridors, and fixed obstacles. Dynamic elements may comprise movable obstacles and transient objects (e.g., other users, animals, and the like). The map modeling engine may classify identified persistent motion patterns as corresponding to static environmental features based on temporal consistency of the motion patterns.

[0053] The map modeling engine may progressively and / or iteratively refine the environmental map by aggregating static environmental features through the weighted consensus mechanism. As more trajectory data becomes available from single or multiple users, the map modeling engine may incorporate additional observations to build increasingly detailed and accurate maps. The map modeling engine may operate across different spatial scales, from single rooms to floors to entire buildings and outdoor spaces.

[0054] The ILM system may include a joint optimization framework that concurrently refines both inertial localization trajectories and environmental maps by leveraging progressively detected environmental constraints to simultaneously refine human trajectories and the evolving map. In some cases, the joint optimization framework operates by establishing mutual constraints between human motion and environmental geometry, where detected environmental features provide constraints for trajectory correction, where the refined trajectories enable better feature detection.

[0055] The joint optimization framework may jointly optimize a trajectory and a map via an alternating minimization technique. In some cases, the alternating minimization technique may include applying environmental constraints derived from one or more environmental features to refine the trajectory and detecting additional environmental features based on the refined trajectory to update the map. This iterative refinement may alternate between a first minimization step to refine the trajectory based on detected environmental constraints and a second minimization step to refine the map based on the refined trajectory.

[0056] The joint optimization framework may operate by minimizing an objective function that combines motion consistency terms, map structure terms, and mutual constraint terms. In some cases, the objective function may be expressed as a weightedcombination of these terms, where each term contributes to the overall optimization goal. In some cases, the ILM system optimizes the complete objective using alternating minimization, iteratively refining inertial localization estimates and map structure.

[0057] In some cases, the motion consistency terms may penalize deviations from raw IMU- inferred localization trajectories while allowing for drift correction. The motion consistency terms constrain the corrected trajectory to remain close to the original IMU-derived trajectory while permitting adjustments that reduce accumulated drift errors. Further, the motion consistency terms may balance fidelity to the original sensor measurements against the need to correct for systematic errors inherent in IMU-based localization.

[0058] In some cases, the map structure terms may enforce priors on environmental layout, where the priors include parallel walls, perpendicular walls, and right-angle intersections. The map structure terms may encourage the generated map to conform to common architectural patterns found in indoor environments. As such, the map structure may be modeled using a representation that captures both local geometric constraints and global topological relationships.

[0059] In some cases, the mutual constraint terms may ensure that corrected trajectories respect environmental constraints while environmental features align with consistent motion patterns. For example, the mutual constraint terms ensure that corrected trajectories do not pass through detected environmental structures such as walls. The mutual constraint terms may further ensure that environmental features, such as doorways, coincide with trajectory transitions. In doing so, the mutual constraint terms may establish bidirectional consistency between the trajectory and the map.

[0060] In some cases, the joint optimization framework may model uncertainties in both trajectory estimates and detected environmental features. For example, the ILM system weights sources of information during optimization based on the modeled uncertainties. Some uncertainties may be modeled for the trajectory, and other uncertainties may be modeled for detected environmental features. Applying weights to sources of information during optimization may be based on these modeled uncertainties. This uncertainty modeling may allow the ILM system to appropriatelyapply weights to different sources of information during optimization.

[0061] The joint optimization framework may enable a positive feedback loop that improves both localization and mapping accuracy over time. In some cases, as more trajectory data becomes available, the joint optimization produces increasingly accurate reconstructions of the environment within the map. In some cases, the joint optimization framework may leverage the complementary strengths of motion understanding and environmental constraints to concurrently refine both the trajectory and the map.

[0062] Environmental constraints derived from environmental features may include constraints based on obstacles, portals, windows, and objects of interest within the environment. These environmental constraints may be used to prevent the corrected trajectory from passing through walls or other solid structures, while allowing passage through doorways and corridor openings.

[0063] The joint optimization framework may operate across different spatial scales, such as operating effectively from single rooms to floors to entire buildings and outdoor spaces. The joint optimization framework may start with sparse, single-user data and progressively incorporate additional trajectories to build increasingly detailed and accurate maps through the iterative refinement process.

[0064] The ILM system may explicitly model uncertainties for both trajectory estimates and detected environmental features. In some cases, the ILM system assigns uncertainty values to each position estimate within a trajectory based on factors, such as IMU sensor noise characteristics, integration drift accumulation over time, confidence levels from the inertial localization engine, and the like. The ILM system may also assign uncertainty values to detected environmental features based on the consistency and strength of motion pattern evidence supporting each detected feature.

[0065] In some cases, trajectory uncertainty modeling is used to account for the inherent noise characteristics of IMU sensors. For example, acceleration data and angular velocity data from wearable devices may contain measurement errors that propagate through integration operations used to derive position estimates. The ILM system may model some uncertainties in trajectory estimates as a function of elapsed time since a known reference point, sensor quality metrics, and the number of activewearable devices contributing to the trajectory generation.

[0066] The ILM system may model other uncertainties in detected environmental features based on the number of trajectory segments that provide evidence for a given feature, the consistency of motion patterns across different users and time periods, the geometric clarity of the detected feature, and the like. Environmental features detected from multiple independent trajectory segments may receive lower uncertainty values than features detected from a single trajectory segment.

[0067] During joint optimization processing, the ILM system may apply weights to sources of information based on the modeled first uncertainties and the modeled second uncertainties. In some cases, trajectory corrections derived from high-confidence environmental features may receive greater weight than corrections derived from low- confidence features. Similarly, environmental feature updates derived from low- uncertainty trajectory segments may receive greater weight than updates derived from high-uncertainty segments.

[0068] In some cases, the weighted consensus mechanism may incorporate uncertainty values when aggregating observations across multiple users and multiple time periods. For example, observations with lower associated uncertainty values may receive greater weight in the consensus calculation. The ILM system may update uncertainty values iteratively while the joint optimization progresses, where decreasing uncertainty values are seen as consistent evidence accumulates from multiple sources.

[0069] In some cases, the ILM system may represent uncertainty using covariance matrices associated with trajectory position estimates and / or environmental feature parameters. The alternating minimization process may propagate uncertainty information between trajectory refinement steps and map refinement steps. A motion consistency term in the objective function may incorporate trajectory uncertainty values to appropriately penalize deviations from raw IMU -inferred trajectories based on the confidence level of each position estimate. A mutual constraint term may incorporate both trajectory uncertainties and environmental feature uncertainties when enforcing constraints between corrected trajectories and detected environmental structures. In some cases, the ILM system may relax constraints when either the trajectory estimate or theenvironmental feature has high associated uncertainty and may enforce constraints more strictly when both sources have low uncertainty values. The uncertainty- weighted optimization enables the ILM system to appropriately balance different sources of information and produce increasingly accurate reconstructions as more data becomes available, and uncertainty values decrease through iterative refinement.

[0070] In some cases, the ILM system may receive trajectories from multiple users, where each trajectory (or user) has an independent coordinate origin. A first trajectory may correspond to movements of a first user within an environment, where the first trajectory is generated from first IMU signals received from one or more first user devices associated with the first user. A second trajectory may correspond to movements of a second user within the environment, where the second trajectory is generated from second IMU signals from one or more second user devices associated with the second user. The first trajectory and the second trajectory may have independent coordinate origins, meaning that each trajectory begins from an arbitrary starting position without a shared reference frame.

[0071] A multi -trajectory fusion module of the ILM system may process a plurality of trajectories associated with a plurality of users such as via a graph neural network structure comprising vertices representing trajectory segments and edges encoding potential correspondences between segments. In some cases, the graph neural network structure comprises a learned graph neural network where the plurality of first segments and the plurality of second segments may be represented as vertices in the graph structure, and potential correspondences between segments may be encoded as edges.

[0072] The ILM system may segment trajectory data into a plurality of trajectory segments.For each trajectory segment, the ILM system may analyze one or more motion pattern transitions within the segment. Motion pattern transitions may comprise one or more of turning a comer, entering a doorway, traversing a corridor, and avoiding an obstacle. The ILM system may compute, for each segment of the first trajectory and each segment of the second trajectory, a local descriptor capturing motion patterns within an analyzed segment. The local descriptor may correspond to an environmental feature of the environment and / or may capture motion patterns and environmental interactions within the segment duration.

[0073] The ILM system may identify correspondences between trajectory segments using a learned similarity metric that considers both geometric compatibility and semantic compatibility. The similarity metric may consider both geometric compatibility and semantic compatibility of the first segments and the second segments. Geometric compatibility may relate to spatial relationships between trajectory segments, while semantic compatibility may relate to similar motion patterns or environmental interactions encoded within the segments.

[0074] In some cases, based on the local descriptor associated with each of the plurality of first segments and the plurality of second segments, the ILM system may identify one or more correspondences between the segments of the first trajectory and the segments of the second trajectory using the similarity metric. The ILM system may then align the first trajectory and the second trajectory based on the identified correspondences.

[0075] In some cases, the ILM system may generate a fused environmental map based on the aligned first trajectory and second trajectory. The ILM system may further maintain a globally consistent map representation that operates across inertially inferred trajectories. The map may be progressively refined through a weighted consensus mechanism that favors consistent observations across multiple users and / or trajectories. The weighted consensus mechanism may assign greater weight to observations that are consistent across multiple time periods and / or multiple users.

[0076] The ILM system may be configured to receive additional trajectories corresponding to additional users and repeat the computing, identifying, aligning, and generating steps to incrementally refine the fused environmental map. As more trajectory data becomes available, the ILM system may construct increasingly accurate maps.

[0077] The ILM system may identify persistent patterns in human motion that indicate environmental features. As such, over a duration of time, the ILM system may receive trajectory data corresponding to movements of multiple users within a common environment, where the trajectory data is generated from IMU signals associated with the users. The ILM system may identify, from the trajectory data, motion patterns that persist across the plurality of time periods without supplementing the data with data extracted from videos.

[0078] The ILM system may classify identified persistent motion patterns as corresponding to static environmental features based on temporal consistency of the motion patterns. The ILM system may distinguish the static environmental features from dynamic elements within the environment based on variability of the motion patterns across the duration of time.

[0079] The ILM system may progressively refine the environmental map by aggregating the static environmental features through the weighted consensus mechanism that may assign greater weight to observations consistent across the plurality of users. The ILM system may leverage temporal persistence, e.g., where environmental structures remain largely static while human motions vary, to progressively refine maps by aggregating consistent patterns corresponding to multiple users’ movements through and interaction with common spaces over time. In some cases, the ILM system may iteratively refine trajectories based on the progressively refined environmental map. The multi-trajectory fusion approach allows construction of increasingly accurate maps as more trajectory data becomes available, while individual IMU trajectories may have significant drift and / or arbitrary starting positions associated with the raw data.

[0080] As mentioned, the ILM system may analyze the trajectory data to identify motion patterns that persist across the plurality of time periods, where the ILM system may classify identified persistent motion patterns as corresponding to static environmental features based on temporal consistency of the motion patterns over extended periods of observation. The ILM system may distinguish static environmental features from dynamic elements within the environment based on variability of the motion patterns across the plurality of time periods. Motion patterns associated with dynamic elements may exhibit higher variability across different time periods compared to motion patterns associated with static environmental features. Observations that recur consistently over time may receive higher weighting during map refinement, while observations that appear sporadically may receive lower weighting. The weighted consensus mechanism may also assign greater weight to observations that are consistent across multiple users. When trajectory data is received from a plurality of users, the ILM system may identify motion patterns that are consistent across multiple users and assign greater weight to such observations during map aggregation.Motion patterns that multiple users exhibit in similar spatial locations may indicate the presence of environmental features at those locations.

[0081] As the environmental map becomes more accurate through temporal aggregation, the refined map may provide improved constraints used for correcting trajectory drift. The corrected trajectories may then enable detection of additional environmental features, creating a feedback loop between trajectory refinement and map improvement.

[0082] Based on the one or more motion pattern transitions, the ILM system may generate a local descriptor for each trajectory segment, such as an environmental feature. The ILM system may infer environment geometry based on the local descriptors solely through processing of received IMU signals and without input from a visual sensor. By analyzing motion pattern transitions across multiple trajectory segments and multiple time periods, the ILM system construct a representation of environmental geometry that captures spatial relationships between detected features from received IMU signals. The progressive refinement approach may enable the ILM system to start with sparse, single-user data and to iteratively incorporate additional trajectories over time to improve map accuracy.

[0083] The ILM system may communicate a generated map to one or more data consuming devices. A consuming device may include any computing device configured to receive, process, display, or utilize map data generated by the ILM system. In some cases, a consuming device comprises a mobile phone, a tablet, a laptop computer, a desktop computer, a server, an augmented reality headset, a virtual reality headset, a smart display, a navigation system, or a combination thereof.

[0084] The ILM system may communicate the map via a communication interface. The communication interface may include one or more of an Ethernet interface, a universal serial bus (USB) interface, a PCI express interface, a wireless interface, or any other suitable interface standard. In some cases, the communication interface comprises a transmitter, a receiver, a transceiver, a modem, or a network interface card configured to facilitate exchange of data with external machines via a network.

[0085] The network may comprise a local area network (LAN), a wide area network (WAN), the Internet, a wireless network, a digital subscriber line (DSL) network, a frame relay network, an asynchronous transfer mode (ATM) network, a virtual private network (VPN), or any combination thereof. In some cases, the ILM system communicatesthe map to a consuming device via a local network connection. In other cases, the ILM system communicates the map to a consuming device via a remote network connection.

[0086] The map communicated to a consuming device may include environmental features detected by the ILM system and represented such that the user may identify the environmental feature on a representation of the map. The environmental features may comprise obstacles within the environment, portals within the environment, windows, objects of interest, or combinations thereof. An obstacle may be a fixed obstacle or a movable obstacle. A portal may comprise an opening to a passage accessible to a user within the environment, where the passage comprises a door or a corridor. The map communicated to a consuming device may further include map structure data. The map structure may be modeled using a representation that captures both local geometric constraints and global topological relationships. Local geometric constraints may include walls, doors, and corridors. The map structure data may include priors on environmental layout, where the priors comprise parallel walls, perpendicular walls, and right-angle intersections.

[0087] In some cases, the ILM system communicates the map to a consuming device in realtime or near real-time as the map is progressively refined. The ILM system may communicate incremental map updates to a consuming device as additional trajectory data is processed and fused. In some cases, the ILM system communicates a complete map to a consuming device after a predetermined refinement threshold is reached.

[0088] The ILM system may communicate uncertainty information associated with the map to a consuming device. The uncertainty information may include first uncertainties in trajectory estimates and second uncertainties in detected environmental features. The consuming device may utilize the uncertainty information to apply weights and / or to prioritize different portions of the map during display or processing.

[0089] In some cases, the ILM system communicates the map to multiple consuming devices.The multiple consuming devices may be associated with a single user or with multiple users. The ILM system may communicate different map representations to different consuming devices based on capabilities or requirements of each consuming device. The ILM system may communicate the map in various data formats. In some cases, the map is communicated as a two-dimensional floor plan representation. In somecases, the map is communicated as a three-dimensional spatial representation. The map may be communicated as vector data, raster data, point cloud data, or a combination thereof. The consuming device may utilize the received map for navigation, spatial awareness, augmented reality applications, facility management, accessibility assistance, or other location-based services. In some cases, a consuming device displays the map to a user via a display device. The display device may comprise a light emitting diode (LED) display, an organic light emitting diode (OLED) display, a liquid crystal display, a touchscreen, or other suitable display technology.

[0090] FIG. 2 is a block diagram of an illustrative processor platform 200 structured to executing the instructions of at least FIG. 1 to implement the illustrative components, operations, and / or actions to generate information as disclosed and described herein with respect to FIGS. 1. The processor platform 200 can be, for example, a server, a personal computer, a mobile device (e.g., a cell phone, a smart phone, a tablet such as an iPad™), a personal digital assistant (PDA), an Internet appliance, and / or any other type of computing device or combination of computing devices.

[0091] The processor platform 200 includes a processor 212. The processor 212 is hardware.For example, the processor 212 can be implemented by integrated circuits, logic circuits, microprocessors or controllers from any desired family or manufacturer.

[0092] The processor 212 includes a local memory 213 (e.g., a cache). The processor 212 of FIG. 2 executes the instructions associated with functionality of at least FIG. 1 to implement the systems and infrastructure and associated methods of FIG. 1 such as one or more computing devices of the inertial localization and mapping system 100, etc. The processor 212 is in communication with a main memory including a volatile memory 214 and a non-volatile memory 216 via a bus 218 and / or a memory bus 202. The volatile memory 214 can be implemented by Synchronous Dynamic Random-Access Memory (SDRAM), Dynamic Random-Access Memory (DRAM), RAMBUS Dynamic Random- Access Memory (RDRAM) and / or any other type of random-access memory device. The non-volatile memory 216 can be implemented byflash memory and / or any other desired type of memory device. Access to the one or more main memory components (e.g., the volatile memory 214, the non-volatile memory 216) may be controlled by a clock controller.

[0093] The processor platform 200 of the illustrated example also includes an interface circuit 220. The interface circuit 220 can be implemented by any type of interface standard, such as an Ethernet interface, a universal serial bus (USB), and / or a PCI express interface.

[0094] In the illustrated example, one or more input devices 222 are connected to the interface circuit 220. The one or more input devices 222 permits a user to enter data and commands into the processor 212. The one or more input devices 222 can be implemented by, for example, a sensor, a microphone, a camera (still or video), a keyboard, a button, a mouse, a touchscreen, a track-pad, a trackball, isopoint, and / or a voice recognition system.

[0095] One or more output devices 224 are also connected to the interface circuit 220. The output devices 224 can be implemented, for example, by display devices (e.g., a light emitting diode (LED), an organic light emitting diode (OLED), a liquid crystal display, a cathode ray tube display (CRT), a touchscreen, a tactile output device, and / or speakers). The interface circuit 220, thus, typically includes a graphics driver card, a graphics driver chip, or a graphics driver processor.

[0096] The interface circuit 220 also includes a communication device such as a transmitter, a receiver, a transceiver, a modem and / or network interface card to facilitate exchange of data with external machines (e.g., computing devices of any kind) via a network 226 (e.g., an Ethernet connection, a digital subscriber line (DSL), a telephone line, coaxial cable, a cellular telephone system, etc.).

[0097] The processor platform 200 also includes one or more mass storage devices 228 for storing software and / or data. Examples of mass storage devices 228 include floppy disk drives, hard drive disks, compact disk drives, Blu-ray disk drives, RAID systems,and digital versatile disk (DVD) drives, and / or other mass storage devices.

[0098] The coded instructions 232 of FIG. 2 can be stored in the mass storage device 228, in the volatile memory 214, in the non-volatile memory 216, and / or on a removable tangible computer readable storage medium such as a CD or DVD.

[0099] One or more aspects of the disclosure may be embodied in computer-usable data or computer-executable instructions, such as in one or more program modules, executed by one or more computers or other devices to perform the operations described herein. Generally, program modules include routines, programs, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types when executed by one or more processors in a computer or other data processing device. The computer-executable instructions may be stored as computer-readable instructions on a computer-readable medium such as a hard disk, optical disk, removable storage media, solid-state memory, RAM, and the like. The functionality of the program modules may be combined or distributed as desired in various embodiments. In addition, the functionality may be embodied in whole or in part in firmware or hardware equivalents, such as integrated circuits, applicationspecific integrated circuits (ASICs), field programmable gate arrays (FPGA), and the like. Particular data structures may be used to implement one or more aspects of the disclosure more effectively, and such data structures are contemplated to be within the scope of computer executable instructions and computer-usable data described herein.

[0100] Various aspects described herein may be embodied as a method, an apparatus, or as one or more computer-readable media storing computer-executable instructions. Accordingly, those aspects may take the form of an entirely hardware configuration, an entirely software configuration, an entirely firmware configuration, or a comfiguration combining software, hardware, and firmware aspects in any combination. In addition, various signals representing data or events as described herein may be transferred between a source and a destination in the form of light or electromagnetic waves traveling through signal-conducting media such as metalwires, optical fibers, or wireless transmission media (e.g., air or space). In general, the one or more computer-readable media may be and / or include one or more non- transitory computer-readable media.[01011 As described herein, the various methods and acts may be operative across one or more computing servers and one or more networks. The functionality may be distributed in any manner, or may be located in a single computing device (e.g., a server, a client computer, and the like). For example, in alternative embodiments, one or more of the computing platforms discussed above may be combined into a single computing platform, and the various functions of each computing platform may be performed by the single computing platform. In such arrangements, any and / or all of the above-discussed communications between computing platforms may correspond to data being accessed, moved, modified, updated, and / or otherwise used by the single computing platform. Additionally, or alternatively, one or more of the computing platforms discussed above may be implemented in one or more virtual machines that are provided by one or more physical computing devices. In such arrangements, the various functions of each computing platform may be performed by the one or more virtual machines, and any and / or all of the above-discussed communications between computing platforms may correspond to data being accessed, moved, modified, updated, and / or otherwise used by the one or more virtual machines.

[0102] Aspects of the disclosure have been described in terms of illustrative embodiments thereof. Numerous other embodiments, modifications, and variations within the scope and spirit of the appended claims will occur to persons of ordinary skill in the art from a review of this disclosure. For example, one or more of the steps depicted in the illustrative figures may be performed in other than the recited order, and one or more depicted steps may be optional in accordance with aspects of the disclosure. References

[0103] [1] Herath, S., Yan, H., & Furukawa, Y. (2020). Ronin: Robust neural inertialnavigation in the wild: Benchmark, evaluations, & new methods. In 2020 IEEE International Conference on Robotics and Automation (ICRA).

[0104] [2] Liu, C. et al. (2020). TLIO: Tight Learned Inertial Odometry. IEEE Robotics and Automation Letters.

[0105] [3] Mura, C., et al. (2021). Walk2Map: Extracting Floor Plans from Indoor Walk Trajectories. Computer Graphics Forum.

[0106] [4] Lymberopoulos, D., et al. (2015). A realistic evaluation and comparison of indoor location technologies: Experiences and lessons learned. In Proceedings of the 14th international conference on information processing in sensor networks.

[0107] [5] Cadena, C., et al. (2016). Past, present, and future of simultaneous localization and mapping: Toward the robust-perception age. IEEE Transactions on robotics.

[0108] [6] Xu, V., et al. "MobilePoser: Real-Time Full-Body Pose Estimation and 3D Human Translation from IMUs in Mobile Consumer Devices." UIST. 2024.

Claims

WHAT IS CLAIMED IS:

1. A method comprising :receiving, via a local network connection, a first set of inertial measuring unit (IMU) signals from a plurality of first user devices associated with a first user;generating, by an inertial localization engine and based on the first set of IMU signals, a first trajectory corresponding to movements of the first user within an environment;generating, based on a motion pattern corresponding to the first trajectory, characteristic movements of the first user within the environment corresponding to one or more environmental features;generating, based on the first trajectory of the first user, a map of the environment comprising the one or more environmental features; andjointly optimizing, via alternating minimization, the first trajectory and the map by: applying environmental constraints derived from the one or more environmental features to refine the first trajectory; anddetecting additional environmental features based on the refined first trajectory to update the map.

2. The method of claim 1, wherein each first user device of the plurality of first user devices is located adjacent a different portion of the first user’s body.

3. The method of claim 2, wherein the plurality of first user devices comprises one or more of a mobile phone, a smart watch, an audio device, and an augmented reality headset.

4. The method of claim 1, wherein when one or more of the plurality of first user devices is not present, associated inputs to the inertial localization engine are masked with zero values.

5. The method of claim 1, further comprising:receiving, via a local network connection, a second set of IMU signals from a plurality of second user devices associated with a second user;generating, by an inertial localization engine and based on the second set of IMU signals, a second trajectory corresponding to movements of the second user within an environment; and generating, based on identified motion patterns identified from the second trajectory and one or more historical trajectories, characteristic movements of the second user within theenvironment corresponding to one or more features within the environment.

6. The method of claim 5, further comprising progressively refining the map based on the characteristic movements of the first user within the environment and the characteristic movements of the second user within the environment.

7. The method of claim 1, further comprising identifying, based on a trajectory segment, a local descriptor corresponding to an environmental feature of the environment.

8. The method of claim 7, wherein the environmental feature comprises an obstacle within the environment.

9. The method of claim 8, wherein the obstacle is one of a fixed obstacle or a movable obstacle.

10. The method of claim 7, wherein the environmental feature comprises a portal within the environment.

11. The method of claim 10, wherein the environmental feature comprises one of an opening to a passage accessible to the first user the environment.

12. The method of claim 11, wherein the passage comprises one of a door or a corridor.

13. The method of claim 7, wherein the environmental feature comprises a window.

14. The method of claim 7, wherein the environmental feature comprises an object of interest within the environment.

15. The method of claim 1, wherein a map structure of the map is modeled using a representation that captures both local geometric constraints and global topological relationships.

16. The method of claim 1, further comprising progressively refining the mapthrough a weighted consensus mechanism that favors consistent observations across multiple users.

17. The method of claim 1 , further comprising minimizing an objective function that combines motion consistency terms, map structure data points, and mutual constraints between trajectories and map elements.

18. The method of claim 17, wherein one or more motion consistency terms penalize deviations from raw IMU inferred localization trajectories while allowing for drift correction.

19. The method of claim 17, wherein the one or more map structure data points enforces priors on environmental layout, wherein the priors comprise parallel walls and right angles.

20. The method of claim 17, wherein one or more mutual constraint terms ensure that corrected trajectories respect environmental constraints while environmental features align with consistent motion patterns.

21. The method of claim 1, further comprising communicating the map to a consuming device.

22. The method of claim 1, wherein a multi -trajectory fusion module processes a plurality of trajectories associated with a plurality of users and_operates on a graph neural network structure comprising vertices representing trajectory segments and edges encoding potential correspondences between segments.

23. The method of claim 1, further comprising identifying correspondences between trajectory segments using a learned similarity metric that considers both geometric compatibility and semantic compatibility.

24. The method of claim 1, further comprising iteratively refining the first trajectory and the map by alternating minimization, wherein a first minimization step refines the first trajectory based on detected environmental constraints and a second minimization step refines the map based on the refined trajectory.

25. The method of claim 1, further comprising:modeling first uncertainties in the first trajectory and second uncertainties in detected environmental features; andapplying weights to sources of information during optimization based on the modeled first uncertainties and the modeled second uncertainties.

26. The method of claim 1, wherein generating the map comprises enforcing map structure priors on environmental layout, the priors comprising one or more of parallel walls, perpendicular walls, and right-angle intersections.

27. A system comprising:a plurality of user devices, wherein each user device comprises an inertial measurement unit sensing motion of the user device in relation to a user;a computing device comprising:a processor;a memory storing instructions that, when executed by the processor, cause the computing device to:generate, via an inertial localization engine, a trajectory corresponding to movements of the user within an environment based on IMU signals received from the plurality of user devices;identify at least one motion pattern of the user based on the trajectory; detect, via an environmental constraint recognition module, one or more environmental features based on the at least one motion pattern identified from the trajectory;generate, via a map modeling engine, a map of the environment based on the trajectory7and the one or more environmental features; anditeratively refine both the trajectory and the map through a joint optimization framework, wherein detected environmental features comprise constraints for correcting the trajectory and the refined trajectory enables detection of additional environmental features.

28. The system of claim 27, wherein the environmental constraint recognition module comprises a motion pattern recognition module and a geolocation module.

29. The system of claim 27, wherein the instructions further cause the computing device to communicate the map to a consuming device via a communication interface.

30. The system of claim 27, wherein the instructions further cause the computing device to fuse, via a multi-trajectory fusion module, the trajectory with one or more additional trajectories generated from movements of one or more additional users.

31. A non-transitory computer-readable medium storing instructions that, when executed by a processor, cause a computing device to:receive inertial measurement unit (IMU) signals from each of a plurality of user devices associated with a user;generate a trajectory corresponding to movements of the user within an environment based on the IMU signals;detect, based on one or more motion patterns identified within the trajectory, one or more environmental features;generate a map of the environment based on the trajectory and the one or more environmental features; anditeratively refine the trajectory and the map by alternating between:(i) correcting the trajectory based on detected environmental constraints; and (ii) updating the map based on the corrected trajectory.

32. The non-transitory computer-readable medium of claim 31, wherein iteratively refining comprises minimizing an objective function comprising a combination of a motion consistency term, a map structure term, and a mutual constraint term.

33. The non-transitory computer-readable medium of claim 32, wherein the motion consistency term penalizes deviations from raw IMU-inferred trajectories while permitting drift correction.

34. The non-transitory computer-readable medium of claim 32, wherein the mutual constraint term ensures corrected trajectories do not pass through detected environmental structures.

35. A method comprising:receiving a first trajectory corresponding to movements of a first user within an environment, wherein the first trajectory is generated from first inertial measurement unit (IMU) signals received from one or more first user devices associated with the first user;receiving a second trajectory corresponding to movements of a second user within the environment, wherein the second trajectory generated from second IMU signals from one or more second user devices associated with the second user, wherein the first trajectory and the second trajectory' have independent coordinate origins;computing, for each of a plurality of first segments of the first trajectory and each of a plurality of second segments of the second trajectory, a local descriptor capturing motion patterns within an analyzed segment;identifying, based on the local descriptor associated with each of the plurality of first segments and the plurality of second segments, one or more correspondences between the first segments of the first trajectory and the second segments of the second trajectory using a similarity metric;aligning the first trajectory and the second trajectory based on the identified one or more correspondences; andgenerating a fused environmental map based on the aligned first trajectory and second trajectory.

36. The method of claim 35, wherein the plurality of first segments and the plurality of second segments are represented as vertices in a graph structure, and potential correspondences between segments are encoded as edges.

37. The method of claim 36, wherein the graph structure comprises a learned graph neural network.

38. The method of claim 35, wherein the similarity metric considers both geometric compatibility and semantic compatibility of the first segments and the second segments.

39. The method of claim 35, further comprising progressively refining the fused environmental map through a weighted consensus mechanism that favors observations consistent across the first user and the second user.

40. The method of claim 35, further comprising receiving one or more additional trajectories corresponding to one or more additional users and repeating the computing, identifying, aligning, and generating steps to incrementally refine the fused environmental map.

41. A method comprising:receiving inertial measurement unit (IMU) signals from a plurality of wearable devices associated with a user, each wearable device positioned at a different location on the user's body, each wearable device generating acceleration data and angular velocity data; concatenating the IMU signals from the plurality of wearable devices into a multidevice input representation;determining whether one or more wearable devices of the plurality of wearable devices are unavailable;masking, in the multi-device input representation, input values corresponding to one or more unavailable wearable devices with predetermined values; andgenerating, based on the multi -device input representation including the masked input values, a trajectory corresponding to movements of the user within an environment.

42. The method of claim 41, wherein the predetermined values are zero values.

43. The method of claim 41, wherein the plurality of wearable devices comprises two or more of: a mobile phone, a smart watch, an audio device, and an augmented reality headset.

44. The method of claim 41, wherein the multi -device input representation comprises a tensor A in RA(2D x N x T), where D represents measurement channels, N represents a number of wearable devices, and T represents a number of timesteps.

45. The method of claim 41, wherein generating the trajectory is performed by a transformer-based inertial localization engine.

46. The method of claim 41, wherein the trajectory comprises a three-dimensional position series of the user over time.

47. A method comprising:receiving, over a plurality of time periods, trajectory data corresponding tomovements of one or more users within an environment, the trajectory data generated from inertial measurement unit (IMU) signals;identifying, from the trajectory data, motion patterns that persist across the plurality of time periods;classifying identified persistent motion patterns as corresponding to static environmental features based on temporal consistency of the motion patterns;distinguishing the static environmental features from dynamic elements within the environment based on variability of the motion patterns across the plurality of time periods; andprogressively refining an environmental map by aggregating the static environmental features through a weighted consensus mechanism that assigns greater weight to observations that are consistent across multiple time periods or multiple users.

48. The method of claim 47, wherein the static environmental features comprise one or more of walls, doors, corridors, and fixed obstacles.

49. The method of claim 47, wherein the dynamic elements comprise one or more of movable obstacles and transient objects.

50. The method of claim 47, wherein the trajectory data is received from a plurality of users, and the weighted consensus mechanism further assigns greater weight to observations consistent across the plurality of users.

51. The method of claim 47, further comprising iteratively refining trajectories based on the progressively refined environmental map.

52. A method compri sing :receiving trajectory data generated from inertial measurement unit (IMU) signals of one or more wearable devices associated with a user, the trajectory data comprising a series of positions corresponding to movements of the user within an environment;segmenting the trajectory data into a plurality of trajectory’ segments; analyzing, for each trajectory segment of the plurality of trajectory segments, one or more motion pattern transitions within the segment;generating, based on the one or more motion pattern transitions, a local descriptor foreach trajectory segment of the plurality of trajectory segments, the local descriptor corresponding to an environmental feature of the environment; andinferring, based on the local descriptors derived from the IMU signals, a geometry of the environment.

53. The method of claim 52, wherein the one or more motion pattern transitions comprise one or more of turning a corner, entering a doorway, traversing a corridor, and avoiding an obstacle.

54. The method of claim 52, wherein the environmental feature comprises an obstacle within the environment.

55. The method of claim 54, wherein the obstacle is one of a fixed obstacle or a movable obstacle.

56. The method of claim 52, wherein the environmental feature comprises a portal within the environment, the portal comprising one of a door or a corridor opening.

57. The method of claim 52, wherein the environmental feature comprises a window.

58. The method of claim 52, wherein the environmental feature comprises an object of interest within the environment.

59. The method of claim 52, wherein the geometry of the environment is derived without input from a visual sensor.