lightly-ai/lightly

Use InterpolationMode.BICUBIC instead of magic interpolation values in transforms

Fechada

#2.009 aberto em 30 de jul. de 2026

 (0 comentário) (0 reação) (0 responsável)Python (337 forks)auto 404
good first issuehelp wantedrefactor

Métricas do repositório

Stars
 (3.775 estrelas)
Métricas de merge de PR
 (Métricas PR pendentes)

Description

lightly/transforms/ has two inconsistent ways of specifying bicubic interpolation for RandomResizedCrop:

  • interpolation=3mae_transform.py, ijepa_transform.py, wmse_transform.py, capi_transform.py
  • interpolation=PIL.Image.BICUBIC with a # type: ignore[attr-defined]dino_transform.py, ibot_transform.py

Both should become:

T.RandomResizedCrop(input_size, scale=(min_scale, 1.0), interpolation=T.InterpolationMode.BICUBIC)

T is torchvision_transforms from lightly.transforms.torchvision_v2_compatibility, already imported in every affected file, and T.InterpolationMode.BICUBIC resolves under both the v1 and v2 compatibility paths. No new import needed, and it drops the type: ignore in the DINO/iBOT files.

Files to update:

  • lightly/transforms/mae_transform.py
  • lightly/transforms/ijepa_transform.py
  • lightly/transforms/wmse_transform.py
  • lightly/transforms/capi_transform.py
  • lightly/transforms/dino_transform.py
  • lightly/transforms/ibot_transform.py

Guia do colaborador