microsoft / Azure-Kinect-Sensor-SDK

A cross platform (Linux and Windows) user mode SDK to read data from your Azure Kinect device.
https://Azure.com/Kinect
MIT License
1.5k stars 619 forks source link

Why black hair noise issue more serious in WFOV mode than in NFOV mode ? #620

Closed carlhuang070 closed 5 years ago

carlhuang070 commented 5 years ago

Why black hair noise issue more serious in WFOV mode than in NFOV mode ? Is there any way to solve hair noise from top down Capture depth image?

rabbitdaxi commented 5 years ago

@carlhuang070 , the depth camera is a Time of flight camera, therefore, low reflectivity object tends to have more noise simply because the return signal is less compare to high reflectivity objects at the same distance.

The reason WFOV mode contains more noise on such low reflectivity objects is because the signal strength received by sensor is less than NFOV per pixel. The Azure Kinect is a USB powered device, with limited power resource, 4 different depth modes were designed for supporting different field of view and range to fulfill various users' needs. Please refer to this page to understand each mode's field of view and range.

You can either try NFOV2X2Binned or WFOV2X2Binned, or you can try set up the camera closer to the hair. If you have a static scene, you can try temporal average.

carlhuang070 commented 5 years ago

@rabbitdaxi , Can we adjust the signal intensity to reduce hair noise in WFOV?

rabbitdaxi commented 5 years ago

@carlhuang070 , the signal intensity is a hardware configuration which is not adjustable from SDK (even though it is possible to configure illumination profile and gain from the depth camera module level, but in that case, we are talking about a new hardware).

Are you using WFOV2X2BINNED or WFOVUNBINNED? the WFOV2X2BINNED should have stronger signal compare to the UNBINNED.

Other than that, your best choices here are either use NFOV modes, or move camera closer to the hair.

rfilkov commented 5 years ago

@carlhuang070 According to my previous experience with Kinect-v2, a workaround to a similar issue was to place a light source in front and above the users' area.

carlhuang070 commented 5 years ago

@rabbitdaxi , i using WFOV2*2binned, the distance between DK and hair about 1.5m. and the noise is very seriously.

carlhuang070 commented 5 years ago

@rabbitdaxi , I compare Kinect DK NFOV 2*2binned mode with Kinect V2, DK hair noise issue is more seriously at the same distance far away Camera . I found DK power: 5V ,2.5A Kinect V2: 12V,2.67A

rabbitdaxi commented 5 years ago

@carlhuang070 thank your for your response. Your assumption that Azure Kinect consumes less power compare to Kinect V2 is correct. Azure Kinect is designed for low power consumption, as you see it is just USB powered, Kinect V2 require the AC power adapter. Your issue can not be solved by software, it is what the current DK hardware design offers, here is the hardware specification page. You can add your feedback to the feedback hub

zx-li001 commented 5 years ago

this problem seems will be solved when the kinect depth sensor has a HDR mode.