在全志V853平台上成功部署深度学习步态识别算法

2024-03-05 11:12

本文主要是介绍在全志V853平台上成功部署深度学习步态识别算法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

北理工通信课题组辛喆同学在本科毕业设计《基于嵌入式系统的步态识别的研究》中,成功将深度步态识别算法GaitSet移植到全志V853开发板上。本研究在CASIA-B数据集上进行测试,正常行走状态下该系统的步态识别准确率达到了94.9%,背包行走和穿外套行走条件下识别准确率分别达到了87.9%与71.0%。

在这里插入图片描述

步态识别作为一种新兴的生物识别方式,相比于人脸识别、指纹识别等方式,具有易于适应环境、无法伪装等优点。

本文所设计的步态识别系统,搭建在全志V853开发板上,充分利用板载外设、CPU与NPU,实现了嵌入式系统上的实时步态识别系统。

在这里插入图片描述

具体来说,系统所采用的深度学习算法在PC端进行训练,得到的Pytorch 模型通过模型转换工具转换为V853 NPU所能运行的NB模型,模型的推理在NPU上进行。系统的整体运行过程分为前处理、模型推理、后处理与UI显示四大部分。

在这里插入图片描述

本系统所采用的深度学习算法绝大部分算子在板载NPU上进行推理,小部分算子在板载CPU上运算得到结果。前处理与后处理过程均在板载CPU上进行,分别采用OpenCV与Eigen运算库,其中前处理从板载摄像头采集的视频中提取步态轮廓,并将其裁剪拼接后作为NPU模型的输入数据,后处理将NPU模型运行结束得到的输出数据进行补充运算并进行特征对比,以实现身份鉴定。UI界面的显示,通过Qt生成的应用程序实现。

本研究在CASIA-B数据集上测试了NB模型的步态识别准确率。CASIA-B是一个大规模、多视角的步态识别数据集,共包含124个样本,每个样本都有10种步态序列,分为6个正常行走的序列(NM),2个身着长外套行走的序列(CL)以及2个佩戴背包行走的序列(BG)。CASIA-B注重视角的变化,在每个行走序列中又包含了11个不同的角度。将数据集中的74个样本作为训练样本,剩下的50个样本作为测试样本。

在这里插入图片描述

在测试集中,使用每个样本的前4个正常行走的序列作为gallery集,为了研究在不同人体轮廓下系统的性能表现,划分了3个probe集,分别为正常行走序列的最后2个序列、2个身着长外套行走的序列和2个佩戴书包行走的序列。考虑到角度对识别效果的影响,本研究在每一个角度都进行了单独测试,以验证不同角度下识别的正确率。

根据上述测试数据制作了下表,表中包含了本文设计的步态识别系统GaitCircle使用的NB模型与GaitSet模型针对相同条件下的识别准确率数据。其中NM表示正常行走状态、BG表示背包行走,CL表示穿外套行走。

在这里插入图片描述

除了针对步态识别准确率进行了测试,本研究也对步态识别的实时性进行了测试。对于单人步态识别,前处理的处理速度达到了每帧58ms,模型推理运行时间仅为77ms,后处理的运行时间为0.73s。

最后,本研究还进行了实时识别测试,实时识别测试是利用V853开发板上的摄像头拍摄录像,并实时进行步态识别输出行人身份的过程。在进行测试之前,V853 Tina Linux中设置了开机自启动步态识别程序,主要通过在/etc/profile文件添加运行步态识别程序的命令实现。以下视频即为实时步态识别测试的过程,已经提前在步态信息库中录入了20个人的步态特征。

这篇关于在全志V853平台上成功部署深度学习步态识别算法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/776322

相关文章

如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件

《如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件》本文介绍了如何使用Docker部署FTP服务器和Nginx,并通过HTTP访问FTP中的文件,通过将FTP数据目录挂载到N... 目录docker部署FTP和Nginx并通过HTTP访问FTP里的文件1. 部署 FTP 服务器 (

C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

《C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)》本文主要介绍了C#集成DeepSeek模型实现AI私有化的方法,包括搭建基础环境,如安装Ollama和下载DeepS... 目录前言搭建基础环境1、安装 Ollama2、下载 DeepSeek R1 模型客户端 ChatBo

Ubuntu 22.04 服务器安装部署(nginx+postgresql)

《Ubuntu22.04服务器安装部署(nginx+postgresql)》Ubuntu22.04LTS是迄今为止最好的Ubuntu版本之一,很多linux的应用服务器都是选择的这个版本... 目录是什么让 Ubuntu 22.04 LTS 变得安全?更新了安全包linux 内核改进一、部署环境二、安装系统

JAVA集成本地部署的DeepSeek的图文教程

《JAVA集成本地部署的DeepSeek的图文教程》本文主要介绍了JAVA集成本地部署的DeepSeek的图文教程,包含配置环境变量及下载DeepSeek-R1模型并启动,具有一定的参考价值,感兴趣的... 目录一、下载部署DeepSeek1.下载ollama2.下载DeepSeek-R1模型并启动 二、J

Python与DeepSeek的深度融合实战

《Python与DeepSeek的深度融合实战》Python作为最受欢迎的编程语言之一,以其简洁易读的语法、丰富的库和广泛的应用场景,成为了无数开发者的首选,而DeepSeek,作为人工智能领域的新星... 目录一、python与DeepSeek的结合优势二、模型训练1. 数据准备2. 模型架构与参数设置3

Docker部署Jenkins持续集成(CI)工具的实现

《Docker部署Jenkins持续集成(CI)工具的实现》Jenkins是一个流行的开源自动化工具,广泛应用于持续集成(CI)和持续交付(CD)的环境中,本文介绍了使用Docker部署Jenkins... 目录前言一、准备工作二、设置变量和目录结构三、配置 docker 权限和网络四、启动 Jenkins

golang字符串匹配算法解读

《golang字符串匹配算法解读》文章介绍了字符串匹配算法的原理,特别是Knuth-Morris-Pratt(KMP)算法,该算法通过构建模式串的前缀表来减少匹配时的不必要的字符比较,从而提高效率,在... 目录简介KMP实现代码总结简介字符串匹配算法主要用于在一个较长的文本串中查找一个较短的字符串(称为

Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)

《Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)》本文介绍了如何使用Python和Selenium结合ddddocr库实现图片验证码的识别和点击功能,感兴趣的朋友一起看... 目录1.获取图片2.目标识别3.背景坐标识别3.1 ddddocr3.2 打码平台4.坐标点击5.图

通俗易懂的Java常见限流算法具体实现

《通俗易懂的Java常见限流算法具体实现》:本文主要介绍Java常见限流算法具体实现的相关资料,包括漏桶算法、令牌桶算法、Nginx限流和Redis+Lua限流的实现原理和具体步骤,并比较了它们的... 目录一、漏桶算法1.漏桶算法的思想和原理2.具体实现二、令牌桶算法1.令牌桶算法流程:2.具体实现2.1

SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程

《SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程》本文详细介绍了如何在虚拟机和宝塔面板中安装RabbitMQ,并使用Java代码实现消息的发送和接收,通过异步通讯,可以优化... 目录一、RabbitMQ安装二、启动RabbitMQ三、javascript编写Java代码1、引入