Pour commencer avec TensorFlow Lite sur iOS, nous vous recommandons d'explorer l'exemple suivant :
Exemple de classification d'images iOS
Pour une explication du code source, vous devriez également lire la classification des images iOS de TensorFlow Lite .
Cet exemple d'application utilise la classification d'images pour classer en continu tout ce qu'il voit de la caméra arrière de l'appareil, en affichant les classifications les plus probables. Il permet à l'utilisateur de choisir entre un modèle à virgule flottante ou quantifié et de sélectionner le nombre de threads sur lesquels effectuer l'inférence.
Ajoutez TensorFlow Lite à votre projet Swift ou Objective-C
TensorFlow Lite propose des bibliothèques iOS natives écrites en Swift et Objective-C . Commencez à écrire votre propre code iOS en utilisant l' exemple de classification d'image Swift comme point de départ.
Les sections ci-dessous montrent comment ajouter TensorFlow Lite Swift ou Objective-C à votre projet :
Développeurs CocoaPods
Dans votre Podfile
, ajoutez le pod TensorFlow Lite. Ensuite, exécutez pod install
.
Rapide
use_frameworks!
pod 'TensorFlowLiteSwift'
Objectif c
pod 'TensorFlowLiteObjC'
Spécification des versions
Il existe des versions stables et des versions nocturnes disponibles pour les pods TensorFlowLiteSwift
et TensorFlowLiteObjC
. Si vous ne spécifiez pas de contrainte de version comme dans les exemples ci-dessus, CocoaPods tirera la dernière version stable par défaut.
Vous pouvez également spécifier une contrainte de version. Par exemple, si vous souhaitez dépendre de la version 2.10.0, vous pouvez écrire la dépendance comme suit :
pod 'TensorFlowLiteSwift', '~> 2.10.0'
Cela garantira que la dernière version 2.xy disponible du pod TensorFlowLiteSwift
est utilisée dans votre application. Alternativement, si vous voulez dépendre des versions nocturnes, vous pouvez écrire :
pod 'TensorFlowLiteSwift', '~> 0.0.1-nightly'
À partir de la version 2.4.0 et des dernières versions nocturnes, par défaut, les délégués GPU et Core ML sont exclus du pod pour réduire la taille binaire. Vous pouvez les inclure en spécifiant subspec :
pod 'TensorFlowLiteSwift', '~> 0.0.1-nightly', :subspecs => ['CoreML', 'Metal']
Cela vous permettra d'utiliser les dernières fonctionnalités ajoutées à TensorFlow Lite. Notez qu'une fois le fichier Podfile.lock
créé lorsque vous exécutez la commande pod install
pour la première fois, la version nocturne de la bibliothèque sera verrouillée à la version de la date actuelle. Si vous souhaitez mettre à jour la bibliothèque nocturne vers la plus récente, vous devez exécuter la commande pod update
.
Pour plus d'informations sur les différentes manières de spécifier des contraintes de version, consultez Spécification des versions de pod .
Développeurs Bazel
Dans votre fichier BUILD
, ajoutez la dépendance TensorFlowLite
à votre cible.
Rapide
swift_library(
deps = [
"//tensorflow/lite/swift:TensorFlowLite",
],
)
Objectif c
objc_library(
deps = [
"//tensorflow/lite/objc:TensorFlowLite",
],
)
API C/C++
Alternativement, vous pouvez utiliser l'API C ou l'API C++
# Using C API directly
objc_library(
deps = [
"//tensorflow/lite/c:c_api",
],
)
# Using C++ API directly
objc_library(
deps = [
"//tensorflow/lite:framework",
],
)
Importer la bibliothèque
Pour les fichiers Swift, importez le module TensorFlow Lite :
import TensorFlowLite
Pour les fichiers Objective-C, importez l'en-tête parapluie :
#import "TFLTensorFlowLite.h"
Ou, le module si vous définissez CLANG_ENABLE_MODULES = YES
dans votre projet Xcode :
@import TFLTensorFlowLite;