APP下载

基于语音识别技术的交际软件设计与实现

2020-04-09张生冯莹莹严晓龙

无线互联科技 2020年3期
关键词:微信小程序

张生 冯莹莹 严晓龙

摘   要:随着当今社会经济的发展与进步,国内外交流日益频繁,英语作为世界第一大语言,学好并掌握英语的重要性不言而喻。文章设计的基于语音识别技术的英语口语交际软件主要通过语音识别模块、情景对话数据库模块、语音合成模块、发音以及语境评测模块等共同作用,在突出情景口语教学的基础上再结合移动设备的便携性,提高学习者学习兴趣,不仅能够让使用者沉浸在英语对话氛围中提升语感,而且能够利用智能移动设备的便携性节省大量时间,进而提高使用者对英语的学习兴趣。

关键词:微信小程序;WebAPI接口;JSON数据;英语学习软件;MySQL;Java

在经济全球化的今天,英语已成为人们沟通、交流的重要工具。但英语学习长期以来一直困扰着许多中国人,尤其口语的学习是困扰国人的最大难题,究其原因主要有以下几个方面:(1)中国人特有的发音特点限制了学习英语的口语学习。(2)中国英语教师较为重视教导学生语法与单词,相对忽视对英语发音能力的培养。(3)中国的学生缺乏良好的英语学习氛围。

本文针对上述问题,运用操作简单、使用方便以及移动性强的微信小程序对应用软件进行开发,利用微信小程序的优秀性能和针对口语专项练习的设计思想,设计出一款用于能够提升英语口语能力和提高用户学习兴趣的学习软件。

1    软件功能结构设计

1.1  软件系统结构

软件整体系统为3层C/S结构,分为表示层、功能层和数据层,如图1所示,对应软件的客户端、服务端和数据端。这些端口分别有以下功能:(1)客户端,是用户接口部分,负责用户与应用间进行的对话,用于检测用户从麦克风以及按键等一些输入数据,并显示应用输出的数据,给用户提供直观操作。(2)服务端,是软件的核心部分,不仅可以对客户端的请求进行响应,也可以对数据端里的数据进行修改,主要作用包括处理客户端传入的数据、客户端与数据端之间的数据交互。(3)数据端,主要负责管理数据库数据的读写,DBMS可以执行大量数据的更新和检索,由于现在主流的是关系数据库管理系统,所以一般使用SQL语言进行操作。

1.2  服务端系统功能

(1)对小程序进行管理,推送一些通知消息、及时更新情景对话推荐,同时可以对小程序的用户进行管理,根据用户等级进行功能授权。

(2)对情景对话数据库中的资源进行管理,包括增、删、改、查等功能,都集中在后端进行管理,对资源的管理更加方便。

(3)对后台的用户进行管理,管理员需要登录账号密码才能进入后台,对数据以及小程序进行管理,为了保护数据的安全性,管理员对数据的访问也同样有不同的权限。

1.3  小程序端的主要功能介绍

(1)口语对话情景推荐。将英语口语对话情景使用频率和搜索频率较高的情景对话推荐出来,避免用户再次查找的同时,提高用户的使用效率。

(2)口语对话情景搜索。用户可以通过搜索栏搜索自己想要练习的对话场景,或者直接语音输入,系统会根据语意直接找到最匹配的场景,大大提高了用户使用的便捷性。

(3)口语发音标准打分。对用户每个单词的发音进行评测,结合整个情景对话给出综合打分,给用户的发音水平提供一个评价的标准。

(4)口语对话录音回放。利用软件的回放功能,用户可以对自己的发音情况进行大致评估,再结合系统发音打分,对错误的发音进行纠正,进而提高口语发音水平。

(5)对话情景记录。通过情景对话记录,用户可以查看练习的历史,针对练习情况制定下一步练习计划。

(6)对话情景收藏。把需要经常练习的对话场景收藏起来,练习记录和收藏不仅可以为用户提供可能需要练习的新场景,也可以利用数据统计口语对话的高频场景,通过一系列的反馈为应用的对话情景推荐的准确性提供保障。

1.4  数据端结构

数据端使用开源的MySQL数据库,如图4所示,根据口语学习软件的需要,数据端主要围绕以下几点进行设计:

(1)用户信息模块,软件围绕用户展开,用户模块包括两部分,分别是前端的用户和后台用户的信息模块,主要包含用户的基本信息、账户和密码。

(2)用户记录和收藏模塊,与用户的信息模块息息相关,记录用户的练习记录和对话情景的收藏信息,为每个用户的个性化提供保障。

(3)情景对话数据模块,是软件的核心部分,包含每个情景对话的主要内容。

2    核心技术的实现

2.1  小程序端与数据库的交互

如图5所示,微信小程序通过wx.request( )方法[1]进行http访问,访问在服务器上的Java后端,访问时,服务器执行Java后端,后端根据小程序传递的参数对数据库进行相应的操作。

2.2  小程序端调用科大讯飞API接口

根据口语软件的需要,主要调用科大讯飞3个WebAPI接口,分别是语音识别模块、语音合成模块、语音评测模块。

下面对语音识别模块webAPI接口的调用进行举例:小程序端利用录音接口wx.getRecorderManager()[1],获取用户录音文件,然后将录音文件传往服务器,服务器将MP3文件利用ffmpeg转换为pcm格式,再把pcm格式的录音文件以及讯飞接口的API_KEY,SECRET_KEY传往讯飞,并返回识别结果。

2.3  SSM框架,Maven和Bootstrap前端框架的后台管理模块

后台管理模块采用MVC软件架构模式[2],将页面显示、业务逻辑和数据库访问分离,为了提高开发效率,系统采用SSM架构[3]和Bootstrap前端框架,SSM架构具有耦合度低、轻量级、效率高等优点。Bootstrap是基于HTML,CSS,JavaScript的前端框架,简洁灵活,更便于开发。

SSM框架集由Spring,SpringMVC,Mybatis 3个开源框架整合而成:(1)Spring,是一个轻量级的框架,有很多的拓展功能,理念包括控制反转(Inversion of Control,IoC)和面向切面编程(Aspect Oriented Programming,AOP)[4]。(2)SpringMVC,Spring实现的一个Web层,相当于Struts的框架,但是比Struts更加灵活和强大[3]。(3)Mybatis,一个持久层的框架,在使用上比Hibernate更加灵活,可以控制SQL的编写,使用XML或注解进行相关的配置。

3    系统界面设计

3.1  小程序界面设计

小程序界面部分截图如图7所示。基于语音识别的口语交际软件是一款对话式英语口语练习软件,软件通过语音识别语音合成将数据库对话信息转换成语音对话,以人机交互的形式,在提高对话数据量的同时,给用户更好的学习体验,由以下几个部分构成:

(1)首页,包含对话情景的推荐以及系列课程的推荐,后期还可在页面开发更多的功能,如口语练习、每日一次、英语听力和美文欣赏等。

(2)情景对话,是小程序的主体部分,主要是人机交互的情景对话,用户对话时有相应的文字提示,对话结束后,软件自动给对话发音打分。

(3)情景历史,不仅可以看到用户练习的记录,而且可以看到对话的具体信息,在对话结束之后可以再次复习内容。

(4)我的,主要是用户的信息,同时还包含用户练习次数统计、我的收藏、练习历史、每日签到和意见反馈等操作。

3.2  后台管理系统操作界面设计

后台管理系统如图8—9所示,主要包括两个部分:(1)对情景对话数据库内容进行管理,可以对数据库内容进行增删改查。(2)对后台使用者权限进行管理,可以新增管理员和修改管理员密码。

4    结语

基于语音识别的口语交际软件经过测试,小程序端以及后台管理系统都能够正常使用。小程序端给用户提供获取资源的界面,后端配合数据库响应小程序端请求,后台管理系统对数据库进行维护和管理。基于语音识别的口语交际软件以情景对话为主要练习模式,对用户的口语进行训练。软件在微信平台的基础上开发,不仅提高了应用的便捷性,而且提高了程序的使用率。此程序既为用户整合了学习内容减少用户搜集资源的时间,又进一步提高了使用者的学习效率。

[参考文献]

[1]腾讯.小程序微信官方开发教程文档[EB/OL].[2017-01-09](2020-02-10).https://developers.weixin.qq.com/miniprogram/dev/api/network/request/wx.request.html.

[2]李曉杰.于MVC设计模式的SSH框架的研究[J].信息化研究,2016(1):17-22.

[3]梁弼.SSH框架整合技术研究及应用[J].西安文理学院学报(自然科学版),2011(3):16-19.

[4]董源,李培军,许舒人.基于AOP的数据库应用安全控制的设计与实现[J].计算机系统应用,2015(12):74-80.

猜你喜欢

微信小程序
当图书馆遇上微信小程序