长途汽车站语音播报系统的设计与实现

时间:2022-09-16 05:30:36

长途汽车站语音播报系统的设计与实现

摘要:详细介绍了一种长途汽车站语音播报系统的设计与实现方法,实现了将文字实时动态转化为语音的信息管理系统的开发。对提高现代化长途汽车站的管理水平,具有一定的借鉴意义。

关键词:长途汽车站;文本语音转换;软件开发

中图分类号:TP391文献标识码:A 文章编号:1009-3044(2008)22-817-02

The Designment and Implementation of Broadcasting with Sound for Long Distance Bus Station

DING Ru-gen,CHEN Zhi

(Computer and information school,University of Hefei Polytechnology, Hefei 230009,China)

Abstract:This paper introduces a method of design and implementation of broadcasting with sound for long distance bus station. This management information system is developed to transform text into real-time speech dynamically. This paper is helpful for improving management level of modern long distance bus station.

Key words:long distance bus station; text to speech; software development

1 引言

语音合成技术的研究成果已经有很多,在许多领域中已有大量的应用。但是在很多地、市级的长途汽车站的候车大厅中,仍然采用的是人工进行广播,人工广播不仅难以及时准确,而且播报员的劳动强度很大。在春运高峰期间,班次信息不仅量大而且变化也快,播报员每天的工作量将更大,尤其对于班次检票、发车以及班次停运等的广播信息,很难及时而又准确地进行播报。为此,开发了一套长途汽车站语音自动播报系统,能够在长途汽车站的候车大厅中根据售票管理系统中的班次信息自动进行播报,提高了长途汽车站的现代化与信息化的管理水平。由于实现了语音自动播报功能,同时也节约了成本,给车站带来了一定的经济效益。当然,实现长途汽车站语音自动播报功能的前提条件是汽车站必须已使用了微机售票管理信息系统。

语音合成技术大致可以分为两大类:一类是意群语音,另外一类是文字语音。意群语音是指根据事先估计可能使用到的话音进行录制,并且将这些话音信息存储起来形成语料库。所谓语料库,就是指存储基本语音信息的信息库。在需要使用的时候可以从语料库中调出进行播放。文字语音是以文字为基本单位做好语音库,需要发音的每一个字符都可以在语音库中找到对应的语音信息。利用它可以实时动态地将文字信息转换为声音。这方面的研究成果以Microsoft公司研制的TTS技术(Text To Speech)最为杰出。如果需要使用中文进行发音,在利用TTS的技术中,同时需要下载支持中文语音库的补丁(Language Pack)即可。

2 系统分析

针对长途汽车站候车大厅中语音播报的特点进行分析之后,决定采用意群语音技术来实现自动语音播报。通过事先录入好的语音信息保存到语料库中,需要使用的时候调出进行播放。具体来说,将这个功能拆分成两个部分:(1) 整段句子录音保存到语料库中,需要使用的时候,将语音文件整段调出进行播放。例如:旅客乘车注意事项、公告信息等。(2) 部分单词、词语或句子进行录音形成音频文件,再通过音频编辑软件(例如:cooledit)进行编辑,然后保存到语料库中。在使用的时候,将单词或词组对应的语音信息合成后进行播放。例如:班次开始检票、停止检票通知的播报等。就是先在班次发车信息库中检索出班次的文本信息,根据文本信息从语料库中找到对应的语音信息,再将这些语音信息进行合成,然后进行播报。从而实现了长途汽车站候车大厅中的动态语音播报系统。

系统开发采用的前台工具是PowerBuilder,后台是SQL Server 2000数据库管理系统,音频编辑工具采用的是cooledit。音频采样率是16KHZ,量化精度为16位。

3 系统设计

3.1 声音信息的录入

在系统分析之后,就需要准备对声音文件的录入工作。声音文件的录入主要包括两个部分。下面分别进行说明:

整段语音文件的录入,主要针对旅客乘车注意事项、公告等信息量比较大,而且相对固定的语音信息,事先将这些语音信息录入并保存到语料库中,在需要使用的时候,调出进行播报即可。

单词、词组、部分句子的录入,主要针对班次开始检票、停止检票等的语音播报。由于这部分的功能,不是固定的,完全是一个动态的。所有使用到的班次信息,都需要在售票系统中进行查询与检索。下面用一个班次开始检票的语音播报实例,说明系统是如何完成声音信息录入的。

假设有一个在10:30开往合肥的1215次班车需要在5号检票口开始检票,语音播报的具体内容是:各位旅客,买好了10:30开往合肥方向的1215次班车在5号检票口开始检票了。先将整段语音录入下来,然后将这段语音使用音频编辑软件拆分成9个部分:(1) 各位旅客,买好了;(2) 10:30;(3)开往;(4) 合肥;(5) 方向的;(6) 1215;(7) 次班车在;(8) 5;(9) 号检票口开始检票了。在这9个部分中,其中第1、3、5、7、9部分是固定不变的,只有第2、4、6、8部分是变化的。我们将所有可能发生变化部分的信息,都事先以单词或词组的形式单独录入话音,保存到语料库中。也就是说:将班次信息中所有可能的发车时间、终点车站、班次编号、检票门号都以单词或词组的形式录入话音保存到语料库中。语料库中大约有1千多条记录,如何组织好语料库,从语料库中快速高效地将文本所对应的语音信息检索出来,对长途汽车站的语音播报质量也起着非常重要的作用。

3.2 班次信息的检索与播放

在后台服务器上,编写一个存储过程,其功能是调用售票管理系统中的当日班次信息。在语音播报系统中,通过调用后台存储过程,编写一个检索班次信息的窗口界面,按照指定的条件检索出班次信息,就可以知道班次的发车时间、终点车站、班次编号、检票门号等文本信息。将这些文本信息从语料库中检索出对应的语音信息,再将这些语音信息进行合成,形成待播放的语音信息。通过PB中的OLE嵌入功能调用媒体播放器(Windows Media Player)进行语音播放。从而就动态地实现了将文本信息转化为语音输出的功能。

在系统检索与播放的窗口界面上,主要有以下几个方面的功能:(1) 通过时间触发器,每隔1分钟对班次信息进行检索,搜索出满足指定条件的班次信息。(2) 可以设置每个班次语音播报的重复次数,选择的范围一般是1至3遍。(3) 可以设置每个班次语音播报的提前时间量,选择的范围可以是5分钟、10分钟、15分钟、20分钟等。(4) 可以选择播报班次信息还是旅客注意事项等其它语音播报信息。缺省状态下,在语音播报指定的时间内,没有班次信息播报时,系统将自动播报旅客注意事项等其他语音播报信息。(5) 在检票系统停止某一班次检票时,语音播报系统也同时进行相应的班次停止检票播音。

4 系统的主要特点

汽车站语音播报系统的主要特点如下:(1) 采用了“客户定制”的设计思想。所谓“客户定制”,是指系统在设计与开发过程中,将系统的可变因素独立起来,提供用户改变这些可变因素的功能模块,让系统的运行根据这些因素的变化而自动变化,使得系统具有较高的通用性。例如:设置语音播报次数、选择语音播报提前时间等功能,就是将可以变化的而且影响语音播报结果的因素独立出来,让管理员可以进行修改与定义,使得系统具有较高的通用性。(2) 由于系统是采用面向对象的软件开发工具进行开发的,作者将过去长期开发MIS系统所积累的知识和经验,抛开与具体信息系统相关的部分,利用面向对象开发工具的特点,设计了大量可继承的通用模块或对象,并将这些对象封装起来,形成一个共享的标准动态连接库(Share.dll),减少了用户定制系统的复杂性。在该系统的研制与开发过程中,许多对象从共享的标准动态连接库中直接进行引用或继承,大大缩短了系统开发的时间。

5 结束语

利用PowerBuilder编写的长途汽车站自动语音播报系统,提高了长途汽车站现代化与信息化的管理水平,减轻了工作人员的劳动强度,同时也使得语音播报信息更加及时、准确,深受用户的欢迎。

参考文献:

[1] 刘志铭,张振坤,冯文翠. PowerBuilder数据库开发关键技术与实例应用[M].北京:人民邮电出版社,2004.5.

[2] 王晟,马里杰. SQL Server数据库开发经典案例解析[M]. 北京:清华大学出版社,2006.

[3] 丁汝根,王琦. 基于校园网运行的医院管理系统的研制与应用[J]. 电脑学习,2007,4:21-22.

[4] 赵建洋,胡泽雄. 动态文本――语音编程系统的研究与应用[J]. 淮阴工学院学报,2007(16,3): 36-39.

上一篇:对多媒体辅助教学的几点思考 下一篇:PKI在政务网邮件系统中的应用