How to read calibration matrix


I’m using Orbbec Astra Mini S.
I want to use the camera matrix that factory calibrated.
How can I read the matrix from camera firmware ?

Thank you.

1 Like

I am using the same sensor as yours, the closer I was able to get to the parameters (you mean the one stored in conversion_cache_t (on the SDK, in the file src/astra/astra_depth.cpp for example) that are needed to convert depth maps to point clouds?) only by running some examples in debug mode and stepping in where the calibration matrix was used.

As far as I’ve seen there is not a handy way to get those parameters out, but I would be glad to be wrong on that.

I’ve found these values:

  • xzFactor 1.12213337
  • yzFactor 0.841600001
  • coeffX 570.342163
  • coeffY 570.342224
  • resolutionX 640
  • resolutionY 480
  • halfResX 320
  • halfResY 240

Thank you for your help.

I can read the parameters using cmd::get_cmos_params() in Astra module API. I wanted to use that parameter to calcurate the line-of-sight vector from the camera pinhole to a pixel. I did it.

Hi @r-takase, I can’t find the get_cmos_params function. Which API are you talking about? Not OpenNI, right?

Never mind, I found it: it’s in the “Camera Control: All-in-one Sample Code” linked from the Universal Download Thread.