示例#1
0
def build_metrics(cfg):
    if isinstance(cfg, (list, tuple)):
        metrics = [build_metrics(c) for c in cfg]
    else:
        metrics = [build_from_cfg(cfg, registry, 'metrics')]

    return metrics
示例#2
0
    def __call__(self, model):
        if hasattr(model, 'module'):
            model = model.module

        optimizer_cfg = self.optimizer_cfg.copy()
        # if no paramwise option is specified, just use the global setting
        if not self.paramwise_cfg:
            optimizer_cfg['params'] = model.parameters()
            return build_from_cfg(optimizer_cfg, registry, 'optimizer')

        # set param-wise lr and weight decay recursively
        params = []
        self.add_params(params, model)
        optimizer_cfg['params'] = params

        return build_from_cfg(optimizer_cfg, registry, 'optimizer')
示例#3
0
def build_dataset(cfg, default_args=None):
    if isinstance(cfg, (list, tuple)):
        dataset = ConcatDataset([build_dataset(c, default_args) for c in cfg])
    else:
        dataset = build_from_cfg(cfg, registry, 'dataset', default_args)

    return dataset
示例#4
0
文件: compose.py 项目: Kuro96/vedasal
 def __init__(self, transforms):
     assert isinstance(transforms, collections.abc.Sequence)
     self.transforms = []
     for transform in transforms:
         if isinstance(transform, dict):
             transform = build_from_cfg(transform, registry, 'pipeline')
             self.transforms.append(transform)
         elif callable(transform):
             self.transforms.append(transform)
         else:
             raise TypeError('transform must be callable or a dict')
示例#5
0
def build_activation_layer(cfg):
    """Build activation layer.

    Args:
        cfg (dict): The activation layer config, which should contain:
            - type (str): Layer type.
            - layer args: Args needed to instantiate an activation layer.

    Returns:
        nn.Module: Created activation layer.
    """
    return build_from_cfg(cfg, registry, 'activation')
示例#6
0
def build(cfg, module_name, default_args=None):
    """Build a module.

    Args:
        cfg (dict, list[dict]): The config of modules, is is either a dict
            or a list of configs.
        registry (:obj:`Registry`): A registry the module belongs to.
        default_args (dict, optional): Default arguments to build the module.
            Defaults to None.

    Returns:
        nn.Module: A built nn module.
    """
    if isinstance(cfg, list):
        modules = [
            build_from_cfg(cfg_, registry, module_name, default_args)
            for cfg_ in cfg
        ]
        return nn.Sequential(*modules)
    else:
        return build_from_cfg(cfg, registry, module_name, default_args)
示例#7
0
文件: builder.py 项目: zfxu/vedadet
def build_dataset(cfg, default_args=None):
    from .dataset_wrappers import (ClassBalancedDataset, ConcatDataset,
                                   RepeatDataset)
    if isinstance(cfg, (list, tuple)):
        dataset = ConcatDataset([build_dataset(c, default_args) for c in cfg])
    elif cfg['typename'] == 'RepeatDataset':
        dataset = RepeatDataset(
            build_dataset(cfg['dataset'], default_args), cfg['times'])
    elif cfg['typename'] == 'ClassBalancedDataset':
        dataset = ClassBalancedDataset(
            build_dataset(cfg['dataset'], default_args), cfg['oversample_thr'])
    elif isinstance(cfg.get('ann_file'), (list, tuple)):
        dataset = _concat_dataset(cfg, default_args)
    else:
        dataset = build_from_cfg(cfg, registry, 'dataset', default_args)

    return dataset
示例#8
0
文件: builder.py 项目: Kuro96/vedasal
def build_engine(cfg):
    return build_from_cfg(cfg, registry, 'engine')
示例#9
0
文件: builder.py 项目: zfxu/vedadet
def build_loss(cfg):
    return build_from_cfg(cfg, registry, 'loss')
示例#10
0
def build_converter(cfg):
    return build_from_cfg(cfg, registry, 'converter')
示例#11
0
文件: builder.py 项目: Kuro96/vedasal
def build_loss(cfg):
    loss = build_from_cfg(cfg, registry, 'loss')
    return loss
示例#12
0
文件: builder.py 项目: Kuro96/vedasal
def build_model(cfg):
    return build_from_cfg(cfg, registry, 'sal_detector')
示例#13
0
def build_meshgrid(cfg):
    return build_from_cfg(cfg, registry, 'meshgrid')
示例#14
0
def build_backbone(cfg):
    """Build backbone."""
    return build_from_cfg(cfg, registry, 'backbone')
示例#15
0
def build_assigner(cfg, **default_args):
    """Builder of box assigner."""
    return build_from_cfg(cfg, registry, 'bbox_assigner', default_args)
示例#16
0
def build_bbox_coder(cfg, **default_args):
    bbox_coder = build_from_cfg(cfg, registry, 'bbox_coder', default_args)
    return bbox_coder
示例#17
0
def build_optimizer_constructor(cfg):
    return build_from_cfg(cfg, registry, 'optimizer_builder')
示例#18
0
def build_iou_calculator(cfg, default_args=None):
    """Builder of IoU calculator."""
    return build_from_cfg(cfg, registry, 'iou_calculator', default_args)
示例#19
0
def build_head(cfg):
    """Build head."""
    return build_from_cfg(cfg, registry, 'head')
示例#20
0
def build_base_anchor(cfg):
    return build_from_cfg(cfg, registry, 'base_anchor')
示例#21
0
def build_detector(cfg):
    return build_from_cfg(cfg, registry, 'detector')
示例#22
0
def build_hook(cfg):
    return build_from_cfg(cfg, registry, 'hook')
示例#23
0
def build_neck(cfg):
    """Build neck."""
    return build_from_cfg(cfg, registry, 'neck')
示例#24
0
def build_criterion(cfg):
    return build_from_cfg(cfg, registry, 'criterion')
示例#25
0
def build_sampler(cfg, **default_args):
    """Builder of box sampler."""
    return build_from_cfg(cfg, registry, 'bbox_sampler', default_args)
示例#26
0
文件: builder.py 项目: Kuro96/vedasal
def build_sequencer(cfg):
    """Build sequencer."""
    return build_from_cfg(cfg, registry, 'sequencer')