[Dprglist] Depth image vs pointcloud

Paul Bouchier paul.bouchier at gmail.com
Tue Jan 4 21:20:39 PST 2022


It was asserted tonight that depth images and pointcouds are the same
thing, that no geometry or transformation is needed to access xyz of a
pixel in a depth-image or point in a pointcloud, or to relate one to the
other. I think that is incorrect, and that I gave up too easily on that
point. See the attached diagram for why it's not true.

The diagram is an old-time physics lens drawing, showing the camera lens
imaging onto the image plane on the left. Two arrows: a1 at depth d=1, a2
at depth d=2, both 1 unit high, image on different parts of the image
plane; a1 at 0,-50 and a2 at 0,-30 because it's further away, despite being
the same height. a3 is twice as tall as a2, and twice as far away, but
images at the same coordinates as a2 - only the depth tells you it's
taller. You have to take the angle from the central axis to 0,-30 and the
depth to compute z for a3 or a2 and to tell the difference. IOW you have to
transform the image with the depth data to compute the xyz location of each
arrowhead.

Maybe I misunderstood what was being asserted, but it seems to me a
pointcloud can simply be clipped at the boundaries of the region of
interest, whereas in a depth image each pixel must be transformed from it's
x,y,depth value to xyz using some math. All very doable, but if you're
trying to populate an obstacle map with some clipping on Z (e.g. to
eliminate the ground, or taller-than-relevant obstacles, or obstacles
outside the robot's path, you end up having to create a pointcloud to
determine if each point is within the region of interest.

Did I misunderstand what was being asserted? David said he just wanted to
take the image and pull object height or horizontal offset from robot
centerline, and distance from the robot out of it (if I understood him) and
you have to do some trig to do that. It's the same math that has to be done
to create a pointcloud. It is true that the two forms contain the same
information, but it's represented differently, and transformation is needed
to map one to the other.

Paul
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.dprg.org/pipermail/dprglist-dprg.org/attachments/20220104/75ec6baf/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: depth_image.drawio.png
Type: image/png
Size: 21500 bytes
Desc: not available
URL: <http://lists.dprg.org/pipermail/dprglist-dprg.org/attachments/20220104/75ec6baf/attachment.png>


More information about the DPRGlist mailing list