Creating a robot system can be a very complex and time-consuming project, and one of the most difficult is determining which sensor configuration is best for your robot’s purposes. We won’t be considering 3D Lidar as their minimum cost is around $10K. The following are 5 points to consider when choose between a stereo camera or Lidar for robot navigation:
1. Flat-terrain Mapping Accuracy
2D Lidar
If your project requires millimeter level precision, such as for industrial projects or self-driving cars, Lidars require much less processing to convert the raw data to a point cloud and then to an occupancy grid, allowing for faster rates when the robot is moving. Stereo camera mapping is based on depth approximation, which will always have a centimeter levels of error.
2. Complex-terrain Mapping Accuracy
Stereo Camera
3. Beginner
2D Lidar
If you’re just getting started with robot navigation, we recommend you buy the RPlidar A1 and test it out on gmapping. These are the simplest ROS packages to get started with SLAM, or Simultaneous Localization and Mapping, the foundation of most professional robot applications.
4. Cost
Either
5. Obstacle Avoidance
Stereo Cameras
Stereo cameras are almost always better for general purpose obstacle avoidance. They can do GPU-based inference for neural network-trained objects, like YOLO, detect multiple planes at close proximity, detect cliffs, and can create custom edge or color based Computer Vision algorithms. 2D Lidars have the advantage that they can work in dark environments and require less processing overall but can only work in 2D.
Conclusion
For beginners or environments that have flat terrains, we recommend the 2D Lidar, and for complex environments that have various terrains and obstacles, we recommend the stereo camera. If the robot can have multiple sensors, that would overall increase the effectiveness of the system, but keep in mind it can be challenging to integrate various sources of data.