A terminal positioning method, apparatus and electronic device

By using a time-segment neural network model and gridded map data processing in terminal positioning, the problem of insufficient accuracy in existing terminal positioning has been solved, achieving higher precision and faster positioning results.

CN115707098BActive Publication Date: 2026-04-24CHINA MOBILE SHANGHAI ICT CO LTD +2
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHINA MOBILE SHANGHAI ICT CO LTD
Filing Date
2021-08-16
Publication Date
2026-04-24

AI Technical Summary

Technical Problem

Existing terminal positioning technologies have poor accuracy, especially proximity-based positioning technologies, which cannot accurately determine the terminal's location.

Method used

A time-based neural network model is adopted. By acquiring the terminal's time data and location reference data, the pre-trained neural network model is used to determine the terminal's location. Combined with grid area identification and latitude and longitude relationships, the positioning accuracy is improved.

Benefits of technology

By using time-segmented neural network models and gridded map data processing, the accuracy and speed of terminal positioning are improved, adapting to changes in actual scenarios at different times, reducing overfitting, and increasing positioning accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115707098B_ABST
    Figure CN115707098B_ABST
Patent Text Reader

Abstract

The application provides a terminal positioning method and device and electronic equipment, and relates to the technical field of communication. The method comprises the following steps: acquiring time data and position reference data of a terminal; determining a first neural network model from a plurality of pre-trained neural network models based on the time data, wherein the plurality of pre-trained neural network models correspond to a plurality of time periods one by one, and the first neural network model is a neural network model corresponding to a time period to which the time data belongs; inputting the position reference data into the first neural network model; and determining the position of the terminal based on the output of the first neural network model. The embodiment of the application can improve the accuracy of terminal positioning.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of communication technology, and in particular to a terminal positioning method, apparatus, and electronic device. Background Technology

[0002] With the widespread adoption of smart terminals and the improvement in the quality and efficiency of information services, people's demand for terminal positioning is increasing. Existing technologies determine the terminal's location through proximity-based positioning, which determines the terminal's location based on the distance between the terminal and one or more known base stations, but this method has relatively poor accuracy. Summary of the Invention

[0003] This invention provides a terminal positioning method, device, and electronic device to solve the problem of poor accuracy in existing terminal positioning.

[0004] To solve the above-mentioned technical problems, the present invention is implemented as follows:

[0005] In a first aspect, embodiments of the present invention provide a terminal positioning method, the method comprising:

[0006] Obtain the terminal's time data and location reference data;

[0007] A first neural network model is determined from multiple pre-trained neural network models based on the time data. The multiple pre-trained neural network models correspond one-to-one with multiple time periods. The first neural network model is the neural network model corresponding to the time period to which the time data belongs.

[0008] The location reference data is input into the first neural network model;

[0009] The location of the terminal is determined based on the output of the first neural network model.

[0010] Optionally, determining the location of the terminal based on the output of the first neural network model includes:

[0011] Obtain the target mesh region identifier output by the first neural mesh model;

[0012] Based on the correspondence between multiple grid area identifiers and multiple latitude and longitude coordinates, the target latitude and longitude coordinates corresponding to the target grid area identifier are determined, and the target latitude and longitude coordinates are one of the multiple latitude and longitude coordinates;

[0013] The location of the terminal is determined based on the target latitude and longitude.

[0014] Optionally, before determining the first neural network model from multiple pre-trained neural network models based on the time data, the method further includes:

[0015] Multiple grid regions are determined based on map data, and the grid region identifier and corresponding latitude and longitude of each grid region are determined;

[0016] Acquire sample data, which includes time data, location reference data, and grid region identifiers for multiple sampling points, wherein the grid region identifier of the sampling point is the grid region identifier of the grid region to which the sampling point belongs;

[0017] The position reference data of each of the plurality of sampling points is input into the second neural network model corresponding to the time data of each sampling point, and the second neural network model is trained with the grid region identifier of each sampling point as the target output.

[0018] The second neural network model obtained through training is one of the plurality of pre-trained neural network models.

[0019] Optionally, determining multiple grid areas based on map data includes:

[0020] The geographical locations are divided based on map data, resulting in multiple first grids;

[0021] Determine the geographical features of each of the plurality of first grids;

[0022] The multiple first grids are merged based on the geographical characteristics of each first grid to obtain multiple grid regions.

[0023] Optionally, the step of merging the plurality of first grids based on the geographical features of each first grid includes:

[0024] At least two adjacent first grids with the same geographical features are merged into one grid region.

[0025] Optionally, before acquiring the sample data, the method further includes:

[0026] The grid area identifier of the sampling point is determined based on the latitude and longitude of the sampling point;

[0027] Wherein, if the latitude and longitude of the sampling point are within one of the multiple grid regions, then the grid region identifier of the sampling point is the grid region identifier of that grid region;

[0028] If the latitude and longitude of the sampling point are at the common boundary of two grid regions, then the grid region identifier of the sampling point is the grid region identifier of the grid region with the fewest sampling points among the two grid regions;

[0029] If the latitude and longitude of the sampling point are at the common vertex of at least two grid regions, then the grid region identifier of the sampling point is the grid region identifier of the grid region with the fewest sampling points among the at least two grid regions.

[0030] Secondly, embodiments of the present invention provide a terminal positioning device, the device comprising:

[0031] The first acquisition module is used to acquire the terminal's time data and location reference data;

[0032] The first determining module is used to determine a first neural network model from multiple pre-trained neural network models based on the time data. The multiple pre-trained neural network models correspond one-to-one with multiple time periods, and the first neural network model is the neural network model corresponding to the time period to which the time data belongs.

[0033] The first input module is used to input the position reference data into the first neural network model;

[0034] The second determining module is used to determine the location of the terminal based on the output of the first neural network model.

[0035] Optionally, the second determining module is specifically used for:

[0036] Obtain the target grid region identifier output by the first neural grid model;

[0037] Based on the correspondence between multiple grid area identifiers and multiple latitude and longitude coordinates, the target latitude and longitude coordinates corresponding to the target grid area identifier are determined, and the target latitude and longitude coordinates are one of the multiple latitude and longitude coordinates;

[0038] The location of the terminal is determined based on the target latitude and longitude.

[0039] Optionally, the device further includes:

[0040] The third determining module is used to determine multiple grid areas based on map data, and to determine the grid area identifier and corresponding latitude and longitude of each grid area;

[0041] The second acquisition module is used to acquire sample data, which includes time data, location reference data and grid region identifiers of multiple sampling points, wherein the grid region identifier of the sampling point is the grid region identifier of the grid region to which the sampling point belongs;

[0042] The second input module is used to input the position reference data of each of the plurality of sampling points into the second neural network model corresponding to the time data of each sampling point, and to train the second neural network model with the grid region identifier of each sampling point as the target output.

[0043] The second neural network model obtained through training is one of the plurality of pre-trained neural network models.

[0044] Optionally, the third determining module includes:

[0045] The division unit is used to divide the geographical location based on map data, resulting in multiple first grids;

[0046] A determining unit is used to determine the geographical features of each of the plurality of first grids;

[0047] The merging unit is used to merge the multiple first grids according to the geographical characteristics of each first grid to obtain multiple grid regions.

[0048] Optionally, the merging unit is specifically used for:

[0049] At least two adjacent first grids with the same geographical features are merged into one grid region.

[0050] Optionally, the second acquisition module is further used for:

[0051] The grid area identifier of the sampling point is determined based on the latitude and longitude of the sampling point;

[0052] Wherein, if the latitude and longitude of the sampling point are within one of the multiple grid regions, then the grid region identifier of the sampling point is the grid region identifier of that grid region;

[0053] If the latitude and longitude of the sampling point are at the common boundary of two grid regions, then the grid region identifier of the sampling point is the grid region identifier of the grid region with the fewest sampling points among the two grid regions;

[0054] If the latitude and longitude of the sampling point are at the common vertex of at least two grid regions, then the grid region identifier of the sampling point is the grid region identifier of the grid region with the fewest sampling points among the at least two grid regions.

[0055] Thirdly, embodiments of the present invention provide an electronic device, including: a processor, a memory, and a program stored in the memory and executable on the processor, wherein when the program is executed by the processor, it implements the steps of the terminal positioning method described in the first aspect.

[0056] Fourthly, embodiments of the present invention provide a computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, implements the steps of the terminal positioning method described in the first aspect.

[0057] In this embodiment of the invention, time data and location reference data of a terminal are acquired; a first neural network model is determined from multiple pre-trained neural network models based on the time data, wherein each pre-trained neural network model corresponds one-to-one with multiple time periods, and the first neural network model is the neural network model corresponding to the time period to which the time data belongs; the location reference data is input into the first neural network model; and the location of the terminal is determined based on the output of the first neural network model. Thus, determining the first neural network model from multiple pre-trained neural network models based on the time data, and determining the location of the terminal based on the output of the first neural network model, can improve the accuracy of positioning. Attached Figure Description

[0058] To more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the description of the embodiments of the present invention will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0059] Figure 1 This is a flowchart of a terminal positioning method provided in an embodiment of the present invention;

[0060] Figure 2 This is a schematic diagram of a mesh division provided in an embodiment of the present invention;

[0061] Figure 3 This is a schematic diagram of the structure of a neural network model provided in an embodiment of the present invention;

[0062] Figure 4 This is a schematic diagram of the structure of a terminal positioning device provided in an embodiment of the present invention;

[0063] Figure 5 This is a schematic diagram of another terminal positioning device provided in an embodiment of the present invention;

[0064] Figure 6 This is a schematic diagram of another terminal positioning device provided in an embodiment of the present invention;

[0065] Figure 7 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Detailed Implementation

[0066] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0067] This invention provides a terminal positioning method, apparatus, and electronic device to address the problem of poor accuracy in existing terminal positioning systems.

[0068] See Figure 1 , Figure 1 This is a flowchart of a terminal positioning method provided in an embodiment of the present invention, such as... Figure 1 As shown, the method includes the following steps:

[0069] Step 101: Obtain the terminal's time data and location reference data.

[0070] The terminal's time data and location reference data can be collected and reported by the terminal itself, or they can be collected and reported through a sampling tool. This embodiment does not limit the data collection method. Time data can be used to represent the current moment; for example, it can be a timestamp. The location reference data can be determined based on base station data, Bluetooth data, and Wi-Fi data collected by the terminal. The location reference data can include base station data, Bluetooth data, and Wi-Fi data collected by the terminal. For example, the base station data collected by the terminal can be represented by a first vector, the Bluetooth data collected by the terminal can be represented by a second vector, the Wi-Fi data collected by the terminal can be represented by a third vector, and the location reference data can be represented by a fourth vector, which can be a vector obtained by concatenating the first, second, and third vectors.

[0071] In one embodiment, the base station data collected by the terminal may include the base station identifier and base station signal strength of at least one base station; the Bluetooth data collected by the terminal may include the Bluetooth identifier and Bluetooth signal strength of at least one Bluetooth device; and the Wi-Fi data collected by the terminal may include the Wi-Fi identifier and Wi-Fi signal strength of at least one Wi-Fi device. The base station signal strengths of at least one base station can be sorted, and the location reference data may include the base station identifiers and base station signal strengths of the top-ranked base stations; the Bluetooth signal strengths of at least one Bluetooth device can be sorted, and the location reference data may include the Bluetooth identifiers and Bluetooth signal strengths of the top-ranked Bluetooth devices; and the Wi-Fi signal strengths of at least one Wi-Fi device can be sorted, and the location reference data may include the Wi-Fi identifiers and Wi-Fi signal strengths of the top-ranked Wi-Fi devices. The base station identifier may be a base station number, the Bluetooth identifier may be a Bluetooth name, and the Wi-Fi identifier may be a MAC address.

[0072] In one embodiment, the terminal positioning method is applied to a server. The server receives user data sent by the terminal. The user data can be used to determine the user's location. The user data includes timestamps, base station data, Bluetooth data, and Wi-Fi data. The Bluetooth data and Wi-Fi data can be empty. The base station data includes at least one base station identifier and base station signal strength.

[0073] For example, for base station data in user data, the base stations can be sorted from strongest to weakest, and the top 5 base stations can be selected as Base Station 1 to Base Station 5. Five data entries representing the base station number and signal strength of these 5 base stations can be recorded. Similarly, for Wi-Fi data in user data, the 5 data entries with the strongest Wi-Fi signal strength can be selected as Wi-Fi 1 to Wi-Fi 5, and five data entries representing the MAC address and signal strength of these 5 Wi-Fi networks can be recorded. Likewise, for Bluetooth data in user data, the Bluetooth 1 to Bluetooth 5 data entries with the strongest signal strength can be selected, and five data entries representing the Bluetooth identifier and signal strength of these 5 Bluetooth networks can be recorded. When there are fewer than 5 data entries for base stations, Wi-Fi, or Bluetooth, empty fields can default to 0. Location reference data can include 5 base station data entries, 5 Wi-Fi data entries, and 5 Bluetooth data entries.

[0074] Step 102: Determine a first neural network model from multiple pre-trained neural network models based on the time data. The multiple pre-trained neural network models correspond one-to-one with multiple time periods. The first neural network model is the neural network model corresponding to the time period to which the time data belongs.

[0075] The structures of the multiple pre-trained neural network models can be the same or different; this embodiment does not limit this. The number of pre-trained neural network models can be 12, 24, 48, etc.; this embodiment does not limit this. For example, 24 neural network models can be trained, corresponding one-to-one with each of the 24 hours in a day. The neural network models can be deep neural network models, which can include input layers, hidden layers, and output layers.

[0076] Step 103: Input the location reference data into the first neural network model.

[0077] Step 104: Determine the location of the terminal based on the output of the first neural network model.

[0078] Specifically, the target grid region identifier output by the first neural grid model can be obtained. Based on the correspondence between multiple grid region identifiers and multiple latitude and longitude coordinates, the target latitude and longitude coordinates corresponding to the target grid region identifier can be determined. The target latitude and longitude coordinates are one of the multiple latitude and longitude coordinates. The location of the terminal can be determined based on the target latitude and longitude coordinates. Alternatively, the output of the first neural network model can be latitude and longitude coordinates. The latitude and longitude coordinates output by the first neural network model can be directly used as the location of the terminal.

[0079] It should be noted that sampling data for the same location may vary at different times. For example, WiFi and Bluetooth data may differ between morning / evening rush hours and nighttime. This invention employs a time-segmented method to train a multi-class model, fusing multiple neural network models. Compared to neural network models trained with data from all time periods, this method is more accurate within a single time period, obtaining a local optimum within that period. This better describes the differences in data across different time periods, more closely reflects real-world scenarios, and improves positioning accuracy.

[0080] In this embodiment of the invention, time data and location reference data of a terminal are acquired; a first neural network model is determined from multiple pre-trained neural network models based on the time data, wherein each pre-trained neural network model corresponds one-to-one with multiple time periods, and the first neural network model is the neural network model corresponding to the time period to which the time data belongs; the location reference data is input into the first neural network model; and the location of the terminal is determined based on the output of the first neural network model. Thus, determining the first neural network model from multiple pre-trained neural network models based on the time data, and determining the location of the terminal based on the output of the first neural network model, can improve the accuracy of positioning.

[0081] Optionally, determining the location of the terminal based on the output of the first neural network model includes:

[0082] Obtain the target mesh region identifier output by the first neural mesh model;

[0083] Based on the correspondence between multiple grid area identifiers and multiple latitude and longitude coordinates, the target latitude and longitude coordinates corresponding to the target grid area identifier are determined, and the target latitude and longitude coordinates are one of the multiple latitude and longitude coordinates;

[0084] The location of the terminal is determined based on the target latitude and longitude.

[0085] This involves determining multiple grid regions based on map data, and identifying the grid region identifier and corresponding latitude and longitude for each region. The correspondence between these grid region identifiers and latitude / longitude coordinates is stored, ensuring a one-to-one correspondence. The grid region identifier can be used to uniquely identify a grid region; for example, it can be a grid region number.

[0086] In this embodiment, the target latitude and longitude corresponding to the target grid area identifier is determined based on the correspondence between multiple grid area identifiers and multiple latitude and longitude coordinates. The location of the terminal is determined based on the target latitude and longitude coordinates. The location of the terminal can be determined through gridded map data, which can improve the accuracy and speed of positioning.

[0087] Optionally, before determining the first neural network model from multiple pre-trained neural network models based on the time data, the method further includes:

[0088] Multiple grid regions are determined based on map data, and the grid region identifier and corresponding latitude and longitude of each grid region are determined;

[0089] Acquire sample data, which includes time data, location reference data, and grid region identifiers for multiple sampling points, wherein the grid region identifier of the sampling point is the grid region identifier of the grid region to which the sampling point belongs;

[0090] The position reference data of each of the plurality of sampling points is input into the second neural network model corresponding to the time data of each sampling point, and the second neural network model is trained with the grid region identifier of each sampling point as the target output.

[0091] The second neural network model obtained through training is one of the plurality of pre-trained neural network models.

[0092] In addition, the latitude and longitude corresponding to the grid area can be the latitude and longitude of the centroid of the grid area.

[0093] It should be noted that the data sources for sampling points are diverse. Data can be collected using dedicated sampling tools, network optimization drive test data, user-reported data, etc. Each sampling point can include the following fields: location data (latitude and longitude), base station data (base station number, base station signal strength), and time data (accurate to the second). It can also include the following fields: WiFi data (WiFi MAC address, WiFi signal strength) and Bluetooth data (Bluetooth identifier, Bluetooth signal strength). After collecting the sampling points, they can be categorized into grid areas based on their location data. The goal is to ensure that every grid area has sampling points, and each sampling point is categorized into a specific grid area and distributed only within that area. The location information of the sampling points can be accurate to five decimal places.

[0094] For each sampling point's base station data, the base station signal strength can be sorted from highest to lowest, and the top 5 base stations are selected as Base Station 1 to Base Station 5. Five data entries representing the base station number and signal strength of these 5 base stations are recorded. Similarly, for each sampling point's Wi-Fi data, the 5 strongest Wi-Fi signal entries are selected as Wi-Fi 1 to Wi-Fi 5, and five data entries representing the MAC address and signal strength of these 5 Wi-Fi networks are recorded. Likewise, for each sampling point's Bluetooth data, the strongest Bluetooth signals are selected as Bluetooth 1 to Bluetooth 5, and five data entries representing the Bluetooth identifier and signal strength of these 5 Bluetooth networks are recorded. Each sampling point must contain at least one base station data entry; Wi-Fi and Bluetooth data entries may be empty. When there are fewer than 5 data entries for base stations, Wi-Fi, or Bluetooth, the empty field can be set to 0 by default. Location reference data can include 5 base station data entries, 5 Wi-Fi data entries, and 5 Bluetooth data entries.

[0095] It should be noted that selecting the top five sets of data with the strongest signal strength as location reference data to train the neural network model can better prevent overfitting compared to the model obtained without preprocessing. Using multi-base station data, WiFi data, and Bluetooth data to correct the model can better fit the actual scenario and improve the accuracy of positioning.

[0096] It should be noted that determining multiple grid areas based on map data can be achieved by dividing the existing map data into polygonal grid areas of varying sizes according to different geographical features, and then numbering each grid area to obtain a grid area identifier. Alternatively, the entire map data can be divided into grid areas of varying sizes, ensuring that there is no overlap between grid areas. The grid areas are then described and stored using points on their boundaries, and finally stored in a database.

[0097] Furthermore, the density of the grid region directly determines the accuracy of localization. A grid region that is too large will reduce localization accuracy, while a grid region that is too small will increase training costs. The centroid position can be calculated for each grid region, and the GPS latitude and longitude of the grid region can be represented by the GPS latitude and longitude corresponding to the centroid position, with the GPS latitude and longitude retained to four decimal places.

[0098] In this implementation, when acquiring sample data, the specific environment of the location is abstracted and formalized, and various locations in the location environment are described with some specific and quantitative parameters. This enables the terminal to be located by combining scene-based location technology, thereby improving the accuracy of the location.

[0099] Optionally, determining multiple grid areas based on map data includes:

[0100] The geographical locations are divided based on map data, resulting in multiple first grids;

[0101] Determine the geographical features of each of the plurality of first grids;

[0102] The multiple first grids are merged based on the geographical characteristics of each first grid to obtain multiple grid regions.

[0103] The shape of the first grid can be square, circular, rectangular, or irregular, etc. This embodiment does not limit the shape of the first grid; for example, the first grid can be square. Geographic features can include roads, buildings, water surfaces, bridge surfaces, or railways, etc. Multiple first grids can be classified, and different geographic features can be of different types, such as roads, buildings, water surfaces, bridge surfaces, and railways. When a first grid contains multiple geographic features, the geographic feature occupying the largest area can be selected as the geographic feature of the first grid. Each first grid can have one and only one geographic feature.

[0104] It should be noted that the entire map data can be divided into multiple approximate square grids based on latitude and longitude, with the latitude and longitude of each grid vertex accurate to four decimal places. For example, such as... Figure 2 As shown, Figure 2 The Chinese Communist Party has divided the country into nine first grids, each of which is approximately square in shape, and the latitude and longitude of the vertices of each first grid are accurate to four decimal places.

[0105] Existing grid divisions are generally regular geometric shapes that do not take into account geographical features. In outdoor large-scale positioning scenarios, it is difficult to divide the grid entirely manually. In the embodiments of this invention, the grid division takes into account geographical features, merges grids of the same type, and is more in line with the actual scene, thereby improving positioning accuracy and reducing the training cost of the model.

[0106] In this implementation, the map data is divided into grid areas based on geographical features. The size and shape of the grid areas can be adjusted according to different geographical features. Compared with standardized square grids, it can better fit the actual scene and improve the accuracy of positioning. Compared with the manual grid division method, the first grid can be roughly divided by latitude and longitude data, and then the first grid can be merged according to geographical features to become a grid area. In outdoor large-scale positioning scenarios, it can greatly save time and labor costs.

[0107] Optionally, the step of merging the plurality of first grids based on the geographical features of each first grid includes:

[0108] At least two adjacent first grids with the same geographical features are merged into one grid region.

[0109] The merging of multiple first grids based on their geographical features can be achieved by merging adjacent first grids with the same geographical features into a single grid region. Adjacent first grids can be defined as those with two overlapping vertices; grids with only one overlapping vertex are not considered adjacent. In other words, adjacent first grids are only horizontally or vertically adjacent; diagonally adjacent grids are not considered adjacent. In one embodiment, each grid region can contain no more than three first grids. The merging process can be iterated by grid number; adjacent first grids with identical geographical features are merged into a single grid region until a grid region contains three first grids or has no adjacent first grids with identical geographical features. The geographical features of a grid region can be the geographical features of the first grids it contains.

[0110] Additionally, all merged grid regions can be stored in the database in vertex order, and the latitude and longitude of the centroid of each grid region can be calculated as its latitude and longitude. Each grid region contains at most three adjacent first grids, so each grid region has at most eight vertices and at least four vertices. The storage fields for each grid region in the database can be as shown in Table 1:

[0111] Table 1. Grid Region Fields Table

[0112]

[0113]

[0114] The longitude and latitude of the grid vertices can be retained to four decimal places, and the initial value of the number of sampling points inside the grid region can be 0.

[0115] In this embodiment, merging at least two adjacent first grids with the same geographical features into one grid region can effectively merge the multiple first grids.

[0116] Optionally, before acquiring the sample data, the method further includes:

[0117] The grid area identifier of the sampling point is determined based on the latitude and longitude of the sampling point;

[0118] Wherein, if the latitude and longitude of the sampling point are within one of the multiple grid regions, then the grid region identifier of the sampling point is the grid region identifier of that grid region;

[0119] If the latitude and longitude of the sampling point are at the common boundary of two grid regions, then the grid region identifier of the sampling point is the grid region identifier of the grid region with the fewest sampling points among the two grid regions;

[0120] If the latitude and longitude of the sampling point are at the common vertex of at least two grid regions, then the grid region identifier of the sampling point is the grid region identifier of the grid region with the fewest sampling points among the at least two grid regions.

[0121] When determining the grid region identifier of a sampling point based on its latitude and longitude, the sampling points can be traversed in the order of collection. Based on the latitude and longitude of the sampling point, the sampling point is assigned to a certain grid region. There are three possible scenarios for a sampling point: it falls inside the grid region, it falls on the boundary of the grid region, and it falls on the vertex of the grid region.

[0122] In one implementation, if the latitude and longitude of a sampling point fall within a grid region, the sampling point is classified into that grid region, the grid region identifier of that grid region is recorded as the grid region identifier of the sampling point, and the number of sampling points within that grid region is incremented by 1. If the latitude and longitude of a sampling point fall within the boundary or vertex of a grid region, the sampling point is stored in the boundary point queue, and the grid region identifiers of the adjacent grid regions of each boundary point are recorded for judgment in the next iteration. After traversing all sampling points, the sampling points in the boundary point queue are traversed again, and the number of sampling points within the adjacent grid regions of the boundary point is compared. The sampling point is classified into the grid region with the fewest sampling points, the grid region with the fewest sampling points is recorded as the grid region identifier of the sampling point in the boundary point queue, and the number of sampling points within that grid region is incremented by 1. If the grid region with the fewest sampling points is not unique, the grid region with the smallest grid region identifier can be selected as the grid region to which the sampling point belongs in the boundary point queue, the grid region with the smallest grid region identifier is recorded as the grid region identifier of the sampling point in the boundary point queue, and the number of sampling points within that grid region is incremented by 1.

[0123] As one implementation method, the data fields of the sampling points are shown in Table 2:

[0124] Table 2. Sampling Point Field Table

[0125]

[0126]

[0127]

[0128] In one implementation, each of the multiple pre-trained neural network models can be a deep neural network model. The training set can be sampling point data, and all sampling points can be classified according to timestamps. Sampling points within each hour are grouped together, and the 24-hour data is divided into 24 groups. A deep neural network model is trained for each group of data, such as... Figure 3 As shown, a deep neural network model can adopt a five-layer structure. In each deep neural network model, the input layer is the location reference data of the sampling points, the output layer is the grid region identifier, and the middle three layers are hidden layers. The backpropagation algorithm can be used to calculate the value of each node of the deep neural network model. Recording and storing all values ​​yields 24 deep neural network models that correspond one-to-one with 24 hours, serving as multiple pre-trained neural network models.

[0129] In this embodiment, the grid region identifier of the sampling point is determined based on whether the latitude and longitude of the sampling point are within the grid region, or at the common boundary position of two grid regions, or at the common vertex position of at least two grid regions. This allows the sampling points to be divided into various grid regions more accurately and the distribution of sampling points to be more uniform.

[0130] As a specific implementation method, terminal positioning can be divided into two stages: an offline stage and an online stage. In the offline stage, grid partitioning, sample data collection, and model training can be performed. In the online stage, the terminal's real-time reported time data and location reference data are used to calculate the terminal's location, i.e., the user's location, through the neural network model trained in the offline stage. The neural network model for terminal positioning in this embodiment combines proximity-based positioning technology and scene analysis-based positioning technology. Compared to other machine learning models, the neural network model can better reflect real-world conditions, better preserve feature parameters, and prevent overfitting.

[0131] See Figure 4 , Figure 4 This is a schematic diagram of the structure of a terminal positioning device provided in an embodiment of the present invention, as shown below. Figure 4 As shown, the terminal positioning device 200 includes:

[0132] The first acquisition module 201 is used to acquire the terminal's time data and location reference data;

[0133] The first determining module 202 is used to determine a first neural network model from multiple pre-trained neural network models based on the time data. The multiple pre-trained neural network models correspond one-to-one with multiple time periods, and the first neural network model is the neural network model corresponding to the time period to which the time data belongs.

[0134] The first input module 203 is used to input the position reference data into the first neural network model;

[0135] The second determining module 204 is used to determine the position of the terminal based on the output of the first neural network model.

[0136] Optionally, the second determining module 204 is specifically used for:

[0137] Obtain the target mesh region identifier output by the first neural mesh model;

[0138] Based on the correspondence between multiple grid area identifiers and multiple latitude and longitude coordinates, the target latitude and longitude coordinates corresponding to the target grid area identifier are determined, and the target latitude and longitude coordinates are one of the multiple latitude and longitude coordinates;

[0139] The location of the terminal is determined based on the target latitude and longitude.

[0140] Optional, such as Figure 5 As shown, the device 200 further includes:

[0141] The third determining module 205 is used to determine multiple grid areas based on map data, and to determine the grid area identifier and corresponding latitude and longitude of each grid area;

[0142] The second acquisition module 206 is used to acquire sample data, which includes time data, location reference data and grid area identifiers of multiple sampling points, wherein the grid area identifier of the sampling point is the grid area identifier of the grid area to which the sampling point belongs;

[0143] The second input module 207 is used to input the position reference data of each of the plurality of sampling points into the second neural network model corresponding to the time data of each sampling point, and to train the second neural network model with the grid region identifier of each sampling point as the target output.

[0144] The second neural network model obtained through training is one of the plurality of pre-trained neural network models.

[0145] Optional, such as Figure 6 As shown, the third determining module 205 includes:

[0146] Division unit 2051 is used to divide the geographical location based on map data to obtain multiple first grids;

[0147] Determining unit 2052 is used to determine the geographical features of each of the plurality of first grids;

[0148] The merging unit 2053 is used to merge the multiple first grids according to the geographical characteristics of each first grid to obtain multiple grid regions.

[0149] Optionally, the merging unit 2053 is specifically used for:

[0150] At least two adjacent first grids with the same geographical features are merged into one grid region.

[0151] Optionally, the second acquisition module 206 is further configured to:

[0152] The grid area identifier of the sampling point is determined based on the latitude and longitude of the sampling point;

[0153] Wherein, if the latitude and longitude of the sampling point are within one of the multiple grid regions, then the grid region identifier of the sampling point is the grid region identifier of that grid region;

[0154] If the latitude and longitude of the sampling point are at the common boundary of two grid regions, then the grid region identifier of the sampling point is the grid region identifier of the grid region with the fewest sampling points among the two grid regions;

[0155] If the latitude and longitude of the sampling point are at the common vertex of at least two grid regions, then the grid region identifier of the sampling point is the grid region identifier of the grid region with the fewest sampling points among the at least two grid regions.

[0156] Terminal positioning devices can achieve Figure 1 The various processes implemented in the method embodiments can achieve the same technical effect, and will not be described again here to avoid repetition.

[0157] like Figure 7 As shown, this embodiment of the invention also provides an electronic device 300, including: a processor 301, a memory 302, and a program stored in the memory 302 and executable on the processor 301. When the program is executed by the processor 301, it implements the various processes of the above-described terminal positioning method embodiment and achieves the same technical effect. To avoid repetition, it will not be described again here.

[0158] This invention also provides a computer-readable storage medium storing a computer program. When executed by a processor, this computer program implements the various processes of the above-described terminal positioning method embodiments and achieves the same technical effects. To avoid repetition, it will not be described again here. The computer-readable storage medium may be, for example, ROM, RAM, a magnetic disk, or an optical disk.

[0159] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0160] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, 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 ROM / RAM, magnetic disk, optical disk), and includes several instructions to cause a terminal (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of the present invention.

[0161] The embodiments of the present invention have been described above with reference to the accompanying drawings. However, the present invention is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of the present invention without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of the present invention.

Claims

1. A terminal positioning method, characterized in that, The method includes: Obtain the terminal's time data and location reference data; A first neural network model is determined from multiple pre-trained neural network models based on the time data. The multiple pre-trained neural network models correspond one-to-one with multiple time periods. The first neural network model is the neural network model corresponding to the time period to which the time data belongs. The location reference data is input into the first neural network model; The location of the terminal is determined based on the output of the first neural network model.

2. The method according to claim 1, characterized in that, Determining the location of the terminal based on the output of the first neural network model includes: Obtain the target grid region identifier output by the first neural network model; Based on the correspondence between multiple grid area identifiers and multiple latitude and longitude coordinates, the target latitude and longitude coordinates corresponding to the target grid area identifier are determined, and the target latitude and longitude coordinates are one of the multiple latitude and longitude coordinates; The location of the terminal is determined based on the target latitude and longitude.

3. The method according to claim 2, characterized in that, Before determining the first neural network model from multiple pre-trained neural network models based on the time data, the method further includes: Multiple grid regions are determined based on map data, and the grid region identifier and corresponding latitude and longitude of each grid region are determined; Acquire sample data, which includes time data, location reference data, and grid region identifiers for multiple sampling points, wherein the grid region identifier of the sampling point is the grid region identifier of the grid region to which the sampling point belongs; The position reference data of each of the plurality of sampling points is input into the second neural network model corresponding to the time data of each sampling point, and the second neural network model is trained with the grid region identifier of each sampling point as the target output. The second neural network model obtained through training is one of the plurality of pre-trained neural network models.

4. The method according to claim 3, characterized in that, The determination of multiple grid areas based on map data includes: The geographical locations are divided based on map data, resulting in multiple first grids; Determine the geographical features of each of the plurality of first grids; The multiple first grids are merged based on the geographical characteristics of each first grid to obtain multiple grid regions.

5. The method according to claim 4, characterized in that, The process of merging the multiple first grids based on the geographical features of each first grid includes: At least two adjacent first grids with the same geographical features are merged into one grid region.

6. The method according to claim 3, characterized in that, Before acquiring the sample data, the method further includes: The grid area identifier of the sampling point is determined based on the latitude and longitude of the sampling point; Wherein, if the latitude and longitude of the sampling point are within one of the multiple grid regions, then the grid region identifier of the sampling point is the grid region identifier of that grid region; If the latitude and longitude of the sampling point are at the common boundary of two grid regions, then the grid region identifier of the sampling point is the grid region identifier of the grid region with the fewest sampling points among the two grid regions; If the latitude and longitude of the sampling point are at the common vertex of at least two grid regions, then the grid region identifier of the sampling point is the grid region identifier of the grid region with the fewest sampling points among the at least two grid regions.

7. A terminal positioning device, characterized in that, The device includes: The first acquisition module is used to acquire the terminal's time data and location reference data; The first determining module is used to determine a first neural network model from multiple pre-trained neural network models based on the time data. The multiple pre-trained neural network models correspond one-to-one with multiple time periods, and the first neural network model is the neural network model corresponding to the time period to which the time data belongs. The first input module is used to input the position reference data into the first neural network model; The second determining module is used to determine the location of the terminal based on the output of the first neural network model.

8. The apparatus according to claim 7, characterized in that, The second determining module is specifically used for: Obtain the target grid region identifier output by the first neural network model; Based on the correspondence between multiple grid area identifiers and multiple latitude and longitude coordinates, the target latitude and longitude coordinates corresponding to the target grid area identifier are determined, and the target latitude and longitude coordinates are one of the multiple latitude and longitude coordinates; The location of the terminal is determined based on the target latitude and longitude.

9. An electronic device, characterized in that, include: A processor, a memory, and a program stored in the memory and executable on the processor, wherein the program, when executed by the processor, implements the steps of the terminal positioning method as described in any one of claims 1 to 6.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the terminal positioning method as described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Positioning method and device based on Wi-Fi position fingerprints

    CN110113708A

  • Base station fingerprint positioning method, device and system and computer readable storage medium

    CN111194004A