Início rápido do iOS

Para começar a usar o TensorFlow Lite no iOS, recomendamos explorar o seguinte exemplo:

Exemplo de classificação de imagem do iOS

Para obter uma explicação do código-fonte, você também deve ler a classificação de imagens do iOS do TensorFlow Lite .

Este aplicativo de exemplo usa classificação de imagem para classificar continuamente tudo o que vê na câmera traseira do dispositivo, exibindo as principais classificações mais prováveis. Ele permite ao usuário escolher entre um modelo de ponto flutuante ou quantizado e selecionar o número de threads para realizar a inferência.

Adicione o TensorFlow Lite ao seu projeto Swift ou Objective-C

O TensorFlow Lite oferece bibliotecas iOS nativas escritas em Swift e Objective-C . Comece a escrever seu próprio código iOS usando o exemplo de classificação de imagem Swift como ponto de partida.

As seções abaixo demonstram como adicionar TensorFlow Lite Swift ou Objective-C ao seu projeto:

Desenvolvedores CocoaPods

Em seu Podfile , adicione o pod TensorFlow Lite. Em seguida, execute pod install .

Rápido

use_frameworks!
pod 'TensorFlowLiteSwift'

Objective-C

pod 'TensorFlowLiteObjC'

Especificando versões

Existem versões estáveis ​​e versões noturnas disponíveis para os pods TensorFlowLiteSwift e TensorFlowLiteObjC . Se você não especificar uma restrição de versão como nos exemplos acima, o CocoaPods obterá a versão estável mais recente por padrão.

Você também pode especificar uma restrição de versão. Por exemplo, se você deseja depender da versão 2.10.0, pode escrever a dependência como:

pod 'TensorFlowLiteSwift', '~> 2.10.0'

Isso garantirá que a versão 2.xy mais recente disponível do pod TensorFlowLiteSwift seja usada em seu aplicativo. Como alternativa, se você quiser depender das compilações noturnas, poderá escrever:

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

A partir da versão 2.4.0 e dos lançamentos noturnos mais recentes, por padrão, os delegados de GPU e Core ML são excluídos do pod para reduzir o tamanho do binário. Você pode incluí-los especificando subspec:

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

Isso permitirá que você use os recursos mais recentes adicionados ao TensorFlow Lite. Observe que uma vez que o arquivo Podfile.lock é criado quando você executa o comando pod install pela primeira vez, a versão da biblioteca noturna será bloqueada na versão da data atual. Se você deseja atualizar a biblioteca noturna para a mais recente, execute o comando pod update .

Para obter mais informações sobre diferentes maneiras de especificar restrições de versão, consulte Especificando versões de pod .

Desenvolvedores Bazel

Em seu arquivo BUILD , adicione a dependência TensorFlowLite ao seu destino.

Rápido

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

Objective-C

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

API C/C++

Como alternativa, você pode usar a API C ou a API C++

# Using C API directly
objc_library(
  deps = [
      "//tensorflow/lite/c:c_api",
  ],
)

# Using C++ API directly
objc_library(
  deps = [
      "//tensorflow/lite:framework",
  ],
)

Importar a biblioteca

Para arquivos Swift, importe o módulo TensorFlow Lite:

import TensorFlowLite

Para arquivos Objective-C, importe o cabeçalho guarda-chuva:

#import "TFLTensorFlowLite.h"

Ou, o módulo se você definir CLANG_ENABLE_MODULES = YES em seu projeto Xcode:

@import TFLTensorFlowLite;