Support RealSense R200 depth stream |
|||
Issue descriptionAs described in issue #662911 #8 , the output of the depth stream when using the R200 camera doesn't look right, probably because the R200 uses some disparity format different from the other depth cameras.
,
Nov 22 2016
,
Nov 22 2016
I forgot to mention - the image I get when using librealsense and not Chromium to get the image looks fine - similar to the second image. The bit shift is just a hack and not the right way the data should be displayed. Info about how the format actually looks like should be somewhere here https://github.com/IntelRealSense/librealsense/blob/master/doc/projection.md#depth-image-formats.
,
Nov 22 2016
mediacapture-depth specification doesn't handle specific rendering of disparity mode for R200 camera [1]. Don't think there's much we can do about this in Chromium - this is how upper byte of 16-bit data looks. We could check though: 1) Find if it is possible and how to switch disparity (only available in R200) mode ON/OFF. 2) Propose rendering for disparity mode in mediacapture-depth spec. [1] https://github.com/w3c/mediacapture-depth/issues/80#issuecomment-260641134
,
Dec 1 2016
This is not a problem of disparity mode, it's simply that the R200 uses a different scale. The other depth cameras use a 1/32 mm scale while R200 uses a 1 mm scale, making the normal output look like random noise. We could either just scale it down by 32 with glPixelTransferf(*_SCALE) or something similar, or use some equivalent of librealsense's rs_set_device_option(...) with RS_OPTION_R200_DEPTH_UNITS, set to 31. Technically, the data currently shown aren't exactly wrong - they will just confuse the users a lot, We could put this into a JS library on top of Chromium, but we might get bug reports when uses see expected output in librealsense and black with a little noise with Chromium.
,
Dec 1 2016
The work on this needs to be moved to: https://www.w3.org/TR/mediacapture-depth/#the-video-element there it is/should be defined how to render long range, near range, disparity this in video element. Chromium exposes row 16-bit format, deprojection to real world coordinates (scale) from 16-bit value happens using mediacapture-depth API in JS.
,
Dec 23 2016
|
|||
►
Sign in to add a comment |
|||
Comment 1 by martina....@intel.com
, Nov 10 2016183 KB
183 KB View Download