佘陳鳳 余遠波 陳靜嫻 曹友 陳澤游



摘 要:語言不通,醫囑信息難以傳達的情況在醫院普遍存在。該項目為解決醫患之間醫囑溝通問題,提供一種解決方案。醫院每個藥袋都有唯一標識的二維碼,解析二維碼信息,從而調取數據庫醫囑信息。通過音標標注法,數據靈活性強,實現了海南話方言、英語等多語種播音。讓二維碼用多語種“說話”,達到正確及時傳達醫囑信息的目的,盡可能減少藥品不良事件的發生。
關鍵詞:二維碼;多語種;語音;醫囑;移動醫療
中圖分類號:TP311 文獻標識碼:A
Abstract:The language barrier severely impedes the transfer of the doctor's advice in most hospitals.The project aims to offer an effective solution to the communication problem between doctors and patients.On each medicine package is a unique QR code.The doctor's advice can be obtained from the database by scanning the QR code.Since the application of phonetic annotation provides the system with good flexibility,the system can broadcast in different languages and dialects,such as English and Henan dialect,to name but a few.Through QR code,the system can accurately convey the doctor's advice in time by "speaking" in different languages and dialects,which can eliminate drug misuse to a large extent.
Keywords:QR code;multilingual;voice;the doctor's advice;mobile medical
1 引言(Introduction)
隨著科學技術的發展,信息傳遞技術也在不斷發展和進步。自電子計算機問世以來,信息傳遞技術的發展又進入了一個嶄新階段,出現了許多大容量、高效率、可靠性好的現代化的信息傳遞技術[1]。語音合成[2]作為一種新的信息傳遞技術,已被應用在了人機交互中。全球各地多民族、地方性語言眾多,語言不通造成溝通障礙,因此多語種的語音合成成為了人機語音交互領域的研究熱點[3]。
目前漢語普通話的語音合成系統已經比較成熟,除實現了中英文混合語音合成[4]外,還實現了普通話到閩方言中臺灣話的語音轉換[5]。在方言的語音合成中,利用語音修改技術[6],將普通話的韻律修改為方言的韻律,實現了華北方言中聊城話[7]、蘭州話[8]等的語音合成,另外也實現了英語、韓語等國際性語種的語音合成。當前將地方性方言語種應用到的計算機應用方面的研究,專注于方言語音合成方法研究[9],并沒有將其應用到生活醫療中。最常見的文語轉化系統中也多數提供基本國際化語種[10],目前沒有找到關于地方性語言在醫療方面的研究應用。并且例如考慮老年人群,在醫院看病,只會海南話,不會普通話,視力退化也看不清文字,單從醫療信息傳遞的正確性與及時性方面來說,就有很大的問題和不足[11,12]。移動醫療還有很大的發展空間,前景廣闊但任重道遠。
移動醫療是當前移動開發的研究熱點之一,移動醫療的發展為醫療行業的進步帶來了新的機遇。移動通信技術和智能設備的迅速發展為移動醫療提供了機會,利用新技術覆蓋到以前無法做到或需要高昂代價的醫療服務環節,進而實現醫療服務生態各個角色高效實時的信息服務,具有重大研究和應用價值。多語種醫囑播報系統(Multilingual Speech Orders Broadcast System)就是在此時代背景下的一個有益嘗試。基于android系統[13],為醫療電子應用市場提供合適的解決方案,在一定程度上解決了與患者在藥品醫囑溝通方面存在的問題;它還將帶來醫療服務工作的流程簡化和效率提高;并且二維碼作為一種全新的信息儲存、傳遞和識別技術,與患者信息安全密切相關。利用二維碼加密,在保障了患者信息安全性的前提下,有助于醫療資源的合理分配和共享。本項目是對移動醫療進行拓展與創新,尤其是其中地方性方言語種的播報,例如海南話,極具特色,具有一定的實用性和創新性。
2 設計與實現(Design and implementation)
2.1 軟件功能設計
醫囑信息難以傳達的情況在醫院普遍存在,護士不能正確、及時傳達信息給患者,使得患者容易對某些治療和護理措施缺乏理解和配合,從而延誤治療和護理,甚至可能造成意外傷害。醫院藥品袋上已經有了為方便藥品正確抵達病人手中而設計的二維碼,如果我們讓二維碼用多語種“說話”,就能達到正確及時傳達醫囑信息的目的,減少藥品不良事件的發生。本項目,就是基于這個想法開展的。
多語種醫囑播報系統軟件實現功能如圖1所示。
研究主要內容:
(1)二維碼生成與掃描:二維碼信息為醫囑id。
(2)語音庫維護:包括音標輸入、音標校準等。
(3)個性化設置醫囑播報語種。
(4)掃描藥袋上的二維碼獲取醫囑信息。
(5)多語種語音播報醫囑。
通過手機圖像采集設備獲小袋上二維碼,將二維碼作為數據庫接口,調取數據庫中存儲的醫囑信息,從SDK獲取語音內容,語音播報藥品的基本用法、用量,如餐前30分鐘口服、每日3次等,語音播報語種包括海南話、普通話、英文等,個性化設置醫囑播報語種,幫助理解和正確使用藥品,在一定程度上解決醫囑溝通障礙問題。
其數據流圖設計如圖2所示。
2.2 設計方案及解決
(1)二維碼掃描解碼及連接數據庫的實現:掃描時調用照相機,通過onPictureTaken函數二維碼圖片處理成位圖,對位圖進行譯碼,按照QRCODE二維碼生成方式解碼成字符型[14]。調用Android開放源碼庫文件google.zxing包,實現二維碼、條形碼的掃描解碼。通過手機客戶端的APP掃描該二維碼,根據解碼的信息調取數據庫存儲信息。Android連接Sql server 2005數據庫存取數據時,由于android不能直接連接Sql server 2005數據庫,本文通過Web service實現android與Sql server的數據交互。開放性是Web services的基礎,可以實現跨平臺使用。不同平臺和不同軟件的不同組織間傳遞信息,需要Web service的SOAP協議。SOAP可以運行在任何其他傳輸協議上,開放源碼庫ksoap2-android-assembly-3.1.0-jar-with-dependencies.jar,就是以此為基礎來實現android連接其他平臺數據庫并存取數據。
/*在工程AndroidManifest.xml文件中添加掃描所需權限,調用相機,捕獲二維碼/條形碼圖片,對應處理圖片后獲得醫囑id信息*/
// 通過web service獲取sql server數據庫數據
public void doStart(String methodName,HashMap
url="http://cocoa-0706.hicp.net:11566/Service1.asmx";
//服務器ip、端口號、web service文件
namespace="http://tempuri.org/";
this.methodName=methodName;
this.params=params;
progressDialog=ProgressDialog.show(context,
"提示","正在"+text+"waiting...",true);
this.start();
}
/*對應public void run()、private Object CallWebService() ,應用soap向web service 發送請求信息,及接收服務器傳輸到應用程序的數據*/
(2)默認語種的設置:采用菜單欄設置語種部分根據android特性,利用java代碼語言startActivityForResult方法實現設置完成后,回到原界面,除需要修改的數據外,其他數據保持原樣。默認語種的設置采用了android.content.SharedPreferences方法,sharedpreferences可以將數據保存在應用軟件的私有存儲區,這些存儲區的數據只能被寫入這些數據的軟件讀取。首次安裝并登錄軟件時,sharedpreferences并沒有保存數據,系統默認普通話;非首次登錄時,sharedpreferences是采用了xml格式將數據存儲到設備中,在ddms中的file explorer中的/data/data//shares_prefs下,使非首次登錄默認播報上一次設置的語種。
//數據存儲在本地文件
public SharedPreferences prefere;
SharedPreferences.Editor editor;
//創建編輯對象
editor=prefere.edit();
//編輯數據,將語種設置放入文件存儲
editor.putString("language",WebReturnValues.lang);
// 提交數據
editor.commit();//添加完后必須提交
//在語音播報界面,非首次登錄默認播報上一次設置的語種,否則默認中文
if (prefere.getString("language","")!=null){
WebReturnValues.lang=prefere.getString("language","");
findorder(handlerET,WebReturnValues.lang);
}
else {
WebReturnValues.lang="FindOrderCH";
findorder(handlerET,WebReturnValues.lang);
}
(3)播放語音:調用Android開放源碼庫文件訊飛語音Msc.jar包[15],實現聯網播放中文和英文,但是沒有海南話,需要通過自己設計音標數據庫,數據庫中存儲海南話的音標。音標標注法是解決問題的關鍵點。通過海南話音標標注,實現了中文、英文、海南話等多語種播音。
/*在工程AndroidManifest.xml文件中添加RECORD_AUDIO、ACCESS_NETWORK_STATE、ACCESS_WIFI_STATE、CHANGE_NETWORK_STATE、INTERNET權限 */
// 合成語音界面,調用SDK的SynthesizerDialog實現語音合成.
private void synthetizeInSilence(){
if (null==mSynthesizerPlayer){
//創建語音合成對象.
mSynthesizerPlayer=SynthesizerPlayer.createSynthesizerPlayer(
this,"appid="+getString(R.string.app_id));
}
/*此處省略設置發音人、語速、音量等設置*/
//獲取合成文本source
Editable editable=mSourceText.getText();
String source=null;
if (null!=editable){
source=editable.toString();
};
//進行語音合成.
mSynthesizerPlayer.playText(source,null,this);
mToast.setText(String
.format(getString(R.string.tts_toast_format),0,0));
mToast.show();
}
將查詢到的中文醫囑,通過音標數據庫轉換成海南話音標的表示符號,然后將這些音標的表示符號傳給客戶端,通過客戶端語音合成,讀出音標。
3 結論(Conclusion)
移動醫療提高了醫院的綜合運營效率,降低了醫療錯誤及醫療事故的發生率,從而提高了醫院的社會效益以及綜合競爭力。在“以人為本”的醫療模式[16]推動下,移動醫療是醫院信息化發展的必然趨勢,也是現代化醫院綜合實力的體現。項目能為醫患雙方提供便利,一定程度解決護士與老年患者、外籍患者在醫囑溝通方面障礙問題,實現正確傳達醫囑信息,改變醫院工作的現狀。本文設計并實現了多語種醫囑播報系統,并具有以下優點:
(1)數據交互精確、及時和高效,維護量小,故障率低。
(2)作為手機軟件,安裝簡便,攜帶方便。
(3)數據庫設計靈活,后期如果需要制作其他的方言語種,只需要存儲方言音標。
當然,音標標注法能實現部分方言的發音,同時也具有一定的局限性。口服藥醫囑格式固定,文字數量不多,可以用音標表示,但音調上會有些微差距,需要校準。并且由于當地方言,不同地理位置,發音也會有所不同。因此需要綜合考慮各方面因素,并進一步改進。
參考文獻(References)
[1] 王啟東,等.基于語信通的地震告警信息發布平臺的設計與實現[J].華北地震科學,2015,3303:64-67.
[2] 郭威彤,等.面向方言語音合成的文本分析研究[J].計算機工程,2015,41(5509):184-189.
[3] 王平,等.云終端語音交互中改進型譜減法語音增強算法[J].計算機集成制造系統,2013,19(18307):1721-1725.
[4] 姚金國,代智龍.基于HCSIPA的中英文混合語音合成[J].計算機工程,2013,39(4):14-17.
[5] Pan Nenghuang,Yu Mingshi,Tsai Z.A Chinese to Taiwanese Text-to-Speech System[J].Communications of Institute of Information and Computing Machinery,2008(4):27-38.
[6] 李曉紅.面向語音合成的文本處理技術的改進[D].北京:北京交通大學,2010.
[7] 李明,蔡蓮紅,李勇.普通話與聊城話的聲學特征對比及轉換[C]//第七屆中國語音學學術會議暨語音學前沿問題國際論壇論文集.北京:北京大學出版社,2006:1-4.
[8] Guo Weitong,Yang Hongwu,Pei Dong,et al.Prosody Conversion of Chinese Northwest Mandarin Dialect Based on Five Degree Tone Model[J].JDCTA:International Journal of Digital Content Technology and Its Applications,2012,6(17):323-332.
[9] 索南扎西.藏語語音合成關鍵技術研究[D].西藏:西藏大學,2011.
[10] 周開來.基于語音數據庫的文語轉換系統過程分析[J].計算機時代,2010(07):7-9.
[11] 李素梅.住院病人不遵醫囑行為及對策[J].中國中醫藥現代遠程教育,2012,10(24):97.
[12] 陳國友,錢玉鳳.醫院用藥錯誤原因分析及改進措施[J].中國藥物經濟學,2015,02:31-32.
[13] 北京大學.Android師資培訓課件-豆丁網[EB/OL].http://www.docin.com/p-386380286.html,2015.
[14] 高建清,謝學芳.基于QR碼的新生報到系統設計與實現[J].安陽工學院學報,2013,12(6606):66-68.
[15] 王亞平.基于Android的中文語音短信應用設計[D].內蒙古科技大學,2012.
[16] 陳昊.基于移動物聯網的區域協同心血管病急救模式研究[D].第三軍醫大學,2012.
作者簡介:
佘陳鳳(1993-),女,本科生.研究領域:醫學信息.
余遠波(1981-),男,碩士,副教授.研究領域:計算機應用.本文通訊作者.
陳靜嫻(1981-),女,碩士,講師.研究領域:計算機應用.
曹 友(1993-),男,本科生.研究領域:醫學信息.
陳澤游(1995-),男,本科生.研究領域:醫學信息.