Positioning method, apparatus, device, and storage medium
By combining a floor classification model using graph convolutional neural networks and extreme learning machines with a semi-supervised regression algorithm and a location regression model using graph convolutional filters, the problems of low indoor positioning accuracy and large tag data requirements in fingerprint positioning methods are solved, achieving higher-precision indoor positioning.
Patent Information
- Application Number
- CN202210259077.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-03-16
- Publication Date
- 2025-11-04
- Estimated Expiration
- 2042-03-16
AI Technical Summary
Existing fingerprint positioning methods have significant errors in calculating indoor location height information, resulting in low positioning accuracy. Furthermore, they require a large amount of tag data to establish a fingerprint database, limiting their practicality.
A floor classification model based on graph convolutional neural networks and extreme learning machines is used for floor identification. A semi-supervised regression algorithm and a graph convolutional filter-based position regression model are combined for planar coordinate localization. Real-time MR data is used for localization, which reduces the difficulty of model training and improves accuracy.
By combining floor recognition and planar coordinate positioning, the error caused by calculating building height from MR data in existing technologies is avoided, improving the accuracy of indoor positioning. Furthermore, only a small amount of labeled data is needed to build the model, reducing the training difficulty.
Smart Images

Figure CN116824642B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of positioning, in particular to a positioning method, device, equipment and storage medium. BACKGROUND
[0002] Fingerprint positioning is a method of establishing an electronic map based on radio properties to locate. The fingerprint positioning method first needs to establish a fingerprint library, and then matches the data generated by the user when using to obtain the location of the user. Among them, the establishment of the fingerprint library collects signal strength data of each position, that is, fingerprint data, through offline measurement, and then calculates the distance information and height information of the position through the actual measured value to perform online positioning. The existing fingerprint positioning method has the problem of large error when calculating the height information of the position, resulting in low indoor positioning accuracy. SUMMARY
[0003] The main purpose of the present application is to provide a positioning method, device, equipment and storage medium, which aims to solve the technical problem of low indoor positioning accuracy in the prior art fingerprint positioning method.
[0004] To achieve the above purpose, the present application adopts the following technical scheme:
[0005] In a first aspect, the present application provides a positioning method, comprising:
[0006] obtaining real-time MR data;
[0007] According to the real-time MR data, using the floor classification model obtained by training to perform floor identification to obtain floor information; wherein the floor classification model is obtained based on a graph convolutional neural network and a extreme learning machine;
[0008] According to the floor information, using the position regression model obtained by training to perform plane coordinate positioning to obtain coordinate information; wherein the position regression model is obtained based on a semi-supervised regression algorithm and a graph convolutional filter;
[0009] According to the floor information and the coordinate information, a positioning result is obtained.
[0010] Optionally, in the above positioning method, before the step of obtaining floor information by using the floor classification model obtained by training to perform floor identification according to the real-time MR data, the method further comprises:
[0011] obtaining first training data, the first training data comprising original data and label data, the original data comprising MR data of a plurality of points, and the label data being obtained based on position information marked on the original data, wherein the position information comprises the floor and the coordinates in the floor of the point;
[0012] building a neural network architecture based on a graph convolutional neural network and an extreme learning machine;
[0013] training the neural network architecture based on the first training data by using a semi-supervised classification algorithm to obtain a floor classification model.
[0014] Optionally, in the positioning method described above, the step of training the neural network architecture based on the first training data by using a semi-supervised classification algorithm to obtain a floor classification model comprises:
[0015] establishing a graph structure by taking MR data of each point in the first training data as a node and a Euclidean distance between any two MR data as an edge to obtain an affinity matrix;
[0016] obtaining a corresponding Laplacian matrix based on the affinity matrix;
[0017] training the neural network architecture based on the Laplacian matrix by using a semi-supervised classification algorithm to obtain an initial classification model;
[0018] optimizing the initial classification model by using an alternating optimization strategy and a gradient descent algorithm to obtain a floor classification model.
[0019] Optionally, in the positioning method described above, after the step of training the neural network architecture based on the first training data by using a semi-supervised classification algorithm to obtain a floor classification model, the method further comprises:
[0020] performing accuracy evaluation on the floor classification model based on label data in the first training data;
[0021] if the accuracy of the floor classification model reaches a preset accuracy, determining the floor classification model as a floor classification model obtained by training;
[0022] if the accuracy of the floor classification model does not reach the preset accuracy, returning to the step of training the neural network architecture based on the first training data by using a semi-supervised classification algorithm to obtain a floor classification model until the accuracy of the floor classification model obtained by training reaches the preset accuracy.
[0023] Optionally, in the positioning method described above, the step of training the neural network architecture based on the first training data by using a semi-supervised classification algorithm to obtain a floor classification model further comprises:
[0024] training the neural network architecture based on the first training data by using a semi-supervised classification algorithm to obtain a label diffusion result matrix; the label diffusion result matrix comprises MR data with floor information.
[0025] Optionally, in the positioning method described above, after the step of training the neural network architecture to obtain a floor classification model according to the first training data using a semi-supervised classification algorithm, the method further comprises:
[0026] obtaining second training data according to the label propagation result matrix, the second training data being MR data of any floor with floor information;
[0027] filtering the second training data using a graph convolution filter to obtain filtered second training data, wherein the graph convolution filter comprises an input layer, a first convolution layer, a second convolution layer, and an output layer, the dimension of the first convolution layer being smaller than the dimension of the input layer, and the dimension of the second convolution layer being equal to the dimension of the input layer;
[0028] training a regression model according to the filtered second training data using a semi-supervised regression algorithm to obtain an initial regression model;
[0029] optimizing the initial regression model using a gradient descent algorithm to obtain a position regression model of the any floor.
[0030] Optionally, in the positioning method described above, after the step of optimizing the initial regression model using a gradient descent algorithm to obtain a position regression model of the any floor, the method further comprises:
[0031] obtaining a corresponding position regression model for each floor of the label propagation result matrix;
[0032] determining a position regression model obtained by training based on the position regression model of each floor.
[0033] In a second aspect, the present application provides a positioning device, which comprises:
[0034] a data acquisition module for acquiring real-time MR data;
[0035] a floor classification module for performing floor identification according to the real-time MR data using a floor classification model obtained by training to obtain floor information, wherein the floor classification model is obtained based on a graph convolution neural network and an extreme learning machine;
[0036] a coordinate positioning module for performing planar coordinate positioning according to the floor information using a position regression model obtained by training to obtain coordinate information, wherein the position regression model is obtained based on a semi-supervised regression algorithm and a graph convolution filter;
[0037] a positioning result module for obtaining a positioning result according to the floor information and the coordinate information.
[0038] In a third aspect, the present application provides a positioning device, comprising a processor and a memory, wherein the memory stores a positioning program, and the positioning program is executed by the processor to implement the positioning method as described above.
[0039] In a fourth aspect, the present application provides a computer readable storage medium, wherein the storage medium stores a computer program, and the computer program can be executed by one or more processors to implement the positioning method as described above.
[0040] The above one or more technical solutions provided by the present application can have the following advantages or at least achieve the following technical effects:
[0041] The positioning method, device, equipment and storage medium provided by the present application can achieve the purpose of indoor positioning by obtaining real-time MR data, performing floor identification by using the floor classification model obtained by training according to the real-time MR data, obtaining floor information, performing plane coordinate positioning by using the position regression model obtained by training according to the floor information, obtaining coordinate information, and finally obtaining the positioning result according to the floor information and the coordinate information. The floor classification model is obtained by constructing and training based on a graph convolutional neural network and an extreme learning machine, and then the floor identification is performed. Then, the position regression model based on a semi-supervised regression algorithm and a graph convolutional filter is constructed and trained according to the floor, and then the coordinate positioning is performed. On the basis of determining the floor, the specific coordinate is further positioned. Compared with the existing method of directly positioning the three-dimensional coordinate by using the MR data, the error caused by calculating the floor height by using the MR data is avoided, and the accuracy of indoor positioning is increased. Furthermore, the semi-supervised learning algorithm is used to construct the floor classification model and the position regression model, and only a small amount of labeled data is required, thereby reducing the difficulty of model training. BRIEF DESCRIPTION OF DRAWINGS
[0042] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the drawings needed to be used in the embodiments or the prior art description. Obviously, the drawings in the following description are only some embodiments of the present application, and for those skilled in the art, other drawings can also be obtained without creative labor on the basis of these drawings.
[0043] Figure 1 The flowchart of the first embodiment of the positioning method of the present application;
[0044] Figure 2 The hardware structure diagram of the positioning device related to the present application;
[0045] Figure 3 The functional module diagram of the first embodiment of the positioning device of the present application.
[0046] The objectives, features and advantages of the present application will be further illustrated in conjunction with the embodiments, with reference to the accompanying drawings. DETAILED DESCRIPTION
[0047] In order to make the objectives, technical solutions and advantages of the present application clearer, the technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative work fall within the protection scope of the present application.
[0048] It should be noted that, in the present application, the terms “comprising”, “containing” or any other variants thereof are intended to cover non-exclusive containing, so that a process, method, article or system including a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such a process, method, article or system. Without more limitations, the elements defined by the phrase “comprising” do not exclude the presence of other identical elements in the process, method, article or system including the elements. In addition, in the present application, if there is a description of “first”, “second” and the like, the description of “first”, “second” and the like is only for the purpose of description, and cannot be understood as indicating or implying the relative importance of the indicated technical features or implicitly indicating the number of the indicated technical features. Therefore, the features defined with “first”, “second” can explicitly or implicitly include at least one of the features.
[0049] In the present application, the suffixes such as “module”, “component” or “unit” used to represent elements are only for the convenience of description of the present application, and have no specific meaning in itself. Therefore, “module”, “component” or “unit” can be used mixedly. For those of ordinary skill in the art, the specific meaning of the above-mentioned terms in the present application can be understood according to the specific circumstances. In addition, the technical solutions of various embodiments can be combined with each other, but it must be based on the fact that the technical solutions can be realized by those of ordinary skill in the art. When the combination of technical solutions contradicts each other or cannot be realized, it should be considered that the combination of technical solutions does not exist, and is also not within the protection scope required by the present application.
[0050] Current positioning methods include: based on signal time of arrival (TOA) / time difference of arrival (TDOA) positioning, based on signal angle of arrival (AOA) positioning, based on signal frequency difference of arrival (FDOA) positioning, based on signal received strength (RSS) and fingerprint positioning method, etc. With the development and application of massive MIMO (massive MIMO) technology, single station positioning technology provides rich signal characteristics, which will help fingerprint positioning to construct a variety of characteristic position fingerprints, so as to more effectively provide the richness of the fingerprint library, making the fingerprint positioning more accurate. Therefore, it is necessary to further study the fingerprint positioning method.
[0051] Fingerprint positioning is a method of establishing an electronic map based on radio properties for positioning, which is based on the complexity of indoor environment and the signal reflection and refraction to form different signal strength information at different positions. The fingerprint positioning method first needs to establish a fingerprint library, and then matches the data generated by the user to obtain the position of the user. Among them, the fingerprint library includes time of arrival (TOA), angle of arrival (AOA), time difference of arrival (TDOA) and other fingerprint data. The establishment of the fingerprint library usually adopts an offline method, that is, the fingerprint signal strength data at each position, that is, the fingerprint data, is collected through offline measurement, and then a set of RSSI (Received Signal Strength Indication, signal received strength indication) values are measured to calculate the distance information and height information of the position for online positioning.
[0052] Through analysis of the prior art, it is found that the existing fingerprint positioning method has a problem of large error in calculating the height information of the position, resulting in low indoor positioning accuracy in the building.
[0053] In addition, when establishing the fingerprint library, it is not possible to measure all geographic positions, such as buildings, schools, hospitals and other buildings with certain height. Therefore, how to obtain the position data that cannot be measured to establish the fingerprint library is the key to fingerprint positioning. In view of this situation, the existing fingerprint positioning method mainly has the following methods for establishing the fingerprint library:
[0054] 1. Use the propagation model to establish the fingerprint library of unknown geographic position, which mainly establishes the propagation model according to the existing path loss model and the path loss coefficient for different physical scenes, so as to obtain the fingerprint information that cannot be directly measured;
[0055] 2. Establishing a fingerprint library of unknown geographic locations using a prediction model, which is mainly based on machine learning technology to predict the fingerprint information of unknown geographic locations, and then establishing a fingerprint library according to the prediction results, and then establishing a comparison model to confirm the positioning information;
[0056] 3. Grid processing and nonlinear change of the positioning area to establish a fingerprint library, which first simulates the positioning area to obtain the fingerprint features of each point, then performs nonlinear change on the obtained fingerprint features to expand the distance between each type of data, and then establishes a fingerprint matrix through the nonlinear changed fingerprint features, and finally forms a fingerprint library.
[0057] However, the above method has the problem that a large amount of labeled data is required to establish the fingerprint library, and the practicability is low.
[0058] In view of the technical problems of low indoor positioning accuracy and low practicability of the existing fingerprint positioning method, the present application provides a positioning method, the general idea is as follows:
[0059] Obtain real-time MR data; according to the real-time MR data, use the floor classification model obtained by training to perform floor identification and obtain floor information; wherein the floor classification model is obtained based on a graph convolutional neural network and a extreme learning machine; according to the floor information, use the position regression model obtained by training to perform plane coordinate positioning and obtain coordinate information; wherein the position regression model is obtained based on a semi-supervised regression algorithm and a graph convolutional filter; and obtain the positioning result according to the floor information and the coordinate information.
[0060] Through the above technical solution, the floor classification model obtained by training based on the graph convolutional neural network and the extreme learning machine is used to identify the floor, and then the position regression model obtained by training based on the semi-supervised regression algorithm and the graph convolutional filter corresponding to the floor is called to perform coordinate positioning. On the basis of determining the floor, the specific coordinates are further positioned. Compared with the existing method of directly positioning three-dimensional coordinates using MR data, the error caused by calculating the floor height using MR data is avoided, and the accuracy of indoor positioning is increased. Furthermore, the semi-supervised learning algorithm is used to construct the floor classification model and the position regression model, which only requires a small amount of labeled data, thereby reducing the difficulty of model training.
[0061] The positioning method, device, equipment and storage medium provided by the present application will be described in detail below with reference to the accompanying drawings, specific embodiments and implementation manners.
[0062] Embodiment one
[0063] Reference Figure 1Fig. 1 is a flowchart of a positioning method according to an embodiment of the present application, and the positioning method is applied to a positioning device.
[0064] The positioning device refers to a terminal device or a network device capable of realizing network connection, and the positioning device can be a terminal device such as a mobile phone, a computer, a tablet computer or an embedded industrial computer, or a network device such as a server or a cloud platform.
[0065] As shown in Fig. 1, the positioning device can include a processor 1001 such as a CPU (Central Processing Unit), a communication bus 1002, a user interface 1003, a network interface 1004 and a memory 1005. Figure 2
[0066] Those skilled in the art can understand that the hardware structure shown in Fig. 1 does not constitute a limitation on the positioning device of the present application, and the positioning device can include more or fewer components than those shown in the figure, or some components can be combined, or different components can be arranged. Figure 2
[0067] Specifically, the communication bus 1002 is used to realize the connection and communication among the components.
[0068] The user interface 1003 is used to connect a client and communicate data with the client, and the user interface 1003 can include an output unit such as a display screen and an input unit such as a keyboard. Optionally, the user interface 1003 can further include other input / output interfaces such as standard wired interfaces and wireless interfaces.
[0069] The network interface 1004 is used to connect a background server and communicate data with the background server, and the network interface 1004 can include input / output interfaces such as standard wired interfaces and wireless interfaces such as Wi-Fi interfaces.
[0070] The memory 1005 is used to store various types of data, which can include, for example, instructions of any application program or method in the positioning device and application program related data. The memory 1005 can be a high-speed RAM memory or a stable memory such as a disk memory. Optionally, the memory 1005 can also be a storage device independent of the processor 1001.
[0071] Specifically, continuing to refer to Fig. 1, the memory 1005 can include an operating system, a network communication module, a user interface module and a positioning program. The network communication module is mainly used to connect a communication base station and communicate data with the communication base station. Figure 2
[0072] The processor 1001 is configured to invoke a positioning program stored in the memory 1005, and perform the following operations:
[0073] obtain real-time MR data;
[0074] perform floor identification using a trained floor classification model based on the real-time MR data, to obtain floor information; the floor classification model is obtained based on a graph convolutional neural network and an extreme learning machine;
[0075] perform plane coordinate positioning using a trained position regression model based on the floor information, to obtain coordinate information; the position regression model is obtained based on a semi-supervised regression algorithm and a graph convolutional filter;
[0076] obtain a positioning result based on the floor information and the coordinate information.
[0077] Based on the positioning device described above, the positioning method of the present embodiment will be described in detail below in combination with the flowchart shown in FIG. 1. Figure 1 The method can include the following steps:
[0078] Step S100: Obtain real-time MR data.
[0079] MR (Measurement Report) data is the real measurement result of user communication collected by network communication equipment during the communication process between the user terminal and the base station, which contains key indicators of communication quality such as Reference Signal Receiving Power (RSRP) and Timing Advance (TA).
[0080] The fingerprint positioning method in the prior art directly positions three-dimensional coordinates using MR data, which includes an offline stage and an online stage. In the offline stage, when establishing a fingerprint library, a sufficient amount of MR data is obtained as fingerprint data in the stored fingerprint library, so that in the subsequent online stage, when real-time MR data is obtained, the real-time MR data is matched with the fingerprint data stored in the fingerprint library, to obtain positioning information. In the positioning information obtained in this way, there is often a large error in the positioning of floors or heights.
[0081] The method of the present embodiment can also be divided into an offline stage and an online stage. The offline stage is used to establish and train a floor classification model and a position regression model, so that in the online stage, real-time MR data is obtained, and the trained model is directly used for floor identification and coordinate positioning. The method of the present embodiment will be described in detail below, taking the application of the method to indoor positioning as an example. Those skilled in the art can understand that the method can also be applied to outdoor positioning.
[0082] Step S300: according to the real-time MR data, using the floor classification model obtained by training to perform floor identification, and obtaining floor information; wherein the floor classification model is obtained based on a graph convolution neural network and an extreme learning machine.
[0083] Specifically, the obtained real-time MR data is input into the floor classification model obtained by training, and the floor classification model identifies the floor where the positioning device is located and outputs the floor information of the positioning device. The floor classification model is constructed based on a graph convolution neural network (GCN) and an extreme learning machine (ELM), and the floor classification model can be trained using a semi-supervised classification algorithm in a semi-supervised learning algorithm according to a small amount of labeled data.
[0084] Further, before step S300, the method further comprises:
[0085] Step S200: obtaining a floor classification model obtained by training.
[0086] Specifically, step S200 can include:
[0087] Step S210: obtaining first training data, the first training data including original data and label data, the original data including MR data of multiple points, and the label data being obtained based on the original data after being marked with position information, wherein the position information includes the floor where the point is located and the coordinates in the floor.
[0088] The positioning device has a communication connection with a communication base station, and MR data of multiple points can be obtained through the communication base station, and these data are used as original data. The multiple points can be MR data of each point of one or more buildings in a cell under the jurisdiction of the communication base station, and the number of MR data can be determined according to the division of the points by the communication base station, and one point corresponds to one MR data.
[0089] After obtaining the original data, part of the MR data in the original data is marked with position information, mainly marking the floor where the point is located and the specific coordinates in the floor, thereby obtaining the label data. For example, for the MR data of each point in a building, i.e. the original data, at least 2 or 3 pieces of data per floor, i.e. part of the MR data in the original data, are marked with specific position information by manual marking, the specific position information including the floor where the point is located and the specific coordinates in the floor, and the label data is obtained according to the marked MR data. It should be noted that the MR data of any point in the label data has a corresponding relationship with the MR data in the original data.
[0090] The obtained raw data and label data are aggregated to obtain first training data for subsequent use as input for training a model.
[0091] Step S240: building a neural network architecture based on a graph convolutional neural network and an extreme learning machine.
[0092] A neural network architecture GCN-ELM is built based on a graph convolutional neural network (GCN) and an extreme learning machine (ELM), the GCN-ELM architecture comprising an input layer, two convolutional layers, a classification layer arranged in sequence, and a first output layer connected with the convolutional layers and a second output layer connected with the classification layer, the first output layer being used to output data after label diffusion on the first training data, each MR data in the data having floor information and being represented in a matrix form, that is, outputting a label diffusion result matrix, and the second output layer being used to output a trained model.
[0093] Step S250: training the neural network architecture according to the first training data by using a semi-supervised classification algorithm to obtain a floor classification model.
[0094] Further, step S250 can comprise:
[0095] Step S251: taking MR data of each point in the first training data as a node and taking the Euclidean distance between any two MR data as an edge to build a graph structure and obtain an affinity matrix.
[0096] Specifically, the MR data of each point is a piece of MR data, each piece of MR data in the first training data is regarded as a node, and the Euclidean distance between any two MR data is regarded as an edge to build a graph structure. Based on the information of the nodes and edges in the graph structure, an affinity matrix is established. The expression of the affinity matrix is:
[0097]
[0098] wherein S represents the affinity matrix, i represents a row of the affinity matrix, j represents a column of the affinity matrix, represents a Gaussian kernel width, e represents a natural constant, represents the distance from node x i to node x j , and ∈ represents a hyperparameter.
[0099] Step S252: obtaining a corresponding Laplacian matrix according to the affinity matrix.
[0100] Specifically, the calculation formula of the Laplacian matrix is:
[0101] L = D - S,
[0102] Wherein, L represents the Laplacian matrix, and D represents the degree matrix of the affinity matrix.
[0103] After obtaining the affinity matrix, the affinity matrix is converted into the form of a degree matrix, denoted as D, and then the Laplacian matrix L corresponding to the affinity matrix is obtained according to the above calculation formula.
[0104] Step S253: According to the Laplacian matrix, the neural network architecture is trained by using a semi-supervised classification algorithm to obtain an initial classification model.
[0105] Specifically, the cost function U of the initial classification model is:
[0106]
[0107] Wherein, indicates the objective function of a graph convolutional neural network (GCN); u indicates training data, y i indicates a label vector composed of labeled points in label data and unlabeled points in corresponding original data, the labeled points are represented by the number of floor layers, and the unlabeled points are 0, Z i indicates a matrix in which the labeled points in the label diffusion result matrix F output by the first output layer of the neural network architecture GCN-ELM are output again through the second output layer, Z i is a subset of F;
[0108] indicates the objective function of an extreme learning machine (ELM), and the extreme learning machine (ELM) includes an input layer, a hidden layer and an output layer, wherein, indicates a matrix in which the single hidden layer output in the ELM is output to the output layer, W indicates a weight matrix of the single hidden layer to the output layer in the ELM, W0 indicates a weight matrix of the input layer to the single hidden layer in the ELM, and X indicates input data, indicates the bias of a neuron in the single hidden layer, and f() indicates an activation function of the single hidden layer, which is usually a softmax function, which is a prior art and will not be described here.
[0109] The Laplacian matrix is input into the GCN-ELM architecture, and the initial classification model and the label diffusion result matrix F are obtained by training using a semi-supervised classification algorithm. At this time, the parameters in the initial classification model are not optimal solutions, and therefore, the initial classification model needs to be optimized.
[0110] Step S254: The initial classification model is optimized by using an alternating optimization strategy and a gradient descent algorithm to obtain a floor classification model.
[0111] Specifically, the initial classification model is optimized by using an alternating optimization strategy, and the specific process is as follows:
[0112] First, fix the label diffusion result matrix F, optimize the weight matrix W in the objective function of the extreme learning machine (ELM), and the cost function at this time can be expressed as:
[0113]
[0114] At this time, the optimization task is an unconstrained optimization, and the optimization target is a strictly convex function, and the minimum value of the weight matrix W has a unique solution. The specific solving process is to first calculate the partial derivative of the weight matrix W, and then assume that the result after derivation is equal to 0, and then the optimal solution of the weight matrix W can be obtained. The calculation formula involved is:
[0115]
[0116] W = AF,
[0117] Wherein,
[0118] Then, fix the weight matrix W, and optimize other parameters. The cost function at this time can be expressed as:
[0119]
[0120] At this time, the gradient descent algorithm is used to optimize the objective function of the graph convolutional neural network (GCN);
[0121] When the cost function converges, the label diffusion result matrix F and the optimized initial classification model are output, and the optimized initial classification model is determined as the floor classification model. If the cost function does not converge, the optimization training is continued according to the above optimization method until the cost function converges.
[0122] Further, step S200 can further include:
[0123] Step S260: According to the label data in the first training data, the accuracy of the floor classification model is evaluated.
[0124] After the floor classification model is constructed based on the graph convolutional neural network (GCN) and the extreme learning machine (ELM) and trained based on the semi-supervised classification algorithm, in order to improve the accuracy of the floor classification of the real-time MR data by using the floor classification model obtained by training in step S300, an accuracy evaluation step of the model can be added. The accuracy evaluation is specifically performed by using the manually labeled label data, for example, the original data corresponding to the label data in the first training data is input into the floor classification model obtained in step S250 to perform floor classification, and the training data with recognized floor information is obtained. Then, the label data with manually labeled position information is compared. If they are consistent, it is determined to be accurate, and if they are not consistent, it is determined to be incorrect, and thus the accuracy is calculated.
[0125] Step S270: If the accuracy of the floor classification model reaches the preset accuracy, the floor classification model is determined as the trained floor classification model.
[0126] When the accuracy of the floor classification model of step S250 reaches the preset accuracy, it is determined that the floor classification model can be directly used in the online stage, that is, as the trained floor classification model in step S300, to input the obtained real-time MR data into the trained floor classification model for floor identification to obtain floor information. The floor classification model can be stored in the fingerprint library to call the trained floor classification model for floor identification in the online stage of the fingerprint positioning method.
[0127] Step S280: If the accuracy of the floor classification model does not reach the preset accuracy, return to the step of training the neural network architecture based on the first training data using the semi-supervised classification algorithm to obtain the floor classification model until the accuracy of the trained floor classification model reaches the preset accuracy.
[0128] When the accuracy of the floor classification model of step S250 does not reach the preset accuracy, it is determined that the floor classification model cannot be directly used in the online stage and needs to be further optimized to determine the model parameters, thereby improving the accuracy of floor identification. Specifically, return to step S250 to obtain the floor classification model again, and cycle in this way until the result of the accuracy evaluation of step S260 is that the accuracy of the floor classification model reaches the preset accuracy. Alternatively, the floor classification model can be further optimized by other classification machine learning algorithms, such as deep learning algorithms such as support vector machines.
[0129] Step S500: Based on the floor information, perform planar coordinate positioning using the trained position regression model to obtain coordinate information; wherein the position regression model is obtained based on a semi-supervised regression algorithm and a graph convolution filter.
[0130] Specifically, for the obtained floor information of the positioning device, the position regression model corresponding to the floor information is called, the data after floor classification and the specific floor information are input into the trained position regression model, the specific position of the floor where the positioning device is located is identified by the position regression model, and the specific coordinate information of the position where the positioning device is located is output. The position regression model is trained based on the data after filtering processing of the input data by the graph convolution filter (GCN-Filter, Graph convolution Network Filter), for example, after filtering processing of a small amount of first training data after floor classification in step S200, the semi-supervised regression algorithm in the semi-supervised learning algorithm is used for training.
[0131] Further, step S250 can further include:
[0132] Step S250.1: training the neural network architecture according to the first training data by using a semi-supervised classification algorithm to obtain a label propagation result matrix; the label propagation result matrix includes MR data with floor information.
[0133] Specifically, based on the description of the specific embodiments of the preceding steps S251-S254, training the neural network architecture according to the first training data by using a semi-supervised classification algorithm can not only obtain a floor classification model, but also obtain a label propagation result matrix; the label propagation result matrix includes MR data with floor information.
[0134] Correspondingly, before step S500, the method further includes:
[0135] Step S400: obtaining a position regression model trained.
[0136] Specifically, step S400 can include:
[0137] Step S410: obtaining second training data according to the label propagation result matrix, the second training data being MR data with floor information of any floor.
[0138] After step S250 of training the neural network architecture according to the first training data by using a semi-supervised classification algorithm to obtain a floor classification model and a label propagation result matrix, that is, after specific classification of the first training data, MR data with the same floor, specifically any floor, is extracted as second training data.
[0139] Step S420: filtering the second training data by using a graph convolution filter to obtain filtered second training data; wherein the graph convolution filter includes an input layer, a first convolution layer, a second convolution layer and an output layer, the dimension of the first convolution layer being smaller than the dimension of the input layer, and the dimension of the second convolution layer being equal to the dimension of the input layer.
[0140] Specifically, the first convolution layer encodes the second training data and outputs encoded data, and the expression of the first convolution layer is:
[0141]
[0142] wherein X represents original data, that is, the second training data, Y represents data encoded by the first convolution layer, W represents a weight matrix, and b represents a bias matrix. 1a parameter matrix of the first convolutional layer, used to control the dimension of the output data of the convolutional layer in the convolution process, and f() represents an activation function;
[0143] The second convolutional layer reconstructs the encoded data and outputs reconstructed data, and the expression of the second convolutional layer is:
[0144]
[0145] wherein Z represents the data reconstructed by the second convolutional layer, that is, the filtered second training data, W 2 represents a parameter matrix of the second convolutional layer.
[0146] To improve the accuracy of coordinate positioning for a single floor and reduce the influence of noise data on the result, a filter based on a graph convolutional neural network, referred to as a graph convolutional filter (GCN-Filter), can be used to filter the second training data.
[0147] Step S430: training a regression model using a semi-supervised regression algorithm according to the filtered second training data to obtain an initial regression model.
[0148] After obtaining the filtered second training data, a local linear semi-supervised regression algorithm (LLSR) is used to train a regression model to obtain an initial regression model. This model cannot be directly used in step S700, and therefore, the parameters of the model need to be optimized to obtain an initial regression model obtained by training that has more accurate output results.
[0149] Step S440: optimizing the initial regression model using a gradient descent algorithm to obtain a position regression model of the arbitrary floor.
[0150] Specifically, the objective function of the initial regression model V is:
[0151] V = ‖Z' - Z‖ 2 ,
[0152] wherein Z' represents the result data of the initial regression model;
[0153] The gradient descent algorithm is used to optimize the above objective function to obtain an optimized objective function, which represents the obtained position regression model. The position regression model is the position regression model of the arbitrary floor classified in step S410.
[0154] Further, step S400 can further include:
[0155] Step S450: obtaining a corresponding position regression model for each floor of the label propagation result matrix.
[0156] To further improve the fingerprint library, i.e. the floor classification model and the position regression model corresponding to each floor, the MR data of other floors in the label diffusion result matrix can also be extracted according to the above steps to obtain other second training data, so as to obtain the position regression model corresponding to other floors.
[0157] Step S460: determining the position regression model obtained by training based on the position regression model of each floor.
[0158] After the position regression model is obtained for the second training data of each class of the floor classification model, i.e. the second training data of each floor, the position regression models are summarized and stored in the fingerprint library, so that in the online stage of the fingerprint positioning method, the position regression model corresponding to the MR data containing floor information obtained in step S300 is called to perform planar coordinate positioning in the floor.
[0159] Step S700: obtaining the positioning result according to the floor information and the coordinate information.
[0160] Specifically, after obtaining the floor information of the position of the positioning device in step S300 and obtaining the planar coordinates of the position of the positioning device based on the floor information in step S500, the final positioning result can be obtained by summarizing, for example, the current position can be obtained as the third floor of a building and located at a specific position in the third floor, and the positioning result obtained can be displayed on the user interface of the positioning device through a map or other positioning application.
[0161] In another embodiment, the method of the present embodiment is used for outdoor positioning, and specifically, the positioning device can be positioned outdoors through steps S100, S500 and S700, that is, after the trained position regression model is obtained through steps S200 and S400 in the offline stage of the method, in the online stage of the method, real-time MR data is first obtained, and then the position regression model obtained by training is used to perform coordinate positioning according to the real-time MR data to obtain position information, which is the final positioning result. Compared with the prior art, the positioning method can solve the problem of the need for a large amount of label data when the fingerprint positioning method of the prior art establishes a fingerprint library.
[0162] The positioning method provided by the embodiment realizes the purpose of indoor positioning by obtaining real-time MR data, performing floor identification on the real-time MR data by using a trained floor classification model to obtain floor information, performing plane coordinate positioning by using a trained position regression model according to the floor information to obtain coordinate information, and finally obtaining a positioning result according to the floor information and the coordinate information; the floor classification model is obtained by constructing and training based on a graph convolutional neural network and an extreme learning machine, the position regression model corresponding to the floor is obtained by constructing and training based on a semi-supervised regression algorithm and a graph convolutional filter, and the specific coordinates are further positioned on the basis of the floor, thereby avoiding the error caused by calculating the floor height by using the MR data and increasing the accuracy of indoor positioning compared with the existing method of directly positioning three-dimensional coordinates by using MR data; and the semi-supervised learning algorithm is used to construct the floor classification model and the position regression model, so that only a small amount of labeled data is required, and the difficulty of model training is reduced. The method of the embodiment solves the problems in the prior art that the calculation error of height information cannot be avoided by the fingerprint positioning method and a large amount of labeled data is required when a fingerprint database is established based on supervised learning.
[0163] Embodiment two
[0164] Based on the same inventive concept, referring to Figure 3 , the first embodiment of the positioning device of the present application is proposed, which can be a virtual device and is applied to a positioning equipment.
[0165] The positioning device provided by the embodiment will be described in detail below with reference to the functional module schematic diagram shown in Figure 3 , which can include:
[0166] The data acquisition module is configured to acquire real-time MR data.
[0167] The floor classification module is configured to perform floor identification on the real-time MR data by using a trained floor classification model to obtain floor information, wherein the floor classification model is obtained based on a graph convolutional neural network and an extreme learning machine.
[0168] The coordinate positioning module is configured to perform plane coordinate positioning by using a trained position regression model according to the floor information to obtain coordinate information, wherein the position regression model is obtained based on a semi-supervised regression algorithm and a graph convolutional filter.
[0169] The positioning result module is configured to obtain a positioning result according to the floor information and the coordinate information.
[0170] Further, the device can further include:
[0171] The floor classification model acquisition module is configured to acquire a floor classification model.
[0172] Specifically, the floor classification model obtaining module can include:
[0173] a training data obtaining unit configured to obtain first training data, the first training data including original data and label data, the original data including MR data of a plurality of point locations, the label data being obtained based on marking of position information from the original data, wherein the position information includes a floor where a point location is located and a coordinate in the floor where the point location is located;
[0174] a network constructing unit configured to construct a neural network architecture based on a graph convolutional neural network and an extreme learning machine;
[0175] a first model training unit configured to train the neural network architecture based on a semi-supervised classification algorithm according to the first training data, to obtain a floor classification model.
[0176] Further, the model training unit is specifically configured to:
[0177] establish a graph structure by taking MR data of each point location in the first training data as a node and taking a Euclidean distance between any two MR data as an edge, to obtain an affinity matrix;
[0178] obtain a corresponding Laplacian matrix according to the affinity matrix;
[0179] train the neural network architecture based on a semi-supervised classification algorithm according to the Laplacian matrix, to obtain an initial classification model;
[0180] optimize the initial classification model by using an alternating optimization strategy and a gradient descent algorithm, to obtain a floor classification model.
[0181] Further, the floor classification model obtaining module can further include:
[0182] a model evaluation unit configured to evaluate accuracy of the floor classification model according to label data in the first training data;
[0183] a model determination unit configured to determine the floor classification model as a floor classification model obtained by training, if the accuracy of the floor classification model reaches a preset accuracy;
[0184] a loop training unit configured to return the model training unit for continuous training, if the accuracy of the floor classification model does not reach the preset accuracy, until the accuracy of the floor classification model obtained by training reaches the preset accuracy.
[0185] Further, the model training unit is further configured to:
[0186] According to the first training data, the neural network architecture is trained by using a semi-supervised classification algorithm to obtain a label diffusion result matrix; the label diffusion result matrix includes MR data with floor information.
[0187] Correspondingly, the apparatus can also include:
[0188] A position regression model acquisition module is configured to acquire a position regression model.
[0189] Specifically, the position regression model acquisition module can include:
[0190] A training data extraction unit is configured to acquire second training data according to the label diffusion result matrix, the second training data being MR data with floor information of any floor;
[0191] An architecture establishment unit is configured to filter the second training data by using a graph convolution filter to obtain filtered second training data; wherein the graph convolution filter includes an input layer, a first convolution layer, a second convolution layer, and an output layer, the dimension of the first convolution layer being smaller than the dimension of the input layer, and the dimension of the second convolution layer being equal to the dimension of the input layer;
[0192] A second model training unit is configured to train a regression model by using a semi-supervised regression algorithm according to the filtered second training data to obtain an initial regression model;
[0193] A model optimization unit is configured to optimize the initial regression model by using a gradient descent algorithm to obtain the position regression model of the any floor.
[0194] Further, the position regression model acquisition module can also include:
[0195] A hierarchical acquisition model unit is configured to acquire a corresponding position regression model for each floor of the label diffusion result matrix;
[0196] A model summarization unit is configured to determine a position regression model obtained by training based on the position regression model of each floor.
[0197] It should be noted that the functions and technical effects achieved by the various modules of the positioning apparatus provided in this embodiment can refer to the descriptions of the various embodiments of the positioning method, and will not be described here for the sake of brevity.
[0198] Embodiment Three
[0199] Based on the same inventive concept, refer to Figure 2Fig. 1 is a schematic diagram of a hardware structure of a positioning device according to an embodiment of the present application. The positioning device can include a processor and a memory. The memory stores a positioning program. When the positioning program is executed by the processor, all or part of the steps of the positioning method according to an embodiment of the present application are implemented.
[0200] Specifically, the positioning device refers to a terminal device or a network device capable of realizing network connection. The terminal device can be a mobile phone, a computer, a tablet computer, a portable computer, etc. The network device can be a server, a cloud platform, etc. The positioning device can be in communication connection with a communication base station.
[0201] It can be understood that the positioning device can further include a communication bus, a user interface and a network interface.
[0202] The communication bus is used to realize the connection and communication among the components.
[0203] The user interface is used to connect a client and communicate data with the client. The user interface can include an output unit such as a display screen and an input unit such as a keyboard. Optionally, the user interface can further include other input / output interfaces such as standard wired interfaces and wireless interfaces.
[0204] The network interface is used to connect a background server and communicate data with the background server. The network interface can include input / output interfaces such as standard wired interfaces and wireless interfaces such as Wi-Fi interfaces.
[0205] The memory is used to store various types of data. The data can include instructions of any application program or method in the positioning device and application program related data. The memory can be realized by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), random access memory (RAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk. Optionally, the memory can also be a storage device independent of the processor.
[0206] The processor is configured to invoke the positioning program stored in the memory and perform the positioning method as described above. The processor can be 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 controller, a microcontroller, a microprocessor, or other electronic elements, configured to perform all or part of the steps of the positioning method according to the embodiments described above.
[0207] Embodiment Four
[0208] Based on the same inventive concept, the embodiments provide a computer readable storage medium, such as a flash memory, a hard disk, a multimedia card, a card memory (e.g., an SD or DX memory, etc.), a random access memory (RAM), a static random access memory (SRAM), a read only memory (ROM), a programmable read only memory (PROM), an erasable programmable read only memory (EPROM), an electrically erasable programmable read only memory (EEPROM), a magnetic memory, a magnetic disk, an optical disk, a server, etc., in which a computer program is stored. The computer program can be executed by one or more processors. When the computer program is executed by the processor, all or part of the steps of the positioning method according to the embodiments can be implemented.
[0209] It should be noted that the above-mentioned embodiment numbers of the present application are only for description, and do not represent the advantages and disadvantages of the embodiments.
[0210] The above description is only optional embodiments of the present application, and does not limit the patent scope of the present application. Any equivalent structure or equivalent process transformation, or direct or indirect application in other related technical fields, within the inventive concept of the present application, based on the content of the present application and the attached drawings, are included in the patent protection scope of the present application.
Claims
1. A positioning method, characterized by, The method comprises: acquiring real-time MR data; performing floor identification on the real-time MR data by using a trained floor classification model to obtain floor information, wherein the floor classification model is obtained based on a graph convolutional neural network and a extreme learning machine; calling a position regression model corresponding to the floor information according to the floor information, inputting the floor-identified data and the floor information into the trained position regression model to perform plane coordinate positioning to obtain coordinate information, wherein the position regression model is obtained based on a semi-supervised regression algorithm and a graph convolutional filter; obtaining a positioning result according to the floor information and the coordinate information.
2. The positioning method of claim 1, wherein, Before the step of performing floor identification on the real-time MR data by using a trained floor classification model to obtain floor information, the method further comprises: acquiring first training data, wherein the first training data comprises original data and label data, the original data comprises MR data of a plurality of point positions, and the label data is obtained by marking position information based on the original data, wherein the position information comprises a floor and a coordinate in the floor of a point position; constructing a neural network architecture based on a graph convolutional neural network and a extreme learning machine; training the neural network architecture by using a semi-supervised classification algorithm according to the first training data to obtain a floor classification model.
3. The positioning method of claim 2, wherein, The step of training the neural network architecture by using a semi-supervised classification algorithm according to the first training data to obtain a floor classification model comprises: establishing a graph structure by taking MR data of each point position in the first training data as a node and taking a Euclidean distance between any two MR data as an edge to obtain an affinity matrix; obtaining a corresponding Laplacian matrix according to the affinity matrix; training the neural network architecture by using a semi-supervised classification algorithm according to the Laplacian matrix to obtain an initial classification model; optimizing the initial classification model by using an alternating optimization strategy and a gradient descent algorithm to obtain a floor classification model.
4. The positioning method of claim 2, wherein, After the step of training the neural network architecture by using a semi-supervised classification algorithm according to the first training data to obtain a floor classification model, the method further comprises: performing accuracy evaluation on the floor classification model according to label data in the first training data; if the accuracy of the floor classification model reaches a preset accuracy, determining that the floor classification model is a trained floor classification model; if the accuracy of the floor classification model does not reach the preset accuracy, returning to the step of training the neural network architecture by using a semi-supervised classification algorithm according to the first training data to obtain a floor classification model until the accuracy of the trained floor classification model reaches the preset accuracy.
5. The positioning method of claim 2, wherein, The step of training the neural network architecture by using a semi-supervised classification algorithm according to the first training data to obtain a floor classification model further comprises: training the neural network architecture by using a semi-supervised classification algorithm according to the first training data to obtain a label diffusion result matrix; the label diffusion result matrix comprises MR data with floor information.
6. The positioning method of claim 5, wherein, After the step of training the neural network architecture by using a semi-supervised classification algorithm according to the first training data to obtain a floor classification model, the method further comprises: obtaining second training data according to the label propagation result matrix, the second training data being MR data of any floor with floor information; performing filtering processing on the second training data by using a graph convolution filter to obtain filtered second training data, wherein the graph convolution filter comprises an input layer, a first convolution layer, a second convolution layer and an output layer, a dimension of the first convolution layer is smaller than a dimension of the input layer, and a dimension of the second convolution layer is equal to the dimension of the input layer; training a regression model by using a semi-supervised regression algorithm according to the filtered second training data to obtain an initial regression model; optimizing the initial regression model by using a gradient descent algorithm to obtain a position regression model of the any floor.
7. The positioning method of claim 6, wherein, After the step of optimizing the initial regression model by using a gradient descent algorithm to obtain a position regression model of the any floor, the method further comprises: obtaining a corresponding position regression model for each floor of the label propagation result matrix; determining the position regression model obtained by training based on the position regression model of each floor.
8. A positioning device, characterized in that The device comprises: a data acquisition module configured to acquire real-time MR data; a floor classification module configured to perform floor identification by using a floor classification model obtained by training according to the real-time MR data to obtain floor information, wherein the floor classification model is obtained based on a graph convolution neural network and an extreme learning machine; a coordinate positioning module configured to call a position regression model corresponding to the floor information according to the floor information, input the data classified by floor and the floor information into the position regression model obtained by training to perform planar coordinate positioning, and obtain coordinate information, wherein the position regression model is obtained based on a semi-supervised regression algorithm and a graph convolution filter; a positioning result module configured to obtain a positioning result according to the floor information and the coordinate information.
9. A positioning device, characterized by The device comprises a processor and a memory, and the memory stores a positioning program, and the positioning program is executed by the processor to implement the positioning method of any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, The storage medium stores a computer program, and the computer program can be executed by one or more processors to implement the positioning method of any one of claims 1 to 7.
Citation Information
Patent Citations
Positioning method based on multi-core extreme learning machine and strength of received signal
CN109100682A
Multi-floor indoor positioning method based on radial basis function network
CN113543026A