《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于Android系統的醫院語音排隊系統設計與實現
基于Android系統的醫院語音排隊系統設計與實現
2014年微型機與應用第16期
羅聯財,霍朝賓,白 宇,丁寶忠
中國電子信息產業集團有限公司第六研究所,北京
摘要: 設計和實現了一款基于Android的語音排隊系統。系統包括語音呼叫終端(Android系統)和醫生控制端(基于Windows)兩部分,它們之間通過Socket進行呼叫通信。系統很好地實現了兩個終端之間的通信并實現語音呼叫,具有較強的實用價值和開發指導意義。
Abstract:
Key words :

  摘  要: 設計和實現了一款基于Android的語音排隊系統。系統包括語音呼叫終端(Android系統)和醫生控制端(基于Windows)兩部分,它們之間通過Socket進行呼叫通信。系統很好地實現了兩個終端之間的通信并實現語音呼叫,具有較強的實用價值和開發指導意義。

  關鍵詞: 語音呼叫;Android系統;TTS語音合成;排隊系統

  自2007年Google推出開源手機操作系統Android[1]以來,Android的應用開發一時風靡全球,各高科技領域應用都在向Android進軍[2],各種基于Android系統的設備層出不窮。Android的盛行取決于其獨特的優勢:(1)開放性,Android是一款基于Linux內核的開源系統,對第三方應用開發完全開放,開發人員具有較大的自由度[3];(2)易開發,Android應用程序的開發采用Java語言,通過應用框架層提供的API[4],使開發簡單、周期短;(3)免授權費,Android一直采用免授權費的策略,這讓所有手持設備廠商都可以選擇Android系統,這也是Android如此流行的很大原因之一,因為對這些廠商來說,采用安卓系統能夠帶來比WinCE更多的利潤。

  排隊系統(或稱排隊機)是一種綜合運用計算機、網絡、多媒體、通信控制的高新技術產品,以取代各類服務性窗口傳統的由顧客站立排隊的方式,改由計算機系統代替客戶進行排隊。該系統適用于各類窗口服務行業,已經廣泛應用于金融、醫院、電信以及各級政府對外服務窗口等行業[5]。雖然現在市場上已經出現各種各樣的語音呼叫終端,但Android的出現及其廣泛應用,特別是Android系統設備的普及化,使得設備成本大大下降,開發一個基于Android系統的語音呼叫系統很有實用意義。

1 現有語音排隊系統綜述

  隨著語音合成技術的發展,語音排隊系統已經發展很多年了,目前的語音呼叫系統中,根據系統的組成,可以分為兩種應用類型:單純語音呼叫盒和帶顯示屏的語音呼叫系統。

  其中語音呼叫盒通常由語音芯片合成聲音,多應用于銀行、郵政之類的集中排隊叫號服務,這種盒子合成的聲音比較慢,聽起來一頓一頓的,用戶感覺差,隨著語音芯片技術的提高,以后有望做到一個更好的水平。

  語音呼叫系統除了一個聲音呼叫以外,還帶有一個顯示終端,終端會顯示當前叫號人員甚至下一個排隊者的姓名或其他信息,通常用于醫院等較為分散的排隊叫號服務,方便用戶在沒有聽到聲音時看到排隊信息。語音的屏顯功能,有的直接后臺帶電腦主機,這樣構成的成本較高;還有的利用分屏技術進行分屏顯示,但總體下來成本也不低。

  總體而言,目前主要利用語音芯片合成聲音的較多,隨著語音呼叫的需求發展,需要更多發展真人語音合成服務,但受限于語音合成芯片的資源限制,從長遠來看,需要將電腦級的語音合成技術帶入到語音排隊系統中。而目前的語音呼叫系統由于技術上的原因成本過高。隨著Android設備的發展,有很多顯示終端已經內置了Android系統,特別是Android系統對TTS語音合成的支持標準化,為開發新一代呼叫系統提供了可能,同時由于單一設備實現了顯示與語音呼叫,有效地降低了設備成本。

2 基于Android系統的語音呼叫優勢

  TTS(Text To Speech),即“從文本到語音”,是人機對話的一部分,讓計算機能夠說話。它是同時運用語言學和心理學的杰出之作,在內置芯片的支持下,通過神經網絡的設計,把文字智能地轉化為自然語音流。TTS技術對文本文件進行實時轉換,轉換時間之短可以秒計算。在其特有智能語音控制器作用下,文本輸出的語音音律流暢,使得聽者在聽取信息時感覺自然,毫無機器語音輸出的冷漠與生澀感。TTS語音合成技術即將覆蓋國標一、二級漢字,具有英文接口,自動識別中、英文,支持中英文混讀。所有聲音采用真人普通話為標準發音,實現了120~150個漢字/s的快速語音合成,朗讀速度達3~4個漢字/s,使用戶可以聽到清晰悅耳的音質和連貫流暢的語調。

  基于Android系統的語音呼叫有以下技術優勢:

  (1)軟件優勢。Android1.6版本及之后的系統都默認安裝了TTS引擎,這為開發基于Android系統的語音呼叫系統提供了可能。

  (2)硬件優勢。現在已經有帶Android系統的智能電視、智能顯示器、電視機頂盒等硬件供開發使用,而且由于Android系統費用很低,做出來的產品比原來不帶Android系統的產品功能上有很大提升,但成本增加很少。

  (3)可重用性高。基于Android的語音呼叫,如果硬件更換,例如從Android顯示器換成Android電視機,由于都是基于Android系統,可能不經過修改就能直接使用。如果是Android系統版本變化過大(比如新發布版本的API更新過大),也可能只需要經過重新編譯指定版本即可在新機器上使用,這為后續的開發部署提供了很大的便利,不會出現因為硬件變化而需要重新開發軟件的問題。

3 系統架構

  整體而言,本系統采用Client/Server架構,醫生客戶端從排隊服務器讀取當前排隊列表,由醫生決定呼叫排隊者,呼叫由Android呼叫終端完成。系統架構如圖1所示[6]。

001.jpg

  圖1中,每個陰影方塊表示不同的房間號,一個房間有多個醫生時,可以多個醫生共用一個顯示屏叫號。其中的呼叫終端,可以是帶Android系統的智能電視,也可以是智能顯示器甚至是機頂盒加顯示器的配置。

  系統的整體流程簡單明了,主要難點在于醫生客戶端與呼叫終端之間的聯系,通過Socket通信實現了通信過程。

4 Android端軟件實現

  本節主要討論Android系統下的語音呼叫系統實現,主要包括呼叫服務建立和語音呼叫過程的實現。軟件系統的主要程序流程圖如圖2所示。

002.jpg

  Thread服務創建很關鍵,通過它建立起Socket偵聽線程與消息處理線程。在Android編程中,Thread的作用與Windows下的多線程編程作用一樣,其目的是讓主線程不至于“陷入”到消息等待中。

  4.1 Android服務進程建立

  在此,需要在Android系統上建立一個Socket服務器,用來與醫生客戶端建立連接,以完成呼叫信息的接收工作。

  在主界面的Create()過程中,建立一個線程mThreadServer用于偵聽端口:

  mThreadServer=new Thread(mcreateRunnable);

  mThreadServer.start();

  其中的mcreateRunnable過程如下:

  //線程:監聽服務器發來的消息

  private RunnablemcreateRunnable=new Runnable()

  {

  public void run()

  {

  try

  {

  serverSocket=new ServerSocket(5678);

  //方法用于等待客戶連接

  mSocketServer=serverSocket.accept();

  //接受客戶端數據

  new Thread( ServerRunnable).start();

  }

  catch (IOException e)

  {

  Message msg=new Message();

  msg.what=0;

  recvMessageServer="創建異常:"+e.getMes

  sage()+e.toString()+"\n";

  return;

  }

  }

  };

  在偵聽線程完成建立之后,即完成了語音呼叫服務的建立,醫生客戶端就可以訪問指定的端口與呼叫終端進行數據傳輸了。

  4.2 Android語音呼叫實現

  在Android系統下,由于已經有了標準化的TTS語音呼叫引擎,完成一個語音呼叫的過程顯得非常容易,只需要根據Google提供的標準化API就能完成呼叫服務。

  使用系統提供的TTS引擎,可以使用TextToSpeech類來執行TTS操作,或者用setEngineByPackageName()方法來自定義一個引擎。在Android4.0后可以通過一個新的TextToSpeech的構造方法來指定引擎,該方法接收一個TTS引擎的包名。還可以通過getEngines()來查詢可用的TTS引擎,這個方法返回一個TextToSpeech.EngineInfo對象的集合,該對象包含引擎的圖標、標簽和包名等信息。

  通過如下過程完成語音引擎的初始化:

  if (status==TextToSpeech.SUCCESS){

  int result=mTts.setLanguage(Locale.CHINESE);

  if(result==TextToSpeech.LANG_MISSING_DATA

  ||result==TextToSpeech.

  LANG_NOT_SUPPORTED)

  {

  Log.e(TAG,"初始化成功,但是找不到語言包");

  //TODO安裝語言安裝包

  }

  }

  引擎初始化之后,就可以開始讓引擎發音了:

  try {

  mTts.speak(mContent,TextToSpeech.QUEUE_FLUSH, null);

  } catch (Exception e) {

  e.printStackTrace();

  showToast("出錯了~");

  }

  以上過程完成了一個語音引擎的初始化并讀出從醫生客戶端中接收到的文本信息。

  圖3是本系統實際使用的效果圖。

003.jpg

  本文介紹了一個基于Android系統的醫院語音呼叫系統的設計與實現過程,限于篇幅,本文實現過程主要針對Android部分的實現,實際上還有醫生客戶端的實現。由于介紹在Windows端實現Socket通信的文獻已經很多,本文不在此做過多贅述。

  本文設計實現的基于Android的語音呼叫系統在實際應用中取得了很好的效果。隨著Android系統設備的大量普及,這種基于Android系統的語音呼叫終端因為系統成本低且使用可靠,一定會得到推廣使用。

  參考文獻

  [1] 劉安戰,賈曉輝.基于Android的私密短信系統設計與實現[J].微型機與應用,2012,31(17):51-56.

  [2] 周時偉,謝維波.基于Android的智能家居終端設計與實現[J].微型機與應用,2012,31(14):11-14.

  [3] 葛艷,高占江.基于Android系統的音樂播放器設計與實現[J].微型機與應用,2014,33(1):5-8.

  [4] 弋改珍,解爭龍,張琨.基于Android的火車時刻表查詢系統設計與實現[J].現代電子技術,2012,35(4):41-44.

  [5] 但成福,劉曉明.一種用排隊論指導的CAN總線語音通信系統設計[J].電子技術應用,2013,39(2):22-25.

  [6] 曾建平,邵艷潔.Android系統架構及應用程序開發研究[J].微計算機信息,2011,27(9):1-3.


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美中文字幕| 欧美日韩中文字幕| av成人免费在线| 亚洲福利国产精品| 久久成人亚洲| 香蕉久久夜色精品国产使用方法| 一本久道久久综合狠狠爱| 亚洲精品美女在线观看| 亚洲电影免费观看高清| 亚洲电影欧美电影有声小说| 悠悠资源网久久精品| 黄色另类av| 伊人久久亚洲热| 亚洲福利专区| 亚洲欧洲午夜| 亚洲精品国产精品乱码不99| 亚洲精品国产拍免费91在线| 亚洲精品一区二区三区av| 最新亚洲视频| 亚洲乱码国产乱码精品精| 99v久久综合狠狠综合久久| 99精品视频一区| 亚洲网站啪啪| 香蕉亚洲视频| 亚洲国产精品一区在线观看不卡| 亚洲高清不卡一区| 亚洲开发第一视频在线播放| 亚洲美女91| 亚洲香蕉在线观看| 欧美一区=区| 久久青草久久| 欧美精品激情blacked18| 欧美日韩免费观看一区三区| 欧美性大战久久久久久久| 国产精品美女一区二区在线观看| 国产欧美精品日韩区二区麻豆天美 | 欧美一区二区在线观看| 久久精品国产亚洲aⅴ| 亚洲国产日韩精品| 一区二区不卡在线视频 午夜欧美不卡'| 在线亚洲+欧美+日本专区| 亚洲欧美日韩综合| 久久在线视频在线| 欧美久久在线| 国产农村妇女精品一区二区| 悠悠资源网亚洲青| 一区二区三区精品在线 | 一区二区三区波多野结衣在线观看| 亚洲综合大片69999| 久久九九精品99国产精品| 欧美国产欧美综合| 欧美性淫爽ww久久久久无| 国产日韩欧美综合精品| 1000部国产精品成人观看| 99精品免费视频| 久久激情中文| 在线亚洲精品福利网址导航| 久久精品女人的天堂av| 欧美精品一级| 国产欧美一区二区精品仙草咪| 亚洲国产精品激情在线观看| 亚洲图片欧美日产| 亚洲国产欧美一区二区三区同亚洲| 一区二区激情| 久久久一二三| 欧美性大战久久久久| 激情欧美一区二区| 在线中文字幕不卡| 亚洲国产成人av在线| 亚洲在线视频观看| 欧美成人一区二区三区片免费| 国产精品久久久久久久久久尿 | 一区二区三区欧美亚洲| 久久九九精品99国产精品| 欧美精品日本| 黄色免费成人| 亚洲欧美日韩综合| 一区二区欧美国产| 美女免费视频一区| 国产欧美日韩一区| 日韩一区二区精品葵司在线| 亚洲电影在线| 午夜亚洲视频| 欧美日韩精品伦理作品在线免费观看| 国产一区二区三区免费不卡| 在线视频精品一区| 亚洲精品乱码久久久久久| 久久精品日韩| 国产精品麻豆欧美日韩ww| 亚洲人成7777| 亚洲电影欧美电影有声小说| 欧美亚洲在线播放| 国产精品mv在线观看| 亚洲黄色在线观看| 亚洲高清一区二区三区| 欧美在线观看视频一区二区三区| 欧美日韩一级大片网址| 亚洲黄色尤物视频| 亚洲成人在线视频网站| 欧美中文字幕在线视频| 欧美亚韩一区| 9国产精品视频| 日韩一级精品视频在线观看| 麻豆九一精品爱看视频在线观看免费| 国产欧美在线看| 亚洲欧美日韩一区二区在线 | 国产精品麻豆成人av电影艾秋| 日韩视频不卡| 日韩一级免费| 欧美精品在线免费| 亚洲黑丝在线| 亚洲欧洲综合另类在线| 美女日韩在线中文字幕| 狠狠v欧美v日韩v亚洲ⅴ| 欧美一区二区视频免费观看| 欧美一区二区视频观看视频| 国产精品爽爽爽| 亚洲综合日韩| 欧美在线观看视频| 国产一区二区三区精品久久久| 性刺激综合网| 久久久久国产一区二区| 国产日本亚洲高清| 午夜精品福利一区二区三区av | 久久精品国产第一区二区三区| 久久精品国产精品亚洲| 国产欧美一区二区精品性| 午夜精品视频一区| 久久久精品动漫| 在线播放豆国产99亚洲| 亚洲激情不卡| 欧美精品一区二区三区蜜臀| 亚洲精品视频啊美女在线直播| 日韩午夜在线| 欧美日韩一区二区欧美激情 | 亚洲日本中文| 欧美日韩91| 夜夜嗨av一区二区三区四季av| 亚洲五月婷婷| 国产麻豆午夜三级精品| 欧美一级午夜免费电影| 久久婷婷久久| 亚洲黄一区二区三区| 在线综合亚洲| 国产精品影视天天线| 久久精品国产99精品国产亚洲性色| 蜜臀a∨国产成人精品| 亚洲黄页视频免费观看| 亚洲私人黄色宅男| 国产欧美日韩亚州综合| 久久激情视频久久| 欧美绝品在线观看成人午夜影视| 一区二区国产日产| 久久国产婷婷国产香蕉| 亚洲高清视频的网址| 一区二区三区欧美激情| 国产精品羞羞答答xxdd| 久久精品亚洲精品| 欧美久久一区| 午夜在线视频观看日韩17c| 美腿丝袜亚洲色图| aa成人免费视频| 久久久久久久久久久久久女国产乱 | 亚洲国产日韩欧美综合久久| 亚洲午夜在线| 国外成人在线视频网站| 日韩网站在线观看| 国产精品一区亚洲| 亚洲精品韩国| 国产精品羞羞答答| 亚洲精品中文字幕女同| 国产精品一二三| 91久久精品国产91久久| 国产精品成人国产乱一区| 亚洲国产mv| 国产精品久久九九| 91久久精品美女| 国产伦精品一区| 日韩视频不卡| 国产午夜久久久久| 一个色综合av| 激情综合五月天| 亚洲欧美日韩精品久久奇米色影视| 精品成人国产| 午夜日韩电影| 亚洲精品免费在线观看| 欧美主播一区二区三区| 亚洲精品综合| 久久夜色精品国产噜噜av| 中文久久精品| 欧美freesex交免费视频| 亚洲欧美国产高清va在线播| 欧美精品啪啪| 亚洲国产午夜| 国产日韩1区| 亚洲综合电影| 亚洲精品韩国| 蜜桃av一区| 欧美一区二区三区精品| 国产精品草草|