builder.py 320 Bytes
from utils.registery import METRIC_REGISTRY
import copy

from .recon_metric import Recon

def build_metric(cfg):
    cfg = copy.deepcopy(cfg)
    try:
        metric_cfg = cfg['solver']['metric']
    except Exception:
        raise 'should contain {solver.metric}!'

    return METRIC_REGISTRY.get(metric_cfg['name'])()