HarmonyOS 鸿蒙Next MindSpore Lite开发AI应用,setData(inputArray: ArrayBuffer)用法

HarmonyOS 鸿蒙Next MindSpore Lite开发AI应用,setData(inputArray: ArrayBuffer)用法

请问使用MindSpore Lite开发AI应用,调用setData(inputArray: ArrayBuffer),是否可以把从相机中获取到的图片ArrayBuffer当做参数传入?
有没有demo?

备注:
@ohos.ai.mindSporeLite (端侧AI框架)-ArkTS API-MindSpore Lite Kit(昇思推理框架服务)-AI - 华为HarmonyOS开发者
api举例是把’input_data.bin’这个文件带进去了,没看懂这个input_data.bin’是什么


更多关于HarmonyOS 鸿蒙Next MindSpore Lite开发AI应用,setData(inputArray: ArrayBuffer)用法的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复
async useAi(imgBuf: ArrayBuffer) {
// img buf
let uintImgBuf: Uint8Array = new Uint8Array(imgBuf);
// 模型文件
let modelName = '';
getContext(this).resourceManager.getRawFileContent(modelName).then((buffer : Uint8Array) => {
let modelBuffer = buffer.buffer;
mindSporeLite.loadModelFromBuffer(modelBuffer, (model : mindSporeLite.Model) => {
let modelInputs : mindSporeLite.MSTensor[] = model.getInputs();
modelInputs[0].setData(uintImgBuf);
model.predict(modelInputs, (result : mindSporeLite.MSTensor[]) => {
let output = new Float32Array(result[0].getData());
for (let i = 0; i < output.length; i++) {
console.log(output[i].toString());
}
})
})
})
}

更多关于HarmonyOS 鸿蒙Next MindSpore Lite开发AI应用,setData(inputArray: ArrayBuffer)用法的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


问:是否可以把从相机中获取到的图片ArrayBuffer当做参数传入? 

答:可以

问:有没有demo?

答:有。ArkTS demo: MindSporeLiteArkTS: 本示例基于MindSporeLite提供的ArkTS API,实现“端侧图像分类”示例程序,来演示端侧部署的流程。 仓颉Demo: 项目目录预览 - HarmonyOS-Examples:本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计! - GitCode
问:api举例是把'input_data.bin'这个文件带进去了,没看懂这个input_data.bin'是什么

答:读取的图片,转成的byte数组。
 

在HarmonyOS鸿蒙系统中,使用MindSpore Lite开发AI应用时,setData(inputArray: ArrayBuffer) 方法用于为模型的输入数据赋值。此方法接受一个 ArrayBuffer 类型的参数,这个参数包含了要传递给AI模型的输入数据。

具体来说,ArrayBuffer 是一个通用的、固定长度的原始二进制数据缓冲区。在调用 setData 方法之前,你需要确保 ArrayBuffer 已经按照模型输入数据的格式和大小进行了正确填充。这通常涉及将数据转换为适当的数值类型和排列顺序。

使用步骤大致如下:

  1. 创建并填充 ArrayBuffer:根据你的AI模型输入要求,创建一个合适大小的 ArrayBuffer,并用相应的数据填充它。

  2. 调用 setData 方法:将填充好的 ArrayBuffer 作为参数传递给 setData 方法,以设置模型的输入数据。

  3. 执行模型推理:在设置好输入数据后,可以调用模型的推理方法(如 runpredict)来执行AI任务。

请注意,确保 ArrayBuffer 的数据类型和大小与模型输入要求完全一致,以避免运行时错误。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部