Cameras are as necessary for the development of autonomy as eyes are for humans. These assets help autonomous robots look like they can go from one point to another on their own. Many engineers find themselves looking for different camera comparisons as they are essential for autonomous technology to run.
In this blog, we want to show the comparison analyzed by one of our engineers regarding the stereo cameras that estimate the depth of the robot's immediate environment: D435i, D435f, and D455 and some considerations about the tests made with the Luxonis' OAK-D Pro camera.
Stereo cameras use two or more lenses with separate image sensors for each lens to simulate human binocular vision. The distance between the lenses often mimics the distance between our eyes. The cameras can capture three-dimensional images, for 3D pictures for movies, or to avoid drone collisions, among many other uses.
For most applications, stereo cameras with a three-meter range for depth data are more than sufficient, particularly if they will be used indoors. However, when exposed to sunlight and outdoor environments, the data from these cameras can be highly affected, and the precision of depth maps and point clouds is considerably reduced.
With a background in the sidewalk navigation of robots, I wanted to test three top-of-the-range cameras in outdoor environments to find the most suitable camera for outdoor usage, like field robotics.
First up, we have the Intel Realsense D435i (with an IMU) and D435f (with a polarizing filter). Both variations of the D435 camera should have the same depth range and limitations: an ideal range of up to three meters and an expected error of <2% at two meters. The D435i camera is very reliable in indoor situations, but in outdoor environments, its data can be significantly affected after two meters – and the Realsense team is aware of this.
Next up is the Intel Realsense D455, with a depth range of six meters. The product can be used in both indoor and outdoor environments. The expected error is <2% at four meters.
Despite stating these depth ranges, all the Intel models can be used up to 10 meters by modifying the threshold filter of the stereo module using the Realsense Viewer tool. We used this mode in all the tests.
Last but not least, we tested the Luxonis OAK-D Pro camera. It is capable of having a depth perception of up to 35 meters. However, data located at such a distance range could be overkill for most applications. Applications include making measurements, calculating where a point is, getting its coordinates, and estimating the depth of nearby obstacles.
The setup and test were simple: I used our test track at Kiwibot, with an already defined measurement template and significant sunlight. I placed all cameras six meters from a reference object: a chair, in this case.
Any error that occurred would be considered over the camera's Z-axis (in most stereo cameras, the Z-axis is perpendicular to the camera's lenses), the most straightforward and stable measurement over the chair.
As expected, the D435i camera experienced an error of around 38%. The measurements were near 8.3 meters at the back of the chair (the real distance was 6 meters). The measurement range was way over the expected camera range.
The D435f camera showed outstanding performance, with an error of around 8% and measurements near 6.5 meters at the back of the chair. What makes these results an astonishing find is the fact that this is the same D435i camera – just with a polarizing filter placed on the camera's main lens, with the objective to eliminate all the interference of brightness from solar noise on reflective surfaces, like glass and tiles. A 6-meter range is nearly twice its intended measurement reach.
The D455 camera had remarkable results, with an error near 2.2%, with measurements around 6.1 meters at the back of the chair, making the D455 camera first place for performance.
The OAK-D Pro camera experienced an error of 25%, and the measurements were close to 7.5 meters at the chair.
A point cloud is a set of data points representing a 3D shape produced from stereo images. The visualizations were plotted in RViz2 using the ROS2 wrapper.
While the D455 camera outperformed when measuring depth values at longer distances – showing that it is much more robust in measurements due to a more modern depth module – its point cloud deteriorated and was not drastically different from the D435i camera. But the D435f had remarkable point cloud quality compared to the D435i. The point clouds of the different cameras indoors were as expected.
However, the outdoor operation with a higher presence of sunlight showed the degradation of the point clouds. The OAK-D Pro camera generated a point cloud with good depth perception, but it was very noisy in some sections, regardless of distance. However, the point cloud quickly spotted approaching obstacles, which is observed in the last seconds of the clip. It is important to note that, during the test, the point cloud stopped publishing several times.
The D435i had a small point cloud with noticeable effects from the sunlight, but the filter present in the D435f camera is an absolute game-changer. The visualization of the D435f point cloud was smoother than the OAK-D Pro model, and it was easier to track the displacement of people up to 4 meters of distance. The quality and integrity of its point cloud are way better than the D435i camera, and only just below the results for the D455 camera, which had a wide point cloud outcome.
The following clip was recorded with the OAK-D Pro and the D435i camera to compare the quality of the texture. The OAK-D Pro point cloud was very detailed. However, with a closer look, you can see that my face and the front of my body look totally flat. Contrastingly, the Realsense camera displays a very detailed 3D model of my face, chest, and even my headphones.
Overall, the Luxonis OAK-D Pro camera is a solid product, but there's always room for improvement. Its main advantage is that it has a small computer in the camera which allows for running AI models in the camera instead of a computer, relieving the load on the main system. However, that was not tested during my experiment with the stereo cameras, as I tested the precision of the data, the reading of the point cloud, and which camera could block out the noise in outdoor environments.
Although this is just a first look, Luxonis could be a strong competitor of Intel in the near future and is a brand to keep your eye on for the next few years.
Disclaimer: I wrote this article because having all four cameras in your possession is highly unique. I wanted to share my experience and do not intend to generate any profit or benefit any brand. I am not recommending which camera to buy; that is dependent on the reader's application and needs.