-2

Mobile: Lenovo Phab 2 Pro

Coding language: Java

Level of expertise: novice

IDE Used: Android Studio

Is it possible to construct depth image using the point cloud data provided by Tango API?

  1. I do not want to use RBG camera.
  2. I imported Tango Support library (com.google.tango.support.TangoSupport) and tried to access 'TangoSupport.DepthBuffer'. I receive following error 'can not resolve symbol DepthBuffer'
Nawrez
  • 3,314
  • 8
  • 28
  • 42

1 Answers1

1

The tango framework provides you an unorganized pointcloud which means that the points in your cloud have no corresponding pixel.

But you can construct an organized pointcloud via the available depth camera intrinsics. (Mainly you need the focal length of the camera and its principal point)

https://developers.google.com/tango/apis/java/reference/TangoCameraIntrinsics

This will allow you to calculate the index of a point which lies or lies not into your depth image. To get the most accurate mapping, you also should consider the corresponding camera distortion.

SimonScholl
  • 98
  • 11
  • Thanks for the answer. It helped me a lot. I was able to construct the depth image. But I used TANGO_CALIBRATION_POLYNOMIAL_3_PARAMETERS for finding distorted radial distance rd. The calibration file shows that the depth camera has 5 distortion coefficients. In the tango support page, I was able to find only the formula corresponding to 3 parameters. Is there any other page from where I can get formula for 5 parameters? – SanthanaKrishnan Narayanan Dec 07 '17 at 11:30
  • Glad i could help a bit. At first you can request the CalibrationType of each Camera via the linked type, this will give you information which polynomial model is used. The 5 coefficients contains the radial distortion like you already mentioned k1, k2, k3 and the other parameters contain tangential distortion p1,p2. You can find it under https://developers.google.com/tango/apis/c/reference/group/enums#group___enums_1gaf263024d9e7e66456524bb0ad1d0597d. As far as i experienced myself you only need to use radial distortion for the color camera. – SimonScholl Jan 10 '18 at 08:28
  • Addition: As far as i experienced it should be sufficient to use the x,y calculation of pixels without using the distortion model to project the 3D point into the depth image. – SimonScholl Jan 10 '18 at 08:34