awesome tflite

Awesome TensorFlow Lite Awesome PRs Welcome Twitter

TensorFlow Lite is a set of tools that help convert and optimize TensorFlow models to run on mobile and edge devices. It’s currently running on more than 4 billion devices! With TensorFlow 2.x, you can train a model with tf.Keras, easily convert a model to .tflite and deploy it; or you can download a pretrained TensorFlow Lite model from the model zoo.

This is an awesome list of TensorFlow Lite models with sample apps, helpful tools and learning resources - * Showcase what the community has built with TensorFlow Lite * Put all the samples side-by-side for easy reference * Share knowledge and learning resources

Please submit a PR if you would like to contribute and follow the guidelines here.

Contents

What is new

Here are the new features and tools of TensorFlow Lite: * Announcement of the new converter - MLIR-based and enables conversion of new classes of models such as Mask R-CNN and Mobile BERT etc., supports functional control flow and better error handling during conversion. Enabled by default in the nightly builds. * Android Support Library - Makes mobile development easier (Android sample code). * Model Maker - Create your custom image & text classification models easily in a few lines of code. See below the Icon Classifier for a tutorial by the community. * On-device training - It is finally here! Currently limited to transfer learning for image classification only but it’s a great start. See the official Android sample code and another one from the community (Blog | Android). * Hexagon delegate - How to use the Hexagon Delegate to speed up model inference on mobile and edge devices. Also see blog post Accelerating TensorFlow Lite on Qualcomm Hexagon DSPs. * Model Metadata - Provides a standard for model descriptions which also enables Code Gen and Android Studio ML Model Binding.

Models with samples

Here are the TensorFlow Lite models with app / device implementations, and references. Note: pretrained TensorFlow Lite models from MediaPipe are included, which you can implement with or without MediaPipe.

Computer vision

Task Model App | Reference Source
Classification MobileNetV1 (download) Android | iOS | Raspberry Pi | Overview tensorflow.org
Classification MobileNetV2 Recognize Flowers on Android Codelab | Android TensorFlow team
Classification MobileNetV2 Skin Lesion Detection Android Community
Classification MobileNetV2 American Sign Language Detection | Colab Notebook | Android Community
Classification CNN + Quantisation Aware Training Stone Paper Scissor Detection Colab Notebook | Flutter Community
Classification EfficientNet-Lite0 (download) Icon Classifier Colab & Android | tutorial 1 | tutorial 2 Community
Object detection Quantized COCO SSD MobileNet v1 (download) Android | iOS | Overview tensorflow.org
Object detection YOLO Flutter | Paper Community
Object detection MobileNetV2 SSD (download) Reference MediaPipe
Object detection MobileDet (Paper) Blog post (includes the TFLite conversion process) MobileDet is from University of Wisconsin-Madison and Google and the blog post is from the Community
License Plate detection SSD MobileNet (download) Flutter Community
Face detection BlazeFace (download) Paper MediaPipe
Face Authentication FaceNet Flutter Community
Hand detection & tracking Palm detection & hand landmarks (download) Blog post | Model card | Android MediaPipe & Community
Pose estimation Posenet (download) Android | iOS | Overview tensorflow.org
Segmentation DeepLab V3 (download) Android & iOS | Overview | Flutter Image | Realtime | Paper tf.org & Community
Segmentation Different variants of DeepLab V3 models Models on TF Hub with Colab Notebooks Community
Hair Segmentation Download Paper MediaPipe
Style transfer Arbitrary image stylization Overview | Android | Flutter tf.org & Community
Style transfer Better-quality style transfer models in .tflite Models on TF Hub with Colab Notebooks Community
GANs U-GAT-IT (Selfie2Anime) Project repo | Android | Tutorial Community
GANs White-box CartoonGAN (download) Project repo | Android | Tutorial Community
Video Style Transfer Download:
Dynamic range models)
Android | Tutorial Community
Segmentation & Style transfer DeepLabV3 & Style Transfer models Project repo | Android | Tutorial Community
Low-light image enhancement Models on TF Hub Project repo | Original Paper | Flutter
Text Detection CRAFT Text Detector (Paper) Download | Project Repository | Blog1-Conversion to TFLite | Blog2-EAST vs CRAFT | Models on TF Hub | Android (Coming Soon) Community
Text Detection EAST Text Detector (Paper) Models on TF Hub | Conversion and Inference Notebook Community
Image Extrapolation Models on TF Hub Colab Notebook | Original Paper Community
OCR Models on TF Hub Project Repository Community

Text

Task Model Sample apps Source
Question & Answer DistilBERT Android Hugging Face
Text Generation GPT-2 / DistilGPT2 Android Hugging Face
Text Classification Download Android |iOS | Flutter tf.org & Community

Speech

Task Model App | Reference Source
Speech Recognition DeepSpeech Reference Mozilla
Speech Synthesis Tacotron-2, FastSpeech2, MB-Melgan Android TensorSpeech
Speech Synthesis(TTS) Tacotron2, FastSpeech2, MelGAN, MB-MelGAN, HiFi-GAN, Parallel WaveGAN Inference Notebook | Project Repository Community

Recommendation

Task Model App | Reference Source
On-device Recommendation Dual-Encoder Android | iOS | Reference tf.org & Community

Game

Task Model App | Reference Source
Game agent Reinforcement learning Flutter | Tutorial Community

Model zoo

TensorFlow Lite models

These are the TensorFlow Lite models that could be implemented in apps and things: * MobileNet - Pretrained MobileNet v2 and v3 models. * TensorFlow Lite models * TensorFlow Lite models - With official Android and iOS examples. * Pretrained models - Quantized and floating point variants. * TensorFlow Hub - Set “Model format = TFLite” to find TensorFlow Lite models.

TensorFlow models

These are TensorFlow models that could be converted to .tflite and then implemented in apps and things: * TensorFlow models - Official TensorFlow models. * Tensorflow detection model zoo - Pre-trained on COCO, KITTI, AVA v2.1, iNaturalist Species datasets.

Ideas and Inspiration

ML Kit examples

ML Kit is a mobile SDK that brings Google’s ML expertise to mobile developers. * 2019-10-01 ML Kit Translate demo - A tutorial with material design Android (Kotlin) sample - recognize, identify Language and translate text from live camera with ML Kit for Firebase. * 2019-03-13 Computer Vision with ML Kit - Flutter In Focus. * 2019-02-09 Flutter + MLKit: Business Card Mail Extractor - A blog post with a Flutter sample code. * 2019-02-08 From TensorFlow to ML Kit: Power your Android application with machine learning - A talk with Android (Kotlin) sample code. * 2018-08-07 Building a Custom Machine Learning Model on Android with TensorFlow Lite. * 2018-07-20 ML Kit and Face Detection in Flutter. * 2018-07-27 ML Kit on Android 4: Landmark Detection. * 2018-07-28 ML Kit on Android 3: Barcode Scanning. * 2018-05-31 ML Kit on Android 2: Face Detection. * 2018-05-22 ML Kit on Android 1: Intro.

Plugins and SDKs

Learning resources

Interested but not sure how to get started? Here are some learning resources that will help you whether you are a beginner or a practitioner in the field for a while.

Blog posts

Books

Videos

Podcasts

MOOCs