Stay organized with collectionsSave and categorize content based on your preferences.
With ML Kit's image labeling APIs you can detect and extract information
about entities in an image across a broad group of categories. The default
image labeling model can identify general objects, places, activities, animal
species, products, and more.
You can also use a custom image classification model to tailor detection
to a specific use case. SeeUsing a custom TensorFlow Lite modelfor more information.
Key capabilities
A powerful general-purpose base classifierRecognizes more than 400 categories that describe the most commonly found objects in
photos.
Tailor to your use case with custom modelsUse other pre-trained models from TensorFlow Hub or your own custom model trained
with TensorFlow, AutoML Vision Edge or TensorFlow Lite Model maker.
Easy-to-use high-level APIsNo need to deal with low-level model input/output, image pre- and
post-processing, or building a processing pipeline. ML Kit extracts the
labels from the TensorFlow Lite model and provides them as a text description.
Note that this API is intended for image classification models that describe the
full image. For classifying one or more objects in an image, such as shoes or
pieces of furniture, theObject Detection & TrackingAPI may be a better fit.
Supported image classification models
The Image Labeling APIs support different image classification models:
Supported image classification models
Base model
By default the API uses a powerful general-purpose image
labeling model that recognizes more than 400 entities that
cover the most commonly-found concepts in photos.
Custom TensorFlow Lite models
To target application-specific concepts, the API
accepts custom image classification models from a wide
range of sources. These can be pre-trained models
downloaded from TensorFlow Hub or your own models trained
with AutoML Vision Edge, TensorFlow Lite Model Maker or TensorFlow
itself. Models can be bundled with your app or hosted with Firebase
Machine Learning and downloaded at run-time.
Using the base model
ML Kit’s base model returns a list of entities that identify people,
things, places, activities, and so on. Each entity comes with a score that
indicates the confidence the ML model has in its relevance. With this
information, you can perform tasks such as automatic metadata generation and
content moderation. The default model provided with ML Kit recognizes more than400 different entities.
The base model in the image labeling API supports 400+ labels, such as the
following examples:
Category
Example labels
People
Crowd Selfie Smile
Activities
Dancing Eating Surfing
Things
Car Piano Receipt
Animals
Bird Cat Dog
Plants
Flower Fruit Vegetable
Places
Beach Lake Mountain
Example results
Here is an example of the entities that were recognized in the accompanying photo.
Photo: Clément Bucco-Lechat / Wikimedia Commons / CC BY-SA 3.0
Label 0
Text
Stadium
Confidence
0.9205354
Label 1
Text
Sports
Confidence
0.7531109
Label 2
Text
Event
Confidence
0.66905296
Label 3
Text
Leisure
Confidence
0.59904146
Label 4
Text
Soccer
Confidence
0.56384534
Label 5
Text
Net
Confidence
0.54679185
Label 6
Text
Plant
Confidence
0.524364
Using a custom TensorFlow Lite model
ML Kit's base image labeling model is built for general-purpose use. It's
trained to recognize 400 categories that describe the most commonly-found
objects in photos. Your app might need a specialized image classification model
that recognizes a narrower number of categories in more detail, such as a model
that distinguishes between species of flowers or types of food.
This API lets you tailor to a particular use case by supporting custom image
classification models from a wide range of sources. Please refer toCustom models with ML Kitto learn more. Custom models can be bundled with your app or dynamically
downloaded from the cloud using Firebase Machine Learning's Model deployment
service.
If needed, Image Labeling uses bilinear image scaling and stretching to adjust
the input image size and aspect ratio so that they fit the requirements of the
underlying model.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eML Kit's image labeling APIs can detect and extract information about entities in an image, including objects, places, activities, and more.\u003c/p\u003e\n"],["\u003cp\u003eYou can leverage the powerful base model to identify over 400 common entities or use custom models tailored to specific use cases.\u003c/p\u003e\n"],["\u003cp\u003eML Kit simplifies the process with high-level APIs that abstract away low-level model complexities, making integration easier.\u003c/p\u003e\n"],["\u003cp\u003eEasily incorporate custom TensorFlow Lite models, whether bundled with your app or dynamically downloaded, to enable specialized image classification.\u003c/p\u003e\n"],["\u003cp\u003eImage Labeling automatically adjusts the input image size and aspect ratio to fit the model's requirements.\u003c/p\u003e\n"]]],[],null,["With ML Kit's image labeling APIs you can detect and extract information\nabout entities in an image across a broad group of categories. The default\nimage labeling model can identify general objects, places, activities, animal\nspecies, products, and more.\n\nYou can also use a custom image classification model to tailor detection\nto a specific use case. See [Using a custom TensorFlow Lite model](#custom-tflite)\nfor more information.\n\nKey capabilities\n\n- **A powerful general-purpose base classifier** Recognizes more than 400 categories that describe the most commonly found objects in photos.\n- **Tailor to your use case with custom models** Use other pre-trained models from TensorFlow Hub or your own custom model trained with TensorFlow, AutoML Vision Edge or TensorFlow Lite Model maker.\n- **Easy-to-use high-level APIs** No need to deal with low-level model input/output, image pre- and post-processing, or building a processing pipeline. ML Kit extracts the labels from the TensorFlow Lite model and provides them as a text description.\n\nNote that this API is intended for image classification models that describe the\nfull image. For classifying one or more objects in an image, such as shoes or\npieces of furniture, the\n[Object Detection \\& Tracking](/ml-kit/vision/object-detection)\nAPI may be a better fit.\n\nSupported image classification models\n\nThe Image Labeling APIs support different image classification models:\n\n| Supported image classification models ||\n|-----------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| **Base model** | By default the API uses a powerful general-purpose image labeling model that recognizes more than 400 entities that cover the most commonly-found concepts in photos. |\n| **Custom TensorFlow Lite models** | To target application-specific concepts, the API accepts custom image classification models from a wide range of sources. These can be pre-trained models downloaded from TensorFlow Hub or your own models trained with AutoML Vision Edge, TensorFlow Lite Model Maker or TensorFlow itself. Models can be bundled with your app or hosted with Firebase Machine Learning and downloaded at run-time. |\n\nUsing the base model\n\nML Kit's base model returns a list of entities that identify people,\nthings, places, activities, and so on. Each entity comes with a score that\nindicates the confidence the ML model has in its relevance. With this\ninformation, you can perform tasks such as automatic metadata generation and\ncontent moderation. The default model provided with ML Kit recognizes more than\n[400 different entities](/ml-kit/vision/image-labeling/label-map).\n\n[iOS](/ml-kit/vision/image-labeling/ios)\n[Android](/ml-kit/vision/image-labeling/android)\n\nExample labels\n\nThe base model in the image labeling API supports 400+ labels, such as the\nfollowing examples:\n\n| Category | Example labels |\n|------------|------------------------------|\n| People | `Crowd` `Selfie` `Smile` |\n| Activities | `Dancing` `Eating` `Surfing` |\n| Things | `Car` `Piano` `Receipt` |\n| Animals | `Bird` `Cat` `Dog` |\n| Plants | `Flower` `Fruit` `Vegetable` |\n| Places | `Beach` `Lake` `Mountain` |\n\nExample results\n\nHere is an example of the entities that were recognized in the accompanying photo.\nPhoto: Clément Bucco-Lechat / Wikimedia Commons / CC BY-SA 3.0\n\n| Label 0 ||\n|----------------|------------|\n| **Text** | Stadium |\n| **Confidence** | 0.9205354 |\n| **Text** | Sports |\n| **Confidence** | 0.7531109 |\n| **Text** | Event |\n| **Confidence** | 0.66905296 |\n| **Text** | Leisure |\n| **Confidence** | 0.59904146 |\n| **Text** | Soccer |\n| **Confidence** | 0.56384534 |\n| **Text** | Net |\n| **Confidence** | 0.54679185 |\n| **Text** | Plant |\n| **Confidence** | 0.524364 |\n\nUsing a custom TensorFlow Lite model\n\nML Kit's base image labeling model is built for general-purpose use. It's\ntrained to recognize 400 categories that describe the most commonly-found\nobjects in photos. Your app might need a specialized image classification model\nthat recognizes a narrower number of categories in more detail, such as a model\nthat distinguishes between species of flowers or types of food.\n\nThis API lets you tailor to a particular use case by supporting custom image\nclassification models from a wide range of sources. Please refer to [Custom models with ML Kit](/ml-kit/custom-models)\nto learn more. Custom models can be bundled with your app or dynamically\ndownloaded from the cloud using Firebase Machine Learning's Model deployment\nservice.\n\n[iOS](/ml-kit/vision/image-labeling/custom-models/ios)\n[Android](/ml-kit/vision/image-labeling/custom-models/android)\n\nInput image preprocessing\n\nIf needed, Image Labeling uses bilinear image scaling and stretching to adjust\nthe input image size and aspect ratio so that they fit the requirements of the\nunderlying model."]]