【问题标题】:Building Tensorflow Lite for Edge TPU fails为 Edge TPU 构建 TensorFlow Lite 失败
【发布时间】:2020-08-15 17:16:57
【问题描述】:

我正在尝试让 Tensorflow Lite + EdgeTpu 在 C++ 中的 ARM 上运行,但在使用 EdgeTpu 文档中的指定提交构建 Tensorflow Lite 时遇到问题。 (我有 Tensorflow Lite 正在开发最新的 Tensorflow 大师)。

根据 EdgeTpu 文档 (https://coral.ai/docs/edgetpu/tflite-cpp),tensorflow lite 需要使用 commit: d855adfc5a0195788bf5f92c3c7352e638aa1109 构建。但是在使用这些命令构建时:

./tensorflow/lite/tools/make/download_dependencies.sh
./tensorflow/lite/tools/make/build_aarch64_lib.sh

我收到以下错误消息:

tensorflow/tensorflow/lite/tools/make/gen/aarch64_armv8-a/lib/libtensorflow-lite.a(densify.o): In function `tflite::ops::builtin::densify::Eval(TfLiteContext*, TfLiteNode*)':
densify.cc:(.text+0x378): undefined reference to `tflite::optimize::sparsity::FormatConverter<signed char>::FormatConverter(std::vector<int, std::allocator<int> > const&, TfLiteSparsity const&)'
densify.cc:(.text+0x384): undefined reference to `tflite::optimize::sparsity::FormatConverter<signed char>::SparseToDense(signed char const*)'
densify.cc:(.text+0x5f0): undefined reference to `tflite::optimize::sparsity::FormatConverter<float>::FormatConverter(std::vector<int, std::allocator<int> > const&, TfLiteSparsity const&)'
densify.cc:(.text+0x5fc): undefined reference to `tflite::optimize::sparsity::FormatConverter<float>::SparseToDense(float const*)'
collect2: error: ld returned 1 exit status

所以它确实构建了 lib 文件,但构建示例失败。当我尝试将 lib 与我自己的代码一起使用时,我得到了同样的错误。与此同时,这些问题似乎在 tensorflow repo 上得到了解决。但我需要特定的提交才能使用 EdgeTpu。

【问题讨论】:

    标签: c++ tensorflow tensorflow-lite google-coral


    【解决方案1】:

    得到了关于 github 问题的答案。将其放在这里以供将来参考。

    原来指定的提交在 MAKEFILE 中有一个丢失的文件。应用此补丁:https://github.com/google-coral/edgetpu/issues/201,构建工作正常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-21
      • 1970-01-01
      • 2016-12-29
      • 1970-01-01
      相关资源
      最近更新 更多