7,637
社区成员
发帖
与我相关
我的任务
分享6490平台上部署动作识别模型遇到如下问题
1. 在RB3 Gen2 Ubuntu 20.04上直接登录Edge Impulse平台时,会出现错误:
初始化Linux工具失败 错误:未找到任何网络摄像头
在 initCamera (/usr/lib/node_modules/edge-impulse-linux/build/library/sensors/sensors-helper.js:73:15)
在异步 /usr/lib/node_modules/edge-impulse-linux/build/cli/linux/linux.js:152:22
2. 加载模型时找不到libQnnTFLiteDelegate.so :
edge-impulse-linux-runner --model-file resnet-3d-demo-linux-aarch64-qnn-v9.eim
3. 分类失败,错误代码为 -3
很可能是由于缺少libQnnHtpV68Skel.so
4. 它可以对视频里的动作进行分类,但结果几乎总是相同的。
--gst-launch-args "v4l2src device=/dev/video0! video/x-raw,width=640,height=480! videoconvert! jpegenc"
在 x86 Linux 上通过 QPM3 安装高通® AI 引擎直连 SDK (在 Windows 上也应该可以运行,但下面步骤 2 中的路径会有所不同)
LU平台库将安装到 /opt/qcom/aistack/qairt/2.31.0.250130/lib/aarch64-ubuntu-gcc9.4。将此目录中的libQnnTFLiteDelegate.so 推送到RB3设备的 /usr/lib/ 目录。(实际上,/opt/qcom/aistack/qairt/2.31.0.250130/lib/aarch64-ubuntu-gcc9.4 中的所有其他文件都需要推送到设备,否则在运行分类时会出现其他问题。)
一种解决方法是使用在configuring model step 中生成的QNN独立模型resnet-3d-demo-linux-aarch64-v5.eim,并搭配通用aarch64 C++库 - "Linux (AARCH64)"
解决方案:将库libQnnHtpV68Skel.so 从主机路径 /opt/qcom/aistack/qairt/2.31.0.250130/lib/hexagon-v68/unsigned/ 推送到目标设备路径:/usr/lib/rfsa/adsp/
//rescaling the pixel value to [0.0, 1.0] and then normalizing it by mean=[0.43216, 0.394666, 0.37645] and std=[0.22803, 0.22145, 0.216989]
// This normalization is improper in pre-process for our usecase
(r/255 - KINETICS_MEAN[0]) / KINETICS_STD[0],
(g/255 - KINETICS_MEAN[1]) / KINETICS_STD[1],
(b/255 - KINETICS_MEAN[2]) / KINETICS_STD[2]
先解决 QNN 库安装,这是根本原因
再解决 摄像头检测
最后验证 分类准确性——QNN 库正确安装后很可能自动解决