Skip to main content

Foveal Disc IoU Scanpath Score - A biologically grounded scanpath similarity metric

Project description

FDISS

Foveal Disc IoU Scanpath Score

A biologically grounded scanpath similarity metric that models fixations as foveal discs and computes similarity via bidirectional nearest-neighbour IoU matching.

Installation

pip install fdiss

Quick Start

import numpy as np
from fdiss import FDISS

# Initialize the metric
fdiss = FDISS()

# Two scanpaths (x, y coordinates)
S1 = np.array([[100, 200], [150, 250], [300, 150]])
S2 = np.array([[105, 205], [155, 255], [320, 160]])

# Compute foveal radius (45px = 1 degree at 45 px/degree)
r = FDISS.compute_foveal_radius(px_per_degree=45.0, degrees=1.0)

# Evaluate similarity
result = fdiss.evaluate(S1, S2, r)

print(f"FDISS: {result['fdiss']:.4f}")
print(f"Precision: {result['precision']:.4f}")
print(f"Recall: {result['recall']:.4f}")

Features

  • Biologically Grounded: Models fixations as foveal discs (~1-2° visual angle)
  • Interpretable: Returns Precision, Recall, and F1 (FDISS) scores
  • Fast: O(nm) complexity with vectorized NumPy operations
  • No Parameters at Runtime: Foveal radius computed once from viewing geometry

Method

FDISS represents each fixation as a foveal disc with radius r, then computes similarity using:

  1. Disc IoU: Closed-form intersection-over-union of two equal-radius discs
  2. Bidirectional Matching: Each fixation matched to its best-overlapping counterpart
  3. Precision/Recall: Coverage from both directions
  4. FDISS: Harmonic mean of Precision and Recall

Citation

If you use FDISS in your research, please cite:

@article{kerkouri2026fdiss,
  title={FDISS: Foveal Disc IoU Scanpath Score},
  author={Kerkouri, Mohammed Amine and Tliba, Marouane and Chetouani, Aladine},
  journal={ETRA '26},
  year={2026}
}

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fdiss-0.1.0.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fdiss-0.1.0-py3-none-any.whl (4.3 kB view details)

Uploaded Python 3

File details

Details for the file fdiss-0.1.0.tar.gz.

File metadata

  • Download URL: fdiss-0.1.0.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for fdiss-0.1.0.tar.gz
Algorithm Hash digest
SHA256 efcf4ca5af543ffc72821e91d2024267445c5ccce6c19795971f64495e6722ef
MD5 23ec151f9f45c9112cff4f41b4293561
BLAKE2b-256 b836defc133036f21077d2272c480b4a2517eed0769e77bb7b7e0d3d97320b37

See more details on using hashes here.

File details

Details for the file fdiss-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: fdiss-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for fdiss-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 efae1daf44a39e6d8e2a09884503851d06cfa1728491c9d2a1c61150078b0712
MD5 ec3b8d79bcbe913ec7df703fbe413b62
BLAKE2b-256 55aaa1e1588f233d90eb4e56774d5e75893a7f5b85ca3e184459cae55f9dd614

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page