nicetoolbox.detectors.feature_detectors.gaze_multiview.gaze_fusion.GazeFusion

class nicetoolbox.detectors.feature_detectors.gaze_multiview.gaze_fusion.GazeFusion(config: Dict, io: IO, data: Data)[source]

Bases: BaseFeature

Computes a single 3D gaze vector from multiple camera views and/or multiple algorithms.

Given the fused 3D gaze vectors, the user can optionally select to apply a Savitzky-Golay filter for temporal smoothing. Finally, the fused 3D gaze vectors are projected back to each camera view to obtain 2D gaze points for visualization (If enabled).

Expected Input:
  • Method detectors outputting ‘3d’ array.

  • Shape: (Subjects, Cameras, Frames, 3)

  • Optional: ‘confidence_scores’ (Subjects, Cameras, Frames) for weighted fusion.

Initialize the MultiviewFusion detector.

Parameters:
  • config (Dict) – Configuration dictionary.

  • io (Any) – IO handler.

  • data (Any) – Data handler.

Methods

compute

Run the fusion pipeline.

post_compute

No post-compute needed.

visualization

Generates visualization images with fused gaze overlays.

Attributes

algorithm

components

compute() List[Dict[str, Any] | None][source]

Run the fusion pipeline.

Returns:

A list of dictionaries containing fused results.

post_compute()[source]

No post-compute needed.

visualization(results_list: List[Dict[str, Any]]) None[source]

Generates visualization images with fused gaze overlays.