Method and device for determining navigation positioning point of mobile equipment, equipment and medium
By dividing the navigation environment into multiple regions, determining a subset of candidate regions, and optimizing the calculation, the problem of low computational efficiency of traditional track-up methods in large-scale scenarios is solved, and efficient, real-time navigation of mobile devices is achieved.
Patent Information
- Application Number
- CN202511931297.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-19
- Publication Date
- 2026-02-10
AI Technical Summary
Traditional track-mounting methods suffer from low computational efficiency and significant response latency in large-scale, high-concurrency application scenarios, failing to meet the stringent real-time requirements of modern logistics systems and becoming a major bottleneck for efficient navigation of mobile devices.
By dividing the navigation environment into multiple regions, determining a subset of candidate regions based on the current location, and determining the target navigation positioning point within that subset, a three-level optimization mechanism of region pre-screening, dynamic range optimization, and precise calculation is adopted to reduce the algorithm complexity to the O(1) level.
It significantly improves computing efficiency while ensuring positioning accuracy, making it particularly suitable for resource-constrained mobile device platforms, enabling rapid path recovery and efficient navigation.
Smart Images

Figure CN121498705A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application belongs to the technical field of navigation, and particularly relates to a method for determining a navigation positioning point of a movable device, a device for determining a navigation positioning point of a movable device, an electronic device and a readable storage. BACKGROUND
[0002] With the rapid development of intelligent manufacturing and logistics automation technology, movable devices (such as automated guided vehicles (AGV), service robots, etc.) undertake increasingly complex transportation and navigation tasks in warehouse, workshop and other environments. The rapid and accurate positioning of these devices in the global map is a basic ability for realizing autonomous navigation and scheduling.
[0003] In actual operation, the movable device often deviates from the preset navigation path (i.e., "derails") due to initialization, task interruption or abnormal interference. At this time, the system needs to quickly re-plan a path for it so that it can return to the drivable network. This process is called "getting on track". The key to efficient getting on track is how to quickly find the nearest effective target point from the massive navigation positioning points describing the path network, which is closest to the current position of the movable device.
[0004] The traditional getting on track method usually adopts a global traversal strategy, that is, the distance from the current position to each navigation positioning point in the map is calculated, and then the nearest point is selected through comparison. However, with the expansion of application scenarios, the number of positioning points in the map increases dramatically, and the time complexity of this global traversal algorithm increases linearly with the number of positioning points. In large-scale, high-concurrency application scenarios, its calculation efficiency is low, the response delay is significant, and it cannot meet the stringent real-time requirements of modern logistics systems, which constitutes the main bottleneck of efficient navigation of movable devices. SUMMARY
[0005] The purpose of the embodiments of the present application is to provide a method for determining a navigation positioning point of a movable device, a device for determining a navigation positioning point of a movable device, an electronic device and a readable storage medium, which can solve the problem that the traditional getting on track method has low calculation efficiency, significant response delay, and cannot meet the stringent real-time requirements of modern logistics systems in large-scale, high-concurrency application scenarios, which constitutes the main bottleneck of efficient navigation of movable devices.
[0006] To solve the above technical problems, the present application is implemented as follows: In a first aspect, the embodiments of the present application provide a method for determining a navigation positioning point of a movable device, which comprises: determining a current region corresponding to the current position of the movable device according to the current position of the movable device; wherein the current region is one of a plurality of divided regions; determine a candidate region subset from a candidate set containing the current region and a plurality of adjacent regions adjacent to the current region according to the relative position information of the current position in the current region; wherein the number of regions contained in the candidate region subset is less than the total number of regions in the candidate set; determine a target navigation positioning point meeting a proximity condition with the current position according to the navigation positioning points of the movable device in the candidate region subset.
[0007] In a second aspect, an embodiment of the present application provides a device for determining a navigation positioning point of a movable device, and the device comprises: a region determining module configured to determine a current region corresponding to a current position of the movable device according to the current position; wherein the current region is one of a plurality of divided regions; a subset determining module configured to determine a candidate region subset from a candidate set containing the current region and a plurality of adjacent regions adjacent to the current region according to the relative position information of the current position in the current region; wherein the number of regions contained in the candidate region subset is less than the total number of regions in the candidate set; a positioning point determining module configured to determine a target navigation positioning point meeting a proximity condition with the current position according to the navigation positioning points of the movable device in the candidate region subset.
[0008] In a third aspect, an embodiment of the present application provides an electronic device, which comprises a processor, a memory, and a program or instruction stored in the memory and executable on the processor, and the program or instruction is executed by the processor to implement the steps of the method according to the first aspect.
[0009] In a fourth aspect, an embodiment of the present application provides a readable storage medium, which stores a program or instruction, and the program or instruction is executed by a processor to implement the steps of the method according to the first aspect.
[0010] In a fifth aspect, an embodiment of the present application provides a computer program product, which is executed on an electronic device to make a processor implement the steps of the method according to the first aspect.
[0011] According to the embodiment of the present application, first, the current area corresponding to the current position of the mobile device is determined according to the current position, and the current area is one of the divided multiple areas. Then, according to the relative position information of the current position in the current area, a candidate area subset is determined from a candidate set containing the current area and multiple adjacent areas adjacent to the current area; wherein the number of areas contained in the candidate area subset is less than the total number of areas in the candidate set. Finally, the target navigation positioning point meeting the proximity condition with the current position is determined according to the navigation positioning point of the mobile device in the candidate area subset. The three-level optimization mechanism of area pre-screening, dynamic range optimization and accurate calculation reduces the algorithm complexity from the traditional O(n) to the level of nearly O(1), which realizes the order of magnitude improvement of the calculation efficiency while ensuring the positioning accuracy, and is particularly suitable for resource-limited mobile device platform. BRIEF DESCRIPTION OF DRAWINGS
[0012] Figure 1 is a step flow chart of a mobile device navigation positioning point determination method provided by the embodiment of the present application; Figure 2 is a region boundary rule schematic diagram; Figure 3 is a topological map region division schematic diagram; Figure 4 is a topological point data initialization flow chart; Figure 5 is a step flow chart of a mobile device navigation positioning point determination method provided by the embodiment of the present application; Figure 6 is a coordinate bit segmentation principle schematic diagram; Figure 7 is a region ID generation principle diagram; Figure 8 is a positioning schematic diagram of a point in a region quadrant; Figure 9 is a quadrant internal point search region selection diagram; Figure 10 is a positioning schematic diagram of a point on a region boundary line; Figure 11 is a boundary line point search region selection diagram; Figure 12 is a region center point search region schematic diagram; Figure 13 is a structure block diagram of a mobile device navigation positioning point determination device embodiment provided by another embodiment of the present application; Figure 14 is a structure block diagram of an electronic device for mobile device navigation positioning point determination according to an exemplary embodiment. DETAILED DESCRIPTION
[0013] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0014] The terms "first," "second," etc., used in the specification and claims of this application are used to distinguish similar objects and not to describe a specific order or sequence. It should be understood that such use of data can be interchanged where appropriate so that embodiments of this application can be implemented in orders other than those illustrated or described herein. Furthermore, in the specification and claims, "and / or" indicates at least one of the connected objects, and the character " / " generally indicates that the preceding and following objects are in an "or" relationship.
[0015] The method for determining navigation and positioning points of mobile devices provided in this application will be described in detail below with reference to the accompanying drawings, through specific embodiments and application scenarios.
[0016] The method for determining navigation and positioning points of mobile devices involved in this application has broad application adaptability, and its core algorithm and system architecture can be flexibly deployed in various computing environments. Specifically, the method can run independently on local computing units (such as AGV on-board industrial control computers) and edge computing nodes, or it can be centrally deployed and scheduled relying on enterprise private clouds or industrial internet platforms. It has high compatibility with underlying hardware configurations and operating system environments.
[0017] At the application level, this application can be deeply integrated into the following typical scenarios: Intelligent warehousing and logistics system: In large-scale automated warehouses, it provides instantaneous onboard support for clusters of hundreds of AGVs, ensuring the smooth operation of high-concurrency operation modes such as goods-to-person and goods-to-robot.
[0018] Smart manufacturing workshops: In discrete manufacturing fields such as automobiles and electronics, they enable material delivery AGVs to quickly restore the path in complex process routes, ensuring production line cycle time.
[0019] Specialized operation scenarios: Suitable for large-scale outdoor navigation scenarios such as port container transshipment and airport baggage transportation, overcoming positioning drift problems caused by weather, obstruction and other factors.
[0020] Reference Figure 1 The diagram illustrates a flowchart of a method for determining navigation and positioning points of a mobile device according to an embodiment of this application, which may specifically include the following steps: Step 101: Determine the current region corresponding to the current location based on the current location of the mobile device; wherein the current region is one of the multiple regions.
[0021] In this embodiment, a mobile device refers to an intelligent device with autonomous navigation capabilities, such as handling equipment, automated guided vehicles (AGVs), and service robots. For example, handling robots and AGVs used to transport goods in smart warehouses. Specifically, it can include any applicable mobile device, and this embodiment of the invention does not impose any limitations on it.
[0022] In this embodiment, the current location refers to the real-time spatial location of the mobile device within the navigation space, typically expressed with millimeter-level precision (e.g., coordinates (25300, 41700)). The navigation space is a two-dimensional or three-dimensional spatial region in which the mobile device operates, and a predefined network of drivable paths exists within this space. In practice, this navigation space can be modeled using a topological map, that is, the environmental structure can be described through a topological network of nodes and edges.
[0023] In this embodiment, a region refers to a basic unit after the navigation space has been divided, and each region has a specific spatial range. The division of regions can be based on various rules, but the core purpose is to discretize the continuous space to facilitate the establishment of a spatial index.
[0024] In this embodiment, predefined key path points in the navigation space are denoted as navigation positioning points, forming a path network for the mobile device to travel on. In specific implementations, these navigation positioning points correspond to nodes in the topology map, and the points and lines in the topology map constitute the track, i.e., the navigation path.
[0025] In this embodiment, the current region is a specific area unit where the mobile device is currently located. It is determined by mapping the current location coordinates to the region division rules, based on the navigation space being divided into multiple regions.
[0026] In this embodiment, spatial discretization technology is used to map continuous coordinates to discrete region units, i.e., the current region. Specifically, various mapping algorithms, such as those based on regular regions, quadtrees, and spatial hashing, can be employed to ensure that the current region where the current location is situated can be determined quickly and accurately.
[0027] For example, the entire navigation space can be divided into areas of fixed size (such as 10 meters × 10 meters), and rapid positioning can be achieved by calculating the area number where the current location's coordinates are located.
[0028] Step 102: Based on the relative position information of the current location within the current region, determine a subset of candidate regions from a candidate set that includes the current region and multiple adjacent regions immediately adjacent to the current region; wherein the number of regions contained in the subset of candidate regions is less than the total number of regions in the candidate set.
[0029] In the embodiments of this application, relative position information represents the spatial distribution characteristics of the current position within the current region, including but not limited to spatial relationship attributes such as orientation relative to the geometric center of the region and distance from the boundary of the region.
[0030] In this embodiment, an adjacent region refers to a region unit that is spatially adjacent to the current region. Under regular region division, it typically refers to the surrounding region that shares a boundary or vertex.
[0031] In this embodiment, the candidate set refers to the complete set of regions including the current region and all its immediate neighboring regions, constituting the initial search range. Here, "immediately neighboring" means that two regions or objects are directly connected in space without any gap between them. Under regular region division, a 3×3 region set centered on the current region is typically formed, or when the current region is at a boundary, a 1+3 region set or a 1+5 region set containing the current region is typically formed.
[0032] In this embodiment, the candidate region subset is the optimal combination of regions to be searched selected from the candidate set based on relative location information. The number of regions in the candidate region subset is less than the total number of regions in the candidate set.
[0033] In this embodiment, the relative position information is the orientational relationship between the current position of the mobile device and the internal geometry of its current area. It is not a precise coordinate, but rather a classification signal used to determine whether the mobile device is near the center of the area, an edge, or a corner.
[0034] In this embodiment, the relative position information directly reveals the effective search direction. If the mobile device is near the eastern boundary of the area, the effective navigation positioning point is highly likely to be within the current area or in the adjacent area to the east, while the adjacent areas in the west, south, and north directions are unlikely to contain any closer points. Of course, this may also require a reasonably designed area size, larger than the search threshold, so that even if the nearest navigation positioning point is not in the effective search direction, the navigation positioning points in the effective search direction are still relatively close points, meeting the navigation needs of the mobile device.
[0035] In this embodiment of the application, only the neighboring areas near the current location of the mobile device need to be searched, while areas far away from it can be ignored. Step 103: Based on the navigation positioning points of the mobile device within the candidate region subset, determine the target navigation positioning point that satisfies the proximity condition with the current location.
[0036] In the embodiments of this application, the proximity condition is a comprehensive evaluation criterion used to assess the matching degree between the navigation positioning point and the current location, including multiple dimensions such as spatial distance, consistency of movement direction, and path accessibility.
[0037] In the embodiments of this application, the target navigation positioning point refers to the path point that meets the proximity condition and is selected as the next stage navigation target of the mobile device, and is the direct basis for path planning.
[0038] In this embodiment, the navigation positioning points within the candidate region subset represent a smaller portion of the navigation positioning points within the entire navigation space, which greatly reduces the search range.
[0039] In this embodiment, multi-objective optimization decision-making is performed within a subset of candidate regions, considering at least one of the following factors: closest distance, best matching direction, smoothest path, etc., to finally determine the target navigation and positioning point that meets the proximity condition.
[0040] For example, calculate the distance between the current location and navigation points within the candidate region subset, and determine the nearest navigation point as the target navigation point.
[0041] According to the embodiments of this application, firstly, the current region corresponding to the current location is determined based on the current location of the mobile device; wherein, the current region is one of multiple regions. Then, based on the relative position information of the current location within the current region, a subset of candidate regions is determined from a candidate set containing the current region and multiple adjacent regions; wherein, the number of regions contained in the subset of candidate regions is less than the total number of regions in the candidate set. Finally, based on the navigation positioning point of the mobile device within the subset of candidate regions, a target navigation positioning point that satisfies the proximity condition to the current location is determined. This scheme reduces the algorithm complexity from the traditional O(n) level to near O(1) through a three-level optimization mechanism of region pre-screening, dynamic range optimization, and precise calculation, achieving an order-of-magnitude improvement in computational efficiency while maintaining positioning accuracy, making it particularly suitable for resource-constrained mobile device platforms.
[0042] In one optional embodiment of this application, before determining the current region corresponding to the current location based on the current location of the mobile device, the method may further include: dividing the navigation space of the mobile device into the plurality of regions; and establishing an association between the region and the navigation positioning point for each region containing the navigation positioning point.
[0043] The preprocessing stage establishes a three-level index structure: navigation space, region, and navigation positioning point. By dividing the continuous navigation space into discrete regions and establishing the association between each region and its internal navigation positioning points, an efficient spatial index foundation is formed.
[0044] The continuous navigation space is discretized using a regionalization method, forming a regular spatial index structure. This partitioning is based on the principle of optimal search efficiency, ensuring that the size of a single region can cover a typical search range.
[0045] For example, firstly, the navigation environment is modeled as a topological map (assuming coordinate units are millimeters), employing a region division strategy based on a search distance threshold. In practice, a region size is chosen that is slightly larger than a power of 2, using a preset search range (e.g., 5000 mm) as a baseline. For instance, when 4096 (2^12) < 5000 < 8192 (2^13), 8192 mm is selected as the region's side length. This size design ensures that the search range completely covers adjacent region combinations while facilitating binary operation optimization.
[0046] like Figure 2 As shown, the region boundaries adopt the bottom-left inclusion principle: points with coordinates equal to the bottom-left boundary of a region are included in that region (solid line), while points located at the top-right boundary belong to adjacent regions (dashed line). This rule divides the entire topological map into uniform regions, forming a basic spatial index structure. Figure 3 This demonstrates the regionalization effect of a real topology map, where lines passing through circled nodes represent topological paths (i.e., navigation tracks), and black boxes represent the divided cells. The choice of region size balances search efficiency and storage overhead: too large a size leads to too many nodes in a single region, while too small a size increases the total number of regions.
[0047] Establish a correspondence between regions and navigation points to form a data structure for fast querying. Establish logical connections between discrete spatial units and their navigation elements.
[0048] In one specific implementation, a hash table is used for efficient mapping. For example, all navigation points are traversed, the ID (Identity Document) of the region to which each navigation point belongs is calculated, and the navigation point information is stored in the corresponding region's data structure.
[0049] For example, assuming the navigation space is 500×500 square meters, after dividing it into 8.192-meter zones, each navigation positioning point is assigned to a specific zone based on its coordinates. For instance, a point with coordinates (25300, 41700) is assigned to zone (3,5) by calculating its upper part, and a corresponding relationship is established.
[0050] likeFigure 4 As shown, the relationships can be implemented using a hash table data structure. Each region is uniquely identified by a square ID, corresponding to a Block (data block) data object. This object contains a List storing all navigation points within the region. Each navigation point contains complete attributes such as point ID, spatial coordinates, and topological connectivity. This data structure supports efficient point CRUD operations, providing an optimized foundation for subsequent rapid positioning.
[0051] A highly efficient spatial indexing infrastructure was established. This "spatial partitioning-association establishment" preprocessing model not only provides an optimized foundation for real-time queries but also embodies a novel concept of spatial data organization. Its value lies in shifting the computational burden of navigation from front-end queries to back-end preprocessing, achieving a rational allocation of computing resources and a qualitative leap in system performance.
[0052] In one optional embodiment of this application, after determining the target navigation point that satisfies the proximity condition with the current location based on the navigation positioning points of the mobile device within the subset of candidate regions, the method may further include: determining the navigation path of the mobile device based on the target navigation positioning point.
[0053] During navigation, key nodes in the target navigation positioning point topology map, such as path intersections and work sites, constitute the hubs of the navigation network.
[0054] A navigation path is a drivable route consisting of a series of ordered path segments connecting the target navigation point to the final destination. It includes not only geometric coordinates but also navigation information such as directional guidance and path attributes (e.g., one-way streets, turning restrictions).
[0055] The target navigation positioning point serves as a key node in the path. By connecting these points, a navigation path is formed, which is ultimately transformed into specific path instructions.
[0056] In one implementation, the target navigation point is used as the starting point for path searching. The topological connectivity information of this point (such as connected path segments and permitted driving directions) is loaded. The path data structure is initialized, and the starting point is added to the path point sequence. A navigation algorithm is used to calculate the optimal path from the starting point to the target point. Multiple optimization factors, including path length, number of turns, and difficulty of passage, are comprehensively considered. Known obstacles and restricted areas are dynamically avoided.
[0057] This scheme reduces computational complexity by using the nearest path point as the starting point for path planning, transforming the complex global search problem into an optimization problem between known points.
[0058] Reference Figure 5The diagram illustrates a flowchart of a method for determining navigation and positioning points of a mobile device according to an embodiment of this application, which may specifically include the following steps: Step 201: Decompose the coordinate values of the current position to obtain a high-order part for determining the region and a low-order part for positioning within the region; wherein the bit width of the low-order part is determined by the size of the region.
[0059] In this embodiment, the continuous coordinate values of the mobile device are separated into two components with different functions. This decomposition is based on the characteristics of the region size, enabling a fast mapping from continuous space to discrete regions.
[0060] The high-order portion refers to the segments in the coordinate values that represent regional positioning information, used to quickly determine the location. For example, the region identifier can be directly obtained by extracting the high-order portion of the coordinates.
[0061] The lower-order portion refers to the segments in the coordinate values that represent the precise locations within the region, and its width is determined by the size of the region. For example, the range of the lower-order portion exactly covers all the location points within the entire region.
[0062] In one specific implementation, the characteristic of the region size being a power of 2 is utilized to achieve rapid decomposition of coordinate values through bitwise operations, avoiding complex multiplication and division operations, and directly completing the decomposition through shift and mask operations.
[0063] For example, when the region size is 8192 (2 to the power of 13), the coordinate values are shifted 13 bits to the right to obtain the high-order bits, and the low-order bits are taken. This bit operation has extremely high execution efficiency at the hardware level. Each region is identified by a unique identifier (ID). The ID generation method is based on the binary nature of the coordinate values: the x and y coordinates of the lower left corner vertex of the region are split into 13 low-order bits (representing the position within the region) and the remaining high-order bits (representing the region number). For example... Figure 6 As shown, for an area size of 8192 mm, the lower 13 bits (0-8191) of the coordinate value represent the millimeter-level offset of the point within the area, and the remaining higher bits are directly used as the area number. Of the 32-bit coordinate value, the higher 16 bits can represent a map range of up to 536,870,912 mm, which meets the requirements of the AGV site. Figure 7 The process of ID concatenation is demonstrated: the high-order bits of the x-coordinate and y-coordinate are combined to form an integer region ID. Finally, a hash table index structure is built, using the region ID as the key to store information on all navigation points within that region, forming a "region-location point" association. This sparse matrix structure retains only the valid regions containing the location points, optimizing storage efficiency.
[0064] Step 202: Determine the matching current region based on the high-order portion and the region identifiers of the multiple regions; wherein, the region identifier of each region is the high-order portion of the coordinate value of any point within the region.
[0065] In this embodiment of the application, the area identifier is the identification code of each area. For example, a unique ID is generated for each area, which is generated based on the high-order part of the coordinate value of a specific point within the area.
[0066] In this embodiment of the application, the current region to which the current location belongs is quickly determined by the correspondence between coordinate values and predefined region identifiers.
[0067] In this application embodiment, the specific implementation of determining the matching current region based on the high-order portion and the region identifiers of the multiple regions may include various methods, and this application embodiment does not limit this.
[0068] For example, the high-order part of the coordinates can be directly used as the region identifier to establish a one-to-one correspondence. This method is based on a key design: the region division rules are completely consistent with the coordinate encoding rules. In the preprocessing stage, the identifier of each region is the high-order part of the coordinates of a specific point in that region (such as the lower left corner) (the high-order part of x and y is concatenated); during real-time positioning, the high-order part of the current position coordinates (the high-order part of x and y is concatenated) is directly extracted, and this value itself is the identifier of the target region. This method eliminates the search and matching process, requiring only two displacement operations to complete region positioning, without consuming additional comparison and computational resources.
[0069] For example, the current region is determined by comparing the high-order portion of the coordinates with a pre-stored set of region identifiers. During the preprocessing stage, a unique identifier is generated for each region (possibly based on, but not limited to, the high-order coordinates). During real-time positioning, the extracted high-order coordinates are matched against the set of region identifiers.
[0070] By employing an innovative coordinate decomposition method, the complex spatial positioning problem is transformed into an efficient numerical computation problem. This bit-operation-based regional positioning mechanism not only significantly improves computational efficiency but also embodies an innovative approach to discretizing continuous spatial problems. Its core value lies in achieving complex spatial relationship calculations through simple binary operations, providing a completely new technical path for the field of mobile device navigation, and possessing significant theoretical and practical value.
[0071] In one alternative embodiment of this application, the size of the region is determined based on a preset search distance threshold.
[0072] The preset search distance threshold refers to the maximum effective search radius pre-set by the system during navigation of a mobile device. This threshold is determined based on business needs, indicating that the device needs to find the nearest navigation point within this distance range around it.
[0073] The size of a region refers to the physical size of each region after the navigation space is divided during the preprocessing stage. The choice of size directly affects search efficiency and accuracy.
[0074] The area size must be slightly larger than the search distance threshold to ensure that the circular search area centered on the mobile device and with the search distance threshold as its radius is completely covered by the 3×3 area.
[0075] For example, size selection follows the principle of "a power of 2 slightly larger than the threshold".
[0076] This association optimizes the search scope, avoids missing potential target points, and minimizes the search area.
[0077] By establishing a precise mathematical relationship between search distance thresholds and region size, the scientific and standardized division of navigation space has been achieved. This threshold-driven size determination method not only ensures the completeness of search results but also optimizes system performance.
[0078] In one optional embodiment of this application, the shape of the region is a regular graphic, and its size is set to a power of 2 units in length. Furthermore, the bit width of the low-order portion is determined by the power of the region's size.
[0079] Regular geometric regions refer to standard geometric units into which navigation space is divided, such as squares and rectangles. For example, using "small squares" as region units ensures the uniformity of spatial division and the predictability of calculations due to their regularity in shape.
[0080] A power of 2 units means that the side length of the region is set to an integer power of 2 units (e.g., 2 to the power of 13 = 8192 millimeters). This design is based on the binary characteristics of computers.
[0081] The exponent refers to the value of the power of 2 (e.g., 13 in 8192 = 2 to the power of 13). It directly determines the numerical size of the region and its computational characteristics.
[0082] The bit width of the low-order portion refers to the number of bits used to represent a specific location within a region in the binary representation of coordinate values. For example, the lower 13 bits (low-order bits) are used to identify the specific location of a point within the region.
[0083] Spatial computation is transformed into bitwise operations by leveraging the characteristics of binary mathematics. By setting the region size to a power of 2, operations such as coordinate decomposition and region positioning can be directly completed using low-level instructions such as shifting and masking, avoiding complex multiplication and division operations.
[0084] Through a triple optimization architecture of "regular graphics - exponential size - bit width association," a binary transformation of spatial computation problems has been achieved. Bitwise operations directly replace multiplication and division, reducing the time complexity of region positioning to O(1). Using native processor bitwise operation instructions (shift, mask), a single calculation requires only 1-2 clock cycles, achieving nanosecond-level response. Integer binary operations avoid floating-point precision errors, ensuring millimeter-level positioning accuracy. Coordinate decomposition and region mapping processes have no precision loss, meeting high-precision navigation requirements. CPU computational load and memory access frequency are significantly reduced, with computational resource consumption reduced by over 90%. It is particularly suitable for embedded devices with limited computing power and large-scale device cluster deployments.
[0085] In one optional embodiment of this application, the relative position information includes the orientation of the current position relative to the geometric center of the current region, and may further include: comparing the low-order portion with the coordinate value of the geometric center to obtain the orientation of the current position relative to the geometric center.
[0086] Relative position information is specifically represented by the relative relationship between the current position and the geometric center of the current region. Orientation relative to the geometric center refers to the directional relationship between the current position and the center point of the current region, including the quadrant it is in and its position on the center line.
[0087] The coordinates of the geometric center refer to the specific numerical value of the center point of the region in the current region's coordinate system. For example, for a region with a side length of 8192 mm, the coordinates of the geometric center are (4096, 4096).
[0088] Specifically, this can be divided into two steps. First, calculate the center coordinates: obtain the region's size parameters (e.g., 8192 mm), calculate the geometric center coordinates (size / 2, e.g., 4096 mm), and establish an internal coordinate system for the region. Second, compare and determine the position: extract the lower-order portion of the current position's coordinates, compare it with the center coordinates, and determine the orientation based on the comparison result.
[0089] For example, taking the positioning of an AGV within a region as an example: the lower part of the coordinates of the AGC's current position is (5424, 3640), and the coordinates of the geometric center of the region are (4096, 4096). Comparison results: x=5424>4096 (east), y=3640<4096 (south). Relative orientation: southeast quadrant.
[0090] In an optional embodiment of the invention, the current region is divided into multiple partitions by a virtual boundary line passing through the geometric center of the region.
[0091] A virtual boundary line is an imaginary dividing line drawn through the geometric center of a region, used to divide the region into logical sub-units.
[0092] A partition refers to a logical sub-region into which a region is divided by a virtual boundary line, such as... Figure 8 As shown, it typically forms four quadrants (such as upper left, upper right, lower left, and lower right) and the dividing line itself.
[0093] Step 203: If the current location is inside the target partition, determine that the candidate region subset includes the current region and the adjacent regions bordering the target partition.
[0094] In this embodiment, the target partition is a specific partition unit where the current location is situated, and its location determines the direction of the adjacent regions to be searched. Adjacent regions refer to those sharing a boundary with the target partition, and their selection is based on the principle of spatial connectivity.
[0095] In this embodiment of the application, the current location of the mobile device is located inside the target partition, so the strategy for selecting the region is to select the current region and all adjacent regions that border the target partition.
[0096] For example, such as Figure 9 As shown, when the mobile device is located within the Northeast quadrant, the selection includes the current area, its east, north, and northeast adjacent areas (a total of 4 areas). When the mobile device is located within the Southeast quadrant, the selection includes the current area, its east, south, and southeast adjacent areas (a total of 4 areas). When the mobile device is located within the Northwest quadrant, the selection includes the current area, its west, north, and northwest adjacent areas (a total of 4 areas). When the mobile device is located within the Southwest quadrant, the selection includes the current area, its west, south, and southwest adjacent areas (a total of 4 areas).
[0097] Step 204: When the current location is located on the virtual boundary line, the candidate region subset includes the current region and an adjacent region bordering the virtual boundary line.
[0098] In this embodiment of the application, if the current location of the mobile device is located on a horizontal or vertical virtual boundary line, then the region selection strategy is to select an adjacent region that borders the current region and the virtual boundary line.
[0099] For example, such as Figure 10 As shown, the movable device is located on the dividing lines after the segmentation, that is, on the dividing lines in the four directions of the geometric center. Figure 11As shown, when the mobile device is located on the right virtual boundary, select the current area and the adjacent area to the east (2 areas in total). When the mobile device is located on the left virtual boundary, select the current area and the adjacent area to the west (2 areas in total). When the mobile device is located on the top virtual boundary, select the current area and the adjacent area to the north (2 areas in total). When the mobile device is located on the bottom virtual boundary, select the current area and the adjacent area to the south (2 areas in total).
[0100] Step 205: If the current position coincides with the geometric center, the candidate region subset includes only the current region.
[0101] In this embodiment of the application, the current position of the mobile device is completely coincident with the geometric center of the current region, so the region selection strategy is to select only the current region (one region in total).
[0102] For example, such as Figure 12 As shown, when the mobile device is located at the center point (4096,4096), only the current area needs to be searched.
[0103] This reduces the average number of search regions from 9 to below 4, decreasing computation by more than 55%. The search strategy is dynamically adjusted based on the precise location of the device, enabling "on-demand searching." Unnecessary region queries are reduced, lowering average computation time by more than 60%. For example, through the optimized partitioning mechanism in this solution, the number of points to be processed is reduced from 62,500 in traditional methods to a maximum of 64, achieving an "algorithm performance improvement of more than 1000 times."
[0104] Step 206: Based on the navigation positioning points of the mobile device within the candidate region subset, determine the target navigation positioning point that satisfies the proximity condition with the current location.
[0105] In this embodiment of the invention, the specific implementation of this step can be found in the description of the foregoing embodiments, and will not be repeated here.
[0106] According to the embodiments of this application, the coordinate values of the current position are first decomposed to obtain a high-order portion for determining the region and a low-order portion for positioning within the region. The bit width of the low-order portion is determined by the size of the region. Based on the high-order portion and the region identifiers of the multiple regions, a matching current region is determined. The region identifier of each region is the high-order portion of the coordinate values of any point within the region. When the current position is within a target partition, the candidate region subset includes the current region and an adjacent region bordering the target partition. When the current position is on the virtual boundary line, the candidate region subset includes the current region and an adjacent region bordering the virtual boundary line. When the current position coincides with the geometric center, the candidate region subset includes only the current region. Finally, based on the navigation positioning points of the mobile device within the candidate region subset, a target navigation positioning point that satisfies the proximity condition of the current position is determined. This scheme reduces the algorithm complexity from the traditional O(n) to near O(1) level through a three-level optimization mechanism of regional pre-screening, dynamic range optimization, and precise calculation. It achieves an order-of-magnitude improvement in computational efficiency while ensuring positioning accuracy, and is particularly suitable for resource-constrained mobile device platforms.
[0107] It should be noted that the method for determining navigation points of a mobile device provided in this application embodiment can be executed by a device for determining navigation points of a mobile device, or by a control module in the device for executing the method for determining navigation points of a mobile device. This application embodiment uses the execution of the method for determining navigation points of a mobile device by a device for determining navigation points of a mobile device as an example to illustrate the method for determining navigation points of a mobile device provided in this application embodiment.
[0108] Reference Figure 13 This diagram illustrates a structural block diagram of an embodiment of a device for determining navigation and positioning points of a mobile device, provided in another embodiment of this application. Specifically, it may include: The region determination module 301 is used to determine the current region corresponding to the current location based on the current location of the mobile device; wherein the current region is one of a plurality of regions. The subset determination module 302 is used to determine a subset of candidate regions from a candidate set that includes the current region and a plurality of adjacent regions immediately adjacent to the current region, based on the relative position information of the current position within the current region; wherein the number of regions included in the subset of candidate regions is less than the total number of regions in the candidate set; The positioning point determination module 303 is used to determine a target navigation positioning point that satisfies the proximity condition with the current location based on the navigation positioning points of the mobile device within the candidate region subset.
[0109] Optionally, the region determination module includes: The decomposition submodule is used to decompose the coordinate values of the current position to obtain a high-order part for determining the region and a low-order part for positioning within the region; wherein the bit width of the low-order part is determined by the size of the region. The region determination submodule is used to determine the matching current region based on the high-order portion and the region identifiers of the multiple regions; wherein, the region identifier of each region is the high-order portion of the coordinate value of any point within the region.
[0110] Optionally, the size of the region is determined based on a preset search distance threshold.
[0111] Optionally, the shape of the region is a regular graphic, and its size is set to a power of 2 units in length, and the bit width of the low-bit portion is determined by the power of the size of the region.
[0112] Optionally, the relative position information includes the orientation of the current position relative to the geometric center of the current region, and the device further includes: The comparison module is used to compare the low-order portion with the coordinate value of the geometric center to obtain the orientation of the current position relative to the geometric center.
[0113] Optionally, the current region is divided into multiple partitions by a virtual boundary line passing through the geometric center of the region, and the subset determination module includes: The first subset determination submodule is used to determine, when the current location is within the target partition, that the candidate region subset includes the current region and adjacent regions bordering the target partition; and / or, The second subset determination submodule is configured to, when the current location is located on the virtual boundary line, determine that the candidate region subset includes the current region and an adjacent region bordering the virtual boundary line; and / or, The third subset determination submodule is used to determine that, when the current position coincides with the geometric center, the candidate region subset includes only the current region.
[0114] Optionally, the device further includes: The partitioning module is used to divide the navigation space of the mobile device into the multiple regions before determining the current region corresponding to the current location based on the current location of the mobile device; The relationship establishment module is used to establish the association between each region containing navigation points and the navigation points.
[0115] According to the embodiments of this application, firstly, the current region corresponding to the current location is determined based on the current location of the mobile device; wherein, the current region is one of multiple regions. Then, based on the relative position information of the current location within the current region, a subset of candidate regions is determined from a candidate set containing the current region and multiple adjacent regions; wherein, the number of regions contained in the subset of candidate regions is less than the total number of regions in the candidate set. Finally, based on the navigation positioning point of the mobile device within the subset of candidate regions, a target navigation positioning point that satisfies the proximity condition to the current location is determined. This scheme reduces the algorithm complexity from the traditional O(n) level to near O(1) through a three-level optimization mechanism of region pre-screening, dynamic range optimization, and precise calculation, achieving an order-of-magnitude improvement in computational efficiency while maintaining positioning accuracy, making it particularly suitable for resource-constrained mobile device platforms.
[0116] As the device embodiment is basically similar to the method embodiment, the description is relatively simple, and relevant parts can be found in the description of the method embodiment.
[0117] Figure 14 This is a structural block diagram illustrating an electronic device 700 for determining navigation positioning points of a mobile device, according to an exemplary embodiment. For example, the electronic device 700 may be a computer.
[0118] Reference Figure 14 The electronic device 700 may include one or more of the following components: a processing component 702, a memory 704, a power supply component 706, a multimedia component 708, an audio component 710, an input / output (I / O) interface 712, a sensor component 714, and a communication component 716.
[0119] Processing component 702 typically controls the overall operation of electronic device 700, such as operations associated with display, telephone calls, data communication, camera operation, and recording operations. Processing component 702 may include one or more processors 720 to execute instructions to complete all or part of the steps of the methods described above. Furthermore, processing component 702 may include one or more modules to facilitate interaction between processing component 702 and other components. For example, processing component 702 may include a multimedia module to facilitate interaction between multimedia component 708 and processing component 702.
[0120] Memory 704 is configured to store various types of data to support the operation of device 700. Examples of this data include instruction messages, pictures, videos, etc., for any application or method operating on electronic device 700. Memory 704 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.
[0121] Power supply component 706 provides power to various components of electronic device 700. Power supply component 706 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to electronic device 700.
[0122] Multimedia component 708 includes a screen that provides an output interface between the electronic device 700 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touchscreen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors may sense not only the boundaries of the touch or swipe action but also the duration and pressure associated with the touch or swipe operation.
[0123] Audio component 710 is configured to output and / or input audio signals. For example, audio component 710 includes a microphone (MIC) configured to receive external audio signals when electronic device 700 is in an operating mode, such as call mode, recording mode, and voice recognition mode. The received audio signals may be further stored in memory 704 or transmitted via communication component 716. In some embodiments, audio component 710 also includes a speaker for outputting audio signals.
[0124] I / O interface 712 provides an interface between processing component 702 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to, home buttons, volume buttons, power buttons, and lock buttons.
[0125] Sensor assembly 714 includes one or more sensors for providing state assessments of various aspects of electronic device 700. For example, sensor assembly 714 may detect the on / off state of device 700, the relative positioning of components such as the display and keypad of electronic device 700, changes in position of electronic device 700 or a component of electronic device 700, the presence or absence of user contact with electronic device 700, orientation or acceleration / deceleration of electronic device 700, and temperature changes of electronic device 700. Sensor assembly 714 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. Sensor assembly 714 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, sensor assembly 714 may also include an accelerometer, gyroscope, magnetometer, pressure sensor, or temperature sensor.
[0126] Communication component 716 is configured to facilitate wired or wireless communication between electronic device 700 and other devices. Electronic device 700 can access wireless networks based on communication standards, such as WiFi, 2G, or 3G, or combinations thereof. In one exemplary embodiment, communication component 716 receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, communication component 716 also includes a near-field communication (NFC) module to facilitate short-range communication. For example, the NFC module may be implemented based on radio frequency identification (RFID) technology, Infrared Data Association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
[0127] In an exemplary embodiment, the electronic device 700 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the methods described above.
[0128] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 704 including instructions, which can be executed by a processor 720 of an electronic device 700 to perform the above-described method. For example, the non-transitory computer-readable storage medium may be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage device, etc.
[0129] A non-transitory computer-readable storage medium, when instructions in the storage medium are executed by a terminal's processor, enables the terminal to perform a method for determining navigation and positioning points of a mobile device, the method comprising: Based on the current location of the mobile device, determine the current region corresponding to the current location; wherein, the current region is one of multiple regions. Based on the relative position information of the current location within the current region, a subset of candidate regions is determined from a candidate set that includes the current region and multiple adjacent regions immediately next to the current region; wherein the number of regions contained in the subset of candidate regions is less than the total number of regions in the candidate set; Based on the navigation positioning points of the mobile device within the candidate region subset, a target navigation positioning point that satisfies the proximity condition with the current location is determined.
[0130] Optionally, the step of determining the current region corresponding to the current location based on the current location of the mobile device; wherein, the current region is one of a plurality of regions, including: The coordinates of the current position are decomposed to obtain a high-order part for determining the region and a low-order part for positioning within the region; wherein the bit width of the low-order part is determined by the size of the region. The matching current region is determined based on the high-order portion and the region identifiers of the multiple regions; wherein, the region identifier of each region is the high-order portion of the coordinate value of any point within the region.
[0131] Optionally, the size of the region is determined based on a preset search distance threshold.
[0132] Optionally, the shape of the region is a regular graphic, and its size is set to a power of 2 units in length, and the bit width of the low-bit portion is determined by the power of the size of the region.
[0133] Optionally, the relative position information includes the orientation of the current position relative to the geometric center of the current region, and the method further includes: The coordinates of the lower part are compared with the coordinates of the geometric center to obtain the orientation of the current position relative to the geometric center.
[0134] Optionally, the current region is divided into multiple partitions by a virtual boundary line passing through the geometric center of the region. The step of determining a subset of candidate regions from a candidate set containing the current region and multiple adjacent regions based on the relative position information of the current location within the current region includes: If the current location is within the target partition, the candidate region subset is determined to include the current region and adjacent regions bordering the target partition; and / or, If the current location is on the virtual boundary line, the candidate region subset includes the current region and an adjacent region bordering the virtual boundary line; and / or, When the current position coincides with the geometric center, the candidate region subset includes only the current region.
[0135] Optionally, before determining the current region corresponding to the current location based on the current location of the mobile device, the method further includes: The navigation space of the mobile device is divided into the multiple regions; Establish a relationship between the region and the navigation point for each region containing the navigation point.
[0136] A computer program product, when run on an electronic device, causes a processor to execute the steps of the method described in the first aspect.
[0137] The various embodiments in this specification are described in a progressive manner. Each embodiment focuses on the differences from other embodiments. For the same or similar parts between the various embodiments, please refer to each other.
[0138] Those skilled in the art will understand that embodiments of this application can be provided as methods, apparatus, or computer program products. Therefore, embodiments of this application can take the form of entirely hardware embodiments, entirely software embodiments, or embodiments combining software and hardware aspects. Furthermore, embodiments of this application can take the form of computer program products implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0139] This application describes embodiments with reference to flowchart illustrations and / or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of this application. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing terminal device to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal device, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0140] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing terminal device to operate in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0141] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal equipment, causing a series of operational steps to be performed on the computer or other programmable terminal equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable terminal equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0142] Although preferred embodiments of the present application have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments, as well as all changes and modifications falling within the scope of the embodiments of the present application.
[0143] Finally, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or terminal device that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or terminal device. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or terminal device that includes said element.
[0144] The foregoing has provided a detailed description of a method for determining navigation and positioning points of a mobile device, a device for determining navigation and positioning points of a mobile device, an electronic device, and a readable storage medium provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.
Claims
1. A method for determining navigation and positioning points for a mobile device, characterized in that, The method includes: Based on the current location of the mobile device, determine the current region corresponding to the current location; wherein, the current region is one of multiple regions. Based on the relative position information of the current location within the current region, a subset of candidate regions is determined from a candidate set that includes the current region and multiple adjacent regions immediately next to the current region; wherein the number of regions contained in the subset of candidate regions is less than the total number of regions in the candidate set; Based on the navigation positioning points of the mobile device within the candidate region subset, a target navigation positioning point that satisfies the proximity condition with the current location is determined.
2. The method according to claim 1, characterized in that, Determining the current region corresponding to the current location based on the current location of the mobile device includes: The coordinates of the current position are decomposed to obtain a high-order part for determining the region and a low-order part for positioning within the region; wherein the bit width of the low-order part is determined by the size of the region. The matching current region is determined based on the high-order portion and the region identifiers of the multiple regions; wherein, the region identifier of each region is the high-order portion of the coordinate value of any point within the region.
3. The method according to claim 2, characterized in that, The size of the region is determined based on a preset search distance threshold.
4. The method according to claim 2, characterized in that, The region is a regular shape, and its size is set to a power of 2 units. The bit width of the lower bit portion is determined by the power of the region's size.
5. The method according to claim 2, characterized in that, The relative position information includes the orientation of the current position relative to the geometric center of the current region, and the method further includes: The coordinates of the lower part are compared with the coordinates of the geometric center to obtain the orientation of the current position relative to the geometric center.
6. The method according to any one of claims 1-5, characterized in that, The current region is divided into multiple partitions by a virtual boundary line passing through the geometric center of the region. The step of determining a subset of candidate regions from a candidate set containing the current region and multiple adjacent regions based on the relative position information of the current location within the current region includes: If the current location is within the target partition, the candidate region subset is determined to include the current region and adjacent regions bordering the target partition; and / or, If the current location is located on the virtual boundary line, the candidate region subset includes the current region and an adjacent region bordering the virtual boundary line; and / or, If the current position coincides with the geometric center, the candidate region subset includes only the current region.
7. The method according to claim 1, characterized in that, Before determining the current region corresponding to the current location based on the current location of the mobile device, the method further includes: The navigation space of the mobile device is divided into the multiple regions; Establish a relationship between the region and the navigation point for each region containing the navigation point.
8. The method according to claim 1, characterized in that, After determining a target navigation point that satisfies the proximity condition with the current location based on the navigation positioning points of the mobile device within the subset of candidate regions, the method further includes: The navigation path of the mobile device is determined based on the target navigation location.
9. A device for determining navigation and positioning points of a mobile device, characterized in that, The device includes: The region determination module is used to determine the current region corresponding to the current location based on the current location of the mobile device; wherein the current region is one of a plurality of regions. The subset determination module is used to determine a subset of candidate regions from a candidate set that includes the current region and a plurality of adjacent regions immediately adjacent to the current region, based on the relative position information of the current position within the current region; wherein the number of regions included in the subset of candidate regions is less than the total number of regions in the candidate set; The positioning point determination module is used to determine a target navigation positioning point that satisfies the proximity condition with the current location based on the navigation positioning points of the mobile device within the candidate region subset.
10. An electronic device, characterized in that, It includes a processor, a memory, and a program or instructions stored in the memory and executable on the processor, wherein the program or instructions, when executed by the processor, implement the steps of the method for determining navigation and positioning points of a mobile device as described in any one of claims 1-8.
11. A readable storage medium, characterized in that, The readable storage medium stores a program or instructions that, when executed by a processor, implement the steps of the method for determining navigation and positioning points of a mobile device as described in any one of claims 1-8.