总体设计报告
1. 引言
1.1 编写目的
此份软件需求分析报告描述了“情绪社区”系统的总体设计。总体设计的任务:将复杂系统按功能分成模块、确定每个模块的功能和模块之间的调用关系、块间传递的信息、评价模块结构的质量。概要设计文档主要有:概要设计说明(或设计规格说明)、数据库设计说明等。
1.2 文档约定
本文档按照下列要求和约定进行书写:
(1) 标题分为四级,分别为宋体二号、宋体三号、宋体四号、宋体五号;
(2) 正文字体为宋体小四;
(3)标题字体均为黑色加粗,正文字体均为黑色不加粗。
1.3 预期读者和阅读建议
v 用户
v 项目负责人
v 系统维护员
v 程序员
在阅读本文档前,需要对小组项目“情绪社区”的功能大致了解,读者可根据自身需求选择性阅读。
1.4 适用范围
本软件主要适用于高校在校人员,在使用方法上考虑了简便性,对操作要求不高,只要同学熟悉基本的上传视频浏览贴吧发表帖子和评论,对计算机有基本的操作规范认识和了解,就可以完成阅读。
1.5 参考文献
⚫ 《软件工程导论》 张海藩 等 清华大学出版社
⚫ 《软件总体设计报告实例》 百度文库
2. 总体设计
2.1 总体目标
2.1.1 满足的需求
满足的核心需求是:用户能够通过该平台上传视频得到系统分析的结果,
同时可以在论坛社区分享评论发帖。详细需求情参考《“情绪社区”需求
分析报告》。
2.1.2 技术基础与运行环境
Web 端操作系统:win95 以及以上版本
微信小程序端:wechat6.6.7 以及以上版本
数据库:MySQL 数据库
Web 框架:Django
系统编写语言:Python
深度学习平台:Keras,tensorflow
2.2 系统总体结构
对于用户来说,有如下系统功能:包括用户管理模块,用户视频情绪分析模块,
用户论坛社区模块;对于管理员来说,主要是参与系统的管理与维护,审核相关
信息。按照这几个准则将整个系统按照下图分为若干模块。
2.3 各功能模块描述
2.3.1 用户管理模块
用户注册登录之后,系统会记录相关信息,同时可以修改个人信息,以及每
次使用视频文件和社区之后,用户的管理模块的用户文件数据管理信息都会
更新记录,同时也保留了管理员删除用户的权限,如果该用户有违法违规操
作。
2.3.2 用户视频情绪分析模块
1)用户视频上传:用户点击上传视频按钮后,从文件夹打开选择的视频,
|
|
|
|
上传系统,同时会检查视频格式,大小,分辨率,时长,对于不满足格式
|
|
|
|
|
的视频,会弹窗相关信息。
|
2)算法模型分析:调用已经训练好了的 CNN 模型,将用户上传的视频切割
|
|
|
|
成一帧一帧的图像,然后用模型先切割出人脸然后用模型对人脸表情进行
分类,然后把结果按照帧数打印成时序图写入 js 代码中,嵌入在 html 页
|
|
|
|
|
面。
|
3)用户结果反馈:将嵌入结果时序图的 html 发送给用户,用户得到视频
分析的结果。
2.3.3 用户社区模块
1)版块管理:用户可以自设定一些版块,也可以提交举报或者删除,填写
系统申请单,由后台审核之后会发布在系统之内。
2)帖子发布:用户可以自己在相应版块下申请发布帖子,按照系统格式,
填写完毕,提交等待管理员审核。
3)跟帖,评论:用户可以在别人的帖子下选择“回复”来跟帖或者评论,
帖子的底部有转发按钮,可以支持转发。