## 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)
