Software Archive
Read-only legacy content
17061 Discussions

How to get depth range

RAign
Beginner
347 Views

Hi,

I'm wondering how I can query the actual range of the depth values, since they are device-specific. As it seems, PXCCapture::Device::QueryDSMinMaxZ is supposed to do the job, according to the documentation [1], but it won't. When I call 

PXCSession *session = PXCSession_Create();
PXCSenseManager *senseManager = session->CreateSenseManager();
senseManager->EnableStream( PXCCapture::STREAM_TYPE_DEPTH );
senseManager->Init();
PXCCaptureManager *cm = this->senseManager->QueryCaptureManager();
PXCCapture::Device *device = cm->QueryDevice();
PXCRangeF32 range = device->QueryDSMinMaxZ();

I get a range of [0 65535], thus the range of the datatype in use for depth pixels. I don't think this is the purpose of the function. Is there something I'm missing or doing wrong?

Thanks

[1] https://software.intel.com/sites/landingpage/realsense/camera-sdk/v1.1/documentation/html/index.html?querydsminmaxz_device_pxccapture.html

0 Kudos
2 Replies
Xusheng_L_Intel
Employee
347 Views

The unit is according to the SetDepthUnit. Thanks!

0 Kudos
RAign
Beginner
347 Views

Thanks for your reply. Not sure what you're saying, though.

Did you mean QueryDepthUnit? QueryDepthUnit returns 1000, according to the documentation that's μm [2]. Which means, the depth values are specified in mm, which is what I was assuming in the first place. Now this would give the R200 a depth range of 0.00 to 65.54 meters.

What I am expecting to get are the depth ranges for the respective cameras, such as [270 520] for F200 and [600 1400] for R200. Is there no way to do so? Isn't this, what these methods are there for?

 

[2] https://software.intel.com/sites/landingpage/realsense/camera-sdk/v1.1/documentation/html/index.html?querydepthunit_device_pxccapture.html

0 Kudos
Reply