- This topic has 3 replies, 2 voices, and was last updated 2 years, 8 months ago by Grant [Tobii].
- 25/06/2020 at 17:56 #18256MParticipant
I am using HTC Vive PRO Eye with Tobii integrated eye trackers. I would like to measure the displacement of eye movements between two eye samples.
I was using GazeDirection vector (in the SRanipal SDK) for that. However, since these values are normalized between [-1,1], the values and the plot I have is wrong.
Can you please guide me about how these values have been normalized?
and other ways I can calculate the value of the displacement between two consecutive eye samples.
Looking at https://vr.tobii.com/sdk/develop/unity/documentation/api-reference/ , shows that TobiiXR_GazeRay ‘s Direction is also normalized.29/06/2020 at 13:19 #18280Grant [Tobii]Keymaster
Hi @aryam, thanks for your query. The GazeDirection is a direction vector telling us where the user is looking, which you can get both in World and Local space. For example, the value of (x=0, y=0, z=1) in local space tells us the user is looking straight ahead.
If you wish to compare the difference between two samples, we suggest you to calculate the delta between two frames, for example:
var deltaAngle = Vector3.Angle(previousGazeDirection, currentGazeDirection);
Hopefully this makes sense to you, please let us know how you get on. Best Wishes.30/06/2020 at 00:06 #18282MParticipant
Thank you @Grant.
So by looking at this image on the link below:
Can you please guide me about how I can calculate the value R (the length of green line). I know by physics law that d = R*(alpha), and that alpha = arccos(v1.v2).
But not sure how to calculate the value of R, which is the distance of gaze origin to a 3D point in the scene.
I would like to see my changes in position of the eye in a plot similar to this one:
https://www.researchgate.net/publication/235788020/figure/fig5/AS:[email protected]/Example-of-eye-movement-data-Vertical-eye-position-upper-panel-and-eye-velocity-lower.ppm30/06/2020 at 14:03 #18285Grant [Tobii]Keymaster
Hi @maryam, Assuming that you have stimuli points that the user is looking at, then you can calculate the distance between that and the gaze origin, which would get you the R value.
float dist = Vector3.Distance(gazeOrigin, stimuliPosition)
We also supply a ConvergenceDistance value in our API, but the accuracy of this signal might not be optimal for the type of study.
Hopefully this clear things up, let us know how you get on.
- You must be logged in to reply to this topic.