def convert()

in scripts/utility/convert_pytorch_resnet.py [0:0]


def convert(model, structure, bottleneck):
    out = dict()
    num_convs = 3 if bottleneck else 2

    # Initial module
    copy_layer(model, out, "conv1", "mod1.conv1", CONV_PARAMS)
    copy_layer(model, out, "bn1", "mod1.bn1", BN_PARAMS)

    # Other modules
    for mod_id, num in enumerate(structure):
        for block_id in range(num):
            for conv_id in range(num_convs):
                copy_layer(model, out,
                           "layer{}.{}.conv{}".format(mod_id + 1, block_id, conv_id + 1),
                           "mod{}.block{}.convs.conv{}".format(mod_id + 2, block_id + 1, conv_id + 1),
                           CONV_PARAMS)
                copy_layer(model, out,
                           "layer{}.{}.bn{}".format(mod_id + 1, block_id, conv_id + 1),
                           "mod{}.block{}.convs.bn{}".format(mod_id + 2, block_id + 1, conv_id + 1),
                           BN_PARAMS)

            # Try copying projection module
            try:
                copy_layer(model, out,
                           "layer{}.{}.downsample.0".format(mod_id + 1, block_id),
                           "mod{}.block{}.proj_conv".format(mod_id + 2, block_id + 1),
                           CONV_PARAMS)
                copy_layer(model, out,
                           "layer{}.{}.downsample.1".format(mod_id + 1, block_id),
                           "mod{}.block{}.proj_bn".format(mod_id + 2, block_id + 1),
                           BN_PARAMS)
            except KeyError:
                pass

    return out