- 相關推薦
飛機艙音背景聲特征實時分析系統開發及應用
摘要:對飛機機栽駕駛艙話音記錄器記錄的非人聲艙音信號分析,已從利用計算機音頻處理的記錄器譯碼系統進行辨聽發展到基于小波變換理論、線性調頻z變換等方法的分析,但這些都是離線分析。為避免離線分析缺點,提出了艙音背景聲特征實時分析系統開發的新思路及實現流程;然后基于Matlab與VC++混合編程原理,在VC++環境下調用工具箱函數及自編m函數;最后以典型艙音背景聲為例。實現在專用音頻軟件Adobe Audilioll界面下的實時分析,提供了高效、方便的艙音背景聲頻譜特征提取途徑。
關鍵詞:計算機;飛機;艙音背景聲;聲譜分析;Vc++語言
飛機機載駕駛艙話音記錄器?(cockpit Voice Recorder,cVR)是航空器事故淵查的關鍵證據之一,它不僅能夠判斷機組的操縱、意識、決斷、生理心理狀態.還可以分析航空器狀態及所處環境。對事故調查員而言,駕駛艙中的非人聲成分是重要的信息來源。這些非人艙音信息包括:各種開關提示聲、報警聲、發動機噪音、起落架操縱手柄的使用音響等。對飛機機載駕駛艙話音記錄器記錄的非人聲艙音信號的分析,已從基于傅立葉變換分析方法、短時傅立葉變換(sTFr)的計算機音頻處理的記錄器譯碼系統辨聽分析f:習發展到基于小波變換理論、線性調頻z變換等方法的分析嗍,并分別在Adobe AudiIion環境和Wavelet 1鈿lbox下完成對這些非人的艙音背景聲分析,但這些都是離線分析。為避免離線分析帶來的缺點,基于MatIab與VC++混合編程原理16J,通過利用MalhTools公司的Matcom,在vC++環境下調用工具箱函數及自編m函數。以給定的超音速警告聲這種典型艙音背景聲為例,實現在專用音頻分析軟件Adobe Audilion界面下實時分析,為提取艙音背景聲的頻潛特征提供了方便。
l、問題的提出
MATLAB作為—個強大數學分析應用工具、簡潔而豐富的函數資源,為用戶提供很多現代信號處理1=具包,同時也給用戶帶來最直觀的開發環境,但在執行效率和程序編寫方面存在一些局限,使得采用該語言編制的應用程序不能直接為音頻分析軟件Adobe Audition所利用。visual c++是Micms硪公司推出的可視化編程語言,是目前最強大的綜合性軟件開發工具之一,如把MATLAB與Visual c++很好地結合起來,將大大提高編程丁作的效率,既可利用Vc實現實時動態的、交互式的、高效率的用戶界面,又可充分利用MAⅡAB強大的信號分析功能和圖形處理功能,將使原系統軟件部分更加完善,達到功能模塊化、軟件智能化、接口開放化的目的。因此,基于混合編程思想開發出一種具有多種信號分析功能又能適應嵌入到Adobe Audition音頻分析軟件的信號分析軟件,對于實現實時音頻特征分析具有重要的應用價值。
2、實時分析系統的開發
3、實時分析系統程序編制及其應用舉例
利用小波工具箱中的文件町以實現信號的變換、濾波、譜估計、濾波器沒計等。如果能在其他的環境,如Vc++下調用MArrLAB工具箱中的文件,不僅提高算法速度,而且計算的可靠性提高。本文基于Matlab與vc++混合編程原理,通過利用Matcom特點,在vc++環境下淵用工具箱函數及自編m函數。飛機駕駛艙中超音速警告聲這種典型艙音背景聲為例,說明利用Matcom實現Matlab和vc++混合編程、及在Adobe Audition界面下實時分析方法選擇過程。
3.1 幾種混合編程方法的比較
混合編程有幾種結合方法。方法1:在Matlab下編寫.m文件,后通過Matlab自身的編澤連接器把皿文件轉換成c++代碼,并嵌入到Vc++程序中。方法2:通過客戶,月匠務器方式,在Vc++中使用Matlab服務引擎,通過引擎調用Matlab中的函數。方法3:在vc++中包含Matlab中的數學函數庫,使用數學函數庫中的特定函數。方法4:利用Matcom實現Matlab與Visual c++混合編程。其中方法l、2都不能脫離Matlab環境,方法3則需要用liMef命令導出lib.1ib、1ibeng.1ib以及libmcc.ib等靜態連接文件,且這三種方法都不能有效地提高程序的執行效率。方法4可將Madab的源代碼譯成同等功能的c++源代碼,既保持了Matlab的優良算法,又保持了c++的高執行效率。本文采用了方法4。
3.2 Matcom的功能說明
(1)利用Matcom生成獨立執行的exe文件。在MATLAB中雖可以由M文件生成執行程序,但是它無法脫離MATLAB環境的支持,利用Matcom則可以生成不需要MAlLAB環境支持的exe文件。運行Matcom,打開所需要編譯的M文件,在file菜單下有compile to exe,Matcom便自動完成exe文件的編澤與連接。編譯完成以后,可以在matcom45、debug目錄下找到與M文件同名的exe文件。
(2)利用Matcom生成動態鏈接庫(DLL)文件。這項功能針對Vc開發,生成的方式如同exe文件生成的方式。生成DLL文件的同時也生成cPP文件,但是DLL文件使用不方便。這里直接使用CPP文件,該cPP文件同樣在眥teom45、debug目錄下。
3.3 Matcom的功能說明
(1)利用Matcom生成獨立執行的exe文件。在MATLAB中雖可以由M文件生成執行程序,但是它無法脫離MATLAB環境的支持,利用Matc砌則可以生成不需要MA下LAB環境支持的exe文件。運行Matcom,打開所需要編澤的M文件,在flle菜單下有compile to exe,Matcom便自動完成exe文件的編譯與連接。編譯完成以后,可以在matc145\debug目錄下找到與M文件同名的exe文件。
(2)利用Matcom生成動態鏈接庫(DLL)文件。這項功能針對Vc開發,生成的方式如同exe文件生成的方式。生成DLL文件的同時也生成cPP文件,但是DLL文件使用不方便。這里直接使用cPP文件,該cPP文件同樣在mateom45、debug目錄下。
3.4 在MATLAB環境下編寫.m功能函數
該函數利用z變換是實現對超音速警告聲頻譜的細化分析。
3.5 VC++環境F對功能甬數的調用
在菜單中,選擇pmject,add t0 pmjec堋les,將上述zz.cpp和zz.h加入工程中,并且將相應的文件加入std也.h中,并添加鏈接庫文件:在1如l扎ption、directory中選include,加入e:、lnatcom45.1jb(包含呦tc呦.h),選lib咖y選項,加入e:、IIlat—corn45.1ib。
4、結淪
首先提出了艙音背景聲特征實時分析系統開發思路及實現流程。然后在比較幾種混合編程方法基礎上,基于Madab與Vc++混合編程原理及利用Matcom代碼轉換方便、生成的代碼可讀性好、支持圖形函數、代碼執行的速度比不轉換平均提高1.5倍以上等優勢,在vc++環境下調用工具箱函數及自編m函數等程序編制,實現實時分析系統開發。最后以典型艙音背景聲為例,實現在專用音頻軟件Adobe Audition界面下的實時分析,提供高效、方便的艙音背景聲頻譜特征提取的途徑。
參考文獻:
【l】Cash J R.Gmup chai ron of investigali and spectmm study 0f cockpit Voi.Airlines F1jght 587。DCA02MA001.200l:53—58.
【2】楊琳.艙音記錄器和實驗室處理方法【J】.中國民用航空,2003(12):21—22.
【3】舒平,鐘民主,楊琳.艙音記錄器譯碼系統的改進【M】.北京:航空工業出版社,2004.
【4】胡廣書.數字信號變換一理論、算法和實現【M】.2版.北京:清華大學出版社,2003.
【5】飛思科技產品研發中心.MAⅡAB6.5輔助小波分析與應用fM塒匕京:電子工業出版社,2003:37-49.
【6】袁勇,吳祿慎.實現Manab與V“+混合編程的有效途徑陰.飛機設計,2003,3(1):69—71.
【飛機艙音背景聲特征實時分析系統開發及應用】相關文章:
傣族舞蹈的基本特征分析02-24
分析英漢被動句的語用特征及翻譯策略04-27
新媒體漫畫的傳播特征與展望分析論文03-10
本量利分析在制造企業中的應用論文04-22
大數據背景下的計算機信息安全問題進行闡述與分析論文01-26
蒙古舞蹈的民族特征及其藝術特征02-22