Dziękujemy za zapoznanie się z Google I/O. Zobacz wszystkie sesje na żądanie Oglądaj na żądanie

Szybki start iOS, Szybki start iOS

Aby rozpocząć korzystanie z TensorFlow Lite na iOS, zalecamy zapoznanie się z następującym przykładem:

Przykład klasyfikacji obrazu iOS

Aby uzyskać wyjaśnienie dotyczące kodu źródłowego, należy również przeczytać klasyfikację obrazów TensorFlow Lite iOS .

Ta przykładowa aplikacja wykorzystuje klasyfikację obrazu do ciągłego klasyfikowania wszystkiego, co widzi z tylnej kamery urządzenia, wyświetlając najbardziej prawdopodobne klasyfikacje. Pozwala użytkownikowi wybrać pomiędzy modelem zmiennoprzecinkowym lub skwantyzowanym i wybrać liczbę wątków do przeprowadzenia wnioskowania.

Dodaj TensorFlow Lite do swojego projektu Swift lub Objective-C

TensorFlow Lite oferuje natywne biblioteki iOS napisane w Swift i Objective-C . Zacznij pisać własny kod dla systemu iOS, korzystając z przykładowej klasyfikacji obrazów Swift jako punktu wyjścia.

W poniższych sekcjach pokazano, jak dodać TensorFlow Lite Swift lub Objective-C do swojego projektu:

twórcy CocoaPods

W swoim Podfile dodaj kapsułę TensorFlow Lite. Następnie uruchom pod install .

Szybki

use_frameworks!
pod 'TensorFlowLiteSwift'

Cel C

pod 'TensorFlowLiteObjC'

Określanie wersji

Dostępne są wersje stabilne i wersje nocne zarówno dla podów TensorFlowLiteSwift , jak i TensorFlowLiteObjC . Jeśli nie określisz ograniczenia wersji, jak w powyższych przykładach, CocoaPods domyślnie pobierze najnowszą stabilną wersję.

Możesz także określić ograniczenie wersji. Na przykład, jeśli chcesz polegać na wersji 2.10.0, możesz zapisać zależność jako:

pod 'TensorFlowLiteSwift', '~> 2.10.0'

Dzięki temu w Twojej aplikacji będzie używana najnowsza dostępna wersja 2.xy poda TensorFlowLiteSwift . Alternatywnie, jeśli chcesz polegać na nocnych kompilacjach, możesz napisać:

pod 'TensorFlowLiteSwift', '~> 0.0.1-nightly'

Od wersji 2.4.0 i najnowszych wydań nocnych delegaci GPU i Core ML są domyślnie wykluczani z zasobnika, aby zmniejszyć rozmiar pliku binarnego. Możesz je uwzględnić, określając subspec:

pod 'TensorFlowLiteSwift', '~> 0.0.1-nightly', :subspecs => ['CoreML', 'Metal']

Umożliwi to korzystanie z najnowszych funkcji dodanych do TensorFlow Lite. Zauważ, że po utworzeniu pliku Podfile.lock podczas pierwszego uruchomienia polecenia pod install , nocna wersja biblioteki zostanie zablokowana w wersji z bieżącą datą. Jeśli chcesz zaktualizować bibliotekę nightly do nowszej, powinieneś uruchomić polecenie pod update .

Aby uzyskać więcej informacji na temat różnych sposobów określania ograniczeń wersji, zobacz Określanie wersji pod .

Deweloperzy Bazela

W pliku BUILD dodaj zależność TensorFlowLite do swojego celu.

Szybki

swift_library(
  deps = [
      "//tensorflow/lite/swift:TensorFlowLite",
  ],
)

Cel C

objc_library(
  deps = [
      "//tensorflow/lite/objc:TensorFlowLite",
  ],
)

API C/C++

Alternatywnie możesz użyć C API lub C++ API

# Using C API directly
objc_library(
  deps = [
      "//tensorflow/lite/c:c_api",
  ],
)

# Using C++ API directly
objc_library(
  deps = [
      "//tensorflow/lite:framework",
  ],
)

Zaimportuj bibliotekę

W przypadku plików Swift zaimportuj moduł TensorFlow Lite:

import TensorFlowLite

W przypadku plików Objective-C zaimportuj nagłówek parasola:

#import "TFLTensorFlowLite.h"

Lub moduł, jeśli ustawisz CLANG_ENABLE_MODULES = YES w swoim projekcie Xcode:

@import TFLTensorFlowLite;