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;