ml-sharp / src /sharp /models /encoders /base_encoder.py
amael-apple's picture
Initial commit
c20d7cc
raw
history blame contribute delete
574 Bytes
"""Contains the base class for encoders.
For licensing see accompanying LICENSE file.
Copyright (C) 2025 Apple Inc. All Rights Reserved.
"""
import abc
import torch
from torch import nn
class BaseEncoder(nn.Module, abc.ABC):
"""Base encoder class."""
dim_in: int
output_dims: list[int]
@abc.abstractmethod
def forward(self, image: torch.Tensor) -> list[torch.Tensor]:
"""Encode input image into multi-resolution encodings."""
def internal_resolution(self) -> int:
"""Internal resolution of the encoder."""
return 1536