如何 运行 tflite 模型不在图像分类上 swift

How to run tflite model not on image classification swift

我看过几个关于如何 运行 用于图像分类的 tflite 模型的教程,但不知道如何为任何其他应用程序做...例如,我有一个模型需要以 (16000, 1) 数组形式的音频数据。如何将此数组传递到 tflite 模型中?

TensorFlow Lite 提供了我们在移动、嵌入式和物联网设备上进行转换和 运行 TensorFlow models 所需的所有工具。

要将 modelTensorFlow Lite 一起使用,我们必须将完整的 TensorFlow model 转换为 TensorFlow Lite 格式。我们无法使用 TensorFlow Lite 创建或训练模型。所以我们必须从正则TensorFlow model开始,然后convert the model.

查看可在应用程序中使用的预训练模型的完整列表:in Models

如果我们设计和训练了自己的 TensorFlow 模型,或者我们训练了从其他来源获得的模型,我们必须将其转换为 TensorFlow Lite 格式。

参考: TensorFlow Lite

Tflite 使用字节缓冲区。

您必须将所有输入转换为字节缓冲区,例如

let len = 16000
var audio = [Float](repeating: Float(1.0), count: len)
let audioBuffer = Data(bytes: &audio, count: audio.count * MemoryLayout<Float>.stride)
try interpreter.copy(audioBuffer, toInputAt: 0)