Python keras.applications.mobilenet.MobileNet() Examples
The following are 15
code examples of keras.applications.mobilenet.MobileNet().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
keras.applications.mobilenet
, or try the search function
.
Example #1
Source File: mobilenet.py From ImageAI with MIT License | 6 votes |
def mobilenet_retinanet(num_classes, backbone='mobilenet224_1.0', inputs=None, modifier=None, **kwargs): alpha = float(backbone.split('_')[1]) # choose default input if inputs is None: inputs = keras.layers.Input((None, None, 3)) mobilenet = MobileNet(input_tensor=inputs, alpha=alpha, include_top=False, pooling=None, weights=None) # get last layer from each depthwise convolution blocks 3, 5, 11 and 13 outputs = [mobilenet.get_layer(name='conv_pw_{}_relu'.format(i)).output for i in [3, 5, 11, 13]] # create the mobilenet backbone mobilenet = keras.models.Model(inputs=inputs, outputs=outputs, name=mobilenet.name) # invoke modifier if given if modifier: mobilenet = modifier(mobilenet) # create the full model model = retinanet.retinanet_bbox(inputs=inputs, num_classes=num_classes, backbone=mobilenet, **kwargs) return model
Example #2
Source File: TYY_model.py From SSR-Net with Apache License 2.0 | 6 votes |
def __call__(self): logging.debug("Creating model...") inputs = Input(shape=self._input_shape) model_mobilenet = MobileNet(input_shape=self._input_shape, alpha=self.alpha, depth_multiplier=1, dropout=1e-3, include_top=False, weights=None, input_tensor=None, pooling=None) x = model_mobilenet(inputs) #flatten = Flatten()(x) feat_a = Conv2D(20,(1,1),activation='relu')(x) feat_a = Flatten()(feat_a) feat_a = Dropout(0.2)(feat_a) feat_a = Dense(32,activation='relu',name='feat_a')(feat_a) pred_a = Dense(1,name='pred_a')(feat_a) model = Model(inputs=inputs, outputs=[pred_a]) return model
Example #3
Source File: mobilenet.py From PL-ZSD_Release with MIT License | 6 votes |
def mobilenet_retinanet(num_classes, backbone='mobilenet224_1.0', inputs=None, modifier=None, **kwargs): alpha = float(backbone.split('_')[1]) # choose default input if inputs is None: inputs = keras.layers.Input((None, None, 3)) mobilenet = MobileNet(input_tensor=inputs, alpha=alpha, include_top=False, pooling=None, weights=None) # get last layer from each depthwise convolution blocks 3, 5, 11 and 13 outputs = [mobilenet.get_layer(name='conv_pw_{}_relu'.format(i)).output for i in [3, 5, 11, 13]] # create the mobilenet backbone mobilenet = keras.models.Model(inputs=inputs, outputs=outputs, name=mobilenet.name) # invoke modifier if given if modifier: mobilenet = modifier(mobilenet) # create the full model model = retinanet.retinanet_bbox(inputs=inputs, num_classes=num_classes, backbone=mobilenet, **kwargs) return model
Example #4
Source File: backend.py From head-detection-using-yolo with MIT License | 5 votes |
def __init__(self, input_size): input_image = Input(shape=(input_size, input_size, 3)) mobilenet = MobileNet(input_shape=(224,224,3), include_top=False) mobilenet.load_weights(MOBILENET_BACKEND_PATH) x = mobilenet(input_image) self.feature_extractor = Model(input_image, x)
Example #5
Source File: object_detection_model.py From SmartBin with MIT License | 5 votes |
def __init__(self, input_size): input_image = Input(shape=(input_size, input_size, 3)) mobilenet = MobileNet(input_shape=(224,224,3), include_top=False) mobilenet.load_weights("data/mobilenet_backend.h5") x = mobilenet(input_image) self.feature_extractor = Model(input_image, x)
Example #6
Source File: mobilenet.py From DeepForest with MIT License | 5 votes |
def mobilenet_retinanet(num_classes, backbone='mobilenet224_1.0', inputs=None, modifier=None, **kwargs): """ Constructs a retinanet model using a mobilenet backbone. Args num_classes: Number of classes to predict. backbone: Which backbone to use (one of ('mobilenet128', 'mobilenet160', 'mobilenet192', 'mobilenet224')). inputs: The inputs to the network (defaults to a Tensor of shape (None, None, 3)). modifier: A function handler which can modify the backbone before using it in retinanet (this can be used to freeze backbone layers for example). Returns RetinaNet model with a MobileNet backbone. """ alpha = float(backbone.split('_')[1]) # choose default input if inputs is None: inputs = keras.layers.Input((None, None, 3)) backbone = mobilenet.MobileNet(input_tensor=inputs, alpha=alpha, include_top=False, pooling=None, weights=None) # create the full model layer_names = ['conv_pw_5_relu', 'conv_pw_11_relu', 'conv_pw_13_relu'] layer_outputs = [backbone.get_layer(name).output for name in layer_names] backbone = keras.models.Model(inputs=inputs, outputs=layer_outputs, name=backbone.name) # invoke modifier if given if modifier: backbone = modifier(backbone) return retinanet.retinanet(inputs=inputs, num_classes=num_classes, backbone_layers=backbone.outputs, **kwargs)
Example #7
Source File: pretrain_imagenet_cnn.py From hyperspectral_deeplearning_review with GNU General Public License v3.0 | 5 votes |
def get_model_pretrain(arch): modlrate = 1 if "VGG16" in arch: base_model = vgg16.VGG16 elif "VGG19" in arch: base_model = vgg19.VGG19 elif "RESNET50" in arch: base_model = resnet50.ResNet50 elif "DENSENET121" in arch: base_model = densenet.DenseNet121 elif "MOBILENET" in arch: base_model = mobilenet.MobileNet modlrate = 10 else: print("model not avaiable"); exit() base_model = base_model(weights='imagenet', include_top=False) return base_model, modlrate
Example #8
Source File: mobilenet.py From kaggle-rsna18 with MIT License | 5 votes |
def mobilenet_retinanet(num_classes, backbone='mobilenet224_1.0', inputs=None, modifier=None, **kwargs): """ Constructs a retinanet model using a mobilenet backbone. Args num_classes: Number of classes to predict. backbone: Which backbone to use (one of ('mobilenet128', 'mobilenet160', 'mobilenet192', 'mobilenet224')). inputs: The inputs to the network (defaults to a Tensor of shape (None, None, 3)). modifier: A function handler which can modify the backbone before using it in retinanet (this can be used to freeze backbone layers for example). Returns RetinaNet model with a MobileNet backbone. """ alpha = float(backbone.split('_')[1]) # choose default input if inputs is None: inputs = keras.layers.Input((None, None, 3)) backbone = mobilenet.MobileNet(input_tensor=inputs, alpha=alpha, include_top=False, pooling=None, weights=None) # create the full model layer_names = ['conv_pw_5_relu', 'conv_pw_11_relu', 'conv_pw_13_relu'] layer_outputs = [backbone.get_layer(name).output for name in layer_names] backbone = keras.models.Model(inputs=inputs, outputs=layer_outputs, name=backbone.name) # invoke modifier if given if modifier: backbone = modifier(backbone) return retinanet.retinanet(inputs=inputs, num_classes=num_classes, backbone_layers=backbone.outputs, **kwargs)
Example #9
Source File: mobilenet.py From CameraRadarFusionNet with Apache License 2.0 | 5 votes |
def mobilenet_retinanet(num_classes, backbone='mobilenet224_1.0', inputs=None, modifier=None, cfg=None, **kwargs): """ Constructs a retinanet model using a mobilenet backbone. Args num_classes: Number of classes to predict. backbone: Which backbone to use (one of ('mobilenet128', 'mobilenet160', 'mobilenet192', 'mobilenet224')). inputs: The inputs to the network (defaults to a Tensor of shape (None, None, 3)). modifier: A function handler which can modify the backbone before using it in retinanet (this can be used to freeze backbone layers for example). Returns RetinaNet model with a MobileNet backbone. """ alpha = float(backbone.split('_')[1]) # choose default input if inputs is None: inputs = keras.layers.Input((None, None, 3)) elif isinstance(inputs, tuple): inputs = keras.layers.Input(inputs) backbone = mobilenet.MobileNet(input_tensor=inputs, alpha=alpha, include_top=False, pooling=None, weights=None) # create the full model layer_names = ['conv_pw_5_relu', 'conv_pw_11_relu', 'conv_pw_13_relu'] layer_outputs = [backbone.get_layer(name).output for name in layer_names] backbone = keras.models.Model(inputs=inputs, outputs=layer_outputs, name=backbone.name) # invoke modifier if given if modifier: backbone = modifier(backbone) return retinanet.retinanet(inputs=inputs, num_classes=num_classes, backbone_layers=backbone.outputs, **kwargs)
Example #10
Source File: mobilenet.py From keras-retinanet with Apache License 2.0 | 5 votes |
def mobilenet_retinanet(num_classes, backbone='mobilenet224_1.0', inputs=None, modifier=None, **kwargs): """ Constructs a retinanet model using a mobilenet backbone. Args num_classes: Number of classes to predict. backbone: Which backbone to use (one of ('mobilenet128', 'mobilenet160', 'mobilenet192', 'mobilenet224')). inputs: The inputs to the network (defaults to a Tensor of shape (None, None, 3)). modifier: A function handler which can modify the backbone before using it in retinanet (this can be used to freeze backbone layers for example). Returns RetinaNet model with a MobileNet backbone. """ alpha = float(backbone.split('_')[1]) # choose default input if inputs is None: inputs = keras.layers.Input((None, None, 3)) backbone = mobilenet.MobileNet(input_tensor=inputs, alpha=alpha, include_top=False, pooling=None, weights=None) # create the full model layer_names = ['conv_pw_5_relu', 'conv_pw_11_relu', 'conv_pw_13_relu'] layer_outputs = [backbone.get_layer(name).output for name in layer_names] backbone = keras.models.Model(inputs=inputs, outputs=layer_outputs, name=backbone.name) # invoke modifier if given if modifier: backbone = modifier(backbone) # C2 not provided backbone_layers = { 'C3': backbone.outputs[0], 'C4': backbone.outputs[1], 'C5': backbone.outputs[2] } return retinanet.retinanet(inputs=inputs, num_classes=num_classes, backbone_layers=backbone_layers, **kwargs)
Example #11
Source File: models.py From pretrained.ml with MIT License | 5 votes |
def __init__(self): logger.info('Loading MobileNet') self.model = MobileNet(weights='imagenet')
Example #12
Source File: test_bench.py From Keras-inference-time-optimizer with MIT License | 5 votes |
def get_small_model_with_other_model_as_layer(): from keras.layers import Input, Dense from keras.models import Model from keras.applications.mobilenet import MobileNet inp_mask = Input(shape=(128, 128, 3)) pretrain_model_mask = MobileNet(input_shape=(128, 128, 3), include_top=False, weights='imagenet', pooling='avg') pretrain_model_mask.name = 'mobilenet' x = pretrain_model_mask(inp_mask) out = Dense(2, activation='sigmoid')(x) model = Model(inputs=inp_mask, outputs=[out]) return model
Example #13
Source File: mobilenet.py From keras-m2det with Apache License 2.0 | 5 votes |
def mobilenet_m2det(num_classes, backbone='mobilenet224_1.0', inputs=None, modifier=None, **kwargs): """ Constructs a m2det model using a mobilenet backbone. Args num_classes: Number of classes to predict. backbone: Which backbone to use (one of ('mobilenet128', 'mobilenet160', 'mobilenet192', 'mobilenet224')). inputs: The inputs to the network (defaults to a Tensor of shape (None, None, 3)). modifier: A function handler which can modify the backbone before using it in m2det (this can be used to freeze backbone layers for example). Returns RetinaNet model with a MobileNet backbone. """ alpha = float(backbone.split('_')[1]) # choose default input if inputs is None: inputs = keras.layers.Input((640, 640, 3)) backbone = mobilenet.MobileNet(input_tensor=inputs, alpha=alpha, include_top=False, pooling=None, weights=None) # create the full model layer_names = ['conv_pw_5_relu', 'conv_pw_11_relu', 'conv_pw_13_relu'] layer_outputs = [backbone.get_layer(name).output for name in layer_names] backbone = keras.models.Model(inputs=inputs, outputs=layer_outputs, name=backbone.name) # invoke modifier if given if modifier: backbone = modifier(backbone) print(backbone.summary()) return m2det.m2det(inputs=inputs, num_classes=num_classes, backbone_layers=backbone.outputs, **kwargs)
Example #14
Source File: mobilenet.py From perceptron-benchmark with Apache License 2.0 | 4 votes |
def mobilenet_retinanet(num_classes, backbone='mobilenet224_1.0', inputs=None, modifier=None, **kwargs): """ Constructs a retinanet model using a mobilenet backbone. Parameters ---------- num_classes: int Number of classes to predict. backbone : str Which backbone to use (one of ('mobilenet128', 'mobilenet160', 'mobilenet192', 'mobilenet224')). inputs : tensor The inputs to the network (defaults to a Tensor of shape (None, None, 3)). modifier : function A function handler which can modify the backbone before using it in retinanet (this can be used to freeze backbone layers for example). Returns RetinaNet model with a MobileNet backbone. """ alpha = float(backbone.split('_')[1]) # choose default input if inputs is None: inputs = keras.layers.Input((None, None, 3)) backbone = mobilenet.MobileNet( input_tensor=inputs, alpha=alpha, include_top=False, pooling=None, weights=None) # create the full model layer_names = ['conv_pw_5_relu', 'conv_pw_11_relu', 'conv_pw_13_relu'] layer_outputs = [backbone.get_layer(name).output for name in layer_names] backbone = keras.models.Model( inputs=inputs, outputs=layer_outputs, name=backbone.name) # invoke modifier if given if modifier: backbone = modifier(backbone) return retinanet.retinanet( inputs=inputs, num_classes=num_classes, backbone_layers=backbone.outputs, **kwargs)
Example #15
Source File: test_bench.py From Keras-inference-time-optimizer with MIT License | 4 votes |
def get_tst_neural_net(type): model = None custom_objects = dict() if type == 'mobilenet_small': from keras.applications.mobilenet import MobileNet model = MobileNet((128, 128, 3), depth_multiplier=1, alpha=0.25, include_top=True, weights='imagenet') elif type == 'mobilenet': from keras.applications.mobilenet import MobileNet model = MobileNet((224, 224, 3), depth_multiplier=1, alpha=1.0, include_top=True, weights='imagenet') elif type == 'mobilenet_v2': from keras.applications.mobilenetv2 import MobileNetV2 model = MobileNetV2((224, 224, 3), depth_multiplier=1, alpha=1.4, include_top=True, weights='imagenet') elif type == 'resnet50': from keras.applications.resnet50 import ResNet50 model = ResNet50(input_shape=(224, 224, 3), include_top=True, weights='imagenet') elif type == 'inception_v3': from keras.applications.inception_v3 import InceptionV3 model = InceptionV3(input_shape=(299, 299, 3), include_top=True, weights='imagenet') elif type == 'inception_resnet_v2': from keras.applications.inception_resnet_v2 import InceptionResNetV2 model = InceptionResNetV2(input_shape=(299, 299, 3), include_top=True, weights='imagenet') elif type == 'xception': from keras.applications.xception import Xception model = Xception(input_shape=(299, 299, 3), include_top=True, weights='imagenet') elif type == 'densenet121': from keras.applications.densenet import DenseNet121 model = DenseNet121(input_shape=(224, 224, 3), include_top=True, weights='imagenet') elif type == 'densenet169': from keras.applications.densenet import DenseNet169 model = DenseNet169(input_shape=(224, 224, 3), include_top=True, weights='imagenet') elif type == 'densenet201': from keras.applications.densenet import DenseNet201 model = DenseNet201(input_shape=(224, 224, 3), include_top=True, weights='imagenet') elif type == 'nasnetmobile': from keras.applications.nasnet import NASNetMobile model = NASNetMobile(input_shape=(224, 224, 3), include_top=True, weights='imagenet') elif type == 'nasnetlarge': from keras.applications.nasnet import NASNetLarge model = NASNetLarge(input_shape=(331, 331, 3), include_top=True, weights='imagenet') elif type == 'vgg16': from keras.applications.vgg16 import VGG16 model = VGG16(input_shape=(224, 224, 3), include_top=False, pooling='avg', weights='imagenet') elif type == 'vgg19': from keras.applications.vgg19 import VGG19 model = VGG19(input_shape=(224, 224, 3), include_top=False, pooling='avg', weights='imagenet') elif type == 'multi_io': model = get_custom_multi_io_model() elif type == 'multi_model_layer_1': model = get_custom_model_with_other_model_as_layer() elif type == 'multi_model_layer_2': model = get_small_model_with_other_model_as_layer() elif type == 'Conv2DTranspose': model = get_Conv2DTranspose_model() elif type == 'RetinaNet': model, custom_objects = get_RetinaNet_model() elif type == 'conv3d_model': model = get_simple_3d_model() return model, custom_objects