|
|
|
from mmcv.cnn import MODELS as MMCV_MODELS |
|
from mmcv.cnn import build_model_from_cfg |
|
from mmcv.utils import Registry, build_from_cfg |
|
|
|
MODELS = Registry( |
|
'models', build_func=build_model_from_cfg, parent=MMCV_MODELS) |
|
|
|
BACKBONES = MODELS |
|
NECKS = MODELS |
|
HEADS = MODELS |
|
LOSSES = MODELS |
|
POSENETS = MODELS |
|
MESH_MODELS = MODELS |
|
TRANSFORMER = Registry('Transformer') |
|
|
|
|
|
def build_backbone(cfg): |
|
"""Build backbone.""" |
|
return BACKBONES.build(cfg) |
|
|
|
|
|
def build_neck(cfg): |
|
"""Build neck.""" |
|
return NECKS.build(cfg) |
|
|
|
|
|
def build_head(cfg): |
|
"""Build head.""" |
|
return HEADS.build(cfg) |
|
|
|
|
|
def build_loss(cfg): |
|
"""Build loss.""" |
|
return LOSSES.build(cfg) |
|
|
|
|
|
def build_posenet(cfg): |
|
"""Build posenet.""" |
|
return POSENETS.build(cfg) |
|
|
|
|
|
def build_mesh_model(cfg): |
|
"""Build mesh model.""" |
|
return MESH_MODELS.build(cfg) |
|
|
|
def build_transformer(cfg, default_args=None): |
|
"""Builder for Transformer.""" |
|
return build_from_cfg(cfg, TRANSFORMER, default_args) |