当前位置:   article > 正文

OrangePi AIpro上手初体验:

OrangePi AIpro上手初体验:

1.基本外观及功能接口简介

OrangePi AIpro整体重量适中,结构小巧,其包装盒物品主要是如下图所示:
●OrangePi AIpro主板
●电源适配器(C to C)
●SD卡(预装Ubuntu系统

img

此外,主板上包含丰富的外设接口,如USB-Type C,HDMI,以太网,耳机口,摄像头接口,USB 3.0接口,WIFI,蓝牙等,同时对比与之前使用的树莓派4B来说,OrangePi AIpro还拥有eMMC和M.2 NVME SSD的外部接口,这使得这款开发板拥有强大的存储能力,具备更高的可玩性。详细的接口及功能模块介绍如下图所示:

img

img

2.点亮OrangePi AIpro开发板

OrangePi AIpro开发板上手的第一件事那肯定是迫不及待地上电进入系统看看,该开发板预装了Ubuntu系统,同时可通过拨码开关选择不同的系统启动方式。此次选择默认的SD卡启动。

img

个人还是更喜欢命令行形式,其效果如下:

img

同时可以连接串口查看相关的信息输出,如下图:

img

3.OrangePi AIpro功能体验

官方镜像提供了一系列的应用体验例程,这里选取了部分进行了测试。同时基于个人的开发经验进行了相关的体验测试。

3.1.目标检测

首先,既然是主打AI应用的开发板,那自然少不了经典的目标检测,这里采用的是YOLOv5s目标检测器算法,它是YOLOv5 系列中较为轻量的网络模型,适合在边缘设备部署,进行实时目标检测,其官方demo效果如下图,可以看到有效识别了不同数量的car。

img

此外测试了其他情况下的目标检测,比如在下图中有静止的自行车以及运动的行人,其都做到了有效的检测。在进行此测试时,由于视频非常大,处理过程中OrangePi AIpro的风扇高速运转,散热性能还有较高的提升空间,但得益于高性能的处理器,其代码整体的执行速度还是非常快的。
(由于gif上传的大小限制,此处检测效果做了裁剪)
静态效果如下:
img
动态效果如下:

imgimg

3.2.OCR文字识别

第二部分测试了OCR文字识别部分,OCR 两阶段方法一般包含两个模型,检测模型负责找出图像或视频中的文字位置,识别模型负责将图像信息转换为文本信息。基于官方demo我们增加了一定难度,加入字母以及大小不同,颜色深浅差异的文字,其效果如下图所示,可以明显看到检测模型没能有效的找出所有文字位置,识别模型将字母”I”识别成“L”,此处误识别的主要原因在于两者高度的相似性。其他文字及字母的识别基本正确,后续可采用不同的模型进一步测试其效果.

img

3.3.图像的曝光增强

第三部分测试主要测试了图像的曝光增强,其效果如下图所示,可以看到增强后的图像更加明亮清晰,浅色文字也变得更加明亮,效果符合预期。

img

img

3.4.系统的整体性能(运行ROS)

第四部分测试了系统的整体性能,这里采用了之前经常跑的机器人ROS,因为之前跑的ROS是通过树莓派4B实现的,所以还是很期待在OrangePi AIpro上的具体使用效果。
首先安装对应的ROS版本进行简单的功能测试,安装过程网上就很多了就不介绍了,此次采用编译的方式安装,安装过程中的资源占用情况较高,如果开的命令行窗口过多则会略有卡顿,这里可能是我开的界面过多导致的,但整体安装速度比之前在树莓派上安装时快速不少。通过rosversion -d可查看ROS版本,如下图所示,当前使用的是Humble版本。

通过ROS自带的demo可测试ROS系统是否正常安装运行。
测试命令如下,

ros2 run demo_nodes_cpp talker


  • 1
  • 2
  • 3
ros2 run demo_nodes_py listener


  • 1
  • 2
  • 3

测试效果如下所示:相应的发布者与订阅者都有对应的输出.

img

当打开RVIZ后查看当前的资源使用情况如下,整体符合预期。

img

此外,对于机器人来说,URDF是建模仿真的经典方式,此处使用了之前项目中的一个巡检机器人模型,其Urdf文件的结构如图,

img

由于之前的工程是在ROS1上实现的,很多地方需要修改,主要是此处的Launch文件,简单修改后如下,

from launch import LaunchDescription
from launch_ros.actions import Node
from launch.substitutions import Command, FindExecutable, PathJoinSubstitution
from launch_ros.substitutions import FindPackageShare

def generate_launch_description():
    # 获取 URDF 文件的路径
    urdf_path = PathJoinSubstitution([
        FindPackageShare('wyf_description'),
        'urdf',
        'wyf.urdf'
    ])

    # 获取 RViz 配置文件的路径
    rviz_config_path = PathJoinSubstitution([
        FindPackageShare('wyf_description'),
        'config',
        'wyf_urdf.rviz'
    ])

    return LaunchDescription([
        # 设置 robot_description 参数
        Node(
            package='robot_state_publisher',
            executable='robot_state_publisher',
            name='robot_state_publisher',
            output='screen',
            parameters=[{
                'robot_description': Command([
                    FindExecutable(name='xacro'),
                    ' ',
                    urdf_path
                ])
            }]
        ),

        # 启动 joint_state_publisher_gui 节点
        Node(
            package='joint_state_publisher_gui',
            executable='joint_state_publisher_gui',
            name='joint_state_publisher_gui',
            output='screen'
        ),

        # 启动 RViz
        Node(
            package='rviz2',
            executable='rviz2',
            name='rviz2',
            output='screen',
            arguments=['-d', rviz_config_path]
        )
])


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55

通过ros启动launch文件后,这里可以得到一个简单的Urdf模型,可以流畅的显示运行。
img

本来想在GAZEBO下先仿真测试下小车的SLAM定位导航的能力,由于该版本及架构下还没发布新的Gazebo,所以只能后续换成Ununtu20.04进行测试了。此外之前通过树莓派测试的视觉SLAM方案也将后续进行上板测试,进一步开发其AI特性。
至此,本次OrangePi AIpro初次上手体验完美结束。

4.OrangePi AIpro体验总结

4.1.硬件及软件生态:

OrangePi AIpro配备了高性能的处理器和丰富的接口,搭载了昇腾AI 处理器,可提供8TOPS INT8 的计算能力,支持多种操作系统。开发者可以根据需求选择合适的系统,并通过丰富的软件资源库和社区支持,可以快速上手并进行开发。

4.2.使用体验及性能表现:

开箱即用。首次启动时,系统加载迅速,图形界面友好。得益于高性能处理器,OrangePi AIpro在运行常见的 AI 和机器学习任务时表现出色。无论是图像识别、语音处理还是其他计算密集型任务,或者是运行机器人系统都能流畅运行。

4.3.扩展能力:

丰富的接口使得连接传感器、摄像头、显示器等变得方便。GPIO 引脚的存在使其在机器人开发中具备很大的灵活性,这也是我最喜欢的地方,更高的扩展性意味着更多的可能性。

4.4.可改进的地方:

可增加更优秀的散热,增加更丰富的文档。同时,对于资源占用较高的应用场景可换成16G的更高性能的OrangePi AIpro的版本。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/643067
推荐阅读
相关标签
  

闽ICP备14008679号