Data volume is one of the main challenges facing lidar simulation. One leading lidar solution provider is using Unity’s Sensor SDK, System Graph, and High Definition Render Pipeline (HDRP) to simulate the data required to research and produce sensors. In this blog, Peter Desrosier, Multimedia Content Developer at Velodyne Lidar, shares their approach.
The utility of demonstrating lidar in hypothetical scenarios is critical to evolving and improving light detection and ranging technology as a whole. However, lidar simulation holds a number of challenges and obstacles.
Velodyne Lidar provides smart, powerful lidar solutions for autonomous vehicles, driver assistance, delivery solutions, robotics, navigation, mapping, and more. Thanks to Velodyne, lidar technology is becoming more and more cost-efficient. As a result, lidar is increasingly in demand. The engineering development process, however, can be expensive and time-consuming. Simulation speeds the process of engineering by rapidly providing data on the types of sensors worth developing further, highlighting the pros and cons of different sensors in different scenarios, and allows for much faster prototyping than real-world testing. The ability to visualize and test both hypothetical and production sensors fast-tracks the entire lidar production pipeline.
Volume of data is one of the largest obstacles confronting lidar simulation. Particularly with Velodyne sensors, a single “sweep” of a scene with conventional methods of simulation can result in millions of points of contact in a scene. Simulating a single sweep of a high-resolution, multichannel lidar such as the Alpha Prime™, for example, can stress even powerful computers when emulating a complex 3D environment. However, the process of determining hit counts and simulating each laser channel accurately requires careful calculation and calibration.
Past approaches to simulation have included methods such as “light masked projectors” – essentially, emulating lidar with Unity lighting.
Lidar simulation using the Light Cookies in Unity: provides a fast preview of lidar, but does not give point counts (as seen on the blank billboards above)
The benefit of such a technique is that scenarios can be very quickly prototyped and visually demonstrated. However, there is no easy way with this method to determine point counts on objects. Other approaches, such as particle-based systems, can address this problem. Essentially, a CPU-based particle system relies on an emitter that simulates the points, their collisions, and the scan pattern of the sensor. This solves the problem of determining point counts on objects, but can be slow and memory intensive to the point of crashes, especially with multiple or higher resolution sensors.
Lidar simulation using the Unity Particle System: gives point and channel count readout, but is very slow.
Lidar simulation displaying collision of the Unity Particle System with 3D objects in a scene with just the Llidar present.
This progression of lidar simulation leads now to ray tracing. The recent GPU technology of real-time ray tracing offers several advantages and opens up a number of exciting new possibilities for lidar simulation. Using Unity’s Sensor SDK, System Graph, and High Definition Render Pipeline (HDRP), we can now simulate a Velodyne Puck™ with precise, real-life specifications. Using this method, each sensor is constructed as it would be in reality – built up with a DC motor node, a variable rpm node, specific wavelength lasers, and photo detectors. The result is a simulated sensor that gives users a degree of control and manipulation that was previously impossible. Simulations that use reflectivity, channel noise, and rpm fluctuations are now possible within Unity’s Sensor SDK framework.
The System Graph construct within Unity of a Velodyne Puck.
These early simulation tests aim to simulate a Velodyne Puck™ sensor, using Unity’s Sensor SDK and the System Graph, which is so precisely calibrated that it becomes almost indistinguishable from actual lidar data. To test this, we lidar-scanned a real-world location with a Velodyne Puck™, and brought the lidar data into Unity. We can now compare the real data with a simulated point cloud. Our tests so far of this new, near-real-time lidar simulation yield impressive results.
Real lidar data from a Velodyne Puck in a small room.
Simulated data of a Velodyne Puck in a small room using Unity Sensor SDK.
Lidar simulation creates an avenue for new and exciting business opportunities. The ability to simulate a vast array of specific, real-life scenarios before pursuing them in production is more cost-efficient, simpler, and faster than attempting the same things in real life. As the Velodyne ecosystem continues to evolve and grow to include new technologies such as this simulation platform, it inevitably leads to better business cooperation, more productive brainstorming, and more sales. This technology is paramount to getting Velodyne sensors into the hands of our customers and out into the world where they can continue to make a positive, substantial impact.
Reach out to our team if you would like to learn more about Sensor SDK and System Graph.