Indoor target positioning method and device, equipment and storage medium
By combining UWB technology and inertial measurement unit data on indoor targets, the problem of inaccurate positioning of indoor targets is solved and higher positioning accuracy is achieved.
Patent Information
- Application Number
- CN202311765202.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-20
- Publication Date
- 2025-06-20
AI Technical Summary
The prior art is difficult to achieve accurate target positioning indoors, especially due to the difficulty of satellite signals in penetrating walls and poor accuracy in complex environments.
By obtaining the first set of position points and the second set of position points of the indoor target, the first set of position points is positioned by UWB technology, and the second set of position points is calculated based on heading data and velocity data, and the two are fused to obtain more accurate positioning results.
Combining UWB technology and inertial measurement unit data, the integration can significantly improve the positioning accuracy of indoor targets, solving the problem of inaccurate indoor positioning.
Smart Images

Figure CN120186748A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of target positioning, and in particular, to an indoor target positioning method, device, equipment, and storage medium. Background Art
[0002] With the development of communication technologies and the popularization of wireless networks, location-based services (LBS) have received wide attention. Outdoor positioning technologies are based on the Global Positioning System; however, satellite signals are difficult to penetrate walls, and the Global Positioning System has poor accuracy in complex environments, resulting in the difficulty of applying the positioning system indoors. How to accurately locate indoor targets is a technical problem that urgently needs to be solved currently. Summary of the Invention
[0003] The main purpose of the present application is to provide an indoor target positioning method, device, equipment, and storage medium, aiming to solve the technical problem of inaccurate indoor target positioning nowadays.
[0004] To achieve the above purpose, the present application provides an indoor target positioning method, and the method includes the following steps:
[0005] Obtain a first set of position points and a second set of position points corresponding to the indoor target, where the first set of position points is obtained by positioning the indoor target through UWB technology, and the second set of position points is calculated based on the heading data and speed data of the indoor target, and the heading data and the speed data are determined by collecting data from a non-fixed positioning tag deployed on the indoor target;
[0006] Fuse the first set of position points and the second set of position points to obtain a fused set of position points;
[0007] Locate the indoor target according to the fused set of position points.
[0008] In a possible implementation manner of the present application, the obtaining the first set of position points and the second set of position points corresponding to the indoor target includes:
[0009] Obtain a first set of position points corresponding to the indoor target;
[0010] Collect data from a non-fixed positioning tag deployed on the indoor target to obtain acceleration data and gyroscope data;
[0011] Determine the current speed data of the indoor target according to the acceleration data, and determine the current heading data of the indoor target according to the gyroscope data;
[0012] Construct a second set of position points corresponding to the indoor target based on the current speed data, the current heading data, the historical speed data, and the historical heading data.
[0013] In a possible implementation manner of the present application, the determining the current heading data of the indoor target according to the gyroscope data includes:
[0014] Integrate the gyroscope data to obtain labeled heading data;
[0015] Smooth the labeled heading data according to the historical heading data to obtain the current heading data of the indoor target.
[0016] In a possible implementation manner of the present application, the smoothing the labeled heading data according to the historical heading data to obtain the current heading data of the indoor target includes:
[0017] Compare the acceleration data with a preset determination threshold;
[0018] If the acceleration data is greater than the preset determination threshold, obtain the historical determination acceleration;
[0019] If the acceleration data is in the opposite direction to the historical determination acceleration, use the acceleration data as the new historical determination acceleration and compensate the labeled heading data to obtain compensated heading data;
[0020] Smooth the compensated heading data according to the historical heading data to obtain the current heading data of the indoor target.
[0021] In a possible implementation manner of the present application, the fusing the first set of position points and the second set of position points to obtain a fused set of position points includes:
[0022] Obtain the confidence corresponding to the first set of position points;
[0023] If the confidence is less than a preset high confidence threshold, detect whether the second set of position points is credible;
[0024] If the second set of position points is credible, set a corresponding weight coefficient for the second set of position points;
[0025] Fuse the first set of position points and the second set of position points according to the weight coefficient to obtain a fused set of position points.
[0026] In a possible implementation manner of the present application, the weight coefficient corresponding to the second set of position points is set based on at least one of the position correction time of the second set of position points, the fluctuation degree corresponding to the first set of position points, and the linearity of the second set of position points.
[0027] In a possible implementation manner of the present application, before fusing the first set of position points and the second set of position points to obtain a fused set of position points, it further includes:
[0028] Obtain the heading data corresponding to the second set of position points;
[0029] Correct the heading data according to the first set of position points to obtain corrected heading data;
[0030] Perform position point correction on the second set of position points according to the corrected heading data to obtain a corrected second set of position points;
[0031] The step of fusing the first set of position points and the second set of position points to obtain a fused set of position points includes:
[0032] Fuse the first set of position points and the corrected second set of position points to obtain a fused set of position points.
[0033] In a possible implementation manner of the present application, the step of correcting the heading data according to the first set of position points to obtain corrected heading data includes:
[0034] Extract a subset of straight-line position points from the first set of position points, and extract the corresponding heading sub-data of the subset of straight-line position points from the heading data;
[0035] Calculate the average value corresponding to the heading sub-data to obtain an average heading angle, and determine the fitted heading data according to the subset of straight-line position points;
[0036] Determine a calibration angle according to the fitted heading data and the average heading angle;
[0037] Correct the heading data according to the calibration angle to obtain corrected heading data.
[0038] In a possible implementation manner of the present application, the step of correcting the heading data according to the first set of position points to obtain corrected heading data includes:
[0039] Extract a subset of position points to be corrected from the second set of position points, and extract the corresponding subset of calibration position points of the subset of position points to be corrected from the first set of position points;
[0040] Stepping and generating multiple adjustment angles with a preset angle as the step size;
[0041] Adjusting the subset of points to be corrected according to each adjustment angle respectively, and calculating the matching error between the adjusted subset of points to be corrected and the subset of calibrated points to obtain the matching error corresponding to each adjustment angle;
[0042] Selecting a calibration angle from the multiple adjustment angles according to the matching error;
[0043] Correcting the heading data according to the calibration angle to obtain corrected heading data.
[0044] In addition, to achieve the above object, the present application also proposes an indoor target positioning device, which includes the following modules:
[0045] An acquisition module, configured to acquire a first set of position points and a second set of position points corresponding to an indoor target, where the first set of position points is obtained by positioning the indoor target through UWB technology, and the second set of position points is calculated according to the heading data and speed data of the indoor target, and the heading data and the speed data are determined by collecting data from a non-fixed positioning tag deployed on the indoor target;
[0046] A fusion module, configured to fuse the first set of position points and the second set of position points to obtain a fused set of position points;
[0047] A positioning module, configured to position the indoor target according to the fused set of position points.
[0048] In addition, to achieve the above object, the present application also proposes an indoor target positioning device, which includes: a processor, a memory, and an indoor target positioning program stored on the memory and executable on the processor, and when the indoor target positioning program is executed by the processor, the steps of the above-mentioned indoor target positioning method are implemented.
[0049] In addition, to achieve the above object, the present application also proposes a computer-readable storage medium, on which an indoor target positioning program is stored, and when the indoor target positioning program is executed, the steps of the above-mentioned indoor target positioning method are implemented.
[0050] In this application, a first set of position points and a second set of position points corresponding to an indoor target are obtained. The first set of position points is obtained by positioning the indoor target through UWB technology, and the second set of position points is calculated based on the heading data and speed data of the indoor target. The heading data and speed data are determined by collecting data from a non-fixed positioning tag deployed on the indoor target; the first set of position points and the second set of position points are fused to obtain a fused set of position points; the indoor target is positioned according to the fused set of position points. Since the position point sets are constructed through two different positioning methods respectively, and the two position point sets are fused, the advantages of the two positioning technologies are combined, thus ensuring accurate positioning of the indoor target. Brief Description of the Drawings
[0051] Figure 1 is a schematic structural diagram of an electronic device in the hardware operating environment related to the solution of the embodiment of this application;
[0052] Figure 2 is a schematic flowchart of the first embodiment of the indoor target positioning method of this application;
[0053] Figure 3 is a schematic flowchart of the second embodiment of the indoor target positioning method of this application;
[0054] Figure 4 is a schematic diagram of IMU axis acceleration information in an embodiment of this application;
[0055] Figure 5 is a schematic flowchart of the third embodiment of the indoor target positioning method of this application;
[0056] Figure 6 is a schematic flowchart of the fourth embodiment of the indoor target positioning method of this application;
[0057] Figure 7 is a schematic block diagram of the first embodiment of the indoor target positioning device of this application.
[0058] The realization, functional features and advantages of the purpose of this application will be further described with reference to the embodiments and the accompanying drawings. Detailed Embodiment
[0059] It should be understood that the specific embodiments described herein are only used to explain this application and are not used to limit this application.
[0060] Refer to Figure 1 , Figure 1 is a schematic structural diagram of an indoor target positioning device in the hardware operating environment related to the solution of the embodiment of this application.
[0061] As Figure 1As shown in the figure, the electronic device may include: a processor 1001, such as a Central Processing Unit (CPU), a communication bus 1002, a user interface 1003, a network interface 1004, and a memory 1005. Among them, the communication bus 1002 is used to realize the connection and communication between these components. The user interface 1003 may include a display screen (Display) and an input unit such as a keyboard (Keyboard). Optionally, the user interface 1003 may further include a standard wired interface and a wireless interface. The network interface 1004 may optionally include a standard wired interface and a wireless interface (such as a Wireless-Fidelity (WI-FI) interface). The memory 1005 may be a high-speed Random Access Memory (RAM) or a stable Non-Volatile Memory (NVM), such as a disk memory. Optionally, the memory 1005 may also be a storage device independent of the aforementioned processor 1001.
[0062] Those skilled in the art can understand that Figure 1 the structure shown in does not constitute a limitation on the electronic device, and it may include more or fewer components than shown in the figure, or combine some components, or have a different component layout.
[0063] As Figure 1 shown, the memory 1005, as a storage medium, may include an operating system, a network communication module, a user interface module, and an indoor target positioning program.
[0064] In Figure 1 the electronic device shown, the network interface 1004 is mainly used for data communication with a network server; the user interface 1003 is mainly used for data interaction with a user; the processor 1001 and the memory 1005 in the electronic device of the present application may be arranged in an indoor target positioning device. The electronic device calls the indoor target positioning program stored in the memory 1005 through the processor 1001 and executes the indoor target positioning method provided by the embodiments of the present application.
[0065] The embodiments of the present application provide an indoor target positioning method. Referring to Figure 2 , Figure 2 is a schematic flowchart of the first embodiment of an indoor target positioning method of the present application.
[0066] In this embodiment, the indoor target positioning method includes the following steps:
[0067] Step S10: Obtain a first set of position points and a second set of position points corresponding to the indoor target.
[0068] It should be noted that the execution subject of this embodiment may be the indoor target positioning device, which may be an electronic device such as a personal computer, a server, a tablet computer, a smart phone, or other devices that can achieve the same or similar functions. This embodiment does not impose any restrictions on this. In this embodiment and the following embodiments, the indoor target positioning device is taken as an example to illustrate the indoor target positioning method of the present application.
[0069] It should be noted that the technical terms that may be involved in this embodiment are now defined herein for easy understanding:
[0070] UWB (Ultra Wideband) positioning: UWB refers to a wireless carrier communication technology that uses non-sinusoidal narrow pulses in the nanosecond to microsecond range to transmit data. Using UWB signals, centimeter-level positioning can be achieved, which is very suitable for places with high positioning accuracy requirements.
[0071] IMU (Inertial Measurement Unit) positioning: IMUs are usually divided into 6-axis IMUs (integrating 3-axis accelerometers and 3-axis gyroscopes) and 9-axis IMUs (integrating 3-axis accelerometers, 3-axis gyroscopes, and 3-axis magnetometers); autonomous navigation can be achieved without relying on external information and without radiating energy to the outside.
[0072] LOS (Line of Sight): The signal between the UWB base station and the UWB tag is not blocked, and the positioning accuracy is relatively high at this time.
[0073] NLOS (Non Line of Sight): The signal between the UWB base station and the UWB tag is blocked, and the positioning accuracy is relatively low at this time.
[0074] It should be noted that the positioning described in this embodiment and the following embodiments is all executed after the authorization of the indoor target (such as indoor staff, etc.). The first set of position points can be obtained by positioning the indoor target through UWB technology, and the second set of position points can be calculated based on the heading data and speed data of the indoor target. The heading data and speed data of the indoor target can be determined by collecting data from non-fixed positioning tags deployed on the indoor target. The non-fixed positioning tag can be a positioning tag device that does not need to be fixed in a specific manner to ensure easy installation and removal, such as: wearable or hanging positioning signs, etc.
[0075] In actual use, a non-fixed positioning tag may be provided with a UWB tag and an Inertial Measurement Unit (IMU). The UWB tag communicates with a pre-set UWB base station to determine UWB positioning information, and feeds back the UWB positioning information to the indoor target positioning device. Then, the indoor target positioning device can construct a first set of position points based on the received UWB positioning information. The UWB positioning information may include positioning coordinates and an identifier indicating whether the UWB tag is currently in the NLOS state (e.g., 0 represents LOS, 1 represents NLOS). The indoor target positioning device can calculate the heading data and speed data of the indoor target from the data collected by the inertial measurement unit, and then calculate and generate a second set of position points based on the heading data and speed data of the indoor target (e.g., using the PDR (Pedestrian Dead Reckoning) algorithm to calculate and generate the second set of position points based on the heading data and speed data of the indoor target).
[0076] It can be understood that in some enclosed working scenarios, it is necessary to locate each target in the indoor working area. For example, in scenarios such as logistics and transportation, it is necessary to locate the staff for item sorting, or in some indoor work areas that require confidentiality, it is necessary to locate the staff in the work area. In such cases, due to work requirements, indoor targets need to use positioning devices that are easy to wear and will not affect normal activities. At this time, non-fixed positioning tags can be used.
[0077] For example: in some working scenarios that require confidentiality or closed management, it is usually required to wear work badges to ensure the safety and confidentiality of the working scenario. At this time, a UWB tag and an Inertial Measurement Unit (IMU) can be set in the work badge and used as a non-fixed positioning tag.
[0078] Of course, the heading data and speed data of the indoor target can also be generated by other devices after collecting the inertial measurement unit and transmitted to the indoor target positioning device. This embodiment does not limit this.
[0079] Step S20: Fuse the first set of position points and the second set of position points to obtain a fused set of position points.
[0080] It should be noted that the UWB technology is a wireless positioning technology with advantages such as high precision and low power consumption, and can provide centimeter-level positioning accuracy. However, the positioning performance of the UWB positioning system set according to the UWB technology is often affected by the signal non-line-of-sight (NLOS). Severe NLOS will lead to a decrease in positioning accuracy and even loss of position information. And according to the heading data and speed data, autonomous navigation and positioning can be achieved without radiating energy to the outside world, only relying on its own measurement values, which has the advantage of high short-term accuracy, but there are large cumulative errors in its long-term positioning accuracy.
[0081] Therefore, the first set of position points generated by the UWB technology and the second set of position points generated according to the heading data and speed data can be fused to make up for each other's deficiencies, so as to ensure that the set of position points generated by combining two different positioning methods can be used to achieve precise positioning of indoor targets.
[0082] Step S30: Locate the indoor target according to the fused set of position points.
[0083] In actual use, locating the indoor target according to the fused set of position points can be to obtain the moment to be located (such as the current moment or a certain historical moment), and find the position point coordinates of the indoor target in the fused set of position points according to the moment, so as to achieve the positioning of the indoor target.
[0084] In this embodiment, the first set of position points corresponding to the indoor target and the second set of position points are obtained. The first set of position points is obtained by positioning the indoor target through the UWB technology, and the second set of position points is calculated according to the heading data and speed data of the indoor target. The heading data and speed data are determined by collecting data from the non-fixed positioning tags deployed on the indoor target; the first set of position points is fused with the second set of position points to obtain a fused set of position points; the indoor target is located according to the fused set of position points. Since the sets of position points are constructed by two different positioning methods respectively, and the two sets of position points are fused, the advantages of the two positioning technologies are combined, so as to ensure that the indoor target can be precisely located.
[0085] Reference Figure 3 , Figure 3 is a schematic flowchart of the second embodiment of a method for positioning an indoor target in this application.
[0086] Based on the above first embodiment, step S10 of the indoor target positioning method in this embodiment includes:
[0087] Step S101: Obtain the first set of position points corresponding to the indoor target.
[0088] It should be noted that after the indoor target positioning device receives the UWB positioning information fed back by the UWB tag, it can store it. At this time, obtaining the first set of position points corresponding to the indoor target can be obtaining the UWB positioning information fed back by the non-fixed positioning tag worn by the indoor target, and constructing the first set of position points according to the UWB positioning information.
[0089] Step S102: Collect data from the non-fixed positioning tags deployed on the indoor target to obtain acceleration data and gyroscope data.
[0090] It should be noted that collecting data from the non-fixed positioning tags deployed on the indoor target to obtain acceleration data and gyroscope data can be collecting data from the inertial measurement unit included in the non-fixed positioning tags deployed on the indoor target to obtain acceleration data and gyroscope data.
[0091] Among them, the acceleration data can be the data collected by the 3-axis accelerometer in the inertial measurement unit, and the gyroscope data can be the data collected by the 3-axis gyroscope in the inertial measurement unit.
[0092] Step S103: Determine the current speed data of the indoor target according to the acceleration data, and determine the current heading data of the indoor target according to the gyroscope data.
[0093] In actual use, determining the current speed data of the indoor target according to the acceleration data can be taking the modulus of the acceleration data (such as 3-axis acceleration), obtaining the combined acceleration according to the modulus value, extracting the number of steps and stride of the indoor target's movement based on the combined acceleration characteristics, and then obtaining the current speed data of the indoor target (such as the number of steps multiplied by the stride). Of course, it can also be to determine the current speed data of the indoor target based on the acceleration data through a pre-trained deep learning model or neural network model.
[0094] And determining the current heading data of the indoor target according to the gyroscope data can be integrating the gyroscope data (such as performing an integration operation using the gyroscope integration algorithm), determining the heading angle of the non-fixed positioning tag, and taking it as the current heading data of the indoor target.
[0095] In a specific implementation, in order to avoid reducing the error of the heading, the step of determining the current heading data of the indoor target according to the gyroscope data in this embodiment may include:
[0096] Integrate the gyroscope data to obtain the tag heading data;
[0097] Smooth the tag heading data according to the historical heading data to obtain the current heading data of the indoor target.
[0098] It should be noted that the tag heading data can be the heading data of a non-fixed positioning tag, such as the heading angle. The historical heading data can be the heading data of an indoor target determined previously.
[0099] In actual use, since the tags adopted are non-fixed positioning tags and such tags are not fixed by specific means, during the movement of the indoor target, the non-fixed positioning tags may shake, resulting in a deviation between the heading angle of the non-fixed positioning tag and the actual heading angle of the indoor target. Directly using the heading angle of the non-fixed positioning tag as the heading data of the indoor target will result in a large error. Therefore, the historical heading data of the indoor target can be used to smooth the heading angle of the non-fixed positioning tag, and then the smoothed heading angle can be used as the current heading data of the indoor target to reduce the error. Among them, when performing the smoothing process, a moving average algorithm can be used for smoothing.
[0100] For example: Take the heading data of the indoor target in the N frames before the current moment as the historical heading data, calculate the average value of the historical heading data and the tag heading data, and use the calculated average value as the current heading data of the indoor target. Among them, N can be set in advance by the administrator of the indoor target positioning device.
[0101] In actual applications, since the non-fixed positioning tags are not fixed, during the movement of the indoor target, the non-fixed positioning tags may not only shake but also flip. At this time, this situation needs to be identified and dealt with to ensure the accuracy of the determined heading data. Then, in this embodiment, the step of smoothing the tag heading data according to the historical heading data to obtain the current heading data of the indoor target may include:
[0102] Compare the acceleration data with a preset determination threshold;
[0103] If the acceleration data is greater than the preset determination threshold, obtain the historical determination acceleration;
[0104] If the acceleration data is in the opposite direction to the historical determination acceleration, use the acceleration data as the new historical determination acceleration and compensate the tag heading data to obtain compensated heading data;
[0105] Smooth the compensated heading data according to the historical heading data to obtain the current heading data of the indoor target.
[0106] For the sake of easy understanding, now in combination with Figure 4 it is described, but the present solution is not limited. Figure 4 It is a schematic diagram of the IMU axis acceleration information corresponding to the target navigation direction of this embodiment. As Figure 4As shown, assume that the IMU axis is the y-axis, and the corresponding data is acc_y. The part pointed by the arrow is the frame data that has flipped. Starting from Figure 4 it can be determined that during the movement of the indoor target, a corresponding acceleration information will be given to the non-fixed positioning tag. Although this acceleration fluctuates, it will generally tend to be positive or negative (depending on the initial wearing direction of the non-fixed positioning tag). If it generally tends to be positive (negative), a negative (positive) value may be measured, but the value is relatively small. This data characteristic is related to the rhythm when the indoor target moves (such as walking), but it does not affect the determination of flipping. If flipping occurs, the reverse of the non-fixed positioning tag will cause the IMU tag axis to reverse, and then cause the acceleration to change from positive to negative, or from negative to positive. Therefore, it is possible to determine whether the non-fixed positioning tag has flipped based on the acceleration data.
[0107] In actual use, it is possible to first detect whether the acceleration data is greater than a certain threshold (i.e., the preset determination threshold) to avoid interference caused by the target stopping, turning, or measurement fluctuations. If the acceleration data is greater than the preset determination threshold, it means that it is not the interference situation caused by the target stopping, turning, or measurement fluctuations at this time. At this time, it is possible to further detect whether the current acceleration data is in the opposite direction to the historical determination acceleration. If the current acceleration data is in the opposite direction to the historical determination acceleration, it means that the non-fixed positioning tag has flipped at this time. At this time, in order to ensure that it is possible to continue to judge whether flipping has occurred in the future, the current acceleration data can be used as the new historical determination acceleration, compensate the tag heading data, and use the compensated tag heading data as the compensated heading data.
[0108] In actual implementation, compensating the tag heading data can adopt any one of the following three schemes:
[0109] Scheme 1: Directly compensate the heading by 180 degrees, that is, after detecting the flip, compensate the IMU tag heading at the current moment by 180 degrees. After compensation, then use the moving average algorithm to obtain the current heading data of the indoor target.
[0110] Scheme 2: Set the heading to invalid, that is, after detecting the flip, it is considered that the non-fixed positioning tag is in an irregular state at this time, and directly set the IMU heading to invalid, indicating that it cannot be obtained at this time.
[0111] Scheme 3: Combine Scheme 1 and Scheme 2. If it is detected that the non-fixed positioning tag flips occasionally, for example, the non-fixed positioning tag flips only once when the indoor target moves a certain distance (such as more than ten meters), Scheme 1 is used for compensation at this time; if it is detected that the non-fixed positioning tag flips frequently, for example, the non-fixed positioning tag flips multiple times when the indoor target moves a certain distance (such as more than ten meters), it can be determined that there is a greater risk of compensation at this time, and Scheme 2 is used to set the IMU heading to invalid.
[0112] Among them, if the IMU heading is set to invalid, it indicates that the heading data of the indoor target cannot be obtained at this time. At this time, the current heading data of the indoor target can be marked as invalid or unavailable.
[0113] Step S104: Construct a second set of position points corresponding to the indoor target according to the current speed data, the current heading data, the historical speed data, and the historical heading data.
[0114] It should be noted that constructing a second set of position points corresponding to the indoor target according to the current speed data, the current heading data, the historical speed data, and the historical heading data can be to aggregate the current speed data and the historical speed data to obtain the overall speed data, and aggregate the current heading data and the historical heading data to obtain the overall heading data. Then, a second set of position points corresponding to the indoor target is constructed according to the overall speed data and the overall heading data through a preset algorithm. Among them, the preset algorithm can be pre-set by the administrator of the indoor target positioning device. For example, the PDR algorithm is set as the preset algorithm. Of course, similar algorithms can also be used, and this embodiment does not limit this.
[0115] In this embodiment, a first set of position points corresponding to the indoor target is obtained; data of the non-fixed positioning tags deployed on the indoor target is collected to obtain acceleration data and gyroscope data; the current speed data of the indoor target is determined according to the acceleration data, and the current heading data of the indoor target is determined according to the gyroscope data; a second set of position points corresponding to the indoor target is constructed according to the current speed data, the current heading data, the historical speed data, and the historical heading data. Since the tag heading of the non-fixed positioning tag can be deduced according to the gyroscope data collected by the gyroscope, it is then detected whether the non-fixed positioning tag has flipped, and the tag heading data is compensated when it flips. Then, the tag heading data is smoothed to obtain the current heading data of the indoor user, which ensures the accuracy of the heading data as much as possible and ensures the positioning accuracy of the constructed second set of position points.
[0116] Reference Figure 5 , Figure 5 is a schematic flowchart of the third embodiment of an indoor target positioning method of the present application.
[0117] Based on the above first embodiment, before step S20 of the indoor target positioning method of this embodiment, it further includes:
[0118] Step S11: Obtain the heading data corresponding to the second set of position points.
[0119] It should be noted that the heading data corresponding to the second set of position points can be to construct the second PositionAll the heading data used for the point set.
[0120] Step S12: Correct the heading data according to the first position point set to obtain corrected heading data.
[0121] Step S13: Correct the position points of the second position point set according to the corrected heading data to obtain the corrected second position point set.
[0122] It should be noted that there is an accumulated error in the heading obtained by IMU integration, and it can only ensure the accuracy of short-time and short-distance positioning. Therefore, it is necessary to correct the heading obtained by IMU integration through the positioning data generated by UWB technology at intervals. Therefore, the heading data corresponding to the second position point set can be corrected according to the first position point set, and the corrected heading data is used as the corrected heading data.
[0123] It can be understood that after the heading correction, the position points of the entire second position point set can be corrected according to the corrected heading data obtained, so as to ensure the accuracy of IMU positioning.
[0124] At this time, step 20 of this embodiment may include:
[0125] Step S20': Fuse the first position point set and the corrected second position point set to obtain a fused position point set.
[0126] It can be understood that the corrected second position point set obtained after calibration and correction has a higher credibility. At this time, combining it with the first position point set can improve the positioning accuracy of the fused position point set obtained after fusion.
[0127] In specific implementation, the heading data corresponding to the second position point set can be calibrated by combining the UWB positioning data when walking in a straight line indoors. Then, step S12 of this embodiment may include:
[0128] Extract a straight-line position point subset from the first position point set, and extract the corresponding heading sub-data of the straight-line position point subset from the heading data;
[0129] Calculate the average value corresponding to the heading sub-data to obtain an average heading angle, and determine the fitted heading data according to the straight-line position point subset;
[0130] Determine a calibration angle according to the fitted heading data and the average heading angle;
[0131] Correct the heading data according to the calibration angle to obtain corrected heading data.
[0132] It should be noted that the straight-line position point subset can be a set composed of the position points corresponding to the indoor targets in the first position point set when they move in a straight line (a part or all of the position points during straight-line movement). Extracting the heading sub-data corresponding to the straight-line position point subset from the heading data corresponding to the second position point set can be to obtain the time period corresponding to the straight-line position point subset, and extract the heading data corresponding to this part of the time period from the heading data corresponding to the second position point set as the heading sub-data.
[0133] In actual use, determining the fitted heading data according to the straight-line position point subset can be to fit according to the straight-line position point subset through a preset algorithm, determine the heading angle of the moving route of the indoor target corresponding to the straight-line position point subset, and use it as the fitted heading data. Determining the calibration angle according to the fitted heading data and the average heading angle can be to subtract the average heading angle from the fitted heading data, and use the obtained difference as the calibration angle. Correcting the heading data according to the calibration angle to obtain the corrected heading data can be to add the calibration angle and the heading data, and use the obtained heading angle as the corrected heading data. Among them, when correcting, only the heading sub-data in the heading data can be corrected. Of course, the heading data that is always after the heading sub-data can also be corrected.
[0134] In specific applications, the indoor target positioning device can detect the first position point set and the second position point set in real time to determine whether the indoor target moves in a straight line. If so, at this time, the straight-line position point subset can be extracted from the first position point set, and the heading data corresponding to the second position point set can be corrected accordingly. Among them, after detecting that the indoor target moves in a straight line, it is also possible not to directly extract the straight-line position point subset from the first position point set, but to detect the duration of the indoor target moving in a straight line. When the duration of the straight-line movement reaches a certain value (such as 2 seconds), the straight-line position point subset is extracted from the first position point set, and the heading data corresponding to the second position point set is corrected accordingly.
[0135] For the sake of easy understanding, an example is given as follows: Find the straight-line walking route segment (the route segment corresponding to the previous M frames to the current frame in history, simply referred to as the straight-line segment). Use the least squares algorithm to fit the UWB position points (i.e., the straight-line position point subset) based on the straight-line segment to obtain the "UWB fitted heading angle θ uwb " (i.e., the fitted heading data). Based on the target heading θ tar obtained by the IMU within the time interval of the straight-line segment, average to obtain the "IMU average heading angle θ tar_avg " (i.e., the average heading angle). Subtract the "IMU average heading angle" from the "UWB fitted heading angle θ uwb " to obtain the "calibration angle θ imu_avg ", which is the angle θ calib that the IMU heading angle needs to rotate. At this moment, obtain θimu_avg The corresponding UWB positioning coordinates are the IMU coordinates to be corrected as the reference coordinates (x UWB_calib , y UWB_calib ).
[0136] In specific implementation, the heading data corresponding to the second set of position points can also be calibrated by curve fitting. In this case, step S12 in this embodiment may include:
[0137] Extract the subset of position points to be corrected from the second set of position points, and extract the corresponding subset of calibrated position points of the subset of position points to be corrected from the first set of position points;
[0138] Generate a plurality of adjustment angles by stepping with a preset angle as the step size;
[0139] Adjust the subset of position points to be corrected according to each adjustment angle respectively, and calculate the matching error between the adjusted subset of position points to be corrected and the subset of calibrated position points, so as to obtain the matching error corresponding to each adjustment angle;
[0140] Select the calibration angle from the plurality of adjustment angles according to the matching error;
[0141] Correct the heading data according to the calibration angle to obtain the corrected heading data.
[0142] It should be noted that extracting the subset of position points to be corrected from the second set of position points may be to extract the uncorrected position points with a preset interval length from the second set of position points and aggregate them as the subset of position points to be corrected. For example: extract the uncorrected position points corresponding to the previous N frames to the current frame from the second set of position points and aggregate them as the subset of position points to be corrected. Among them, the uncorrected position points may be the position points that have not been corrected using the relevant data in the first set of position points.
[0143] In actual use, generating a plurality of adjustment angles by stepping with a preset angle as the step size may be to generate a plurality of adjustment angles according to the adjustment angle range with the preset angle as the step size. For example: assuming the adjustment angle range is 0-360°, and at this time, with 1° as the step size, then 1°, 2°,... 360° can be generated, a total of 360 adjustment angles.
[0144] In actual use, the subsets of position points to be corrected are adjusted according to respective adjustment angles, and the matching errors between the adjusted subsets of position points to be corrected and the subset of calibrated position points are calculated. Obtaining the matching errors corresponding to the respective adjustment angles can be achieved by rotating the subsets of position points to be corrected according to the respective adjustment angles, matching the rotated subsets of position points to be corrected with the subset of calibrated position points, and determining the matching errors therebetween, thereby obtaining the matching errors corresponding to the respective adjustment angles. Among them, rotating the subsets of position points to be corrected according to the adjustment angles can be realized by adjusting the heading data corresponding to each position point in the subsets of position points to be corrected, that is, adding the adjustment angle to the heading data corresponding to the position point.
[0145] For example: Assume the adjustment angles include A, B, and C. Then, rotate the subsets of position points to be corrected according to A to generate the adjusted subset of corrected position points A1. Similarly, obtain B1 and C1. After that, match A1, B1, and C1 with the subset of calibrated position points respectively, thereby obtaining the matching errors corresponding to the respective adjustment angles.
[0146] In actual use, selecting the calibration angle from multiple adjustment angles according to the matching errors can be achieved by taking the adjustment angle corresponding to the minimum matching error among the multiple adjustment angles as the calibration angle. Correcting the heading data according to the calibration angle to obtain the corrected heading data can be realized by adding the calibration angle to the heading data and taking the resulting heading angle as the corrected heading data. Among them, during correction, only the heading sub-data in the heading data can be corrected. Of course, the heading data that is always after the heading sub-data can also be corrected.
[0147] It should be noted that for the above two correction methods, the route length corresponding to the subset of position points obtained from the first set of position points needs to be greater than a certain threshold, such as greater than 5 m, and the first set of position points and the second set of position points need to be reliable. For example, the route corresponding to the first set of position points cannot be in the NLOS area and there cannot be position mutation points; the IMU cannot detect a flip.
[0148] For the sake of easy understanding, an example is given for illustration. The second set of position points can be calculated by using the PDR algorithm based on the speed data and the heading data. The position point calculation formula therein can be expressed as follows:
[0149]
[0150] In the formula, vel i-1 is the speed data at the (i - 1)th moment; Δt is the frame interval between two adjacent moments; θ tar_i-1 is the heading data of the indoor target obtained by integrating the IMU at the (i - 1)th moment.
[0151] If the heading data corresponding to the second set of position points is corrected according to the first set of position points at time j, the position point extrapolation formula for the corrected second set of position points after time j can be expressed as follows:
[0152]
[0153] where i ≥ j, θ calib_j is the calibration angle at time j, and (x UWB_calib_j , y UWB_calib_j ) is the correction reference coordinate at time j. Compared with the uncorrected second set of position points, the corrected second set of position points intermittently corrects the cumulative error of the IMU. After correction, the corrected second set of position points is used for fusion with the first set of position points, which can ensure higher accuracy of the fused set of position points obtained after fusion.
[0154] In this embodiment, the heading data corresponding to the second set of position points is corrected by the first set of position points, excluding the case of IMU error accumulation. On this basis, the second set of position points is corrected, making the positioning of the second set of position points more accurate, and thus making the positioning of the fused set of position points obtained by fusion more accurate.
[0155] Reference Figure 6 , Figure 6 is a schematic flowchart of the fourth embodiment of an indoor target positioning method of this application.
[0156] Based on the above first embodiment, step S20 of the indoor target positioning method in this embodiment includes:
[0157] Step S201: Obtain the confidence corresponding to the first set of position points.
[0158] It should be noted that the confidence corresponding to the first set of position points can be a quantitative score used to characterize the positioning accuracy of the first set of position points. The higher the confidence, the higher the positioning accuracy of the first set of position points is characterized.
[0159] In actual use, the confidence of the first set of position points can be determined according to the number of position points in the first set of position points whose state is the NLOS state. The more the number of position points in the NLOS state, the lower the confidence of the first set of position points;
[0160] In addition, the confidence of the first set of position points can also be determined according to the amplitude of position fluctuations in the first set of position points. For example: the smoother the displacement routes corresponding to the position points in the first set of position points, that is, the lower the amplitude of position fluctuations, the higher the confidence corresponding to the first set of position points, and vice versa, the lower it is.
[0161] Step S202: If the confidence level is less than a preset high confidence threshold, then detect whether the second set of position points is credible.
[0162] In actual use, if the confidence level of the first set of position points is less than a preset high confidence threshold, it means that the confidence level of the first set of position points is not very high at this time (the confidence level is relatively low compared to the high confidence threshold and cannot be directly adopted). At this time, it is necessary to detect whether the first set of position points can be corrected through the second set of position points. Therefore, it is possible to detect whether the second set of position points is feasible.
[0163] In a specific implementation, detecting whether the second set of position points is credible can be detecting whether the second set of position points has been calibrated (such as whether the correction in the third embodiment has been performed). If the correction has been performed, it is determined that the second set of position points is credible; if the correction has not been performed, it is determined that the second set of position points is not credible.
[0164] Of course, it is also possible to determine whether the second set of position points is credible based on whether there is a heading calibrated as invalid in the recent headings corresponding to the second set of position points.
[0165] For example: In the heading data corresponding to the second set of position points, if there is a heading calibrated as invalid in the recent period (such as within 20 seconds), it means that the non-fixed positioning tag has flipped recently. At this time, it can be determined that the second set of position points is not credible; otherwise, it is determined that the second set of position points is credible.
[0166] It can be understood that if the confidence level of the first set of position points is greater than a preset high confidence threshold, it means that the positioning accuracy of the first set of position points is extremely high at this time. At this time, the first set of position points can be directly used as the fused set of position points;
[0167] Similarly, if the second set of position points is not credible, it means that even if the second set of position points is fused with the first set of position points at this time, the positioning accuracy cannot be improved. At this time, the first set of position points can be directly used as the fused set of position points.
[0168] Step S203: If the second set of position points is credible, then set a corresponding weight coefficient for the second set of position points.
[0169] It can be understood that if the second set of position points is credible, it means that the second set of position points can be fused with the first set of position points at this time to try to improve the positioning accuracy. In order to perform the fusion reasonably, a corresponding weight coefficient can be set for the second set of position points at this time. Among them, for the convenience of distinction, multiple gears can be set for the weight coefficient corresponding to the second set of position points, such as setting three gears of {0.2, 0.5, 0.8}.
[0170] In actual use, the weight coefficient corresponding to the second set of position points is set based on at least one of the position correction time of the second set of position points, the degree of fluctuation corresponding to the first set of position points, and the linearity of the second set of position points. Among them, the position correction time of the second set of position points can be the time when the course data of the second set of position points is corrected by the first set of position points.
[0171] In actual application, if the position correction time of the second set of position points is relatively close to the current time, it can be considered that the positioning accuracy of the second set of position points is relatively high. At this time, the weight coefficient corresponding to the second set of position points can be set relatively high. For example, assume that the number of frames between the position correction time of the second set of position points and the current time is delt_frm. If delt_frm < 5 at this time, the weight coefficient corresponding to the second set of position points is set to 0.8.
[0172] In actual application, if the degree of fluctuation corresponding to the first set of position points is relatively low, it can be considered that although the positioning accuracy of the first set of position points is not extremely high, it is still relatively high. At this time, the weight coefficient corresponding to the first set of position points can be set relatively high, that is, the weight coefficient of the second set of position points is set relatively low. For example, if it is inferred based on vel that the degree of fluctuation of the first set of position points is less than a certain threshold, it can be considered at this time that UWB has not entered the NLOS area, and its positioning accuracy is relatively high, and it is inclined to trust UWB. Therefore, the weight coefficient corresponding to the second set of position points can be set to 0.2, and the weight coefficient corresponding to the first set of position points can be set to 0.8.
[0173] Among them, the degree of fluctuation of the first set of position points can be determined based on the speed of the indoor target. For example: the distance value between position points at two moments in the first set of position points is 1 meter. However, according to the speed of the indoor target, the displacement distance between these two moments is determined to be 3 meters. Then, the fluctuation between these two moments can be determined to be 2 meters at this time.
[0174] In specific applications, if the degree of fluctuation of the first set of position points is extremely large, but the second set of position points is reliable, the weight coefficient of the first set of position points can also be set to 0 at this time, that is, directly use the second set of position points as the fused set of position points.
[0175] In actual use, when positioning according to UWB, the calculation algorithms of its set of position points may also be inconsistent. At this time, the positioning accuracy of the first set of position points can also be determined by the algorithm used, and the weight coefficient corresponding to the first set of position points can be determined according to the positioning accuracy, so as to inversely deduce the weight coefficient corresponding to the second set of position points.
[0176] For example: when constructing the first set of position points, the algorithm used is a high-precision algorithm, then the weight coefficient of the first set of position points can be set relatively high, such as 0.8.
[0177] In specific applications, due to the characteristics of the construction of the second position point set, when the indoor target walks in a straight line, its relative positioning accuracy is relatively high. Therefore, when setting the second position point set, it can also be set according to the linearity corresponding to the second position point set. Among them, the linearity corresponding to the second position point set is the degree of similarity between the movement route corresponding to the second position point set and a straight line.
[0178] For example: If the linearity of the current second position point set is X, then multiple linearity intervals can be set at this time. If X is in the first linearity interval, the weight coefficient of the second position point set is set to 0.8; if X is in the second defined interval, the weight coefficient of the second position point set is set to 0.5.
[0179] It can be understood that the above-mentioned multiple ways of setting the weight coefficient can be combined and used, and this embodiment does not limit this.
[0180] Step S204: Fuse the first position point set and the second position point set according to the weight coefficient to obtain a fused position point set.
[0181] In actual use, fusing the first position point set and the second position point set according to the weight coefficient to obtain a fused position point set can be to perform weighted summation on the position points corresponding to each moment in the first position point set and the second position point set according to the weight coefficient, so as to obtain a fused position point set.
[0182] Among them, when performing weighted summation, the weight coefficient corresponding to the first position point set is the difference between 1 and the weight coefficient corresponding to the second position point set. For example: Assume that the weight coefficient corresponding to the second position point set is lamda, then the weight coefficient corresponding to the first position point set is 1 - lamda.
[0183] In this embodiment, when performing fusion, the confidence of the first position point set and whether the second position point set is credible are also considered, so as to ensure that reasonable fusion can be performed during fusion, and avoid the situation where the positioning accuracy is reduced after fusion.
[0184] In addition, an embodiment of the present application also proposes a storage medium, on which an indoor target positioning program is stored. When the indoor target positioning program is executed by a processor, the steps of the indoor target positioning method described above are implemented.
[0185] Refer to Figure 7 , Figure 7 which is the structural block diagram of the first embodiment of the indoor target positioning device of the present application.
[0186] Such as Figure 7As shown in the figure, the indoor target positioning device proposed in the embodiment of the present application includes:
[0187] An acquisition module 10, configured to acquire a first set of position points and a second set of position points corresponding to an indoor target, where the first set of position points is obtained by positioning the indoor target through UWB technology, and the second set of position points is calculated based on the heading data and speed data of the indoor target, and the heading data and the speed data are determined by collecting data from a non-fixed positioning tag deployed on the indoor target;
[0188] A fusion module 20, configured to fuse the first set of position points and the second set of position points to obtain a fused set of position points;
[0189] A positioning module 30, configured to position the indoor target according to the fused set of position points.
[0190] In this embodiment, by acquiring a first set of position points and a second set of position points corresponding to an indoor target, the first set of position points is obtained by positioning the indoor target through UWB technology, and the second set of position points is calculated based on the heading data and speed data of the indoor target, and the heading data and the speed data are determined by collecting data from a non-fixed positioning tag deployed on the indoor target; fusing the first set of position points and the second set of position points to obtain a fused set of position points; and positioning the indoor target according to the fused set of position points. Since the position point sets are constructed by two different positioning methods respectively, and the two position point sets are fused, the advantages of the two positioning technologies are combined, so as to ensure accurate positioning of the indoor target.
[0191] In a possible implementation manner of this embodiment, the acquisition module 10 is further configured to acquire a first set of position points corresponding to an indoor target; collect data from a non-fixed positioning tag deployed on the indoor target to obtain acceleration data and gyroscope data; determine the current speed data of the indoor target according to the acceleration data, and determine the current heading data of the indoor target according to the gyroscope data; and construct the second set of position points corresponding to the indoor target according to the current speed data, the current heading data, the historical speed data, and the historical heading data.
[0192] In a possible implementation manner of this embodiment, the acquisition module 10 is further configured to integrate the gyroscope data to obtain tag heading data; and smooth the tag heading data according to the historical heading data to obtain the current heading data of the indoor target.
[0193] In a possible implementation manner of this embodiment, the obtaining module 10 is further configured to compare the acceleration data with a preset determination threshold; if the acceleration data is greater than the preset determination threshold, obtain historical determination acceleration; if the acceleration data is in the opposite direction to the historical determination acceleration, use the acceleration data as the new historical determination acceleration, and compensate the labeled heading data to obtain compensated heading data; perform smoothing processing on the compensated heading data according to the historical heading data to obtain the current heading data of the indoor target.
[0194] In a possible implementation manner of this embodiment, the fusion module 20 is further configured to obtain the confidence corresponding to the first set of position points; if the confidence is less than a preset high-confidence threshold, detect whether the second set of position points is credible; if the second set of position points is credible, set a corresponding weight coefficient for the second set of position points; fuse the first set of position points and the second set of position points according to the weight coefficient to obtain a fused set of position points.
[0195] In a possible implementation manner of this embodiment, the weight coefficient corresponding to the second set of position points is set based on at least one of the position correction time of the second set of position points, the fluctuation degree corresponding to the first set of position points, and the linearity of the second set of position points.
[0196] In a possible implementation manner of this embodiment, the fusion module 20 is further configured to obtain the heading data corresponding to the second set of position points; correct the heading data according to the first set of position points to obtain corrected heading data; perform position point correction on the second set of position points according to the corrected heading data to obtain a corrected second set of position points;
[0197] The fusion module 20 is further configured to fuse the first set of position points and the corrected second set of position points to obtain a fused set of position points.
[0198] In a possible implementation manner of this embodiment, the fusion module 20 is further configured to extract a straight-line position point subset from the first set of position points, and extract the heading sub-data corresponding to the straight-line position point subset from the heading data; calculate the average value corresponding to the heading sub-data to obtain an average heading angle, and determine the fitted heading data according to the straight-line position point subset; determine a calibration angle according to the fitted heading data and the average heading angle; correct the heading data according to the calibration angle to obtain corrected heading data.
[0199] In a possible implementation of this embodiment, the fusion module 20 is further configured to extract a subset of position points to be corrected from the second set of position points, and extract a corresponding subset of calibrated position points from the first set of position points; generate a plurality of adjustment angles by stepping with a preset angle as a step; adjust the subset of position points to be corrected according to each adjustment angle respectively, and calculate the matching error between the adjusted subset of position points to be corrected and the subset of calibrated position points, so as to obtain the matching error corresponding to each adjustment angle; select a calibration angle from the plurality of adjustment angles according to the matching error; and correct the heading data according to the calibration angle to obtain corrected heading data.
[0200] It should be understood that the above is only an example for illustration and does not constitute any limitation to the technical solution of the present application. In specific applications, those skilled in the art can set according to needs, and the present application does not make any restrictions in this regard.
[0201] It should be noted that the above-described work process is only illustrative and does not limit the protection scope of the present application. In actual applications, those skilled in the art can select some or all of them according to actual needs to achieve the purpose of the solution of this embodiment, and no restrictions are imposed here.
[0202] In addition, for the technical details not described in detail in this embodiment, reference can be made to the indoor target positioning method provided in any embodiment of the present application, which will not be elaborated here.
[0203] In addition, it should be noted that in this article, the term "including", "comprising" or any other variant thereof is intended to cover non-exclusive inclusion, so that a process, method, article or system including a series of elements not only includes those elements, but also includes other elements not expressly listed, or further includes elements inherent to such process, method, article or system. Without further limitation, an element defined by the statement "including a..." does not exclude the existence of another identical element in the process, method, article or system including that element.
[0204] The serial numbers of the embodiments of the present application above are only for description and do not represent the advantages or disadvantages of the embodiments.
[0205] Through the description of the above embodiments, those skilled in the art can clearly understand that the above-described embodiment methods can be implemented by means of software plus a necessary general hardware platform. Of course, they can also be implemented by hardware, but in many cases, the former is a better implementation. Based on such an understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as a read-only memory (ROM) / RAM, magnetic disk, optical disk), and includes several instructions for causing a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in various embodiments of the present application.
[0206] The above are only the preferred embodiments of the present application, and do not limit the scope of the present application. Any equivalent structure or equivalent process transformation made by using the content of the specification and drawings of the present application, or directly or indirectly applied in other related technical fields, shall be equally included in the protection scope of the present application.
Claims
1. An indoor target positioning method, characterized in that, The indoor target positioning method: Obtain a first set of position points and a second set of position points corresponding to the indoor target. The first set of position points is obtained by positioning the indoor target through UWB technology, and the second set of position points is calculated based on the heading data and speed data of the indoor target. The heading data and the speed data are determined by collecting data from a non-fixed positioning tag deployed on the indoor target; Fuse the first set of position points and the second set of position points to obtain a fused set of position points; Locate the indoor target according to the fused set of position points.
2. The indoor target positioning method according to claim 1, characterized in that, The obtaining of the first set of position points and the second set of position points corresponding to the indoor target includes: Obtain a first set of position points corresponding to the indoor target; Collect data from a non-fixed positioning tag deployed on the indoor target to obtain acceleration data and gyroscope data; Determine the current speed data of the indoor target according to the acceleration data, and determine the current heading data of the indoor target according to the gyroscope data; Construct a second set of position points corresponding to the indoor target according to the current speed data, the current heading data, the historical speed data, and the historical heading data.
3. The indoor target positioning method according to claim 2, characterized in that, The determining of the current heading data of the indoor target according to the gyroscope data includes: Integrate the gyroscope data to obtain tag heading data; Smooth the tag heading data according to the historical heading data to obtain the current heading data of the indoor target.
4. The indoor target positioning method according to claim 3, characterized in that, The smoothing of the tag heading data according to the historical heading data to obtain the current heading data of the indoor target includes: Compare the acceleration data with a preset determination threshold; If the acceleration data is greater than the preset determination threshold, obtain the historical determination acceleration; If the acceleration data is in the opposite direction to the historical determination acceleration, use the acceleration data as the new historical determination acceleration, and compensate the tag heading data to obtain compensated heading data; Smooth the compensated heading data according to the historical heading data to obtain the current heading data of the indoor target.
5. The indoor target positioning method according to claim 1, characterized in that, The fusing of the first set of position points and the second set of position points to obtain a fused set of position points includes: Obtain the confidence level corresponding to the first set of position points; If the confidence level is less than a preset high confidence threshold, detect whether the second set of position points is credible; If the second set of position points is credible, set a corresponding weight coefficient for the second set of position points; Fuse the first set of position points and the second set of position points according to the weight coefficient to obtain a fused set of position points.
6. The indoor target positioning method according to claim 5, characterized in that, The weight coefficient corresponding to the second set of position points is set based on at least one of the position correction time of the second set of position points, the fluctuation degree corresponding to the first set of position points, and the linearity of the second set of position points.
7. The indoor target positioning method according to claim 1, characterized in that, Before the fusing of the first set of position points and the second set of position points to obtain a fused set of position points, it further includes: Obtain the heading data corresponding to the second set of position points; Correct the heading data according to the first set of position points to obtain corrected heading data; Correct the position points of the second set of position points according to the corrected heading data to obtain a corrected second set of position points; The fusing the first set of position points with the second set of position points to obtain a fused set of position points includes: Fuse the first set of position points with the corrected second set of position points to obtain a fused set of position points.
8. The indoor target positioning method according to claim 7, characterized in that, The correcting the heading data according to the first set of position points to obtain corrected heading data includes: Extract a subset of straight-line position points from the first set of position points, and extract the corresponding heading sub-data of the subset of straight-line position points from the heading data; Calculate the average value corresponding to the heading sub-data to obtain an average heading angle, and determine the fitted heading data according to the subset of straight-line position points; Determine a calibration angle according to the fitted heading data and the average heading angle; Correct the heading data according to the calibration angle to obtain corrected heading data.
9. The indoor target positioning method according to claim 7, wherein, The correcting the heading data according to the first set of position points to obtain corrected heading data includes: Extract a subset of position points to be corrected from the second set of position points, and extract the corresponding subset of calibration position points of the subset of position points to be corrected from the first set of position points; Stepwise generate a plurality of adjustment angles with a preset angle as a step; Adjust the subset of position points to be corrected according to each adjustment angle respectively, and calculate the matching error between the adjusted subset of position points to be corrected and the subset of calibration position points to obtain the matching error corresponding to each adjustment angle; Select a calibration angle from the plurality of adjustment angles according to the matching error; Correct the heading data according to the calibration angle to obtain corrected heading data.
10. An indoor target positioning device, wherein, The indoor target positioning device includes the following modules: An acquisition module, configured to acquire a first set of position points and a second set of position points corresponding to an indoor target, where the first set of position points is obtained by positioning the indoor target through UWB technology, and the second set of position points is calculated according to the heading data and speed data of the indoor target, and the heading data and the speed data are determined by collecting data from a non-fixed positioning tag deployed on the indoor target; A fusion module, configured to fuse the first set of position points with the second set of position points to obtain a fused set of position points; A positioning module, configured to position the indoor target according to the fused set of position points.
11. An indoor target positioning equipment, wherein, The indoor target positioning device includes: a processor, a memory, and an indoor target positioning program stored on the memory and executable on the processor. When the indoor target positioning program is executed by the processor, the steps of the indoor target positioning method according to any one of claims 1-9 are implemented.
12. A computer-readable storage medium, wherein, An indoor target positioning program is stored on the computer-readable storage medium. When the indoor target positioning program is executed, the steps of the indoor target positioning method according to any one of claims 1-9 are implemented.