Map construction method, apparatus, device, and computer-readable storage medium

By using a Wi-Fi RTT ranging device to collect measurement information at the nanosecond level in SLAM technology, and combining the direction of movement and propagation characteristics, a density clustering algorithm is used to construct a map, which solves the problems of high hardware cost, poor usability and high complexity of SLAM technology, and achieves efficient and simplified map construction.

CN115839712BActive Publication Date: 2025-10-21OPPO CHONGQING INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211602829.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-13
Publication Date
2025-10-21
Estimated Expiration
2042-12-13

AI Technical Summary

Technical Problem

SLAM technology relies on sensor data as input, resulting in high hardware costs, poor usability and portability, complex algorithms, high development difficulty, and high map building complexity.

Method used

By determining the anchor points and movement points within the area to be constructed, measurement information is collected at the nanosecond level using a Wi-Fi RTT ranging device, geometric figures are drawn, and the coordinates of the location points are determined by combining the movement direction and propagation characteristics. Finally, a map is constructed using a density clustering algorithm, reducing the complexity of data collection and processing.

Benefits of technology

It reduces the complexity of map building, simplifies data collection and processing, and improves the efficiency and accuracy of map building.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115839712B_ABST
    Figure CN115839712B_ABST
Patent Text Reader

Abstract

Embodiments of the present application disclose a map construction method, device and equipment and a computer readable storage medium. The method comprises: determining two anchor points and a mobile point in a region to be constructed; taking each anchor point as a geometric center, determining two geometric figures based on measurement information of the mobile point and each anchor point at two adjacent time points; determining position point coordinates of the mobile point at the two time points based on a moving direction of the mobile point and four geometric figures corresponding to the two anchor points; for each of the two time points, determining a coordinate pair of the mobile point at each time point based on the position point coordinates of the mobile point at the time point, coordinates of the two anchor points and propagation characteristics between the mobile point and the two anchor points determined based on the measurement information; and constructing a map of the region to be constructed based on the coordinate pairs of at least one mobile point at at least two continuous different time points.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a map construction method, apparatus, device, and computer-readable storage medium. Background Art

[0002] Indoor mapping technology includes Simultaneous Localization and Mapping (SLAM) technology, which can be divided into laser SLAM and visual SLAM according to the type of sensors used when building the map. The SLAM system consists of five parts: sensor data module, visual odometry calculation method, back-end optimization algorithm, mapping module and loop detection module. Among them, the sensor data module is mainly used to collect various raw data in the environment, such as laser scanning data, video image data, etc.; the visual odometry calculation method includes the application of algorithms such as feature matching and direct registration; the back-end optimization algorithm includes filtering and graph optimization algorithms, which are used to receive the camera pose measured by the visual odometry at different times, as well as the loop detection information, and optimize them to obtain a globally consistent trajectory and map; the mapping module is used to construct a three-dimensional map, and the loop detection module eliminates spatial cumulative errors.

[0003] However, SLAM technology relies on sensor data as input, resulting in high hardware costs. SLAM devices are often bulkier than devices like mobile phones and watches. Visual SLAM relies on visible light and struggles to operate in the dark or in textureless areas. Consequently, SLAM systems are less user-friendly and less portable. Furthermore, SLAM algorithms are complex and challenging to develop, making map building with SLAM technology more complex. Summary of the Invention

[0004] The embodiments of the present application provide a map construction method, apparatus, device, and computer-readable storage medium, which reduce the complexity of map construction.

[0005] The technical solution of the embodiment of the present application is implemented as follows:

[0006] In a first aspect, an embodiment of the present application provides a map construction method, the method comprising: determining two anchor points and a moving point within an area to be constructed; taking each of the anchor points as the geometric center, determining two geometric figures based on the measurement information of the moving point and each of the anchor points at two adjacent moments; determining the position coordinates of the moving point at the two moments respectively based on the moving direction of the moving point and the four geometric figures corresponding to the two anchor points; for each of the two moments, determining the coordinate pair of the moving point at each moment based on the position coordinates of the moving point at the moment, the coordinates of the two anchor points, and the propagation characteristics between the moving point and the two anchor points determined based on the measurement information; constructing a map of the area to be constructed based on the coordinate pair of at least one moving point at at least two consecutive different moments.

[0007] In a second aspect, an embodiment of the present application provides a map construction device, which includes: a geometric figure determination module for determining two anchor points and a moving point in the area to be constructed; taking each of the anchor points as the geometric center, determining two geometric figures based on the measurement information of the moving point and each of the anchor points at two adjacent moments; a position point coordinate determination module for determining the position point coordinates of the moving point at the two moments respectively based on the moving direction of the moving point and the four geometric figures corresponding to the two anchor points; a coordinate pair determination module for determining, for each of the two moments, the coordinates of the moving point at the moment, the coordinates of the two anchor points, and the propagation characteristics between the moving point and the two anchor points determined based on the measurement information; a construction module for constructing a map of the area to be constructed based on the coordinate pair of at least one moving point at at least two consecutive different moments.

[0008] In a third aspect, an embodiment of the present application provides a map construction device, comprising: a memory for storing an executable computer program; and a processor for implementing the map construction method described in the first aspect when executing the executable computer program stored in the memory.

[0009] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium storing a computer program for implementing the map construction method described in the first aspect when executed by a processor.

[0010] The present invention provides a map construction method, apparatus, device, and computer-readable storage medium. According to the solution provided in the present invention, the method includes: determining two anchor points and a moving point within the area to be constructed; using each anchor point as the geometric center, determining two geometric figures based on measurement information collected between the moving point and each anchor point at two adjacent moments; the geometric figures are drawn using measurement information collected at two adjacent moments, eliminating the need for laser scanning, video images, or other data, and can be accomplished using any number of ranging devices that support inter-device ranging, thereby reducing the difficulty and complexity of data collection. Based on the moving point's direction of movement and the four geometric figures corresponding to the two anchor points, the coordinates of the moving point's position at two moments in time are determined. For each of the two moments in time, a coordinate pair of the moving point is determined based on the moving point's position coordinates at that moment, the coordinates of the two anchor points, and the propagation characteristics between the moving point and the two anchor points, determined based on the measurement information. Using the two anchor points as reference points, the position of each moving point at each moment is determined in combination with the moving point's direction of movement and the four geometric figures. The propagation characteristics, reference points, and position points are recorded together for the moving point at that moment, resulting in the movement trajectories of multiple moving points at at least two consecutive moments in time. A map of the area to be constructed is constructed based on the coordinate pairs of at least one moving point at at least two consecutive moments in time. This solution only requires collecting measurement information between multiple moving points and anchor points at each moment in time, combining the moving points' direction of movement and propagation characteristics to determine the movement trajectories of multiple moving points at at least two consecutive moments in time, and then clustering these trajectories to determine the corresponding map of the area to be constructed. This eliminates the need for complex data collection and processing, reducing the complexity of map construction. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] Figure 1 A flowchart of optional steps of a map construction method provided in an embodiment of the present application;

[0012] Figure 2 An optional schematic diagram of a measurement process provided in an embodiment of the present application;

[0013] Figure 3 An exemplary schematic diagram of a propagation characteristic provided in an embodiment of the present application;

[0014] Figure 4 A flowchart of optional steps of another map construction method provided in an embodiment of the present application;

[0015] Figure 5 A flowchart of optional steps of another map construction method provided in an embodiment of the present application;

[0016] Figure 6 An exemplary schematic diagram of a location point provided in an embodiment of the present application;

[0017] Figure 7 An exemplary schematic diagram of a clustering result provided in an embodiment of the present application;

[0018] Figure 8 A flowchart of optional steps of another map construction method provided in an embodiment of the present application;

[0019] Figure 9 This is a schematic diagram of an optional structure of a map construction device provided in an embodiment of the present application;

[0020] Figure 10 A schematic diagram of the structure of a map building device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0021] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. It should be understood that some of the embodiments described here are only used to explain the technical solutions of the present application and are not used to limit the technical scope of the present application.

[0022] In order to better understand the map construction method provided in the embodiment of the present application, before introducing the technical solution of the embodiment of the present application, the application background and related technologies are first explained.

[0023] Among related technologies, SLAM technology is used by robots to perform localization, mapping, and navigation in unknown environments. SLAM technology can be widely used in robotics, drones, autonomous driving, unmanned driving, augmented reality (AR), and virtual reality (VR), relying on sensors to achieve autonomous positioning, mapping, and path planning.

[0024] The present application embodiment provides a map construction method, such as Figure 1 As shown, Figure 1 This is a flowchart of a map construction method provided in an embodiment of the present application. The map construction method includes the following steps:

[0025] S101: Determine two anchor points and a moving point in the area to be constructed.

[0026] In an embodiment of the present application, the two anchor points are any two ranging devices that are in a stationary state at two adjacent moments in the area to be constructed, and the moving point represents any one ranging device that is in a moving state at two adjacent moments in the area to be constructed. The area to be constructed is the area where the map needs to be constructed, and can also be called the target area. The motion state (including stationary and moving) of the ranging devices in the area to be constructed is determined based on the sensor parameters (e.g., acceleration) of the ranging devices in the area to be constructed. For example, it is possible to know which ranging devices are in a stationary state and which ranging devices are in a moving state at a certain moment. The ranging devices in the area to be constructed support the Fine Timing Measurement (FTM) protocol and have a ranging function. A connection can be established between the two ranging devices in the form of broadcasting to determine the measurement information between the two at each moment. Any two ranging devices that are in a stationary state at two adjacent moments in the area to be constructed are selected as two anchor points. The ranging devices that are in a moving state at two adjacent moments in the area to be constructed are regarded as moving points.

[0027] In an embodiment of the present application, the ranging device has a wireless fidelity round trip time (Wi-Fi RTT) function, and the round trip time (RTT) represents the sum of the time it takes for data to travel from the sender to the receiver on the link and then from the receiver back to the sender. The ranging device can broadcast the corresponding ranging request (FTM request) through the FTM protocol (for example, the FTM protocol in Wi-Fi802.11mc). The ranging device includes but is not limited to terminals (for example, mobile phones, tablets, laptops, game consoles and wearable devices, etc.), routers, access points (AP), and other devices with Wi-Fi RTT functions and supporting the FTM protocol, and this embodiment of the present application does not limit this. The measurement of the above-mentioned measurement information can be between mobile phones, between mobile phones and routers, between mobile phones and access points, between routers and access points, and any device that can support the Wi-Fi RTT function can be used.

[0028] The application scenario of the map construction method provided in the embodiment of the present application can be indoors, or any area with relatively consistent geographical level and where the activity of the device can be determined, in a fixed indoor or outdoor area, such as an open-air activity venue, sports stadium, football field, etc.

[0029] It should be noted that, since the intervals between two adjacent moments in this solution are in the nanosecond order, if a distance measuring device is stationary at two adjacent moments, it means that it is stationary during the time period between the two adjacent moments; if a distance measuring device is moving at two adjacent moments, it means that it is moving during the time period between the two adjacent moments. When selecting anchor points and moving points, the anchor point in the embodiments of this application refers to a relatively stationary distance measuring device, and the moving point refers to a relatively moving distance measuring device.

[0030] S102 , taking each anchor point as a geometric center, and determining two geometric figures based on measurement information of the moving point and each anchor point at two adjacent moments.

[0031] In this embodiment, for each moving point, two geometric figures are determined based on the measurement information of each anchor point and the moving point at the current moment, with each anchor point as the geometric center. Two more geometric figures are determined based on the measurement information of each anchor point and the moving point at the next moment, resulting in four geometric figures. The current and next moments are adjacent moments. Four geometric figures are drawn for each moving point within the area to be constructed.

[0032] In an embodiment of the present application, the measurement information includes the measured distance between the two ranging devices and also reflects the propagation characteristics between the two ranging devices. The propagation characteristics include line of sight (LOS) and non-line of sight (NLOS). Under line of sight conditions, the wireless signal propagates in a straight line between the transmitter and the receiver without obstruction. Non-line of sight is the opposite of line of sight. Under non-line of sight conditions, the direct path of the wireless signal between the transmitter and the receiver is blocked. The measured distance represents the signal propagation distance. Under line of sight conditions, it can reflect the actual distance between the two ranging devices. Under non-line of sight conditions, the measured distance needs to be combined with the distance loss corresponding to the non-line of sight to determine the actual distance between the two points. With the anchor point as the geometric center, based on the measured distance and propagation characteristics in the measurement information, the boundary of the geometric figure can be determined. The boundary of the geometric figure can reflect the possible position of the moving point at this moment. The distances between the points on the boundary and the anchor point are the same. The geometric figure can be a circle.

[0033] In the embodiment of the present application, the measurement process between the ranging devices is very short, at the nanosecond level. When measuring distance at a certain moment, any ranging device (as a broadcasting end) in the area to be constructed can broadcast to the surrounding area, and other devices within the broadcast range listen to the broadcast and establish a connection (not a communication connection here, but a Wi-Fi RTT connection) in response to the ranging device on the broadcasting end, thereby completing the measurement process. Figure 2 As shown, Figure 2An optional schematic diagram of a measurement process provided in an embodiment of the present application.

[0034] For example, Figure 2 The ranging devices in the ranging scenario include mobile phones (PHONE) and access points (AP). Both PHONE and AP support the Wi-Fi 802.11mc protocol. The measurement process between PHONE and AP over time (TIME) is used as an example to illustrate. PHONE is the broadcast end, broadcasting to the surrounding ( Figure 2 (shown as an FTM request in the figure), the surrounding APs listen to the broadcast and respond to the broadcaster (i.e., the phone). At time t1, the AP sends an FTM message to the phone, a transmission route called a ping. At time t2, the phone receives the FTM message. At time t3, the phone sends an acknowledgment character (ACK) to the AP, a transmission route called a pong, which carries the timestamps of time t2 and time t3. At time t4, the AP receives the ACK and knows the timestamps of time t2 and time t3. The AP then sends an FTM message to the phone, which carries the timestamps of time t1 and time t4. The AP can determine the distance to the phone based on the timestamps of its own message transmission and reception (times t1 and t4) and the timestamps returned by the phone (times t2 and t3). The phone can determine the distance to the AP based on the timestamps of its own message transmission and reception (times t2 and t3) and the timestamps returned by the AP (times t1 and t4). Figure 2 The figure shows a complete measurement process. The distance is calculated as follows: 2×distance=((t4-t1)-(t3-t2))×c, where t4-t1 represents the total round trip time, t3-t2 represents the turnaround time, and c represents the propagation speed of the electromagnetic wave, c=3.0×10 8 .

[0035] In the embodiment of the present application, the distance between mobile devices is measured using the 802.11mc FTM protocol. Figure 2 Here, t1, t2, t3, and t4 are nanosecond-level timestamps, representing the time the signal leaves the sender or reaches the receiver, respectively. The FTM protocol calculates the physical distance between two devices by calculating the signal propagation time between the sender and receiver, or RTT. An FTM measurement is typically performed multiple times, for example, eight times, and the average of these measurements is used as the final measured distance. The time required to complete an FTM measurement is also in the nanosecond range.

[0036] S103 : Determine the position coordinates of the moving point at two moments based on the moving direction of the moving point and the four geometric figures corresponding to the two anchor points.

[0037] In the embodiment of the present application, taking the mobile point as an example, the moving direction of the mobile point can be determined based on the acceleration sensor in the terminal. In order to establish a unified standard, the map construction method provided in the embodiment of the present application is performed in a plane, for example, a plane rectangular coordinate system parallel to the horizontal plane, and the four geometric figures drawn and the moving direction are in the same plane rectangular coordinate system. Take two anchor points as reference points and draw four geometric figures based on the measurement information of two adjacent moments. The geometric figures represent the possible positions of the mobile point at this moment. For example, the two anchor points include the first anchor point and the second anchor point, and the two adjacent moments include the current moment and the next moment. At the current moment, the first geometric figure is determined based on the measurement information between the mobile point and the first anchor point; the second geometric figure is determined based on the measurement information between the mobile point and the second anchor point; there is an intersection between the first geometric figure and the second geometric figure drawn based on the measurement information. At the current moment, the mobile point must appear on both the first geometric figure and the second geometric figure. At the next moment, a third geometric figure is determined based on the measurement information between the moving point and the first anchor point; a fourth geometric figure is determined based on the measurement information between the moving point and the second anchor point. The third and fourth geometric figures drawn based on the measurement information must intersect, and at the next moment, the moving point must appear on both the third and fourth geometric figures. Based on the above, the possible locations of the moving point can be determined. Combined with the moving point's direction of movement from the current moment to the next, the moving point's location at each moment is ultimately determined.

[0038] In an embodiment of the present application, for each moving point, the position of each moving point at each moment is determined by combining the moving direction of the moving point and the intersection of two geometric figures at the same moment in two adjacent moments. In this embodiment of the present application, the coordinates of the two anchor points and the radius of the geometric figure are known. The coordinates of the two anchor points use the coordinates of the previous moment. After determining the position of the moving point at two adjacent moments, the coordinates of the two position points can be determined based on the coordinates of the two anchor points and the intersection of the two geometric figures. This eliminates the need to collect complex data and complex processing procedures, reducing the complexity of determining the position points.

[0039] S104. For each of the two moments, determine the coordinate pair of the mobile point at each moment based on the position coordinates of the mobile point at the moment, the coordinates of the two anchor points, and the propagation characteristics between the mobile point and the two anchor points determined based on the measurement information.

[0040] In the embodiment of the present application, taking the example of two anchor points including a first anchor point and a second anchor point, and two adjacent moments including the current moment and the next moment, the measurement information includes first measurement information between the first anchor point and the mobile point at the current moment and second measurement information at the next moment, as well as third measurement information between the second anchor point and the mobile point at the current moment and fourth measurement information at the next moment. Based on the coordinates of each anchor point, the position coordinates of the mobile point at the current moment, and the propagation characteristics between the mobile point and the two anchor points determined based on the first measurement information and the third measurement information, a coordinate pair of the mobile point at the current moment is determined; based on the coordinates of each anchor point, the position coordinates of the mobile point at the next moment, and the propagation characteristics between the mobile point and the two anchor points determined based on the second measurement information and the fourth measurement information, a coordinate pair of the mobile point at the next moment is determined; the coordinate pair of the mobile point at two adjacent moments includes the coordinate pair of the mobile point at the current moment and the coordinate pair of the mobile point at the next moment.

[0041] In an embodiment of the present application, the measurement information includes the received signal strength indicator (RSSI), which reflects the strength (attenuation) of the signal during the propagation process. According to the statistical characteristics of the measurement information at each moment, the channel propagation model between the anchor point and the mobile point is classified to determine the propagation characteristics of the anchor point and the mobile point at each moment. The propagation characteristics are used to characterize whether the propagation path between the two ranging devices (anchor point and mobile point) has obstacles. Since the map construction method provided in the embodiment of the present application is to construct the boundary of the area to be constructed and the dividing line (also called the dividing line) within the area to be constructed, the propagation characteristics are counted as part of the coordinate pair to realize the construction of the pattern within the area to be constructed during clustering.

[0042] In the embodiment of the present application, the propagation characteristics include line-of-sight and non-line-of-sight. According to the positional relationship between the signal transmitter and receiver (receiver and transmitter), the channel propagation model can be divided into LOS and NLOS. Figure 3 As shown, Figure 3 This is an exemplary schematic diagram of a propagation characteristic provided in an embodiment of the present application. Figure 3 There are two propagation paths shown in Figure 1, one is under line-of-sight (LOS) conditions, with no obstruction between the two devices, and the other is under non-line-of-sight (NLOS) conditions, with obstruction between the two devices. Figure 3As shown in the figure, if the signal transmitter and receiver are located in the same space and the signal propagates unobstructed in a straight line, the channel model is LOS. If the signal encounters obstacles during propagation and cannot propagate in a straight line, the channel model is NLOS. By extracting statistical feature values ​​from the FTM protocol measurement values, the FTM measurement signals can be classified as LOS / NLOS, thereby determining the positional relationship between the mobile point and the anchor point (for example, the router and the mobile phone), assisting in map construction.

[0043] In an embodiment of the present application, taking the case where two adjacent moments include the current moment and the next moment, and the anchor points include the first anchor point and the second anchor point as an example, the coordinates of the first anchor point, the coordinates of the second anchor point, the position coordinates of the moving point at the current moment, the propagation characteristics of the moving point and the first anchor point at the current moment, and the propagation characteristics of the moving point and the second anchor point at the current moment are taken as the coordinate pair of the moving point at the current moment. The coordinates of the first anchor point, the coordinates of the second anchor point, the position coordinates of the moving point at the next moment, the propagation characteristics of the moving point and the first anchor point at the next moment, and the propagation characteristics of the moving point and the second anchor point at the next moment are taken as the coordinate pair of the moving point at the next moment. By recording the propagation characteristics, anchor points, and position points together in the moving point at the moment, the movement trajectory of each moving point at at least two consecutive moments can be obtained.

[0044] In the embodiment of the present application, combined with the LOS / NLOS classification results, according to [anchor point coordinates (including the coordinates of anchor points A1 and A2), moving point coordinates (including the moving point at t i , t i+1 The coordinates of any moving point at each moment include: the coordinates of each anchor point, the coordinates of the moving point, and the propagation characteristics of the moving point relative to each anchor point. For example, if the position of anchor point A1 is recorded as (x1, y1), the position of anchor point A2 is recorded as (x2, y2), and the moving point M is at t i The position at the moment is recorded as (x Mi ,y Mi ), t i The RTT measurement between the mobile point M and the anchor point A1 is NLOS, t i The RTT measurement between the moving point M and the anchor point A2 is LOS, so [(x1, y1), (x2, y2), (x Mi ,y Mi ),NLOS,LOS] as a mobile point at t i The coordinate pair at the moment represents the coordinate point (x1, y1) and the coordinate point (x Mi ,y Mi ) is the NLOS relationship, the coordinate point (x2, y2) and the coordinate point (x Mi ,y Mi) is the LOS relationship. Similarly, the moving point M at t i+1 The position at the moment is recorded as (x M(i+1) ,y M(i+1) ), t i+1 The RTT measurement between the mobile point M and the anchor point A1 is LOS, t i+1 The RTT measurement between the moving point M and the anchor point A2 is LOS, so [(x1, y1), (x2, y2), (x M(i+1) ,y M(i+1) ),LOS,LOS] as a moving point at t i+1 The coordinate pair at the moment represents the coordinate point (x1, y1) and the coordinate point (x M(i+1) ,y M(i+1) ) is the LOS relationship, the coordinate point (x2, y2) and the coordinate point (x M(i+1) ,y M(i+1) ) is the LOS relationship.

[0045] It should be noted that, assuming that at a certain moment some ranging devices are stationary and not serving as anchor points, since they are not moving points, the above process of determining the coordinate pairs of moving points does not need to be repeated. In the process of determining the coordinate pairs of the ranging devices at the current moment, if the ranging device's sensor determines that the ranging device is stationary and not serving as an anchor point, the coordinates of the ranging device at the previous moment can be directly used as the coordinates at the current moment.

[0046] In an embodiment of the present application, the propagation characteristics between the anchor point and the mobile point can be determined based on the received signal strength in the measurement information. The propagation characteristics help to determine the boundary line of the area to be constructed and the dividing line within the area to be constructed, for example, whether there are obstacles (for example, walls, doors, etc.) in the area to be constructed. For a certain moment, the coordinates of the two anchor points, the coordinates of the mobile point, and the propagation characteristics between the mobile point and each anchor point at that moment are used as the coordinate pair of the mobile point at that moment. Based on this, the coordinate pairs of multiple mobile points at different moments can be obtained. The coordinate pairs of multiple mobile points at different moments are used to perform cluster analysis to obtain clustering results. The data processing process is simple, which reduces the complexity of map construction.

[0047] In some embodiments, the two moments include the current moment and the moment immediately following the current moment; the coordinates of the anchor points in S104 can be obtained as follows: if the current moment is the initial moment, the coordinates of the two anchor points are preset coordinates; if the current moment is not the initial moment, the coordinates of the two anchor points are the coordinates of each anchor point at the previous moment.

[0048] In the embodiment of the present application, two adjacent moments include the current moment and the next moment after the current moment. Taking the current moment as moment t as an example, the moment before the current moment (i.e., the previous moment) is moment t-1, and the moment after the current moment (i.e., the next moment) is moment t+1, where 1 represents the time interval, and the corresponding time can be set by those skilled in the art according to actual conditions, for example, 0.1 nanoseconds (ns), 0.01ns, 0.05ns, etc. If moment t is the initial moment, a plane rectangular coordinate system is established with any of the two anchor points as the coordinate origin. The coordinates of the anchor point are (0, 0), and the actual distance between the two anchor points in the real scene is L. The coordinates of the other anchor point are determined in the plane rectangular coordinate system at a distance L from the coordinate origin (no need to consider the direction, as long as the distance between the two anchor points is L), thereby completing the process of setting the coordinates of the two anchor points at the initial moment. Of course, you can also first establish a plane rectangular coordinate system, and then use any point in the plane rectangular coordinate system as an anchor point. The actual distance L between the two anchor points in the real scene is determined in the plane rectangular coordinate system at a distance of L from one anchor point. The coordinates of the other anchor point are determined (no need to consider the direction, as long as the distance between the two anchor points is L), thereby completing the process of setting the coordinates of the two anchor points at the initial moment.

[0049] In an embodiment of the present application, if the current moment is not the initial moment, the coordinates of each anchor point are the coordinates of each anchor point in the previous moment, so that the continuity of the coordinate pairs can be guaranteed. When clustering the coordinate pairs of at least one moving point at at least two consecutive different moments, the relationship between multiple coordinate pairs can be found to complete the map construction process.

[0050] S105: Construct a map of the area to be constructed based on the coordinate pair of at least one moving point at at least two consecutive different moments.

[0051] In the embodiment of the present application, for each moving point, the coordinate pair of the moving point at each moment is determined according to the above S101-S104, thereby obtaining the coordinate pair of each moving point at each moment. It can also be understood that the above S101-S104 is a cyclic process until the coordinate pair of at least one moving point at different consecutive moments is obtained, wherein the number of consecutive different moments can be determined according to the number of ranging devices included in the area to be constructed, and the number of consecutive different moments is inversely proportional to the number of ranging devices included in the area to be constructed. After obtaining the coordinate pairs of each moving point at at least two consecutive different moments, a density-based clustering algorithm can be used to cluster the spatial coordinate pairs and connect areas with higher data density. The clustering method regards the cluster as a set of data objects with relatively high data point density. Since the boundary line in the area to be constructed cannot be passed through, the ranging device usually moves in an open area (where there is no boundary line) in the area to be constructed. The density-based clustering algorithm is used to cluster points with denser trajectories. For example, points with a short Euclidean distance and high similarity (including anchor points and moving points) are clustered together. A high similarity indicates that the propagation characteristics between these points and other points are similar. The space with dense trajectories in the cluster is the place where you can move in the area to be built, and the space with sparse trajectories in the cluster is the place where you cannot pass in the area to be built (it can be a wall or other insurmountable obstacle). The boundaries or envelopes of these classes are the boundaries of the area to be built and the dividing lines within the area to be built, and a map corresponding to the area to be built is constructed.

[0052] In an embodiment of the present application, density-based clustering algorithms include but are not limited to: Density-Based Spatial Clustering of Applications with Noise (DBSCAN), mean shift algorithm (MeanShift), DENCLUE, OPTICS and Gaussian Mixture Model (GMM). For example, taking the density-based clustering algorithm as DBSCAN, DBSCAN finds clusters by checking the ε neighborhood of each point in the data set. If the ε neighborhood of a point p contains more than MinPts points, a new cluster with point p as the core object is created, and DBSCAN repeatedly searches for objects that are directly density-reachable from these core objects. This process may involve the merging of some density-reachable clusters. The clustering process ends when no new points can be added to any cluster.

[0053] In an embodiment of the present application, the ultimate goal of clustering is to find suitable clusters on a known unlabeled data set and to reasonably divide these unlabeled data into suitable clusters. The similarity of samples within a cluster is very high, and the similarity between samples in different clusters is very low. The density-based clustering algorithm is used to connect adjacent areas with higher density, can effectively handle abnormal data, and is used to cluster spatial data. As long as the density of the adjacent area exceeds a certain threshold, clustering will continue to connect adjacent areas with sufficiently high density. This type of method regards each cluster as a high-density object area separated by a low-density area in the data space, that is, the cluster is regarded as the largest set of density-connected points. The density-based clustering algorithm does not need to know the number of clusters to be formed in advance, can find clusters of any shape, can identify noise points, and improve the accuracy of the clustering results. Then, a map corresponding to the area to be constructed is constructed based on the clustering results, without the need to collect complex data and complex processing procedures, thereby reducing the complexity of map construction.

[0054] It should be noted that the map construction method provided in the embodiment of the present application can be executed by any ranging device in the area to be constructed. For the sake of distinction, it is referred to as an execution device. The execution device can also serve as an anchor point or a moving point. Other ranging devices send measurement information to the execution device, and the execution device draws geometric figures, determines position points, determines coordinate pairs, and constructs clustered maps based on the measurement information. It is understandable that the map construction method provided in the embodiment of the present application can be executed by other devices with computing capabilities, which receive the measurement information sent by the ranging devices in the area to be constructed, thereby executing the process of drawing geometric figures, determining position points, determining coordinate pairs, and constructing clustered maps based on the measurement information. The embodiment of the present application does not limit the execution subject of the map construction method.

[0055] The ranging devices in the embodiments of the present application include but are not limited to mobile phones, routers, sports watches, etc. that support the FTM protocol. Among them, routers at fixed locations can be used as fixed anchor points in the embodiments of the present application, and mobile phones, sports watches, etc. can be used as anchor points or mobile points in the embodiments of the present application.

[0056] According to the solution provided by an embodiment of the present application, the method includes: determining two anchor points and a moving point within a region to be constructed; determining two geometric figures based on measurement information of the moving point and each anchor point at two adjacent moments, with each anchor point as the geometric center; drawing the geometric figures using measurement information collected at the two adjacent moments, without the need for laser scanning, video image data, or other data, and can be performed by any number of ranging devices that support inter-device ranging, thereby reducing the difficulty and complexity of data acquisition; determining the position coordinates of the moving point at the two moments based on the moving direction of the moving point and the four geometric figures corresponding to the two anchor points; determining a coordinate pair of the moving point at each moment based on the position coordinates of the moving point at the moment, the coordinates of the two anchor points, and the propagation characteristics between the moving point and the two anchor points determined based on the measurement information; using the two anchor points as reference points, combining the moving direction of the moving point and the four geometric figures, determining the position of each moving point at each moment; recording the propagation characteristics, reference points, and position points together with the moving point at that moment, thereby obtaining the movement trajectories of the multiple moving points at at least two consecutive moments. A map of the area to be constructed is constructed based on the coordinate pairs of at least one moving point at at least two consecutive moments. This solution only requires collecting measurement information between multiple moving points and anchor points at each moment. Combining the moving directions and propagation characteristics of the moving points, the movement trajectories of the multiple moving points at at least two consecutive moments are determined. These trajectories are then clustered to determine the map corresponding to the area to be constructed. This eliminates the need for complex data collection and processing, reducing the complexity of map construction.

[0057] In some embodiments, the above Figure 1 S102 may also include S1021-S1023. Figure 4 As shown, Figure 4 A flowchart of optional steps of another map construction method provided in an embodiment of the present application.

[0058] S1021. For each of the two moments, based on the statistical characteristics of the measurement information of the mobile point and each anchor point at each moment, classify the channel propagation model between the mobile point and each anchor point, and determine the propagation characteristics of the mobile point and each anchor point at each moment.

[0059] In an embodiment of the present application, the two anchor points include a first anchor point and a second anchor point, and the two adjacent moments include a current moment and a next moment. Based on the statistical characteristics of the measurement information between the mobile point and the first anchor point at the current moment, the channel propagation model is classified to determine the propagation characteristics of the mobile point and the first anchor point at the current moment; based on the statistical characteristics of the measurement information between the mobile point and the second anchor point at the current moment, the channel propagation model is classified to determine the propagation characteristics of the mobile point and the second anchor point at the current moment; based on the statistical characteristics of the measurement information between the mobile point and the first anchor point at the next moment, the channel propagation model is classified to determine the propagation characteristics of the mobile point and the first anchor point at the next moment; based on the statistical characteristics of the measurement information between the mobile point and the second anchor point at the next moment, the channel propagation model is classified to determine the propagation characteristics of the mobile point and the second anchor point at the next moment.

[0060] In the embodiment of the present application, the measurement information between the anchor point and the moving point at a moment is obtained through multiple measurements. A moment is in the nanosecond level, and the timestamp in each measurement process (such as Figure 2 The complete measurement process (shown in Figure 1) also takes place in nanoseconds. The measurement information includes statistical features from multiple measurements. Channel propagation models are classified based on the received signal strength (RSSI) in the measurement information and the statistical features of these multiple measurements. The received signal strength reflects the strength (attenuation) of the signal during propagation, and is used to determine the propagation characteristics of each anchor point and mobile point at each moment.

[0061] In some embodiments, the measurement information includes multiple round trip times and multiple received signal strengths corresponding to multiple measurements; Figure 4 Before S1021, the map construction method further includes the following steps: determining multiple distances based on multiple round-trip times and preset propagation speeds; extracting statistical features of the measurement information based on the multiple distances and multiple received signal strengths; and using the average of the multiple distances as the measurement distance in the measurement information.

[0062] In the embodiment of the present application, the measurement information at a moment (previous moment, current moment or next moment) can be obtained through multiple round trip measurements, as shown above. Figure 2 As shown in Figure 1, the timestamp corresponding to a round-trip measurement is very short, at the nanosecond level. Figure 2 A measurement process is shown. A measurement process corresponds to a round-trip time (time t1 and time t4) and multiple received signal strengths (including the received signal strength corresponding to time t2 and the received signal strength corresponding to time t4). A measurement information can include multiple measurement results (multiple round-trip times and multiple received signal strengths). Half of the product of the round-trip time and the preset propagation speed is used as the distance. The preset propagation speed is the propagation speed of electromagnetic waves, c, which is 3.0×10 8,Round trip time refers to the total time it takes for a signal or data to travel from the sender to the receiver on a link and then back from the receiver to the sender, for example, Figure 2 The product of the round-trip time and the preset propagation speed is equal to the two distances.

[0063] In this embodiment of the present application, the measurement information includes multiple measurements. A distance is obtained based on each measurement result. The mean, variance, and standard deviation of the distance and received signal strength are calculated based on these multiple measurement results to extract statistical features of the measurement information. The mean of these multiple distances is used as the measured distance, which reflects the actual distance between the anchor point and the moving point.

[0064] In the embodiments of the present application, the measured distance is obtained through multiple measurements, thereby improving the accuracy of the measured distance. The statistical characteristics of the measured information are then extracted so that when drawing geometric figures, these characteristics are taken into account, ensuring that there are intersections between two geometric figures at the same time. Furthermore, the propagation characteristics determined based on the statistical characteristics are recorded at each moment, and the coordinate alignment of each moving point with each anchor point is recorded. This facilitates the generation of the pattern of the area to be constructed during classification, eliminating the need for complex data collection and processing, and reducing the complexity of map construction.

[0065] S1022: Based on the propagation characteristics of the mobile point and each anchor point at each moment, respectively compensate the measured distance in the measurement information at each moment to obtain the compensated distance at each moment.

[0066] In an embodiment of the present application, the two anchor points include a first anchor point and a second anchor point, and the two adjacent moments include a current moment and a next moment. Based on the propagation characteristics of the first anchor point and the mobile point at the current moment, a first measured distance between the first anchor point and the mobile point is compensated to obtain a first compensated distance between the first anchor point and the mobile point at the current moment; based on the propagation characteristics of the first anchor point and the mobile point at the next moment, a second measured distance between the first anchor point and the mobile point is compensated to obtain a second compensated distance between the first anchor point and the mobile point at the next moment; based on the propagation characteristics of the second anchor point and the mobile point at the current moment, a third measured distance between the second anchor point and the mobile point is compensated to obtain a third compensated distance between the second anchor point and the mobile point at the current moment; and based on the propagation characteristics of the second anchor point and the mobile point at the next moment, a fourth measured distance between the second anchor point and the mobile point is compensated to obtain a fourth compensated distance between the second anchor point and the mobile point at the next moment.

[0067] In some embodiments, the propagation characteristics include line-of-sight and non-line-of-sight; the map construction method further includes the following steps. Figure 4The compensation distance in S1022 can also be determined in the following manner: if the propagation characteristic is line-of-sight, the measured distance is used as the compensation distance; if the propagation characteristic is non-line-of-sight, the sum of the measured distance and the preset compensation value is used as the compensation distance.

[0068] In the embodiment of the present application, the propagation characteristics include line-of-sight and non-line-of-sight. Under line-of-sight conditions, the wireless signal propagates in a straight line between the transmitter and the receiver without obstruction. The measured distance reflects the actual distance between the two ranging devices. The measured distance can be used as the compensation distance, or a small distance compensation can be applied to the measured distance. The sum of the measured distance and the compensation value is used as the compensation distance. The compensation value under line-of-sight conditions is less than the compensation value under non-line-of-sight conditions. Under non-line-of-sight conditions, it is necessary to combine the measured distance and the distance loss corresponding to the non-line-of-sight (i.e., the preset compensation value) to determine the actual distance between the two points. For example, the sum of the measured distance and the preset compensation value is used as the compensation distance.

[0069] It should be noted that the preset compensation value can be set by those skilled in the art according to actual conditions and can be determined based on a large amount of experimental data. For example, the preset compensation value can be set in the range of 0.1 meters (m) to 5 meters. This embodiment of the present application does not limit this.

[0070] In an embodiment of the present application, the measured distance is compensated based on the propagation characteristics so that geometric figures can be drawn according to the compensated distance. By taking into account the loss value of the measured distance in the non-line-of-sight situation, an intersection exists between the two geometric figures at the same time.

[0071] S1023. With each anchor point as the center of the circle and the compensation distance between the two moments as the radius, determine two geometric figures in a plane rectangular coordinate system parallel to the horizontal plane.

[0072] In the embodiment of the present application, a first geometric figure is obtained by drawing a circle on a plane rectangular coordinate system parallel to the horizontal plane with the first anchor point as the center and the first compensation distance between the first anchor point and the moving point at the current moment as the radius; a second geometric figure is obtained by drawing a circle on the same plane rectangular coordinate system with the first anchor point as the center and the second compensation distance between the first anchor point and the moving point at the next moment as the radius; the first geometric figure and the second geometric figure are concentric circles. A third geometric figure is obtained by drawing a circle on the same plane rectangular coordinate system with the second anchor point as the center and the third compensation distance between the second anchor point and the moving point at the current moment as the radius; a fourth geometric figure is obtained by drawing a circle on the same plane rectangular coordinate system with the second anchor point as the center and the fourth compensation distance between the second anchor point and the moving point at the next moment as the radius; the third geometric figure and the fourth geometric figure are concentric circles.

[0073] In some embodiments, the two moments include the current moment and the next moment of the current moment; S103 may also include S1031-S1034. Figure 5 As shown, Figure 5 A flowchart of optional steps of another map construction method provided in an embodiment of the present application.

[0074] S1031. Construct four vectors based on the two first intersection points of the geometric figures of the two anchor points at the current moment and the two second intersection points of the geometric figures of the two anchor points at the next moment.

[0075] In an embodiment of the present application, the geometric figures at the current moment include the first geometric figure and the third geometric figure, and the geometric figures at the next moment include the second geometric figure and the fourth geometric figure. At the current moment, the moving point is located at the first geometric figure and the third geometric figure. The first geometric figure and the third geometric figure intersect at two points. These two points are used as the two first intersection points of the moving point at the current moment; at the next moment, the moving point is located at the second geometric figure and the fourth geometric figure. The second geometric figure and the fourth geometric figure are compared with two points. These two points are used as the two second intersection points of the moving point at the next moment. Connect the position point of the moving point at the current moment with the position point of the moving point at the next moment, and the resulting vector is the possible moving direction of the moving point. Since there are two first intersection points and two second intersection points, they are connected separately, that is, with the first intersection point as the starting point and the second intersection point as the end point, to construct a vector, and four vectors can be obtained. The moving direction of the moving point can be determined by the parameters measured by the sensor in the ranging device (for example, acceleration), and the vector closest to the moving direction among the four vectors is used as the target vector.

[0076] S1032. Filter out a target vector from the four vectors based on the moving direction.

[0077] In some embodiments, S1032 may be implemented as follows: determining the direction angles between each vector and a preset direction axis to obtain four first direction angles; determining the vector corresponding to the first direction angle having the smallest difference with the direction angle corresponding to the moving direction among the four first direction angles as the target vector; or determining the direction angles between each vector and the vector corresponding to the moving direction to obtain four second direction angles; and determining the vector corresponding to the smallest second direction angle among the four second direction angles as the target vector.

[0078] In an embodiment of the present application, when determining the vector closest to the moving direction, it can be achieved in two ways. The first way is that in the same plane rectangular coordinate system, the moving direction is expressed in the form of a direction angle with a preset direction axis (for example, the positive X axis, the negative X axis, the positive Y axis or the negative Y axis) (that is, the direction angle corresponding to the moving direction), and the value range of the direction angle is [0, -180°] or [0, 180°]. Based on the same calculation method, the direction angle between each of the four vectors and the preset direction axis is calculated to obtain four first direction angles. Then, the difference between each first direction angle and the moving direction is calculated. The smaller the difference, the closer it is to the moving direction. The vector corresponding to the first direction angle with the smallest difference is determined as the target vector. The second way is that in the same plane rectangular coordinate system, the moving direction is expressed in the form of a vector. The direction angle between each vector and the moving direction is calculated to obtain four second direction angles. The smaller the second direction angle, the closer the corresponding vector is to the moving direction. The vector corresponding to the smallest second direction angle is determined as the target vector.

[0079] S1033. Determine the position coordinates of the moving point at the current moment based on the coordinates of the two anchor points and the starting point of the target vector.

[0080] S1034. Determine the position coordinates of the moving point at the next moment based on the coordinates of the two anchor points and the end point of the target vector; wherein the position coordinates of the moving point at the two moments include the position coordinates of the moving point at the current moment and the position coordinates of the moving point at the next moment.

[0081] In the embodiment of the present application, the process of determining the target vector is the process of obtaining two position points of the moving point at two adjacent moments. The starting point of the target vector (i.e., located on the first geometric figure and also on the third geometric figure) is used as the position point of the moving point at the current moment. In combination with the coordinates of the two anchor points, the coordinates of the position point of the moving point at the current moment can be determined. The end point of the target vector (i.e., located on the second geometric figure and also on the fourth geometric figure) is used as the position point of the moving point at the next moment. In combination with the coordinates of the two anchor points, the coordinates of the position point of the moving point at the next moment can be determined.

[0082] The following describes an exemplary application of the embodiments of the present application in a practical application scenario.

[0083] In the embodiments of this application, Figure 6 As shown, Figure 6 This is an exemplary schematic diagram of a position point provided in an embodiment of the present application. Assume that two anchor points are A1 and A2, a moving point is M, and two adjacent moments are t i , t i+1 As an example, the following steps can be used to determine the moving point M at t i , t i+1The position point at the moment. At two adjacent moments t i , t i+1 The RTT distance between the current anchor points A1, A2 and all moving points is collected at all times. Through LOS / NLOS classification, it can be determined whether the moving point and the anchor point are at two adjacent times t i , t i+1 The channel propagation model at the time is used to compensate and correct the RTT measurement value determined as NLOS based on the empirical value. Suppose the original RTT measurement distance is The measured distance r after compensation is ε is the compensation value in the case of NLOS. According to the empirical value, ε is generally set to 0.1 to 5 meters. Based on the device sensor data (corresponding to the moving direction of the moving point) and the RTT measurement data, t can be determined. i , t i+1 The positions of the moment anchor point and each moving point.

[0084] For example, Figure 6 As shown, for the moving point M, since the anchor points A1 and A2 are at t i , t i+1 Always keep still (i.e., in a stationary state), with anchor points A1 and A2 as the center of the circle, according to the moving point M at t i The RTT measurement distance compensation value r between the time and the two anchor points i,1 、r i,2 , draw two circles (corresponding to the first and third geometric figures), the intersection of the two circles is M i 、M i ′,M i 、M i ′ represents the moving point M at t i The possible position at time t; similarly, according to the moving point M at t i+1 The RTT measurement distance compensation value r between the time and the two anchor points i+1,1 、r i+1,2 , draw two circles (corresponding to the second and fourth geometric figures), the intersection of the two circles is M i+1 、M i ' +1 , M i+1 、M i ' +1 Indicates that the moving point M is at t i+1 The possible position at time t. i , t i+1 The trajectory of motion at this moment may be M i M i ' +1 or M i M i+1 or M i 'Mi+1 or M i 'M i ' +1 One of these four vectors determines the position of the moving point at t according to the sensor data of the moving point M. i to t i+1 The moving direction, find the vector closest to the moving direction, which is the moving point M at t i , t i+1 The movement trajectory at each moment. For example, Figure 6 Confirm M i M i ' +1 is the moving point M at t i , t i+1 The movement trajectory of time.

[0085] In some embodiments, S105 may also be implemented in the following manner: clustering the coordinate pairs of at least one moving point at at least two consecutive different moments to obtain a clustering result; and constructing a map corresponding to the area to be constructed based on the outer envelope of the clusters in the clustering result; wherein the map includes a boundary line of the area to be constructed and a dividing line within the area to be constructed.

[0086] In the embodiment of the present application, the coordinate pairs of multiple moving points at different times can be stored in a database, and the information in the database can be read when performing cluster analysis. Using density-based clustering algorithms, such as DBSCAN and MeanShift, points with close distances and similar LOS / NLOS relationships are clustered into one category to obtain a clustering result, which includes multiple clusters. The outer envelope of a cluster is a room in the physical space, such as Figure 7 As shown, Figure 7 This is an exemplary schematic diagram of a clustering result provided in an embodiment of the present application. Figure 7 The horizontal and vertical axes are the coordinate systems in the clustering algorithm. Figure 7 8 reachable areas (i.e., areas where you can move around) are shown in the figure. Areas without dots are unreachable. Areas can be connected to each other. Intersections between areas indicate that there is a movable door or obstacle between the two areas.

[0087] It should be noted that the outer envelope of the cluster can be any shape, for example, a circle, a polygon, an irregular shape, etc. The shape of the outer envelope can be obtained by those skilled in the art by setting the clustering algorithm according to actual conditions, and this embodiment of the application does not limit this. Figure 7 The rectangular outer envelope is used as an example.

[0088] In an embodiment of the present application, a density-based clustering algorithm is used to cluster the coordinate pairs of at least one moving point at at least two consecutive different moments, resulting in a clustering result including at least one cluster. A cluster indicates that there are no boundaries within the area to be constructed. Based on this map construction method, the outer boundary of the area to be constructed can be obtained. The outer envelope of a cluster corresponds to a closed boundary, and the outer envelopes of adjacent clusters can be connected or intersecting. Based on this map construction method, a map of the area to be constructed can be generated. The data processing process is simple, reducing the complexity of map construction.

[0089] In some embodiments, the two moments include the current moment and the next moment of the current moment; Figure 1 The anchor point determination process in S101 can be implemented as follows: If the two anchor points from the previous moment to the current moment are stationary from the current moment to the next moment, the two anchor points from the current moment to the next moment remain the same as the two anchor points from the previous moment to the current moment; if any one of the two anchor points from the previous moment to the current moment is in a moving state from the current moment to the next moment, the moving anchor point is switched to any ranging device in the area to be constructed that is stationary from the current moment to the next moment.

[0090] In an embodiment of the present application, when determining two anchor points, it is necessary to ensure the continuity of at least one anchor point. Taking the example of the anchor point at the current moment representing a ranging device that is stationary from the current moment to the next moment, and the anchor point at the previous moment representing a ranging device that is stationary from the previous moment to the current moment, one or two anchor points at the current moment should also be used as anchor points at the previous moment, thereby ensuring that the coordinate pairs of multiple moving points at at least two consecutive different moments are connected to each other, which is convenient for clustering. If the two anchor points at the previous moment are still stationary at the current moment, then these two anchor points are still used as anchor points at the current moment. If one anchor point at the previous moment is stationary at the current moment, this anchor point is used as the anchor point at the current moment, and any one of the ranging devices that are in a stationary state is selected as the other anchor point at the current moment.

[0091] In the embodiment of the present application, the above time is t i-1 Time, the current time is t i moment, the next moment is t i+1 time, t i-1 Time to t i The anchor points at the moment are A1 and A2, and the moving point is M i (i=1,2,3,…) as an example, determine whether i Time to t i+1 At this moment, whether the anchor points A1 and A2 move, the anchor point moving point is switched according to the movement of the moving point.i Time to t i+1 At the moment, the anchor points A1 and A2 do not move (are in a stationary state), so A1 and A2 continue to be t i Time to t i+1 At this time, although the actual anchor point switching has not occurred, the next step of anchor point-moving point relative trajectory determination (corresponding to drawing a geometric figure based on the anchor point and measurement information, and determining the position of the moving point at two adjacent moments based on the intersection) can still be carried out, which is called a successful anchor point switching. For example, if at t i Time to t i+1 time, t i-1 Time to t i At time t, one of the anchor points A1 and A2 moves and one is stationary (assuming A2 is stationary). At the same time, one or more of the moving points moves at t. i Time to t i+1 If the moving point is stationary at all times, then any one of the stationary moving points and A2 together form t i Time to t i+1 The new anchor point at the moment, the anchor point switch is successful.

[0092] In the embodiments of the present application, by comparing the states of anchor points at two adjacent moments, successful anchor point switching is achieved, ensuring the continuity of the anchor points at the two adjacent moments. Ultimately, the coordinate pairs of multiple moving points at at least two consecutive different moments are correlated. Clustering is performed based on the multiple moving points at at least two consecutive different moments whose coordinates are correlated, and a map is constructed. This simplifies the data processing process and reduces the complexity of map construction.

[0093] In some embodiments, the two moments include the current moment and the moment next to the current moment; the map construction method provided by the embodiments of the present application may further include the following steps. If the two anchor points from the previous moment to the current moment are both in a moving state from the current moment to the next moment, or if any one of the two anchor points from the previous moment to the current moment is in a moving state from the current moment to the next moment, and there is no ranging device in a stationary state from the current moment to the next moment, then the two anchor points and the moving point in the area to be constructed are re-determined until the coordinate pairs of each moving point at at least two consecutive different moments are determined; wherein the number of at least two consecutive different moments is inversely proportional to the number of ranging devices included in the area to be constructed.

[0094] In an embodiment of the present application, taking the example of an anchor point at a previous moment representing a ranging device that was stationary from the previous moment to the current moment, if both anchor points at the previous moment are in a moving state at the current moment, the map construction process needs to be restarted until at least two ranging devices within the area to be constructed are stationary. These anchor points serve as the two anchor points at the initial moment, and coordinate pairs of each moving point at at least two consecutive different moments can be determined, thereby completing clustering and achieving map construction. If either of the two anchor points at the previous moment is in a moving state at the current moment, and both ranging devices at the current moment are in a moving state, the map construction process needs to be restarted until at least two ranging devices within the area to be constructed are stationary. These anchor points serve as the two anchor points at the initial moment, and coordinate pairs of each moving point at at least two consecutive different moments can be determined, thereby completing clustering and achieving map construction.

[0095] In the embodiments of the present application, a greater number of ranging devices included in the area to be constructed indicates that there are sufficient coordinate pairs of the moving point at each moment, and a large number of coordinate pairs can be obtained without many moments. In this case, the number of at least two consecutive different moments is smaller. A smaller number of ranging devices included in the area to be constructed indicates that there are fewer coordinate pairs of the moving point at each moment, and a large number of moments are required to obtain a large number of coordinate pairs. In this case, the number of at least two consecutive different moments is greater.

[0096] In the embodiment of the present application, the above time is t i-1 Time, the current time is t i moment, the next moment is t i+1 time, t i-1 Time to t i The anchor points at the moment are A1 and A2, and the moving point is M i (i=1,2,3,…) as an example, determine whether i Time to t i+1 At this moment, whether the anchor points A1 and A2 move, the anchor point moving point is switched according to the movement of the moving point. i Time to t i+1 At this moment, one of the anchor points A1 and A2 moves and the other is stationary (assuming A2 is stationary). At the same time, all the points in the moving point are at t i Time to t i+1 If the anchor point moves at all times, the anchor point switching fails. For example, if t i Time to t i+1 At this moment, both anchor points A1 and A2 move, and the anchor point switching fails.

[0097] In an embodiment of the present application, anchor point switching is achieved by comparing the states of anchor points at two adjacent moments. If the switching fails, the map construction process is restarted to ensure the continuity of the anchor points at two adjacent moments. The coordinate pairs of multiple moving points at at least two consecutive different moments are finally obtained to be connected to each other.

[0098] The following describes an exemplary application of the embodiments of the present application in a practical application scenario.

[0099] The map construction method provided in the embodiment of the present application includes four modules: initialization, anchor point-moving point relative trajectory determination, anchor point-moving point switching, and cluster plane map drawing. Figure 8 As shown, Figure 8 A flowchart of optional steps of another map construction method provided in an embodiment of the present application includes S1-S7.

[0100] S1. Initialization.

[0101] The steps include: 1. establishing a plane rectangular coordinate system; 2. determining the positions of two anchor points; 3. setting the current time as t0; 4. i=0.

[0102] In this example, the motion state (including stationary and moving) of each ranging device in the area to be constructed is determined based on the sensor of the ranging device. When it is found that two or more ranging devices are in a stationary state, the initialization process is started. The initialization process includes the following steps: determine any two ranging devices in a stationary state as two anchor points, the other ranging devices as moving points, and determine the distance between the two anchor points. With the line connecting the two anchor points as the x-axis and the direction parallel to the ground and perpendicular to the x-axis as the y-axis, a plane rectangular coordinate system is established. Determine the positions of the two anchor points. Set the current moment to time t0. Set i=0.

[0103] S2, t i Time-t i+1 Moment: The relative trajectory of anchor point and moving point is determined.

[0104] In this example, the above Figure 8 The determination of the relative trajectory between the anchor point and the moving point includes the following steps: i , t i+1 The RTT distance between the current anchor points A1, A2 and all moving points is collected at all times. Through LOS / NLOS classification, it is determined that the moving point and the anchor point are at two adjacent moments t i , t i+1 The channel propagation model at the time is used to compensate and correct the RTT measurement value determined to be NLOS based on the empirical value. Based on the device sensor data (corresponding to the moving direction of the mobile point) and the RTT measurement data, ti , t i+1 The position of the anchor point and each moving point at a moment, that is, the coordinate pair of the moving point is obtained.

[0105] S3. Determine whether i is greater than thred, that is, i>thred. If so, execute S7; if not, execute S4 and S5.

[0106] In this example, after executing S2, it can be obtained that the moving point M is at t i , t i+1 Determine whether the number of coordinate pairs at each time point is greater than a preset number (thred). If it is greater than the preset number, it means that there are enough coordinate pairs of each moving point at at least two consecutive different time points, and S7 (i.e., clustering step) can be executed; if it is less than or equal to the preset number, execute S4.

[0107] S4, i=i+1.

[0108] S5. Switch between anchor point and moving point.

[0109] S6. Determine whether the switch is successful. If so, execute S2. If not, execute S1-S5 again.

[0110] S7. Draw the clustering plane diagram.

[0111] The map construction method provided in the embodiments of the present application can be applied to indoor mapping. It is a low-cost, low-risk indoor map acquisition solution that can reduce the software and hardware costs of indoor mapping. It autonomously constructs indoor maps through RTT measurement between ranging devices and runs on the terminal side (for example, the mobile phone side), thereby improving data security. It can construct indoor maps without the user's awareness, thereby providing a technical foundation for the implementation of other perception scenarios. The algorithm is simple and efficient, reducing the complexity of map construction.

[0112] In order to implement the map construction method of the embodiment of the present application, the embodiment of the present application also provides a map construction device, such as Figure 9 As shown, Figure 9An optional structural diagram of a map construction device provided in an embodiment of the present application, the map construction device 90 includes: a geometric figure determination module 901, used to determine two anchor points and a moving point in the area to be constructed; with each anchor point as the geometric center, determining two geometric figures based on measurement information of the moving point and each anchor point at two adjacent moments; a position point coordinate determination module 902, used to determine the position point coordinates of the moving point at two moments based on the moving direction of the moving point and four geometric figures corresponding to the two anchor points; a coordinate pair determination module 903, used to determine, for each of the two moments, the coordinates of the moving point at the moment, the coordinates of the two anchor points, and the propagation characteristics between the moving point and the two anchor points determined based on the measurement information; and a construction module 904, used to construct a map of the area to be constructed based on the coordinate pair of at least one moving point at at least two consecutive different moments.

[0113] In some embodiments, the two moments include a current moment and a moment next to the current moment;

[0114] The position point coordinate determination module 902 is also used to construct four vectors based on the two first intersection points of the geometric figures of the two anchor points at the current moment and the two second intersection points of the geometric figures of the two anchor points at the next moment; based on the moving direction, the target vector is screened out from the four vectors; based on the coordinates of the two anchor points and the starting point of the target vector, the position point coordinates of the moving point at the current moment are determined; based on the coordinates of the two anchor points and the end point of the target vector, the position point coordinates of the moving point at the next moment are determined; wherein, the position point coordinates of the moving point at the two moments include the position point coordinates of the moving point at the current moment and the position point coordinates of the moving point at the next moment.

[0115] In some embodiments, the position point coordinate determination module 902 is also used to respectively determine the direction angles between each vector and the preset direction axis to obtain four first direction angles; the vector corresponding to the first direction angle with the smallest difference between the four first direction angles and the direction angle corresponding to the moving direction is determined as the target vector; or, the direction angles between each vector and the vector corresponding to the moving direction are determined to obtain four second direction angles; the vector corresponding to the smallest second direction angle among the four second direction angles is determined as the target vector.

[0116] In some embodiments, the geometric figure determination module 901 is further used to classify the channel propagation model between the mobile point and each anchor point based on the statistical characteristics of the measurement information of the mobile point and each anchor point at each moment, and determine the propagation characteristics of the mobile point and each anchor point at each moment; based on the propagation characteristics of the mobile point and each anchor point at each moment, compensate the measurement distance in the measurement information at each moment to obtain the compensated distance at each moment; with each anchor point as the center of the circle and the compensated distance of the two moments as the radius, determine two geometric figures in a plane rectangular coordinate system parallel to the horizontal plane.

[0117] In some embodiments, the propagation characteristics include line-of-sight and non-line-of-sight;

[0118] The geometry determination module 901 is further configured to use the measured distance as the compensation distance if the propagation characteristic is line-of-sight; and use the sum of the measured distance and a preset compensation value as the compensation distance if the propagation characteristic is non-line-of-sight.

[0119] In some embodiments, the measurement information includes a plurality of round trip times and a plurality of received signal strengths corresponding to the plurality of measurements;

[0120] The geometric figure determination module 901 is further used to determine multiple distances based on multiple round-trip times and preset propagation speeds; extract statistical features of the measurement information based on the multiple distances and multiple received signal strengths; and use the average of the multiple distances as the measurement distance in the measurement information.

[0121] In some embodiments, the construction module 904 is further used to cluster the coordinate pairs of at least one moving point at at least two consecutive different moments to obtain a clustering result; and construct a map corresponding to the area to be constructed based on the outer envelope of the cluster cluster in the clustering result; wherein the map includes the boundary line of the area to be constructed and the dividing line within the area to be constructed.

[0122] In some embodiments, the two moments include a current moment and a moment next to the current moment;

[0123] The geometric figure determination module 901 is also used to: if the two anchor points from the previous moment to the current moment are in a stationary state from the current moment to the next moment, then the two anchor points from the current moment to the next moment remain the same as the two anchor points from the previous moment to the current moment; if any one of the two anchor points from the previous moment to the current moment is in a moving state from the current moment to the next moment, then the anchor point in the moving state is switched to any ranging device in the area to be constructed that is in a stationary state from the current moment to the next moment.

[0124] In some embodiments, the two moments include a current moment and a moment next to the current moment;

[0125] The geometric figure determination module 901 is further configured to re-determine the two anchor points and the moving point within the area to be constructed if both anchor points from the previous moment to the current moment are in a moving state from the current moment to the next moment, or if either anchor point from the previous moment to the current moment is in a moving state from the current moment to the next moment, and there is no ranging device in a stationary state from the current moment to the next moment, until coordinate pairs of the moving points at at least two consecutive different moments are determined; wherein the number of the at least two consecutive different moments is inversely proportional to the number of ranging devices included in the area to be constructed.

[0126] In some embodiments, the two moments include a current moment and a moment next to the current moment;

[0127] The coordinate pair determining module 903 is configured to determine that if the current moment is the initial moment, the coordinates of the two anchor points are preset coordinates; if the current moment is not the initial moment, the coordinates of the two anchor points are the coordinates of each anchor point at the previous moment.

[0128] It should be noted that the map construction device provided in the above embodiment is merely illustrated by the division of the aforementioned program modules during map construction. In actual applications, the aforementioned processing can be assigned to different program modules as needed, that is, the internal structure of the device can be divided into different program modules to complete all or part of the aforementioned processing. Furthermore, the map construction device provided in the above embodiment and the map construction method embodiment are based on the same concept. The specific implementation process and beneficial effects are detailed in the method embodiment and will not be repeated here. For technical details not disclosed in the device embodiment, please refer to the description of the method embodiment of this application for understanding.

[0129] In the embodiments of this application, Figure 10 This is a schematic diagram of the structure of the map building device proposed in the embodiment of the present application, as shown in FIG. Figure 10 As shown, the map construction device 100 proposed in the embodiment of the present application includes a processor 1001 and a memory 1002 for storing an executable computer program. The processor 1001 is configured to implement the map construction method provided in the embodiment of the present application when executing the executable computer program stored in the memory 1002.

[0130] In some embodiments, the map building device 100 may further include a communication interface 1003 and a bus 1004 for connecting the processor 1001 , the memory 1002 and the communication interface 1003 .

[0131] In the embodiment of the present application, the processor 1001 may be at least one of an application-specific integrated circuit (ASIC), a digital signal processor (DSP), a digital signal processing device (DSPD), a programmable logic device (PLD), a field programmable gate array (FPGA), a central processing unit (CPU), a controller, a microcontroller, and a microprocessor. It is understood that for different devices, the electronic device used to implement the above-mentioned processor function may also be other, and the embodiment of the present application does not specifically limit this.

[0132] In the embodiment of the present application, the bus 1004 is used to connect the communication interface 1003, the processor 1001 and the memory 1002 to achieve mutual communication between these devices.

[0133] Memory 1002 is used to store executable computer programs and data. The executable computer programs include computer operating instructions. Memory 1002 may include high-speed RAM memory, and may also include non-volatile memory, such as at least two disk memories. In practical applications, the memory 1002 may be a volatile memory (volatile memory), such as random-access memory (RAM); or a non-volatile memory (non-volatile memory), such as read-only memory (ROM), flash memory, hard disk drive (HDD), or solid-state drive (SSD); or a combination of the above types of memory, and provides executable computer programs and data to processor 1001.

[0134] In addition, the functional modules in this embodiment may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated units may be implemented in the form of hardware or software functional modules.

[0135] If the integrated unit is implemented in the form of a software functional module and is not sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this embodiment, or the part that contributes to the existing technology, or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a number of instructions for causing a computer device (which can be a personal computer, server, or network device, etc.) or a processor to execute all or part of the steps of the method of this embodiment. The aforementioned storage medium includes various media that can store program code, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0136] An embodiment of the present application provides a computer-readable storage medium storing a computer program for implementing the map construction method described in any of the above embodiments when executed by a processor.

[0137] Illustratively, the program instructions corresponding to a map construction method in this embodiment can be stored on a storage medium such as a CD, a hard disk, or a USB flash drive. When the program instructions corresponding to a map construction method in the storage medium are read or executed by an electronic device, the map construction method described in any of the above embodiments can be implemented.

[0138] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may take the form of hardware embodiments, software embodiments, or embodiments combining software and hardware. Furthermore, the present application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage and optical storage, etc.) containing computer-usable program code.

[0139] The present application is described with reference to the implementation flow charts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flow charts and / or block diagrams, as well as the combination of processes and / or boxes in the flow charts 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, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the steps in the implementation flow charts. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0140] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which is implemented in the implementation flow diagram. Figure 1 a process or multiple 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 device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process described in the flowchart. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0142] The above description is merely a preferred embodiment of the present application and is not intended to limit the scope of protection of the present application.

Claims

1. A map construction method, characterized in that: The method comprises: Determine two anchor points and a moving point within the area to be constructed; Taking each of the anchor points as a geometric center, and based on measurement information of the moving point and each of the anchor points at two adjacent moments, determining two geometric figures; Determining the position coordinates of the moving point at the two moments based on the moving direction of the moving point and the four geometric figures corresponding to the two anchor points; determining, for each of the two moments in time, a coordinate pair of the mobile point at each of the moments in time based on the coordinates of the position of the mobile point at the moment in time, the coordinates of the two anchor points, and propagation characteristics between the mobile point and the two anchor points, respectively, determined based on the measurement information; constructing a map of the area to be constructed based on a coordinate pair of at least one moving point at at least two consecutive different moments; The constructing a map corresponding to the area to be constructed based on the coordinate pair of at least one moving point at at least two consecutive different moments includes: Clustering the coordinate pairs of at least one moving point at the at least two consecutive different moments to obtain a clustering result; A map corresponding to the area to be constructed is constructed according to the outer envelope of the clusters in the clustering result; wherein the map includes a boundary line of the area to be constructed and a dividing line within the area to be constructed.

2. The method according to claim 1, characterized in that The two moments include the current moment and the next moment of the current moment; The determining, based on the moving direction of the moving point and the four geometric figures corresponding to the two anchor points, the position coordinates of the moving point at the two moments, respectively, includes: Construct four vectors based on two first intersection points of the geometric figure of the two anchor points at the current moment and two second intersection points of the geometric figure of the two anchor points at the next moment; Based on the moving direction, selecting a target vector from the four vectors; Determining the position coordinates of the moving point at the current moment based on the coordinates of the two anchor points and the starting point of the target vector; Based on the coordinates of the two anchor points and the end point of the target vector, the position point coordinates of the moving point at the next moment are determined; wherein the position point coordinates of the moving point at the two moments respectively include the position point coordinates of the moving point at the current moment and the position point coordinates of the moving point at the next moment.

3. The method according to claim 2, characterized in that The step of selecting a target vector from the four vectors based on the moving direction includes: Determine the direction angles between each vector and a preset direction axis respectively to obtain four first direction angles; determine the vector corresponding to the first direction angle having the smallest difference with the direction angle corresponding to the moving direction among the four first direction angles as the target vector; or, Determine the direction angles between each vector and the vector corresponding to the moving direction to obtain four second direction angles; and determine the vector corresponding to the smallest second direction angle among the four second direction angles as the target vector.

4. The method according to any one of claims 1 to 3, characterized in that The determining of two geometric figures with each anchor point as the geometric center and based on measurement information of the moving point and each anchor point at two adjacent moments includes: For each of the two moments in time, classifying a channel propagation model between the mobile point and each of the anchor points based on statistical characteristics of measurement information of the mobile point and each of the anchor points at each of the moments in time, and determining propagation characteristics of the mobile point and each of the anchor points at each of the moments in time; Based on the propagation characteristics of the moving point and each anchor point at each moment, respectively compensating the measured distance in the measurement information at each moment to obtain the compensated distance at each moment; The two geometric figures are determined in a plane rectangular coordinate system parallel to the horizontal plane, with each anchor point as the center of the circle and the compensation distance at the two moments as the radius.

5. The method according to claim 4, characterized in that The propagation characteristics include line-of-sight and non-line-of-sight; the method further includes: If the propagation characteristic is line of sight, the measured distance is used as the compensation distance; If the propagation characteristic is non-line-of-sight, the sum of the measured distance and a preset compensation value is used as the compensation distance.

6. The method according to claim 4, characterized in that The measurement information includes multiple round trip times and multiple received signal strengths corresponding to the multiple measurements; the method further includes: determining a plurality of distances based on the plurality of round trip times and a preset propagation speed; extracting statistical features of the measurement information based on the multiple distances and the multiple received signal strengths; An average of the multiple distances is used as the measured distance in the measurement information.

7. The method according to any one of claims 1 to 3, characterized in that The two moments include a current moment and a moment next to the current moment; the method further includes: If the two anchor points from the previous moment to the current moment are in a stationary state from the current moment to the next moment, the two anchor points from the current moment to the next moment remain the same as the two anchor points from the previous moment to the current moment; If any one of the two anchor points from the previous moment to the current moment is in a moving state from the current moment to the next moment, the anchor point in the moving state is switched to any one of the ranging devices in the area to be constructed that is in a stationary state from the current moment to the next moment.

8. The method according to any one of claims 1 to 3, characterized in that The two moments include a current moment and a moment next to the current moment; the method further includes: If both the two anchor points from the previous moment to the current moment are in a moving state from the current moment to the next moment, or if any one of the two anchor points from the previous moment to the current moment is in a moving state from the current moment to the next moment, and no ranging device is in a stationary state from the current moment to the next moment, then re-determine the two anchor points and the moving point in the area to be constructed until the coordinate pairs of each moving point at the at least two consecutive different moments are determined; The number of the at least two consecutive different moments is inversely proportional to the number of ranging devices included in the area to be constructed.

9. The method according to any one of claims 1 to 3, characterized in that The two moments include a current moment and a moment next to the current moment; the method further includes: If the current moment is the initial moment, the coordinates of the two anchor points are preset coordinates; If the current moment is not the initial moment, the coordinates of the two anchor points are the coordinates of each anchor point at the previous moment.

10. A map construction device, characterized in that: The device comprises: a geometric figure determination module, configured to determine two anchor points and a moving point within the area to be constructed; and determine two geometric figures based on measurement information of the moving point and each of the anchor points at two adjacent moments, with each anchor point as a geometric center; a position point coordinate determination module, configured to determine the position point coordinates of the moving point at the two moments based on the moving direction of the moving point and the four geometric figures corresponding to the two anchor points; a coordinate pair determining module, configured to determine, for each of the two moments in time, a coordinate pair of the mobile point at each of the two moments in time based on the position coordinates of the mobile point at the moment in time, the coordinates of the two anchor points, and propagation characteristics between the mobile point and the two anchor points, respectively, determined based on the measurement information; A construction module, configured to construct a map of the area to be constructed based on a coordinate pair of at least one moving point at at least two consecutive different moments; The construction module is further configured to cluster the coordinate pairs of at least one moving point at at least two consecutive different moments to obtain a clustering result; and construct a map corresponding to the area to be constructed based on the outer envelope of the clusters in the clustering result; wherein the map includes a boundary line of the area to be constructed and a dividing line within the area to be constructed.

11. A map construction device, characterized in that: The device comprises: a memory for storing executable computer programs; A processor, configured to implement the method according to any one of claims 1 to 9 when executing the executable computer program stored in the memory.

12. A computer-readable storage medium, characterized in that A computer program is stored, which is used to implement the method according to any one of claims 1 to 9 when executed by a processor.

Citation Information

Patent Citations

  • Positioning method based on wireless sensor network

    CN103414999A

  • Position estimation device, position estimation method, and automated driving system

    JP7101840B1