0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ASUS Tinker Board 2S新版Debian 10 V2.0.3系统与相依套件安装

jf_cVC5iyAO 来源:易心Microbit编程 2023-04-11 10:10 次阅读

00eba264-d1f6-11ed-bfe3-dac502259ad0.png

ASUS Tinker Board 2 / 2S 推出至今,搭配Debian操作系统操作的版本也从先前介绍的2.0.0版更新到了2.0.3版,这次华硕IoT团队更新了Debian操作系统的内容,这次更新的内容强化了通讯的功能、周边接口存取的功能,相关的更新内容请参考下表:

https://tinker-board.asus.com/download-list.html?product=tinker-board-2s

1. Fix OV5647 mirror issue

2. Fix ufw and iptables not working inDebian 10

3. xfce4-power-manager: set blank after to“never”

4. Add auto_ums config in config.txt

5. Add modem manager

6. Add ASUS.GPIO library for Python 3

7. Support Quectel EM06-E LTE module

8. Support USB to Serial Chip CH934X

9. Support WinChipHead CH340/CH341

10. Add support for ASUS API

11. Enable CONFIG_TUN kernel config

12. Power Manager add support for GPU configuration

13. Fix Debian apt-get repo issue

14. Fix UART0 RTS not working

本文将主要说明各种常用的Python相依套件程序安装流程,也透过本篇的内容强化即将使用Tinker Board 2S进行各种项目开发的朋友,有更多可以参考的文件,这些Python相依套件基本上都已经过各种范例的实测,在目前最新发表的Debian-10 2.0.3版操作系统都是可以正常操作。

本次的安装介绍主要是针对新版核心(Debian-10 2.0.3版)进行安装,相关安装流程与较旧版本核心的安装流程略有差异,若是新版核心建议还是按照本篇教学进行安装,以确保相关的套件流程都可以正确安装与执行。

本文将会针对以下这些AI应用程序设计中常用的套件程序安装进行说明:

1. nano (用于简易文本编辑器操作)

2. OpenCV 4.5.0 (用于相关视觉影像的接口操作)

3. imutils (用于视觉图像处理的接口操作)

4. pillow (用于视觉图像处理的接口操作)

5. tkinter (用于图形用户界面 GUI 程序设计)

6. Tensorflow 2.4.1 与Tensorflow-Lite Runtime 2.5.0 (用于神经网络运算)

7. SciKit-Learn (用于神经网络运算)

8. mediapipe(用于各种人体肢体或表情变化侦测操作)

9. pygame(用于各种多媒体游戏或媒体拨放功能操作)

10. AudioPlayer、Playsound(用于拨放mp3或wav音讯档案)

11. I2C接口与PCA9685电路驱动(用于周边电路的控制)

一、安装简易文本编辑器nano

由于在许多的终端机操作环境下需要快速编修文件,采用精巧且功能完整的 nano 文本编辑器,一直是许多系统操作者的最爱之一,以下说明安装流程:

sudoapt-get update

sudoapt-get upgrade

sudoapt-get install nano

二、安装GTK-2.0相依套件libgtk2.0-dev

本次安装测试的过程当中,在安装OpenCV 4.5.0套件程序时,发生了相依套件断裂的问题,在Tinker Board 2S的Debian 10 Linux系统中因为没有安装GTK-2.0 的libgtk2.0-dev套件程序,这将导致在OpenCV4.5.0因cmake无法将 libgtk2.0-dev相依套件进行编译设定,虽然在后续的make流程都能完成,但最后会在最后Python程序运行时间无法正确使用如imshow、putText等画面显示或绘图的函数,并且会在运行时间报错,并且提示需要重新进行cmake。

为了将libgtk2.0-dev相依套件程序安装至系统,笔者初期使用sudo apt-get install libgtk2.0-dev这种方式安装相依套件程序,但系统却又报错,表示还有许多其他相关相依套件有「相依断裂」的问题,笔者尝试再以sudo apt-get install去安装那些相依套件程序,却依然发现更多的「相依断裂」,更糟糕的是还发生「循环相依」,所谓「循环相依」表示其他的相依套件程序又循环相依libgtk2.0-dev。

为了解决这种「相依断裂」与「循环相依」的问题,最后只能透过额外安装「套件安装设定程序」的方式来解决,本文将透过 aptitude 套件程序来解决这个问题。

透过「aptitude」套件程序便可以进行libgtk2.0-dev套件程序安装,以下说明安装流程:

sudo apt-get install aptitude

sudo aptitude install libgtk2.0-dev

三、安装OpenCV 4.5.0套件

本文使用 OpenCV 4.5.0 来进行视觉影像接口处理,笔者曾尝试以 sudo apt-get install python-opencv 来安装。但经过检查发现,以这种方式安装的OpenCV版本是3.6版,虽然简单Python程序函式还是可以执行,可是当遇到更进阶的函式如DNN等相关进阶应用时,便会产生函数缺漏的问题,有鉴于此,笔者选择重新以Build from Source的方式进行安装。

在这里要特别强调一个重要关键,在安装OpenCV 4.5.0套件程序之前,「一定要」先装好上一步的GTK-2.0相依套件 libgtk2.0-dev,切莫跳过这个重要步骤。

由于OpenCV 4.5.0的安装过程需要大量的内存运作空间以进行后续的make流程,因此必须先行安装虚拟内存的套件程序,并且将虚拟内存设为10240MB,并且将Tinker Board 2S重新启动,以下说明虚拟内存设定流程:

sudo apt-getupdate

sudoapt-get upgrade

#安装dphys-swapfile套件程序

sudoapt-get install dphys-swapfile

#以nano编辑 /etc/dphys-swapfile配置文件案

sudonano /etc/dphys-swapfile

#寻找#CONF_SWAPSIZE= 字符串内容,并且将批注符号# 取消。

#设定CONF_SWAPSIZE=10240

#离开nano文本编辑器

sudoreboot #重新启动

0113981e-d1f6-11ed-bfe3-dac502259ad0.jpg

下载并编译安装OpenCV 4.5.0,请注意,这个阶段的安装时间非常久,笔者大约安装了近4小时,且在make阶段时Tinker Board 2S的散热片会产生高温。笔者使用 make -j4 等多核心编译指令来以加快make流程。另外在编译过程务必确保电源稳定,最好拿电风扇帮忙散热,以确保编译过程顺利完成。以下说明OpenCV 4.5.0的安装流程:

sudoapt-get update

sudoapt-get upgrade

sudoapt-get install cmake git libgtk2.0-dev pkg-config libavcodec-devlibavformat-dev libswscale-dev

sudoapt-get install libjpeg-dev libpng-dev

sudoapt-get install libavcodec-dev libavformat-dev libswscale-dev

sudoapt-get install libgtk2.0-dev libcanberra-gtk* libgtk-3-dev

sudoapt-get install python3-dev python3-numpy python3-pip

sudoapt-get install libtbb2 libtbb-dev libdc1394-22-dev

sudoapt-get install libv4l-dev v4l-utils

sudoapt-get install libopenblas-dev libatlas-base-dev libblas-de

sudoapt-get install liblapack-dev gfortran libhdf5-dev

sudoapt-get install libprotobuf-dev libgoogle-glog-dev libgflags-dev

sudoapt-get install protobuf-compiler

sudoapt-get install qt5-default

wget -Oopencv.zip https://github.com/opencv/opencv/archive/4.5.0.zip

wget -Oopencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.5.0.zip

unzipopencv.zip

unzipopencv_contrib.zip

mvopencv-4.5.0 opencv

mvopencv_contrib-4.5.0 opencv_contrib

更新并取得 openCV

cd~/opencv

mkdirbuild

cd build

cmake -DCMAKE_BUILD_TYPE=RELEASE

-D CMAKE_INSTALL_PREFIX=/usr/local

-DOPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules

-DENABLE_NEON=ON

-DWITH_OPENMP=ON

-DBUILD_TIFF=ON

-DWITH_FFMPEG=ON

-DWITH_TBB=ON

-DBUILD_TBB=ON

-DBUILD_TESTS=OFF

-DWITH_EIGEN=OFF

-DWITH_GSTREAMER=OFF

-DWITH_V4L=ON

-DWITH_LIBV4L=ON

-DWITH_VTK=OFF

-DWITH_QT=ON

-DOPENCV_ENABLE_NONFREE=ON

-DINSTALL_C_EXAMPLES=OFF

-DINSTALL_PYTHON_EXAMPLES=OFF

-DBUILD_NEW_PYTHON_SUPPORT=ON

-DBUILD_opencv_python3=TRUE

-DOPENCV_GENERATE_PKGCONFIG=ON

-DBUILD_EXAMPLES=OFF

-DWITH_GTK=ON ..

make -j4

sudomake install

sudoldconfig

makeclean

buildand make

接着要透过 .bashrc 设定OpenCV 4.5.0路径,安装完成OpenCV 4.5.0之后,必须要设定相关执行路径,若跳过这个步骤,会导致Python程序在 import cv2 时产生allocation memory 报错,以下说明 .bashrc 路径设定方式:

cd ~

#以nano文本编辑器编辑 .bashrc配置文件

sudonano ~/.bashrc

#到文件末端将以下叙述补在最后一行

exportLD_PRELOAD=/usr/lib/aarch64-linux-gnu/libgomp.so.1

013f8db6-d1f6-11ed-bfe3-dac502259ad0.jpg

#执行 .bashrc 内容

source~/.bashrc

0157aacc-d1f6-11ed-bfe3-dac502259ad0.jpg

四、安装其他视觉图像处理与图形用户界面套件程序

本段要安装多个乘用的图像处理与 GUI 套件

#安装pillow套件程序

cd ~

sudoapt-get update

sudoapt-get upgrade

pip3install setuptools

pip3install pillow

#安装tkinter套件程序

cd ~

sudoapt-get update

sudoapt-get upgrade

sudoapt-get install python3-tk

sudoapt-get install python3-pil.imagetk

#安装imutils套件程序

cd ~

sudoapt-get update

sudoapt-get upgrade

pip3install imutils

五、安装Tensorflow 2.4.1 神经网络运算套件程序

Tinker Board 2S 具有强大的CPU与GPU运算效能,可进行神经网络运算,搭配OpenCV可以进行各种AI影像辨识的应用,依照Tinker Board 2S的各种硬件规格,笔者认为神经网络的框架可采用Tensorflow 2.4.1来进行神经网络的推论(Inference)运算,以下说明套件程序安装流程:

#更新操作系统套件信息

sudoapt-get update

sudoapt-get upgrade

#更新安装pip3套件程序

sudoapt-get install python-pip python3-pip

#移除旧版Tensoflow套件程序

sudo pipuninstall tensorflow

sudopip3 uninstall tensorflow

#安装各种系统相依套件程序

sudoapt-get install gfortran

sudoapt-get install libhdf5-dev libc-ares-dev libeigen3-dev

sudoapt-get install libatlas-base-dev libopenblas-dev libblas-dev

sudoapt-get install liblapack-dev

#安装各种Python3各种套件程序

sudo -Hpip3 install --upgrade setuptools

sudo -Hpip3 install pybind11

sudo -Hpip3 install wrapt

sudo -Hpip3 install termcolor

sudo -Hpip3 install Cython==0.29.21

sudo -Hpip3 install h5py==2.10.0

更新系统套件

#安装下载工具

pip3install gdown

sudo cp~/.local/bin/gdown /usr/local/bin/gdown

#下载Tensorflow2.4.1套件程序安装文件

gdownhttps://drive.google.com/uc?id=1WDG8Rbi0ph0sQ6TtD3ZGJdIN_WAnugLO

#安装Tensorflow2.4.1套件程序

sudo -Hpip3 install tensorflow-2.4.1-cp37-cp37m-linux_aarch64.whl

安装 tensorflow

0176ea04-d1f6-11ed-bfe3-dac502259ad0.jpg

六、安装Tensorflow-Lite Runtime 2.5.0 套件程序

对于Tinker Board 2S / 2GB而言,由于受限于主存储器仅有2GB的缘故,因此对于神经网络进行推论运算时所需使用的主存储器容量,就必须要谨慎运用这有限的容量,若需要在神经网络推论时有较高的运算效能,往往就必须要选择神经网络模型规模较小的模型格式,在Tensorflow族系里有种Tensorflow-Lite格式就是一种模型规模较小的格式,在Tensorflow的原厂网站里也特别将Tensorflow-Lite格式定义适用于物联网应用场域。

以下说明套件程序安装的方式

cd ~

sudoapt-get update

sudoapt-get upgrade

pip3installhttps://github.com/google-coral/pycoral/releases/download/v2.0.0/tflite_runtime-2.5.0.post1-cp37-cp37m-linux_aarch64.whl

更新系统与安装 tf runtime

019620ae-d1f6-11ed-bfe3-dac502259ad0.jpg

使用 tfruntime 执行视觉分类

01acac98-d1f6-11ed-bfe3-dac502259ad0.png

七、安装其他支持神经运算的套件程序SciKit-Learn

cd ~

sudoapt-get update

sudoapt-get upgrade

sudopip3 install sklearn

八、安装mediapipe Python相依套件

Google mediapipe 是一款非常热门的 ML 套件,把各种视觉辨识变得更简单好用

sudo aptupdate

sudo aptinstall -y python3-dev protobuf-compiler python3-pip git make libssl-dev

sudopip3 install pip --upgrade

sudopip3 install opencv_contrib_python

gitclone https://github.com/PINTO0309/mediapipe-bin && cd mediapipe-bin

./v0.8.4/numpy120x/mediapipe-0.8-cp37-none-linux_aarch64_numpy120x_download.sh

sudopip3 install

cmake-3.20.2-cp37-none-linux_aarch64.whl

numpy-1.20.3-cp37-none-linux_aarch64.whl

mediapipe-0.8-cp37-none-linux_aarch64.whl

sudopip3 install opencv-python dataclasses

安装 mediapipe 与相关套件

01dfa3aa-d1f6-11ed-bfe3-dac502259ad0.png

mediapipe – facemesh

0200e786-d1f6-11ed-bfe3-dac502259ad0.png

mediapipe – hand

九、安装pygame套件

https://www.pygame.org/news

sudoaptitude install libsdl-image1.2-dev

wgethttps://files.pythonhosted.org/packages/0f/9c/78626be04e193c0624842090fe5555b3805c050dfaa81c8094d6441db2be/pygame-1.9.6.tar.gz

sudoapt-get install python-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-devlibsdl1.2-dev libsmpeg-dev python-numpy subversion libportmidi-dev ffmpeglibswscale-dev libavformat-dev libavcodec-dev

sudoapt-get install libfreetype6-dev

pip3install pygame-1.9.6.tar.gz

十、安装AudioPlayer套件

https://pypi.org/project/audioplayer/

sudoapt-get install python-gst-1.0

sudoapt-get install gir1.2-gstreamer-1.0

sudoapt-get install gstreamer1.0-tools

sudoapt-get install gir1.2-gst-plugins-base-1.0

sudoapt-get install gstreamer1.0-plugins-good

sudoapt-get install gstreamer1.0-plugins-ugly

pip3install audioplayer

pip3install playsound==1.2.2

十一、安装Playsound套件

https://pypi.org/project/playsound/

sudoapt-get install python-gst-1.0

sudoapt-get install gir1.2-gstreamer-1.0

sudoapt-get install gstreamer1.0-tools

sudoapt-get install gir1.2-gst-plugins-base-1.0

sudoapt-get install gstreamer1.0-plugins-good

sudoapt-get install gstreamer1.0-plugins-ugly

pip3install playsound==1.2.2

十二、安装I2C接口与PCA9685电路驱动套件程序

在操作I2C接口驱动套件程序安装之前,必须先至 tinker-config 系统管理工具启用 I2C 接口服务,之后才能安装相关套件与操作范例程序。

sudo tinker-config

022d006e-d1f6-11ed-bfe3-dac502259ad0.png

024a9b24-d1f6-11ed-bfe3-dac502259ad0.png

0263270c-d1f6-11ed-bfe3-dac502259ad0.png

027d4d08-d1f6-11ed-bfe3-dac502259ad0.png

以空格键进行点选(打星号)

029a60aa-d1f6-11ed-bfe3-dac502259ad0.png

02aea36c-d1f6-11ed-bfe3-dac502259ad0.png

完成设定后,选择,并且立刻进行重新启动即可进行后续套件程序的安装。

设定完成之后,继续安装,快完工了!

https://pypi.org/project/smbus2/

pip3install SMBUS2

pip3install setuptools

sudopip3 install adafruit-circuitpython-servokit

sudopip3 install adafruit-pca9685

总结

本次的安装介绍主要是针对新版核心(Debian-10 2.0.3版)进行安装,相关安装流程与较旧版本核心的安装流程略有差异,若是新版核心建议还是按照本篇介绍进行安装,以确保相关的套件流程都可以正确安装与执行。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 接口
    +关注

    关注

    33

    文章

    8486

    浏览量

    150805
  • 操作系统
    +关注

    关注

    37

    文章

    6727

    浏览量

    123181
  • python
    +关注

    关注

    55

    文章

    4778

    浏览量

    84439
  • 套件
    +关注

    关注

    0

    文章

    20

    浏览量

    20186
  • Debian
    +关注

    关注

    0

    文章

    74

    浏览量

    1145

原文标题:ASUS Tinker Board 2S新版Debian 10 V2.0.3 系统与相依套件安装

文章出处:【微信号:易心Microbit编程,微信公众号:易心Microbit编程】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【NanoPi M2试用体验】Debian与Android系统安装启动

    M2是无法启动的。现在就介绍NanoPi M2Debian与Android系统安装与启动过程。1.准备
    发表于 06-09 13:17

    Flint OS for Tinker Board发布相对稳定版

    经过近一个月的努力,Flint OS for Tinker Board v1.0 正式发布!Tinker Board是由***华硕出品的超小
    发表于 07-05 18:27

    请问V2.0.3的库函数完全支持STM32F105吗?

    hi,安 版主,现在我使用的处理器是STM32F103,V2.0.3的库+UCOS操作系统,现在要使用双路CAN,所以需要使用STM32F105(7),问题一:V2.0.3的库函数也完全支持
    发表于 03-08 07:52

    华硕ASUS tinker board S开发板调试的经验分享

    1、起源是一个香港客户说要我们帮忙调一个LCD屏的驱动,使用的硬件平台是华硕ASUS tinker board S开发板,2、客户提供一块开
    发表于 03-09 17:07

    ASUS华硕tinker board 2S瑞芯微RK3399开发板怎么样?

    ASUS华硕tinker board 2S瑞芯微RK3399开发板怎么样?
    发表于 03-07 06:12

    搭载RK3399Pro的ALPR Edge开发套件有助于车辆监控系统升级

    2T2R• 1 x mPCIe slot for 4G/LTE• 支持工作温度: 0~60℃ASUS IoT车牌识别软件高精度模型• 支持OS : Debian9 on Tinker
    发表于 09-06 16:28

    华硕发布旗下首款 RISC-V 架构开发板 Tinker V

    Andes AX45MP,因此性能并不是很强。该板还板载了 1GB DDR4 内存、microSD 卡插槽,还可选 16GB eMMC 模块和 SPI 闪存。华硕 Tinker V 的接口如下:2 x
    发表于 03-16 14:52

    华硕发布 RISC-V 架构单板计算机 Tinker V:配备 1.0 Ghz 单核芯片

    Debian 和 Yocto 操作系统,使用 Pico-ITX 主板,可在-20°C 到 60°C 的环境中运行。华硕希望通过这些特性,使其在工业物联网领域脱颖而出。 华硕称,所有购买 Tinker
    发表于 06-09 16:36

    荣耀V10和华为Nova 2s应该选哪款?麒麟970和麒麟960对比评测

    荣耀V10和华为Nova 2s应该选哪款?荣耀V10搭载了最新的麒麟970,而华为Nova 2s搭载的则是去年旗舰麒麟960。麒麟970和麒麟960对比评测,二者各有所长,根据自身需求
    的头像 发表于 12-18 11:02 1.4w次阅读

    debian安装教程

    如果你使用Debian软件包管理器来管理Linux软件,应该详细了解Debian软件仓库的原理,这有助于使用Linux命令将让你更容易管理Debian软件。Linux软件包管理使用的Debia
    的头像 发表于 02-23 09:14 1.1w次阅读

    小米Air 2s已修复电量10%时概率无法充电问题

    据IT之家网友反馈,小米 Air 2s 真无线蓝牙耳机现已推送 2.1.5.2 版本固件,优化了当耳机电量为 10% 时,概率性无法充电的问题。 此前,小米 Air 2s 耳机还优化了弹窗问题,以及
    的头像 发表于 12-01 09:15 5174次阅读

    Tinker Board 2S嵌入式系统开箱介绍

    本次取得的是Tinker Board 2S / 2GB的版本,单板微电脑就外观来看,Tinker Boa
    的头像 发表于 11-07 16:07 1582次阅读

    Tinker Board 2S系统与软件安装设定

    Tinker Board 2S在官方网站上提供了Debian10 Linux操作系统给用户进行安装
    的头像 发表于 11-14 16:06 2155次阅读

    AN2953_如何从STM32F10xxx固件库V2.0.3迁移到STM32F10xxx标准外设库V3.0.0

    AN2953_如何从STM32F10xxx固件库V2.0.3迁移到STM32F10xxx标准外设库V3.0.0
    发表于 11-21 08:11 0次下载
    AN2953_如何从STM32F<b class='flag-5'>10</b>xxx固件库<b class='flag-5'>V2.0.3</b>迁移到STM32F<b class='flag-5'>10</b>xxx标准外设库<b class='flag-5'>V</b>3.0.0

    如何从STM32F10xxx固件库V2.0.3升级为STM32F10xxx标准外设库V3.0.0

    电子发烧友网站提供《如何从STM32F10xxx固件库V2.0.3升级为STM32F10xxx标准外设库V3.0.0.pdf》资料免费下载
    发表于 09-21 09:32 2次下载
    如何从STM32F<b class='flag-5'>10</b>xxx固件库<b class='flag-5'>V2.0.3</b>升级为STM32F<b class='flag-5'>10</b>xxx标准外设库<b class='flag-5'>V</b>3.0.0