You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
|
## 1、系统说明:
|
|
|
|
|
|
|
|
|
|
##### 手语翻译项目旨在构建一个手语翻译系统,方便手语与自然语言的相互转换,这个系统的主要功能有:
|
|
|
|
|
|
|
|
|
|
1. 实现手语视频录制,并转化为自然语言
|
|
|
|
|
2. 完成自然语言转化为手语动画
|
|
|
|
|
3. 实现设备间算力共享
|
|
|
|
|
|
|
|
|
|
##### 手语翻译系统只有一类用户:用户
|
|
|
|
|
|
|
|
|
|
功能1,2供用户使用
|
|
|
|
|
|
|
|
|
|
功能3根据用户意愿开启
|
|
|
|
|
|
|
|
|
|
##### 该系统必须满足以下限制:
|
|
|
|
|
|
|
|
|
|
1. 能以较低的性能要求实现运算
|
|
|
|
|
2. 仅在用户允许情况下使用算力共享
|
|
|
|
|
|
|
|
|
|
## 2、需求获取与分析
|
|
|
|
|
|
|
|
|
|
### 2.1系统初步用例图:
|
|
|
|
|
|
|
|
|
|
![](/home/smj/Work/work2/初步用例图.png)
|
|
|
|
|
|
|
|
|
|
### 2.2用例描述与顺序图:
|
|
|
|
|
|
|
|
|
|
**用例名**:输入自然语言
|
|
|
|
|
**业务目标**:用户输入需要翻译的自然语言
|
|
|
|
|
**执行者**:用户
|
|
|
|
|
**前置条件**:app正常运行
|
|
|
|
|
**基本事件流**:
|
|
|
|
|
|
|
|
|
|
1、用户打开手语翻译app
|
|
|
|
|
2、用户点击输入框
|
|
|
|
|
3、用户输入自然语言
|
|
|
|
|
4、用户提交自然语言
|
|
|
|
|
**扩展交互动作**:
|
|
|
|
|
|
|
|
|
|
1a: 修改输入内容
|
|
|
|
|
|
|
|
|
|
1a1:直接在输入框进行文本编辑
|
|
|
|
|
|
|
|
|
|
**后置条件**:输入数据无损失
|
|
|
|
|
|
|
|
|
|
**可靠性需求**:数据安全性无限接近100%
|
|
|
|
|
|
|
|
|
|
![](/home/smj/Work/work2/输入自然语言.png)
|
|
|
|
|
|
|
|
|
|
**用例名**:获取手语视频
|
|
|
|
|
**业务目标**:用户上传视频到app
|
|
|
|
|
**执行者**:用户
|
|
|
|
|
**前置条件**:app正常运行
|
|
|
|
|
**基本事件流**:
|
|
|
|
|
|
|
|
|
|
1、用户打开手语翻译app
|
|
|
|
|
2、用户允许app开启摄像头
|
|
|
|
|
3、用户打开摄像头
|
|
|
|
|
4、app获取摄像头视频流
|
|
|
|
|
**扩展交互动作**:
|
|
|
|
|
|
|
|
|
|
1a: 重新录制视频
|
|
|
|
|
|
|
|
|
|
1a1:删除已录制视频并重新录制
|
|
|
|
|
|
|
|
|
|
**后置条件**:硬件正常时,能获取无损视频
|
|
|
|
|
|
|
|
|
|
**可靠性要求**:视频在传输过程中受损率无限接近0%
|
|
|
|
|
|
|
|
|
|
![](/home/smj/Work/work2/获取手语视频.png)
|
|
|
|
|
|
|
|
|
|
**用例名**:翻译自然语言为动画
|
|
|
|
|
**业务目标**:将用户输入或云端获取的自然语言转换为3D动画
|
|
|
|
|
**执行者**:用户
|
|
|
|
|
**前置条件**:
|
|
|
|
|
|
|
|
|
|
1、网络正常连接或本地算力足够
|
|
|
|
|
2、用户已输入自然语言
|
|
|
|
|
**基本事件流**:
|
|
|
|
|
1、用户点击“语言翻译”按钮
|
|
|
|
|
2、app对获取自然语言进行翻译
|
|
|
|
|
**扩展交互动作**:
|
|
|
|
|
|
|
|
|
|
1a: 选择本地运算或云端运算
|
|
|
|
|
|
|
|
|
|
1a1:根据选择来确定运算设备
|
|
|
|
|
|
|
|
|
|
**后置条件**:在词库内有对应数据时,可生成完整动画
|
|
|
|
|
|
|
|
|
|
**性能要求**:响应事件小于200ms
|
|
|
|
|
|
|
|
|
|
**可靠性要求**:保证词条对应数据100%正确
|
|
|
|
|
|
|
|
|
|
![](/home/smj/Work/work2/翻译自然语言为动画.png)
|
|
|
|
|
|
|
|
|
|
**用例名**:翻译视频为自然语言
|
|
|
|
|
**业务目标**:将用户输入或云端获取的视频转换为自然语言
|
|
|
|
|
**执行者**:用户
|
|
|
|
|
**前置条件**:
|
|
|
|
|
|
|
|
|
|
1、网络正常连接或本地算力足够
|
|
|
|
|
2、用户已输入视频
|
|
|
|
|
**基本事件流**:
|
|
|
|
|
1、用户点击“视频翻译”按钮
|
|
|
|
|
2、app对视频进行翻译
|
|
|
|
|
**扩展交互动作**:
|
|
|
|
|
|
|
|
|
|
1a: 选择本地运算或云端运算
|
|
|
|
|
|
|
|
|
|
1a1:根据选择来确定运算设备
|
|
|
|
|
|
|
|
|
|
**后置条件**:当视频内容有效时,根据视频可生成对应自然语言
|
|
|
|
|
|
|
|
|
|
**性能要求**:每秒处理速度达到30fps
|
|
|
|
|
|
|
|
|
|
**可靠性要求**:翻译直译准确率达到90%以上
|
|
|
|
|
|
|
|
|
|
![](/home/smj/Work/work2/翻译视频为自然语言.png)
|
|
|
|
|
|
|
|
|
|
**用例名**:显示动画
|
|
|
|
|
**业务目标**:在app显示数据转换后的3D动画
|
|
|
|
|
**执行者**:用户
|
|
|
|
|
**前置条件**:app已经获取3D动画数据
|
|
|
|
|
**基本事件流**:
|
|
|
|
|
1、app显示生成3D动画
|
|
|
|
|
|
|
|
|
|
**后置条件**:当动画生成后,在屏幕指定位置展示动画
|
|
|
|
|
|
|
|
|
|
**可靠性要求**:动作混淆错位等错误发生率为0%
|
|
|
|
|
|
|
|
|
|
![](/home/smj/Work/work2/显示动画.png)
|
|
|
|
|
|
|
|
|
|
**用例名**:显示自然语言
|
|
|
|
|
**业务目标**:在app显示数据转换后的自然语言
|
|
|
|
|
**执行者**:用户
|
|
|
|
|
**前置条件**:app已经获取处理后的自然语言
|
|
|
|
|
**基本事件流**:
|
|
|
|
|
1、app显示翻译后的自然语言
|
|
|
|
|
|
|
|
|
|
**后置条件**:当收到自然语言时,在屏幕指定位置生成文字
|
|
|
|
|
|
|
|
|
|
**可靠性要求**::保证数据准确度为100%
|
|
|
|
|
|
|
|
|
|
![](/home/smj/Work/work2/显示自然语言.png)
|
|
|
|
|
|
|
|
|
|
### 2.3分析类图:
|
|
|
|
|
|
|
|
|
|
![](/home/smj/Work/work2/分析类图.png)
|