CN113376674B - Terminal positioning method, device, equipment and storage medium - Google Patents

Terminal positioning method, device, equipment and storage medium Download PDF

Info

Publication number
CN113376674B
CN113376674B CN202110918702.8A CN202110918702A CN113376674B CN 113376674 B CN113376674 B CN 113376674B CN 202110918702 A CN202110918702 A CN 202110918702A CN 113376674 B CN113376674 B CN 113376674B
Authority
CN
China
Prior art keywords
satellite
grid
terminal
target
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110918702.8A
Other languages
Chinese (zh)
Other versions
CN113376674A (en
Inventor
苏景岚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110918702.8A priority Critical patent/CN113376674B/en
Publication of CN113376674A publication Critical patent/CN113376674A/en
Application granted granted Critical
Publication of CN113376674B publication Critical patent/CN113376674B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/42Determining position

Abstract

The application discloses a positioning method, a positioning device, equipment and a storage medium of a terminal, which can be applied to the fields of maps, navigation, automatic driving, terminal life service and the like. When a terminal needs to be positioned at a certain moment, for example, a target moment, satellite observation information of the terminal at the target moment is acquired, and first satellite visual distribution information of the terminal is determined based on the satellite observation information. And acquiring the second satellite visual distribution information of each grid unit in the grid area, and further determining the matching degree of the first satellite visual distribution information and the second satellite visual distribution information. And selecting a target grid unit which is closer to the real position of the terminal from the grid units in the grid area according to the matching degree, and determining the target position of the terminal at the target moment according to the grid position of the target grid unit. The method and the device can accurately position the terminal, so that the accuracy of the positioning precision is improved in a weak satellite signal scene, and the positioning availability is further improved.

Description

Terminal positioning method, device, equipment and storage medium
Technical Field
The present application relates to the field of computer technologies, and in particular, to a method, an apparatus, a device, and a storage medium for positioning a terminal.
Background
With the rapid development of positioning technology, more and more terminals with positioning function can help users to position the current position of the user, that is, position the position of the terminal, thereby providing various position services for the user.
Currently, a terminal is located mainly by a Global Navigation Satellite System (GPS), that is, the current position of a user is located by receiving Satellite signals and time information.
However, in many scenes, such as weak satellite signal scenes like urban canyons, high-rise forests, crossroads and the like, the positioning accuracy is not accurate enough, and the positioning availability is poor.
Disclosure of Invention
In order to solve the technical problem, the present application provides a method, an apparatus, a device and a storage medium for positioning a terminal, which improve the accuracy of positioning accuracy in a weak satellite signal scene, and further improve positioning availability.
In a first aspect, an embodiment of the present application provides a method for positioning a terminal, where the method includes:
acquiring satellite observation information of a terminal at a target moment;
determining first satellite visualization distribution information of the terminal based on the satellite observation information;
acquiring second satellite visualization distribution information of each grid cell in a grid area, wherein the grid area is generated based on the approximate position of the terminal at the target moment;
determining the matching degree of the first satellite visual distribution information and the second satellite visual distribution information;
selecting a target grid unit from a plurality of grid units of the grid area according to the matching degree;
and determining the target position of the terminal at the target moment according to the grid position of the target grid unit.
In a second aspect, an embodiment of the present application provides a positioning apparatus for a terminal, where the apparatus includes an obtaining unit, a determining unit, and a selecting unit:
the acquisition unit is used for acquiring satellite observation information of the terminal at a target moment;
the determining unit is used for determining first satellite visualization distribution information of the terminal based on the satellite observation information;
the acquisition unit is further configured to acquire second satellite visualization distribution information of each grid cell in a grid area, where the grid area is generated based on an approximate position of the terminal at the target time;
the determining unit is further configured to determine a matching degree of the first satellite visualization distribution information and the second satellite visualization distribution information;
the selecting unit is used for selecting a target grid unit from a plurality of grid units in the grid area according to the matching degree;
the determining unit is further configured to determine a target position of the terminal at the target time according to the grid position of the target grid unit.
In a third aspect, an embodiment of the present application provides a positioning device for a terminal, where the device includes a processor and a memory:
the memory is used for storing program codes and transmitting the program codes to the processor;
the processor is configured to perform the method of the first aspect according to instructions in the program code.
In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium for storing program code for executing the method of the first aspect.
According to the technical scheme, when the terminal needs to be positioned at a certain moment, such as a target moment, the satellite observation information of the terminal at the target moment is obtained, and the first satellite visual distribution information of the terminal is determined based on the satellite observation information. And acquiring second satellite visual distribution information of each grid unit in a grid area, wherein the grid area is generated based on the approximate position of the terminal at the target moment, and further determining the matching degree of the first satellite visual distribution information and the second satellite visual distribution information. The matching degree of the first satellite visual distribution information and the second satellite visual distribution information reflects the degree of closeness of the grid position of the grid unit and the real position of the terminal, and the higher the matching degree is, the closer the grid position of the corresponding grid unit and the real position of the terminal are. And selecting a target grid unit which is closer to the real position of the terminal from the grid units in the grid area according to the matching degree, and determining the target position of the terminal at the target moment according to the grid position of the target grid unit. Because the grid position is accurate, the grid position of the target grid unit reflects the real position of the terminal, so that the position of the terminal can be accurately positioned, the accuracy of the positioning precision is improved under the weak satellite signal scene, and the positioning availability is further improved.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and for a person of ordinary skill in the art, other drawings can be obtained according to these drawings without inventive exercise.
Fig. 1 is a schematic view of an application scenario of a positioning method of a terminal according to an embodiment of the present application;
fig. 2 is a flowchart of a method for positioning a terminal according to an embodiment of the present disclosure;
FIG. 3 is a block diagram of a satellite-based continuously operating reference station system according to an embodiment of the present application;
fig. 4 is an overall system architecture diagram of a positioning method of a terminal according to an embodiment of the present application;
FIG. 5 is a diagram illustrating an example of a constructed grid area provided by an embodiment of the present application;
FIG. 6 is an exemplary diagram of another grid area provided by an embodiment of the present application;
fig. 7 is a flowchart of a process of calculating second satellite visualization distribution information for each grid cell according to an embodiment of the present application;
fig. 8 is an exemplary diagram of a grid position of a target grid cell, a target position, and a real position of a terminal according to an embodiment of the present application;
fig. 9 is an exemplary diagram of an interface of an electronic map according to an embodiment of the present application;
fig. 10 is a flowchart for determining second satellite visualization distribution information according to an embodiment of the present application;
fig. 11 is an exemplary diagram of a three-dimensional object model, a grid cell i, and a satellite j according to an embodiment of the present application;
fig. 12 is a flowchart of another positioning method for a terminal according to an embodiment of the present application;
fig. 13 is a structural diagram of a positioning apparatus of a terminal according to an embodiment of the present application;
fig. 14 is a block diagram of a terminal according to an embodiment of the present application;
fig. 15 is a block diagram of a server according to an embodiment of the present application.
Detailed Description
Embodiments of the present application are described below with reference to the accompanying drawings.
In one or more embodiments, terminal positioning may be implemented based on GPS. However, in the weak satellite signal scenes such as urban canyons, high-rise forests, crossroads and the like, the positioning accuracy is not accurate enough, and the positioning usability is poor.
In order to solve the above technical problem, in one or more embodiments, the satellite visualization distribution information shows whether each satellite is visible to a current location, such as a grid cell or a terminal, and accurate satellite visualization information can be obtained even if a received satellite signal is weak or no satellite signal is received in a weak satellite signal scene. Therefore, the first satellite visual distribution information of the terminal can be determined based on the actual satellite observation information of the terminal, the grid area can be determined based on the approximate position of the terminal, the second satellite visual distribution information of each grid unit in the grid area can be obtained, and the matching degree of the first satellite visual distribution information and the second satellite visual distribution information can be further determined based on the first satellite visual distribution information and the second satellite visual distribution information.
The matching degree of the visual distribution information of the first satellite and the visual distribution information of the second satellite reflects the degree of closeness of the grid position of the grid unit and the real position of the terminal, and the higher the matching degree is, the closer the grid position of the corresponding grid unit and the real position of the terminal are. And selecting a target grid unit which is closer to the real position of the terminal from the grid units in the grid area according to the matching degree, and determining the target position of the terminal at the target moment according to the grid position of the target grid unit. Because the grid position is accurate, the grid position of the target grid unit reflects the real position of the terminal, so that the position of the terminal can be accurately positioned, the accuracy of the positioning precision is improved under the weak satellite signal scene, and the positioning availability is further improved.
The method provided by the embodiment of the application can be used for providing various Location Services, and Location Based Services (LBS) is a service related to the Location provided by a wireless operation company for a user. The location service is to acquire the current location of a positioning device (e.g. a terminal) by using various types of positioning technologies, and provide information resources and basic services to the positioning device through the mobile internet. The position service integrates various information technologies such as mobile communication, internet, space positioning, position information, big data and the like, and a mobile internet service platform is utilized to update and interact data, so that a user can obtain corresponding services through space positioning.
The method provided by the embodiment of the application can be applied to various fields needing position services, such as electronic maps, navigation, Internet of vehicles, vehicle-road cooperation, automatic driving, terminal life services (such as weather forecast), position friend making and the like, so that the positioning accuracy in a weak satellite signal scene is effectively improved. Taking the field of the electronic map as an example, when the electronic map is opened, the terminal can be positioned, and then the corresponding positioning mark is displayed on the electronic map, so that a user can observe or perform subsequent use; or in the navigation field, the terminal is positioned in real time, so that the route planning is facilitated.
It should be noted that the method provided in this embodiment of the present application may be implemented by a terminal alone, or may be implemented by a server alone, and then sends the target position of the terminal obtained by positioning to the terminal, or provides various location services for the terminal according to the target position of the terminal obtained by positioning. Of course, the method can also be implemented by the cooperation of the terminal and the server.
Referring to fig. 1, fig. 1 is a schematic view of an application scenario of a positioning method of a terminal according to an embodiment of the present application, where the application scenario is described by taking as an example that the terminal and a server cooperate to implement the method according to the embodiment of the present application. The application scenario includes a terminal 101 and a server 102. The server 102 may be an independent physical server, a server cluster or a distributed system formed by a plurality of physical servers, or a cloud server providing cloud computing services. The terminal 101 may be an electronic device with a positioning function, on which a positioning chip, such as a Global Navigation Satellite System (GNSS) chip, is integrated for processing Satellite signals and positioning the terminal. An operating system (e.g., Android) platform of the terminal provides a Software Development Kit (SDK) of the Location server, that is, an Android Location SDK, and can obtain a current Location, a positioning accuracy, and other related information of the terminal through an Application Programming Interface (API) provided by the SDK, and the SDK also provides satellite observation information and ephemeris data. The terminal 101 may be, for example, a smart phone, a tablet computer, a smart watch, a point of sale (POS) machine, a vehicle-mounted terminal, and the like, but is not limited thereto. The terminal 101 and the server 102 may be directly or indirectly connected through wired or wireless communication, and the present application is not limited thereto.
When it is necessary to locate the position of the terminal 101 at a certain time, for example, at a target time, the terminal 101 may obtain an approximate position of the terminal, where the approximate position is a position where the terminal is not calibrated, or may be considered as a position where the terminal is not error-corrected, and is a relatively rough position. In one possible implementation, the approximate location of the terminal may be determined based on the communication base station; in one possible implementation, the approximate location of the terminal may be determined based on a positioning module configured with the terminal itself. The true location of the terminal 101 may generally be in the vicinity of the approximate location.
The terminal 101 may also determine the first satellite visualization distribution information of the terminal based on the satellite observation information of the terminal at the target time.
The server 102 may obtain the approximate position transmitted by the terminal 101, obtain a grid area according to the approximate position, divide the grid area into a plurality of grid cells, and further obtain the second satellite visualization distribution information of each grid cell in the grid area.
Then, the terminal 101 acquires the second satellite visualization distribution information, and determines a matching degree of the first satellite visualization distribution information and the second satellite visualization distribution information. The matching degree of the first satellite visual distribution information and the second satellite visual distribution information reflects the degree of closeness of the grid position of the grid unit and the real position of the terminal, and the higher the matching degree is, the closer the grid position of the corresponding grid unit and the real position of the terminal are. Therefore, the terminal 101 can determine the target grid cell from the plurality of grid cells according to the matching degree, and the grid position of the target grid cell can reflect the real position of the terminal, so that the terminal 101 determines the target position of the terminal based on the grid position of the target grid cell, thereby outputting the target position in real time. The target position is determined based on the approximate position of the terminal, and the position of the real position of the terminal can be more accurately reflected, which is equivalent to performing error correction on the approximate position to obtain a more accurate position.
It is understood that, when the method provided by the embodiment of the present application is implemented by the terminal 101 alone, the second satellite visualization distribution information may be determined by the terminal 101, that is, the terminal 101 obtains the grid area according to the approximate location, and divides the grid area into a plurality of grid cells, thereby obtaining the second satellite visualization distribution information of each grid cell in the grid area. When the method provided by the embodiment of the application is implemented by the server 102 alone, the server 102 can acquire satellite observation information of the terminal at the target moment, and further determine first satellite visualization distribution information of the terminal; the server 102 determines the matching degree of the first satellite visual distribution information and the second satellite visual distribution information, determines a target grid unit from a plurality of grid units according to the matching degree, and determines the target position of the terminal based on the grid position of the target grid unit; thereafter, the server 102 feeds back the target position to the terminal 101 so that the terminal 101 implements output of the target position, or the server 102 provides a location service, such as weather forecast or the like, to the terminal 101 according to the target position.
Next, a positioning method of a terminal provided in an embodiment of the present application will be described in detail with reference to the accompanying drawings, taking the terminal as an execution subject.
Referring to fig. 2, fig. 2 shows a flowchart of a positioning method of a terminal, the method comprising:
s201, acquiring satellite observation information of the terminal at the target moment.
It should be noted that the method provided in the embodiment of the present application may be implemented based on a continuous satellite operation Reference station system (CORS), where CORS is a product of high and new technologies, such as a satellite positioning technology, a computer network technology, and a digital communication technology, that is, multi-azimuth and deep crystallization. The CORS consists of a reference station network (see 301 in FIG. 3), a data processing center (see 302 in FIG. 3), and a user application system (see 303 in FIG. 3), wherein the data processing center can be, for example, a server in the CORS, and can be referred to as a CORS server, and the user application system can include the intelligent terminal shown in FIG. 3, a vehicle-mounted terminal on a vehicle, and the like. In addition, the network of reference stations transmits satellite observation information to the data processing center, and the process needs a data transmission system (not shown in fig. 3), and each reference station and the data processing center are connected into a whole through the data transmission system to form a special network; the data processing center broadcasts the ephemeris data to the user application system, and the process needs a positioning and navigation data broadcasting system (not shown in fig. 3), so the CORS further includes a data transmission system and a positioning and navigation data broadcasting system. The satellites used for positioning may include a plurality of satellites, as shown in fig. 3, and four satellites are taken as an example in fig. 3.
When the terminal needs to be located at a certain time, for example, at a target time, the terminal may obtain satellite observation information of the terminal at the target time, where the satellite observation information may reflect a situation that the terminal receives a satellite signal, for example, the terminal receives the satellite signal or does not receive the satellite signal. If the satellite signal of a certain satellite is received, the satellite can be shown to be visible for the terminal, and if the satellite signal of a certain satellite is not received, the satellite can be shown to be invisible for the terminal, so that the first satellite visualization distribution information of the terminal can be determined according to the satellite observation information. The target time can be obtained by the system time of the terminal.
S202, determining first satellite visualization distribution information of the terminal based on the satellite observation information.
The first satellite visualization distribution information may represent whether each satellite is visible to the terminal. Whether the satellite is visible to the terminal or not can be identified through the identification information, if the satellite observation information shows that the terminal receives satellite signals of the satellite, third identification information is generated, and the third identification information identifies that the satellite is visible to the terminal. And if the satellite observation information represents that the terminal receives satellite signals of the satellite, generating fourth identification information which identifies that the satellite is invisible to the terminal. And generating the first satellite visual distribution information according to the third identification information or the fourth identification information corresponding to the satellite.
The identification information, e.g., the third identification information or the fourth identification information, may be a number, a symbol, or the like. Taking the identification information as a number as an example, if the satellite is visible to the terminal, the corresponding identification information is third identification information, and the third identification information may be 1; if the satellite is not visible to the terminal, the corresponding identification information is fourth identification information, and the fourth identification information may be 0. Thus, when it is determined whether each satellite is visible to the terminal, a matrix having the identification information as an element is obtained.
For example, the positioning is performed based on 4 satellites, namely, a satellite 1, a satellite 2, a satellite 3, and a satellite 4. If the terminal receives the satellite signal of the satellite 1, the satellite 1 is visible for the terminal, and third identification information 1 is generated; if the terminal does not receive the satellite signal of the satellite 2, the satellite 2 is invisible to the terminal, and fourth identification information 0 is generated; if the terminal does not receive the satellite signal of the satellite 3, the satellite 3 is invisible to the terminal, and fourth identification information 0 is generated; when the terminal receives the satellite signal of the satellite 4, the satellite 4 is visible to the terminal, and the third identification information 1 is generated. A matrix (1, 0,0, 1) is finally obtained, which can be used as the first satellite visualization distribution information.
When the terminal determines the first satellite visualization distribution information, if the satellite is in an abnormal state at the target time, for example, the position of the satellite is abnormal, the corresponding satellite observation information may also be abnormal data, which results in inaccurate calculation of the first satellite visualization distribution information. The ephemeris data may indicate whether the satellite is in a normal state to some extent. The ephemeris data is also called ephemeris parameter table, which refers to a satellite orbit parameter table, that is, the table data is used to describe the predetermined location of a certain satellite at regular intervals. Therefore, in a possible implementation manner, the terminal may further obtain ephemeris data of the satellite, and then when determining the first satellite visualization distribution information, determine state information of the satellite according to the ephemeris data, and perform rejection processing on the satellite observation information according to the state information, for example, when the state information of a certain satellite indicates that the satellite is in an abnormal state, reject the satellite observation information of the satellite. And then determining the first satellite visual distribution information of the terminal based on the satellite observation information after the elimination processing. In this way, the accuracy of the visual distribution information of the first satellite is improved as much as possible.
The ephemeris data can be stored in a ephemeris database, the ephemeris database can be connected with a CORS server, when the terminal needs to acquire the ephemeris data, the terminal can send an ephemeris request to the CORS server, and the CORS server can acquire the ephemeris data from the ephemeris database and broadcast the ephemeris data to the terminal by the CORS server.
In this case, an overall system architecture diagram of the positioning method for the terminal provided in the embodiment of the present application may be seen from fig. 4, which includes a terminal 401, a satellite 402, a CORS server 403, and an ephemeris database 404. The terminal 401 may be configured to receive satellite signals from the satellites 402 to obtain satellite observation information. The CORS server 403 is connected with the ephemeris database 404, and the terminal 401 and the CORS server 403 can be connected through a wireless network, for example, a 4G/5G or WIFI network; when the method provided by the embodiment of the present application is executed by a server, or executed by a terminal and a server in a matching manner, the CORS server may be a server executing the method provided by the embodiment of the present application, or may be an independent server, which is not limited in this embodiment.
And S203, acquiring second satellite visualization distribution information of each grid unit in the grid area.
The mesh area is generated based on an approximate position of the terminal at the target time. The grid region may be generated by a server, and after the server generates the grid region including grid cells, the server may calculate the second satellite visualization distribution information and transmit the second satellite visualization distribution information to the terminal. The server may be an object three-dimensional model server (see 405 in fig. 4), on which model data of an object three-dimensional model may be stored, the object three-dimensional model may be an urban three-dimensional model, a rural three-dimensional model, and the model data may include information of buildings, road networks, and the like. Of course, in some cases, the grid region and the second satellite visualization distribution information may also be generated by the terminal, which is not limited in this embodiment of the present application.
Taking the example of generating the mesh area by the target three-dimensional model server, after receiving the approximate position, the target three-dimensional model server may determine the mesh area with the approximate position as the center, and further divide the mesh area at a certain interval to generate mesh cells, which may be rectangular, square, regular hexagon, or other shapes. Taking the grid cells as rectangles as an example, the constructed grid area can be shown in fig. 5, the grid area in fig. 5 is a rectangle with an approximate position as a center, the approximate position is shown by black triangles in fig. 5, the geometric center position of the grid cell is the grid position of the grid cell, and the grid position of one cell can be shown by white triangles in fig. 5. Since there may be an object three-dimensional model in the vicinity of the overview location, a mesh area may be shown based on model data of the object three-dimensional model, as shown in fig. 6, where white triangles represent the overview location of the terminal, and parts of the object three-dimensional model are located in the mesh area, which may make some satellites invisible for some mesh cells due to the presence of the object three-dimensional model.
That is, the position information of the satellite, the grid positions of the grid cells, and the three-dimensional model of the object may determine whether the satellite is visible for a certain grid cell. Therefore, in a possible implementation manner, the manner of obtaining the second satellite visualization distribution information of each grid cell in the grid region may be that the object three-dimensional model server obtains ephemeris data of the satellite, so as to determine the position information of the satellite according to the ephemeris data, and further determine the second satellite visualization distribution information of each grid cell according to the position information of the satellite, the grid position of each grid cell, and the model data of the object three-dimensional model. The position information may be represented by coordinate information, for example, may be coordinates in an Earth-Centered Earth-Fixed coordinate system (Earth-Fixed, ECEF), that is, ECEF coordinates.
Taking the satellites including the beidou satellite, the GPS satellite, the GALILEO (GALILEO) satellite, and the GLONASS (GLONASS) satellite as an example, the object three-dimensional model server calculates ECEF coordinates of the beidou satellite, the GPS satellite, the GALILEO satellite, and the GLONASS satellite at the time of the object based on ephemeris data acquired from the ephemeris database, as shown in fig. 7. The object three-dimensional model server sends an ephemeris request to the CORS server, the CORS server is used for broadcasting ephemeris data such as ephemeris parameter tables respectively corresponding to a Beidou satellite, a GPS satellite, a GALILEO satellite and a GLONASS satellite, the CORS server broadcasts the ephemeris data to the object three-dimensional model server according to the ephemeris request, and the object three-dimensional model server receives the ephemeris data and calculates parameters such as ECEF coordinates of each satellite at a target moment according to the ephemeris data. And then calculating the second satellite visual distribution information of each grid unit according to the position information of the satellite, the grid position of the grid unit and the model data of the object three-dimensional model. The model data of the object three-dimensional model may include the length, width, and height of the object three-dimensional model, and the position relationship between the object three-dimensional model and the grid cells may be determined according to the length and width of the object three-dimensional model, for example, which grid cells the object three-dimensional model is located at, and the second satellite visualization distribution information may be determined according to the height of the object three-dimensional model in combination with the position information of the satellite and the grid positions of the grid cells.
The second satellite visualization distribution information may also be represented in a matrix, where each element in the matrix represents whether a satellite is visible to the grid cell. Assuming that M grid cells and N satellites are provided, the visual distribution information of the second satellite of the grid cell is as follows:
Figure 333098DEST_PATH_IMAGE001
wherein the content of the first and second substances,
Figure 531998DEST_PATH_IMAGE002
second satellite visualization distribution information representing grid cell i, i =1, 2, … …, M,
Figure 246882DEST_PATH_IMAGE003
identifying whether satellite j is visible to grid cell i, j =1, 2, … …, N.
Since the grid cells are divided into the grid regions at certain intervals, the smaller the interval, the smaller the area of each grid cell, and the more accurate the target position is when determining the target position based on the grid positions of the grid cells. When the grid area is the area where the road in the road network grid is located, different grid units may be located in different lanes of one road, so that the target position determined according to the grid position of the grid unit can distinguish which lane of one road the terminal is located in, thereby improving the positioning accuracy and assisting in realizing lane-level positioning navigation.
S204, determining the matching degree of the first satellite visualization distribution information and the second satellite visualization distribution information.
After the terminal acquires the second satellite visual distribution information, the matching degree of the first satellite visual distribution information and the second satellite visual distribution information can be determined. The matching degree of the first satellite visualization distribution information and the second satellite visualization distribution information can be calculated according to the following formula:
Figure 568142DEST_PATH_IMAGE004
wherein the content of the first and second substances,
Figure 322471DEST_PATH_IMAGE005
for the degree of matching of the first satellite visualization distribution information with the second satellite visualization distribution information of the grid cell q,
Figure 59483DEST_PATH_IMAGE006
is the modulus of the vector a, where a is
Figure 395918DEST_PATH_IMAGE007
Figure 825762DEST_PATH_IMAGE008
The distribution information is visualized for the first satellite,
Figure 598546DEST_PATH_IMAGE009
the distribution information is visualized for the second satellite of grid cell q. Performing the calculation on the M grid cells to obtain a matching degree between the first satellite visual distribution information and the second satellite visual distribution information of all grid cells, that is:
Figure 139249DEST_PATH_IMAGE010
wherein the content of the first and second substances,
Figure 359883DEST_PATH_IMAGE011
for the degree of matching between the first satellite visualization distribution information and the second satellite visualization distribution information of the grid cell q,
Figure 695050DEST_PATH_IMAGE012
when the number of grid units is large, in order to reduce the amount of computation and improve the computation efficiency of the matching degree, in a possible implementation manner, the method for determining the matching degree may be to construct a multidimensional space Tree data structure (K-Dimensional Tree, KD-Tree) based on the second satellite visual distribution information, and then sequentially compare the first satellite visual distribution information with nodes in the multidimensional space Tree data structure according to a nearest search algorithm to obtain the matching degree between the first satellite visual distribution information and the second satellite visual distribution information.
S205, selecting a target grid unit from the grid units in the grid area according to the matching degree.
The matching degree of the visual distribution information of the first satellite and the visual distribution information of the second satellite reflects the degree of closeness of the grid position of the grid unit and the real position of the terminal, and the higher the matching degree is, the closer the grid position of the corresponding grid unit and the real position of the terminal are. Therefore, a target grid unit which is relatively close to the real position of the terminal is selected from the grid units in the grid area according to the matching degree, so that the target position of the terminal at the target moment is determined according to the grid position of the target grid unit.
The embodiments of the present application provide various ways of determining a target grid cell, and since the higher the matching degree is, the closer the grid position of the corresponding grid cell is to the real position of the terminal, in order to select a target grid cell that can reflect the real position of the terminal, a grid cell with a relatively high matching degree or a grid cell with a maximum matching degree may be selected as the target grid cell. Therefore, in one possible implementation, the mesh cell with the largest matching degree among the plurality of mesh cells may be determined as the target mesh cell. Or, determining a grid cell of which the matching degree reaches a preset threshold value among the plurality of grid cells as a target grid cell, where the preset threshold value may be set to be large enough, so that the grid position of the determined target grid cell is close enough to the real position of the terminal. Or, the grid cells are sorted according to the sequence of the matching degrees from large to small, the grid cell sorted at the top N is selected as a target grid cell, and N is an integer greater than or equal to 1. In most cases, N is usually 1 in order to improve the accuracy of the subsequent target location determination.
It should be noted that, according to different determination manners of the target grid unit and a specific numerical condition of the matching degree, the determined target grid unit may include one grid unit or may include a plurality of grid units, which is not limited in this embodiment.
S206, determining the target position of the terminal at the target moment according to the grid position of the target grid unit.
The manner in which the target location is determined may also vary depending on the number of grid cells included in the target grid cell. And if the target grid unit comprises one grid unit, directly taking the grid position of the target grid unit as the target position. If the target grid unit comprises a plurality of grid units, determining the average value of grid positions of the grid units, and taking the average value as the target position.
For example, the target grid cell includes L grid cells, each of the L grid cells being
Figure 423971DEST_PATH_IMAGE013
Then, the calculation formula of the target position is:
Figure 565103DEST_PATH_IMAGE014
wherein the content of the first and second substances,
Figure 63080DEST_PATH_IMAGE015
as a grid cell
Figure 116618DEST_PATH_IMAGE016
The grid location of (a), the number of grid cells included in the target grid cell.
Referring to fig. 8, a black triangle in fig. 8 represents a real position of the terminal, a white triangle with diagonal stripes represents a grid cell with a maximum matching degree, and the white triangle represents a determined target position, which is very close to the real position of the terminal.
According to the technical scheme provided by the embodiment of the application, the satellite visualization distribution information is required to be calculated, and positioning calculation is not required to be carried out according to satellite signals of satellites, so that even when the number of the satellites does not meet the positioning calculation requirement, for example, the number of the satellites is less than 4, the terminal can be accurately positioned.
According to the technical scheme, when the terminal needs to be positioned at a certain moment, such as a target moment, the satellite observation information of the terminal at the target moment is obtained, and the first satellite visual distribution information of the terminal is determined based on the satellite observation information. And acquiring second satellite visual distribution information of each grid unit in a grid area, wherein the grid area is generated based on the approximate position of the terminal at the target moment, and further determining the matching degree of the first satellite visual distribution information and the second satellite visual distribution information. The matching degree of the first satellite visual distribution information and the second satellite visual distribution information reflects the degree of closeness of the grid position of the grid unit and the real position of the terminal, and the higher the matching degree is, the closer the grid position of the corresponding grid unit and the real position of the terminal are. And selecting a target grid unit which is closer to the real position of the terminal from the grid units in the grid area according to the matching degree, and determining the target position of the terminal at the target moment according to the grid position of the target grid unit. Because the grid position is accurate, the grid position of the target grid unit reflects the real position of the terminal, so that the position of the terminal can be accurately positioned, the accuracy of the positioning precision is improved under the weak satellite signal scene, and the positioning availability is further improved.
It should be noted that the positioning method of the terminal provided in the embodiment of the present application may be applied to various location services, such as an electronic map. In the electronic map scene, the terminal can also display the electronic map, wherein the electronic map comprises an object three-dimensional model which is generated according to the model data. Thus, after the target position is obtained, the positioning mark of the terminal can be displayed on the electronic map according to the target position.
For example, as shown in fig. 9, when the user opens the electronic map application, the electronic map may be presented, and the electronic map includes an object three-dimensional model, such as shown by a white solid object in fig. 9, which may be a building such as a tall building. And determining the target position of the terminal when the electronic map is opened, thereby displaying the positioning mark of the terminal on the electronic map and realizing the positioning of the terminal. Wherein the positioning marks are for example indicated by marks within the dashed box in fig. 9. In this way, the user knows where he is currently located. Meanwhile, when the route is required to be searched and navigated, the corresponding service can be conveniently completed according to the target position.
Next, a detailed description will be given of a manner of determining the second satellite visualization distribution information. And after the position information of the satellite is obtained, determining second satellite visual distribution information of each grid unit according to the position information of the satellite, the grid position of each grid unit and the model data of the three-dimensional object model. The specific process of this step can be seen in fig. 10, which includes:
s1001, according to the position information of the satellite and the grid position of each grid unit, respectively determining a first altitude angle and a first azimuth angle of the satellite relative to each grid unit.
If the position information of the satellite and the grid position of the grid cell can be represented by ECEF coordinates, the ECEF coordinates of the grid cell i are assumed to be
Figure 332836DEST_PATH_IMAGE017
The ECEF coordinate of satellite j is
Figure 215341DEST_PATH_IMAGE018
The altitude and azimuth of satellite j with respect to grid cell i are calculated according to the following equation:
Figure 895721DEST_PATH_IMAGE019
wherein the content of the first and second substances,
Figure 838269DEST_PATH_IMAGE020
is the altitude angle of satellite j relative to grid cell i,
Figure 276204DEST_PATH_IMAGE021
is the azimuth of satellite j relative to grid cell i.
S1002, if the grid unit i is not shielded by an object at a first azimuth of the satellite j relative to the grid unit i, generating first identification information.
Wherein the first identification information identifies that the satellite j is visible to the grid cell i, the grid cell i is any grid cell in the grid area, and the satellite j is any satellite. The first identification information may be represented by a number, a symbol, or the like, similarly to the third identification information or the fourth identification information. Taking the example that the first identification information is a number, in this case, the first identification information may be 1.
S1003, if a target object exists in the grid unit i at the first azimuth of the satellite j relative to the grid unit i, calculating a second elevation angle of the satellite j relative to a target position point on the target object according to model data of the object three-dimensional model.
The target position point is the intersection point of the highest edge of the target object and the ray at the first azimuth. According to model data of the three-dimensional model of the object, the highest edge of the target object and the azimuth angle of the grid unit i are obtained
Figure 696821DEST_PATH_IMAGE021
See fig. 11 for the intersection point k, k of the rays. The intersection point k is taken as a target position point, and the coordinate of k is assumed to be
Figure 215396DEST_PATH_IMAGE022
The altitude and azimuth of satellite j with respect to intersection point k are calculated according to the following equation:
Figure 63266DEST_PATH_IMAGE023
wherein the content of the first and second substances,
Figure 988497DEST_PATH_IMAGE024
is the altitude angle of satellite j relative to intersection point k,
Figure 540701DEST_PATH_IMAGE025
is the azimuth angle of satellite j relative to intersection point k, and
Figure 867777DEST_PATH_IMAGE026
s1004, second identification information is generated according to the size relation between the first altitude angle and the second altitude angle.
If the second elevation angle is smaller than the first elevation angle, that is, when the second elevation angle is smaller than the first elevation angle
Figure 152128DEST_PATH_IMAGE027
Then satellite j is visible to grid cell i, and second identifying information identifying satellite j as visible to grid cell i is determined. If the second elevation angle is greater than or equal to the first elevation angle, that is
Figure 377704DEST_PATH_IMAGE028
Then satellite j is not visible for grid cell i, and second identifying information identifying that satellite j is not visible for grid cell i is determined.
Wherein the second identification information identifies whether the satellite j is visible to the grid cell i. The second identification information is similar to the third identification information or the fourth identification information or the first identification information, and may be represented by a number, a symbol, or the like. Taking the example that the second identification information is a number,
Figure 140124DEST_PATH_IMAGE027
and, the second identification information may be 1,
Figure 321706DEST_PATH_IMAGE029
the second identification information may be 0.
S1005, generating the second satellite visual distribution information according to the first identification information or the second identification information of each satellite for each grid unit.
And performing the above processing on all grid cells and satellites to obtain the second satellite visual distribution information of each grid cell. Assuming that M grid cells and N satellites are provided, the visual distribution information of the second satellite is as follows:
Figure 573696DEST_PATH_IMAGE030
wherein the content of the first and second substances,
Figure 56542DEST_PATH_IMAGE031
being the altitude angle of the satellite p relative to the grid cell q,
Figure 622653DEST_PATH_IMAGE032
is the altitude angle of the satellite p relative to the target location point k.
Figure 658742DEST_PATH_IMAGE033
First identification information or second identification information that is whether the satellite p is visible to the grid cell q.
Referring to fig. 11, the second satellite visualization distribution information of each grid cell is obtained based on the above determination method, and finally the region identified by 2 and 3 in fig. 11 is determined to be a visible region, i.e., the satellite is visible for the grid cell in the region; the areas identified by 1 and 4 are non-visible areas, i.e. areas in which the satellites are not visible to the grid cells.
The method for positioning a terminal according to the embodiment of the present application will be described below with reference to an actual application scenario. In the scene, the user can execute a trigger operation on the electronic map application, so that the electronic map application is opened. When the electronic map application is opened, an electronic map may be presented that includes three-dimensional models of objects thereon, such as a three-dimensional model of a city, including buildings and road networks. In the process, the terminal of the user can be positioned, so that the positioning mark of the terminal is displayed on the electronic map, and the current position of the user is identified.
As shown in fig. 12, the terminal sends an ephemeris request to the CORS server through a 4G or WIFI network, and the terminal acquires ephemeris data broadcast by the CORS server (see S1201 in fig. 12). The terminal acquires the approximate position (shown as S1202 in fig. 12), and transmits the approximate position to the target three-dimensional model server, the target three-dimensional model server constructs a grid region (shown as S1203 in fig. 12) with the approximate position of the terminal as the center, calculates second satellite visualization distribution information of the grid unit (shown as S1204 in fig. 12) from the grid position of the grid unit, the ephemeris data, and the model data of the target three-dimensional model, and transmits the second satellite visualization distribution information to the terminal. The terminal calculates first satellite visualization distribution information of the terminal (see S1205 in fig. 12), calculates a matching degree of the first satellite visualization distribution information and the second satellite visualization distribution information (see S1206 in fig. 12), selects a grid unit with the maximum matching degree as a target grid unit (see S1207 in fig. 12), and determines a target position of the terminal according to the grid position of the target grid unit (see S1208 in fig. 12).
Based on the terminal positioning method provided in the embodiment corresponding to fig. 2, an embodiment of the present application further provides a terminal positioning apparatus 1300, referring to fig. 13, where the apparatus 1300 includes an obtaining unit 1301, a determining unit 1302, and a selecting unit 1303:
the obtaining unit 1301 is configured to obtain satellite observation information of the terminal at a target time;
the determining unit 1302 is configured to determine first satellite visualization distribution information of the terminal based on the satellite observation information;
the obtaining unit 1301 is further configured to obtain second satellite visualization distribution information of each grid cell in a grid region, where the grid region is generated based on the approximate position of the terminal at the target time;
the determining unit 1302 is further configured to determine a matching degree between the first satellite visualization distribution information and the second satellite visualization distribution information;
the selecting unit 1303 is configured to select a target grid cell from the multiple grid cells in the grid region according to the matching degree;
the determining unit 1302 is further configured to determine a target position of the terminal at the target time according to the grid position of the target grid unit.
In a possible implementation manner, the obtaining unit 1301 is configured to:
acquiring ephemeris data of a satellite;
determining position information of the satellite according to the ephemeris data;
and respectively determining second satellite visual distribution information of each grid unit according to the position information of the satellite, the grid position of each grid unit and the model data of the three-dimensional model of the object.
In a possible implementation manner, the obtaining unit 1301 is specifically configured to:
respectively determining a first altitude angle and a first azimuth angle of the satellite relative to each grid unit according to the position information of the satellite and the grid position of each grid unit;
if the grid cell i is not shielded by an object at a first azimuth of the satellite j relative to the grid cell i, generating first identification information, wherein the first identification information identifies that the satellite j is visible for the grid cell i, the grid cell i is any grid cell in the grid area, and the satellite j is any satellite;
if a target object exists in the grid unit i at a first azimuth of the satellite j relative to the grid unit i, calculating a second altitude of the satellite j relative to a target position point on the target object according to model data of the object three-dimensional model, wherein the target position point is an intersection point of a highest edge of the target object and a ray at the first azimuth;
generating second identification information according to the magnitude relation between the first altitude angle and the second altitude angle, wherein the second identification information identifies whether the satellite j is visible for the grid unit i;
and generating the second satellite visual distribution information according to the first identification information or the second identification information of each satellite for each grid unit.
In a possible implementation manner, the obtaining unit 1301 is specifically configured to:
determining second identification information identifying that the satellite j is visible to the grid cell i if the second elevation angle is less than the first elevation angle;
determining second identification information identifying that the satellite j is not visible to the grid cell i if the second elevation angle is greater than or equal to the first elevation angle.
In a possible implementation manner, the determining unit 1302 is configured to:
if the satellite observation information represents that the terminal receives satellite signals of a satellite, third identification information is generated, and the third identification information identifies that the satellite is visible for the terminal;
if the satellite observation information represents that the terminal receives satellite signals of a satellite, fourth identification information is generated, and the fourth identification information identifies that the satellite is invisible to the terminal;
and generating the first satellite visual distribution information according to the third identification information or the fourth identification information corresponding to the satellite.
In a possible implementation manner, the determining unit 1302 is configured to:
constructing a multi-dimensional space tree data structure based on the second satellite visual distribution information;
and sequentially comparing the first satellite visual distribution information with nodes in the multi-dimensional space tree data structure according to a nearest neighbor search algorithm to obtain the matching degree between the first satellite visual distribution information and the second satellite visual distribution information.
In a possible implementation manner, the determining unit 1302 is configured to:
and if the target grid unit comprises one grid unit, taking the grid position of the target grid unit as the target position.
In a possible implementation manner, the determining unit 1302 is configured to:
if the target grid unit comprises a plurality of grid units, determining the average value of grid positions of the grid units;
and taking the average value as the target position.
In a possible implementation manner, the selecting unit 1303 is configured to:
determining the grid cell with the maximum matching degree in the plurality of grid cells as the target grid cell;
or, determining the grid cell of which the matching degree reaches a preset threshold value in the plurality of grid cells as the target grid cell;
or, the grid cells are sorted according to the sequence of the matching degrees from large to small;
and selecting the grid unit ranked at the top N as the target grid unit, wherein N is an integer greater than or equal to 1.
In one possible implementation, the apparatus further includes a presentation unit:
the display unit is used for displaying an electronic map, and the electronic map comprises the three-dimensional object model;
and the display unit is further used for displaying a positioning mark of the terminal on the electronic map according to the target position after the target position of the terminal at the target moment is determined according to the grid position of the target grid unit.
In a possible implementation manner, the obtaining unit 1301 is further configured to:
acquiring ephemeris data of a satellite;
the determining unit 1302 is specifically configured to:
determining state information of the satellite according to the ephemeris data;
removing the satellite observation information according to the state information;
and determining first satellite visual distribution information of the terminal based on the satellite observation information subjected to the elimination processing.
The embodiment of the application further provides a positioning device of the terminal, which can be a terminal, and takes the terminal as a smart phone as an example:
fig. 14 is a block diagram illustrating a partial structure of a smart phone related to a terminal provided in an embodiment of the present application. Referring to fig. 14, the smart phone includes: radio Frequency (RF) circuit 1410, memory 1420, input unit 1430, display unit 1440, sensor 1450, audio circuit 1460, wireless fidelity (WiFi) module 1470, processor 1480, and power supply 1490. The input unit 1430 may include a touch panel 1431 and other input devices 1432, the display unit 1440 may include a display panel 1441, and the audio circuit 1460 may include a speaker 1461 and a microphone 1462. Those skilled in the art will appreciate that the smartphone configuration shown in fig. 14 is not intended to be limiting of smartphones and may include more or fewer components than shown, or some components in combination, or a different arrangement of components.
The memory 1420 may be used to store software programs and modules, and the processor 1480 executes various functional applications and data processing of the smart phone by operating the software programs and modules stored in the memory 1420. The memory 1420 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application program required for at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may store data (such as audio data, a phonebook, etc.) created according to the use of the smartphone, and the like. Further, memory 1420 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid-state storage device.
The processor 1480, which is a control center of the smartphone, connects various parts of the entire smartphone through various interfaces and lines, and performs various functions of the smartphone and processes data by operating or executing software programs and/or modules stored in the memory 1420 and calling data stored in the memory 1420, thereby integrally monitoring the smartphone. Alternatively, the processor 1480 may include one or more processing units; preferably, the processor 1480 may integrate an application processor, which handles primarily operating systems, user interfaces, and applications, among others, with a modem processor, which handles primarily wireless communications. It will be appreciated that the modem processor described above may not be integrated into the processor 1480.
In this embodiment, the processor 1480 in the terminal may perform the following steps: :
acquiring satellite observation information of a terminal at a target moment;
determining first satellite visualization distribution information of the terminal based on the satellite observation information;
acquiring second satellite visualization distribution information of each grid cell in a grid area, wherein the grid area is generated based on the approximate position of the terminal at the target moment;
determining the matching degree of the first satellite visual distribution information and the second satellite visual distribution information;
selecting a target grid unit from a plurality of grid units of the grid area according to the matching degree;
and determining the target position of the terminal at the target moment according to the grid position of the target grid unit.
The device may further include a server, please refer to fig. 15, fig. 15 is a block diagram of a server 1500 provided in this embodiment, and the server 1500 may have a relatively large difference due to different configurations or performances, and may include one or more Central Processing Units (CPUs) 1522 (e.g., one or more processors) and a memory 1532, and one or more storage media 1530 (e.g., one or more mass storage devices) for storing applications 1542 or data 1544. Memory 1532 and storage media 1530 may be, among other things, transient or persistent storage. The program stored on the storage medium 1530 may include one or more modules (not shown), each of which may include a series of instruction operations for the server. Still further, a central processor 1522 may be provided in communication with the storage medium 1530, executing a series of instruction operations in the storage medium 1530 on the server 1500.
The server 1500 may also include one or more power supplies 1526, one or more wired or wireless network interfaces 1550, one or more input-output interfaces 1558, and/or one or more operating systems 1541, such as Windows Server, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
In this embodiment, the central processor 1522 in the server 1500 may execute the following steps:
acquiring satellite observation information of a terminal at a target moment;
determining first satellite visualization distribution information of the terminal based on the satellite observation information;
acquiring second satellite visualization distribution information of each grid cell in a grid area, wherein the grid area is generated based on the approximate position of the terminal at the target moment;
determining the matching degree of the first satellite visual distribution information and the second satellite visual distribution information;
selecting a target grid unit from a plurality of grid units of the grid area according to the matching degree;
and determining the target position of the terminal at the target moment according to the grid position of the target grid unit.
According to an aspect of the present application, there is provided a computer-readable storage medium for storing program codes for performing the positioning method of the terminal according to the foregoing embodiments.
According to an aspect of the application, a computer program product or computer program is provided, comprising computer instructions, the computer instructions being stored in a computer readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions to cause the computer device to perform the method provided in the various alternative implementations of the embodiment.
The terms "first," "second," "third," "fourth," and the like in the description of the application and the above-described figures, if any, are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the application described herein are, for example, capable of operation in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other manners. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be substantially implemented or contributed to by the prior art, or all or part of the technical solution may be embodied in a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
The above embodiments are only used for illustrating the technical solutions of the present application, and not for limiting the same; although the present application has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions in the embodiments of the present application.

Claims (12)

1. A method for positioning a terminal, the method being applied to positioning the terminal in an outdoor street environment, the method comprising:
acquiring satellite observation information of a terminal at a target moment;
determining first satellite visualization distribution information of the terminal based on the satellite observation information, wherein the first satellite visualization distribution information is used for embodying whether each satellite is visible to the terminal;
the determining of the first satellite visualization distribution information of the terminal based on the satellite observation information includes:
if the satellite observation information represents that the terminal receives satellite signals of a satellite, third identification information is generated, and the third identification information identifies that the satellite is visible for the terminal;
if the satellite observation information shows that the terminal does not receive satellite signals of a satellite, fourth identification information is generated, and the fourth identification information identifies that the satellite is invisible to the terminal;
generating the first satellite visual distribution information according to the third identification information or the fourth identification information corresponding to the satellite;
acquiring second satellite visualization distribution information of each grid unit in a grid area, wherein the grid area is a two-dimensional grid area generated based on the approximate position of the terminal at the target moment, and the second satellite visualization distribution information is used for showing whether each satellite is visible for each grid unit in the grid area;
the acquiring of the second satellite visualization distribution information of each grid cell in the grid region includes: acquiring ephemeris data of a satellite; determining position information of the satellite according to the ephemeris data; respectively determining second satellite visual distribution information of each grid unit according to the position information of the satellite, the grid position of each grid unit and the model data of the three-dimensional object model;
determining the matching degree of the first satellite visual distribution information and the second satellite visual distribution information;
selecting a target grid unit from a plurality of grid units of the grid area according to the matching degree;
and determining the target position of the terminal at the target moment according to the grid position of the target grid unit.
2. The method according to claim 1, wherein the determining the second satellite visualization distribution information of each grid cell according to the position information of the satellite, the grid position of each grid cell and the model data of the three-dimensional model of the object comprises:
respectively determining a first altitude angle and a first azimuth angle of the satellite relative to each grid unit according to the position information of the satellite and the grid position of each grid unit;
if the grid cell i is not shielded by an object at a first azimuth of the satellite j relative to the grid cell i, generating first identification information, wherein the first identification information identifies that the satellite j is visible for the grid cell i, the grid cell i is any grid cell in the grid area, and the satellite j is any satellite;
if a target object exists in the grid unit i at a first azimuth of the satellite j relative to the grid unit i, calculating a second altitude of the satellite j relative to a target position point on the target object according to model data of the object three-dimensional model, wherein the target position point is an intersection point of a highest edge of the target object and a ray at the first azimuth;
generating second identification information according to the magnitude relation between the first altitude angle and the second altitude angle, wherein the second identification information identifies whether the satellite j is visible for the grid unit i;
and generating the second satellite visual distribution information according to the first identification information or the second identification information of each satellite for each grid unit.
3. The method according to claim 2, wherein the determining second identification information of the grid cell i according to the magnitude relationship between the first altitude angle and the second altitude angle comprises:
determining second identification information identifying that the satellite j is visible to the grid cell i if the second elevation angle is less than the first elevation angle;
determining second identification information identifying that the satellite j is not visible to the grid cell i if the second elevation angle is greater than or equal to the first elevation angle.
4. The method according to any one of claims 1-3, wherein the determining the matching degree of the first satellite visualization distribution information and the second satellite visualization distribution information comprises:
constructing a multi-dimensional space tree data structure based on the second satellite visual distribution information;
and sequentially comparing the first satellite visual distribution information with nodes in the multi-dimensional space tree data structure according to a nearest neighbor search algorithm to obtain the matching degree between the first satellite visual distribution information and the second satellite visual distribution information.
5. The method according to any of claims 1-3, wherein said determining a target location of the terminal at the target time based on the grid location of the target grid cell comprises:
and if the target grid unit comprises one grid unit, taking the grid position of the target grid unit as the target position.
6. The method according to any of claims 1-3, wherein said determining a target location of the terminal at the target time based on the grid location of the target grid cell comprises:
if the target grid unit comprises a plurality of grid units, determining the average value of grid positions of the grid units;
and taking the average value as the target position.
7. The method according to any one of claims 1-3, wherein said selecting a target grid cell from a plurality of grid cells of said grid region according to said matching degree comprises:
determining the grid cell with the maximum matching degree in the plurality of grid cells as the target grid cell;
or, determining the grid cell of which the matching degree reaches a preset threshold value in the plurality of grid cells as the target grid cell;
or, the grid cells are sorted according to the sequence of the matching degrees from large to small;
and selecting the grid unit ranked at the top N as the target grid unit, wherein N is an integer greater than or equal to 1.
8. The method of claim 1, further comprising:
displaying an electronic map, wherein the electronic map comprises the three-dimensional model of the object;
after the determining the target position of the terminal at the target time according to the grid position of the target grid unit, the method further includes:
and displaying a positioning mark of the terminal on the electronic map according to the target position.
9. The method according to any one of claims 1-3, further comprising:
acquiring ephemeris data of a satellite;
the determining of the first satellite visualization distribution information of the terminal based on the satellite observation information includes:
determining state information of the satellite according to the ephemeris data;
removing the satellite observation information according to the state information;
and determining first satellite visual distribution information of the terminal based on the satellite observation information subjected to the elimination processing.
10. The positioning device of the terminal is applied to positioning of the terminal in an outdoor street environment, and comprises an acquisition unit, a determination unit and a selection unit:
the acquisition unit is used for acquiring satellite observation information of the terminal at a target moment;
the determining unit is used for determining first satellite visualization distribution information of the terminal based on the satellite observation information, wherein the first satellite visualization distribution information is used for embodying whether each satellite is visible to the terminal;
the determining unit is specifically configured to:
if the satellite observation information represents that the terminal receives satellite signals of a satellite, third identification information is generated, and the third identification information identifies that the satellite is visible for the terminal;
if the satellite observation information shows that the terminal does not receive satellite signals of a satellite, fourth identification information is generated, and the fourth identification information identifies that the satellite is invisible to the terminal;
generating the first satellite visual distribution information according to the third identification information or the fourth identification information corresponding to the satellite;
the obtaining unit is further configured to obtain second satellite visualization distribution information of each grid cell in a grid area, where the grid area is a two-dimensional grid area generated based on the approximate position of the terminal at the target time, and the second satellite visualization distribution information is used to represent whether each satellite is visible for each grid cell in the grid area;
the acquisition unit is used for acquiring ephemeris data of the satellite; determining position information of the satellite according to the ephemeris data; respectively determining second satellite visual distribution information of each grid unit according to the position information of the satellite, the grid position of each grid unit and the model data of the three-dimensional object model;
the determining unit is further configured to determine a matching degree of the first satellite visualization distribution information and the second satellite visualization distribution information;
the selecting unit is used for selecting a target grid unit from a plurality of grid units in the grid area according to the matching degree;
the determining unit is further configured to determine a target position of the terminal at the target time according to the grid position of the target grid unit.
11. A positioning device for a terminal, the device comprising a processor and a memory:
the memory is used for storing program codes and transmitting the program codes to the processor;
the processor is configured to perform the method of any of claims 1-9 according to instructions in the program code.
12. A computer-readable storage medium, characterized in that the computer-readable storage medium is configured to store a program code for performing the method of any of claims 1-9.
CN202110918702.8A 2021-08-11 2021-08-11 Terminal positioning method, device, equipment and storage medium Active CN113376674B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110918702.8A CN113376674B (en) 2021-08-11 2021-08-11 Terminal positioning method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110918702.8A CN113376674B (en) 2021-08-11 2021-08-11 Terminal positioning method, device, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN113376674A CN113376674A (en) 2021-09-10
CN113376674B true CN113376674B (en) 2021-11-26

Family

ID=77576661

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110918702.8A Active CN113376674B (en) 2021-08-11 2021-08-11 Terminal positioning method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN113376674B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113900132B (en) * 2021-09-16 2023-05-05 北京百度网讯科技有限公司 Positioning method, positioning device, vehicle-mounted equipment, terminal equipment and positioning system
CN114624751A (en) * 2022-01-29 2022-06-14 上海移为通信技术股份有限公司 Auxiliary positioning method and device, electronic equipment and storage medium
CN115001559B (en) * 2022-03-17 2023-04-18 中国科学院计算技术研究所 User terminal distribution model construction method suitable for satellite network

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101515031A (en) * 2009-03-20 2009-08-26 北京航空航天大学 Availability predicting method, a server and a method for GPS receiver autonomous integrity monitoring (RAIM)
CN105229490A (en) * 2013-03-14 2016-01-06 微软技术许可有限责任公司 Use the positional accuracy of satellite visibility data for promoting
CN108802768A (en) * 2018-06-04 2018-11-13 中国空间技术研究院 A kind of more rail multifrequency satellite signal efficient matchings receiving handling methods
CN110579780A (en) * 2019-08-28 2019-12-17 桂林电子科技大学 Shadow matching improvement algorithm based on Beidou GEO satellite
CN110673181A (en) * 2019-08-19 2020-01-10 中国电波传播研究所(中国电子科技集团公司第二十二研究所) GNSS interference source positioning method based on grid energy traversal search
KR102082550B1 (en) * 2016-06-01 2020-02-28 현대오토에버 주식회사 Method and road side unit for generating error correction data for v2x based vehicle satellite navigation signal
CN110909093A (en) * 2019-10-11 2020-03-24 中国人民解放军战略支援部队信息工程大学 Method and device for constructing intelligent landmark control network
CN111051924A (en) * 2017-09-28 2020-04-21 苹果公司 Three-dimensional urban model and shadow mapping for improved height localization in urban environments
CN111198389A (en) * 2018-11-19 2020-05-26 华为技术有限公司 Positioning method and electronic equipment
CN111538043A (en) * 2020-05-29 2020-08-14 国网浙江省电力有限公司检修分公司 Method and device for eliminating non-through-view satellite in complex environment and electronic equipment
CN112415557A (en) * 2020-12-14 2021-02-26 中国电子科技集团公司第五十四研究所 Cloud platform-based pseudo-satellite indoor multi-source fusion positioning method
CN112444834A (en) * 2019-08-29 2021-03-05 华为技术有限公司 Positioning method and electronic equipment
CN112566029A (en) * 2020-12-09 2021-03-26 深圳市城市规划设计研究院有限公司 Urban employment center identification method and device based on mobile phone positioning data
CN112612039A (en) * 2020-12-23 2021-04-06 武汉大学 GNSS indirect signal detection and elimination method and system for static survey station

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101515031A (en) * 2009-03-20 2009-08-26 北京航空航天大学 Availability predicting method, a server and a method for GPS receiver autonomous integrity monitoring (RAIM)
CN105229490A (en) * 2013-03-14 2016-01-06 微软技术许可有限责任公司 Use the positional accuracy of satellite visibility data for promoting
KR102082550B1 (en) * 2016-06-01 2020-02-28 현대오토에버 주식회사 Method and road side unit for generating error correction data for v2x based vehicle satellite navigation signal
CN111051924A (en) * 2017-09-28 2020-04-21 苹果公司 Three-dimensional urban model and shadow mapping for improved height localization in urban environments
CN108802768A (en) * 2018-06-04 2018-11-13 中国空间技术研究院 A kind of more rail multifrequency satellite signal efficient matchings receiving handling methods
CN111198389A (en) * 2018-11-19 2020-05-26 华为技术有限公司 Positioning method and electronic equipment
CN110673181A (en) * 2019-08-19 2020-01-10 中国电波传播研究所(中国电子科技集团公司第二十二研究所) GNSS interference source positioning method based on grid energy traversal search
CN110579780A (en) * 2019-08-28 2019-12-17 桂林电子科技大学 Shadow matching improvement algorithm based on Beidou GEO satellite
CN112444834A (en) * 2019-08-29 2021-03-05 华为技术有限公司 Positioning method and electronic equipment
CN110909093A (en) * 2019-10-11 2020-03-24 中国人民解放军战略支援部队信息工程大学 Method and device for constructing intelligent landmark control network
CN111538043A (en) * 2020-05-29 2020-08-14 国网浙江省电力有限公司检修分公司 Method and device for eliminating non-through-view satellite in complex environment and electronic equipment
CN112566029A (en) * 2020-12-09 2021-03-26 深圳市城市规划设计研究院有限公司 Urban employment center identification method and device based on mobile phone positioning data
CN112415557A (en) * 2020-12-14 2021-02-26 中国电子科技集团公司第五十四研究所 Cloud platform-based pseudo-satellite indoor multi-source fusion positioning method
CN112612039A (en) * 2020-12-23 2021-04-06 武汉大学 GNSS indirect signal detection and elimination method and system for static survey station

Also Published As

Publication number Publication date
CN113376674A (en) 2021-09-10

Similar Documents

Publication Publication Date Title
CN113376674B (en) Terminal positioning method, device, equipment and storage medium
US8718922B2 (en) Variable density depthmap
CN111198389B (en) Positioning method and electronic equipment
US11960012B2 (en) Positioning method and electronic device
Wang et al. Urban positioning on a smartphone: Real-time shadow matching using GNSS and 3D city models
EP2975555A1 (en) Method and apparatus for displaying point of interest
US8996551B2 (en) Managing geographic region information
CN106998535B (en) Mobile terminal positioning correction method and system
CN111479321B (en) Grid construction method and device, electronic equipment and storage medium
CN102483451A (en) Gnss receiver and operating method
US11915478B2 (en) Bayesian methodology for geospatial object/characteristic detection
KR20140056828A (en) Apparatus, method and computer readable recording medium for analyzing a floating population using a user terminal
US20220268962A1 (en) A floor determination method for terminal devices
CN115629410A (en) Method, system and product for positioning along street in urban complex environment
CN114155391A (en) Trajectory processing method and device and computer equipment
CN114463499A (en) Building three-dimensional modeling method and device
CN113970761A (en) Non-line-of-sight signal identification method, system, computer equipment and storage medium
CN106028445A (en) Method and apparatus for determining positioning accuracy
CN112381078A (en) Elevated-based road identification method, elevated-based road identification device, computer equipment and storage medium
CN111757284A (en) Indoor entrance positioning method and electronic equipment
CN112149640B (en) Method, device, computer equipment and medium for determining position of target object
CN115687805B (en) Meteorological data query method and system based on position
US11961183B2 (en) Terrain search
CN113865598A (en) Positioning map generation method, positioning method and positioning device
CN116263334A (en) Positioning method, positioning device, computer apparatus, storage medium, and program product

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40051382

Country of ref document: HK