コード例 #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
ファイル: default_constructor.py プロジェクト: zfxu/vedadet
    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
ファイル: activation.py プロジェクト: zfxu/vedadet
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
ファイル: builder.py プロジェクト: z1z9b89/vedadet
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
ファイル: builder.py プロジェクト: xxxhycl2010/vedadet
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
ファイル: builder.py プロジェクト: xxxhycl2010/vedadet
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
ファイル: builder.py プロジェクト: xxxhycl2010/vedadet
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
ファイル: builder.py プロジェクト: xxxhycl2010/vedadet
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')