| | |
| | import torch |
| |
|
| | from annotator.oneformer.detectron2.utils.logger import _log_api_usage |
| | from annotator.oneformer.detectron2.utils.registry import Registry |
| |
|
| | META_ARCH_REGISTRY = Registry("META_ARCH") |
| | META_ARCH_REGISTRY.__doc__ = """ |
| | Registry for meta-architectures, i.e. the whole model. |
| | |
| | The registered object will be called with `obj(cfg)` |
| | and expected to return a `nn.Module` object. |
| | """ |
| |
|
| |
|
| | def build_model(cfg): |
| | """ |
| | Build the whole model architecture, defined by ``cfg.MODEL.META_ARCHITECTURE``. |
| | Note that it does not load any weights from ``cfg``. |
| | """ |
| | meta_arch = cfg.MODEL.META_ARCHITECTURE |
| | model = META_ARCH_REGISTRY.get(meta_arch)(cfg) |
| | _log_api_usage("modeling.meta_arch." + meta_arch) |
| | return model |
| |
|