DIY及创意
直播中

听我讲

9年用户 710经验值
擅长:电源/新能源 MEMS/传感技术
私信 关注

开源项目 ! 利用边缘计算打造便携式视觉识别系统

利用边缘计算打造便携式人工智能解决方案,面向开发者的视觉识别项目!

Using Edge Computing to Create Portable AI Solutions

自制视觉识别系统

我们将深入探究一套堪称绝妙的软硬件组合,以助力开发者轻松构建便携式、高效的视觉识别装置。需要哪些部件呢?那就是 Khadas VIM4 开发板、IMX415 摄像头以及 TS050 触摸屏。

可以把它想象成人工智能开发领域的瑞士军刀 —— 非常适合那些需要灵活性、便携性以及高性能的项目。无论是在固定的实验室环境中测试,还是在动态环境里进行测试,该系统都能提供从快速迭代到移动监控等全方位的功能支持。

面向开发者的视觉识别

随着人工智能和计算机视觉飞速发展,视觉识别作为一项核心应用已迅速闯入主流行业。从分析图像和视频流到实时识别物体或事件,这项技术在安防、交通、自动化以及医疗保健等领域都有着强大影响力。自动化检测、智能监控以及自动驾驶车辆不过是冰山一角,对强大的视觉识别系统的需求正急剧增长。

如今,开发者利用视觉识别技术来执行人脸识别、车牌识别以及物体检测等任务。这些应用已经突破传统行业的范畴,延伸到了智能零售和智能家居领域,这证明了这项技术将会持续存在。然而,对于开发者来说,最大的挑战在于高效且可扩展地构建这些系统。

边缘计算平台应运而生 —— 它是实现超快速、低延迟视觉识别的秘诀所在。通过在本地处理数据,边缘计算大幅削减了传输延迟,实现了实时响应,并提高了计算效率。对于那些分秒必争的应用场景而言,边缘计算是一项变革性的技术。

边缘计算助力视觉识别的原因:

实时响应

数据在本地处理,消除了与云服务相关的延迟问题。

减少带宽使用

仅传输已处理的数据,降低了带宽开销。

高可靠性

本地处理意味着无需依赖外部服务器,从而打造出更稳定的系统。

这些优势使得边缘计算平台对于视觉识别项目来说不可或缺。开发者能够获得一个紧凑且功能强大的硬件系统,可用于图像采集、人工智能算法执行以及结果输出。

需要准备的物品

硬件

  • Khadas VIM4 单板计算机 :配备具备 3.2 万亿次每秒(TOPS)算力的神经网络处理器(NPU),为人工智能运算提供强大动力。
  • Khadas IMX415 摄像头 :像素为 800 万,具备自动对焦功能,配有 800 万像素的广角镜头、自动对焦功能,且搭载索尼传感器。
  • Khadas TS050 触摸屏 :屏幕尺寸为 5 英寸,分辨率为 1920×1080,支持多点触控。
  • 3D 打印外壳 :一个紧凑的框架,能够稳固地容纳所有组件。

软件

  • RetinaFace :一款开源的高精度人脸识别应用程序。

其他配件

  • 新型 VIM 散热片(推荐使用) :用于在 VIM4 运行时散发其产生的热量。
  • 3705 散热风扇(推荐使用) :超静音风扇,用于对散热片进行强制对流散热。
  • 被动式 VIM 散热片(可选) :用于实现整个装置的无噪音运行。
  • USB 键盘(可选) :用于向 VIM4 输入终端命令。

步骤 1:开始组装!

得益于模块化的设计方式,搭建你的视觉识别系统易如反掌。

为了方便地将硬件组件组合成一个紧凑的整体,我们设计了一款特殊的3D 打印外壳,它能够完美地整合 VIM4、IMX415 摄像头、TS050显示屏以及其他组件。通过这种方式,用户不仅可以在不同地点快速部署该系统,还能确保组件连接稳定以及良好的散热效果。更为重要的是,这样的设计确保了系统的便携性,使其适用于包括移动监控等各类应用场景。

下载 3D CAD 文件

提示:你可以根据自己的需求选择其他摄像头或屏幕;不过,你需要相应地修改 3D 打印的 CAD 文件。

获取我们提供的 CAD 文件来进行 3D 打印,打造出一个造型美观的外壳,然后按照我们的教程来组装各个组件。

设备连接教程

图片.png

图片.png

1、将屏幕装入外壳(你可以撕开胶带以便实现永久固定)。

2、用两颗 M2×5 的螺丝将摄像头固定到外壳上。

3、通过柔性扁平电缆(FPC)将屏幕和摄像头连接到 VIM4 上。

4、用四颗 M2×5 的螺丝将 VIM4 固定到外壳内。5、使用三颗 M2×8 的自攻螺丝将后盖安装到外壳上,实现牢固固定。

最终成果如何呢?你将得到一个紧凑、便于携带且能在任何地方轻松部署的装置。

步骤 2:软件的神奇作用

硬件已经安装完毕,现在是时候利用软件让整个系统 “活” 起来了。Khadas VIM4 可在本地运行人工智能算法,绕过云端,以此确保实现闪电般快速的性能表现。

操作系统安装

启动进入 OOWOW(Khadas 开发板的启动引导程序),并在 VIM4 的嵌入式多媒体卡(eMMC)上安装 Ubuntu 操作系统,以获得稳定的操作系统环境。

启用摄像头

IMX415 摄像头默认处于禁用状态。你需要通过配置 overlay.env 文件来启用它,具体操作如下:

1、编辑文件 /boot/dtb/amlogic/kvim4n.dtb.overlay.env,并将 “vim4n-imx415” 添加到 “fdt_overlays” 节点:

$ cat /boot/dtb/amlogic/kvim4n.dtb.overlay.env
fdt_overlays=vim4n-imx415
$

注意:你需要有超级用户(sudo)权限才能编辑 /boot/dtb/amlogic/kvim4n.dtb.overlay.env 这个文件。

2、添加该节点后,保存更改内容,然后重启系统。

$ sync
$ sudo reboot

步骤 3:优化设置

将显示屏设置为横向显示

由于 3D 打印外壳是按照横向使用来设计的,你需要将 Ubuntu 系统设置为以横向模式输出桌面:

  1. 登录系统,账号和密码如下:
    用户名:khadas(全小写)
    密码:khadas(全小写)
  2. 将显示屏设置为横向模式:打开 “设置”>“显示器”> 选择 “缩放比例 100%”> 选择 “方向” 为 “纵向(右)”> 选择 “应用”。
    再次将显示屏设置为横向模式:打开 “设置”>“显示器”> 选择 “缩放比例 100%”> 选择 “方向” 为 “纵向(右)”> 选择 “应用”。
  3. 点击 “保留更改”。

设置屏幕常亮

打开 “设置”>“电源”>“屏幕空白” 选项,然后选择 “从不”。

将屏幕设置为始终开启状态

打开 “设置”>“电源”>“屏幕关闭” 选项,然后选择 “从不”。

步骤 4:运行 RetinaFace

操作说明

使用 RetinaFace 人脸检测应用程序,我们将从 IMX415 摄像头收集数据,然后利用神经网络处理器(NPU)来执行人脸检测。该应用程序会识别面部的关键点,随后将它们实时显示在 TS050 触摸屏上。

下载源代码

按以下方式将神经网络处理器(NPU)应用程序代码(RetinaFace)下载到指定目录(比如~/code 目录):

$ mkdir ~/code
$ cd ~/code
$ wget https://dl.khadas.com/development/retinaface_cap.tgz
$ tar xvzf retinaface_cap.tgz

编译源代码

在编译之前,你需要按以下方式安装必要的软件包:

$ sudo apt update
$ sudo apt install -y libopencv-dev python3-opencv cmake

在安装完依赖包后,进入应用程序的源代码目录,并使用以下命令进行编译:

$ cd retinaface_cap
$ mkdir build && cd build
$ cmake../
$ make -j4
$ ls retinaface
retinaface

运行应用程序

进入构建目录(即~/code/retinaface_cap/build),并按如下方式运行演示程序:

$ cd ~/code/retinaface_cap/build
$./retinaface -m../data/retinaface_int8.adla -t mipi -h 1080 -w 1920

成功执行该应用程序后,你就能看到人脸检测的画面,如下所示:

退出应用程序

长按应用程序图标,然后选择 “退出” 选项来关闭应用程序。

提示:本教程仅以 RetinaFace 应用程序为例,展示众多神经网络处理器(NPU)应用中的一种。如需了解更多关于神经网络处理器(NPU)使用的思路,请参考 Khadas 官方文档。

  • VIM3 神经网络处理器(NPU)使用方法
  • VIM4 神经网络处理器(NPU)使用方法
  1. Edge2 神经网络处理器(NPU)使用方法

总结

恭喜!你刚刚构建了一个便携式的、基于边缘计算的视觉识别系统,它可比传统的设置先进了许多。借助像 VIM4 及其模块化组件这样的工具,开发者可以重新构想安防、医疗保健等诸多领域的实时应用。

边缘计算是视觉识别的未来发展方向,它能实现超快速的处理以及可靠的性能表现。无论是移动监控、人工智能测试还是智能产业部署,这个装置都是你打造下一个重大项目的入门之选。

更多回帖

发帖
×
20
完善资料,
赚取积分