iOS быстрый старт

Чтобы начать работу с TensorFlow Lite на iOS, мы рекомендуем изучить следующий пример:

Пример классификации изображений iOS

Для пояснения исходного кода вам также следует прочитать классификацию изображений TensorFlow Lite для iOS .

В этом примере приложение использует классификацию изображений , чтобы непрерывно классифицировать все, что оно видит с задней камеры устройства, отображая наиболее вероятные классификации. Это позволяет пользователю выбирать между моделью с плавающей запятой или квантованной моделью и выбирать количество потоков для выполнения вывода.

Добавьте TensorFlow Lite в свой проект Swift или Objective-C.

TensorFlow Lite предлагает нативные библиотеки iOS, написанные на Swift и Objective-C . Начните писать свой собственный код iOS, используя пример классификации изображений Swift в качестве отправной точки.

В разделах ниже показано, как добавить TensorFlow Lite Swift или Objective-C в ваш проект:

Разработчики CocoaPods

В свой Podfile добавьте модуль TensorFlow Lite. Затем запустите pod install .

Быстрый

use_frameworks!
pod 'TensorFlowLiteSwift'

Цель-C

pod 'TensorFlowLiteObjC'

Указание версий

Существуют стабильные выпуски и ночные выпуски для модулей TensorFlowLiteSwift и TensorFlowLiteObjC . Если вы не укажете ограничение версии, как в приведенных выше примерах, CocoaPods по умолчанию будет использовать последнюю стабильную версию.

Вы также можете указать ограничение версии. Например, если вы хотите зависеть от версии 2.10.0, вы можете написать зависимость так:

pod 'TensorFlowLiteSwift', '~> 2.10.0'

Это обеспечит использование в вашем приложении последней доступной версии 2.xy модуля TensorFlowLiteSwift . В качестве альтернативы, если вы хотите зависеть от ночных сборок, вы можете написать:

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

Начиная с версии 2.4.0 и последних ночных выпусков делегаты GPU и Core ML по умолчанию исключаются из модуля, чтобы уменьшить размер двоичного файла. Вы можете включить их, указав subspec:

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

Это позволит вам использовать последние функции, добавленные в TensorFlow Lite. Обратите внимание, что после создания файла Podfile.lock при первом запуске команды pod install ночная версия библиотеки будет заблокирована на текущей дате. Если вы хотите обновить ночную библиотеку до более новой, вам следует запустить команду pod update .

Дополнительные сведения о различных способах указания ограничений версии см. в разделе Указание версий модуля .

Разработчики Базель

В файле BUILD добавьте зависимость TensorFlowLite к вашей цели.

Быстрый

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

Цель-C

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

С/С++ API

В качестве альтернативы вы можете использовать C API или C++ API.

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

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

Импортировать библиотеку

Для файлов Swift импортируйте модуль TensorFlow Lite:

import TensorFlowLite

Для файлов Objective-C импортируйте заголовок зонтика:

#import "TFLTensorFlowLite.h"

Или модуль, если вы установите CLANG_ENABLE_MODULES = YES в своем проекте Xcode:

@import TFLTensorFlowLite;