Home › Forums › Software Development › Heavy Filtering of gaze data
- This topic has 3 replies, 4 voices, and was last updated 7 years, 8 months ago by Grant [Tobii].
- AuthorPosts
- 03/06/2015 at 07:33 #3055Mark GatrellParticipant
I am using the EyeXHost engine to determine the current gaze point etc .
Using C# (GazePointDataStream) all is working ok.I have been using the GazePointDataMode.LightlyFiltered datastream.
I have noticed that one of your showcase applications manages to filter the data very well and gives a smooth motion to the eye position on the screen.Would you mind telling me if this filter is available via the SDK.
If not would you mind telling me the filter method?
Thanks for your help
regards
Mark.
03/06/2015 at 16:53 #3059Jenny [Tobii]ParticipantHi Mark,
There is currently no heavy filtering version of the Gaze Point Data stream in the EyeX Engine API. If you want to create a smoothing filter yourself, my collegue Robert had the following suggestion in a separate topic:
One easy filter that is quite efficient is a weighted moving average filter, for example the exponentially decaying filter discussed in this StackOverflow thread. For further reading, this paper includes a good summary.
This is the smoothing algorithm we use to create the smoothed movement of the light in the flashlight sample scene in the EyeX SDK for Unity:
public float alpha = 0.3f; private Vector2 _historicPoint; private bool _hasHistoricPoint:t; (...) private Vector2 Smoothify(Vector2 point) { if (!_hasHistoricPoint) { _historicPoint = point; _hasHistoricPoint = true; } var smoothedPoint = new Vector2(point.x*alpha + _historicPoint.x*(1.0f - alpha), point.y*alpha + _historicPoint.y*(1.0f - alpha)); _historicPoint = smoothedPoint; return smoothedPoint; }
24/03/2017 at 07:31 #6572chaitanyaParticipanthi jenny is there any other alternative to get the accurate eye position on the screen where we are looking at
27/03/2017 at 18:17 #6578Grant [Tobii]KeymasterHi @chaitu, What do you mean by alternative to eye position on screen? Certainly the GazePointDataStream provides the location of where the user is looking to best accuracy available.
If you mean however the actual eyeball position itself in 3D space, I am afraid this metric is no longer available.
Please kindly clarify your request and I will see what I can find out.
- AuthorPosts
- You must be logged in to reply to this topic.