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

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

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

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

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

Добавьте 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'

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

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

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

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;