Bug: LandMarkPointSource::alias has value LANDMARK_NOT_NAMED for all face landmarks (SDK v10)

Bug: LandMarkPointSource::alias has value LANDMARK_NOT_NAMED for all face landmarks (SDK v10)

Hi everybody,
I recently noticed an undocumented API/Documentation breaking change in the Realsense SDK v10.

The face landmarks can be obtained by calling one of the functions QueryPoints(...) or QueryPointsByGroup() of an instance of PXCFaceData::LandmarksData. Both have a pointer argument to an array of element type PXCFaceData::LandmarkPoint provided by the caller where the function stores the result.

In some situations one wants to copy the landmark coordinates to other data structures. Therefore one can loop through the array and check the entry source of type PXCFaceData::LandmarkPointSource which contains (beside other entries) and entry called alias of type enum LandmarkType indicating a specific landmark point. For example the nose tip has value LandmarkType::LANDMARK_NOSE_TIP - at least until SDKv8 or earlier.

Since SDKv10, the source value of all landmarks has the value LandmarkType::LANDMARK_NOT_NAMED, which is according to the documentation, only a placeholder for those landmarks which do not have a particular enum LandmarkType value.

I observed this behavior on two i5 computers running Windows 10 Pro 64 Bit and the latest SDKv10 installed and therefore think that this is a bug.

Furthermore, it is stated in the documentation [1]: "Do not hard-code the index value as the supported number of points might change."

Therefore a workaround could be to map the LandMarktype to the index with the function QueryPointIndex(lm_type) and then access the appropriate index in the array directly. However, this does not work for data obtained by calling the QueryPointsByGroup() function. Here one needs to loop through the array and compare the source.index values to the index of interest - this would of course work also for the data obtained by QueryPoints().

Happy coding :)

hape

[1] https://software.intel.com/sites/landingpage/realsense/camera-sdk/v1.1/d...

Zone: 

Thread Topic: 

Bug Report
4 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Hello,

This problem is also happening with me, it broke SharpSenses :(

Any plans to fix that?

Cheers!

If anybody have the same problem, here is an example of the workaround proposed by @hape.

https://github.com/SharpSenses/SharpSenses/blob/master/SharpSenses.RealSense/Capabilities/FaceCapability.cs

 

Hi Andre and hape,

Thank you for reporting this bug, we will check it asap.

Best Regards,

Gal Avraham,

Intel Corporation

Leave a Comment

Please sign in to add a comment. Not a member? Join today