Usar uma versão personalizada do TensorFlow Liteplat_ios

Se você é um desenvolvedor de aprendizado de máquina experiente e a biblioteca pré-criada do TensorFlow Lite não atende às suas necessidades, você pode usar a versão personalizada do TensorFlow Lite com o kit de aprendizado de máquina. Por exemplo, com ela você pode adicionar operações personalizadas.

Pré-requisitos

  • um ambiente de criação do TensorFlow Lite ativo
  • uma verificação da versão 1.10.1 do TensorFlow Lite

Você pode fazer a verificação da versão correta usando o Git:

git checkout -b work
git reset --hard tflite-v1.10.1
git cherry-pick 4dcfddc5d12018a5a0fdca652b9221ed95e9eb23

Como criar a biblioteca do Tensorflow Lite

  1. Crie o Tensorflow Lite (com suas modificações) seguindo as instruções padrão.
  2. Crie a biblioteca:
tensorflow/lite/lib_package/create_ios_frameworks.sh

A biblioteca gerada pode ser encontrada em tensorflow/lite/gen/ios_frameworks/tensorflow_lite.framework.zip.

Como criar um pod local

  1. Crie um diretório para seu pod local.
  2. Execute pod lib create TensorFlowLite no diretório que você criou.
  3. Crie um diretório Frameworks dentro do diretório TensorFlowLite.
  4. Descompacte o arquivo tensorflow_lite.framework.zip gerado acima.
  5. Copie o tensorflow_lite.framework descompactado para o TensorFlowLite/Frameworks.
  6. Modifique o TensorFlowLite/TensorFlowLite.podspec gerado para fazer referência à biblioteca:
    Pod::Spec.new do |s|
      s.name             = 'TensorFlowLite'
      s.version          = '0.1.7' # Version must match.
      s.ios.deployment_target = '9.0'

      # ... make other changes as desired

      internal_pod_root = Pathname.pwd
      s.frameworks = 'Accelerate'
      s.libraries = 'c++'
      s.vendored_frameworks = 'Frameworks/tensorflow_lite.framework'

      s.pod_target_xcconfig = {
        'SWIFT_VERSION' => '4.0',
        'INTERNAL_POD_ROOT' => "#{internal_pod_root}",
        'HEADER_SEARCH_PATHS' => "$(inherited) '${INTERNAL_POD_ROOT}/Frameworks/tensorflow_lite.framework/Headers'",
        'OTHER_LDFLAGS' => "-force_load '${INTERNAL_POD_ROOT}/Frameworks/tensorflow_lite.framework/tensorflow_lite'"
      }
    end

Como referenciar o pod personalizado no seu projeto

Você pode incluir o pod personalizado fazendo referência diretamente ao Podfile do seu app:

pod 'Firebase/MLModelInterpreter'
pod 'TensorFlowLite', :path => 'path/to/your/TensorflowLite'

Para outras opções de gerenciamento de pods privados, consulte Pods privados na documentação do Cocoapods. Observe que a versão precisa ter uma correspondência exata, e você precisa inseri-la como referência ao incluir o pod a partir do seu repositório privado, por exemplo, pod 'TensorFlowLite', "1.10.1".

Enviar comentários sobre…

Precisa de ajuda? Acesse nossa página de suporte.