All Projects → xiaochus → Mobilenetv2

xiaochus / Mobilenetv2

Licence: mit
A Keras implementation of MobileNetV2.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Mobilenetv2

Facial Expression Recognition Using Cnn
Deep facial expressions recognition using Opencv and Tensorflow. Recognizing facial expressions from images or camera stream
Stars: ✭ 261 (-5.78%)
Mutual labels:  cnn, image-classification
Pytorch Image Classification
Tutorials on how to implement a few key architectures for image classification using PyTorch and TorchVision.
Stars: ✭ 272 (-1.81%)
Mutual labels:  cnn, image-classification
Keras transfer cifar10
Object classification with CIFAR-10 using transfer learning
Stars: ✭ 120 (-56.68%)
Mutual labels:  cnn, image-classification
Keras Oneclassanomalydetection
[5 FPS - 150 FPS] Learning Deep Features for One-Class Classification (AnomalyDetection). Corresponds RaspberryPi3. Convert to Tensorflow, ONNX, Caffe, PyTorch. Implementation by Python + OpenVINO/Tensorflow Lite.
Stars: ✭ 102 (-63.18%)
Mutual labels:  cnn, mobilenetv2
Deep Learning With Python
Deep learning codes and projects using Python
Stars: ✭ 195 (-29.6%)
Mutual labels:  cnn, image-classification
Mobilenet Yolo
MobileNetV2-YoloV3-Nano: 0.5BFlops 3MB HUAWEI P40: 6ms/img, YoloFace-500k:0.1Bflops 420KB🔥🔥🔥
Stars: ✭ 1,566 (+465.34%)
Mutual labels:  cnn, mobilenetv2
Image classifier
CNN image classifier implemented in Keras Notebook 🖼️.
Stars: ✭ 139 (-49.82%)
Mutual labels:  cnn, image-classification
Tf Mobilenet V2
Mobilenet V2(Inverted Residual) Implementation & Trained Weights Using Tensorflow
Stars: ✭ 85 (-69.31%)
Mutual labels:  cnn, image-classification
Beauty Net
A simple, flexible, and extensible template for PyTorch. It's beautiful.
Stars: ✭ 190 (-31.41%)
Mutual labels:  cnn, image-classification
Autoclint
A specially designed light version of Fast AutoAugment
Stars: ✭ 171 (-38.27%)
Mutual labels:  cnn, image-classification
Mobilenet V2 Caffe
MobileNet-v2 experimental network description for caffe
Stars: ✭ 93 (-66.43%)
Mutual labels:  cnn, mobilenetv2
Mobilenetv2 Pytorch
Impementation of MobileNetV2 in pytorch
Stars: ✭ 241 (-13%)
Mutual labels:  cnn, image-classification
Fast Autoaugment
Official Implementation of 'Fast AutoAugment' in PyTorch.
Stars: ✭ 1,297 (+368.23%)
Mutual labels:  cnn, image-classification
Resnetcam Keras
Keras implementation of a ResNet-CAM model
Stars: ✭ 269 (-2.89%)
Mutual labels:  cnn, image-classification
Wb color augmenter
WB color augmenter improves the accuracy of image classification and image semantic segmentation methods by emulating different WB effects (ICCV 2019) [Python & Matlab].
Stars: ✭ 89 (-67.87%)
Mutual labels:  cnn, image-classification
Object Localization
Object localization in images using simple CNNs and Keras
Stars: ✭ 130 (-53.07%)
Mutual labels:  cnn, mobilenetv2
Deepmodels
TensorFlow Implementation of state-of-the-art models since 2012
Stars: ✭ 33 (-88.09%)
Mutual labels:  cnn, image-classification
Meme Generator
MemeGen is a web application where the user gives an image as input and our tool generates a meme at one click for the user.
Stars: ✭ 57 (-79.42%)
Mutual labels:  cnn, image-classification
Iresnet
Improved Residual Networks (https://arxiv.org/pdf/2004.04989.pdf)
Stars: ✭ 163 (-41.16%)
Mutual labels:  cnn, image-classification
Transfer Learning Suite
Transfer Learning Suite in Keras. Perform transfer learning using any built-in Keras image classification model easily!
Stars: ✭ 212 (-23.47%)
Mutual labels:  cnn, image-classification

MobileNet v2

A Python 3 and Keras 2 implementation of MobileNet V2 and provide train method.

According to the paper: Inverted Residuals and Linear Bottlenecks Mobile Networks for Classification, Detection and Segmentation.

Requirement

  • OpenCV 3.4
  • Python 3.5
  • Tensorflow-gpu 1.5.0
  • Keras 2.2

MobileNet v2 and inverted residual block architectures

MobileNet v2:

Each line describes a sequence of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 X 3 kernels. The expansion factor t is always applied to the input size.

MobileNetV2

Bottleneck Architectures:

residual block architectures

Train the model

The recommended size of the image in the paper is 224 * 224. The data\convert.py file provide a demo of resize cifar-100 dataset to this size.

The dataset folder structure is as follows:

| - data/
	| - train/
  		| - class 0/
			| - image.jpg
				....
		| - class 1/
		  ....
		| - class n/
	| - validation/
  		| - class 0/
		| - class 1/
		  ....
		| - class n/

Run command below to train the model:

python train.py --classes num_classes --batch batch_size --epochs epochs --size image_size

The .h5 weight file was saved at model folder. If you want to do fine tune the trained model, you can run the following command. However, it should be noted that the size of the input image should be consistent with the original model.

python train.py --classes num_classes --batch batch_size --epochs epochs --size image_size --weights weights_path --tclasses pre_classes

Parameter explanation

  • --classes, The number of classes of dataset.
  • --size, The image size of train sample.
  • --batch, The number of train samples per batch.
  • --epochs, The number of train iterations.
  • --weights, Fine tune with other weights.
  • --tclasses, The number of classes of pre-trained model.

Reference

@article{MobileNetv2,  
  title={Inverted Residuals and Linear Bottlenecks Mobile Networks for Classification, Detection and Segmentatio},  
  author={Mark Sandler, Andrew Howard, Menglong Zhu, Andrey Zhmoginov, Liang-Chieh Chen},
  journal={arXiv preprint arXiv:1801.04381},
  year={2018}
}

Copyright

See LICENSE for details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].