移植到jetson nano 实现人脸识别

移植到jetson nano 实现人脸识别

环境:Linux  ubuntu-16.04.7

      Opencv3.4.4

      Opencv-contrib-3.4.4

      Qt-opensource-linux-x64-5.12.10

      Qt-everywhere-src-5.12.10

cmake-3.10.0-Linux-x86_64

交叉编译工具:gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar

(安装包公共区域里有)

第一步:配置环境

安装qt、安装opencv等,具体安装教程百度。

第二步:交叉编译opencv、qt到arm板

具体链接可见:

编译qt: JetsonNano QT5.12.9交叉编译和环境搭建 - 灰信网(软件开发博客聚合) (freesion.com)

编译opencv: OpenCV在ARM上的移植 - emouse - 博客园 (cnblogs.com)

opencv交叉编译移植到linux-arm开发板,并做测试 - 灰信网(软件开发博客聚合) (freesion.com)

海思hi3519av100上移植opencv3.4.11及移植成功验证 - 灰信网(软件开发博客聚合) (freesion.com)

opencv的交叉编译可能遇到的错误如下:

错误1:

解决办法,在common.cpp文件52行前面田间一段代码

#define HAVE_PTHREAD

错误2:

移植到jetson nano 实现人脸识别_第1张图片

解决办法:

移植到jetson nano 实现人脸识别_第2张图片

错误3:

移植到jetson nano 实现人脸识别_第3张图片

解决办法:

错误4:

移植到jetson nano 实现人脸识别_第4张图片

解决方法:大概在574行

移植到jetson nano 实现人脸识别_第5张图片

错误5:

移植到jetson nano 实现人脸识别_第6张图片

解决办法:

移植到jetson nano 实现人脸识别_第7张图片

最后编译成功:

移植到jetson nano 实现人脸识别_第8张图片

编译成功后sudo make install 才算结束

第三步:代码修改。代码自己写或者找。

将qt程序中.pro文件里的opencv的路径修改为arm板编译后的路径。

        执行程序后会在项目的build文件夹下生成可执行文件,移植到jetson nano 上执行成功即可。

备注:

1:可能出现关于jpeg、sqlite的报错,可通过编译实现。源码在公共区域里也有,具体编译过程可参考下面博客。

(15条消息) linux环境下交叉编译arm架构jpeglib_zifehng的专栏-CSDN博客

2:在jetson nano 上打开摄像头需要有v4l2驱动,这是与Windows打开摄像头的区别。

你可能感兴趣的:(qt,opencv)