[D455] Measurement
Hi, I am using the D455 depth camera to measure distances between objects with different depths. (Distance on X, Y, and Z axes). But the results are not quite stable.
The minimum and maximum distance of objects to the camera are about 800 mm -> 1200 mm. And I have some questions?
Can I use D455 to measure these above distances?
How much of the accuracy with these types of measurements?
Is D455 designed for these types of measurements?
Thanks.
-
Hi Nguyenduyduc14 The RealSense camera model comparison guide at the link below states that the D455 model has an accuracy of <2% at 4 meters.
https://www.intelrealsense.com/compare-depth-cameras/
There are a range of factors, including lighting, environment and objects / object colors in the observed scene that can have an influence on depth accuracy though. Would it be possible to provide an RGB image of the scene that the camera is being used in to identify the presence of elements that may cause error, please?
800 mm is greater than the D455's minimum depth range and 1200 mm is well below its maximum depth range, so the D455 can certainly depth sense a range of 800-1200 mm and is capable of the type of depth measurements that you are performing.
What is the average XYZ size of the objects that are being measured, please? A very thin object may be more difficult to depth sense, for example.
-
Thank MartyG,1. I work for Samsung Display Vietnam and the information security is the rule so I can not get any images. But I find an example and I hope you can check and see if I can use D455 to measure these distances?
2. I use a deep learning model to find 3 wheels and 1 bar. They are devices of an AGV. They are quite as same as my case.
Now I want to measure X distance, Y distance between 3 wheels, and Z distance between one wheel and the bar.
3. My questions are:
How can I find the highest point of these wheels to measure Z distance?
Can I use D455 to find X distance, Y distance between 3 wheels? Do you have any demo cases?
Do you have the accuracy when we measure X distance, Y distance like above?
-
The highest point of the wheels would be the coordinates that are nearest to the camera. A recent example of isolating the nearest depth values in a Python numpy array can be found at the link below.
https://github.com/IntelRealSense/librealsense/issues/10601
It may be difficult to obtain accurate depth information from the black wheels, as it is a general physics principle (not specific to RealSense) that colors such as dark grey and black absorb light. The darker the color, the less light that will be reflected, making it difficult for depth cameras to analyze such surfaces. Projecting a strong light source onto a black surface can help to bring out depth detail.
In regard to measuring between two wheels, if you know the coordinate of the center of each of a pair of wheels then you could measure the real-world distance between those two coordinates by converting the 2D image into 3D points. So you could measure between two wheels aligned in a horizontal row (x) or between an upper and lower wheel (y).
The links below have RealSense examples for doing so in C++ and Python.
C++
https://github.com/IntelRealSense/librealsense/tree/master/examples/measure
Python
https://github.com/soarwing52/RealsensePython/blob/master/separate%20functions/measure_new.py
If the detection of XY distances between wheels needs to be based solely on a 2D RGB image like the one provided above then the tutorial links below provide an example of how to measure between the centers of multiple bounding boxes.
Part 1 - defining the bounding boxes
https://www.codeproject.com/Articles/5287686/AI-Social-Distancing-Detector-Calculating-the-Cent
Part 2 - measuring the distance between individual bounding boxes
https://www.codeproject.com/Articles/5287687/AI-Social-Distancing-Detector-Finding-People-That
Please sign in to leave a comment.
Comments
3 comments