Мне нужно запустить тензор потока облегченной модели в iOS, от ввода он получает массив (1, 4500, 1), но я не понимаю, как отправить его на вход без преобразования его в данные. Если я распечатываю его интерпретатору, и ввод говорит мне, что именно мне нужно, но когда я запускаю код, он выводит ноль. Я нашел это в руководствах inte rnet:
let resultArray = (
boundingBox: [Float](unsafeData: outputBoundingBox.data) ??
)
Но функция unsafedata Float сообщает мне, что она не существует. Вот мой код:
import UIKit
import TensorFlowLite
import SwiftyJSON
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
var opt1 = Interpreter.Options()
opt1.threadCount = 2
let model_path = Bundle.main.path(forResource: "model1", ofType: "tflite")
let int1 = try? Interpreter(modelPath: model_path!, options: opt1)
try? int1?.allocateTensors()
let input = try? int1?.input(at: 0).shape
if let filepath = Bundle.main.path(forResource: "numpytest", ofType: "txt") {
do {
let contents = try String(contentsOfFile: filepath)
let data2 = Data(filepath.utf8)
try? int1!.copy(data2, toInputAt: 0)
try? int1?.invoke()
let salida = try? int1?.output(at: 0)
} catch {
// contents could not be loaded
}
} else {
// example.txt not found!
}
}
}
Что я делаю не так, что мне нужно добавить?
У кого-нибудь есть советы или предложения?
Привет!