《基于深度学习的3D视觉处理及人体行为分析系统设计》需求分析报告

沉默之剑s 2021-12-25 17:16:27

1.项目背景

在智能化时代的当今社会,人脸识别、手势识别、自动驾驶等以前只会出现在科幻电影里的技术已经来到我们的身边。我们平时生活中接触到最多的视频信息几乎都是与人相关的:真人电影与短视频、监控影像、远程视频等等。所以对于人体的姿态估计与动作识别是一项极具意义的课题,可以用于动作电影的武术动作识别、专业的健身动作识别、老年人的跌倒识别检测甚至是国家运动员的专业动作分析等各种应用场景。

2.项目概述

整体流程如图:

img

在完成算法后,需要进行前后端的相关开发。

3.需求分析

用户打开手机或者 pc 前端界面:

  • 可以上传包含人体的图片、视频,经过本地或者是服务器端的处理后,得到具有人体骨架标注的图片、视频(通过标记关键点坐标并相连)。
  • 可以打开手机或者 pc 摄像头,进行实时的人体检测,直接观察到人体关键点坐标的摄像头内容。

因此需要开发以下功能:

  1. 上传图片/视频功能:
    可以浏览选择本地各种格式的图片与视频,对用户来说,上传后即开始处理。

  2. 开启/关闭摄像头功能:
    可以通过此功能打开电脑或者手机的摄像头,并在开启摄像头期间,可以开始处理摄像头内容。(不包括麦克风)

  3. 开始/终止识别功能:
    视频处理需要时间等待,而图片处理不需要此功能。

  4. 结果图片展示/视频播放功能:
    处理完成后会自动展示/播放处理后的图片/视频

  5. 结果下载功能:
    处理完成的新的图片与视频会自动保存到工作目录

  6. 退出程序功能:
    点击退出程序。

阶段性功能实现展示:

img

img

因为项目计划设计 pc 端与移动端两个平台的程序,所以数据流向如下:

img

但是这样,需要将算法分别部署两次到 pc 端与 移动端,所以可以进一步将处理数据的算法部署到服务器,如下图所示:

img

无论是手机还是电脑请求处理数据时,都可以先由本地向服务器请求算法,调用服务器来处理图片或者视频。

4.系统概要设计

img

  • 数据集
    在机器人领域,很多研究者利用距离数据进行人体检测,RGB-D 图像包括两幅图像,一个是普通的 RGB 三通道彩色图像,另一个是深度(Depth)图像,这两个图像的像素之间具有一对一的关系,Depth 图像可以反映物体表面的形状,每个像素值是传感器距离物体的实际距离。
  • 动作识别
    一种思路是手工选择一些姿势,根据这些姿势手工选择所需的关键点,以各关节的相对位置、速度、线加速度、角加速度作为变量,通过运动学方程或者约束,判断是否出现了某个动作。
    另一种方法是使用各种分类聚类算法,如多层感知机、随机森林等方法,将上述33个关键点及关键关节的速度、加速度、相对位置直接作为输入,训练出姿势分类器。

5.设计模式

本项目使用的是基于深度学习的人体识别算法,用到的设计模式是策略模式和模板方法模式。

  • 策略模式:
    本项目使用的算法是一个封装起来的可替换体。只需手动设置图片或者视频的输入,调用算法输出人体关键点坐标。
    算法的改变不会影响到用户的使用,可以是对用户透明的无感替换。

  • 模板方法模式:
    在算法实现内部。可以通过使用继承自 nn.Module 类,来获取已经定义好的算法骨架,只需要实现自己的具体步骤,如定义自己的 forward()、backward() 等方法。
    这也就是将算法的步骤延迟到了子类中去实现,而不改变算法结构。

作者:261

...全文
210 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

571

社区成员

发帖
与我相关
我的任务
社区描述
软件工程教学新范式,强化专项技能训练+基于项目的学习PBL。Git仓库:https://gitee.com/mengning997/se
软件工程 高校
社区管理员
  • 码农孟宁
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧