Szybki start dla iOS

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

Przykład klasyfikacji obrazu iOS

Aby zapoznać się z kodem źródłowym, przeczytaj także klasyfikację obrazów TensorFlow Lite iOS .

Ta przykładowa aplikacja wykorzystuje klasyfikację obrazu do ciągłego klasyfikowania tego, co widzi z tylnej kamery urządzenia, wyświetlając najbardziej prawdopodobne klasyfikacje. Pozwala użytkownikowi wybrać pomiędzy modelem zmiennoprzecinkowym lub skwantowanym i wybrać liczbę wątków, na podstawie których będzie wykonywane wnioskowanie.

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 iOS, korzystając z przykładu klasyfikacji obrazów Swift jako punktu wyjścia.

Poniższe sekcje pokazują, jak dodać TensorFlow Lite Swift lub Objective-C do swojego projektu:

Twórcy CocoaPods

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

Szybki

use_frameworks!
pod 'TensorFlowLiteSwift'

Cel C

pod 'TensorFlowLiteObjC'

Określanie wersji

Dostępne są wydania stabilne i wydania nocne zarówno dla zasobnikó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żna 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 aplikacji będzie używana najnowsza dostępna wersja 2.xy modułu 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 domyślnie delegaci GPU i Core ML są wykluczeni z zasobnika, aby zmniejszyć rozmiar pliku binarnego. Możesz je uwzględnić, określając podspecyfikację:

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

Umożliwi to korzystanie z najnowszych funkcji dodanych do TensorFlow Lite. Należy pamiętać, że po utworzeniu pliku Podfile.lock przy pierwszym uruchomieniu polecenia pod install wersja biblioteki nocnej zostanie zablokowana na 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ów .

Programiści Bazela

W pliku BUILD dodaj zależność TensorFlowLite do elementu docelowego.

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ć interfejsu API języka C lub interfejsu API języka C++

# 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 parasolowy:

#import "TFLTensorFlowLite.h"

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

@import TFLTensorFlowLite;