Skip to content

← gaze package

SanitizeGazeData

Clean up gaze data before extracting gaze events.

Removes bad gaze data identified either as NaN values or as values in a 'Confidence' channel below a configurable threshold. Provides the option to either drop or interpolate the removed data. Typically used before the ExtractGazeEvents node as needed. To manually set sample values to NaN, precede this node with the ReplaceValues node. Version 0.1.2

Ports/Properties

data

Data with gaze stream(s)

  • verbose name: Data
  • default value: None
  • port type: DataPort
  • value type: Packet (can be None)
  • data direction: INOUT

confidence_threshold

Minimum confidence to keep a sample. Confidence channel must be named 'confidence' or 'Confidence', which should be true from Tobii data and Pupil Labs data.

  • verbose name: Confidence Threshold
  • default value: 0.6
  • port type: FloatPort
  • value type: float (can be None)

confidence_channel

Label of channel to monitor for confidence_threshold. Note: case insensitive!

  • verbose name: Confidence Channel
  • default value: Confidence
  • port type: StringPort
  • value type: str (can be None)

handle_bad

'Bad' samples are those that met one of the criteria, either nan or low-confidence. There are three options to handle bad samples: 1) drop: samples are dropped if any criterion is met, even on a single channel. 2) interpolate: samples will be interpolated independently for each channel. 3) cross-interpolate: nan values are interpolated then the result is shifted by the deviation found between the interpolated value and the real value in other channels in its channel-group. Channels are grouped according to interp_identifiers.

  • verbose name: Handle Bad
  • default value: drop
  • port type: EnumPort
  • value type: str (can be None)

interp_identifiers

For the case that 'cross-interpolate' is selected from the above option, this determines identifier sub-strings for labels of each channel in a pair. Channels with matching names except for this sub-string are paired. Typical use case is to pair similar channels from the two eyes. For Tobii data this should be ['left', 'right']. For Pupil Labs, ['0', '1']. Currently only used by the cross-interpolate method of handle_bad.

  • verbose name: Left/right Channel Name Pattern
  • default value: ['left', 'right']
  • port type: ListPort
  • value type: list (can be None)

excl_identifiers

Channels with labels matching any of these identifier sub-strings will not be sanitized. Note that the confidence channel is excluded automatically.

  • verbose name: Ignore Channels Containing Patterns
  • default value: []
  • port type: ListPort
  • value type: list (can be None)

set_breakpoint

Set a breakpoint on this node. If this is enabled, your debugger (if one is attached) will trigger a breakpoint.

  • verbose name: Set Breakpoint (Debug Only)
  • default value: False
  • port type: BoolPort
  • value type: bool (can be None)

metadata

User-definable meta-data associated with the node. Usually reserved for technical purposes.

  • verbose name: Metadata
  • default value: {}
  • port type: DictPort
  • value type: dict (can be None)