Skip to content

t9s9/central-vision-ssl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Temporal Slowness in Central Vision Drives Semantic Object Learning

Paper arXiv Model Weights

This is the official code for the paper "Temporal Slowness in Central Vision Drives Semantic Object Learning".

Main Figure


Installation

git clone https://github.com/t9s9/central-vision-ssl.git
cd central-vision-ssl
pip install -r requirements.txt

Pretrained Model Weights

Download all pretrained checkpoints from Zenodo:

https://zenodo.org/records/19191064

Load a pretrained model

import torch
from omegaconf import OmegaConf
from solo.methods import METHODS

ckpt = torch.load(CHECKPOINT_PATH, weights_only=False)
cfg = OmegaConf.create(ckpt["args"])

model = METHODS[cfg["method"]](cfg)
model.load_state_dict(ckpt["state_dict"], strict=True)

Dataset

Ego4D

Download the full Ego4D dataset from https://ego4d-data.org/

Gaze Annotations

Follow the instructions at https://github.com/Aubret/GLC/blob/main/GENERATION.md in the GLC repository.


Training

Before training, set your data paths in scripts/pretrain/ego4d/paths/default.yaml:

data_train_path: /path/to/ego4d/h5
checkpoint_dir: /path/to/save/checkpoints
knn_clb_train_path: /path/to/imagenet100/train
knn_clb_val_path: /path/to/imagenet100/val

ResNet-50:

python main_pretrain.py --config-path scripts/pretrain/ego4d/ --config-name mocov3_resnet50.yaml

ViT-Base:

python main_pretrain.py --config-path scripts/pretrain/ego4d/ --config-name mocov3_vit.yaml

Key parameters

Parameter Description
data.dataset_kwargs.time_window Number of frames between the two views sampled for contrastive learning. Larger values enforce slower temporal invariance.
data.dataset_kwargs.gaze_size Size of the gaze-centered crop (in pixels). Set to 540 to use the full frame instead of a gaze crop.
data.dataset_kwargs.center_crop Set to True to crop around the frame center instead of the gaze location.

These can be overridden on the command line, e.g.:

python main_pretrain.py --config-path scripts/pretrain/ego4d/ --config-name mocov3_resnet50.yaml \
  data.dataset_kwargs.time_window=20 \
  data.dataset_kwargs.gaze_size=224 \
  data.dataset_kwargs.center_crop=False

Linear Probe

Set your data paths in scripts/linear/paths/default.yaml, then run:

python main_linear.py --config-path scripts/linear/ --config-name mocov3_resnet50.yaml

Semantic Alignment Analysis

The model_semantic_alignment/ directory contains a pipeline for measuring how well SSL model representations align with object co-occurrence structure (COCO, Visual Genome, ADE20K).

See model_semantic_alignment/README.md for full usage instructions.


Citation

@inproceedings{
schaumloffel2026temporal,
title={Temporal Slowness in Central Vision Drives Semantic Object Learning},
author={Timothy Schauml{\"o}ffel and Arthur Aubret and Gemma Roig and Jochen Triesch},
booktitle={The Fourteenth International Conference on Learning Representations},
year={2026},
url={https://openreview.net/forum?id=tEezDE0vWt}
}

License

This project is licensed under the MIT License — see LICENSE for details.

About

Temporal Slowness in Central Vision Drives Semantic Object Learning @iclr2026

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages