环境依赖
python3.5/python3.6
tensorflow 1.14.0
keras 2.3.1
opencv 3.4.9
1.烧录Ubuntu16.04固件
烧录平台及所需工具
win10
DriverAssitant_v4.5
Android toolv2.65
FIREFLY-RK3399-UBUNTU16.04-GPT-20190403-1019.img(Ubuntu16.04镜像)
烧写步骤详见[RK3399烧写参考链接
- 烧写过程中注意问题,烧写完成后开发板蓝灯亮起,烧写工具Android toolv2.65显示No Device Found,如下图所示:
至此,则烧录成功
2.利用Winscp远程访问RK3399_Ubuntu16.04 (samba亦可)
- 烧写成功过后,可以通过显示器来进行尝试ubuntu系统的验证,这里通过Ubuntu图形显示界面进入终端,在终端输入`ifgonfig`来查看ip地址信息,然后在winSCP界面输入其对应主机ip地址,而用户名与密码firefly RK3399默认初始**root**密码为`firefly`,另外还会有初始user账户**账户名**为`firefly`,**密码**为`firefly`,winSCP配置如下:
- 配置完成后,第一次链接会出现是否保存ssh信息,点击是即可.远程进行命令行终端可使用PUTTY,界面如下:
3.将Python默认版本由Python2切换为Python3
- 查看当前Python版本信息
python -V
- 设置update-alternatives 切换Python版本
update-alternatives –-list python
执行后若显示`update-alternatives: error: no alternatives for python`则表示python代替版本尚未安装,需要进行进一步的安装
- 根据python3版本执行命令安装
sudo update-alternatives -–install /usr/bin/python python /usr/bin/python3.5 2
成功后则会显示`update-alternatives: using /usr/bin/python3.5 to provide /usr/bin/python (python) in auto mode`
- 切换python版本的优先级
成功后先利用`update-alternatives –-list python`查看是否已经存在了python3的版本,若存在,则进入更改模式,命令如下:
update-alternatives –-config python
选择需要的版本`2`,输入`exit`退出后再输入`python`验证是否已经是python3版本。
4.切换默认下载源为阿里云
进入到ubuntu16.04系统后,系统默认的下载源基于ubuntu.com,若用此下载源则下载安装相应的包或软件速度会极慢,此时需要进行下载源的切换,本例切换为阿里云下载源,其他下载源如清华/中科大等下载源类似。arm ubuntu开发板的apt的库和普通ubuntu的库是不一样的,arm的是ubuntu-ports库。普通ubuntu下载源配置如下:
而基于arm平台的下载源需要将其改为ubuntu-ports库,更改后的下载源如下:
其中将ubuntu改为ubuntu-ports,其它不变即可.下载源需要保存在`/etc/apt/source.list`中,此时为避免出现错误,最好把系统自带的`source.list`文件重命名为`source.list.backup`来进行备份处理。
更新完成之后,利用终端命令`sudo apt-get update`和`sudo apt-get upgrade`来完成下载源的更新,若再次过程中出现**异常错误**,则需检查下载源是否更改正确。
5.安装pip
切换完成下载源后便可以利用命令`sudo apt-get install python-pip`来进行安装,若安装过程中出现坏包(broken package)情况或
depends xx but xx is installed说明系统已经安装了高版本的包,需要将其进行版本降低*,这样才能进行接下来的操作。输入命令如下(*这里以安装不上libgtk2.0-dev包为例*):
sudo aptitude install libgtk2.0-dev
此时会出现类似如下的内容:
此时选择性的降低一些依赖项,下面是需要降低的依赖项,最下面的`y/n`选项是让你选择是否要继续保持依赖项的版本,因为要降级,故选择n,不保持。
其他的选择为`y/n`选项统一选择y
最后可以看到正在进行安装的所需要的包:
完成后通过命令`sudo aptitude install libgtk2.0-dev`来验证是否安装成功。
6.编译安装基于python3版本的opencv
通过编译的方式来进行安装,若按官网的提示进行安装的话则默认安装的版本为基于python2版本的opencv,若想安装基于python3版本的opencv,则需要在`cmake`命令中指定python3的安装路径信息,具体指令如下:
cmake -D CMAKE_BUILD_TYPE=Release -D WITH_TBB=ON -D WITH_CUDA=ON -D PYTHON3_EXECUTABLE=/usr/bin/python3 -D PYTHON_INCLUDE_DIR=/usr/include/python3.6 -D BUILD_opencv_python3=ON -D BUILD_o pencv_python2=OFF -D PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.6.so -D CMAKE_INSTALL_PREFIX=/usr/local ..
最后的`..`不可省略。其他依赖包如**libgtk2.0-dev**等出现坏包或安装不上的情况,则需要其**版本降级**,参考**第5步**即可。
7.安装tensorflow
安装tensorflow需要找到其对应的**aarch64.whl**的版本,然后利用`pip install`进行安装,此时可能会出现**h5py**安装不上的问题,则先进行如下命令:
sudo apt-get install libhdf5-dev
然后再利用命令`pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow-***aarch64.whl`进行安装即可.
8.安装keras
安装keras有可能出现`umpy.distutils.system_info.NotFoundError: no lapack/blas resources found`的问题,则需要安装相关依赖包,安装命令如下:
sudo apt-get install libblas-dev liblapack-dev libatlas-base-dev gfortran
即可,然后进行keras安装,过程中若出现**scipy**安装不上,则利用如下命令进行安装:
sudo apt-get install python-scipy
至此,相关依赖环境安装完毕。
9.测试安装是否成功
对于测试过程,再安装完毕主要包后,再程序中若出现其他依赖包未安装的过程,按提示安装即可。