NXP MCU 技术论坛
直播中

陈静

7年用户 1284经验值
私信 关注
[问答]

I.MX8MP opencv运行时错误的原因?

我构建了一个 I.MX8M 目标图像以及 eIQ 机器学习 SDK,使用 yocto 和imx-5.10.52-2.1.0.xml 清单。
我对 yocto/bitbake 完全陌生,所以我遵循了 i.MX Yocto 项目用户指南指南:

repo init -u -b imx-linux-hardknott -m imx-5.10.52-2.1.0.xml
回购同步
DISTRO=fsl-imx-wayland MACHINE=imx8mp-lpddr4-evk source imx-setup-release.sh -b build
我然后将以下行添加到 conf/local.conf 文件中:
UBOOT_CONFIG = "sd"
TOOLCHAIN_TARGET_TASK_append += "tensorflow-lite-dev armnn-dev onnxruntime-dev"
然后 :
bitbake imx-image-full
bitbake imx-图像-full -c populate_sdk
一切正常。
我将图像闪存到目标板,然后在主机上安装 SDK:
./build/tmp/deploy/sdk/fsl-imx-wayland-glibc-x86_64-imx-image-full-cortexa53-crypto-imx8mp-lpddr4-evk-toolchain-5.10-hardknott.sh
为了检查一切正常,我按照i.MX Machine Learning User's Guide使用 SDK 提供的交叉编译器编译了 Arm 提供的“armnn-mnist”示例

它在目标上执行没有问题:
测试> ./mnist_tf
预测:7
实际:7

到目前为止一切正常。当我添加“cv::imread(IMG_FILE);”时出现问题 到代码。它仍然可以编译/链接(在将 opencv libs -lopencv_core, ... 添加到链接之后)。
不幸的是,在目标上执行程序时出现运行时错误:
测试> ./mnist_tf

在抛出 'cv::Exception' what(): OpenCV(4.5.2) /usr/src/debug/opencv/4.5.2.imx-r0/git/modules/highgui/src/window实例后调用终止。 cpp:667: error: (-2:Unspecified error) 该函数未实现。使用 Windows、GTK+ 2.x 或 Cocoa 支持重建库。如果您使用的是 Ubuntu 或 Debian,请安装 libgtk2.0-dev 和 pkg-config,然后重新运行 cmake 或在函数“cvDestroyWindow”中配置脚本

我想我的 yocto 构建中缺少一些东西来生成预期的库(请注意我的目标上安装了 libgtk-3.so.0)。

更多回帖

发帖
×
20
完善资料,
赚取积分