Guide de démarrage rapide pour iOS

Cet exemple d'application utilise la classification d'images pour classer de manière continue tout ce qu'elle voit depuis la caméra arrière de l'appareil, en affichant les classifications les plus probables. Elle permet à l'utilisateur de choisir entre un modèle à virgule flottante et un modèle quantifié, et de sélectionner le nombre de threads sur lesquels effectuer l'inférence.

Ajouter TensorFlow Lite à votre projet Swift ou Objective-C

TensorFlow Lite propose des bibliothèques iOS natives écrites en Swift et en Objective-C.

Les sections ci-dessous expliquent comment ajouter TensorFlow Lite Swift ou Objective-C à votre projet:

Développeurs CocoaPods

Dans votre fichier Podfile, ajoutez le pod TensorFlow Lite. Ensuite, exécutez pod install.

Swift

use_frameworks!
pod 'TensorFlowLiteSwift'

Objective-C

pod 'TensorFlowLiteObjC'

Spécifier des versions

Des versions stables et des versions nocturnes sont disponibles pour les pods TensorFlowLiteSwift et TensorFlowLiteObjC. Si vous ne spécifiez pas de contrainte de version comme dans les exemples ci-dessus, CocoaPods extrait par défaut la dernière version stable.

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 garantit que la dernière version 2.x.y disponible du pod TensorFlowLiteSwift est utilisée dans votre application. Si vous souhaitez dépendre des compilations effectuées chaque nuit, vous pouvez écrire:

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

À partir de la version 2.4.0 et des dernières versions nocturnes, les délégués de GPU et de Core ML sont exclus du pod par défaut afin de réduire la taille binaire. Vous pouvez les inclure en spécifiant une sous-spécification:

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

Vous pourrez ainsi utiliser les dernières fonctionnalités ajoutées à TensorFlow Lite. Notez qu'une fois que le fichier Podfile.lock est créé lorsque vous exécutez la commande pod install pour la première fois, la version de la bibliothèque nocturne est verrouillée sur 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 en savoir plus sur les différentes manières de spécifier des contraintes de version, consultez la page Spécifier des versions de pod.

Développeurs Bazel

Dans votre fichier BUILD, ajoutez la dépendance TensorFlowLite à votre cible.

Swift

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

Objective-C

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

API C/C++

Vous pouvez également 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 du parapluie:

#import "TFLTensorFlowLite.h"

Ou, le module si vous définissez CLANG_ENABLE_MODULES = YES dans votre projet Xcode:

@import TFLTensorFlowLite;