Guida rapida per iOS

Questa app di esempio utilizza la classificazione delle immagini per classificare continuamente ciò che vede dalla fotocamera posteriore del dispositivo, mostrando le migliori classificazioni più probabili. Consente all'utente di scegliere tra un modello in virgola mobile o quantizzato e di selezionare il numero di thread su cui eseguire l'inferenza.

Aggiungi TensorFlow Lite al tuo progetto Swift o Objective-C

TensorFlow Lite offre librerie per iOS native scritte in Swift e Objective-C.

Le sezioni seguenti mostrano come aggiungere TensorFlow Lite Swift o Objective-C al tuo progetto:

Sviluppatori CocoaPods

In Podfile, aggiungi il pod TensorFlow Lite. Poi, esegui pod install.

Swift

use_frameworks!
pod 'TensorFlowLiteSwift'

Objective-C

pod 'TensorFlowLiteObjC'

Specifica delle versioni

Sono disponibili release stabili e release notturne per entrambi i pod TensorFlowLiteSwift e TensorFlowLiteObjC. Se non specifichi un vincolo di versione come negli esempi precedenti, CocoaPods estrae l'ultima release stabile per impostazione predefinita.

Puoi anche specificare un vincolo di versione. Ad esempio, se vuoi dipendere dalla versione 2.10.0, puoi scrivere la dipendenza come segue:

pod 'TensorFlowLiteSwift', '~> 2.10.0'

In questo modo, nella tua app viene utilizzata l'ultima versione 2.x.y disponibile del pod TensorFlowLiteSwift. In alternativa, se vuoi dipendere dalle build notturne, puoi scrivere:

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

A partire dalla versione 2.4.0 e dalle ultime release notturne, per impostazione predefinita i delegati GPU e Core ML vengono esclusi dal pod per ridurre le dimensioni binarie. Puoi includerle specificando una sottospecifica:

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

In questo modo potrai utilizzare le ultime funzionalità aggiunte a TensorFlow Lite. Tieni presente che, dopo aver creato il file Podfile.lock, quando esegui il comando pod install per la prima volta, la versione della raccolta notturna verrà bloccata alla versione della data corrente. Se vuoi aggiornare la raccolta notturna a quella più recente, esegui il comando pod update.

Per ulteriori informazioni sui diversi modi per specificare i vincoli di versione, consulta Specifica delle versioni dei pod.

Sviluppatori Bazel

Nel file BUILD, aggiungi la dipendenza TensorFlowLite al target.

Swift

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

Objective-C

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

API C/C++

In alternativa, puoi utilizzare l'API C o 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",
  ],
)

Importa la libreria

Per i file Swift, importa il modulo TensorFlow Lite:

import TensorFlowLite

Per i file Objective-C, importa l'intestazione ombrello:

#import "TFLTensorFlowLite.h"

Oppure, il modulo, se imposti CLANG_ENABLE_MODULES = YES nel tuo progetto Xcode:

@import TFLTensorFlowLite;