[Solved] I wonder the eyeX Gaze Trace Function’s detail implementation.

Home Forums Software Development [Solved] I wonder the eyeX Gaze Trace Function’s detail implementation.

Viewing 9 posts - 1 through 9 (of 9 total)
  • Author
  • #5529
    Yong-il Lee

    I’m making my own fixation recording program using C#.
    My problem is that the data accuracy of fixation is so low.
    For example, I watched the third line of my text, but the fixation was detected on the second line.
    Each line height is 120 points and my screen resolution is 3200 X 1800 (size 13 inches)

    However, when I turned on the ‘gaze trace’ option of eyeX tray program, the transparent circle of fixation is always appeared nearby where I’m gazing.
    I want to mimic the ‘gaze trace’ accuracy in my recording program.

    My program uses GazePointDataStream class to detect and record the fixations.
    (It calls CreateGazePointDataStream(GazePointDataMode.LightlyFiltered))
    Does gaze trace function uses FixationDataStream? (CreateFixationDataStream(FixationDataMode.Sensitive))
    I can’t understand the difference between GazePointDataStream and FixationDataStream yet.
    Their mechanism look similar, but when I called the both stream simultaneously, the coordinate values were not same.

    In addition, I want to know the radius of gaze trace circle. Is it means gaze duration?
    Thanks in advanced. 🙂

    Alex [Tobii]


    Here’s a more advanced version of gaze trace with configuration tool.

    Streaming & Recording with Tobii Ghost

    The tool doesn’t use fixations but lightly filtered gaze data stream

    It also uses an extra filter on top of lightly filtered data:

    newPoint = oldPoint + (lightlyFilteredPoint – oldPoint) * k, where 0 < k < 1

    It’s important to say that recording gaze data for analytics is prohibited by sdk license agreement.


    Yong-il Lee

    Alex, Thanks for your kind reply.
    I read the Tobii Gaze Overlay Post before asking my question.
    It was very beautiful tool but I couldn’t understand how it works minutely.
    Because the tool’s source code is not opened.

    I think that you’ve confirmed me two important things
    1) Gaze data stream doesn’t guarantee fixation coordinate precisely. It needs extra filter.
    2) Do not record gaze data officially according to SDK license agreement.

    Are these right?
    I haven’t understood gaze data stream & license agreement certainly before getting your answer.
    Thanks again!

    Alex [Tobii]


    0. Regarding gaze overlay. Yes, It’s not open-source at the moment. The tool is using a number of tricks to make it looking smooth. As you can see it’s not drawing a perfect circle but rather a morphing “bubble” instead. That helps to compensate for small hysteresis the data still has after filtering (heavier filtering will result in higher latency). But the initial data that i feed to the graphic shader is using the filter i described in a post above.

    1. Everything depends on a use case.
    Raw/lightly filtered data has the lowest latency so it is very useful when you design your own algorithms for object selection.
    Fixation stream might be useful when it’s important to know when your eyes are doing a secade.
    Interactors might be a good choice for applications related to object selection in 2d.

    2. Here’s what the agreement says:

    3.4 Limitations.
    3.4.1 Not for analytical use. Unless Licensee enters into a separate
    agreement with Tobii, the SDK may not be used to develop and
    distribute software for analytical purposes, post processing or
    aggregation of eye tracking data across multiple users.
    Specifically, this means that such software may not (i) transfer
    data about eye movements, behavior, intention or attention
    generated by or derived from the Software Components to
    another computing device, network, display or printer; or (ii)
    store data about eye movements, behavior, intention or
    attention generated by or derived from the Software
    Components on any persistent storage media (except for
    calibration files and data used for accuracy-enhancing filters),
    i.e. data may only be stored in primary memory and only while
    it is being processed.

    Yong-il Lee

    Hi! Alex. Your detail explain help me understand the gaze mechanism well! Thanks!
    I saw the limitation part of SDK agreement also after your first reply.

    By the way, If I want to get an additional contract of eyeX to record gaze data officially,
    would you let me know where the detail information is and how much it is roughly.
    I’ve already known that buying Tobii pro eye-trackers solves it simply.
    But it requires at least 10-thousands dollars budget including Tobii Studio.
    I want to know whether there is any affordable solution using eyeX.

    Yong-il Lee

    Hm… May be you guys recommend me to get Tobii REX eye-tracker. 🙂

    Differences between Tobii REX and Tobii EyeX Dev Kit


    Yong-il Lee

    Woops.. Gaze SDK also have the same limitation license agreement.

    Grant [Tobii]

    Hi Yong-il (@openable),

    The licence agreement that prohibits the user of long term storage of data is indeed applied throughout the Tobii EyeX and REX trackers.

    The Tobii EyeX Controller and its software experience is intended for interactive and gaming applications only.

    If you want a solution for using eye tracking to study human behavior, please contact Tobii Pro.

    If you want to develop software for analytical purposes, post processing or aggregation of eye tracking data across multiple users, please contact Tobii’s licensing team – [email protected]

    Yong-il Lee

    Grant, I’m happy to get your clear reply.
    If I want, I would contact to licensing team. 🙂

Viewing 9 posts - 1 through 9 (of 9 total)
  • You must be logged in to reply to this topic.