The present disclose belongs to a field of navigation, and more particularly, to a distributed cooperative localization system based on joint processing of space-time domains and a same method.
Real-time and high-precision location information is useful for many wireless networks. There are a lot of methods to obtain the location information.
The present disclosure provides a computer-implemented method for obtaining location information. The method includes:
obtaining, by a processor, available measurement of a target node and multi-hop nodes in multiple consecutive time slices up to a current time slice, the measurement comprising measured location information of the target node and the multi-hop nodes and measured relative distance between the target node and the multi-hop nodes;
predicting, by the processor, unavailable measurement in the considered multiple time slices caused by multi-hop transmission delay to obtain prediction information of the location information and the relative distance information;
obtaining location information of the target node and multi-hop nodes in the multiple consecutive time slices based on state variables of the target node and the multi-hop nodes in the current time slice to obtain trajectory information, in which the state variables at least include the location, velocity and acceleration;
initially estimating state information of the target node and multi-hop nodes in the current time slice based on available measurement to obtain initial state estimation in the current time slice; and
obtaining state estimation of the target node and multi-hop nodes in the current time slice by jointly processing the available measurement and the prediction information of the location information and the relative distance information, based on the trajectory constraints and the initial state estimation, the state estimation including the location estimation of the target node in the current time slice.
The present disclosure further provides an electronic device for obtaining location information. The electronic device includes a processor and a memory. When instructions stored in the memory are executed by the processor, the processor is caused to perform the method for obtaining location information as described above.
The present disclosure further provides a non-transitory computer readable storage medium having instructions stored thereon. When the instructions are executed by a processor, the method for obtaining location information as described above is performed.
It should be understood, the above general description and the following detailed description are only exemplary and explanatory, and do not limit the disclosure.
Exemplary embodiments will be described in detail herein, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, the same or similar elements may be denoted by the same numerals in different accompanying drawings, unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present disclosure. Instead, they are merely examples of apparatuses and methods consistent with aspects of the present disclosure as detailed in the appended claims.
Terms used herein in the description of the present disclosure are merely for the purpose of describing specific embodiments, but should not be construed to limit the present disclosure. As used in the description of the disclosure and the appended claims, terms “a,” “an,” and “the” in singular forms intend to include plural forms, unless clearly indicated in the context otherwise. It should also be understood that, as used herein, term “and/or” represents and contains any one and all possible combinations of one or more listed items.
It should be understood that, although terms such as “first”, “second” and “third” may be used herein to describe various objects, these objects should not be limited by these terms. These terms are only used for distinguishing one object from another object. For example, a first object may also be called as a second object, and similarly, the second object may also be called as the first object, without departing from the scope of the present disclosure. Depending on the context, the term “if” may be understood to mean “when” or “upon” or “in response to the determination of”.
Real-time and high-precision location information is useful for many wireless networks. Under normal circumstances, an existing localization system, such as global locating satellite system (GNSS), can offer these wireless networks with such location information.
However, equipping a GNSS receiver for each node of the wireless network may cause high cost and power consumption. In addition, under harsh environmental conditions (such as urban canyons and forests), signals of the GNSS are susceptible to interference of noises. In this case, the precision of the location information provided by the GNSS receiver may be reduced. A cooperative localization system can improve the location precision through effective cooperation among nodes of the network. In the cooperative localization system, all nodes can generally be divided into reference nodes and user nodes. The location information of the reference nodes can be obtained by themselves through existing localization methods. The location information of the user nodes cannot be obtained by themselves, but can be obtained through cooperation with other nodes. The performance of the cooperative localization system is closely related with the data fusion algorithm. The extended Kalman filter algorithm and the belief propagation algorithm are commonly used cooperative localization methods. Other cooperative localization methods can include the unscented Kalman filter algorithm, the least square method and the maximum likelihood estimation. The extended Kalman filter algorithm has low complexity, which approximates a nonlinear cooperative localization system by a linear system. This approximation greatly degrades localization performance of this cooperative localization system. The unscented Kalman filter algorithm is to approximate a nonlinear cooperative localization system using a nonlinear transformation, such that this cooperative localization algorithm has better performance than the extended Kalman filter algorithm. The belief propagation algorithm based on a factor graph, such as a sum-produce algorithm over a wireless network (SPAWN) algorithm, is also widely used. This algorithm is sensitive to the initial location precision, such that this algorithm can provide high localization precision in a static or quasi-static network environment. However, when used in a high-speed environment, the error of the initial estimated location is relatively large, such that the localization precision of this algorithm is low. Performances of the least square method and the maximum likelihood estimation are asymptotically optimal under a condition of Gaussian white noise. However, since a target problem is non-convex, solving such the target problem is relatively difficult.
The aforementioned cooperative localization systems can be divided into centralized systems and distributed systems. In the centralized cooperative localization system, all computations are executed in a central processing node. Before the computations, the central processing node needs to collect the measurement of all nodes in the network. These centralized systems have high localization precision. However, when applied to a large-scale network, these centralized systems may lead to excessive communication burden and high computational complexity. The distributed systems can effectively reduce communication burden and computational complexity at the expense of certain localization precision degradation. For example, in the distributed cooperative localization system, the computation of the location of each node is done by itself based on the local measurement with its neighboring nodes.
However, all the aforementioned cooperative localization algorithms only consider the measurements in a current time slice. When the movement speed of nodes is relatively high or the number of connections is insufficient, the localization precision of these algorithms is relatively poor or even divergence.
In view of the localization problem of nodes in a large-scale network, the present disclosure provides a distributed cooperative localization system based on joint processing of space-time domains and a same method.
To solve a problem that some nodes in the large-scale mobile network cannot be self-located and a problem of insufficient number of connections, the present disclosure fuses relative distance information and location information of a target node and multi-hop nodes in multiple consecutive time slices up to the current time slice, based on trajectory constraints of nodes, to locate the target node.
With the distributed cooperative localization method, in each time slice, the target node collects available location information and available relative distance information of the target node and multi-hop nodes in multiple consecutive time slices up to the current time slice. Based on the available measurement of the target node and the multi-hop nodes, unavailable measurement of these nodes in the considered multiple time slices caused by the transmission delay is predicted. Based on state variables of the target node and multi-hop nodes in the current time slice, the trajectory information of these nodes in the multiple consecutive time slices is obtained. Based on the available measurement, an existing cooperative localization method is used to compute initial state estimation of the target node and the multi-hop nodes in the current time slice, as initial values for the jointly processing of the measurements in multiple time slices in space-time domains. Based on the trajectory constraints and initial state estimation of nodes, the available measurement and the prediction information in multiple time slices are fused to obtain a high-precision state estimation of the target node in the current time slice.
That is, location information and relative distance information of the target node and multi-hop nodes in the multiple time slices are used to locate the target node. The trajectory information of the target node and the multi-hop nodes in the multiple time slices is obtained based on state information and mobility constraints of the target node and multi-hop nodes in the current time slice. Based on trajectory constraints of nodes, all measurement (includes the available measurement information and the prediction information) of the target node and multi-hop nodes in the multiple time slices is processed in the space-time domains to obtain the location estimation of the target node in the current time slice. The method and system can effectively improve the localization precision of nodes and the reliability of localization results. In some embodiments, whether the measurement is available or unavailable depending on the number of hops with the target node. In the distributed network, the obtaining of the measurement by the target node needs performing multi-hop communication by intermediate nodes. A delay may occur in the multi-hop communication. The measurement includes location information of the target node and the multi-hop nodes and relative distance information between the target node and the multi-hop nodes. For example, in a case of 1 hop, the location measurement of the current and previous time slices is available to the target node; the relative distance measurement of a current time slice is unavailable to the target node, while the relative distance measurement of previous time slices is available to the target node. In a case of 2 hops, the location measurement of a current time slice is unavailable to the target node, while the location measurement of previous time slices is available to the target node; the relative distance measurement of a current time slice and a previous time slice adjacent to the current time slice is unavailable, while the relative distance measurement of other time slices is available.
In detail, the method may include the following.
(1) In each time slice, the caching module caches the available measurement of the target node and multi-hop nodes in multiple consecutive time slices up to the current time slice and sends the available measurement to the predicting module.
(2) In a distributed network, obtaining the measurement of the multi-hop nodes needs performing multi-hop communication by intermediate nodes. That is, the target node cannot obtain a subset of the measurement of the multi-hop nodes due to multi-hop transmission delay. The predicting module predicts unavailable measurement caused by multi-hop transmission delay of the target node and the multi-hop nodes in multiple time slices up to the current time slice, to obtain prediction information of the target node and multi-hop nodes in the multiple time slices, and sends the available measurement and the prediction information to the jointly processing module.
(3) The obtaining module obtains the location information of the target node and multi-hop nodes in multiple consecutive time slices up to the current time slice based on mobility constraints and state variables of the target node and multi-hop nodes in the current time slice, to obtain the trajectory information of the target node and multi-hop nodes in the multiple time slices, and sends the trajectory information to the jointly processing module.
(4) The initially estimating module initially estimates the state information of the target node and multi-hop nodes in the current time slice through a traditional cooperative localization method based on the available measurement, and sends the initial state estimation to the jointly processing module.
(5) The jointly processing module uses the initial state estimation of the target node and multi-hop nodes provided by the initially estimating module as initial values for solving state estimation of the target node and multi-hop nodes, and uses trajectory constraints to jointly process the available measurement and the prediction information of the target node and multi-hop nodes in the multiple time slices to obtain the state estimation of the target node and multi-hop nodes in the current time slice. The state estimation includes the location estimation of the target node in the current time slice.
Based on the trajectory constraint of each node in the system, the present disclosure jointly processes the available measurement and the prediction information of the target node and multi-hop nodes in the multiple consecutive time slices in space-time domains. With the cooperation in the time domain, the localization precision of nodes and the stability of localization result can be effectively increased. In addition, the computations are distributed to each node in the system, which can effectively reduce the communication burden of the system and the computational complexity of the network.
At block 101, available measurement of the target node and multi-hop nodes in multiple consecutive time slices up to a current time slice is obtained. The measurement includes measured location information of the target node and multi-hop nodes, and measured relative distance between the target node and the multi-hop nodes.
At block 102, unavailable measurement caused by multi-hop transmission delay is predicted based on the available measurement to obtain prediction information of location information and the relative distance information.
At block 103, location information of the target node and multi-hop nodes in the multiple time slices is obtained based on state variables of these nodes in the current time slice and the mobility constraints to obtain trajectory information.
At block 104, state information of the target node and multi-hop nodes in the current time slice is initially estimated based on the available measurement to obtain initial state estimation in the current time slice.
At block 105, state estimation of the target node and multi-hop nodes in the current time slice is obtained by jointly processing the available measurement and the prediction information of the location information and the relative distance information, based on the trajectory constraints and the initial state estimation in the current time slice. The state estimation includes the location estimation of the target node.
Each node in the distributed cooperative localization system based on the joint processing in space-time domains includes: a caching module of available measurement of multiple time slices, a predicting module of unavailable measurement, an obtaining module of trajectory information of nodes, an initially estimating module of state information of nodes, and a jointly processing module of space-time domains. The distributed cooperative localization method may include the following.
(1) With the distributed cooperative localization system, each node in the network is self-located by the node via cooperation with the neighboring nodes. The node to be located may be represented by m, which is also referred to as the target node. All nodes in multi-hop range of the target node m may be represented by ξm, which includes the target node m and the multi-hop nodes. A node in ξm may be represented by n or j, which may be the target node m or a multi-hop node. A location measurement model of the reference nodes in and a relative distance measurement model between all nodes of the distributed cooperative localization system may be determined as follows:
{tilde over (x)}
n
t
=x
n
t
+b
n
t;
r
nj
t
=∥x
n
t
−x
j
t∥+μnjt;
where, xnt represents the real location of node n in a time slice of t, {tilde over (x)}nt represents the location measurement of a reference node n, bnt represents a measurement noise of the location measurement, rnjt represents a measurement value of relative distance between the node n and the node j, ∥xnt−xjt∥ represents a real distance, and μnjt represents a measurement noise of the relative distance.
(2) In a current time slice of k, the target node m collects the available information in K consecutive time slices up to a current time slot. When K is large, the information long time ago will be used to localize the target node, which has little contribution to the localization of the target node and meanwhile the computational complexity will significantly increase. Therefore, the value of K should be properly chosen according to required location estimation accuracy and computational resources of the system. Let τ=k−K+1 and ={τ, τ+1, . . . , k}. Available location measurement of the target node m and the multi-hop nodes in K consecutive time slices from a time slice of τ to the current time slice of k and available relative distance measurement between the target node and multi-hop nodes are represented by:
where, gm,l represents a set of l-hop nodes of the target node m, {circumflex over (x)}nt represents the location estimation of node n in the time slice of t∈. In a case that node n is a user node, {tilde over (x)}nt is empty. The available measurement is sent to the predicting module of unavailable measurement.
(3) The predicting module predicts unavailable measurement caused by multi-hop transmission delay of the target node and multi-hop nodes in multiple time slices up to the current time slice based on available measurement of the nodes in ξm. The available measurement and prediction information of the location information of the nodes in ξm are represented by
(4) Based on variables xnk related to the location information of the node n∈ξm in the current time slice, together with variables related to mobility state of the node n∈ξm such as speed vnk and acceleration ank, the location information of node n∈ξm in (K−1) previous time slices of the current time slice is derived. For example, each node moves along a straight line with a constant acceleration in K consecutive time slices including the current time slice, based on the mobility state of each node in the current time slice k, the location information of the node n in the time slice t∈ is represented as:
x
n
t
=x
n
k
+v
n
k
ΔT
t+½ank(ΔTt)2, n∈ξm, t∈,
where, ΔTt=(t−k)ΔT, ΔT represents the length of each time slice. The above formula shows the trajectory information of node n in K time slices from the time slice of τ to the time slice of k. The state variable of node n in the current time slice k is represented by:
z
n
k=[(xnk)T, (vnk)T, (ank)T]T.
The trajectory information of node n may be represented by:
x
n
t
=F
t
z
n
k
, n∈ξ
m
, t∈
,
where,
F
t=[I2,ΔTtI2,½(ΔTt)2I2],
the trajectory information of the nodes is sent to the jointly processing module of space-time domains.
(5) The initially estimating module of state information of nodes in ξm uses an existing cooperative localization method based on the available measurement, such as extended Kalman filter algorithm and unscented Kalman filter algorithm, to calculate initial state estimation of the nodes in ξm in the current time slice k, as initial values for jointly processing of all measurement in the multiple time slices. The initial state estimation of the nodes in ξm is sent to the jointly processing module of space-time domains.
(6) The joint processing module of space-time domains fuses the available measurement and the prediction information of all nodes included in ξm in the multiple time slices based on trajectory constraints of these nodes and the initial state estimation provided by the initially estimating module, to obtain state estimation of the nodes in ξm in the current time slice. The state estimation includes the location estimation of the target node in the current time slice. For example, αk=vec{znk}n∈ξ
(7) Results of the jointly processing module of space-time domains are outputted as the state estimation of the target node in the current time slice. The state estimation includes the location estimation of the target node in the current time slice.
For example, the algorithm of obtaining the initial state estimation of the target node and multi-hop nodes is the extended Kalman filter algorithm, measurement information of the nodes within two-hop range of the target node (including the target node) in 3 (where K=3) time slices are fused based on the maximum likelihood estimation criterion, and the resulting problem is solved by a sequence quadratic program (SQP) algorithm. For example, a dynamic network has 113 nodes. 13 of the 113 nodes are reference nodes, which can obtain their own location through the GNSS receiver (a certain error may occur in the measurement of the GNSS receiver), and the other nodes are user nodes, which can only obtain their location via cooperative localization. All nodes are randomly distributed within an area of 1000 m×1000 m. Due to limitations of distance and power consumption and occlusion of obstacles, each node can communicate with some nodes but not all nodes in the network. Here, a communication radius of each node is set to be 200 m. Through communication links, the relative distance with neighboring nodes and the location information of neighboring nodes can be obtained. In addition, the initial velocities of all nodes are set to 40 m/s, accelerations all meet a Gaussian distribution with a mean value of 0 m/s2 and a standard deviation of 0.2 m/s2. For the reference nodes, a standard deviation of noises of the location information obtained through the GNSS receiver is set to 4 m, and the standard deviation of noises of the relative distance measurement between nodes is set to 0.4 m.
Each node in the distributed cooperative localization system based on the joint processing in space-time domains includes: a caching module of available measurement of multiple time slices, a predicting module of unavailable measurement, an obtaining module of trajectory information of nodes, an initially estimating module of state information of nodes, and a jointly processing module of space-time domains. The distributed cooperative localization method may include the following.
(1) To locate the target node m, a location measurement model of reference nodes and a relative distance measurement model between all nodes of the distributed cooperative localization system may be determined as follows:
{tilde over (x)}
n
t
=x
n
t
+b
n
t;
r
nj
t
=h(xnt,xjt)+μnjt=∥xnt−xjt∥+μnjt;
where, n and j represents nodes in ξm including the target node and the multi-hop nodes, xnt represents the real location of a node n∈ξm in a time slice of t, {tilde over (x)}nt represents location measurement of a reference node n obtained by the GNSS receiver, bnt represents a measurement noise of the location information meeting a Gaussian distribution with mean value of 0 and a covariance matrix of Unt, rnjt represents a measurement value of relative distance between the node n and the node j, h(xnt,xjt)=∥xnt−xjt∥ represents a real distance, and μnjt represents a measurement noise of the relative distance meeting a Gaussian distribution with mean value of 0 and a variance of (σnjt)2.
(2) In the distributed network, the obtaining of the available measurement by the nodes needs performing multi-hop communication by intermediate nodes. A delay may occur in the multi-hop communication. That is, in the current time slice of k, the target node m can obtain the location information of multi-hop nodes in gm,1 in multiple time slices up to the current time slice of k and the relative distance among the multi-hop nodes in gm,1 in multiple time slices up to a first previous time slice of (k−1) adjacent to the current time slice, and obtain the location information of multi-hop nodes in gm,2 in multiple time slices up to the first previous time slice of (k−1) adjacent to the current time slice and the relative distance among the multi-hop nodes in gm,2 in multiple time slices up to a second previous time slice of (k−2) adjacent to the first previous time slice of (k−1), and so on. With the increase of the number (E) of hops, the delay occurred in the communication between the multi-hop nodes in gm,l with the target node increases accordingly, which reduces the contribution of these distant nodes to the localization performance of the target node and increase the computational complexity. For example, when the nodes within two-hop range of the target node (including the target node) are considered, the nodes may be represented by ξm={m}∪gm,1∪gm,2. In the current time slice of k, the caching module of the target node m caches the available location measurement of the nodes in and the available relative distance measurement among the nodes in ξm in recent K consecutive time slices from the time slice of τ to the time slice of k:
where, {circumflex over (x)}nt represents estimated location of the node n in the time slice of t. In a case that the node n is a user node, {tilde over (x)}nt is empty. The available measurement is sent to the predicting module of unavailable measurement.
(3) Not all measurement of all nodes in ξm in multiple time slices up to the current time slice of k can be obtained by the caching module of the target node m. The predicting of unavailable measurement module predicts the unavailable measurement of all multi-hop nodes in multiple time slices up to the current time slice based on available measurement of all nodes in ξm:
where, fm, and fl represent prediction functions of the location information of nodes, and hl represents a prediction function of the relative distance information. The location information of nodes and the relative distance information are predicted through the extended Kalman filter algorithm. Further, there is a following formula:
let
(4) The measurement in K time slices from the time slice of τ to the time slice of k is related to not only the location of the nodes in ξm in the current time slice of k, but also the location of nodes in (K−1) time slices before the current time slice. Therefore, based on the variables related to the location of the nodes in ξm in the current time slice, together with variables related to mobility state of these nodes, such as speed and acceleration, the location information of these nodes in the (K−1) time slices before the current time slice can be obtained. For example, in the time slice of k, for the node n∈ξm, the speed is represented by vnf, and the acceleration is represented by ank. Considering a fact that measurement before a large number of time slices from the current time slice has little contribution to the localization performance in the current time slice, K is set to a small value, for example, K=3. In this case, if each node moves along a straight line with a constant acceleration in the K time slices, based on the mobility state of each node in the time slice of k, the location information of the node n in the time slice t∈ may be represented as:
x
n
t
=x
n
k
+v
n
k
ΔT
t+½ank(ΔTt)2, n∈ξm, t∈,
where, ΔTt=(t−k)ΔT, ΔT represents the length of each time slice. All location information of the node n in K time slices from the time slice of τ to the time slice of k shows the trajectory of node n in the K time slices.
The state variable of node n in the time slice of k is represented by:
z
n
k=[(xnk)T,(vnk)T,(ank)T]T;
the trajectory information of node n may be represented by:
x
n
t
=F
t
z
n
k
, n∈ξ
m
, t∈
;
where, the matrix Ft may be represented by:
F
t=[I2,ΔTtI2,½(ΔTt)2I2];
where, I2 represents an identity matrix of 2×2. The trajectory information of the nodes is sent to the jointly processing module of space-time domains.
(5) In order to improve the effectivity of fusing the available measurement and the prediction information in multiple time slices, the initially estimating module uses the extended Kalman filter algorithm based on available measurement to calculate initial state estimation of the nodes in in current time slice of k, as initial values for the jointly processing of the available measurement and prediction information in multiple time slices. The state information to be estimated of node n in the time slice t is represented by Xnt=[(xnt)T, (vnt)T]T, where, xnt=[xnt, ynt]T and vnt=[{dot over (x)}nt, {dot over (y)}nt]T. Based on the posterior estimation {circumflex over (X)}nt−1 in the time slice of (t−1), the estimation information of the state information in the current time slice is represented as:
{circumflex over (X)}
n
t|t−1
=F{circumflex over (X)}
n
t−1;
{circumflex over (P)}
n
t|t−1
=F{circumflex over (P)}
n
t−1
F
T
+Q
n
t;
where, the matrix F is represented by:
where, O2 represents an all-zero matrix of 2×2. {circumflex over (P)}nt−1 represents a covariance matrix of the estimation {circumflex over (X)}nt−1, and Qnt represents a covariance matrix of system modeling noises.
The Jacobian matrix of the measurement data rnt regarding to Xnt is calculated as:
the measurement residual and its covariance matrix are represented by:
where, j1, j2, . . . , jN
The Kalman gain is calculated as:
K
n
t
={circumflex over (P)}
n
t|t−1(Hnt)T(Snt)−1;
and the posterior estimation of Xnt and the covariance matrix are represented by:
{circumflex over (X)}
n
t
={circumflex over (X)}
n
t|t−1
+K
n
t
Δr
n
t;
{circumflex over (P)}
n
t
={circumflex over (P)}
n
t|t−1
−K
n
t
S
n
t(Knt)T.
In the time slice of k, the target node m can obtain the available measurement of the nodes in gm,1 in multiple time slices up to the time slice of (k−1). Thus, with the method, the posterior state estimation of the nodes in gm,1 in multiple time slices up to the time slice of (k−1) can be obtained. To obtain the state information in the time slice of k, one-step prediction is made based on the posterior state estimation in the time slice of (k−1):
{circumflex over (X)}
n
k|k−1
=F{circumflex over (X)}
n
k−1;
the predicted value {circumflex over (X)}nk|k−1 is used as the initial state estimation in the time slice of k. Base on the above, two-step prediction are required for the nodes in gm,2 to obtain the initial state estimation in the current time slice of k. The estimation values are input to the jointly processing module of space-time domains as the initial state estimation of the nodes.
(6) The joint processing module of space-time domains fuses the available measurement and the prediction information of all nodes included in ξm in multiple time slices based on trajectory constraints and initial state estimation of the nodes in ξm provided by the initially estimating module, to obtain the state estimation of the nodes in ξm in the current time slice. For example, αk=vec{znk}n∈ξ
Under the assumption of white Gaussian noise, the above equation is equivalent to a nonlinear least square problem:
where, Nm represent the number of nodes in ξm, cnjt=1 denotes that the node n and the node j are connected, and cnjti=0 denotes that the node n and the node j are not connected.
(7) The above nonlinear least square problem is solved by the SQP algorithm by means of MATLAB, to obtain the final state estimation of the nodes in ξm in the current time slice, which includes location estimation of the target node in the current time slice.
For example, the localization error of node m in time slice of k is denoted by e(xmk)=∥{circumflex over (x)}mk−xmk∥, where {circumflex over (x)}mk is the estimated location and xmk is the real location.
The distributed cooperative localization method based on joint processing of space-time domains (also referred to as JSTP-DMLE) is proposed in the present disclosure, compared with the EKF (extended Kalman filter algorithm), the UKF (unscented Kalman filter algorithm) and the SPAWN which is a cooperative localization algorithm based on the factor graph. In
From
The processor 31 is configured to execute the computer programs 33 included in the memory 32. The processor 31 may be a central processing unit (CPU) or another a general-purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA), another programmable logic device, a discrete gate, a transistor logic device, a discrete hardware component, and the like. The general-purpose processor may be a microprocessor or any conventional processor.
The memory 32 is configured to store computer programs related to the method. The memory 32 may include at least one type of storage medium. The storage medium includes a flash memory, a hard disk, a multimedia card, a card-type memory (such as, a SD (secure digital) or a DX memory), a random access memory (RAM), a static random access memory (SRAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a programmable read-only memory (PROM), a magnetic memory, a magnetic disk, an optical disk, etc. The device may cooperate with a network storage device that performs a storage function of the memory by a network connection. The memory 32 may be an internal storage unit of the device 30, such as a hard disk or a memory of the device 30. The memory 32 may also be an external storage device of the device 30, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, disposed on the device 30. Further, the memory 32 may also include both the internal storage unit of the device 30 and the external storage device. The memory 32 is configured to store the computer program 33 and other programs and data required by the device. The memory 32 may also be configured to temporarily store data that has been output or will be output.
The various embodiments described herein may be implemented by using the computer readable medium such as computer software, hardware, or any combination thereof. For a hardware implementation, embodiments described herein may be implemented by using at least one of: an application specific integrated circuit (ASIC), a digital signal processor (DSP), a digital signal processing device (DSPD), a programmable logic device (PLD), a field programmable gate array (FPGA), a processor, a controller, a microcontroller, a microprocessor, and an electronic unit designed to perform the functions described herein. For a software implementation, an implementation such as a procedure or a function may be implemented with a separate software module that allows at least one function or operation to be performed. Software codes may be implemented by a software application (or program) written in any suitable programming language, and the software codes may be stored in the memory and executed by the controller.
The electronic device 30 includes, but is not limited to, a mobile terminal, an ultra-mobile personal computer device, a server, and other electronic device with a computing function. (1) The mobile terminal is characterized by having a function of mobile communication and aiming at providing a voice and data communication. Such mobile terminal includes a smart phone (such as iPhone), a multimedia phone, a functional phone, and a low-end phone. (2) The ultra-mobile personal computer device belongs to a category of personal computer, which has a computing and processing function, and generally has a feature of mobile Internet access. Such terminal includes a PDA (personal digital assistant), a MID (mobile Internet device) and a UMPC (ultra mobile personal computer) devices, such as an iPad. (3) The server provides a computing service. A composition of the server includes a processor, a hard disk, a memory, a system bus, etc. The server is similar to the general computer architecture, but because the server only provides a highly reliable service, it requires a higher processing capacity, stability, reliability, security, scalability and manageability. (4) Other electronic device with the computing function may include, but be not limited to, the processor 31 and the memory 32. It may be understood by the skilled in the art that,
The implementation procedure of the functions of each unit in the above device may refer to the implementation procedure of the corresponding actions in the above method, which is not elaborated here.
In some embodiment, there is also provided a storage medium including instructions, such as the memory 32 including instructions. The above instructions may be executed by the processor 31 of the electronic device 30 to perform the above method. In some embodiments, the storage medium may be a non-transitory computer readable storage medium. For example, the non-transitory computer readable storage medium may include the ROM, the random-access memory (RAM), the CD-ROM (compact disc read-only memory), a magnetic tape, a floppy disk, optical data storage device, etc.
A non-transitory computer readable storage medium is provided. When instructions stored in the storage medium are executed by a processor of a terminal, the terminal is enabled to execute the above method for obtaining location information.
In some embodiments, there is also provided a computer program product including executable program codes. The program codes are configured to execute any of the above embodiments of the method when executed by the above device.
Other embodiments of the disclosure may readily be apparent to the skilled in the art after consideration of the specification and practice of the disclosure disclosed herein. This disclosure is intended to cover any modification, use or adaptation of the disclosure, which follows the general principles of the disclosure and includes common knowledge or conventional technical means in the skilled in the art not disclosed in the disclosure. The specification and examples are merely exemplary, with the true scope and the spirit of the disclosure being indicated by the following claims.
It should be understood, the present disclosure is not limited to a precise structure described above and illustrated in the accompanying drawings, and various modifications and changes may be made without departing from the scope of the disclosure. The scope of the disclosure is limited merely by the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
201910349661.8 | Apr 2019 | CN | national |
This application is a continuation application of an International Patent Application No. PCT/CN2020/085728, filed on Apr. 20, 2020, which is based on and claims priority to Chinese Patent Application No. 201910349661.8, filed on Apr. 28, 2019, the entire disclosures of which are incorporated by reference herein.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2020/085728 | Apr 2020 | US |
Child | 17157336 | US |