Ejemplo n.º 1
0
def create_segnet(architecture, input_size, n_classes, weights=None):

    if architecture == 'Inception3':
        raise Exception(
            'Inception3 not supported with SegNet! Only support Full Yolo, Tiny Yolo, MobileNet, SqueezeNet, VGG16, ResNet50 at the moment!'
        )
    elif architecture == 'SqueezeNet':
        model = squeezenet_segnet(n_classes,
                                  input_size,
                                  encoder_level=4,
                                  weights=weights)
    elif architecture == 'Full Yolo':
        model = full_yolo_segnet(n_classes,
                                 input_size,
                                 encoder_level=4,
                                 weights=weights)
    elif architecture == 'Tiny Yolo':
        model = tiny_yolo_segnet(n_classes,
                                 input_size,
                                 encoder_level=4,
                                 weights=weights)
    elif architecture == 'VGG16':
        model = vgg16_segnet(n_classes,
                             input_size,
                             encoder_level=4,
                             weights=weights)
    elif architecture == 'ResNet50':
        model = resnet50_segnet(n_classes,
                                input_size,
                                encoder_level=4,
                                weights=weights)
    elif 'MobileNet' in architecture:
        model = mobilenet_segnet(n_classes,
                                 input_size,
                                 encoder_level=4,
                                 weights=weights,
                                 architecture=architecture)

    output_size = (model.output_height, model.output_width)
    network = Segnet(model, input_size, n_classes, model.normalize,
                     output_size)

    return network
Ejemplo n.º 2
0
def create_segnet(architecture, input_size, n_classes, weights = None):

    if architecture == 'NASNetMobile':
        model = nasnetmobile_segnet(n_classes, input_size, encoder_level=4, weights = weights)
    elif architecture == 'SqueezeNet':
        model = squeezenet_segnet(n_classes, input_size, encoder_level=4, weights = weights)
    elif architecture == 'Full Yolo':
        model = full_yolo_segnet(n_classes, input_size, encoder_level=4, weights = weights)
    elif architecture == 'Tiny Yolo':
        model = tiny_yolo_segnet(n_classes, input_size, encoder_level=4, weights = weights)
    elif architecture == 'DenseNet121':
        model = densenet121_segnet(n_classes, input_size, encoder_level=4, weights = weights)
    elif architecture == 'ResNet50':
        model = resnet50_segnet(n_classes, input_size, encoder_level=4, weights = weights)
    elif 'MobileNet' in architecture:
        model = mobilenet_segnet(n_classes, input_size, encoder_level=4, weights = weights, architecture = architecture)

    output_size = (model.output_height, model.output_width)
    network = Segnet(model, input_size, n_classes, model.normalize, output_size)

    return network