CINXE.COM
Object detection task guide | Google AI Edge | Google AI for Developers
<!doctype html> <html lang="en" dir="ltr"> <head> <meta name="google-signin-client-id" content="157101835696-ooapojlodmuabs2do2vuhhnf90bccmoi.apps.googleusercontent.com"> <meta name="google-signin-scope" content="profile email https://www.googleapis.com/auth/developerprofiles https://www.googleapis.com/auth/developerprofiles.award"> <meta property="og:site_name" content="Google AI for Developers"> <meta property="og:type" content="website"><meta name="theme-color" content="#1967d2"><meta charset="utf-8"> <meta content="IE=Edge" http-equiv="X-UA-Compatible"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="manifest" href="/_pwa/googledevai/manifest.json" crossorigin="use-credentials"> <link rel="preconnect" href="//www.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.googleapis.com" crossorigin> <link rel="preconnect" href="//apis.google.com" crossorigin> <link rel="preconnect" href="//www.google-analytics.com" crossorigin><link rel="stylesheet" href="//fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"> <link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Material+Icons&family=Material+Symbols+Outlined&display=block"><link rel="stylesheet" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/googledevai/css/app.css"> <link rel="shortcut icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/googledevai/images/favicon-new.png"> <link rel="apple-touch-icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/googledevai/images/touchicon-180-new.png"><link rel="canonical" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector"><link rel="search" type="application/opensearchdescription+xml" title="Google AI for Developers" href="https://ai.google.dev/s/opensearch.xml"> <link rel="alternate" hreflang="en" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector" /><link rel="alternate" hreflang="x-default" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector" /><link rel="alternate" hreflang="ar" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=ar" /><link rel="alternate" hreflang="bn" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=bn" /><link rel="alternate" hreflang="zh-Hans" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=zh-cn" /><link rel="alternate" hreflang="zh-Hant" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=zh-tw" /><link rel="alternate" hreflang="fa" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=fa" /><link rel="alternate" hreflang="fr" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=fr" /><link rel="alternate" hreflang="de" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=de" /><link rel="alternate" hreflang="he" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=he" /><link rel="alternate" hreflang="hi" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=hi" /><link rel="alternate" hreflang="id" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=id" /><link rel="alternate" hreflang="it" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=it" /><link rel="alternate" hreflang="ja" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=ja" /><link rel="alternate" hreflang="ko" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=ko" /><link rel="alternate" hreflang="pl" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=pl" /><link rel="alternate" hreflang="pt-BR" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=pt-br" /><link rel="alternate" hreflang="ru" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=ru" /><link rel="alternate" hreflang="es-419" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=es-419" /><link rel="alternate" hreflang="th" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=th" /><link rel="alternate" hreflang="tr" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=tr" /><link rel="alternate" hreflang="vi" href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector?hl=vi" /><title>Object detection task guide | Google AI Edge | Google AI for Developers</title> <meta property="og:title" content="Object detection task guide | Google AI Edge | Google AI for Developers"><meta property="og:url" content="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector"><meta property="og:image" content="https://ai.google.dev/static/site-assets/images/share.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="675"><meta property="og:locale" content="en"><meta name="twitter:card" content="summary_large_image"><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Article", "headline": "Object detection task guide" } </script><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "name": "Google AI Edge", "item": "https://ai.google.dev/edge" },{ "@type": "ListItem", "position": 2, "name": "Object detection task guide", "item": "https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector" }] } </script> <link rel="stylesheet" href="/extras.css"></head> <body class="" template="page" theme="googledevai-theme" type="article" layout="docs" display-toc pending> <devsite-progress type="indeterminate" id="app-progress"></devsite-progress> <section class="devsite-wrapper"> <devsite-cookie-notification-bar></devsite-cookie-notification-bar><devsite-header role="banner" keep-tabs-visible> <div class="devsite-header--inner nocontent"> <div class="devsite-top-logo-row-wrapper-wrapper"> <div class="devsite-top-logo-row-wrapper"> <div class="devsite-top-logo-row"> <button type="button" id="devsite-hamburger-menu" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Navigation menu button" visually-hidden aria-label="Open menu"> </button> <div class="devsite-product-name-wrapper"> <a href="/" class="devsite-site-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Site logo" track-type="globalNav" track-name="googleAIEdge" track-metadata-position="nav" track-metadata-eventDetail="nav"> <picture> <img src="https://ai.google.dev/_static/googledevai/images/lockup-new.svg" class="devsite-site-logo" alt="Google AI Edge"> </picture> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item devsite-has-google-wordmark"> </li> </ul> </span> </div> <div class="devsite-top-logo-row-middle"> <div class="devsite-header-upper-tabs"> <devsite-tabs class="upper-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Upper tabs"> <tab > <a href="https://ai.google.dev/gemini-api" track-metadata-eventdetail="https://ai.google.dev/gemini-api" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - gemini api" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Gemini API" track-name="gemini api" > Gemini API </a> </tab> <tab > <a href="https://ai.google.dev/gemma" track-metadata-eventdetail="https://ai.google.dev/gemma" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - gemma" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Gemma" track-name="gemma" > Gemma </a> </tab> <tab class="devsite-active"> <a href="https://ai.google.dev/edge" track-metadata-eventdetail="https://ai.google.dev/edge" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - google ai edge" track-metadata-module="primary nav" aria-label="Google AI Edge, selected" data-category="Site-Wide Custom Events" data-label="Tab: Google AI Edge" track-name="google ai edge" > Google AI Edge </a> </tab> <tab class="devsite-dropdown "> <span class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - tools" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Tools" track-name="tools" > Tools </span> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Tools" track-type="nav" track-metadata-eventdetail="" track-metadata-position="nav - tools" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Tools" track-name="tools" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-item"> <a href="https://ai.google.dev/responsible" track-type="nav" track-metadata-eventdetail="https://ai.google.dev/responsible" track-metadata-position="nav - tools" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Responsible GenAI Toolkit </div> </a> </li> <li class="devsite-nav-item"> <a href="https://colab.google/" track-type="nav" track-metadata-eventdetail="https://colab.google/" track-metadata-position="nav - tools" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Colab </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/docs/genkit" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/docs/genkit" track-metadata-position="nav - tools" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Firebase Genkit </div> </a> </li> <li class="devsite-nav-item"> <a href="https://jax.readthedocs.io/" track-type="nav" track-metadata-eventdetail="https://jax.readthedocs.io/" track-metadata-position="nav - tools" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> JAX </div> </a> </li> <li class="devsite-nav-item"> <a href="https://keras.io/" track-type="nav" track-metadata-eventdetail="https://keras.io/" track-metadata-position="nav - tools" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Keras </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/" track-metadata-position="nav - tools" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> TensorFlow </div> </a> </li> </ul> </div> </div> </div> </tab> <tab > <a href="https://discuss.ai.google.dev/" track-metadata-eventdetail="https://discuss.ai.google.dev/" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - community" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" > Community </a> </tab> </nav> </devsite-tabs> </div> <devsite-search enable-signin enable-search enable-suggestions enable-query-completion project-name="Google AI Edge" tenant-name="Google AI for Developers" > <form class="devsite-search-form" action="https://ai.google.dev/s/results" method="GET"> <div class="devsite-search-container"> <button type="button" search-open class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Open search"></button> <div class="devsite-searchbox"> <input aria-activedescendant="" aria-autocomplete="list" aria-label="Search" aria-expanded="false" aria-haspopup="listbox" autocomplete="off" class="devsite-search-field devsite-search-query" name="q" placeholder="Search" role="combobox" type="text" value="" > <div class="devsite-search-image material-icons" aria-hidden="true"> </div> <div class="devsite-search-shortcut-icon-container" aria-hidden="true"> <kbd class="devsite-search-shortcut-icon">/</kbd> </div> </div> </div> </form> <button type="button" search-close class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Close search"></button> </devsite-search> </div> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="de" >Deutsch</a> </li> <li role="presentation"> <a role="menuitem" lang="es_419" >Español – América Latina</a> </li> <li role="presentation"> <a role="menuitem" lang="fr" >Français</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="it" >Italiano</a> </li> <li role="presentation"> <a role="menuitem" lang="pl" >Polski</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="vi" >Tiếng Việt</a> </li> <li role="presentation"> <a role="menuitem" lang="tr" >Türkçe</a> </li> <li role="presentation"> <a role="menuitem" lang="ru" >Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="he" >עברית</a> </li> <li role="presentation"> <a role="menuitem" lang="ar" >العربيّة</a> </li> <li role="presentation"> <a role="menuitem" lang="fa" >فارسی</a> </li> <li role="presentation"> <a role="menuitem" lang="hi" >हिंदी</a> </li> <li role="presentation"> <a role="menuitem" lang="bn" >বাংলা</a> </li> <li role="presentation"> <a role="menuitem" lang="th" >ภาษาไทย</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_tw" >中文 – 繁體</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> <devsite-user enable-profiles id="devsite-user"> <span class="button devsite-top-button" aria-hidden="true" visually-hidden>Sign in</span> </devsite-user> </div> </div> </div> <div class="devsite-collapsible-section "> <div class="devsite-header-background"> <div class="devsite-doc-set-nav-row"> <devsite-tabs class="lower-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Lower tabs"> <tab > <a href="https://ai.google.dev/edge" track-metadata-eventdetail="https://ai.google.dev/edge" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - overview" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Overview" track-name="overview" > Overview </a> </tab> <tab class="devsite-dropdown "> <span class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - mediapipe" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: MediaPipe" track-name="mediapipe" > MediaPipe </span> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for MediaPipe" track-type="nav" track-metadata-eventdetail="" track-metadata-position="nav - mediapipe" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: MediaPipe" track-name="mediapipe" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-item"> <a href="https://ai.google.dev/edge/mediapipe/solutions/guide" track-type="nav" track-metadata-eventdetail="https://ai.google.dev/edge/mediapipe/solutions/guide" track-metadata-position="nav - mediapipe" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> MediaPipe Solutions </div> </a> </li> <li class="devsite-nav-item"> <a href="https://ai.google.dev/edge/mediapipe/framework" track-type="nav" track-metadata-eventdetail="https://ai.google.dev/edge/mediapipe/framework" track-metadata-position="nav - mediapipe" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> MediaPipe Framework </div> </a> </li> </ul> </div> </div> </div> </tab> <tab > <a href="https://ai.google.dev/edge/litert" track-metadata-eventdetail="https://ai.google.dev/edge/litert" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - litert" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: LiteRT" track-name="litert" > LiteRT </a> </tab> <tab class="devsite-active"> <a href="https://ai.google.dev/edge/mediapipe/solutions/guide" track-metadata-eventdetail="https://ai.google.dev/edge/mediapipe/solutions/guide" class="devsite-tabs-content gc-analytics-event gemini-hidden-tab" track-type="nav" track-metadata-position="nav - solutions" track-metadata-module="primary nav" aria-label="Solutions, selected" data-category="Site-Wide Custom Events" data-label="Tab: Solutions" track-name="solutions" > Solutions </a> </tab> <tab > <a href="https://ai.google.dev/edge/mediapipe/framework" track-metadata-eventdetail="https://ai.google.dev/edge/mediapipe/framework" class="devsite-tabs-content gc-analytics-event gemini-hidden-tab" track-type="nav" track-metadata-position="nav - framework" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Framework" track-name="framework" > Framework </a> </tab> <tab > <a href="https://ai.google.dev/edge/model-explorer" track-metadata-eventdetail="https://ai.google.dev/edge/model-explorer" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - model explorer" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Model Explorer" track-name="model explorer" > Model Explorer </a> </tab> <tab > <a href="https://ai.google.dev/edge/api" track-metadata-eventdetail="https://ai.google.dev/edge/api" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - api reference" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: API Reference" track-name="api reference" > API Reference </a> </tab> </nav> </devsite-tabs> </div> </div> </div> </div> </devsite-header> <devsite-book-nav scrollbars > <div class="devsite-book-nav-filter" > <span class="filter-list-icon material-icons" aria-hidden="true"></span> <input type="text" placeholder="Filter" aria-label="Type to filter" role="searchbox"> <span class="filter-clear-button hidden" data-title="Clear filter" aria-label="Clear filter" role="button" tabindex="0"></span> </div> <nav class="devsite-book-nav devsite-nav nocontent" aria-label="Side menu"> <div class="devsite-mobile-header"> <button type="button" id="devsite-close-nav" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Close navigation" aria-label="Close navigation"> </button> <div class="devsite-product-name-wrapper"> <a href="/" class="devsite-site-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Site logo" track-type="globalNav" track-name="googleAIEdge" track-metadata-position="nav" track-metadata-eventDetail="nav"> <picture> <img src="https://ai.google.dev/_static/googledevai/images/lockup-new.svg" class="devsite-site-logo" alt="Google AI Edge"> </picture> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item devsite-has-google-wordmark"> </li> </ul> </span> </div> </div> <div class="devsite-book-nav-wrapper"> <div class="devsite-mobile-nav-top"> <ul class="devsite-nav-list"> <li class="devsite-nav-item"> <a href="/gemini-api" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Gemini API" track-name="gemini api" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Gemini API" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Gemini API </span> </a> </li> <li class="devsite-nav-item"> <a href="/gemma" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Gemma" track-name="gemma" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Gemma" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Gemma </span> </a> </li> <li class="devsite-nav-item"> <a href="/edge" class="devsite-nav-title gc-analytics-event devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Tab: Google AI Edge" track-name="google ai edge" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google AI Edge" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google AI Edge </span> </a> <ul class="devsite-nav-responsive-tabs"> <li class="devsite-nav-item"> <a href="/edge" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Overview" track-name="overview" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Overview" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Overview </span> </a> </li> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: MediaPipe" track-name="mediapipe" > <span class="devsite-nav-text" tooltip > MediaPipe </span> </span> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu devsite-lower-tab-item"> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: MediaPipe" track-name="mediapipe" > <span class="devsite-nav-text" tooltip menu="MediaPipe"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="MediaPipe"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/edge/litert" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: LiteRT" track-name="litert" data-category="Site-Wide Custom Events" data-label="Responsive Tab: LiteRT" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > LiteRT </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/edge/mediapipe/solutions/guide" class="devsite-nav-title gc-analytics-event devsite-nav-has-children devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Tab: Solutions" track-name="solutions" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Solutions" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip menu="_book"> Solutions </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="_book"> </span> </a> </li> <li class="devsite-nav-item"> <a href="/edge/mediapipe/framework" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Framework" track-name="framework" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Framework" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Framework </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/edge/model-explorer" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Model Explorer" track-name="model explorer" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Model Explorer" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Model Explorer </span> </a> </li> <li class="devsite-nav-item"> <a href="/edge/api" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: API Reference" track-name="api reference" data-category="Site-Wide Custom Events" data-label="Responsive Tab: API Reference" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > API Reference </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> </ul> </li> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Tools" track-name="tools" > <span class="devsite-nav-text" tooltip > Tools </span> </span> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Tools" track-name="tools" > <span class="devsite-nav-text" tooltip menu="Tools"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Tools"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="https://discuss.ai.google.dev/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Community" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Community </span> </a> </li> </ul> </div> <div class="devsite-mobile-nav-bottom"> <ul class="devsite-nav-list" menu="_book"> <li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/guide" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/guide" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/guide" ><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/about" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/about" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/about" ><span class="devsite-nav-text" tooltip>About the Preview</span></a></li> <li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/tasks" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/tasks" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/tasks" ><span class="devsite-nav-text" tooltip>Tasks</span></a></li> <li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/model_maker" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/model_maker" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/model_maker" ><span class="devsite-nav-text" tooltip>Model Maker</span></a></li> <li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/studio" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/studio" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/studio" ><span class="devsite-nav-text" tooltip>Studio</span></a></li> <li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Vision tasks</span> </div></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Object detection</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/object_detector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/object_detector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/object_detector" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/object_detector/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/object_detector/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/object_detector/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/object_detector/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/object_detector/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/object_detector/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/object_detector/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/object_detector/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/object_detector/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/object_detector/ios" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/object_detector/ios" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/object_detector/ios" ><span class="devsite-nav-text" tooltip>iOS</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/customization/object_detector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/customization/object_detector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/customization/object_detector" ><span class="devsite-nav-text" tooltip>Customize</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Image classification</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_classifier" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_classifier" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_classifier" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_classifier/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_classifier/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_classifier/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_classifier/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_classifier/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_classifier/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_classifier/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_classifier/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_classifier/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_classifier/ios" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_classifier/ios" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_classifier/ios" ><span class="devsite-nav-text" tooltip>iOS</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/customization/image_classifier" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/customization/image_classifier" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/customization/image_classifier" ><span class="devsite-nav-text" tooltip>Customize</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Image segmentation</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_segmenter" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_segmenter" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_segmenter" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_segmenter/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_segmenter/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_segmenter/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_segmenter/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_segmenter/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_segmenter/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_segmenter/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_segmenter/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_segmenter/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_segmenter/ios" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_segmenter/ios" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_segmenter/ios" ><span class="devsite-nav-text" tooltip>iOS</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Interactive segmentation</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/interactive_segmenter" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/interactive_segmenter" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/interactive_segmenter" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/interactive_segmenter/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/interactive_segmenter/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/interactive_segmenter/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/interactive_segmenter/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/interactive_segmenter/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/interactive_segmenter/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/interactive_segmenter/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/interactive_segmenter/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/interactive_segmenter/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Gesture recognition</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/gesture_recognizer" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/gesture_recognizer" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/gesture_recognizer" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/gesture_recognizer/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/gesture_recognizer/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/gesture_recognizer/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/gesture_recognizer/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/gesture_recognizer/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/gesture_recognizer/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/gesture_recognizer/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/gesture_recognizer/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/gesture_recognizer/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/gesture_recognizer/ios" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/gesture_recognizer/ios" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/gesture_recognizer/ios" ><span class="devsite-nav-text" tooltip>iOS</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/customization/gesture_recognizer" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/customization/gesture_recognizer" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/customization/gesture_recognizer" ><span class="devsite-nav-text" tooltip>Customize</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Hand landmark detection</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/hand_landmarker" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/hand_landmarker" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/hand_landmarker" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/hand_landmarker/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/hand_landmarker/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/hand_landmarker/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/hand_landmarker/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/hand_landmarker/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/hand_landmarker/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/hand_landmarker/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/hand_landmarker/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/hand_landmarker/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/hand_landmarker/ios" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/hand_landmarker/ios" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/hand_landmarker/ios" ><span class="devsite-nav-text" tooltip>iOS</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Image embedding</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_embedder" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_embedder" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_embedder" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_embedder/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_embedder/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_embedder/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_embedder/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_embedder/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_embedder/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_embedder/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_embedder/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_embedder/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_embedder/ios" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_embedder/ios" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_embedder/ios" ><span class="devsite-nav-text" tooltip>iOS</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Face detection</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/face_detector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/face_detector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/face_detector" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/face_detector/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/face_detector/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/face_detector/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/face_detector/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/face_detector/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/face_detector/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/face_detector/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/face_detector/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/face_detector/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/face_detector/ios" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/face_detector/ios" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/face_detector/ios" ><span class="devsite-nav-text" tooltip>iOS</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Face landmark detection</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/face_landmarker" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/face_landmarker" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/face_landmarker" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/face_landmarker/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/face_landmarker/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/face_landmarker/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/face_landmarker/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/face_landmarker/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/face_landmarker/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/face_landmarker/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/face_landmarker/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/face_landmarker/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/face_landmarker/ios" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/face_landmarker/ios" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/face_landmarker/ios" ><span class="devsite-nav-text" tooltip>iOS</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Pose landmark detection</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/pose_landmarker" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/pose_landmarker" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/pose_landmarker" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/pose_landmarker/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/pose_landmarker/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/pose_landmarker/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/pose_landmarker/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/pose_landmarker/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/pose_landmarker/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/pose_landmarker/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/pose_landmarker/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/pose_landmarker/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/pose_landmarker/ios" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/pose_landmarker/ios" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/pose_landmarker/ios" ><span class="devsite-nav-text" tooltip>iOS</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-experimental"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Face stylization</span><span class="devsite-nav-icon material-icons" data-icon="experimental" data-title="Experimental!" aria-hidden="true"></span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/face_stylizer" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/face_stylizer" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/face_stylizer" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/face_stylizer/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/face_stylizer/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/face_stylizer/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/face_stylizer/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/face_stylizer/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/face_stylizer/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/face_stylizer/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/face_stylizer/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/face_stylizer/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/customization/face_stylizer" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/customization/face_stylizer" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/customization/face_stylizer" ><span class="devsite-nav-text" tooltip>Customize</span></a></li></ul></div></li> <li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/holistic_landmarker" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/holistic_landmarker" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/holistic_landmarker" ><span class="devsite-nav-text" tooltip>Holistic landmark detection</span></a></li> <li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Text tasks</span> </div></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Text classification</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/text/text_classifier" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/text/text_classifier" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/text/text_classifier" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/text/text_classifier/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/text/text_classifier/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/text/text_classifier/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/text/text_classifier/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/text/text_classifier/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/text/text_classifier/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/text/text_classifier/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/text/text_classifier/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/text/text_classifier/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/text/text_classifier/ios" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/text/text_classifier/ios" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/text/text_classifier/ios" ><span class="devsite-nav-text" tooltip>iOS</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/customization/text_classifier" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/customization/text_classifier" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/customization/text_classifier" ><span class="devsite-nav-text" tooltip>Customize</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Text embedding</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/text/text_embedder" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/text/text_embedder" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/text/text_embedder" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/text/text_embedder/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/text/text_embedder/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/text/text_embedder/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/text/text_embedder/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/text/text_embedder/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/text/text_embedder/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/text/text_embedder/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/text/text_embedder/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/text/text_embedder/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/text/text_embedder/ios" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/text/text_embedder/ios" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/text/text_embedder/ios" ><span class="devsite-nav-text" tooltip>iOS</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Language detection</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/text/language_detector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/text/language_detector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/text/language_detector" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/text/language_detector/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/text/language_detector/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/text/language_detector/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/text/language_detector/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/text/language_detector/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/text/language_detector/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/text/language_detector/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/text/language_detector/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/text/language_detector/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Audio tasks</span> </div></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Audio classification</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/audio/audio_classifier" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/audio/audio_classifier" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/audio/audio_classifier" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/audio/audio_classifier/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/audio/audio_classifier/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/audio/audio_classifier/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/audio/audio_classifier/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/audio/audio_classifier/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/audio/audio_classifier/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/audio/audio_classifier/python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/audio/audio_classifier/python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/audio/audio_classifier/python" ><span class="devsite-nav-text" tooltip>Python</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Generative AI tasks</span> </div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-experimental"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Image generation</span><span class="devsite-nav-icon material-icons" data-icon="experimental" data-title="Experimental!" aria-hidden="true"></span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_generator" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_generator" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_generator" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/vision/image_generator/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/vision/image_generator/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/vision/image_generator/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item devsite-nav-external"><a href="https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/main/notebooks/community/model_garden/model_garden_mediapipe_image_generation.ipynb" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/main/notebooks/community/model_garden/model_garden_mediapipe_image_generation.ipynb" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/main/notebooks/community/model_garden/model_garden_mediapipe_image_generation.ipynb" ><span class="devsite-nav-text" tooltip>Customize</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-experimental"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>LLM Inference</span><span class="devsite-nav-icon material-icons" data-icon="experimental" data-title="Experimental!" aria-hidden="true"></span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/genai/llm_inference" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/genai/llm_inference" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/genai/llm_inference" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/genai/llm_inference/android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/genai/llm_inference/android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/genai/llm_inference/android" ><span class="devsite-nav-text" tooltip>Android</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/genai/llm_inference/web_js" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/genai/llm_inference/web_js" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/genai/llm_inference/web_js" ><span class="devsite-nav-text" tooltip>Web</span></a></li><li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/genai/llm_inference/ios" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/genai/llm_inference/ios" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/genai/llm_inference/ios" ><span class="devsite-nav-text" tooltip>iOS</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Platform setup guides</span> </div></li> <li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/setup_android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/setup_android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/setup_android" ><span class="devsite-nav-text" tooltip>Android setup</span></a></li> <li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/setup_python" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/setup_python" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/setup_python" ><span class="devsite-nav-text" tooltip>Python setup</span></a></li> <li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/setup_web" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/setup_web" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/setup_web" ><span class="devsite-nav-text" tooltip>Web setup</span></a></li> <li class="devsite-nav-item"><a href="/edge/mediapipe/solutions/setup_ios" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /edge/mediapipe/solutions/setup_ios" track-type="bookNav" track-name="click" track-metadata-eventdetail="/edge/mediapipe/solutions/setup_ios" ><span class="devsite-nav-text" tooltip>iOS setup</span></a></li> </ul> <ul class="devsite-nav-list" menu="Tools" aria-label="Side menu" hidden> <li class="devsite-nav-item"> <a href="/responsible" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Responsible GenAI Toolkit" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Responsible GenAI Toolkit </span> </a> </li> <li class="devsite-nav-item"> <a href="https://colab.google/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Colab" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Colab </span> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/docs/genkit" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Firebase Genkit" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Firebase Genkit </span> </a> </li> <li class="devsite-nav-item"> <a href="https://jax.readthedocs.io/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: JAX" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > JAX </span> </a> </li> <li class="devsite-nav-item"> <a href="https://keras.io/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Keras" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Keras </span> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: TensorFlow" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > TensorFlow </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="MediaPipe" aria-label="Side menu" hidden> <li class="devsite-nav-item"> <a href="/edge/mediapipe/solutions/guide" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: MediaPipe Solutions" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > MediaPipe Solutions </span> </a> </li> <li class="devsite-nav-item"> <a href="/edge/mediapipe/framework" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: MediaPipe Framework" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > MediaPipe Framework </span> </a> </li> </ul> </div> </div> </nav> </devsite-book-nav> <section id="gc-wrapper"> <main role="main" class="devsite-main-content" has-book-nav has-sidebar > <div class="devsite-sidebar"> <div class="devsite-sidebar-content"> <devsite-toc class="devsite-nav" role="navigation" aria-label="On this page" depth="2" scrollbars ></devsite-toc> <devsite-recommendations-sidebar class="nocontent devsite-nav"> </devsite-recommendations-sidebar> </div> </div> <devsite-content> <article class="devsite-article"> <div class="devsite-banner devsite-banner-announcement nocontent" background="google-blue" > <div class="devsite-banner-message"> <div class="devsite-banner-message-text"> <b>Introducing LiteRT</b>: Google's high-performance runtime for on-device AI, formerly known as TensorFlow Lite. <a class="button button-primary" href="https://developers.googleblog.com/en/tensorflow-lite-is-now-litert">Learn more</a> </div> </div> </div> <div class="devsite-article-meta nocontent" role="navigation"> <ul class="devsite-breadcrumb-list" aria-label="Breadcrumb"> <li class="devsite-breadcrumb-item "> <a href="https://ai.google.dev/" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="" > Home </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://ai.google.dev/edge" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="2" track-type="globalNav" track-name="breadcrumb" track-metadata-position="2" track-metadata-eventdetail="Google AI Edge" > Google AI Edge </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://ai.google.dev/edge/mediapipe/solutions/guide" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="3" track-type="globalNav" track-name="breadcrumb" track-metadata-position="3" track-metadata-eventdetail="" > Solutions </a> </li> </ul> <devsite-thumb-rating position="header"> </devsite-thumb-rating> </div> <devsite-feedback position="header" project-name="Google AI Edge" product-id="5336252" bucket="documentation" context="" version="t-devsite-webserver-20241114-r00-rc02.464921008191574316" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="header" class="nocontent" project-icon="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/googledevai/images/touchicon-180-new.png" > <button> Send feedback </button> </devsite-feedback> <h1 class="devsite-page-title" tabindex="-1"> Object detection task guide </h1> <div class="devsite-page-title-meta"><devsite-view-release-notes></devsite-view-release-notes></div> <devsite-toc class="devsite-nav" depth="2" devsite-toc-embedded > </devsite-toc> <div class="devsite-article-body clearfix "> <p><img src="/static/mediapipe/images/solutions/examples/object_detector.png" alt width="400px" class="attempt-right"></p> <p>The MediaPipe Object Detector task lets you detect the presence and location of multiple classes of objects within images or videos. For example, an object detector can locate dogs in an image. This task operates on image data with a machine learning (ML) model, accepting static data or a continuous video stream as input and outputting a list of detection results. Each detection result represents an object that appears within the image or video.</p> <p><a class="button button-with-icon button-primary" href="https://mediapipe-studio.webapps.google.com/demo/object_detector" target="_blank"> Try it!<span class="material-icons icon-after" aria-hidden="true" translate="no">arrow_forward</span> </a></p> <h2 id="get_started" data-text="Get Started" tabindex="-1">Get Started</h2> <p>Start using this task by following one of these implementation guides for the platform you are working on:</p> <ul> <li><strong>Android</strong> - <a href="https://github.com/google-ai-edge/mediapipe-samples/tree/main/examples/object_detection/android">Code example</a> - <a href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector/android">Guide</a></li> <li><strong>Python</strong> - <a href="https://colab.research.google.com/github/googlesamples/mediapipe/blob/main/examples/object_detection/python/object_detector.ipynb">Code example</a> - <a href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector/python">Guide</a></li> <li><strong>Web</strong> - <a href="https://codepen.io/mediapipe-preview/pen/vYrWvNg">Code example</a> - <a href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector/web_js">Guide</a></li> <li><strong>iOS</strong> - <a href="https://github.com/google-ai-edge/mediapipe-samples/tree/main/examples/object_detection/ios">Code example</a> - <a href="https://ai.google.dev/edge/mediapipe/solutions/vision/object_detector/ios">Guide</a></li> </ul> <p>These platform-specific guides walk you through a basic implementation of this task, including a recommended model, and code example with recommended configuration options.</p> <h2 id="task_details" data-text="Task details" tabindex="-1">Task details</h2> <p>This section describes the capabilities, inputs, and outputs of this task.</p> <h3 id="features" data-text="Features" tabindex="-1">Features</h3> <ul> <li><strong>Input image processing</strong> - Processing includes image rotation, resizing, normalization, and color space conversion.</li> <li><strong>Label map locale</strong> - Set the language used for display names</li> <li><strong>Score threshold</strong> - Filter results based on prediction scores.</li> <li><strong>Top-k detection</strong> - Filter the number detection results.</li> <li><strong>Label allowlist and denylist</strong> - Specify the categories detected.</li> </ul> <table> <thead> <tr> <th>Task inputs</th> <th>Task outputs</th> </tr> </thead> <tbody> <tr> <td>The Object Detector API accepts an input of one of the following data types: <br> <ul> <li>Still images</li> </ul> <ul> <li>Decoded video frames</li> </ul> <ul> <li>Live video feed</li> </ul> </td> <td>The Object Detector API outputs the following results for detected objects: <br> <ul> <li>Category of object</li> </ul> <ul> <li>Probability score</li> </ul> <ul> <li>Bounding box coordinates</li> </ul> </td> </tr> </tbody> </table> <h3 id="configurations_options" data-text="Configurations options" tabindex="-1">Configurations options</h3> <p>This task has the following configuration options:</p> <table> <thead> <tr> <th>Option Name</th> <th>Description</th> <th>Value Range</th> <th>Default Value</th> </tr> </thead> <tbody> <tr> <td><code translate="no" dir="ltr">running_mode</code></td> <td>Sets the running mode for the task. There are three modes:<br> <br> IMAGE: The mode for single image inputs.<br> <br> VIDEO: The mode for decoded frames of a video.<br> <br> LIVE_STREAM: The mode for a livestream of input data, such as from a camera. In this mode, resultListener must be called to set up a listener to receive results asynchronously.</td> <td>{<code translate="no" dir="ltr">IMAGE, VIDEO, LIVE_STREAM</code>}</td> <td><code translate="no" dir="ltr">IMAGE</code></td> </tr> <tr> <td><code translate="no" dir="ltr">display_names</code></td> <td>Sets the language of labels to use for display names provided in the metadata of the task's model, if available. Default is <code translate="no" dir="ltr">en</code> for English. You can add localized labels to the metadata of a custom model using the <a href="https://ai.google.dev/edge/lite/models/metadata_writer_tutorial">TensorFlow Lite Metadata Writer API</a> </td> <td>Locale code</td> <td>en</td> </tr> <tr> <td><code translate="no" dir="ltr">max_results</code></td> <td>Sets the optional maximum number of top-scored detection results to return.</td> <td>Any positive numbers</td> <td>-1 (all results are returned)</td> </tr> <tr> <td><code translate="no" dir="ltr">score_threshold</code></td> <td>Sets the prediction score threshold that overrides the one provided in the model metadata (if any). Results below this value are rejected.</td> <td>Any float</td> <td>Not set</td> </tr> <tr> <td><code translate="no" dir="ltr">category_allowlist</code></td> <td>Sets the optional list of allowed category names. If non-empty, detection results whose category name is not in this set will be filtered out. Duplicate or unknown category names are ignored. This option is mutually exclusive with <code translate="no" dir="ltr">category_denylist</code> and using both results in an error.</td> <td>Any strings</td> <td>Not set</td> </tr> <tr> <td><code translate="no" dir="ltr">category_denylist</code></td> <td>Sets the optional list of category names that are not allowed. If non-empty, detection results whose category name is in this set will be filtered out. Duplicate or unknown category names are ignored. This option is mutually exclusive with <code translate="no" dir="ltr">category_allowlist</code> and using both results in an error.</td> <td>Any strings</td> <td>Not set</td> </tr> </tbody> </table> <h2 id="models" data-text="Models" tabindex="-1">Models</h2> <p>The Object Detector API requires an object detection model to be downloaded and stored in your project directory. If you do not already have a model, start with the default, recommended model. The other models presented in this section make trade-offs between latency and accuracy.</p> <aside class="experimental"> <b>Attention:</b> This MediaPipe Solutions Preview is an early release. <a href="/edge/mediapipe/solutions/about#notice">Learn more</a>. </aside> <h3 id="efficientdet-lite0_model_recommended" data-text="EfficientDet-Lite0 model (Recommended)" tabindex="-1">EfficientDet-Lite0 model (Recommended)</h3> <p>The EfficientDet-Lite0 model uses an EfficientNet-Lite0 backbone with a 320x320 input size and BiFPN feature network. The model was trained with the <a href="https://cocodataset.org/">COCO dataset</a>, a large-scale object detection dataset that contains 1.5 million object instances and 80 object labels. See the <a href="https://storage.googleapis.com/mediapipe-tasks/object_detector/labelmap.txt">full list</a> of supported labels. EfficientDet-Lite0 is available as an int8, float16, or float32. This model is recommended because it strikes a balance between latency and accuracy. It is both accurate and lightweight enough for many use cases.</p> <table> <thead> <tr> <th>Model name</th> <th>Input shape</th> <th>Quantization type</th> <th>Versions</th> </tr> </thead> <tr> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite0/int8/latest/efficientdet_lite0.tflite"> EfficientDet-Lite0 (int8)</a> <td>320 x 320</td> <td>int8</td> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite0/int8/latest/efficientdet_lite0.tflite"> Latest</a> </td> <tr> <tr> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite0/float16/latest/efficientdet_lite0.tflite"> EfficientDet-Lite0 (float 16)</a> <td>320 x 320</td> <td>float 16</td> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite0/float16/latest/efficientdet_lite0.tflite"> Latest</a> </td> <tr> <tr> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite0/float16/latest/efficientdet_lite0.tflite"> EfficientDet-Lite0 (float 32)</a> </td> <td>320 x 320</td> <td>None (float32)</td> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite0/float32/latest/efficientdet_lite0.tflite"> Latest</a> </td> <tr> </table> <h3 id="efficientdet-lite2_model" data-text="EfficientDet-Lite2 model" tabindex="-1">EfficientDet-Lite2 model</h3> <p>The EfficientDet-Lite2 model uses an EfficientNet-Lite2 backbone with a 448x448 input size and BiFPN feature network. The model was trained with the <a href="https://cocodataset.org/">COCO dataset</a>, a large-scale object detection dataset that contains 1.5 million object instances and 80 object labels. See the <a href="https://storage.googleapis.com/mediapipe-tasks/object_detector/labelmap.txt">full list</a> of supported labels. EfficientDet-Lite2 is available as an int8, float16, or float32 model. This model is generally more accurate than EfficientDet-Lite0, but is also slower and more memory intensive. This model is appropriate for use cases where accuracy is a greater priority to speed and size.</p> <table> <thead> <tr> <th>Model name</th> <th>Input shape</th> <th>Quantization type</th> <th>Versions</th> </tr> </thead> <tr> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite2/int8/latest/efficientdet_lite2.tflite"> EfficientDet-Lite2 (int8)</a></td> <td>448 x 448</td> <td>int8</td> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite2/int8/latest/efficientdet_lite2.tflite"> Latest</a> </td> </tr> <tr> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite2/float16/latest/efficientdet_lite2.tflite"> EfficientDet-Lite2 (float 16)</a></td> <td>448 x 448</td> <td>float 16</td> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite2/float16/latest/efficientdet_lite2.tflite"> Latest</a> </td> </tr> <tr> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite2/float32/latest/efficientdet_lite2.tflite"> EfficientDet-Lite2 (float 32)</a> </td> <td>448 x 448</td> <td>None (float32)</td> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite2/float32/latest/efficientdet_lite2.tflite"> Latest</a> </td> </tr> </table> <h3 id="ssd_mobilenetv2_model" data-text="SSD MobileNetV2 model" tabindex="-1">SSD MobileNetV2 model</h3> <p>The SSD MobileNetV2 model uses a MobileNetV2 backbone with a 256x256 input size and SSD feature network. The model was trained with the <a href="https://cocodataset.org/">COCO dataset</a>, a large-scale object detection dataset that contains 1.5 million object instances and 80 object labels. See the <a href="https://storage.googleapis.com/mediapipe-tasks/object_detector/labelmap.txt">full list</a> of supported labels. SSD MobileNetV2 is available as an int8 and float 32 model. This model is faster and lighter than EfficientDet-Lite0, but is also generally less accurate. This model is appropriate for use cases that require a fast, lightweight model that sacrifices some accuracy.</p> <table> <thead> <tr> <th>Model name</th> <th>Input shape</th> <th>Quantization type</th> <th>Versions</th> </tr> </thead> <tr> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/ssd_mobilenet_v2/float16/latest/ssd_mobilenet_v2.tflite"> SSDMobileNet-V2 (int8)</a></td> <td>256 x 256</td> <td>int8</td> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/ssd_mobilenet_v2/float16/latest/ssd_mobilenet_v2.tflite"> Latest</a> </td> </tr> <tr> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/ssd_mobilenet_v2/float32/latest/ssd_mobilenet_v2.tflite"> SSDMobileNet-V2 (float 32)</a> </td> <td>256 x 256</td> <td>None (float32)</td> <td> <a href="https://storage.googleapis.com/mediapipe-models/object_detector/ssd_mobilenet_v2/float32/latest/ssd_mobilenet_v2.tflite"> Latest</a> </td> </tr> </table> <h3 id="model_requirements_and_metadata" data-text="Model requirements and metadata" tabindex="-1">Model requirements and metadata</h3> <p>This section describes the requirements for custom models if you decide to build a model to use with this task. Custom models must be in <a href="https://ai.google.dev/edge/lite/models/trained">TensorFlow Lite</a> format and must include <a href="https://ai.google.dev/edge/lite/models/metadata_writer_tutorial#object_detectors">metadata</a> describing the operating parameters of the model.</p> <h4 id="design_requirements" data-text="Design requirements" tabindex="-1">Design requirements</h4> <table> <thead> <tr> <th>Input</th> <th>Shape</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Input image</td> <td>Float32 tensor of shape[1, height, width, 3]</td> <td>The normalized input image.</td> </tr> </tbody> </table> <table> <thead> <tr> <th>Output</th> <th>Shape</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><code translate="no" dir="ltr">detection_boxes</code></td> <td>Float32 tensor of shape [1, num_boxes, 4]</td> <td>Box location of each detected object.</td> </tr> <tr> <td><code translate="no" dir="ltr">detection_classes</code></td> <td>Float32 tensor of shape [1, num_boxes]</td> <td>Indices of the class names for each detected object.</td> </tr> <tr> <td><code translate="no" dir="ltr">detection_scores</code></td> <td>float32 tensor of shape [1, num_boxes]</td> <td>Prediction scores for each detected object.</td> </tr> <tr> <td><code translate="no" dir="ltr">num_boxes</code></td> <td>Float32 tensor of size 1</td> <td>The number of detected boxes.</td> </tr> </tbody> </table> <h4 id="metadata_requirements" data-text="Metadata requirements" tabindex="-1">Metadata requirements</h4> <table> <thead> <tr> <th>Parameter</th> <th>Description</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><code translate="no" dir="ltr">input_norm_mean</code></td> <td>The mean value used in the input tensor normalization.</td> <td>The normalized input image.</td> </tr> <tr> <td><code translate="no" dir="ltr">input_norm_std</code></td> <td>The field norm used in the input tensor normalization.</td> <td>Box location of each detected object.</td> </tr> <tr> <td><code translate="no" dir="ltr">label_file_paths</code></td> <td>The paths to the category tensor label files. If the model does not have any label files, pass an empty list.</td> <td>Indices of the class names for each detected object.</td> </tr> <tr> <td><code translate="no" dir="ltr">score_calibration_md</code></td> <td>Information on the score calibration operation in the classification tensor. This parameter is not required if the model does not use score<br>calibration.</td> <td>Prediction scores for each detected object.</td> </tr> <tr> <td><code translate="no" dir="ltr">num_boxes</code></td> <td>Float32 tensor of size 1</td> <td>The number of detected boxes.</td> </tr> </tbody> </table> <h2 id="task_benchmarks" data-text="Task benchmarks" tabindex="-1">Task benchmarks</h2> <p>Here's the task benchmarks for the above pre-trained models. The latency result is the average latency on Pixel 6 using CPU / GPU.</p> <table> <thead> <tr> <th>Model Name</th> <th>CPU Latency </th> <th>GPU Latency </th> </tr> </thead> <tr> <td>EfficientDet-Lite0 float32 model </td> <td>61.30ms</td> <td>27.83ms</td> </tr> <tr> <td>EfficientDet-Lite0 float16 model </td> <td>53.97ms</td> <td>27.97ms</td> </tr> <tr> <td>EfficientDet-Lite0 int8 model </td> <td>29.31ms</td> <td> - </td> </tr> <tr> <td>EfficientDet-Lite2 float32 model </td> <td>197.98ms</td> <td>41.15ms</td> </tr> <tr> <td>EfficientDet-Lite2 float16 model </td> <td>198.77ms</td> <td>47.31ms</td> </tr> <tr> <td>EfficientDet-Lite2 int8 model </td> <td>70.91ms</td> <td> - </td> </tr> <tr> <td>SSD MobileNetV2 float32 model </td> <td>36.30ms</td> <td>24.01ms</td> </tr> <tr> <td>SSD MobileNetV2 float16 model </td> <td>37.35ms</td> <td>28.16ms</td> </tr> </table> </div> <devsite-thumb-rating position="footer"> </devsite-thumb-rating> <devsite-feedback position="footer" project-name="Google AI Edge" product-id="5336252" bucket="documentation" context="" version="t-devsite-webserver-20241114-r00-rc02.464921008191574316" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="footer" class="nocontent" project-icon="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/googledevai/images/touchicon-180-new.png" > <button> Send feedback </button> </devsite-feedback> <div class="devsite-floating-action-buttons"> </div> </article> <devsite-content-footer class="nocontent"> <p>Except as otherwise noted, the content of this page is licensed under the <a href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 License</a>, and code samples are licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache 2.0 License</a>. For details, see the <a href="https://developers.google.com/site-policies">Google Developers Site Policies</a>. Java is a registered trademark of Oracle and/or its affiliates.</p> <p>Last updated 2024-05-21 UTC.</p> </devsite-content-footer> <devsite-notification > </devsite-notification> <div class="devsite-content-data"> <template class="devsite-thumb-rating-feedback"> <devsite-feedback position="thumb-rating" project-name="Google AI Edge" product-id="5336252" bucket="documentation" context="" version="t-devsite-webserver-20241114-r00-rc02.464921008191574316" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="thumb-rating" class="nocontent" project-icon="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/googledevai/images/touchicon-180-new.png" > <button> Need to tell us more? </button> </devsite-feedback> </template> <template class="devsite-content-data-template"> [[["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 2024-05-21 UTC."],[],[]] </template> </div> </devsite-content> </main> <devsite-footer-promos class="devsite-footer"> </devsite-footer-promos> <devsite-footer-linkboxes class="devsite-footer"> <nav class="devsite-footer-linkboxes nocontent" aria-label="Footer links"> </nav> </devsite-footer-linkboxes> <devsite-footer-utility class="devsite-footer"> <div class="devsite-footer-utility nocontent"> <nav class="devsite-footer-utility-links" aria-label="Utility links"> <ul class="devsite-footer-utility-list"> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="//policies.google.com/terms" data-category="Site-Wide Custom Events" data-label="Footer Terms link" > Terms </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="//policies.google.com/privacy" data-category="Site-Wide Custom Events" data-label="Footer Privacy link" > Privacy </a> </li> <li class="devsite-footer-utility-item glue-cookie-notification-bar-control"> <a class="devsite-footer-utility-link gc-analytics-event" href="#" data-category="Site-Wide Custom Events" data-label="Footer Manage cookies link" aria-hidden="true" > Manage cookies </a> </li> </ul> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="de" >Deutsch</a> </li> <li role="presentation"> <a role="menuitem" lang="es_419" >Español – América Latina</a> </li> <li role="presentation"> <a role="menuitem" lang="fr" >Français</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="it" >Italiano</a> </li> <li role="presentation"> <a role="menuitem" lang="pl" >Polski</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="vi" >Tiếng Việt</a> </li> <li role="presentation"> <a role="menuitem" lang="tr" >Türkçe</a> </li> <li role="presentation"> <a role="menuitem" lang="ru" >Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="he" >עברית</a> </li> <li role="presentation"> <a role="menuitem" lang="ar" >العربيّة</a> </li> <li role="presentation"> <a role="menuitem" lang="fa" >فارسی</a> </li> <li role="presentation"> <a role="menuitem" lang="hi" >हिंदी</a> </li> <li role="presentation"> <a role="menuitem" lang="bn" >বাংলা</a> </li> <li role="presentation"> <a role="menuitem" lang="th" >ภาษาไทย</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_tw" >中文 – 繁體</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> </nav> </div> </devsite-footer-utility> <devsite-panel></devsite-panel> </section></section> <devsite-sitemask></devsite-sitemask> <devsite-snackbar></devsite-snackbar> <devsite-tooltip ></devsite-tooltip> <devsite-heading-link></devsite-heading-link> <devsite-analytics> <script type="application/json" analytics>[]</script> <script type="application/json" tag-management>{"at": "True", "ga4": [], "ga4p": [], "gtm": [{"id": "GTM-TC2MQKS8", "purpose": 0}], "parameters": {"internalUser": "False", "language": {"machineTranslated": "False", "requested": "en", "served": "en"}, "pageType": "article", "projectName": "Google AI Edge", "signedIn": "False", "tenant": "googledevai", "recommendations": {"sourcePage": "", "sourceType": 0, "sourceRank": 0, "sourceIdenticalDescriptions": 0, "sourceTitleWords": 0, "sourceDescriptionWords": 0, "experiment": ""}, "experiment": {"ids": ""}}}</script> </devsite-analytics> <devsite-badger></devsite-badger> <script nonce="SPQ459dRGCECxBvc/gOi1o9FBqy13P"> (function(d,e,v,s,i,t,E){d['GoogleDevelopersObject']=i; t=e.createElement(v);t.async=1;t.src=s;E=e.getElementsByTagName(v)[0]; E.parentNode.insertBefore(t,E);})(window, document, 'script', 'https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/googledevai/js/app_loader.js', '[59,"en",null,"/js/devsite_app_module.js","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/googledevai","https://googledevai-dot-devsite-v2-prod-3p.appspot.com",1,null,["/_pwa/googledevai/manifest.json","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/images/video-placeholder.svg","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/googledevai/images/favicon-new.png","/_static/googledevai/images/lockup-new.svg","https://fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"],1,null,[1,6,8,12,14,17,21,25,50,52,63,70,75,76,80,87,91,92,93,97,98,100,101,102,103,104,105,107,108,109,110,112,113,116,117,118,120,122,124,125,126,127,129,130,131,132,133,134,135,136,138,140,141,147,148,149,151,152,156,157,158,159,161,163,164,168,169,170,179,180,182,183,186,191,193,196],"AIzaSyCNm9YxQumEXwGJgTDjxoxXK6m1F-9720Q","AIzaSyCc76DZePGtoyUjqKrLdsMGk_ry7sljLbY","ai.google.dev","AIzaSyB9bqgQ2t11WJsOX8qNsCQ6U-w91mmqF-I","AIzaSyAdYnStPdzjcJJtQ0mvIaeaMKj7_t6J_Fg",null,null,null,["MiscFeatureFlags__developers_footer_image","Profiles__enable_complete_playlist_endpoint","BookNav__enable_tenant_cache_key","Profiles__enable_public_developer_profiles","MiscFeatureFlags__emergency_css","Cloud__enable_llm_concierge_chat","MiscFeatureFlags__enable_variable_operator","DevPro__enable_cloud_innovators_plus","Profiles__enable_dashboard_curated_recommendations","CloudShell__cloud_shell_button","TpcFeatures__enable_mirror_tenant_redirects","Cloud__enable_cloud_shell","Search__enable_dynamic_content_confidential_banner","Cloud__enable_free_trial_server_call","Profiles__enable_completecodelab_endpoint","MiscFeatureFlags__enable_firebase_utm","Profiles__enable_recognition_badges","Search__enable_suggestions_from_borg","EngEduTelemetry__enable_engedu_telemetry","Cloud__enable_legacy_calculator_redirect","MiscFeatureFlags__enable_explain_this_code","Search__enable_page_map","TpcFeatures__enable_required_headers","Concierge__enable_pushui","Profiles__require_profile_eligibility_for_signin","Cloud__enable_cloud_shell_fte_user_flow","MiscFeatureFlags__enable_view_transitions","Profiles__enable_page_saving","Experiments__reqs_query_experiments","Search__enable_ai_eligibility_checks","Profiles__enable_profile_collections","MiscFeatureFlags__enable_project_variables","Profiles__enable_release_notes_notifications","Cloud__enable_cloud_dlp_service","Analytics__enable_clearcut_logging","DevPro__enable_developer_subscriptions","Profiles__enable_awarding_url","Profiles__enable_developer_profiles_callout","Cloud__enable_cloudx_experiment_ids","Cloud__enable_cloud_facet_chat","MiscFeatureFlags__developers_footer_dark_image","Cloud__enable_cloudx_ping","CloudShell__cloud_code_overflow_menu","OnSwitch__enable"],null,null,"AIzaSyA58TaKli1DculwmAmbpzLVGuWc8eCQgQc","https://developerscontentserving-pa.googleapis.com","AIzaSyDWBU60w0P9hEkr29kkksYs8Z7gvZ8u_wc","https://developerscontentsearch-pa.googleapis.com",2,4,null,"https://developerprofiles-pa.googleapis.com",[59,"googledevai","Google AI for Developers","ai.google.dev",null,"googledevai-dot-devsite-v2-prod-3p.appspot.com",null,null,[null,1,null,null,null,null,null,null,null,null,null,[1],null,null,null,null,null,null,[1],null,null,null,null,[1],[1,1,null,1,1]],null,[73,null,null,null,null,null,"/images/lockup-new.svg","/images/touchicon-180-new.png",null,null,null,null,1,1,null,null,null,null,null,null,null,1,null,null,null,"/images/lockup-dark-theme-new.svg",[]],[],null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[[],[1,1]],[[null,null,null,null,null,["GTM-TC2MQKS8"],null,null,null,null,null,[["GTM-TC2MQKS8",1]],1]],null,4]]') </script> <devsite-a11y-announce></devsite-a11y-announce> </body> </html>