Hi Everyone, I got a question on recovering the world's coordinate acceleration data from userAcceleration values. If I understand correctly, the userAcceleration values are non-gravity acceleration observed in phone's coordinate, which is specified by rotation with respect to worlds's coordinate in the form of quaternion values. This means that, in order to recover the world's coordinate, I need to do the following: Let us say $$\(p_{phone}\)$$ is acceleration values measured in phone's coordinate and $$\(R\)$$ is the rotation matrix obtained with quaternion values. Then, the acceleration values $$\(p_{world}\)$$ in the world's coordinates can be recovered by $$\(p_{world} = R^T\cdot p_{phone}\)$$. Is this correct? Has anyone done this processing already on the sample data so that we can compare what we got? Thank you Nao

Created by Naozumi Hiranuma nhiranuma
Hi Nao, You are doing a rotation transformation on the "userAcceleration" data? Are you using any "deviceMotion" data? I have not found any documentation on what these different data sources mean. Not from Synapse and not on the iPhone websites I have perused. I concur that an example "test" case would be useful for "algorithm alignment"... e.g., with this toy example (userAcceleration = p_phone), you should get p_world as follows. If you have an example of such you want to share, I would appreciate it. Extracting "features" from a wrong scale won't benefit anyone.
Thanks Thanneer! After playing around with the data, I realized that you can validate if your transformation is correct by rotating your gravitational acceleration and making sure it points face down. I hope this could be useful to someone:) Nao
Yes, x and y are horizontal to the ground after rotation. The rotations are zero if you place your phone on a flat surface facing screen upwards. And the coordinates are computed with the top-left corner as reference.
Hi @nhiranuma You are correct (assuming the multiplication is a cross product between R rotation matrix and p_phone).
Also, how are the world's coordinates set up? Can we assume that x and y are horizontal to ground?

About the rotation matrix. page is loading…