cancel
Showing results for 
Search instead for 
Did you mean: 

How to obtain a low-res depth image with a VL53L* sensor?

Step
Associate II

Hi there, is it possible with any of the currently manufactured ToF sensors of the VL53L* family and the software that is available to private customers to obtain a depth image, or the raw sensor values for each SPAD to reconstruct a depth image?

I experimented with a VL53L1X sensor by Pololu with the ported API for Arduino Uno R3, which only gives me a single range in millimeters, which from the API code appears to be a median of the valid ranges of all SPADs. I want to create difference depth images to the previous measurement, for which I would need access to all range values and do the aggregation (min, max, avg, median, ...) myself. But it seems that the median is acquired from the sensor via I2C already, not calculated in the accessible API code.

I am aware that I can use the programmable ROI to create a depth image of medians over 4x4 SPAD regions of interest, but this would take too long (time budget in the application is ~100 ms per measurement) and is greatly reducing the resolution of the depth image, as the median operation filters out thin objects that a single SPAD might register.

Are there any sensors in this product family that allow for access to all range values (or the travel times or whatever the raw data are)? I read in this post that the VL53L1CB has a different API that returns two range values - is it just two or can it also be all 256? The product pages for VL53L3CX and VL53L5 both even mention histograms being used. Would I have access to these histograms and the individual values, or is only a peak value exposed?

Thanks in advance for your input and recommendation!

Best, step

1 ACCEPTED SOLUTION

Accepted Solutions
John E KVAM
ST Employee

The VL53L5CX - due out in June (probably the last day in June, though) is what you want.

The picture below was taken with one.

It gives you a 8x8 image, 15 times per second.

Here the sensor is looing down into a coffee cup, with the handle on the right.

0693W000008ziQlQAI.pngThe VL53L5CX costs a bit more than the VL53L1, but it's still not very expensive.

And you get a LOT more.

So if you can wait until late June you will be all set.


If this or any post solves your issue, please mark them as 'Accept as Solution' It really helps. And if you notice anything wrong do not hesitate to 'Report Inappropriate Content'. Someone will review it.

View solution in original post

5 REPLIES 5
John E KVAM
ST Employee

The VL53L5CX - due out in June (probably the last day in June, though) is what you want.

The picture below was taken with one.

It gives you a 8x8 image, 15 times per second.

Here the sensor is looing down into a coffee cup, with the handle on the right.

0693W000008ziQlQAI.pngThe VL53L5CX costs a bit more than the VL53L1, but it's still not very expensive.

And you get a LOT more.

So if you can wait until late June you will be all set.


If this or any post solves your issue, please mark them as 'Accept as Solution' It really helps. And if you notice anything wrong do not hesitate to 'Report Inappropriate Content'. Someone will review it.
Step
Associate II

Thank you for your fast answer! The VL53L5CX does indeed sound very interesting and the image you attached looks very promising. However, I am worried about the suitability for our application. I immediately searched for the sensor and found marketing slides talking about a FoV of 61° (slide 10). Assuming that is the diagonal FoV, the horizontal FoV would be around 61/sqrt(2) = 43°? Meaning that objects covering less than 6° of the FoV will probably not be detected reliably. Is that a fair assumption?

In our application, we want to monitor a manufacturing area with workpieces that - given their fixed size and the slightly varying distance to the sensor - cover between 0.93° in the worst case and 8° in the best case of the sensor's FoV, so I guess it would not be detected reliably in any of the zones. Or am I misinterpreting the available information?

John E KVAM
ST Employee

Well you get 2 points for getting the math right 🙂 43 degrees on a side is correct.

As the sensor does 8x8 you get 43/8 or about a 5 degree area.

Now you might see something that only covers only 1% of that area. Is the object particularly reflective? Or does it have a reflectivity that is clearly different from the surface on which it sits?

You don't actually have to get an exact distance to know something is there - the distance just has to be different from when the object is NOT there. And you can double check it if the reflectivity changes.

In the graph above the rim of the coffee cup was only 5mm, but the edge is clearly visable.

The good thing about ST sensors, is that you can buy an evaluation kit. Generally these are about $50. In 20 minutes you can take enough data to decide if the project is worth doing. It's a few dollars well spent.


If this or any post solves your issue, please mark them as 'Accept as Solution' It really helps. And if you notice anything wrong do not hesitate to 'Report Inappropriate Content'. Someone will review it.

Thank you again for your answer. The evaluation kit sounds like a really good option, we will try this sensor once it is available. We are tracking steel bolts on a plastic surface and have full control over the background. So we can line the background with particularly absorbant material, if that helps to increase the contrast in the signal.

John E KVAM
ST Employee

That would do it. One thing you might not know... Most plastic is translucent to 940nm light. So unless you paint your plastic surface, you might find you are ranging on what's UNDER the plastic surface. I always paint my plastic with a bit of flat black paint to avoid this issue.

  • john

If this or any post solves your issue, please mark them as 'Accept as Solution' It really helps. And if you notice anything wrong do not hesitate to 'Report Inappropriate Content'. Someone will review it.