Spaces:
Sleeping
Sleeping
from typing import List | |
import numpy as np | |
from torch import Tensor, nn | |
class BaseRGBDModel(nn.Module): | |
def __init__(self): | |
super(BaseRGBDModel, self).__init__() | |
""" | |
Requirements: | |
1. Construct a model | |
2. Load pretrained weights | |
3. Load model into device | |
4. Construct preprocessing | |
""" | |
def inference( | |
self, | |
image: Tensor, | |
depth: Tensor, | |
origin_shape: np.array, | |
) -> List[np.ndarray]: | |
""" | |
Given: | |
- An image (Tensor) with original shape [c, h, w] | |
- A depth image (Tensor) with a shape of [c, h, w], do not need to be the same shape as image | |
Requirements: | |
1. Preprocessing | |
2. Inference | |
3. Return saliency maps np.float32 between 0.0 and 1.0, | |
with the same size as original size | |
""" | |
raise NotImplementedError() | |
def batch_inference( | |
self, | |
images: Tensor, | |
depths: Tensor, | |
) -> List[np.ndarray]: | |
""" | |
Given: | |
- A batch of images (Tensor) with original shape [b, c, h, w] | |
- A batch of depths (Tensor) with a shape of [b, c, h, w], do not need to be the same shape as image | |
Requirements: | |
1. Preprocessing | |
2. Inference | |
3. Return saliency maps np.float32 between 0.0 and 1.0, | |
with the same size as original size | |
""" | |
raise NotImplementedError() | |