我正在尝试在iOS上使用TensorFlow音频识别模型(my_frozen_graph.pb
,在这里生成:https://www.tensorflow.org/tutorials/audio_recognition)。
但是TensorFlow Mobile的NSString* network_path = FilePathForResourceName(@"my_frozen_graph", @"pb");
项目中的iOS代码tf_simple_example
输出以下错误消息:Could not create TensorFlow Graph: Not found: Op type not registered 'DecodeWav'
。
谁知道我该如何解决?谢谢!
最佳答案
我相信您正在使用Cocapods的预构建Tensorflow吗?它可能没有该op类型,因此您应该自己从最新源代码构建它。
从documentation:
虽然Cocapods是最快,最简单的入门方法,但是您
有时需要更大的灵活性来确定TensorFlow的哪些部分
您的应用应该附带了。在这种情况下,您可以构建iOS
资料库。 This guide包含详细说明
关于如何做到这一点。
这可能也会有所帮助:[iOS] Add optional Selective Registration of Ops #14421
优化
build_all_ios.sh
脚本可以是可选的
命令行参数仅选择性地为操作员注册
在您的图表中使用。
tensorflow/contrib/makefile/build_all_ios.sh -a arm64 -g $HOME/graphs/inception/tensorflow_inception_graph.pb
请注意这一点
是运营商的综合优化,其结果是
库可能无法与其他图形一起使用,但会减小
最终图书馆。
构建完成后,您可以检查/tensorflow/tensorflow/core/framework/ops_to_register.h
以查看已注册的操作。 (在生成期间使用-g标志自动生成)
关于ios - 在iOS上使用TensorFlow音频识别模型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47878659/