Autonomous vehicle startup announces availability of driving sensing solutions for purchase to OEMs
DeepRoute has released for sale its autonomous vehicle sensing solution, DeepRoute-Sense. DeepRoute is a CES 2020 Innovation Award Honoree.
Photo: DeepRoute
DeepRoute-Sense is an L4-level self-driving full-stalk solution that aims to enable the autonomous vehicle industry to achieve quicker sensor deployment. It includes a sleek, lightweight set-top box and sensor-fusion calibration service.
The roof box consists of GNSS, eight vehicle cameras, three lidars and a series of other sensors to help correspondence and data synchronization between the controllers.
DeepRoute has independently designed the mechanical structure of the roof box, which has outstanding diversion, heat dissipation and sealing functions. The set-top box is lightweight, small and with high impact resistance. With four tripods, the roof box can be easily mounted to the roof of different vehicle models for sensor deployment.
“The team at DeepRoute has worked hard on the development of DeepRoute-Sense and we are excited to finally share our technology with the industry,” said Shuang Gao, COO of DeepRoute. “By bringing this to the market, we are hoping to fuel progress within the industry and bring full vehicle autonomy to be one step closer to the masses.”
The solution uses a DeepRoute-developed in-vehicle camera that features anti-glare, anti-ghosting and highly reliable signal detection. Compared with industrial cameras, the camera comes at a lower cost, but also offers a higher dynamic range.
The roof box has been developed to accommodate different and extreme weather conditions, whether it be during intense sunlight or nighttime high-beam illumination, and can stably handle the exposure and avoid overexposure.
The set-top box includes a sensor data-processing device, the ADS Synchronous Controller. It is pre-processed and fused with the massive data from GNSS, cameras, lidars and other sensors through high-precision time and space synchronization. The ADS Synchronous Controller also supports DNN and SLAM hardware acceleration, which greatly increases computational efficiency.
The ZED-F9K module is designed to keep cars in their lanes. (Photo: u-blox)
The new u‑blox ZED-F9K GNSS and dead-reckoning module is designed to bring continuous lane accurate positioning to challenging urban environments.
The module offers both high-precision multi-band GNSS and inertial sensors. It combines the latest generation of GNSS receiver technology, signal processing algorithms and correction services to deliver down to decimeter-level accuracy within seconds, addressing the evolving needs of advanced driver-assistance systems (ADAS) and automated driving markets.
The ZED-F9K builds on the u‑blox F9 technology platform. Compatibility with GNSS correction services further improves positioning accuracy by compensating ionospheric and other errors.
The real-time kinematic (RTK) receiver module receives GNSS signals from all orbiting GNSS constellations. The greater number of visible satellites improves positioning performance in partially obstructed conditions, while increased satellite signals delivers faster convergence times when signals are interrupted.
Inertial sensors integrated into the module constantly monitor changes in the moving vehicle’s trajectory and continue to deliver lane accurate positioning when satellite signals are partially or completely obstructed, as is the case when the vehicle is in parking garages, tunnels, urban canyons or forested areas.
When satellite signals become available again, the module combines inertial sensor data with GNSS signals to deliver fast convergence times and high availability of the decimeter-level solution.
The result of this combination of the latest developments in GNSS technology, correction services and inertial sensing is a tenfold increase in positioning performance over standard precision solutions, according to u-blox.
By robustly providing lane accurate position information, the ZED‑F9K meets the needs of ADAS and autonomous driving applications, as well as head units and advanced navigation systems. The module’s accuracy and low latency also makes it suitable for automotive OEMs and Tier 1 automakers developing V2X (vehicle-to-everything) communication systems. By continuously sharing their location with other traffic participants, V2X systems contribute to increasing overall road safety and reducing traffic congestion.
“We designed the ZED-F9K to be a turnkey high-precision GNSS solution that caters to the needs of today’s and tomorrow’s connected cars,” said Alex Ngi, product manager, product strategy for dead reckoning, u‑blox. “The ZED-F9K is unique in that it integrates a multitude of technologies, from the GNSS receiver to the inertial measurement unit and relevant dead reckoning algorithms into a single device for which we can ensure performance throughout the customer product development cycle.”
CHC Navigation has launched the Alpha3D Mobile Mapping solution, which provides a unique combination of sensor technologies and the company’s core GNSS expertise.
The Alpha3D is a high-performance, vehicle-independent mobile mapping solution that can capture mass data in continuously changing world environments, enabling geospatial professionals to get work done quickly and more accurately to increase their return on investment.
The Alpha3D can be mounted on a variety of platforms, including different type of vehicles, trains, railway trolleys and boats. It rapidly and efficiently collects high density, accurate point clouds and powerful image data. It also adds extra information from additional sensors, such as a high-resolution camera, thermal camera, echo sounder or extra profiler.
The Alpha3D combines high-performance hardware — including a long range, ultra-high speed, precise laser scanner, high-resolution HDR panoramic camera in combination with an advanced GNSS receiver and high-precision inertial measurement unit (IMU) — in one instrument in a light weight, compact yet rugged design, according to George Zhao, CEO of CHC Navigation.
“All theses features keep Alpha3D as one of most innovative system in market today,” Zhao said.
“With Alpha3D, users can collect more data faster and reduce time in the field more than 40% compared to traditional surveying instruments,” said Andrei Gobb, product manager of Mobile Mapping Solutions. “By combination of point clouds and high-resolution images, as well as information from additional sensors, there is no need to return to site for remeasurement.”
Growing awareness of the vulnerabilities of GNSS signals — weak, unencrypted and easily jammed or spoofed — have made GNSS less important to steering the driverless vehicle. What’s up with that?
Extensive visual map databases are being created that, when coupled with cameras, radars and lidars on the vehicle and processed by artificial intelligence (AI) algorithms, enable the driverless car to be steered much the way humans drive. Pattern recognition processing in the vehicle allows it to “read” street signs and recognize landmarks, registering its position on the map.
This is the way a person drives in his or her home town, where they always know their orientation and don’t need GNSS. The AI processing “brain,” with access to huge map databases, either through local storage or a network connection, will always be in its familiar home environment: continuously knowing its own position and properly oriented for navigation.
So, will GNSS become unnecessary in the car of the future? Probably not.
First, no one method of navigation is foolproof, and today, GNSS is our primary method of navigating our cars. It is a cost-effective, accurate way of determining position in real time, and with the integration of inertial navigation sensors to handle cases when GNSS is intermittently unavailable, it is improving.
Second, it is not just the car itself that needs to know its location for navigation, but also others outside the car. Ride-sharing apps like Uber and Lyft, car-sharing, usage-based insurance apps, dynamic toll charging, and parking apps all depend on knowing where the car is at all times. GNSS offers sufficient accuracy for all these apps by providing location coordinates. Therefore, a GNSS receiver will most likely remain in the car.
The case for jamming and spoofing
Recall, however, that one of the weaknesses of GNSS is its open, unencrypted format. It is becoming increasingly easier to spoof these signals. Car-sharing, usage-based insurance and dynamic toll charging apps all create a monetary incentive for fraud that can be implemented with a spoofer. For example, a car in a car-sharing network can report a fake position indicating that it is safely parked in a secure area — while in reality, a thief is busy driving it away.
(Image: Orolia)
Let’s assume that all wireless connections to and from the car are secure. This is a reasonable assumption, although recently there have been demonstrations of carjacking via unsecure remote links. Standard SSL encryption, similar to what is used to enter credit card information on the internet, works well here. We have both the awareness and the technology now to prevent such carjackings from ever reoccurring.
However, even if communication links are secure, a GNSS spoofer in the car can fool the GNSS receiver into reporting a fake “safe” position right as it is being stolen. The same is true for insurance or toll apps. And the fraud does not have to be sophisticated. A simple, low-cost jammer can deny proper position just long enough to skirt payment. A secure location method is needed.
Other signals for localization
What would an ideal signal for localizing a driverless car look like?
It needs to be much stronger than GNSS so it is not easily jammed.
It needs to be encrypted so it cannot be spoofed.
It must be ubiquitous, available worldwide.
It must be reliable and robust — with 99.999% availability or better.
It must be practical and priced for the mass-market automotive application.
Though accuracy is always important, the signal used for localization does not have to be as accurate as GNSS is today. Accuracy to 10s of meters is sufficient for all these applications needing fraud protection since it would not be used for steering the car, but rather, only localization. It can also be used in tandem with GNSS to authenticate a reported position when a GNSS signal is available.
Such a signal is available today, worldwide: STL (Satellite Time and Location). Carried on the Iridium satellites, it is a special purpose signal that is more than 30 dB stronger than GNSS and encrypted for anti-spoof protection. Decoding of this signal is available via a subscription model to users.
Here’s how it would work using a car-sharing example. A group of people subscribe to a car-sharing service that provides X number of cars to serve Y number of people, where X is less than Y. The service optimally schedules people when and where a car will be available. The service provider needs to know the whereabouts of the cars at all times to maximize utilization of the fleet, so every car has a GNSS receiver in it.
But to ensure the authenticity of these reports, they also have a secure localization receiver. This receiver is assigned a unique ID that is authorized to decode the encrypted signal. (Eventually, we expect this receiver and GNSS to converge into one device much the way multi-GNSS receivers operate today).
If a position report does not agree with the authentic localization report, the fleet manager can act to recover the car immediately. Insurance providers who cover secure localization-equipped cars would also give preferential rates as an anti-theft device.
(Image: Pavel Vinnik/Shutterstock.com)
Could PRS do it?
The new Public Regulated Service (PRS) from Galileo is encrypted and could provide a similar level of authentication protection, if made available. However, it is still a weak GNSS signal that can easily be jammed. Of course, any signal can be jammed, even one that is a thousand times stronger than GNSS.
However, given the robust nature of a very strong signal, the managing system that is monitoring the cars — the insurance, toll or car-sharing system, for example — can alarm upon the loss of positioning information. Such alarms on a GNSS-only car would be frequent and often erroneous due to simple fades, yielding so many false alarms that it would render the monitoring system useless. But a loss of both the strong localization signal and GNSS would likely be considered suspicious and result in a valid alarm.
GNSS navigation is truly one of the great advances of the modern era, giving us precise time and location for any place in the world. Its two major weaknesses — that it is easy to jam and spoof — can be overcome by augmenting it with other stronger encrypted signals, such as STL, providing robust jam-resistance and positive authentication.
Sony Corporation has developed two new products, the Spresence main and extension boards for internet of things (IoT) applications, equipped with a smart-sensing processor.
The main board uses a multi-CPU structure equipped with Sony’s GNSS receiver (GPS+GLONASS) and high-res audio codec. A variety of systems for diverse applications — drones, smart speakers, sensing cameras and other IoT devices — can be built by combining the boards and developing the relevant applications.
Technological information about the products’ software and hardware is publicly available via open platform, allowing for a wide range of developmental possibilities and further expanding the market.
Positioning information and audio input/output functions are expected to become increasingly important in the expanding IoT market. The main board operates on low power and features a smart-sensing processor, with a built-in GNSS receiver and an audio codec that supports high-resolution audio sources. It employs a hexa-CPU, multi-core configuration that makes it easy for anyone to create high-performance, highly versatile applications.
For example, the new board can be used to control a drone using GPS positioning technology and a high-performance processor, voice-controlled smart speakers, low-power consumption sensing cameras and other IoT devices. It can also be combined with various sensors for use in systems that detect errors in production lines on the factory floor.
The IoT boards will be displayed at the Maker Faire Bay Area 2018 starting May 18 in San Mateo, California, and on Aug. 4-5 at the Maker Faire Tokyo 2018 in Tokyo, Japan.
Lane errors in a three-lane road, giving lane determination (yellow triangle). (Photo: Pavel Vinnik/Shutterstock.com)
A lane-keeping system uses a sensor-fusion engine integrating GPS and an IMU with a two-stage map-matching algorithm. The system does not require explicit lane-level geo-referencing, saving massive storage required for lane-level spatial reference information, and reduces the computational complexity of the map-matching algorithm.
By Mohamed M. Atia, Carleton University and Allaa Hilal, Intelligent Mechatronics Systems
Lane determination is an important feature of advanced automotive navigation and guidance systems. It can be used in advanced driving assistance systems (ADAS), lane-departure warnings, and self-driving cars to perform lane-level, turn-by-turn guidance and control. It is also valuable information for telematics applications such as usage-based insurance. Lane-estimation systems have been dominated by vision and infrared sensors. Light detection and ranging (lidar) has also been used as a lane-determination technique. Those systems depend on visually recognizable features and landmarks that may not be available in some areas due to weather conditions or unstructured environments.
In addition, visual data processing may need specialized accelerators and parallel computing platforms to satisfy real-time constraints. To explore other alternatives, several research projects have started to investigate the feasibility of using low-cost global positioning and navigation technologies such as GPS, micro-electromechanical systems (MEMS) inertial measurement units (IMU) and geographical information systems (GIS) as an alternate lane-determination technology. However, most current systems have two main drawbacks: they use high-end RTK GPS, which suffers from coverage issues, and they use explicit lane geo-referencing, which leads to increased storage and processing.
Here we investigate the feasibility of using standard GPS fused with low-cost MEMS-IMU and a road network that includes lane information but not explicitly storing geo-referenced lane-level links.
The accuracy of Standard Positioning Service (SPS) GPS is within 3.351 meters (m) with a 95 percent confidence level. Figure 1 shows the results of standard single-point positioning test for a stationary receiver.
FIGURE 1. Standard GPS 2D position accuracy in a stationary test. (Figure: Mohamed M. Atia and Allaa Hilal)
The standard lane width in North America is approximately 3.6 m, requiring an unbiased precise positioning solution of much less than 1.8 m. If a safety margin of 50% is considered, unbiased precise positioning of less than 0.9 m is needed. Therefore, a standard SPS GPS technology may not be precise enough to accurately determine the vehicle’s lane. Advanced precise positioning technology like differential GPS (DGPS) can be used with high-resolution lane-level maps to achieve the lane determination.
However, these techniques may require additional cost/infrastructures and extra processing. To target a lower cost lane-determination system, this work suggests the fusion of measurements from a standard GPS, MEMS IMU and road-level network.
The work includes a sensor-fusion engine that is developed to integrate GPS and IMU using a loosely coupled extended Kalman filter (EKF). Then, a two-stage map-matching algorithm using a Hidden-Markov-Model (HMM) and a least-squares (LS) regression is developed.
The system does not require explicit lane-level geo-referencing; consequently, it saves massive storage required to save explicit lane-level spatial reference information, and it reduces the computational complexity of the HMM algorithm by reducing the number of road segments the HMM needs to decode. The overall system is illustrated in Figure 2.
FIGURE 2. Illustration of the proposed system. (Figure: Mohamed M. Atia and Allaa Hilal)
PROBLEM DEFINITION
A geometric illustration of the problem is shown in Figure 3. The road-network map is represented as a set of connected segments. Each road segment is defined by a straight line segment with a start position and end position. Curved roads are approximated by a sufficiently large number of straight line segments. Based on this notation and geometric illustration, the estimation problem that this article is addressing is the determination of the lane on which the vehicle is moving.
FIGURE 3. Illustration of the lane determination problem. (Figure: Mohamed M. Atia and Allaa Hilal)
Map-Matching with Hidden-Markov Model. The simplest map-matching method, point-to-curve-matching, is performed by searching for the nearest road segments within a threshold from the current vehicle’s position. The distance is calculated between the vehicle’s position and its projection on the map segment. However, this approach is sensitive to state estimation errors, and it fails at intersections, joins, branches or dense parallel roads. For example, Figure 4 shows a situation where biased GNSS position measurements exist, and the wrong map segment is selected because of the pure dependence on the distance metric only (for instance, D1 is less than D2).
FIGURE 4. Wrong map-segment selection in intersection. (Figure: Mohamed M. Atia and Allaa Hilal)
To avoid these errors and to improve map-matching accuracy, the matching criteria must include several constraints such as map topology (connectivity), vehicle dynamics, road geometry and legal direction of motions. In this work, to consider these constraints, we keep a recent portion of the vehicle motion history and use it in the matching criteria. This strategy is known as curve-to-curve matching.
To process a noisy stream of data, the HMM algorithm is used. A Markov model is a stochastic model that describes a sequence of states. The transition from one state to another can be modeled by a conditional transition probability.
If the states are not directly observable (hidden) but can be indirectly observed through a sequence of outputs, the process is called a Hidden Markov Process. The HMM in this case is characterized by the transition probability and an emission probability that represents the probability that a given state generates a certain observable.
Both transition probability and emission probability constitute the Bayesian network of HMM. A fundamental problem of HMM is that, given a sequence of outputs, what is the best sequence of states that explains the observed outputs? This problem is solved by selecting the sequence of states that maximize the HMM probability.
This estimation process, called decoding, is solved using the Viterbi algorithm. In the proposed system, the hidden states represent map links, and the observable outputs are the vehicle poses. To develop a robust map-matching framework, the vehicle pose history, roads geometry, and map topology constraints must be considered. Therefore, the emission and transition probabilities of an HMM are formulated such that they reflect all of these constraints. The Bayesian network of the HMM for our system is shown in Figure 5. The vehicle states (poses) is obtained from the INS/GNSS filter described shortly.
FIGURE 5. Hidden Markov model for vehicle’s state map-matching. (Figure: Mohamed M. Atia and Allaa Hilal)
In the proposed work, the length of the processed buffer of the vehicle’s state is determined based on the traveled distance. The aim is to accumulate a reasonable geometric knowledge about the trajectory segment that enables the HMM to accumulate enough geometric and topological constraints to be able to select the correct sequence of road segments in difficult intersections, joins and exit/entry roads.
EKF GNSS/INS SYSTEM
The navigation problem can be modeled as a dynamic system of states vector x(t) as follows:
(1) (2)
(Figures: Mohamed M. Atia and Allaa Hilal)
where f(.) is a nonlinear dynamic model, w(t) is a stochastic system noise vector, u(t) is a control signal vector that triggers the transition from current state to a future state, y(t) is external measurements vector (observables), h(.) is a nonlinear measurement model and v(t) is a stochastic measurement noise vector. Using first-order Taylor series approximation, (1) and (2) can be linearized as follows:
(3) (4)
(5)
(6)
(Figures: Mohamed M. Atia and Allaa Hilal)
A Kalman filter calculates an optimal estimation of provided that w(t) and v(t) are zero-mean Gaussian noise vectors with covariance matrices defined by:
(7)
(8)
and δx is the error vector with zero-mean and a covariance matrix P defined by:
(9)
Using zero-hold discretization where derivative is approximated by:
(10)
where T is the sampling time, equations involving HMM probability can be written in discrete form as follows:
(11)
(12)
The optimal estimation of the error vector, δxk, given measurements, yk, is calculated using two steps: prediction,
(13)
(14)
and update,
(15)
(16)
(17)
(Figures: Mohamed M. Atia and Allaa Hilal)
In INS/GNSS systems, the dynamic system state transition (x(t)) is triggered by IMU sensors (accelerometer and gyroscopes) while GNSS measurements are used as observables (y(t)). The observables update in our case is GNSS position and velocity. Therefore, the measurement error model is defined as follows:
(18)
where H is defined as follows:
(19)
Lane Estimation. When the road segments have been accurately selected based on the filtered vehicle’s pose, the projection of the vehicle’s positions on segment lanes can be easily calculated knowing the lane widths and number of lanes. The sum of squared errors for each lane is then calculated by:
(20)
where N is number of epochs, and pv is the projection of vehicle’s position on lane. The lane associated with the minimum error is selected as the designated lane.
(Figures: Mohamed M. Atia and Allaa Hilal)
Lane-Change Detection. If a lane change occurred within the processed buffer of data, the least-squares regression will not converge to the correct lane. Therefore, the buffer needs to be partitioned at the lane-switch locations. Thus, a lane-change detection module is developed. In this work, a lane-change detection method is designed based on capturing the patterns of the vehicle’s orientation and raw gyroscope measurements. The heading and raw gyroscope measurements during lane changes are shown in Figure 6 and Figure 7.
FIGURE 6. Vehicle’s heading during lane change to left. (Figure: Mohamed M. Atia and Allaa Hilal)FIGURE 7. Vehicle’s gyroscope measurements during lane change to left. (Figure: Mohamed M. Atia and Allaa Hilal)
The general pattern that the lane-change module detects is a peak or a valley in azimuth accompanied by a peak/valley or valley/peak sequence in the gyroscope measurements. To detect peaks and valleys, the standard deviation of a moving window of data is calculated and compared to a peak/valley threshold. If both gyro and azimuth peak/valley sequence are consistent and matched with the pattern described above, a lane change is declared.
Two algorithm phases of processing are then applied:
Acquisition Phase. GNSS and IMU measurements are fused in the main EKF, and HMM map-matching is performed and a lane is estimated. The innovation sequence of the main EKF, which is the difference between the predicted state and GNSS updates, is calculated over a buffer of data. If the innovation sequence is within a small threshold and no lane change has been detected, the acquisition phase is concluded and the tracking phase begins.
Tracking Phase. Two EKF filters are initiated. One EKF accepts position updates from the projection of the vehicle’s position on the selected lane, and the other EKF accepts GNSS position updates only. A discrepancy measure is evaluated between the two EKF instances for a short window of time. If this discrepancy measure is higher than a threshold, a temporary GNSS deviation is assumed and the system keeps reporting the current lane as the designated lane. If GNSS measurements started to be centered again on the new lane, a lane change is confirmed and the output of the first EKF instance will be the correct state. Otherwise, this lane change is declared as false and the second EKF output is the correct output. The overall block diagram of the proposed system is shown in Figure 8.
FIGURE 8. Overall block diagram of the proposed system. (Figure: Mohamed M. Atia and Allaa Hilal)
TESTS AND RESULTS
The proposed system has been tested on a computer connected to a GNSS receiver and an automotive MEMS-grade IMU, and road-network map data. A GPS-enabled camera was installed to capture video of the experiment, to be used as a ground truth to verify the results of our algorithms. Sensor specifications are given in Table 1 and Table 2. The effect of level arm (distance between IMU and GNSS antenna) was not considered in this implementation.
TABLE 1. GNSS receiver accuracy. (Table: Mohamed M. Atia and Allaa Hilal)TABLE 2. IMU specifications. (Table: Mohamed M. Atia and Allaa Hilal)
Three testing trajectories were collected during July 2015 through Highway 400 from Wilson Avenue in the south to Davis Drive in the north. Approximately 65 kilometers of trip data was collected. The data included some urban areas but was mostly open sky. It also included challenging road intersections and road joining/branching points. The experimental setup was designed such that the system automatically started when the vehicle’s engine was turned on. A Linux OS was installed on the gigabyte computer box, and a data acquisition firmware was configured to automatically begin when the computer starts. Measurements from the GNSS receiver at 1 Hz and the IMU at 50 Hz were synchronized on the computer. The main algorithm including GNSS/INS fusion and map-matching was developed in native ANSI C language for efficient processing. Original raw IMU data was set to 50 Hz down-sampled to 5 Hz. Within this interval, the real-time system could fetch map information from a cached database file, perform basic prediction steps and implement the forward calculation of a Viterbi algorithm (including calculation of emission and transition probabilities) that is needed for the HMM map-matching step.
Lane-Determination Results. The lane estimation results were logged and time-tagged. Using the video recording, the ground truth lane-level solution was visually inspected and manually recorded in a file. Since both the video camera and the proposed INS/GNSS/maps systems log data tagged by GPS time, synchronization between ground truth and the estimated lane were possible. The estimated lanes were visually inspected record by record and results were saved in an Excel sheet. The results were written into a time-tagged file where each row can be easily visually inspected by looking at the portion of images corresponding to the same time-tag. The time-tag used was the UTC-time contained in the NMEA GNSS raw measurements. The overall accuracy of the proposed system in lane determination is shown in Table 3.
TABLE 3. Lane-estimation accuracy. (Table: Mohamed M. Atia and Allaa Hilal)
Figure 9 and Figure 10 show example snapshots of the visual inspection software tool developed to evaluate the accuracy of the system. As can be seen in the figures, an image of the road that indicates the correct lane is displayed in the upper graph, while the estimated lane information is displayed along with road information including lane errors in the lower graph. Figure 10 shows that the system can identify the correct lane when the number of lanes is increased.
FIGURE 9. Lane errors in a three-lane road. (Figure: Mohamed M. Atia and Allaa Hilal)FIGURE 10. Lane errors in a four-lane road. (Figure: Mohamed M. Atia and Allaa Hilal)
CONCLUSION
This work described a low-cost lane-level positioning system using a conventional GNSS receiver, MEMS IMUand commercially available road-level network without the need for explicit spatial storage of lanes. The research used a conventional GNSS receiver and MEMS IMU with a computationally efficient two-stage HMM-based map-matching algorithm that avoids the explicit use of lanes as hidden states, which significantly reduces the size of the HMM network and consequently enhance its real-time performance. The proposed system provides an alternative lane determination method without the need for computationally expensive vision/lidar methods that may fail in dark, foggy or dynamically changing environments. The work showed extensive experiments under different road sections, showing an average lane-determination accuracy of 97.14%.
ACKNOWLEDGMENTS
This work was first presented at ION International Technical Meeting, January 2018.
MANUFACTURERS
The system comprises an Intel Celeron N2807 1.58-GHz Mini PC connected to a u-blox EVK-7P kit GNSS receiver and an automotive MEMS-grade IMU 3D space sensor IMU from YOST Labs, and road-network map data from HERE. A GPS-enabled HP f310 car camcorder captured video.
MOHAMED M. ATIA received a Ph.D. in electrical and computer engineering from Queen’s University at Kingston. He is assistant professor and founder/director of the Embedded Multi-sensor Systems research laboratory in Carleton University, Ontario, Canada.
ALLAA HILAL received a Ph.D. degree in electrical and computer Engineering from the University of Waterloo. She is director of the innovation and emerging technology department at Intelligent Mechatronic Systems, a connected-car company based in Waterloo, Canada.
Intelligent vehicles and smart devices could gain more accurate location awareness by fusing GNSS and Wi-Fi signals. A test for this is the focus of an Innovate UK project led by Spirent Communications and involving the Warwick Manufacturing Group (WMG) at the University of Warwick.
The £694k Enhanced Assured Location Simulator Leveraging Wi-Fi and GNSS Sensor Fusion (ELWAG) project will seek to develop and test the pioneering hybrid Wi-Fi and GNSS location system in a cost-effective, repeatable and safe environment so that manufacturers can verify its performance.
International Manufacturing Centre at WMG. (Photo: WMG)
Researchers at WMG, led by Matthew Higgins, will play a significant role in the project. They will take physical layer measurements of both Wi-Fi and GNSS signals in autonomous vehicle scenarios in and around the University of Warwick campus and the local urban road network.
The measurements will then assist in Spirent’s development of an RF propagation model that will overlay RF effects on its Wi-Fi Access Point simulator.
WMG researchers will then perform RF validation and verification activities around the developed model, to provide a level of assurance on its performance.
“The safety and functional assurance of future autonomous vehicles will be one of the many critical paths to large consumer adoption,” said Higgins, who is an associate professor in the intelligent vehicles group at WMG. “Through this project, we will contribute towards providing innovative solutions to the challenges of using sensor fusion in this testing context.”
“This is a highly technical project, which will require a holistic understanding of the signal propagation characteristics between satellites, infrastructure and vehicles. The results will impact future autonomous testing methodologies,” said Erik Kampert, senior research fellow at WMG.
The ELWAG project will run for 18 months, and also involves Chronos Technology.
Project background. Many devices currently rely on a singular location technology (typically GPS), which is one type of the wider eco system of GNSS. These systems, whilst becoming more capable, still suffer at times from the user’s environment — typically in urban areas where buildings and other cityscape features interfere with the signal.
The urban environment is, however, where most users need to know their location to the highest level of accuracy, due to increasing population or device density. Wi-Fi signals exist almost universally within dense urban areas, so there is a possibility of fusing these signals with the GNSS signals to identify one’s location very accurately.
“Currently Wi-Fi access point plus GNSS simulation can only be achieved in an ad hoc manner and does not allow for the testing of moving vehicles, multipath effects, insertion of data errors, spoofing and above all controlled, repeatable testing,” said Mark Holbrow, director of engineering and product development at Spirent’s positioning business unit.
“In the autonomous vehicle sector location accuracy can vary by up to 5 meters, which is unacceptable from a safety perspective. Bringing that accuracy down to 30 centimeters through sensor fusion will have substantial implications for autonomous navigation.”
Self-aware smart devices. The need for smart devices to have a highly accurate self-awareness of their own location, and the location of other smart devices around is becoming increasingly important.
In applications such as autonomous vehicles and transport systems, accurate location awareness is an obvious operational requirement for their safe operation in and around other vehicles, pedestrians or infrastructure.
In the personal devices space, smartwatches, phones and health monitoring and exercise aids are all striving to be able to make a judgment of the user’s state based upon location.
In the emergency and security services space, knowing the location of people and objects is also increasingly important as to target response capabilities effectively.
GNSS receiver manufacturer Septentrio is introducing its AsteRx SB at two industry shows: Expomin in Santiago, Chile (April 23-27), and Intermat in Paris, France.
According to the company, the AsteRx SB delivers Septentrio’s quad-constellation real-time kinematic (RTK) positioning in a low-power, IP68 compliant housing. Built around the AsteRx-m2 GNSS receiver engine, the AsteRx SB features Wi-Fi, Bluetooth, USB, Ethernet and serial connectivity.
Septentrio’s GNSS+ suite of positioning algorithms converts difficult environments into good positioning: LOCK+ technology to maintain tracking during heavy vibration, APME+ to combat multipath, and IONO+ technology to ensure position accuracy during periods of elevated ionospheric activity.
The AsteRx SB also features the AIM+ interference mitigation and monitoring system, which can suppress the widest variety of interferers, from simple continuous narrowband signals to the most complex wideband and pulsed jammers.
AIM+ interference monitoring and mitigation system
L-band PPP, RTK, scalable accuracy
High-update rate, low-latency positioning
Base and rover operation
Bluetooth, Wi-Fi, Ethernet, serial and USB communications
Whether exposed to the elements or inside a vehicle cab, operating alone or as a core component of a sensor-fusion system, the AsteRx SB is straight-forward to set up and integrate into any new or existing application. Using Wi-Fi or micro USB, the AsteRx SB can be configured and monitored using any device with a web browser.
“We believe the AsteRx SB is the best all-rounder on the market today. We’ve produced a small and low-power device with zero compromise on performance,” said Gustavo Lopez, product manager at Septentrio. “From machine control to sensor-fusion applications, manned or unmanned, the compact size and low power of the AsteRx SB along with its range of communications options make it ideal for any project requiring reliable high-precision positioning.”
At Intermat in Paris, Septentrio will exhibit at Booth 6H-041 and at Expomin in Santiago, Chile, at Booth 1K-30.
When a platform’s mission requires maneuvering among different environments, transitions between these environments may mean that a single method cannot solve the full positioning, navigation and mapping problem.
This article describes an integrated navigation and mapping design using a GPS receiver, an inertial measurement unit, a monocular digital camera and three short-to-medium range laser scanners.
By Evan T. Dill and Steven D. Young, NASA Langley Research Center, and Maarten Uijt de Haag, Ohio University
An unmanned aircraft system (UAS) traffic management system (UTM) is an ecosystem for coordinating UAS operations in uncontrolled airspace, particularly operations under 400 feet altitude involving small- to mid-sized vehicles. In this domain, information services regarding the state of the airspace will be provided to UAS operators.
In addition, UTM would coordinate and authorize access to airspace for particular time periods based on requests from the operators. The Federal Aviation Administration would maintain regulatory and operational authority, and may for example, issue changes to constraints or airspace configurations to operators via this information service. However, there is no direct control from air traffic control personnel (such as “climb and maintain 300 feet” or “turn left, heading 150”).
As with visual flight rules operations of manned aircraft in uncontrolled airspace, under UTM the onus is on the vehicle operator to assure the flight system provides adequate performance with regard to communication, navigation and surveillance during flight. The vehicle/operator is responsible for avoiding other aircraft, terrain, obstacles and incompatible weather. UTM information services do not yet include, for example, information from an alternative positioning, navigation and timing system that may be needed for operations conducted in GPS-degraded environments (such as near buildings or other structures). This is the challenge being addressed by the integrated navigation concept described in this article. Other concepts are also being considered and developed for alternate, and unique, UAS missions and flight environments.
The method presented here employs a monocular camera as part of a multi-sensor solution that continuously operates throughout and between outdoor and structured indoor environments. For this work, an indoor environment is considered “structured” if its walls are vertical and remain approximately parallel, while the floor is either roughly flat or slanted.
In this type of environment, GPS is typically only sparsely available or not available at all. Hence, in our proposed navigation architecture, additional information from a camera and multiple laser range scanners (not the focus of this article) are used to increase the system’s positioning, navigation and mapping availability and accuracy in a GPS-challenged indoor environment. Figure 1 shows the target operational scenario, and Figure 2 the equipped multi-copter used in this research.
Figure 1. Operational scenario: open-sky environment, transition to indoor and indoor environment.Figure 2. Hexacopter sensors and sensor locations.
Figure 3 shows a block diagram for the methodology implemented in this research, with the elements related to monocular camera methods highlighted. When assessing the capabilities of each of the sensors used in the work, only the inertial sensor produces data that is solely dependent on the motion of the platform and local gravity and is more or less unaffected by its surroundings. Therefore, the inertial is chosen to be the primary sensor for this method.
The mechanization integrates the measurements from GPS, the laser scanners and the monocular camera through a complementary Kalman Filter (CKF) that estimates the errors in the inertial measurements and feeds them back to the inertial strapdown calculations. For this inertial error estimation method to function properly, pre-processing methods must be implemented that relate the sensors’ observables to the inertial measurements.
Here we describe the processing techniques necessary to relate measurements from a monocular camera to measurements from the inertial measurement unit (IMU). Then we show how these techniques are used in the broader GPS/optical/inertial mechanization and present testing results.
Figure 3. Monocular camera components of a broader mechanization.
2D Monocular Camera Methods
To process data from the camera, we first perform feature detection and tracking of both point features and line features. Specifically, elements from Lowe’s Scale Invariant Feature Transforms (SIFT) are used to track point features, which are in turn used to obtain estimates of the camera’s rotational and un-scaled translational motion using structure from motion (SFM) based methods. To resolve the ambiguous scale factor, a novel scale estimation technique is employed that uses data from the platform’s horizontally scanning laser. This technique as well as algorithms that produce a 3D visual odometry solution are presented below.
SIFT Point Feature Extraction. To aid in determining camera motion, SIFT has been used as a way of identifying local features that are invariant to translation, rotation, and image scaling. This technique yields 2D point features that are unique to their surroundings and readily identified and associated across a set of sequential camera images. Each key location and its surroundings are analyzed, resulting in a descriptive 128-element feature vector, known as a SIFT key. Example results of the SIFT key identification process are shown in Figure 4.
Figure 4. SIFT feature identification.
Based on the results of the SIFT feature extraction process from two image frames, a feature association function is performed using the feature vectors. For this work, a two-step procedure is implemented.
First, SIFT keys are associated using a matching procedure. Example results of this process are shown in Figure 5, where it can be observed that incorrectly associated features may result from this process. To remove these artifacts, inertial measurements are utilized to ensure the correctness of the associations.
Figure 5. SIFT matching results between consecutive image frames.
Using a triangulation method, prospective associations are used to crudely estimate each feature’s 3D position with respect to the previous frame. While this triangulation method yields 3D data, it is of poor quality, and is therefore only used to obtain rough approximations that are sufficient for association purposes, but insufficient for navigation purposes.
Once transformed to a 3D reference frame, the projected distances of each feature are compared with one another, and prospective associations that produce significantly different depths than surrounding points are eliminated. Example results of this filtering process can be seen in Figure 6.
Figure 6. Point feature association after inertial based miss-association rejection.
In future implementations, the ORB feature will be evaluated, as its performance is expected to be more than two orders of magnitude faster than SIFT.
Wavelet Line Feature Extraction. To implement the scale factor estimation technique described in a later section, it is necessary to first extract and track vertical line features. To accomplish this, a method using wavelet transforms (WTs) was developed. When applied to a 2D image, WTs can be viewed as filters operating in the x and y directions of an image. By applying either a high- or low-pass filter to both of an image’s channels (that is, x and y directions), four sub-images are formed to represent an image approximation. For this work, a level-one bi-orthogonal 1.3 wavelet was used to decompose each image. An example of the four sub-images produced by this wavelet is shown in Figure 7 along with the original image.
Figure 7. Example results of wavelet decomposition.
Through further processing of the vertical decomposition results, strong line features are identified by first inspecting the illuminated elements along the vertical channels of the decomposed image and identifying clusters of adjacent pixels. Next, a 2D line fit is applied to the groups to estimate residual noise. Pixel collections with low residuals (<3 here) are considered valid line features. Example results of this process are shown in Figure 8.
Figure 8. Example vertical line extraction results.
For association purposes, lines cannot be compared over a sequence of image frames solely based on location as similar line features may not necessarily possess the same endpoint, and, therefore, can be of varying lengths. However, corresponding lines will possess many common points and similar orientations if they are projected into the same frame. Using the inertial reference frame, each line’s orientation, , can be transformed across image frames as given by:
In this manner, lines between frames that contain multiple similar points and have comparable orientations are considered associated.
For a discussion of the projective visual odometry and epipolar geometry methodology as well as the resolution of true metric scale used in this work, download the supplemental PDF.
Metric Scale. As the unscaled translation estimate calculated through the aforementioned visual odometry method is a unit vector, it only indicates the most likely direction of motion of the camera. To obtain the sensor’s actual translational motion, an estimate of the scale factor, m, is required to determine the absolute translation ∆r. This can be accomplished through techniques using a priori knowledge of the operational environment or measurements from other sensors. In this research effort, a new method is employed that makes use of data provided by a horizontally scanning laser.
The proposed method estimates the scale in an image by identifying points in the environment that are simultaneously observed by the camera and the forward-looking laser range scanner.
To enable this estimation method we must identify the correspondences between the pixels in the camera images (each defined by a direction unit vector corresponding to the row x and column y) and the laser scanner measurements (each defined by direction unit vector). A calibration procedure establishes these correspondences. Given the laser range measurements, 2D features located on the scan/pixel intersections can be scaled up to 3D points.
Unfortunately, extracted 2D point features are rarely illuminated by a laser scan in two consecutive frames. This can be resolved by considering the intersection of a laser scan with 2D line features rather than point features. As the laser intersects the camera frame at the same location regardless of platform motion, and the platform does not make excessive roll and pitch maneuvers, vertical line features in the image frame are preferred as they will be relatively orthogonal to the laser scan plane.
Using the previously described vertical line extraction procedure, Figure 9 shows an example image frame overlaid with the points in the image frame illuminated by the laser (indicated by a blue line) and the extracted vertical line features (indicated as green lines). Multiple intersections of 2D vertical lines with laser scan data are calculated (indicated as red points). Inversely, Figure 10 depicts the location of all laser scan points in green, all laser points observable with the camera field-of-view (FoV) in blue, and intersection points in red.
Figure 9. Image frame overlaid with points; Laser (blue), vertical line features (green), multiple intersections (red).Figure 10. 2D vertical line and laser intersections in laser scan data.
For scale factor calculation purposes, it is necessary to track the motion of these 3D laser/vision intersection points, across sequences of camera image frames. As each intersection point uniquely belongs to a line feature in the 2D image frame, it can be stated that if two lines are associated, their corresponding intersection points are also associated. Using the rotation computed from the visual odometry process, the line association method described by (1) is implemented, and provides associations between laser/vision intersection points across frames.
To calculate the desired scale factor based on these associated laser/vision points, geometric relationships are established: unit vectors from the camera center to points located on a 2D line. From these, the line’s normal vector can be derived.
Monocular Camera Results
To assess the performance of the visual odometry processes, multiple experiments were conducted. The results of one such test are discussed here. During each test, the visual odometry results for rotation, shown in blue, were easily evaluated through comparison with the platform’s inertially-measured rotation, displayed in red.
The rotational results for each sensor were decomposed into the Euler angles: pitch, roll and yaw with respect to an established navigation frame. Unfortunately, the inertial sensor itself cannot be used to evaluate the visual odometry translation results due to relatively large inertial drift in the sensor measurements. As no independent measurements were available to evaluate translation with high precision, the truth reference was established by accurately measuring the actual paths taken during each flight.
A test flight was conducted traversing a rectangular indoor hallway loop. This test contained translation in multiple dimensions, large heading changes and a flight duration of four minutes. Moreover, this test allowed for evaluation of the eight-point algorithm and scale estimation method in the presence of rapid scene changes.
The attitude estimation results for this test are shown in Figure 11. Throughout data collection, the maximum separation between the inertial and vision-based attitude estimators for pitch, roll and yaw was 9°,19° and 14°, respectively. Upon comparison to many of the other conducted tests, the maximum attitude errors were larger. There are multiple reasons for this increase. First, the duration of this experiment was greater than that of previous experiments. Errors accumulate as a function as time due to integration of residual bias errors, so increasing flight duration will increase cumulative error.
Next, the looping path observed throughout this test caused the eight-point algorithm and scale estimation procedures to quickly adapt to differing scenery. Drastic scene changes (turning a corner) increase the difficulty of feature association between frames. This directly affects the procedures used for visual odometry in an adverse manner. Finally, there are situations in this flight where features are sparse. In general, a decrease in features will cause a decrease in the estimation capabilities of visual odometry.
Figure 12 shows the visual odometry path calculated for experiment 2. Here, the estimated length of each of the four straight legs of the rectangular loop matches to within 2 meters of the measured hallway lengths. This implies that the scale estimation technique is working reasonably well.
Figure 12. Visual odometry path determination while traveling around an indoor loop.
As for the estimated translational directionality produced by the eight-point algorithm, the first two legs of the loop never divert from the measured path by more than 2 meters; the third leg diverts by 5 meters. This is most likely due to a lack of well dispersed features in that specific hallway.
The cumulative error contained in the third linear leg of the loop also makes evaluation of the final leg difficult. However, if previous errors are removed, the final leg appears to match the measured path well. In total, the landing position calculated through visual odometry is 6.5 meters away from the measured end of the trial.
Integration Methodology
In cases where GPS measurements are available along with the visual odometry solution, the proposed method can extend the GPS/IMU integration mechanization. The structure of the referenced GPS/inertial integration consists of two filters: a dynamics filter that uses GPS carrier-phase measurements to estimate velocity and other IMU errors, and a position filter that uses the velocity output of the dynamics filter and GPS pseudoranges. The dynamics filter can be adapted and extended to include camera data within its mechanization.
The dynamics filter is a CKF designed to estimate the inertial error states: velocity error in the north-east-down (NED) coordinate reference frame, misorientation (including tilt error), gyro bias error, and specific force or accelerometer bias error. This yields a state vector. For a discussion of the state vector, download the supplemental PDF.
Results
To evaluate the proposed algorithms, data was collected through multiple flights of the hexacopter platform shown in Figure 2 through a structured indoor and outdoor environment including transitions between these two environments. The availability of GPS measurements in these environments ranged from fully denied, to substantially degraded, to enough observables for a full solution.
The results of one test flight are discussed in this section. Apart from the data collections with the hexacopter, truth reference maps were created for the indoor operational environment and used for evaluation of the described processes. The results of the full GPS/inertial/laser/camera integrated solution described in Figure 3 are shown in an NED frame in Figure 13.
Figure 13. Path compared to 2D reference map.
The truth reference of the environment, depicted in red (derived from a terrestrial laser scanner), is compared to the flight path obtained from the extended Kalman filter (EKF), displayed in blue. The estimated flight trajectory constantly remains within the hallway truth model, indicating sub-meter level performance. Furthermore, based on an extension of this work for environmental laser mapping produced from the EKF, combined with the accuracy of the map, it is further reinforced that sub-meter-level navigation performance is obtained.
During portions of the described data collection, there was enough visibility (>3 satellites) to calculate a GPS position. The availability of GPS measurements to the position estimation portion of the filter allowed for geo-referencing of the produced flight path and 3D map.
Figure 14 displays the geo-referenced continued flight path based on the integration filter superimposed on Google Earth on the left, while the standalone GPS solution based on pseudoranges only is plotted on the right. The geo-referenced path correctly displays the platform passing through Stocker Center, the Ohio University engineering building.
To demonstrate the contributions of the monocular camera to the above results, laser measurements were removed from the solution for a 20-second period where GPS was unavailable. During the 20-second removal of laser data, the system is forced to operate on integration between visual odometry measurements and the IMU. The cumulative effect caused by this situation can be observed in Figure 15. After coasting on an IMU/camera solution for 20 seconds, the path is subsequently altered by 3 meters, as opposed to the solution with all sensors.
Figure 15. Effect of losing GPS and lasers for 20 seconds.
To further emphasize the contribution of the visual odometry component, both the laser and camera were removed from the integration for the same 20-second period. During this time frame the EKF is forced to coast on calibrated inertial measurements. The effect of losing all secondary sensors for a 20-second period can be observed in Figure 16.
Figure 16. Effect of coasting on the IMU for 20 seconds.
During the forced sensor outage, a 45-meter cumulative difference is introduced between the path using all sensors and the path with denied sensors. Through comparison of the results shown in Figure 15 and Figure 16, the contribution of monocular camera data can be isolated.
When the EKF was forced to operate for 20 seconds using an IMU/camera solution, 3 meters of error were introduced. This is significantly smaller than the 45 meters of error observed when using only the inertial for the same period. Thus, the camera is shown to provide stability to the EKF when neither the laser nor GPS are available.
Conclusions
The visual odometry techniques produced reasonably good attitude estimation and are effective at constraining inertial drift when other sensors are not available. The inclusion of camera measurements to the discussed integrated solution resulted in increases in the accuracy, availability, continuity and reliability of the system.
Acknowledgment
The material in this article was first presented at the ION Pacific PNT conference in Hawaii, May 2017.
Manufacturers
The camera used aboard the UAV in these tests is a Point Grey Firefly MV and the IMU is an XSENS MTi. The GPS receiver is a NovAtel OEMStar with a corresponding NovAtel L1 patch antenna.
EVAN T. DILL is a research scientist in the Safety Critical Avionics Systems Branch at NASA Langley Research Center. He received his Ph.D. in electrical engineering from Ohio University.
STEVEN D. YOUNG is a senior research scientist at NASA with more than 30 years of experience in the related fields of safety assurance, avionics systems engineering and human-machine interaction.
MAARTEN UJIT DE HAAG is the Edmund K. Cheng Professor of Electrical Engineering and Computer Science and a Principal Investigator (PI) with the Avionics Engineering Center at Ohio University, where he earlier earned his Ph.D. in electrical engineering.
A GPS-lidar fusion technique implements a novel method for efficiently modeling lidar-based position error covariance based on features in the point cloud. The fusion uses a three-dimensional (3D) city model to detect and eliminate non-line-of-sight (NLOS) GPS satellites to improve global positioning.
The technique has potential application in UAV missions such as 3D modeling, filming, surveying, search and rescue, and package delivery.
By Akshay Shetty and Grace Xingxin Gao, University of Illinois
Unmanned aerial vehicles (UAVs) commonly rely on GPS for continuous and accurate outdoor position estimates. However, in certain urban scenarios, additional onboard sensors such as light detection and ranging (lidar) are desirable due to errors in GPS measurements. To fuse these measurements it is important, yet challenging, to accurately characterize their error covariance. We propose a GPS-lidar fusion technique with a novel method for efficiently modeling the position error covariance based on surface and edge features in point clouds. We use the lidar point clouds in two ways: to estimate incremental motion by matching consecutive point clouds; and, to estimate global pose (position and orientation) by matching with a 3D city model. For GPS measurements, we use the 3D city model to eliminate NLOS satellites and model the measurement covariance based on the received signal-to-noise-ratio (SNR) values. Finally, all the above measurements and error covariance matrices are input to an unscented Kalman Filter (UKF), which estimates the globally referenced pose of the UAV. To validate our algorithm, we conducted UAV experiments in GPS-challenged urban environments on the University of Illinois at Urbana-Champaign campus.These experiments demonstrate a clear improvement in the UAV’s global pose estimates using the proposed sensor fusion technique.
SITUATION
Emerging applications in UAVs such as 3D modeling, filming, surveying, search and rescue, and package delivery all involve flying in urban environments. In these scenarios, autonomously navigating a UAV has certain advantages such as optimizing flight paths and sensing and avoiding collisions. However, to enable such autonomous control, we need a continuous and reliable source for UAV positioning. In most cases, GPS is primarily relied on for outdoor positioning. However, in an urban environment, GPS signals from the satellites are often blocked or reflected by surrounding structures, causing large errors in the position output.
In cases when GPS is unreliable, additional onboard sensors such as lidar can provide the navigation solution. An onboard lidar provides a real-time point cloud of the surroundings of the UAV. In a dense urban environment, lidar can detect a large number of features from surrounding structures such as buildings.
Positioning based on lidar point clouds has been demonstrated primarily by applying different simultaneous localization and mapping (SLAM) algorithms. In many cases, algorithms implement variants of iterative closest point (ICP) to register new point clouds.
APPROACH
The main contribution of this article is a GPS-lidar fusion technique with a novel method for efficiently modeling the error covariance in position measurements derived from lidar point clouds. Figure 1 shows the different components involved in the sensor fusion.
Figure 1. Overview of sensor fusion architecture.
We use the lidar point clouds in two ways: to estimate incremental motion by matching consecutive point clouds; and, to estimate global pose by matching with a 3D city model. We use ICP for matching the point clouds in both cases.
For the lidar-based position estimates, we proceed to build the error covariance model depending on the surrounding point cloud. First, we extract surface and edge feature points from the point cloud. We then model the position error covariance based on these individual feature points. Finally, we combine all the individual covariance matrices to model the overall position error covariance ellipsoid.
For the GPS measurement model, we use the pseudorange measurements from a stationary reference receiver and an onboard GPS receiver to obtain a vector of double-difference measurements. Using the double-difference measurements eliminates clock bias and atmospheric error terms, hence reducing the number of unknown variables. We use the global position estimate from the lidar-3D city matching to construct LOS vectors to all the detected satellites. We then use the 3D city model to detect NLOS satellites, and consequently refine the double-difference measurement vector. We create a covariance matrix for the GPS double-difference measurement vector based on SNR of the individual pseudorange measurements.
We implement a UKF to integrate all lidar and GPS measurements. Additionally, we incorporate orientation, orientation rate and acceleration measurements from an onboard inertial measurement unit (IMU). Finally, we test the filter on an urban dataset to show an improvement in the navigation solution.
LIDAR-BASED ODOMETRY
ICP is commonly used for registering three-dimensional point clouds. It takes a reference point cloud q, an input point cloud p, and estimates the rotation matrix R and the translation vector T between the two point clouds. Different variants of the algorithm generally consist of three primary steps.
Matching. This involves matching each point pi in the input point cloud, to a point qi in the reference point cloud. The most common method is to find the nearest neighbors of each point in the input point cloud. For our application, a kDtree performs best since the two point clouds are relatively close to each other.
Defining Error Metric. This defines the error metric for the point pairs. We choose the point-to-point metric, which is generally more robust to difficult geometry than other metrics such as point-to-plane. The total error between the two point clouds is defined as follows:
(1)
where N is the number of points in the input point cloud p.
Minimization. The last step of the algorithm is the minimization of the error metric with regard to the rotation matrix R and the translation vector T between the two point clouds.
We use ICP to estimate the incremental motion of the lidar between consecutive point clouds. Figure 2 shows our implementation of ICP to estimate the lidar odometry.
Figure 2. The input to ICP is a reference point cloud q and an input point cloud p as shown in (a). The algorithm calculates the rotation matrix R and the translation vector T such that the error metric E is minimized. (b) shows the reference point cloud q and the transformed input point cloud R • p + T.
MATCHING LIDAR, 3D MODEL
We generate our 3D city model using data from two sources: Illinois Geospatial Data Clearinghouse and OSM. The Illinois Geospatial Data were collected by a fixed-wing aircraft flying at an altitude of 1700 meters, equipped with a lidar system including a differential GPS unit and an inertial measurement system to provide superior global accuracy. Since the data were collected from a relatively high altitude, it primarily contains adequate details for the ground surface and the building rooftops. In order to complete the 3D city model, we need additional information for the sides of buildings. We use OSM to obtain this information. OSM is a freely available, crowd-sourced map of the world, which allows users to obtain information such as building footprints and heights. Figure 3 shows a section of the 3D city model for Champaign County.
Figure 3. Section of the point cloud for Champaign County dataset. (Left) shows the 3D city model using only the Illinois Geospatial Data. (Right) fhows the model after incorporating building information from OpenStreetMap.
To estimate the global pose of the lidar, we match the onboard lidar point cloud with the 3D city model using ICP, in these steps:
Use the position output from onboard GPS receiver as an initial guess. If position output is unavailable, use the position estimate from the previous iteration as an initial guess. For orientation, use the estimate from the previous iteration. Thus, we obtain an initial pose guess .
Project the onboard lidar point cloud pL to the same space as the 3D city model qcity using .
Implement ICP, to obtain the rotation RL and translation TL between the two point clouds. Use this output to obtain an estimate for the global pose .
Figure 4 shows the results of implementation of the above method. While navigating in urban areas, the GPS receiver position output used for the initial pose guess might contain large errors in certain directions. This might cause ICP to converge to a local minimum, depending on features in the point cloud pL generated by the onboard lidar.
Figure 4. Global pose estimation with the aid of 3D city model. (Left) shows the intial position guess (red dot, with term in red outlined box) and the onboard lidar point cloud pL projected on the same space as the 3D city model qcity. (b) shows the updated global position (green dot, with term in green outlined box) after the ICP step. We see an improvement in the global position, as the point cloud matches with the 3D city model.
To evaluate how our lidar-3D city model matching algorithm performs in such challenging cases, we test it in two different urban areas as shown in Figure 5. We begin by selecting a grid of initial position guesses up to 20 meters away from the true position. With an adequate distribution of features, ICP is able to correctly match the two point clouds and provide an accurate position estimate after matching. In contrast, when there’s an urban scenario with a relatively poor distribution of features, ICP is unable to estimate the position accurately.
Figure 5. Lidar-3D city model matching in two different urban areas. We begin with a grid on initial position guesses (red) around the true position (black). In (a) and (b), there are adequate features. The position estimates after matching (blue) converge to the true position. In (c) and (d) the feature distribution is relatively poor. The position estimates after matching (blue) are parallel to the building surface.
MODELING ERROR COVARIANCE
We model the lidar position error covariance as a function of the surrounding features. In urban environments, we typically observe structured objects such as buildings, hence we focus primarily on surface and edge features in the point cloud. We extract these feature points based on the curvature at each point. Points with curvature values above a threshold are marked as edge points, whereas points with curvature values below a threshold are marked as surface points. (For detailed discussion of the algorithms involved, see GPS-LiDAR_AkshayShetty-algorithms.
For each surface feature point, we first compute the normal by using 9 of the neighboring points to fit a plane. We model the error covariance ellipsoid with the hypothesis that each surface feature point contributes in reducing position error in the direction of the corresponding surface normal. Additionally, we assume that surface points closer to the lidar are more reliable than those further away, because of the density of points.
For each edge feature point, we first find the direction of the edge using the closest edge points in the scans above and below. We model the error covariance ellipsoid with the hypothesis that each edge feature point helps in reducing position error in the directions perpendicular to the edge vector. A vertical edge, for example, would help in reducing horizontal position error. Additionally, we assume that edge points closer to the lidar are more reliable than those further away, again because of the density of points. Figure 6 shows sample error covariance ellipsoids for a surface point and an edge point.
Figure 6. Position error covariance ellipsoid for surface and edge feature points. The exact sizes of the ellipsoids are tuned during implementation.
To obtain the overall position error covariance, we combine the error covariance matrices for all the individual surface and edge feature points. Figure 7 shows the combined covariance ellipsoid for two different scenarios. We observe that while passing through a corridor, the covariance ellipsoid is larger in the direction parallel to the building sides due to a poor distribution of features.
Figure 7. Overall position error covariance ellipsoids (black) for two point clouds (green). We combine the error ellipsoids from individual surface (red) and edge (blue) feature points.
GPS MEASUREMENT MODEL
We use pseudorange measurements from the GPS receiver to create the measurement model. To eliminate certain error terms, we use double-difference pseudorange measurements, which are calculated by differencing the pseudorange measurements between two satellites and between two receivers. Before proceeding to use the pseudorange measurements, we check if any of the satellites detected by the receiver are NLOS signals. We use the 3D city model mentioned earlier to detect the NLOS satellites. We use the position output generated by the lidar-3D city model matching to locate the receiver on the 3D city model.
Next, we draw LOS vectors from the receiver to every satellite detected by the receiver and eliminate satellites whose corresponding LOS vectors intersect the 3D city model. Figure 8 shows the above implementation in an urban scenario.
Figure 8. Elimination of NLOS satellite signals. LOS vectors are drawn to all detected satellites: SV3, SV14, SV16, SV22, SV23, SV26, SV31. The LOS vectors to satellites SV23 and SV31 intersect (red) the 3D city model and are eliminated from further calculations.
After eliminating the NLOS satellites, we select satellites that are visible to both the user and the reference receivers to create the GPS double-difference measurement vector and its covariance. We assume that the individual pseudorange measurements are independent, and that the variance for each measurement is a function of the corresponding SNR. We propagate the covariance matrix for the individual pseudorange measurements, to obtain the covariance matrix for the double-difference measurements.
GPS-Lidar Integration
In addition to using a lidar and a GPS receiver, we use an IMU on board the UAV. Figure 9 shows the experimental setup: the UAV designed and built by our research group. For the double-difference GPS measurements, we use a reference receiver within a kilometer of our data collection sites. We implement a UKF to fuse measurements from the sensors and estimate the global pose of the UAV.
Figure 9. Experimental setup for data collection. Our custom-made iBQR UAV mounted with a lidar, a GPS receiver and antennas, an IMU, and an onboard computer.
Position and orientation estimates from lidar and GPS are incorporated via the correction step of the filter, whereas the IMU measurements are included in the prediction step. For position corrections from lidar, we use our point cloud feature based model for the error covariance. For GPS double-difference measurements, we use the covariance based on the individual pseudorange measurement SNR.
We implement our algorithm on an urban dataset collected on our campus of University of Illinois at Urbana-Champaign. As shown in Figure 10, the GPS measurements and the GPS position output contain large errors, due to the presence of nearby urban structures. Here we stack all the double-difference measurements and compute the unweighted least square estimate of the baseline between the UAV and the reference receiver.
Figure 10. Position estimates from GPS measurements. The position output from the GPS receiver (blue) and the unweighted least-squares position estimate (red) contain large errors.
For the lidar measurements, we check the output from our incremental ICP odometry method and the lidar-3D city model matching algorithm. Furthermore, we implement an ICP mapping algorithm to check the performance of existing ICP-based methods on the dataset. In Figure 11, the ICP odometry method and the ICP mapping algorithm accumulate drift over the course of the trajectory. The lidar-3D city model matching algorithm does not drift over time; however, the position still contains errors in situations where the lidar does not detect enough number of points or the matching algorithm converges to a local minimum.
Figure 11. Position estimates from lidar point clouds. The incremental ICP odometry (green) and the ICP mapping (blue) estimates accumulate drift over time. The lidar-3D city model matching (yellow) does not drift over time, but contains errors where the ICP algorithm might converge to a local minimum.
Figure 12 shows the output of the filter for the same trajectory. The filter output estimates the actual path much more accurately than the individual measurement sources by themselves.
Figure 12. Position estimates from UKF, integrating GPS and lidar measurements. The filter position output (blue) resembles the actual trajectory, more accurately than any individual source of GPS or lidar measurements.
CONCLUSION
In summary, we proposed a GPS-lidar integration approach for estimating the navigation solution of UAVs in urban environments. We used the onboard lidar point clouds in two ways: to estimate the odometry by matching consecutive point clouds, and to estimate the global pose by matching with an external 3D city model. We built a model for the error covariance of the lidar-based position estimates as a function of surface and edge feature points in the point cloud. For GPS measurements, we eliminated NLOS satellites using the 3D city model and used the remaining double-difference measurements between an onboard receiver and a reference receiver. To construct the covariance matrix for the double-difference measurements, we used the SNR values for individual pseudorange measurements.
Finally, we applied an UKF to integrate the measurements from lidar, GPS and an IMU. We experimentally demonstrated the improved positioning accuracy of our filter.
ACKNOWLEDGMENTS
The authors would like to sincerely thank Kalmanje Krishnakumar and his group at NASA Ames Research Center for supporting this work under the grant NNX17AC13G.
The material in this article was first presented at the ION GNSS+ 2017 conference in Portland, September 2017.
MANUFACTURERS
The lidar used aboard the UAV in these tests is a Velodyne VLP-16 Puck Lite. The GPS receiver is a u-blox LEA-6T with a Maxtena M1227HCT-A2-SMA antenna. The IMU is an Xsens Mti-30, and the onboard computer an AscTec Mastermind 3a.
The iBQR UAV was designed and assembled by the authors.
AKSHAY SHETTY received an M.S. degree in aerospace engineering from University of Illinois at Urbana-Champaign. He is also pursuing a Ph.D. at the same university.
GRACE XINGXIN GAO received a Ph.D. degree in electrical engineering from Stanford University. She is an assistant professor in the Aerospace Engineering Department at the University of Illinois at Urbana-Champaign.
StepInside and partner Flowscape to help Sweden HQ team easily find available workspace and colleagues
The Senion StepInside indoor positioning system has been deployed in the 500,000-square-foot Kista (Stockholm) headquarters of telecom company Ericsson.
Using personal or work-issued smartphones, more than 4,000 employees working throughout 20 floors distributed over four buildings can now use a corporate app to easily find available rooms and spaces to work, the company said.
The indoor positioning system is designed by Senion’s longtime partner Flowscape. With StepInside integrated into the Flowscape platform, the two companies will help Ericsson employees reduce wasted time searching for people, places or things, increasing productivity.
The StepInside software development kit (SDK) offers location readings in latitude, longitude and floor level in real time. The SDK can easily be integrated into any smartphone application. StepInside relies on an advanced sensor fusion algorithm that works with the smartphone’s movement and radio sensors to provide accurate and robust positioning.
“Indoor positioning technology is perfect for large offices with multiple floors, offices, and meeting spaces — the bigger and more intricate the better,” said Christian Lundquist, CEO and co-founder of Senion. “We’re seeing that large companies are taking serious measures to combat friction in order to increase both productivity and employee satisfaction. We now aid Ericsson in giving back time to their employees so they can be more efficient in their day-to-day work.”
The implementation of StepInside at Ericsson is part of the company’s larger global platform designed to enable rapid IoT application development.
“We looked carefully at the benefits of using IPS [indoor positioning system] in our offices, and determined the system would pay for itself in productivity savings alone,” said Magnus Arlidsson, global head application platform for IoT at Ericsson. “Our initial roll-out focuses on productivity improvements by saving employees time they might waste searching for things, such as conference rooms or places to work.”
The system as implemented today is the starting point for a bigger roll-out with additional workplace enhancements at Ericsson.
Senion’s comprehensive IPS services include analytics, wayfinding, geofencing, friend finder and tracking. With more than 300 indoor positioning system installations globally, Senion has worked closely with shopping malls, hospitals, corporate campuses and more to improve workflows. Senion is headquartered in Linkoping, Sweden, and San Francisco.
Telit has launched BlueMod+S42M, a Bluetooth low-energy (BLE) 4.2, standalone, single-mode module with embedded 3-axis accelerometer, temperature and humidity sensors.
The cost-effective component is optimized for efficiency and simplicity in end-device design and manufacturing, delivering reliable BLE functionality with robust endpoint security, motion and environmental sensors and essential features that reduce development costs, bill of materials, and time to market.
Designed for large-scale projects, the BlueMod+S42M expedites device design across a wide range of industrial and consumer applications areas, the company said. The embedded sensors are for high-value, fragile asset tracking, and time- or temperature-sensitive applications such as cold chain monitoring in the pharmaceutical and agriculture industries.
The release of the certified BlueMod+S42M complements the Telit portfolio of Bluetooth and BLE modules and directly addresses the demand in the rapidly growing BLE-dependent market. A report released by IndustryARC Analysis, forecasts Bluetooth Low Energy enabled devices shipments to increase to 8.4 billion units by 2020 at a CAGR of 29 percent.
“Cost, power, and reliability are critical to the success of IoT applications that demand efficient BLE solutions,” said Ronen Ben-Hamou, Telit EVP of products and solutions. “Our new qualified Bluetooth module caters to designers of all levels with tight development, materials and manufacturing cost constraints and even tighter timelines. The beauty of the +S42M is it’s simplicity: single-chip SoC (system on chip), feature packed, sensibly priced, exceptional power savings and extensive interoperability.”
Full applications can be embedded in the BlueMod+S42M, which is a self-contained SoC requiring no additional external supporting components. It is equipped with an on-board micro controller, integrated chip antenna, passive components, T°/Humidity sensor, and an accelerometer.
Leveraging a rich subset of features from Telit’s diverse family of BlueMod+Sx modules, including a GATT interface and terminal I/O profile combination, the new BlueMod+S42M greatly simplifies and accelerates the development of applications, Telit said.
In addition to efficient performance and low power consumption, BlueMod+S42M includes value-added features that further streamline development:
Bluetooth v4.2 Qualified Module
RED, SRCC Certified
Generic GATT Client and Server
LE Secure Connections
Configurable DIS (Device Information Service)
LE Data Length Extension
Terminal I/O for Easy Transparent Data Transfer (BLE- SPP like)
Embedded Sensors
Over-the-Air Updates
Sample Code for iOS and Android
WeChat Air Sync Protocol
Designers using the BlueMod+S42M have access to comprehensive development and integration tools including evaluation and development kits.
Visit Telit at the Sensors Expo in San Jose, California, June 27-29, booth 1244.