基于语音识别的会议记录系统
核心功能页面展示
1.创建会议
在开始会议之前需要管理员先创建一个会议,为了能够快速开始会议,仅需填写会议的名称、会议举办小组、会议背景等简要会议信息即可成功创建。
2.语音识别会议记录(最核心功能)
用户选择创建的会议参加,点击“开始识别”按钮进行语音识别记录会议内容。除此之外该页面还提供停止识别、重置识别结果、选择会议发言人、保存结果等功能,帮助用户应对不同的场景需求。
3.会议管理
用户可以随时查看会议信息,包括会议的名称、主题、地点、主持人、出席人员、举办方、会议状态、时间、会议记录等详细信息,进行后续会议的回顾与整理。
4.会议信息修改
用户可以对已存储的会议进行编辑,以纠正可能的错误或补充遗漏的信息。同时在该页面用户可以查询单个发言人的发言内容,以便提高会议的整理效率。
使用技术方案
1.语音识别技术方案(最核心)
在语音识别技术方面,我对比了科大讯飞实时语音识别、百度云实时语音识别、腾讯实时语音识别以及Web Speech的API,最终在本系统中我选用了Web Speech API。Web Speech API的优势在于它是浏览器原生支持的,无需额外安装或配置任何插件或SDK[22]。此外,Web Speech API是免费的,适用于各种Web应用,具有良好的跨平台性。最主要是代码调用为最简单的。
2.后端技术选择
本系统后端部分采用Spring Boot作为主要框架,因为它简化了Spring应用的初始搭建和开发过程,提供了开箱即用的配置方式,能够让开发者快速启动项目[23]。MyBatis是一个持久层框架,它支持定制化SQL、存储过程以及高级映射等功能,极大地减少了JDBC代码和手动设置参数以及结果集获取的需求[24]。Shiro则是一个强大且易用的Java安全框架,为系统提供认证、授权、加密和会话管理等功能,为系统提供安全保障[25]。此外系统还采用了Redis提高系统的响应速度和用户体验。
3.前端技术选择
本系统前端选择Vue.js作为主要框架,它轻量级和灵活性的特点可以提高系统的前端开发效率,使开发者快速搭建系统页面。Vue.js通过数据绑定和组件化的方式,可以高效地构建用户界面[26]。Element UI是一套为开发者、设计师和产品经理准备的基于Vue 2.0的组件库,它提供了丰富的界面元素,使开发者可以快速搭建出美观且功能强大的前端页面[27]。vue-element-admin是
一个基于Vue和Element UI构建的管理后台前端解决方案,它提供了丰富的组件和功能模块,具有响应式布局、多语言支持、动态路由、权限控制等特性,帮助开发者快速搭建管理系统[28]。
4.数据库选择
数据库方面,本系统选择MySQL8.0和阿里云OSS云存储。MySQL是一个高性能、稳定可靠的数据库管理系统,它支持多种存储引擎,满足不同的数据存储需求[29]。并且Mysql8.0还提供了丰富的SQL函数和强大的查询优化器,使数据处理更加高效[30]。阿里云OSS可以提供安全、稳定且高效的海量数据云存服务,因此本系统还选用阿里云OSS存储用户头像、会议室背景图、文件等非结构化的数据。
功能结构设计
“基于语音识别的会议记录系统”通过语音识别技术,自动将会议中的语音内容转换为文字记录,从而提高会议记录的效率与准确性。以下是系统的核心功能及其关系的简要描述:
(1)用户管理与权限控制:这是系统的基础功能,支持用户注册、登录和权限管理,确保不同用户根据其角色拥有相应的操作权限,并且为其他功能提供用户身份认证和访问控制。
(2)部门与小组管理:允许企业管理员或具有相关权限的用户创建、编辑和删除部门和小组。每个部门下可以设立多个小组,每个小组可以包含多个成员。用户可以被分配到不同的部门和小组中,从而实现更加细致的组织结构管理。在创建会议时,可以选择特定的部门或小组作为参与者,从而简化会议的组织和邀请流程。
(3)语音识别记录:在会议进行时,通过语音识别技术实时将会议内容转换为文字记录,并显示在界面上,用户可以根据显示内容进行实时地纠正和补充,还可以根据需要自行选择暂停识别记录、重置识别结果、保存结果到数据库等操作。此功能是系统的核心,它主要依赖于用户管理和会议管理功能,用户需要登录系统并创建或加入一个会议后,才能启动该语音识别记录功能。
(4)会议管理:会议管理主要由管理员用户进行创建、编辑和删除会议信息,
包括会议的时间、地点、参与者等。会议管理是系统的核心功能之一,它与其他功能(如语音识别记录、会议记录查看等)紧密相关,为用户提供会议的基础信息管理。
(5)会议记录查看与编辑:用户可以在会议结束后查看语音识别转写的文字记录进行会议的回顾与整理,也可以根据需要进行会议记录的编辑和修正。这一功能是对语音识别记录功能的补充和完善,用户需要基于已有的会议记录进行操作。会议记录系统的功能结构框图如图2.1所示:
数据库表展示
1.用户数据表
2.部门数据表
3.小组数据表
4.会议数据表(核心)
5.权限结构表
6.用户权限结构表