gbionics / gbionics/human-dynamics-estimation
Quaternion/Position order is not coherent between logger and thrift
- Dominant language
- C++
- Stars
- 102
- Forks
- 32
- Avg merge
- 7d 1h
- Merged PRs (30d)
- 1
Description
**Describe the bug**
With @Zweisteine96 we noticed difference in the linear/angular serialization used used for iFeel data:
- in the thrift message we use angular/linear for the pose (see [here](https://github.com/robotology/wearables/blob/59ea45c9c80dec9317790c5a4b8712a31a7d9ee1/msgs/thrift/WearableData.thrift#L55-L56) and [here](https://github.com/robotology/wearables/blob/59ea45c9c80dec9317790c5a4b8712a31a7d9ee1/msgs/thrift/WearableData.thrift#L60-L61)), while for the velocity in the thift we use linear/angular (see [here](https://github.com/robotology/wearables/blob/59ea45c9c80dec9317790c5a4b8712a31a7d9ee1/msgs/thrift/WearableData.thrift#L62-L63))
- In the sensors interface implementation the order seems to be again orientation/position (see [here](https://github.com/robotology/wearables/blob/efb34b1baaf98006ef2e9add0cdfe98ec6f30e86/interfaces/IWear/include/Wearable/IWear/Sensors/IPoseSensor.h#L32) and [here](https://github.com/robotology/wearables/blob/efb34b1baaf98006ef2e9add0cdfe98ec6f30e86/interfaces/IWear/include/Wearable/IWear/Sensors/IPoseSensor.h#L48-L65))
- In the logger, data are saved as position/orientation (see [here](https://github.com/robotology/wearables/blob/59ea45c9c80dec9317790c5a4b8712a31a7d9ee1/wrappers/IWearLogger/src/IWearLogger.cpp#L522-L530) and [here](https://github.com/robotology/wearables/blob/59ea45c9c80dec9317790c5a4b8712a31a7d9ee1/wrappers/IWearLogger/src/IWearLogger.cpp#L663-L664))
The difference between logger and thrift has created some confusion.
This opens ups to some solutions:
- Document property the way data are logged and transmitted
- Change the order in the thrift (this will break backcompatibility of the dataset, even if it would be clear the order used)
- Change the order in the logger (same as previous)
- ... others?
Any suggestion/opinion @RiccardoGrieco @traversaro @diegoferigo ?
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by comparing the cited fields in msgs/thrift/WearableData.thrift, interfaces/IWear/include/Wearable/IWear/Sensors/IPoseSensor.h, and wrappers/IWearLogger/src/IWearLogger.cpp. Determine and document the intended ordering across the thrift messages, sensor interface, and logger, including the dataset compatibility implications. Done requires a decided convention and an agreed update or documentation plan.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- data, distributed-systems
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100