mannicui0's picture
Mirror code and weights from GitHub
63f8a47 verified
Raw History Blame Contribute Delete
900 Bytes
"""Frozen video-backbone registry for V-PVP.
Each backbone exposes ``extract_patch_features(x, layer=None)`` returning
patch tokens of shape ``(B, P, T', D)``.
This release ships the VideoMAE backbone used for the main results:
- videomae_k400 VideoMAE-B/16 fine-tuned on Kinetics-400
(D=768, P=196, T'=8 for 16 input frames, tubelet_size=2)
"""
from .base import FrozenVideoBackbone
from .videomae_k400 import VideoMAEK400
BACKBONE_REGISTRY = {
'videomae_k400': VideoMAEK400,
}
def list_backbones():
return sorted(BACKBONE_REGISTRY.keys())
def build_backbone(name, **kwargs):
if name not in BACKBONE_REGISTRY:
raise ValueError(
f"Unknown backbone '{name}'. Available: {list_backbones()}"
)
return BACKBONE_REGISTRY[name](**kwargs)
__all__ = ['FrozenVideoBackbone', 'BACKBONE_REGISTRY', 'list_backbones', 'build_backbone']