使用x3派实现东方红B类题目,先从点亮板卡开始。

制作系统卡,远程登录x3派的用户手册和古月居的课程都讲解的非常清晰小白,所以这里就不加赘述。主要是记录下自己遇到的问题及解决方法,希望对遇到同样问题的友友有所帮助。因为是新手,为了便于学习开发安装的是桌面版本,后面的讲述都是基于桌面版本的x3派展开。

系统安装

问题1  供电不足

上面图片显示的情况就是板卡不断的启动,如果通过串口终端显示的界面是这样,需要考虑供电问题。有些时候是电源适配器,也后可能是线的。比如我的情况就是使用5V-3A的手机充电器的适配器,但是非常玄学的是我用充电器自带的线充时会导致供电功率不够,但是换用另外买的线又可以了。所以供电问题也有可能是线导致的。

问题2  TF卡不兼容

遇到像上面图显示的问题一般就是TF卡兼容性的问题了。一开始使用的是20年生产的一片国产卡,会出现问题。后面花了十几块买了片64G的极速存的卡,也是国产卡,亲测能用。地平线官方推荐的闪迪和金士顿的卡,觉得贵的可以参考下我用的国产卡。

问题3  串口0的3.3V外接导致板卡供电不足

在我使用无线调试器接入板卡的UART0时导致板卡供电功率下降,指示灯能明显看到变暗。后面再另接供电时无线调试器似乎也无法正常工作,PC端接收不到信息。最后还是乖乖使用CH340。所以出现供电问题时,可以将UART0的3.3V接口断开排查问题。

安装Opencv

      系统问题解决,就着手实现功能,了解过东方红B类的友友都知道每年的题目中都会有识别部分,因此必然会涉及到机器视觉的问题,这时就少不了opencv了。他是跨平台计算机视觉和机器学习软件库,实现了图像处理和计算机视觉方面的很多通用算法。OpenCV的应用领域包括:2D和3D功能工具包、运动估计、面部识别系统、手势识别、人机交互、移动机器人、动作理解、物体识别、分割和识别、实体影像立体视觉:来自两个摄像机的深度感知、运动跟踪、增强现实等。

使用apt安装

在安装之前需要更新一下源的软件列表和更新相关软件/依赖。总的来说执行下面两个指令就好了。

sudo apt update
sudo apt upgrate

旭日x3派中opencv的相关依赖基本都具备了,因此可以直接使用apt指令下载:

sudo apt install libopencv-dev

等待下载完成就好。

下载完成后可以执行以下指令查看安装的opencv的版本

pkg -config --modversion opencv4

另外使用apt install也可以安装很多opencv的相关的其他库,可以参考下图。我也是新人小白其他库怎么用也不知道,后面有需求再安装吧。这里就先安装最基础的libopencv-dev。

这是我个人推荐的安装方式,简单粗暴。当然如果有其他需求,如要安装别的cv版本,也可以通过源码编译的方式进行,对于这种方式后文也有记录。

通过源码编译方式安装

1.使用系统自带的火狐浏览器下载opencv的源码,网址:https://opencv.org/releases/

网址里有cv的多个版本可以下载,找到需要的版本下载即可,一般是下载Sources。

另外,x3派已经带有cmake工具,但是为了使用体验再下载一个cmake工具的图形界面,可以使用相关下载指令:

sudo apt install cmake-gui

2.解压下载的压缩包,一般是在~/DownLoad/     文件夹里。在文件夹里打开终端输入

unzip opencv-4.7.0.zip

接压文件名根据自己下载的版本而定,输入部分按TAB键可以自动补全。

3.进入到安装包的路径,并新建build文件夹并进入到build文件路径。

#进入解压的文件夹里
cd ~/DownLoad/opencv-4.7.0/
#新建文件夹
mkdir build
#进入新建的文件夹里
cd build

4.在build文件夹里打开cmake-gui。源文件选择opencv的解压文件,即where is the source code处选择opencv-4.7.0文件夹。

在文件生成路径选择前面新建的build文件,也将是where to build the binarise处选择opencv-4.7.0/build文件夹。

(opencv-4.7.0文件夹名是下载的cv是4.7版本,如果是别的版本会有不同的对应名字)

点击Configure后,直接默认按Finish。

5.接着在cmake-gui里修改:

BUILD_opencv_world  后打勾

CMAKE_BUILD_TYPE  后输入Release

OPENCV_GENERATE_PKGCONFIG  后打勾

点击Configure,等待一会完成后

点击Generate。

6.进入build文件夹编译,需要很久很久,也有可能爆内存。

make -j4

-j4是因为x3派的处理器是4核

sudo make install

7.找到opencv4.pc

cd /usr/local/opencv4/lib/pkgconfig

配置bash

sudo gedit /etc/bash.bashrc

或者用文件管理器直接打开对应路径找到bash文件打开。

在该文件最后加入:

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opencv4/lib/pkgconfig
export PKG_CONFIG_PATH
保存后关闭文件。
执行下面指令使配置生效。
source /etc/bash.bashrc
8.配置动态库
配置opencv程序执行时加载的动态库路径
sudo vim /etc/ld.so.conf.d/opencv4.conf
在.conf文件的末尾加上
/usr/local/opencv4/lib
然后在终端里执行下面的指令让刚刚配置生效
sudo ldconfig
9.查看以上配置是否成功
在终端输入
pkg -config --modversion opencv4

如果成功配置,会返回安装的opencv4的版本。