PXDepth-Demo / pxdepth /build.py
sysu111's picture
Add PXDepth demo
87608ea
Raw
History Blame Contribute Delete
800 Bytes
"""Public construction helpers for config-driven PXDepth components."""
from typing import Any, Dict
import torch.nn as nn
from .registry import MODELS
# Import built-in modules once so their registration decorators run. External
# components are imported by ``load_config`` before these builders are called.
from . import model as _model # noqa: F401,E402
def build_model(config: Dict[str, Any]) -> nn.Module:
"""Build a model from its JSON-compatible configuration.
Args:
config: Model dictionary. ``type`` defaults to ``PXDepth`` for old
public configs and checkpoints.
Returns:
Constructed ``torch.nn.Module`` registered in :data:`MODELS`.
"""
config = dict(config)
config.setdefault("type", "PXDepth")
return MODELS.build(config)