TensorFlow Lite

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.

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 Android 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
Hand detection & tracking Palm detection & hand landmarks (download) Blog post | Model card MediaPipe
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 | Community
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

  • E2E TFLite Tutorials - Checkout this repo for sample app ideas and seeking help for your tutorial projects. Once a project gets completed, the links of the TensorFlow Lite model(s), sample code and tutorial will be added to this awesome list.

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