WO2022237989A1 - Gnss nlos/los/multipath classification using convolutional neural networks - Google Patents
Gnss nlos/los/multipath classification using convolutional neural networks Download PDFInfo
- Publication number
- WO2022237989A1 WO2022237989A1 PCT/EP2021/062850 EP2021062850W WO2022237989A1 WO 2022237989 A1 WO2022237989 A1 WO 2022237989A1 EP 2021062850 W EP2021062850 W EP 2021062850W WO 2022237989 A1 WO2022237989 A1 WO 2022237989A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- signal
- errors
- signals
- cnn
- los
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/22—Multipath-related issues
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
Definitions
- the present disclosure relates generally to the field of global navigation satellite system (GNSS) and more specifically, to a method of generating navigational data and a navigation system.
- GNSS global navigation satellite system
- GNSS global navigation satellite system
- GPS global positioning system
- NLOS non-light-of-sight
- MP multipath
- the MP signals represent the signals including the direct signals and reflected signals received by the conventional GNSS receiver antenna.
- the direct signals and reflected signals have different time delays and get mixed into each other at the conventional GNSS receiver antenna. Therefore, the NLOS and MP signals may induce additional errors to the position results provided by the conventional GNSS. More specifically, the NLOS signals may induce tens of meters position errors. For applications of the conventional GNSS in urban areas, the tall buildings or other objects may reflect the GNSS signals and induce larger positioning errors. Therefore, the detection and mitigation of the NLOS signals seems vital for securing the position accuracy of the conventional GNSS.
- the present disclosure provides a method of generating navigational data and a navigation system.
- the navigational data may be or comprise positional data, velocity data, route data, or any other data suitable for describing the position or movement of a GNSS receiver.
- the GNSS receiver may be integrated in a mobile device, e.g. in a vehicle or in a handheld device such as a stand-alone handheld navigation device, a smartphone, or a tablet computer.
- the present disclosure provides a solution to the existing problem of a conventional GNSS receiver that has an inadequate detection and classification accuracy of different signal reception types and consequently, lacks in position accuracy.
- An objective of the present disclosure is to provide a solution that overcomes at least partially the problems encountered in the prior art and provides an improved method of generating navigational data and a navigation system that manifests an improved classification accuracy of different signal reception types and consequently, an improved position accuracy.
- the present disclosure provides a method of generating navigational data.
- the method comprises receiving an incoming Global Navigation Satellite System (GNSS) signal and generating one or more correlation signals by correlating the incoming signal with a local signal replica.
- the method further comprises generating a signal path classification by processing the one or more correlation signals using a convolutional neural network (CNN) and generating navigational data for the incoming signal based on the signal path classification and the one or more correlation signals.
- GNSS Global Navigation Satellite System
- CNN convolutional neural network
- the disclosed method provides an improved classification accuracy of GNSS signals and consequently, position accuracy in dense urban areas in comparison to a conventional GNSS classification method in which the GNSS signals classification is carried out using manually selected features from signal strength, pseudo range delta values etc.
- the disclosed method is based on automatically extracting the features from baseband signal processing results using the CNN which may further improve the GNSS signal classification accuracy and position accuracy as well.
- the incoming GNSS signal is down-mixed to an intermediate frequency, IF, using an IF signal receiver.
- the IF signal receiver enables simple and robust reception of the incoming signal even when the signal-to-noise ratio SNR is low.
- the IF signal receiver may comprise a mixer for multiplying the received GNSS signal (delivered by an antenna) with a local oscillator signal to convert the received GNSS signal into a GNSS signal at the intermediate frequency.
- the method further comprises N correlators for each channel with a space of 1/N chip and, among them, late, prompt and early correlators with space of 0.5 chip.
- the outputs and their characteristics from the N correlators act as a basis of classification of GNSS signals.
- the CNN comprises two or more convolutional layers, a first convolutional layer comprising x filters with a kernel size value y, a second convolutional layer comprising y filters with a kernel size value x.
- the CNN comprises a maxpooling layer having n variables with a pooling size value n.
- the use of the maxpooling layer in the CNN causes the method to provide a more precise GNSS signals classification accuracy and position accuracy in dense urban areas.
- an activation function of the CNN is Rectified Linear Unit (ReLU).
- the CNN comprises a fully-connected layer employed to generate and select a probability of a class using a SoftMax function, wherein there are three class labels: Line-of-Sight (LOS), and None-Line-of-Sight (NLOS) and Multi-Path (MP).
- LOS Line-of-Sight
- NLOS None-Line-of-Sight
- MP Multi-Path
- the use of the CNN with the fully-connected layer enables a more precise classification of GNSS signals into LOS, NLOS and MP signals.
- generating of navigational data is based on the navigation filter which is a Kalman Filter, wherein state variables of the Kalman Filter comprise position errors, velocity errors, clock bias errors and clock drift errors.
- the Kalman filter manifests simplicity and a small computational power and hence, generates navigational data efficiently.
- the method further comprises calculating one or more signal parameters for a new local signal replica, based on navigational data and a line-of-sight (LOS) projection and generating the new local signal replica using the calculated signal parameters.
- LOS line-of-sight
- the method includes an iterative generation of the new local signal replica based on the estimated navigation solution, correlating it with the incoming GNSS signal (e.g., a next or a future incoming signal) and classifying the incoming GNSS signal into LOS, NLOS or MP signals with an enhanced classification accuracy.
- the incoming GNSS signal e.g., a next or a future incoming signal
- the signal parameters for the new local signal replica include one or more code phase errors and carrier frequency errors.
- the generated one or more code phase errors and carrier frequency errors results into generation of the new local signal replica depending on an application scenario with more accuracy.
- the LOS projection projects position and velocity errors and clock bias and clock drift from the navigation filter to the LOS vector to calculate the code phase errors and carrier frequency errors.
- the position and velocity errors and clock bias and clock drift errors are used as a feedback from the navigation filter to the LOS vector which is further used to calculate the code phase errors and carrier frequency errors with an enhanced accuracy.
- the present disclosure provides a computer program comprising in-structions which, when executed by a processor, cause the processor to execute the method of any preceding claim.
- the processor achieves all the advantages and effects of the disclosed method after executing the method.
- the present disclosure provides a non-transitory computer readable medium storing instructions which, when executed by a processor, cause the processor to execute the method of any preceding claim.
- the processor achieves all the advantages and effects of the disclosed method after executing the method.
- the present disclosure provides a navigation system, comprising a receiver configured to receive an incoming Global Navigation Satellite System (GNSS) signal.
- the navigation system further comprises one or more correlator units configured to generate one or more correlation signals by correlating the incoming signal with a local signal replica.
- the navigation system further comprises a convolutional neural network (CNN) configured to generate a signal path classification by processing the one or more correlation signals and a navigation filter configured to generate navigational data for the incoming signal based on the signal path classification and the one or more correlation signals.
- CNN convolutional neural network
- the disclosed navigation system provides a classification of one or more received GNSS signals into three classes, such as LOS, NLOS and MP signals with an improved classification accuracy and consequently, an improved position accuracy in dense urban areas. Moreover, the disclosed navigation system manifests robustness in signal challenging environments. The disclosed navigation system achieves all the advantages and effects of the disclosed method of the present disclosure.
- FIG. 1 is a flowchart of a method of generating navigational data, in accordance with an embodiment of the present disclosure
- FIG. 2 is a block diagram that illustrates various exemplary components of a navigation system, in accordance with an embodiment of the present disclosure
- FIG. 3 illustrates various functional elements of a vector tracking loop (VTL), in accordance with an embodiment of the present disclosure
- FIG. 4 is an illustration of a convolutional neural network (CNN) for use in a VTL, in accordance with an embodiment of the present disclosure
- FIG. 5 is a graphical representation that depicts one or more correlators’ outputs of line- of-sight (LOS) signals, in accordance with an embodiment of the present disclosure
- FIG. 6 is a graphical representation that depicts one or more correlators’ outputs of non- line-of-sight (NLOS) signals, in accordance with an embodiment of the present disclosure
- FIG. 7 is a graphical representation that depicts one or more correlators’ outputs of constructive multi-path (MP) signals, in accordance with an embodiment of the present disclosure.
- FIG. 8 is a graphical representation that depicts one or more correlators’ outputs of destructive multi-path (MP) signals, in accordance with an embodiment of the present disclosure.
- an underlined number is employed to represent an item over which the underlined number is positioned or an item to which the underlined number is adjacent.
- a non-underlined number relates to an item identified by a line linking the non- underlined number to the item.
- the non-underlined number is used to identify a general item at which the arrow is pointing.
- FIG. 1 is a flowchart of a method of generating navigational data, in accordance with an embodiment of the present disclosure.
- a method 100 of generating navigational data includes 102 to 108 steps.
- the method 100 is executed by a navigation system, described in detail, for example, in FIG. 2.
- the present disclosure provides a method 100 of generating navigational data, comprising: receiving an incoming Global Navigation Satellite System, GNSS, signal; generating one or more correlation signals by correlating the incoming signal with a local signal replica; generating a signal path classification by processing the one or more correlation signals using a convolutional neural network, CNN; and generating navigational data for the incoming signal based on the signal path classification and the one or more correlation signals.
- GNSS Global Navigation Satellite System
- CNN convolutional neural network
- the method 100 corresponds to a global navigation satellite system (GNSS) signals classification method and is based on deep learning.
- GNSS global navigation satellite system
- the GNSS signals classification is carried out using manually selected features from signal strength, pseudo range delta values etc.
- the method 100 is based on automatically extracting the features baseband signal processing results which may further improve the GNSS signal classification accuracy and position accuracy as well.
- the method 100 is based on a vector tracking loop (VTL) framework.
- VTL vector tracking loop
- the method 100 comprises receiving an incoming Global Navigation Satellite System (GNSS) signal.
- the method 100 is used to classify the incoming GNSS signal into one of three categories, that is line-of-sight (LOS) signals, non-line-of- sight (NLOS) signals or multi-path (MP) signals.
- the LOS signals represent the signals directly received by the navigation system (e.g., a GNSS receiver antenna).
- the NLOS signals represent the signals directly blocked by buildings or objects in nearby surroundings and only reflected signals are received by the navigation system (i.e., the GNSS receiver antenna).
- the MP signals represent the signals including the direct signals as well as reflected signals received by the navigation system (i.e., the GNSS receiver antenna).
- the method 100 further comprises generating one or more correlation signals by correlating the incoming signal with a local signal replica.
- the incoming signal (or the incoming GNSS signal) is correlated with the local signal replica resulting into generation of the one or more correlation signals.
- different one or more correlation signals are generated.
- the local signal replica may be an early replica, or a prompt replica or a late replica of the incoming signal.
- the early replica may be defined as a replication of the incoming signal that is received at a time before the receiving time of the incoming signal.
- the prompt replica may be defined as a replication of the incoming signal that is received exactly at a time equal to the receiving time of the incoming signal.
- the late replica may be defined as a replication of the incoming signal that is received at a time after the receiving time of the incoming signal.
- the method 100 further comprises generating a signal path classification by processing the one or more correlation signals using a convolutional neural network (CNN).
- CNN convolutional neural network
- the one or more correlation signals are directly processed using the CNN for generating the signal path classification.
- the one or more correlation signals are obtained in a form of curves which directly reflect the difference between the LOS and NLOS signals.
- the direct processing of the one or more correlation signals for the signal path classification results into an improved classification accuracy in comparison to a conventional signal classification method of manually selecting the features from signal strength, pseudo-range delta values and etc.
- the CNN is constructed and employed to process the one or more correlation signals and classify the incoming signal. The CNN is described in detail, for example, in FIG. 4.
- the method 100 further comprises generating navigational data for the incoming signal based on the signal path classification and the one or more correlation signals. After generation of the signal path classification by use of the CNN, navigational data is generated for the incoming signal based on the signal path classification and the one or more correaltion signals.
- the incoming signal is received by an intermediate frequency (IF) signal receiver.
- an intermediate frequency may be defined as a frequency that lies between a baseband frequency (i.e., a lower frequency) and a carrier frequency (i.e., a higher frequency).
- the method 100 further comprises N correlators for each channel with a space of 1/N chip and, among them, late, prompt and early correlators with space of 0.5 chip.
- N e.g., 100
- the CNN comprises two or more convolutional layers, a first convolutional layer comprising x filters with a kernel size value y, a second con-volutional layer comprising y filters with a kernel size value x.
- the CNN may be defined as a highly interconnected network of processing elements.
- the CNN may have two or more convolutional layers which are connected (or convolved) with each other in a feed-forward fashion either through multiplication or by dot product.
- the first convolutional layer comprises x (e.g., 2) filters with a kernel size of value y (e.g., 4).
- the second convolutional layer comprises y (e.g., 4) filters with a kernel size of value x (e.g., 2).
- the CNN comprises a maxpooling layer having n variables with a pooling size value n.
- the maxpooling (or maximum pooling) layer may be defined as a layer at which pooling operation is performed to calculate a maximum, or a largest value in each patch of each feature map.
- the CNN comprises the maxpooling layer which may have the n (e.g., 2) variables with the pooling size of value n (e.g., 2).
- an activation function of the CNN is Rectified Linear Unit (ReLU).
- the rectified linear unit (ReLU) may be defined as the activation function of the CNN which may provide an output that is exactly same to a given input if the given input is positive, otherwise, provides the zero output.
- the CNN comprises a fully-connected layer employed to generate and select a probability of a class using a SoftMax function, wherein there are three class labels: Line-of-Sight (LOS), and None-Line-of-Sight (NLOS) and Multi-Path (MP).
- the softmax function may be defined as a generalization of logistic regression that can be used for multi-class classification.
- the softmax function is a function that turns a vector of K real values into another vector of K real values which sum to 1.
- the input values of the vector may be positive, negative, zero or greater than 1, but the softmax function transforms the input values between 0 and 1, so that the input values can be interpreted as probabilities.
- the fully connected layer is configured to use the softmax function to generate and select the probability of the class of the one or more correlation signals.
- generating of navigational data is based on a navigation filter which is a Kalman filter, wherein state variables of the Kalman Filter comprise position errors, velocity errors, clock bias errors and clock drift errors.
- the Kalman filter may be defined as an optimal estimator in a sense that the Kalman filter minimizes an estimated error covariance.
- the state variables of the Kalman filter includes position errors, velocity errors, clock bias errors and clock drift errors.
- the state variables may be defined as variables that represent one or more states of a deterministic dynamic system and knowledge of the state variables allows a theoretical prediction of future (and prior) dynamics and outputs of the deterministic system in absence of noise.
- the method 100 further comprises calculating one or more signal parameters for a new local signal replica, based on navigational data and a line-of-sight, LOS, projection.
- the method 100 further comprises generating the new local signal replica using the calculated one or more signal parameters.
- the generated navigation solution is employed to calculate the one or more signal parameters, such as code phase and frequency.
- the generated code phase and frequency are further utilized to generate the new local signal replica.
- the new local signal replica is further correlated with a future incoming GNSS signal that results into generation of different one or more correlation signals. Different types of the incoming GNSS signal may induce different correlation signals and this feature may be employed to classify the incoming GNSS signal into LOS, NLOS and MP signals.
- the signal parameters for the new local signal replica include one or more code phase errors and carrier frequency errors.
- the generated one or more signal parameters may include one or more code phase errors and carrier frequency errors which are further utilized to generate the new local signal replica.
- the LOS projection projects position and velocity errors and clock bias and clock drift from the navigation filter to a LOS vector to calculate the code phase errors and carrier frequency errors.
- the generated navigation solution is used to calculate the LOS projection.
- the LOS projection projects the position and velocity errors as well as clock bias and clock drift errors from the navigation filter to the LOS vector in order to generate the code phase errors and carrier frequency errors.
- the method 100 is used for classification of GNSS signals as LOS, NLOS or MP signals.
- the method 100 is based on automatically extracting the features from baseband signal processing results which may further improve the GNSS signal classification accuracy and position accuracy as well.
- the method 100 is based on vector tracking loop (VTL) to process the incoming GNSS signal.
- VTL vector tracking loop
- the incoming GNSS signal is correlated with the local signal replica that lead to the generation of the one or more correlation signals.
- the one or more correlation signals correspond to differences between the incoming GNSS signal and the local signal replica.
- the method 100 includes using the CNN to directly process the one or more correlation signals and automatically learning the features of the one or more correlation signals and classify them into the LOS, NLOS and MP signals.
- the method 100 further includes training the CNN and classifying the GNSS incoming signal into the LOS, NLOS and MP signals with an improved accuracy.
- the method 100 further includes estimation of navigational data and using the estimated navigation solution to compute the one or more signal parameters, such as code phase and frequency.
- the computed code phase and frequency are further utilized to generate the new local signal replica.
- the new local signal replica is further correlated with a future incoming GNSS signal.
- the method 100 includes an iterative generation of the new local signal replica based on the estimated navigation solution, correlating it with the incoming GNSS signal (e.g., a next or a future incoming signal) and classifying the incoming GNSS signal into LOS, NLOS or MP signals.
- the method 100 provides an improved classification accuracy of GNSS signals and consequently, position accuracy in dense urban areas in comparison to the conventional GNSS classification in which the GNSS signals classification is carried out using manually selected features from signal strength, pseudo range delta values etc. Therefore, the method 100 can be easily implemented in smartphones for improving the position accuracy in dense urban areas.
- FIG. 2 is a block diagram that illustrates various exemplary components of a navigation system, in accordance with an embodiment of the present disclosure.
- FIG. 2 is described in conjunction with elements from FIG. 1.
- FIG. 2 there is shown a block diagram 200 that represents a navigation system 202.
- the navigation system 202 includes a receiver 204, one or more correlator units 206, a convolutional neural network (CNN) 208, a navigation filter 210, a LOS projector 212, a signal generator 214, a memory 216 and a processor 218.
- the receiver 204 comprises an intermediate frequency (IF) signal receiver 204A.
- the navigation system 202 is configured to execute the method 100 (of FIG. 1). Alternatively stated, the navigation system 202 is configured to execute the vector tracking loop (VTL).
- the navigation system 202 may comprise suitable logic, circuitry, interfaces, and/or code that is configured to classify one or more received signals into three classes, such as LOS, NLOS and MP signals with an improved classification accuracy.
- Examples of the navigation system 202 may include, but are not limited to, a GNSS, a GNSS receiver antenna, GPS, and the like.
- the receiver 204 may comprise suitable logic, circuitry, interfaces, and/or code that is configured to receive an incoming Global Navigation Satellite System (GNSS) signal.
- GNSS Global Navigation Satellite System
- Examples of the receiver 204 may include, but are not limited to, a GNSS receiver, a GPS receiver, and the like.
- the receiver 204 may be a part of (or used in) a satellite system, such as a GNSS, a GPS, etc.
- the receiver 204 may be a part of other portable or non portable communication device used for receiving one or more signals from one or more satellite systems.
- the one or more correlator units 206 may comprise suitable logic, circuitry, interfaces, and/or code that is configured to generate one or more correlation signals by correlating the incoming signal with a local signal replica.
- the one or more correlator units 206 may include an early correlator, a prompt correlator and a late correlator. Examples of the one or more correlator units 206 may include, but are not limited to, auto-correlator units, cross-correlator units, and the like.
- the convolutional neural network (CNN) 208 may comprise suitable logic, circuitry, interfaces, and/or code that is configured to generate a signal path classification by processing the one or more correlation signals.
- Examples of the CNN 208 may include, but are not limited to, a recursive neural network, a feed-forward neural network, a deep-belief network, and a convolutional deep-belief network, a self-organizing map, a deep Boltzmann machine, and the like.
- the navigation filter 210 may comprise suitable logic, circuitry, interfaces, and/or code that is configured to generate navigational data for the incoming signal based on the signal path classification and the one or more correlation signals. Examples of the navigation filter 210 may include, but are not limited to, a Kalman filter and the like.
- the memory 216 may comprise suitable logic, circuitry, interfaces, and/or code that is configured to store the instructions executable by the processor 218. Examples of implementation of the memory 216 may include, but are not limited to, Electrically Erasable Programmable Read-Only Memory (EEPROM), Random Access Memory (RAM), Read Only Memory (ROM), Hard Disk Drive (HDD), Flash memory, Solid-State Drive (SSD), or CPU cache memory.
- EEPROM Electrically Erasable Programmable Read-Only Memory
- RAM Random Access Memory
- ROM Read Only Memory
- HDD Hard Disk Drive
- Flash memory Solid-State Drive
- SSD Solid-State Drive
- CPU cache memory any suitable logic, circuitry, interfaces, and/or code that is configured to store the instructions executable by the processor 218. Examples of implementation of the memory 216 may include, but are not limited to, Electrically Erasable Programmable Read-Only Memory (EEPROM), Random Access Memory (RAM), Read Only Memory (ROM), Hard Disk Drive (HDD), Flash memory, Solid-
- the processor 218 includes suitable logic, circuitry, interfaces and/or code that is configured to execute the instructions stored in the memory 216.
- Examples of the processor 218 may include, but are not limited to a processor, a microprocessor, a microcontroller, a complex instruction set computing (CISC) processor, an application-specific integrated circuit (ASIC) processor, a reduced instruction set (RISC) processor, a very long instruction word (VLIW) processor, a central processing unit (CPU), a state machine, a data processing unit, and other processors or control circuitry.
- the processor 218 may refer to one or more individual processors, processing devices, a processing unit that is part of a machine, such as the navigation system 202
- the navigation system 202 comprises the receiver 204 that is configured to receive an incoming Global Navigation Satellite System (GNSS) signal.
- GNSS Global Navigation Satellite System
- the incoming GNSS signal is received for further classification into one of three categories, that is line-of-sight (LOS) signals, non-line-of-sight (NLOS) signals and multi-path (MP) signals.
- LOS line-of-sight
- NLOS non-line-of-sight
- MP multi-path
- the navigation system 202 further comprises the one or more correlator units 206 that is configured to generate one or more correlation signals by correlating the incoming signal with a local signal replica. Depending on the type of the incoming signal (or the incoming GNSS signal), the one or more correlator units 206 are configured to generate different outputs or one or more correlation signals. The one or more correlation signals from the one or more correlator units 206 directly reflect the difference between the LOS and NLOS signals.
- the navigation system 202 further comprises the convolutional neural network (CNN) 208 that is configured to generate a signal path classification by processing the one or more correlation signals.
- the one or more correlation signals generated by the one or more correlator units 206 are directly processed using the CNN 208 for signal path classification.
- the direct processing of the one or more correlation signals of the one or more correlator units 206 for signal path classification results into an improved classification accuracy in comparison to a conventional signal classification method of using the features from signal strength, pseudo-range deltas and etc.
- the CNN 208 is described in more detail, for example, in FIG. 4.
- the navigation system 202 further comprises the navigation filter 210 configured to generate navigational data for the incoming signal based on the signal path classification and the one or more correlation signals.
- the navigation filter 210 is configured to estimate navigational data for the incoming signal based on the signal path classification and the one or more correlation signals.
- the receiver 204 comprises the intermediate frequency (IF) signal receiver 204A.
- the IF signal receiver 204A is configured to receive the incoming signal (or the incoming GNSS signal).
- the navigation system 202 manifests simplicity and robustness in signal challenging environments.
- the navigation system 202 comprises N correlators for each channel with the space of 1/N chip and, among them, late, prompt and early correlators with space of 0.5 chip.
- the navigation system 202 comprises N correlators.
- the N correlators correspond to the one or more correlator units 206 of the navigation system 202.
- an activation function of the CNN 208 is Rectified Linear Unit (ReLU).
- the rectified linear unit (ReLU) may be defined as the activation function of the CNN 208 which may provide an output that is exactly same to a given input if the given input is positive, otherwise, provides the zero output.
- the use of the ReLU enables simplicity and a further improvement in position accuracy of the navigation system 202.
- the navigation filter 210 is a Kalman Filter, wherein state variables of the Kalman Filter comprise position errors, velocity errors, clock bias errors and clock drift errors.
- the navigation filter 210 is configured to estimate navigational data for the incoming signal based on the signal path classification and the one or more correlation signals.
- the Kalman filter enables the navigation system 202 to have simplicity and a small computational power.
- the navigation system 202 further comprises the LOS projector 212 configured to calculate one or more signal parameters for a new local signal replica, based on navigational data and a line-of-sight projection.
- the navigation system 202 further comprises the signal generator 214 configured to generate the new local signal replica using the calculated signal parameters.
- the LOS projector 212 is configured to use the estimated navigation solution and the LOS projection to generate the one or more signal parameters, such as code phase and frequency.
- the signal generator 214 is configured to utilize the generated one or more signal parameters, such as code phase and frequency in order to generate the new local signal replica.
- the new local signal replica is further correlated with a future incoming GNSS signal.
- the signal parameters for the new local signal replica include one or more code phase errors and carrier frequency errors.
- the generated one or more signal parameters may include one or more code phase errors and carrier frequency errors which are further utilized to generate the new local signal replica.
- the LOS projector 212 is configured to project position and velocity errors and clock bias and clock drift from the navigation filter 210 to the LOS vector to calculate the code phase errors and carrier frequency errors.
- the LOS projector 212 is further configured to project the position and velocity errors as well as clock bias and clock drift errors from the navigation filter 210 to the LOS vector in order to generate the code phase errors and carrier frequency errors.
- a computer program comprising instructions which, when executed by the processor 218, cause the processor 218 to execute the method 100 of any preceding claim.
- the processor 218 of the navigation system 202 is configured to execute the method 100 (of FIG. 1). After executing the method 100, the processor 218 and hence, the navigation system 202 achieves all the advantages and technical effects of the method 100.
- a non-transitory computer readable medium storing instructions which, when executed by the processor 218, cause the processor 218 to execute the method 100 of any preceding claim.
- the processor 218 of the navigation system 202 is configured to execute the method 100 (of FIG. 1). After executing the method 100, the processor 218 and hence, the navigation system 202 achieves all the advantages and technical effects of the method 100.
- the navigation system 202 is configured to classify one or more received signals into three classes, such as LOS, NLOS and MP signals with an improved classification accuracy.
- the navigation system 202 is further configured to provide an improved position accuracy in dense urban areas in comparison to a conventional navigation system.
- the conventional navigation system such as a smartphone GNSS or another GNSS receiver that is able to receive signals from tens of satellites and track of in-view satellites real-time, therefore, it becomes difficult for the conventional navigation system to identify and classify the received signals in urban areas with required classification accuracy.
- the navigation system 202 provides identification and classification of the one or more received signals into LOS, NLOS and MP signals with significant classification accuracy and position accuracy in urban areas.
- the navigation system 202 manifests robustness in signal challenging environments by executing the method 100 (of FIG. 1).
- the navigation system 202 comprises the CNN 208 to process the one or more correlation signals generated by the one or more correlator units 206 and automatically learn the features of the one or more correlation signals of the one or more correlator units 206 and classify them into the LOS, NLOS and MP signals.
- the navigation system 202 further includes training the CNN 208 and classifying the incoming GNSS signal into the LOS, NLOS and MP signals with an improved classification accuracy.
- FIG. 3 illustrates various functional elements of a vector tracking loop (VTL), in accordance with an embodiment of the present disclosure.
- FIG. 3 is described in conjunction with elements from FIGs. 1 and 2.
- FIG. 3 there is shown a presentative illustration of a vector tracking loop (VTL) 300 that includes an incoming signal 302, a carrier replica 304, a code replica 306, a correlator 308, a code discriminator 310, a frequency discriminator 312, a navigation filter 314, a line-of-sight (LOS) projector 316, an estimated code phase and frequency 318.
- VTL vector tracking loop
- the VTL 300 corresponds to the method 100 (of FIG. 1).
- the navigation system 202 (of FIG. 2) is configured to execute the VTL 300.
- the incoming signal 302 corresponds to a signal received by the receiver 204 of the navigation system 202.
- the carrier replica 304 and the code replica 306 may also be referred to as a local signal replica.
- the correlator 308 coresponds to the one or more correlator units 206 (of FIG. 2). Therefore, the correlator 308 may include the early correlator, the prompt correlator and the late correlator.
- the navigation filter 314, and the LOS projector 316 correspond to the navigation filter 210 and the LOS projector 212 (of FIG. 2), respectively.
- the VTL 300 includes one or more stages for processing one or more incoming signals, such as a first stage 301 for processing the incoming signal 302.
- the VTL 300 includes receiving the incoming signal 302 and correlating the incoming signal 302 with the carrier replica 304 and the code replica 306 (or the local signal replica).
- the correlator 308 is configured to correlate the incoming signal 302 with the carrier replica 304 and the code replica 306 and to generate one or more correlation signals.
- the one or more correlation signals include outputs such as, I p , Q p generated by the prompt correlator, I E , Q E generated by the early correlator and I L , Q L generated by the late correlator.
- the one or more correlation signals are processed by the code discriminator 310 and the frequency discriminator 312 to extract the code phase ( d t ) and Doppler frequency measurements (by)
- the extracted code phase ( d t ) and Doppler frequency measurements (by ) are used to classify the one or more correlation signals into the LOS, NLOS and MP signals.
- the extracted code phase ( d t ) and Doppler frequency measurements (by) are provided to the navigation filter 314 to generate navigational data.
- the generated navigation solution is provided to the LOS projector 316 to estimate one or more signal parameters, such as code phase and frequency 318.
- the estimated code phase and frequency 318 are utilized to generate a new local signal replica.
- the new local signal replica is further correlated with a future incoming signal by use of the correlator 308 that results into generation of different one or more correlation signals.
- Different types of the incoming signal(s) may induce different correlation signals and this feature may be employed to classify the incoming signal into LOS, NLOS and MP signals.
- the VTL 300 includes processing the incoming signal 302 and generating navigational data using the correlator 308, the carrier replica 304, the code replica 306, the code discriminator 310, the frequency discriminator 312, the navigation filter 314 and the LOS projector 316, respectively.
- the one or more correlation signals may be directly processed by use of a CNN, (such as the CNN 208 of FIG. 2) and classified into the LOS, NLOS and MP signals.
- a CNN such as the CNN 208 of FIG. 2
- FIG. 4 is an illustration of a convolutional neural network (CNN) for use in a VTL, in accordance with an embodiment of the present disclosure.
- FIG. 4 is described in conjunction with elements from FIGs. 1, 2, and 3.
- FIG. 4 there is shown an illustration 400 that includes a convolutional neural network (CNN) 402 and a signal path classification 404.
- the CNN 402 includes two or more convolutional layers 406, a maxpooling layer 408 and a fully connected layer 410.
- the signal path classification 404 includes three types of signal, such as aNLOS signal 412, a LOS signal 414 and a MP signal 416.
- the CNN 402 corresponds to the CNN 208 (of FIG. 2).
- the CNN 402 may be used in the VTL 300.
- the CNN 402 is configured to directly process the one or more correlation signals generated by the correlator 308 (of FIG. 3) based on a deep learning method.
- the CNN 402 is configured to automatically extract features from the one or more correlation signals (or baseband signal processing results) resulting in an improved classification accuracy of one or more signals received by the navigation system 202 (of FIG. 2).
- the direct processing of the one or more correlation signals by use of the CNN 402 results into generation of the signal path classification 404.
- the one or more correlation signals are classified either into the NLOS signal 412, the LOS signal 414 and the MP signal 416.
- the CNN 402 comprises two or more convolutional layers 406, wherein a first convolutional layer 406A comprises x filters with a kernel size value y and a second convolutional layer 406B comprises y filters with a kernel size value x.
- the first convolutional layer 406A comprises x (e.g., 2) filters with a kernel size of value y (e.g., 4).
- the second convolutional layer 406B comprises y (e.g., 4) filters with a kernel size of value x (e.g., 2).
- the CNN 402 comprises the maxpooling layer 408 having n variables with a pooling size value n.
- the CNN 402 comprises the maxpooling layer 408 which may have the n (e.g., 2) variables with the pooling size of value n (e.g., 2).
- the CNN 402 comprises the fully-connected layer 410 employed to generate and select a probability of a class using a SoftMax function, wherein there are three class labels: Line-of-Sight, LOS, and None-Line-of-Sight, NLOS and Multi-Path, MP.
- the fully connected layer 410 is configured to use the softmax function to generate and select the probability of the class of the one or more correlation signals generated by the correlator 308 in the VTL 300.
- the signal path classification 404 embedded in the VTL 300 may support to improve robustness and position accuracy.
- the use of the CNN 402 results into a further improvement in classification accuracy of one or more signals received by the navigation system 202 (of FIG. 2).
- the CNN 402 is not required to be same, it may have more variations for embodiments of signal classification.
- FIG. 5 is a graphical representation that depicts one or more correlators’ outputs of line-of-sight (LOS) signals, in accordance with an embodiment of the present disclosure.
- FIG. 5 is described in conjunction with elements from FIGs. 1, 2, 3, and 4.
- a graphical representation 500 that includes an X-axis 502 that represents spacing between one or more correlator units 206 (of FIG. 2) in terms of chips.
- the graphical representation 500 further includes a Y-axis 504 that represents one or more outputs (or output signals) of the one or more correlator units 206.
- the one or more correlator units 206 include an early correlator, a prompt correlator and a late correlator.
- An output of the early correlator (also represented as E) is represented by a first line 506.
- outputs of the prompt correlator (also represented as P) and the late correlator (also represented as L) are represented by a second line 508 and a third line 510, respectively.
- the graphical representation 500 includes a curve 512 that illustrates the outputs from the early correlator, the prompt correlator and the late correlator, collectively, as LOS signals, under a LOS condition.
- the LOS condition is that the code discriminator 310 (of FIG. 3) is configured to extract code phase errors accurately.
- the graphical representation 500 illustrates that the early correlator, the prompt correlator and the late correlator have a spacing of 0.5 chip for each channel.
- FIG. 6 is a graphical representation that depicts one or more correlators’ outputs of Non-line- of-sight (NLOS) signals, in accordance with an embodiment of the present disclosure.
- FIG. 6 is described in conjunction with elements from FIGs. 1, 2, 3, 4, and 5.
- a graphical representation 600 that includes an X-axis 602 that represents spacing between one or more correlator units 206 (of FIG. 2) in terms of chips.
- the graphical representation 600 further includes a Y-axis 604 that represents one or more outputs (or output signals) of the one or more correlator units 206.
- the one or more correlator units 206 include an early correlator (E), a prompt correlator (P) and a late correlator (L).
- the graphical representation 600 includes a curve 606 that illustrates the outputs from the early correlator, the prompt correlator and the late correlator, collectively, as NLOS signals.
- the NLOS signals of the graphical representation 600 performs a decrease in their magnitude values.
- the code discriminator 310 (of FIG. 3) has a code phase bias in its output.
- FIG. 7 is a graphical representation that depicts one or more correlators’ outputs of constructive multi-path (MP) signals, in accordance with an embodiment of the present disclosure.
- FIG. 7 is described in conjunction with elements from FIGs. 1, 2, 3, 4, 5, and 6. With reference to FIG.
- a graphical representation 700 that includes an X-axis 702 that represents spacing between one or more correlator units 206 (of FIG. 2) in terms of chips.
- the graphical representation 700 further includes a Y-axis 704 that represents one or more outputs (or output signals) of the one or more correlator units 206
- the graphical representation 700 includes a first curve 706 that represents a direct signal, a second curve 708 that illustrates a reflected signal and a third curve 710 that represents a multi- path (MP) signal.
- the third curve 710 illustrates the outputs from the early correlator (E), the prompt correlator (P) and the late correlator (L), collectively, as MP signals.
- an MP signal is either a constructive or a destructive mixture of a direct signal and a reflected signal with different code delays.
- the third curve 710 represents a constructive mixture of the direct signal of the first curve 706 and the reflected signal of the second curve 708 with different code delays.
- the direct signal of the first curve 706 and the reflected signal of the second curve 708 mixed into each other, in a constructive manner, resulting into a large magnitude of the MP signal of the third curve 710
- the code discriminator 310 (of FIG. 3) has a code phase bias in its output. Therefore, the third curve 710 is not triangular in nature in comparison to the curve 512 of LOS signals (of FIG. 5) and the curve 606 of NLOS signals (of FIG. 6).
- FIG. 8 is a graphical representation that depicts one or more correlators’ outputs of destructive multi-path (MP) signals, in accordance with an embodiment of the present disclosure.
- FIG. 8 is described in conjunction with elements from FIGs. 1, 2, 3, 4, 5, 6, and 7. With reference to FIG.
- a graphical representation 800 that includes an X-axis 802 that represents spacing between one or more correlator units 206 (of FIG. 2) in terms of chips.
- the graphical representation 800 further includes a Y-axis 804 that represents one or more outputs (or output signals) of the one or more correlator units 206
- the graphical representation 800 includes a first curve 806 that represents a direct signal, a second curve 808 that illustrates a reflected signal and a third curve 810 that represents a multi- path (MP) signal.
- the third curve 810 illustrates the outputs from the early correlator (E), the prompt correlator (P) and the late correlator (L), collectively, as MP signals.
- the third curve 810 represents a destructive mixture of the direct signal of the first curve 806 and the reflected signal of the second curve 808 with different code delays. Additionally, the direct signal of the first curve 806 and the reflected signal of the second curve 808 mixed into each other, in a destructive manner, resulting into a small magnitude of the MP signal of the third curve 810. Additionally, in case of the MP signals, the code discriminator 310 (of FIG. 3) has a code phase bias in its output. Therefore, the third curve 810 is not triangular in nature in comparison to the curve 512 of LOS signals (of FIG. 5) and the curve 606 of NLOS signals (of FIG. 6). Such characteristics (i.e. nature of the third curve 810) of the one or more correlator units 206 are the basis of classification of LOS or NLOS or MP signals.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
A method of generating navigational data, includes receiving an incoming Global Navigation Satellite System (GNSS) signal and generating one or more correlation signals by correlating the incoming signal with a local signal replica. The method further includes generating a signal path classification by processing the one or more correlation signals using a convolutional neural network (CNN) and generating navigational data for the incoming signal based on the signal path classification and the one or more correlation signals. The method provides an improved classification accuracy of GNSS signals and consequently, position accuracy in dense urban areas. The method is based on automatically extracting the features from baseband signal processing results using the CNN which further improves the GNSS signal classification accuracy as well as position accuracy.
Description
GNSS NLOS/LOS/MULTIPATH CLASSIFICATION USING CONVOLUTIONAL
NEURAL NETWORKS
TECHNICAL FIELD
The present disclosure relates generally to the field of global navigation satellite system (GNSS) and more specifically, to a method of generating navigational data and a navigation system.
BACKGROUND
Generally represented by global positioning system (GPS), a conventional global navigation satellite system (GNSS) is widely used in various applications as it provides position, location and timing information with partial precision. However, in urban areas, one or more signals are received by the conventional GNSS which may be either reflected or blocked by buildings or objects in nearby surroundings. Actually, there are three different signal types received by the conventional GNSS, such as line-of-sight (LOS), non-light-of-sight (NLOS) and multipath (MP) signals. Generally, the LOS signals represent the signals directly received by a conventional GNSS receiver antenna. The NLOS signals represent the signals directly blocked by buildings or objects in nearby surroundings and only reflected signals are received by the conventional GNSS receiver antenna. The MP signals represent the signals including the direct signals and reflected signals received by the conventional GNSS receiver antenna. In case of the MP signals, the direct signals and reflected signals have different time delays and get mixed into each other at the conventional GNSS receiver antenna. Therefore, the NLOS and MP signals may induce additional errors to the position results provided by the conventional GNSS. More specifically, the NLOS signals may induce tens of meters position errors. For applications of the conventional GNSS in urban areas, the tall buildings or other objects may reflect the GNSS signals and induce larger positioning errors. Therefore, the detection and mitigation of the NLOS signals seems vital for securing the position accuracy of the conventional GNSS.
Currently, certain attempts have been made to improve the position accuracy of the conventional GNSS. For example, in a conventional method, signal tracking loops are carried
out based on phase lock loop (PLL) and delay lock loop (DLL) in a conventional GNSS receiver (or a conventional commercial GNSS receiver). Based on the signal tracking loops, manually selected features from signal strength, pseudo-range delta values, etc., are employed as an input to a machine learning based conventional classifier for received signals type classification. However, the conventional GNSS receiver is unable to detect and classify the GNSS signal reception types as the NLOS signals using correlators output. The different signals reception may be reflected by different baseband signal processing results which can be employed as an inherent information to classify GNSS signal reception types. Thus, there exists a technical problem of the conventional GNSS receiver that has an inadequate detection and classification accuracy of different signal reception types and consequently, lacks in position accuracy.
Therefore, in light of the foregoing discussion, there exists a need to overcome the aforementioned drawbacks associated with the conventional GNSS receiver.
SUMMARY
The present disclosure provides a method of generating navigational data and a navigation system. The navigational data may be or comprise positional data, velocity data, route data, or any other data suitable for describing the position or movement of a GNSS receiver. The GNSS receiver may be integrated in a mobile device, e.g. in a vehicle or in a handheld device such as a stand-alone handheld navigation device, a smartphone, or a tablet computer. The present disclosure provides a solution to the existing problem of a conventional GNSS receiver that has an inadequate detection and classification accuracy of different signal reception types and consequently, lacks in position accuracy. An objective of the present disclosure is to provide a solution that overcomes at least partially the problems encountered in the prior art and provides an improved method of generating navigational data and a navigation system that manifests an improved classification accuracy of different signal reception types and consequently, an improved position accuracy.
One or more objectives of the present disclosure is achieved by the solutions provided in the enclosed independent claims. Advantageous implementations of the present disclosure are further defined in the dependent claims.
In one aspect, the present disclosure provides a method of generating navigational data. The method comprises receiving an incoming Global Navigation Satellite System (GNSS) signal and generating one or more correlation signals by correlating the incoming signal with a local signal replica. The method further comprises generating a signal path classification by processing the one or more correlation signals using a convolutional neural network (CNN) and generating navigational data for the incoming signal based on the signal path classification and the one or more correlation signals.
The disclosed method provides an improved classification accuracy of GNSS signals and consequently, position accuracy in dense urban areas in comparison to a conventional GNSS classification method in which the GNSS signals classification is carried out using manually selected features from signal strength, pseudo range delta values etc. The disclosed method is based on automatically extracting the features from baseband signal processing results using the CNN which may further improve the GNSS signal classification accuracy and position accuracy as well.
In an implementation form, the incoming GNSS signal is down-mixed to an intermediate frequency, IF, using an IF signal receiver.
The use of the IF signal receiver enables simple and robust reception of the incoming signal even when the signal-to-noise ratio SNR is low. The IF signal receiver may comprise a mixer for multiplying the received GNSS signal (delivered by an antenna) with a local oscillator signal to convert the received GNSS signal into a GNSS signal at the intermediate frequency.
In a further implementation form, the method further comprises N correlators for each channel with a space of 1/N chip and, among them, late, prompt and early correlators with space of 0.5 chip.
The outputs and their characteristics from the N correlators act as a basis of classification of GNSS signals.
In a further implementation form, the CNN comprises two or more convolutional layers, a first convolutional layer comprising x filters with a kernel size value y, a second convolutional layer comprising y filters with a kernel size value x.
The use of the CNN with the two or more convolutional layers results into a further improvement in classification accuracy of GNSS signals.
In a further implementation form, the CNN comprises a maxpooling layer having n variables with a pooling size value n.
The use of the maxpooling layer in the CNN causes the method to provide a more precise GNSS signals classification accuracy and position accuracy in dense urban areas.
In a further implementation form, an activation function of the CNN is Rectified Linear Unit (ReLU).
The use of the ReLU enables simplicity and a further improvement in position accuracy provided by the method.
In a further implementation form, the CNN comprises a fully-connected layer employed to generate and select a probability of a class using a SoftMax function, wherein there are three class labels: Line-of-Sight (LOS), and None-Line-of-Sight (NLOS) and Multi-Path (MP).
The use of the CNN with the fully-connected layer enables a more precise classification of GNSS signals into LOS, NLOS and MP signals.
In a further implementation form, generating of navigational data is based on the navigation filter which is a Kalman Filter, wherein state variables of the Kalman Filter comprise position errors, velocity errors, clock bias errors and clock drift errors.
The Kalman filter manifests simplicity and a small computational power and hence, generates navigational data efficiently.
In a further implementation form, the method further comprises calculating one or more signal parameters for a new local signal replica, based on navigational data and a line-of-sight (LOS) projection and generating the new local signal replica using the calculated signal parameters.
The method includes an iterative generation of the new local signal replica based on the estimated navigation solution, correlating it with the incoming GNSS signal (e.g., a next or a future incoming signal) and classifying the incoming GNSS signal into LOS, NLOS or MP signals with an enhanced classification accuracy.
In a further implementation form, the signal parameters for the new local signal replica include one or more code phase errors and carrier frequency errors.
The generated one or more code phase errors and carrier frequency errors results into generation of the new local signal replica depending on an application scenario with more accuracy.
In a further implementation form, the LOS projection projects position and velocity errors and clock bias and clock drift from the navigation filter to the LOS vector to calculate the code phase errors and carrier frequency errors.
The position and velocity errors and clock bias and clock drift errors are used as a feedback from the navigation filter to the LOS vector which is further used to calculate the code phase errors and carrier frequency errors with an enhanced accuracy.
In another aspect, the present disclosure provides a computer program comprising in-structions which, when executed by a processor, cause the processor to execute the method of any preceding claim.
The processor achieves all the advantages and effects of the disclosed method after executing the method.
In a yet another aspect, the present disclosure provides a non-transitory computer readable medium storing instructions which, when executed by a processor, cause the processor to execute the method of any preceding claim.
The processor achieves all the advantages and effects of the disclosed method after executing the method.
In a yet another aspect, the present disclosure provides a navigation system, comprising a receiver configured to receive an incoming Global Navigation Satellite System (GNSS) signal. The navigation system further comprises one or more correlator units configured to generate one or more correlation signals by correlating the incoming signal with a local signal replica. The navigation system further comprises a convolutional neural network (CNN) configured to generate a signal path classification by processing the one or more correlation signals and a navigation filter configured to generate navigational data for the incoming signal based on the signal path classification and the one or more correlation signals.
The disclosed navigation system provides a classification of one or more received GNSS signals into three classes, such as LOS, NLOS and MP signals with an improved classification accuracy and consequently, an improved position accuracy in dense urban areas. Moreover, the disclosed
navigation system manifests robustness in signal challenging environments. The disclosed navigation system achieves all the advantages and effects of the disclosed method of the present disclosure.
It is to be appreciated that all the aforementioned implementation forms can be combined.
It has to be noted that all devices, elements, circuitry, units and means described in the present application could be implemented in the software or hardware elements or any kind of combination thereof. All steps which are performed by the various entities described in the present application as well as the functionalities described to be performed by the various entities are intended to mean that the respective entity is adapted to or configured to perform the respective steps and functionalities. Even if, in the following description of specific embodiments, a specific functionality or step to be performed by external entities is not reflected in the description of a specific detailed element of that entity which performs that specific step or functionality, it should be clear for a skilled person that these methods and functionalities can be implemented in respective software or hardware elements, or any kind of combination thereof. It will be appreciated that features of the present disclosure are susceptible to being combined in various combinations without departing from the scope of the present disclosure as defined by the appended claims.
Additional aspects, advantages, features and objects of the present disclosure would be made apparent from the drawings and the detailed description of the illustrative implementations construed in conjunction with the appended claims that follow.
BRIEF DESCRIPTION OF THE DRAWINGS
The summary above, as well as the following detailed description of illustrative embodiments, is better understood when read in conjunction with the appended drawings. For the purpose of illustrating the present disclosure, exemplary constructions of the disclosure are shown in the drawings. However, the present disclosure is not limited to specific methods and instrumentalities disclosed herein. Moreover, those in the art will understand that the drawings are not to scale. Wherever possible, like elements have been indicated by identical numbers.
Embodiments of the present disclosure will now be described, by way of example only, with reference to the following diagrams wherein:
FIG. 1 is a flowchart of a method of generating navigational data, in accordance with an embodiment of the present disclosure;
FIG. 2 is a block diagram that illustrates various exemplary components of a navigation system, in accordance with an embodiment of the present disclosure;
FIG. 3 illustrates various functional elements of a vector tracking loop (VTL), in accordance with an embodiment of the present disclosure;
FIG. 4 is an illustration of a convolutional neural network (CNN) for use in a VTL, in accordance with an embodiment of the present disclosure;
FIG. 5 is a graphical representation that depicts one or more correlators’ outputs of line- of-sight (LOS) signals, in accordance with an embodiment of the present disclosure;
FIG. 6 is a graphical representation that depicts one or more correlators’ outputs of non- line-of-sight (NLOS) signals, in accordance with an embodiment of the present disclosure;
FIG. 7 is a graphical representation that depicts one or more correlators’ outputs of constructive multi-path (MP) signals, in accordance with an embodiment of the present disclosure; and
FIG. 8 is a graphical representation that depicts one or more correlators’ outputs of destructive multi-path (MP) signals, in accordance with an embodiment of the present disclosure.
In the accompanying drawings, an underlined number is employed to represent an item over which the underlined number is positioned or an item to which the underlined number is adjacent. A non-underlined number relates to an item identified by a line linking the non- underlined number to the item. When a number is non-underlined and accompanied by an associated arrow, the non-underlined number is used to identify a general item at which the arrow is pointing.
DETAILED DESCRIPTION OF EMBODIMENTS
The following detailed description illustrates embodiments of the present disclosure and ways in which they can be implemented. Although some modes of carrying out the present disclosure have been disclosed, those skilled in the art would recognize that other embodiments for carrying out or practicing the present disclosure are also possible.
FIG. 1 is a flowchart of a method of generating navigational data, in accordance with an embodiment of the present disclosure. With reference to FIG. 1, there is shown a method 100
of generating navigational data. The method 100 includes 102 to 108 steps. The method 100 is executed by a navigation system, described in detail, for example, in FIG. 2.
In one aspect, the present disclosure provides a method 100 of generating navigational data, comprising: receiving an incoming Global Navigation Satellite System, GNSS, signal; generating one or more correlation signals by correlating the incoming signal with a local signal replica; generating a signal path classification by processing the one or more correlation signals using a convolutional neural network, CNN; and generating navigational data for the incoming signal based on the signal path classification and the one or more correlation signals.
The method 100 corresponds to a global navigation satellite system (GNSS) signals classification method and is based on deep learning. Conventionally, the GNSS signals classification is carried out using manually selected features from signal strength, pseudo range delta values etc. In contrast to the conventional GNSS classification, the method 100 is based on automatically extracting the features baseband signal processing results which may further improve the GNSS signal classification accuracy and position accuracy as well. The method 100 is based on a vector tracking loop (VTL) framework. The vector tracking loop and its functional elements are described in detail, for example, in FIG. 3.
At step 102, the method 100 comprises receiving an incoming Global Navigation Satellite System (GNSS) signal. The method 100 is used to classify the incoming GNSS signal into one of three categories, that is line-of-sight (LOS) signals, non-line-of- sight (NLOS) signals or multi-path (MP) signals. The LOS signals represent the signals directly received by the navigation system (e.g., a GNSS receiver antenna). The NLOS signals represent the signals directly blocked by buildings or objects in nearby surroundings and only reflected signals are received by the navigation system (i.e., the GNSS receiver antenna). The MP signals represent the signals including the direct signals as well as reflected signals received by the navigation system (i.e., the GNSS receiver antenna). The direct signals and reflected signals have time delays, therefore, multiple signals are received by the navigation system (i.e., the GNSS receiver antenna) in case of the MP signals.
At step 104, the method 100 further comprises generating one or more correlation signals by correlating the incoming signal with a local signal replica. The incoming signal (or the incoming GNSS signal) is correlated with the local signal replica resulting into generation of the one or more correlation signals. Depending on the type of the incoming signal, different one or more correlation signals are generated. The local signal replica may be an early replica, or a prompt replica or a late replica of the incoming signal. The early replica may be defined as a replication of the incoming signal that is received at a time before the receiving time of the incoming signal. The prompt replica may be defined as a replication of the incoming signal that is received exactly at a time equal to the receiving time of the incoming signal. Similarly, the late replica may be defined as a replication of the incoming signal that is received at a time after the receiving time of the incoming signal.
At step 106, the method 100 further comprises generating a signal path classification by processing the one or more correlation signals using a convolutional neural network (CNN). After generation of the one or more correlation signals depending on the type of the incoming signal, the one or more correlation signals are directly processed using the CNN for generating the signal path classification. The one or more correlation signals are obtained in a form of curves which directly reflect the difference between the LOS and NLOS signals. The direct processing of the one or more correlation signals for the signal path classification results into an improved classification accuracy in comparison to a conventional signal classification method of manually selecting the features from signal strength, pseudo-range delta values and etc. In the method 100, the CNN is constructed and employed to process the one or more correlation signals and classify the incoming signal. The CNN is described in detail, for example, in FIG. 4.
At step 108, the method 100 further comprises generating navigational data for the incoming signal based on the signal path classification and the one or more correlation signals. After generation of the signal path classification by use of the CNN, navigational data is generated for the incoming signal based on the signal path classification and the one or more correaltion signals.
In accordance with an embodiment, the incoming signal is received by an intermediate frequency (IF) signal receiver. Generally, an intermediate frequency may be defined as a frequency that lies between a baseband frequency (i.e., a lower frequency) and a carrier frequency (i.e., a higher frequency).
In accordance with an embodiment, the method 100 further comprises N correlators for each channel with a space of 1/N chip and, among them, late, prompt and early correlators with space of 0.5 chip. For example, in an implementation of the method 100 in the navigation system, N (e.g., 100) correlators are used for each channel with the space of 1/N (i.e., 1/100 = 0.01) chip. Among these N correlators, there are three correlators, namely, late, prompt and early correaltors which may have the spacing of 0.5 chip.
In accordance with an embodiment, the CNN comprises two or more convolutional layers, a first convolutional layer comprising x filters with a kernel size value y, a second con-volutional layer comprising y filters with a kernel size value x. Generally, the CNN may be defined as a highly interconnected network of processing elements. The CNN may have two or more convolutional layers which are connected (or convolved) with each other in a feed-forward fashion either through multiplication or by dot product. The first convolutional layer comprises x (e.g., 2) filters with a kernel size of value y (e.g., 4). The second convolutional layer comprises y (e.g., 4) filters with a kernel size of value x (e.g., 2).
In accordance with an embodiment, the CNN comprises a maxpooling layer having n variables with a pooling size value n. Generally, the maxpooling (or maximum pooling) layer may be defined as a layer at which pooling operation is performed to calculate a maximum, or a largest value in each patch of each feature map. The CNN comprises the maxpooling layer which may have the n (e.g., 2) variables with the pooling size of value n (e.g., 2).
In accordance with an embodiment, an activation function of the CNN is Rectified Linear Unit (ReLU). The rectified linear unit (ReLU) may be defined as the activation function of the CNN which may provide an output that is exactly same to a given input if the given input is positive, otherwise, provides the zero output.
In accordance with an embodiment, the CNN comprises a fully-connected layer employed to generate and select a probability of a class using a SoftMax function, wherein there are three class labels: Line-of-Sight (LOS), and None-Line-of-Sight (NLOS) and Multi-Path (MP). Generally, the softmax function may be defined as a generalization of logistic regression that can be used for multi-class classification. The softmax function is a function that turns a vector of K real values into another vector of K real values which sum to 1. The input values of the vector may be positive, negative, zero or greater than 1, but the softmax function transforms the input values between 0 and 1, so that the input values can be interpreted as probabilities. If
the input values are small or negative, the softmax function turns the input values into small probability otherwise, the softmax function turns the input values into large probability, and the probability always remain between 0 and 1. Therefore, the fully connected layer is configured to use the softmax function to generate and select the probability of the class of the one or more correlation signals. There are three class labels associated with the one or more correlation signals (alternatively, with the incoming signal), such as LOS, NLOS and MP.
In accordance with an embodiment, generating of navigational data is based on a navigation filter which is a Kalman filter, wherein state variables of the Kalman Filter comprise position errors, velocity errors, clock bias errors and clock drift errors. The Kalman filter may be defined as an optimal estimator in a sense that the Kalman filter minimizes an estimated error covariance. The state variables of the Kalman filter includes position errors, velocity errors, clock bias errors and clock drift errors. Generally, the state variables may be defined as variables that represent one or more states of a deterministic dynamic system and knowledge of the state variables allows a theoretical prediction of future (and prior) dynamics and outputs of the deterministic system in absence of noise.
In accordance with an embodiment, the method 100 further comprises calculating one or more signal parameters for a new local signal replica, based on navigational data and a line-of-sight, LOS, projection. The method 100 further comprises generating the new local signal replica using the calculated one or more signal parameters. The generated navigation solution is employed to calculate the one or more signal parameters, such as code phase and frequency. The generated code phase and frequency are further utilized to generate the new local signal replica. The new local signal replica is further correlated with a future incoming GNSS signal that results into generation of different one or more correlation signals. Different types of the incoming GNSS signal may induce different correlation signals and this feature may be employed to classify the incoming GNSS signal into LOS, NLOS and MP signals.
In accordance with an embodiment, the signal parameters for the new local signal replica include one or more code phase errors and carrier frequency errors. The generated one or more signal parameters may include one or more code phase errors and carrier frequency errors which are further utilized to generate the new local signal replica.
In accordance with an embodiment, the LOS projection projects position and velocity errors and clock bias and clock drift from the navigation filter to a LOS vector to calculate the code
phase errors and carrier frequency errors. The generated navigation solution is used to calculate the LOS projection. Further, the LOS projection projects the position and velocity errors as well as clock bias and clock drift errors from the navigation filter to the LOS vector in order to generate the code phase errors and carrier frequency errors.
Thus, the method 100 is used for classification of GNSS signals as LOS, NLOS or MP signals. The method 100 is based on automatically extracting the features from baseband signal processing results which may further improve the GNSS signal classification accuracy and position accuracy as well. The method 100 is based on vector tracking loop (VTL) to process the incoming GNSS signal. The incoming GNSS signal is correlated with the local signal replica that lead to the generation of the one or more correlation signals. The one or more correlation signals correspond to differences between the incoming GNSS signal and the local signal replica. Moreover, the method 100 includes using the CNN to directly process the one or more correlation signals and automatically learning the features of the one or more correlation signals and classify them into the LOS, NLOS and MP signals. The method 100 further includes training the CNN and classifying the GNSS incoming signal into the LOS, NLOS and MP signals with an improved accuracy. The method 100 further includes estimation of navigational data and using the estimated navigation solution to compute the one or more signal parameters, such as code phase and frequency. The computed code phase and frequency are further utilized to generate the new local signal replica. The new local signal replica is further correlated with a future incoming GNSS signal. In this way, the method 100 includes an iterative generation of the new local signal replica based on the estimated navigation solution, correlating it with the incoming GNSS signal (e.g., a next or a future incoming signal) and classifying the incoming GNSS signal into LOS, NLOS or MP signals. Thus, the method 100 provides an improved classification accuracy of GNSS signals and consequently, position accuracy in dense urban areas in comparison to the conventional GNSS classification in which the GNSS signals classification is carried out using manually selected features from signal strength, pseudo range delta values etc. Therefore, the method 100 can be easily implemented in smartphones for improving the position accuracy in dense urban areas.
The steps 102 to 108 are only illustrative and other alternatives can also be provided where one or more steps are added, one or more steps are removed, or one or more steps are provided in a different sequence without departing from the scope of the claims herein.
FIG. 2 is a block diagram that illustrates various exemplary components of a navigation system, in accordance with an embodiment of the present disclosure. FIG. 2 is described in conjunction with elements from FIG. 1. With reference to FIG. 2, there is shown a block diagram 200 that represents a navigation system 202. The navigation system 202 includes a receiver 204, one or more correlator units 206, a convolutional neural network (CNN) 208, a navigation filter 210, a LOS projector 212, a signal generator 214, a memory 216 and a processor 218. The receiver 204 comprises an intermediate frequency (IF) signal receiver 204A. The navigation system 202 is configured to execute the method 100 (of FIG. 1). Alternatively stated, the navigation system 202 is configured to execute the vector tracking loop (VTL).
The navigation system 202 may comprise suitable logic, circuitry, interfaces, and/or code that is configured to classify one or more received signals into three classes, such as LOS, NLOS and MP signals with an improved classification accuracy. Examples of the navigation system 202 may include, but are not limited to, a GNSS, a GNSS receiver antenna, GPS, and the like.
The receiver 204 may comprise suitable logic, circuitry, interfaces, and/or code that is configured to receive an incoming Global Navigation Satellite System (GNSS) signal. Examples of the receiver 204 may include, but are not limited to, a GNSS receiver, a GPS receiver, and the like. Alternatively, the receiver 204 may be a part of (or used in) a satellite system, such as a GNSS, a GPS, etc. The receiver 204 may be a part of other portable or non portable communication device used for receiving one or more signals from one or more satellite systems.
The one or more correlator units 206 may comprise suitable logic, circuitry, interfaces, and/or code that is configured to generate one or more correlation signals by correlating the incoming signal with a local signal replica. The one or more correlator units 206 may include an early correlator, a prompt correlator and a late correlator. Examples of the one or more correlator units 206 may include, but are not limited to, auto-correlator units, cross-correlator units, and the like.
The convolutional neural network (CNN) 208 may comprise suitable logic, circuitry, interfaces, and/or code that is configured to generate a signal path classification by processing the one or more correlation signals. Examples of the CNN 208 may include, but are not limited to, a recursive neural network, a feed-forward neural network, a deep-belief network, and a
convolutional deep-belief network, a self-organizing map, a deep Boltzmann machine, and the like.
The navigation filter 210 may comprise suitable logic, circuitry, interfaces, and/or code that is configured to generate navigational data for the incoming signal based on the signal path classification and the one or more correlation signals. Examples of the navigation filter 210 may include, but are not limited to, a Kalman filter and the like.
The memory 216 may comprise suitable logic, circuitry, interfaces, and/or code that is configured to store the instructions executable by the processor 218. Examples of implementation of the memory 216 may include, but are not limited to, Electrically Erasable Programmable Read-Only Memory (EEPROM), Random Access Memory (RAM), Read Only Memory (ROM), Hard Disk Drive (HDD), Flash memory, Solid-State Drive (SSD), or CPU cache memory. The memory 216 may store an operating system or other program products (including one or more operation algorithms) to operate the navigation system 202.
The processor 218 includes suitable logic, circuitry, interfaces and/or code that is configured to execute the instructions stored in the memory 216. Examples of the processor 218 may include, but are not limited to a processor, a microprocessor, a microcontroller, a complex instruction set computing (CISC) processor, an application-specific integrated circuit (ASIC) processor, a reduced instruction set (RISC) processor, a very long instruction word (VLIW) processor, a central processing unit (CPU), a state machine, a data processing unit, and other processors or control circuitry. Moreover, the processor 218 may refer to one or more individual processors, processing devices, a processing unit that is part of a machine, such as the navigation system 202
In operation, the navigation system 202 comprises the receiver 204 that is configured to receive an incoming Global Navigation Satellite System (GNSS) signal. The incoming GNSS signal is received for further classification into one of three categories, that is line-of-sight (LOS) signals, non-line-of-sight (NLOS) signals and multi-path (MP) signals.
The navigation system 202 further comprises the one or more correlator units 206 that is configured to generate one or more correlation signals by correlating the incoming signal with a local signal replica. Depending on the type of the incoming signal (or the incoming GNSS signal), the one or more correlator units 206 are configured to generate different outputs or one
or more correlation signals. The one or more correlation signals from the one or more correlator units 206 directly reflect the difference between the LOS and NLOS signals.
The navigation system 202 further comprises the convolutional neural network (CNN) 208 that is configured to generate a signal path classification by processing the one or more correlation signals. The one or more correlation signals generated by the one or more correlator units 206 are directly processed using the CNN 208 for signal path classification. The direct processing of the one or more correlation signals of the one or more correlator units 206 for signal path classification results into an improved classification accuracy in comparison to a conventional signal classification method of using the features from signal strength, pseudo-range deltas and etc. The CNN 208 is described in more detail, for example, in FIG. 4.
The navigation system 202 further comprises the navigation filter 210 configured to generate navigational data for the incoming signal based on the signal path classification and the one or more correlation signals. After the signal path classification by use of the CNN 208, the navigation filter 210 is configured to estimate navigational data for the incoming signal based on the signal path classification and the one or more correlation signals.
In accordance with an embodiment, the receiver 204 comprises the intermediate frequency (IF) signal receiver 204A. The IF signal receiver 204A is configured to receive the incoming signal (or the incoming GNSS signal). By virtue of the IF signal receiver 204A, the navigation system 202 manifests simplicity and robustness in signal challenging environments.
In accordance with an embodiment, the navigation system 202 comprises N correlators for each channel with the space of 1/N chip and, among them, late, prompt and early correlators with space of 0.5 chip. For example, in an implementation the navigation system 202 comprises N correlators. The N correlators correspond to the one or more correlator units 206 of the navigation system 202. The N (e.g., 100) correlators are used for each channel with the space of 1/N (i.e., 1/100 = 0.01) chip. Among these N correlators, there are three correlators, namely, late, prompt and early correaltors which may have the spacing of 0.5 chip.
In accordance with an embodiment, an activation function of the CNN 208 is Rectified Linear Unit (ReLU). The rectified linear unit (ReLU) may be defined as the activation function of the CNN 208 which may provide an output that is exactly same to a given input if the given input is positive, otherwise, provides the zero output. The use of the ReLU enables simplicity and a further improvement in position accuracy of the navigation system 202.
In accordance with an embodiment, the navigation filter 210 is a Kalman Filter, wherein state variables of the Kalman Filter comprise position errors, velocity errors, clock bias errors and clock drift errors. The navigation filter 210 is configured to estimate navigational data for the incoming signal based on the signal path classification and the one or more correlation signals. The Kalman filter enables the navigation system 202 to have simplicity and a small computational power.
In accordance with an embodiment, the navigation system 202 further comprises the LOS projector 212 configured to calculate one or more signal parameters for a new local signal replica, based on navigational data and a line-of-sight projection. The navigation system 202 further comprises the signal generator 214 configured to generate the new local signal replica using the calculated signal parameters. After generation of the estimated navigation solution by use of the navigation filter 210 (i.e., the Kalman filter), the LOS projector 212 is configured to use the estimated navigation solution and the LOS projection to generate the one or more signal parameters, such as code phase and frequency. Thereafter, the signal generator 214 is configured to utilize the generated one or more signal parameters, such as code phase and frequency in order to generate the new local signal replica. The new local signal replica is further correlated with a future incoming GNSS signal.
In accordance with an embodiment, the signal parameters for the new local signal replica include one or more code phase errors and carrier frequency errors. The generated one or more signal parameters may include one or more code phase errors and carrier frequency errors which are further utilized to generate the new local signal replica.
In accordance with an embodiment, the LOS projector 212 is configured to project position and velocity errors and clock bias and clock drift from the navigation filter 210 to the LOS vector to calculate the code phase errors and carrier frequency errors. The LOS projector 212 is further configured to project the position and velocity errors as well as clock bias and clock drift errors from the navigation filter 210 to the LOS vector in order to generate the code phase errors and carrier frequency errors.
In accordance with an embodiment, a computer program comprising instructions which, when executed by the processor 218, cause the processor 218 to execute the method 100 of any preceding claim. The processor 218 of the navigation system 202 is configured to execute the method 100 (of FIG. 1). After executing the method 100, the processor 218 and hence, the navigation system 202 achieves all the advantages and technical effects of the method 100.
In accordance with an embodiment, a non-transitory computer readable medium storing instructions which, when executed by the processor 218, cause the processor 218 to execute the method 100 of any preceding claim. The processor 218 of the navigation system 202 is configured to execute the method 100 (of FIG. 1). After executing the method 100, the processor 218 and hence, the navigation system 202 achieves all the advantages and technical effects of the method 100.
Thus, the navigation system 202 is configured to classify one or more received signals into three classes, such as LOS, NLOS and MP signals with an improved classification accuracy. The navigation system 202 is further configured to provide an improved position accuracy in dense urban areas in comparison to a conventional navigation system. The conventional navigation system, such as a smartphone GNSS or another GNSS receiver that is able to receive signals from tens of satellites and track of in-view satellites real-time, therefore, it becomes difficult for the conventional navigation system to identify and classify the received signals in urban areas with required classification accuracy. However, in contrast to the conventional navigation system, the navigation system 202 provides identification and classification of the one or more received signals into LOS, NLOS and MP signals with significant classification accuracy and position accuracy in urban areas. Moreover, the navigation system 202 manifests robustness in signal challenging environments by executing the method 100 (of FIG. 1). The navigation system 202 comprises the CNN 208 to process the one or more correlation signals generated by the one or more correlator units 206 and automatically learn the features of the one or more correlation signals of the one or more correlator units 206 and classify them into the LOS, NLOS and MP signals. The navigation system 202 further includes training the CNN 208 and classifying the incoming GNSS signal into the LOS, NLOS and MP signals with an improved classification accuracy.
FIG. 3 illustrates various functional elements of a vector tracking loop (VTL), in accordance with an embodiment of the present disclosure. FIG. 3 is described in conjunction with elements from FIGs. 1 and 2. With reference to FIG. 3, there is shown a presentative illustration of a vector tracking loop (VTL) 300 that includes an incoming signal 302, a carrier replica 304, a code replica 306, a correlator 308, a code discriminator 310, a frequency discriminator 312, a navigation filter 314, a line-of-sight (LOS) projector 316, an estimated code phase and frequency 318.
The VTL 300 corresponds to the method 100 (of FIG. 1). The navigation system 202 (of FIG. 2) is configured to execute the VTL 300. The incoming signal 302 corresponds to a signal
received by the receiver 204 of the navigation system 202. The carrier replica 304 and the code replica 306 may also be referred to as a local signal replica. The correlator 308 coresponds to the one or more correlator units 206 (of FIG. 2). Therefore, the correlator 308 may include the early correlator, the prompt correlator and the late correlator. The navigation filter 314, and the LOS projector 316 correspond to the navigation filter 210 and the LOS projector 212 (of FIG. 2), respectively. The VTL 300 includes one or more stages for processing one or more incoming signals, such as a first stage 301 for processing the incoming signal 302.
In operation, the VTL 300 includes receiving the incoming signal 302 and correlating the incoming signal 302 with the carrier replica 304 and the code replica 306 (or the local signal replica). The correlator 308 is configured to correlate the incoming signal 302 with the carrier replica 304 and the code replica 306 and to generate one or more correlation signals. The one or more correlation signals include outputs such as, Ip, Qp generated by the prompt correlator, IE, QE generated by the early correlator and IL, QL generated by the late correlator. Further, the one or more correlation signals are processed by the code discriminator 310 and the frequency discriminator 312 to extract the code phase ( dt ) and Doppler frequency measurements (by) The extracted code phase ( dt ) and Doppler frequency measurements (by ) are used to classify the one or more correlation signals into the LOS, NLOS and MP signals. Further, the extracted code phase ( dt ) and Doppler frequency measurements (by) are provided to the navigation filter 314 to generate navigational data. The generated navigation solution is provided to the LOS projector 316 to estimate one or more signal parameters, such as code phase and frequency 318. The estimated code phase and frequency 318 are utilized to generate a new local signal replica. The new local signal replica is further correlated with a future incoming signal by use of the correlator 308 that results into generation of different one or more correlation signals. Different types of the incoming signal(s) may induce different correlation signals and this feature may be employed to classify the incoming signal into LOS, NLOS and MP signals. Thus, the VTL 300 includes processing the incoming signal 302 and generating navigational data using the correlator 308, the carrier replica 304, the code replica 306, the code discriminator 310, the frequency discriminator 312, the navigation filter 314 and the LOS projector 316, respectively.
In another embodiment, the one or more correlation signals may be directly processed by use of a CNN, (such as the CNN 208 of FIG. 2) and classified into the LOS, NLOS and MP signals. This is described in more detail, for example, in FIG. 4.
FIG. 4 is an illustration of a convolutional neural network (CNN) for use in a VTL, in accordance with an embodiment of the present disclosure. FIG. 4 is described in conjunction with elements from FIGs. 1, 2, and 3. With reference to FIG. 4, there is shown an illustration 400 that includes a convolutional neural network (CNN) 402 and a signal path classification 404. The CNN 402 includes two or more convolutional layers 406, a maxpooling layer 408 and a fully connected layer 410. The signal path classification 404 includes three types of signal, such as aNLOS signal 412, a LOS signal 414 and a MP signal 416.
The CNN 402 corresponds to the CNN 208 (of FIG. 2). The CNN 402 may be used in the VTL 300. The CNN 402 is configured to directly process the one or more correlation signals generated by the correlator 308 (of FIG. 3) based on a deep learning method. The CNN 402 is configured to automatically extract features from the one or more correlation signals (or baseband signal processing results) resulting in an improved classification accuracy of one or more signals received by the navigation system 202 (of FIG. 2). The direct processing of the one or more correlation signals by use of the CNN 402 results into generation of the signal path classification 404. Thus, the one or more correlation signals are classified either into the NLOS signal 412, the LOS signal 414 and the MP signal 416.
In accordance with an embodiment, the CNN 402 comprises two or more convolutional layers 406, wherein a first convolutional layer 406A comprises x filters with a kernel size value y and a second convolutional layer 406B comprises y filters with a kernel size value x. For example, in an implementation, the first convolutional layer 406A comprises x (e.g., 2) filters with a kernel size of value y (e.g., 4). The second convolutional layer 406B comprises y (e.g., 4) filters with a kernel size of value x (e.g., 2).
In accordance with an embodiment, the CNN 402 comprises the maxpooling layer 408 having n variables with a pooling size value n. The CNN 402 comprises the maxpooling layer 408 which may have the n (e.g., 2) variables with the pooling size of value n (e.g., 2).
In accordance with an embodiment, the CNN 402 comprises the fully-connected layer 410 employed to generate and select a probability of a class using a SoftMax function, wherein there are three class labels: Line-of-Sight, LOS, and None-Line-of-Sight, NLOS and Multi-Path, MP. The fully connected layer 410 is configured to use the softmax function to generate and select the probability of the class of the one or more correlation signals generated by the correlator 308 in the VTL 300. There are three class labels associated with the one or more correlation signals, such as the NLOS signal 412, the LOS signal 414 and the MP signal 416.
The signal path classification 404 embedded in the VTL 300 may support to improve robustness and position accuracy. Moreover, the use of the CNN 402 results into a further improvement in classification accuracy of one or more signals received by the navigation system 202 (of FIG. 2). However, in certain implementation scenarios, the CNN 402 is not required to be same, it may have more variations for embodiments of signal classification.
FIG. 5 is a graphical representation that depicts one or more correlators’ outputs of line-of-sight (LOS) signals, in accordance with an embodiment of the present disclosure. FIG. 5 is described in conjunction with elements from FIGs. 1, 2, 3, and 4. With reference to FIG. 5, there is shown a graphical representation 500 that includes an X-axis 502 that represents spacing between one or more correlator units 206 (of FIG. 2) in terms of chips. The graphical representation 500 further includes a Y-axis 504 that represents one or more outputs (or output signals) of the one or more correlator units 206.
The one or more correlator units 206 include an early correlator, a prompt correlator and a late correlator. An output of the early correlator (also represented as E) is represented by a first line 506. Similarly, outputs of the prompt correlator (also represented as P) and the late correlator (also represented as L) are represented by a second line 508 and a third line 510, respectively. Moreover, the graphical representation 500 includes a curve 512 that illustrates the outputs from the early correlator, the prompt correlator and the late correlator, collectively, as LOS signals, under a LOS condition. The LOS condition is that the code discriminator 310 (of FIG. 3) is configured to extract code phase errors accurately. Moreover, the graphical representation 500 illustrates that the early correlator, the prompt correlator and the late correlator have a spacing of 0.5 chip for each channel.
FIG. 6 is a graphical representation that depicts one or more correlators’ outputs of Non-line- of-sight (NLOS) signals, in accordance with an embodiment of the present disclosure. FIG. 6 is described in conjunction with elements from FIGs. 1, 2, 3, 4, and 5. With reference to FIG. 6, there is shown a graphical representation 600 that includes an X-axis 602 that represents spacing between one or more correlator units 206 (of FIG. 2) in terms of chips. The graphical representation 600 further includes a Y-axis 604 that represents one or more outputs (or output signals) of the one or more correlator units 206.
The one or more correlator units 206 include an early correlator (E), a prompt correlator (P) and a late correlator (L). The graphical representation 600 includes a curve 606 that illustrates the outputs from the early correlator, the prompt correlator and the late correlator, collectively,
as NLOS signals. On comparison with the graphical representation 500 that illustrates the outputs from the early correlator, the prompt correlator and the late correlator as the LOS signals, the NLOS signals of the graphical representation 600 performs a decrease in their magnitude values. Additionally, in case of the NLOS signals, the code discriminator 310 (of FIG. 3) has a code phase bias in its output.
FIG. 7 is a graphical representation that depicts one or more correlators’ outputs of constructive multi-path (MP) signals, in accordance with an embodiment of the present disclosure. FIG. 7 is described in conjunction with elements from FIGs. 1, 2, 3, 4, 5, and 6. With reference to FIG.
7, there is shown a graphical representation 700 that includes an X-axis 702 that represents spacing between one or more correlator units 206 (of FIG. 2) in terms of chips. The graphical representation 700 further includes a Y-axis 704 that represents one or more outputs (or output signals) of the one or more correlator units 206
The graphical representation 700 includes a first curve 706 that represents a direct signal, a second curve 708 that illustrates a reflected signal and a third curve 710 that represents a multi- path (MP) signal. Alternatively stated, the third curve 710 illustrates the outputs from the early correlator (E), the prompt correlator (P) and the late correlator (L), collectively, as MP signals. Generally, an MP signal is either a constructive or a destructive mixture of a direct signal and a reflected signal with different code delays. The third curve 710 represents a constructive mixture of the direct signal of the first curve 706 and the reflected signal of the second curve 708 with different code delays. Additionally, the direct signal of the first curve 706 and the reflected signal of the second curve 708 mixed into each other, in a constructive manner, resulting into a large magnitude of the MP signal of the third curve 710 Additionally, in case of the MP signals, the code discriminator 310 (of FIG. 3) has a code phase bias in its output. Therefore, the third curve 710 is not triangular in nature in comparison to the curve 512 of LOS signals (of FIG. 5) and the curve 606 of NLOS signals (of FIG. 6).
FIG. 8 is a graphical representation that depicts one or more correlators’ outputs of destructive multi-path (MP) signals, in accordance with an embodiment of the present disclosure. FIG. 8 is described in conjunction with elements from FIGs. 1, 2, 3, 4, 5, 6, and 7. With reference to FIG.
8, there is shown a graphical representation 800 that includes an X-axis 802 that represents spacing between one or more correlator units 206 (of FIG. 2) in terms of chips. The graphical representation 800 further includes a Y-axis 804 that represents one or more outputs (or output signals) of the one or more correlator units 206
The graphical representation 800 includes a first curve 806 that represents a direct signal, a second curve 808 that illustrates a reflected signal and a third curve 810 that represents a multi- path (MP) signal. Alternatively stated, the third curve 810 illustrates the outputs from the early correlator (E), the prompt correlator (P) and the late correlator (L), collectively, as MP signals. The third curve 810 represents a destructive mixture of the direct signal of the first curve 806 and the reflected signal of the second curve 808 with different code delays. Additionally, the direct signal of the first curve 806 and the reflected signal of the second curve 808 mixed into each other, in a destructive manner, resulting into a small magnitude of the MP signal of the third curve 810. Additionally, in case of the MP signals, the code discriminator 310 (of FIG. 3) has a code phase bias in its output. Therefore, the third curve 810 is not triangular in nature in comparison to the curve 512 of LOS signals (of FIG. 5) and the curve 606 of NLOS signals (of FIG. 6). Such characteristics (i.e. nature of the third curve 810) of the one or more correlator units 206 are the basis of classification of LOS or NLOS or MP signals.
Modifications to embodiments of the present disclosure described in the foregoing are possible without departing from the scope of the present disclosure as defined by the accompanying claims. Expressions such as "including", "comprising", "incorporating", "have", "is" used to describe and claim the present disclosure are intended to be construed in a non-exclusive manner, namely allowing for items, components or elements not explicitly described also to be present. Reference to the singular is also to be construed to relate to the plural. The word "exemplary" is used herein to mean "serving as an example, instance or illustration". Any embodiment described as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments or to exclude the incorporation of features from other embodiments. The word "optionally" is used herein to mean "is provided in some embodiments and not provided in other embodiments". It is appreciated that certain features of the present disclosure, which are, for clarity, described in the context of separate embodiments, may also be provided in combination in a single embodiment. Conversely, various features of the invention, which are, for brevity, described in the context of a single embodiment, may also be provided separately or in any suitable combination or as suitable in any other described embodiment of the disclosure.
Claims
1. A method (100) of generating navigational data, the method comprising: receiving an incoming Global Navigation Satellite System, GNSS, signal (302); generating one or more correlation signals by correlating the received GNSS signal (302) with a local reference signal; generating a signal path classification (404) by processing the one or more correlation signals using a convolutional neural network, CNN (208, 402); and generating navigational data based on the signal path classification (404) and the one or more correlation signals.
2. The method (100) of claim 1, wherein the incoming GNSS signal is received by an intermediate frequency, IF, signal receiver.
3. The method (100) of claim 1 or claim 2, comprising N correlators for each channel with a space of 1/N chip and, among them, late, prompt and early correlators with space of 0.5 chip.
4. The method (100) of any preceding claim, wherein the CNN (208, 402) comprises two or more convolutional layers (406), a first convolutional layer (406A) comprising x filters with a kernel size value y, a second convolutional layer (406B) comprising y filters with a kernel size value x.
5. The method (100) of any preceding claim, wherein the CNN (208, 402) comprises a maxpooling layer (408) having n variables with a pooling size value n.
6. The method (100) of any preceding claim, wherein an activation function of the CNN (208, 402) is Rectified Linear Unit, ReLU.
7. The method (100) of any preceding claim, wherein the CNN (208, 402) comprises a fully-connected layer (410) employed to generate and select a probability of a class using a SoftMax function, wherein there are three class labels: Line-of-Sight, LOS (414), and None- Line-of-Sight, NLOS (412) and Multi-Path, MP (416).
8. The method (100) of any preceding claim, wherein generating of navigational data is based on a navigation filter which is a Kalman Filter, wherein state variables of the Kalman Filter comprise position errors, velocity errors, clock bias errors and clock drift errors.
9. The method (100) of any preceding claim, further comprising: calculating one or more signal parameters for a new local signal replica, based on navigational data and a line-of-sight, LOS, projection; generating the new local signal replica using the calculated signal parameters.
10. The method (100) of claim 9, wherein the signal parameters for the new local signal replica include one or more code phase errors and carrier frequency errors.
11. The method (100) of claim 10, wherein the LOS projection projects position and velocity errors and clock bias and clock drift from the navigation filter to the LOS vector to calculate the code phase errors and carrier frequency errors.
12. A computer program comprising instructions which, when executed by a processor (218), cause the processor (218) to execute the method (100) of any pre-ceding claim.
13. A non-transitory computer readable medium storing instructions which, when executed by a processor (218), cause the processor (218) to execute the method (100) of any preceding claim.
14. A navigation system (202), comprising: a receiver (204) configured to receive an incoming Global Navigation Satellite System, GNSS, signal (302); one or more correlator units (206) configured to generate one or more correlation signals by correlating the incoming signal (302) with a local signal replica; a convolutional neural network, CNN (208, 402), configured to generate a signal path classification (404) by processing the one or more correlation signals; and a navigation filter (210) configured to generate navigational data for the incoming signal (302) based on the signal path classification (404) and the one or more correlation signals.
15. The navigation system (202) of claim 14, wherein the receiver (204) comprises an intermediate frequency, IF, signal receiver (204A).
16. The navigation system (202) of claim 14 or claim 15, comprising N correlators for each channel with the space of 1/N chip and, among them, late, prompt and early correlators with space of 0.5 chip.
17. The navigation system (202) of any one of claims 14 to 16, wherein the CNN (208, 402) comprises two or more convolutional layers (406), wherein a first convolutional layer (406A) comprises x filters with a kernel size value y and a second convolutional layer (406B) comprises y filters with a kernel size value x.
18. The navigation system (202) of any one of claims 14 to 17, wherein the CNN (208, 402) comprises a maxpooling layer (408) having n variables with a pooling size value n.
19. The navigation system (202) of any one of claims 14 to 18, wherein an activation function of the CNN (208, 402) is Rectified Linear Unit, ReLU.
20. The navigation system (202) of any one of claims 14 to 19, wherein the CNN (208, 402) comprises a fully-connected layer (410) employed to generate and select a probability of a class using a SoftMax function, wherein there are three class labels: Line-of-Sight, LOS (414), and None-Line-of-Sight, NLOS (412) and Multi-Path, MP (416).
21. The navigation system (202) of any one of claims 14 to 20, wherein the navigation filter (210) is a Kalman Filter, wherein state variables of the Kalman Filter comprise position errors, velocity errors, clock bias errors and clock drift errors.
22. The navigation system (202) of any one of claims 14 to 21, further comprising: an LOS projector (212) configured to calculate one or more signal parameters for a new local signal replica, based on navigational data and a line-of-sight projection; and a signal generator (214) configured to generate the new local signal replica using the calculated signal parameters.
23. The navigation system (202) of claim 22, wherein the signal parameters for the new local signal replica include one or more code phase errors and carrier frequency errors.
24. The navigation system (202) of claim 23, wherein the LOS projector (212) is configured to project position and velocity errors and clock bias and clock drift from the navigation filter (210) to the LOS vector to calculate the code phase errors and carrier frequency errors.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/EP2021/062850 WO2022237989A1 (en) | 2021-05-14 | 2021-05-14 | Gnss nlos/los/multipath classification using convolutional neural networks |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/EP2021/062850 WO2022237989A1 (en) | 2021-05-14 | 2021-05-14 | Gnss nlos/los/multipath classification using convolutional neural networks |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2022237989A1 true WO2022237989A1 (en) | 2022-11-17 |
Family
ID=75953857
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/EP2021/062850 Ceased WO2022237989A1 (en) | 2021-05-14 | 2021-05-14 | Gnss nlos/los/multipath classification using convolutional neural networks |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2022237989A1 (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116582174A (en) * | 2023-07-13 | 2023-08-11 | 武汉能钠智能装备技术股份有限公司四川省成都市分公司 | A satellite signal situation visualization method and system |
| EP4451017A1 (en) | 2023-04-21 | 2024-10-23 | Commissariat À L'Énergie Atomique Et Aux Énergies Alternatives | Method for gnss localization assisted by an artificial intelligence model |
| WO2025014487A1 (en) * | 2023-07-12 | 2025-01-16 | Greater Shine Limited | Apparatus and method of multi-path mitigation using a time-division architecture of a global navigation satellite system receiver |
-
2021
- 2021-05-14 WO PCT/EP2021/062850 patent/WO2022237989A1/en not_active Ceased
Non-Patent Citations (2)
| Title |
|---|
| MUNIN EVGENII ET AL: "Convolutional Neural Network for Multipath Detection in GNSS Receivers", 2020 INTERNATIONAL CONFERENCE ON ARTIFICIAL INTELLIGENCE AND DATA ANALYTICS FOR AIR TRANSPORTATION (AIDA-AT), IEEE, 3 February 2020 (2020-02-03), pages 1 - 10, XP033750969, DOI: 10.1109/AIDA-AT48540.2020.9049188 * |
| SUZUKI TARO ET AL: "NLOS Multipath Detection using Convolutional Neural Network", GNSS 2020 - PROCEEDINGS OF THE 33RD INTERNATIONAL TECHNICAL MEETING OF THE SATELLITE DIVISION OF THE INSTITUTE OF NAVIGATION (ION GNSS+ 2020), THE INSTITUTE OF NAVIGATION, 8551 RIXLEW LANE SUITE 360 MANASSAS, VA 20109, USA, 25 September 2020 (2020-09-25), pages 2989 - 3000, XP056016217 * |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP4451017A1 (en) | 2023-04-21 | 2024-10-23 | Commissariat À L'Énergie Atomique Et Aux Énergies Alternatives | Method for gnss localization assisted by an artificial intelligence model |
| FR3148094A1 (en) | 2023-04-21 | 2024-10-25 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | GNSS localization method assisted by an artificial intelligence model |
| WO2025014487A1 (en) * | 2023-07-12 | 2025-01-16 | Greater Shine Limited | Apparatus and method of multi-path mitigation using a time-division architecture of a global navigation satellite system receiver |
| CN116582174A (en) * | 2023-07-13 | 2023-08-11 | 武汉能钠智能装备技术股份有限公司四川省成都市分公司 | A satellite signal situation visualization method and system |
| CN116582174B (en) * | 2023-07-13 | 2023-11-21 | 武汉能钠智能装备技术股份有限公司四川省成都市分公司 | Satellite signal situation visualization method and system |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11719830B2 (en) | RTK vector phase locked loop architecture | |
| US8872700B2 (en) | GNSS surveying receiver with multiple RTK engines | |
| WO2022237989A1 (en) | Gnss nlos/los/multipath classification using convolutional neural networks | |
| US8325086B2 (en) | Methods and systems to diminish false-alarm rates in multi-hypothesis signal detection through combinatoric navigation | |
| JP2014228537A (en) | Receivers and methods for multi-mode navigation | |
| CN103238084A (en) | Method for calculating the position of GPS receiver, recording medium for storing program implementing the method, and GPS receiver | |
| US10746879B2 (en) | Method for efficiently detecting impairments in a multi-constellation GNSS receiver | |
| US20230417858A1 (en) | Wireless communication systems and methods | |
| US12013470B2 (en) | Server, satellite positioning system, and satellite positioning method | |
| Ge et al. | Mmwave mapping and SLAM for 5G and beyond | |
| Ziedan | Optimized position estimation in mobile multipath environments using machine learning | |
| Farej et al. | On the location accuracy of the multi-antenna GPS | |
| EP3607354B1 (en) | Gnss multipath mitigation using slope-based code discriminator | |
| Pereira et al. | Advancements in multipath mitigation for gnss receivers: Review of channel estimation techniques | |
| Henkel et al. | Real-time kinematic positioning for unmanned air vehicles | |
| Tang et al. | Assessment of direct position estimation performance in multipath channels | |
| CN113093250B (en) | Pseudo-range observation data restoration method, positioning information determination method and device | |
| US20070080856A1 (en) | Memory systems with column read to an arithmetic operation circuit, pattern detector circuits and methods and computer program products for the same | |
| US20250251517A1 (en) | Navigation solutions for global navigation satellite system receiver | |
| He et al. | A new robust adaptive fading unscented Kalman Filter-based vector tracking loop for mitigating GNSS NLOS reception | |
| Closas et al. | On the maximum likelihood estimation of position | |
| US20240288586A1 (en) | Multipath Suppression Device and Multipath Suppression Method | |
| CN104076370A (en) | Code tracking ring and code tracking method applicable to multipath signal | |
| WO2025196448A1 (en) | Method, apparatus and system for improving radio signal reception | |
| Giger et al. | Multisatellite tracking GNSS receivers in multipath environments |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21726097 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 21726097 Country of ref document: EP Kind code of ref document: A1 |