我在Matlab中記錄了我的聲音。現在我想將該音頻轉換爲字符串i-e;在Matlab中編寫句子。有沒有辦法將音頻轉換爲文本。tlab音頻轉換
Q
tlab音頻轉換
0
A
回答
0
我很確定MATLAB沒有原生的語音到文本功能。
一個快速的Google搜索引發了至少一個將語音到文本整合到MATLAB中的項目。
http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html
可以轉化記錄的語音轉化成文字其他一些軟件是微軟的SAPI(內置於Windows Vista和Windows 7,並提供下載的Windows XP),並CMU's Sphinx項目。 Nuance Dragon Naturally Speaking是一種選擇,但價格相對昂貴。但我不清楚這些如何可以集成到MATLAB中。
0
您可以使用Builtin Windows Speech API實現稍微限制里程數。這取決於你的操作系統等等,你需要從API文檔遵循相似的原則: http://msdn.microsoft.com/en-us/library/ms723627(v=vs.85).aspx
使用MATLAB的ActiveX服務器( http://www.mathworks.co.uk/help/matlab/ref/actxserver.html)
您需要首先聲明一個語音識別引擎
RC = actxserver('SAPI.SpSharedRecoContext'); %connect to speech engine
然後設置各種回調函數的識別器的每個狀態:
RC.registerevent({'Recognition' @CallbackFunction; 'Hypothesis' @CallbackFunction; 'FalseRecognition' @CallbackFunction})
項
回調函數的內容應該是沿着這些線路:
function word = CallbackFunction(varargin)
global word
result = varargin{length(varargin)-2};
word = result.Phraseinfo.GetText;
end
後來終於接通識別器:
RC.Recognizer.State = 'SRSActive';
您將需要引用的機器回調函數被調用的文件和什麼時候。
您還需要設置語法詞典才能獲得有意義的結果。因爲引擎會試圖識別任何詞。
相關問題
- 1. 轉換音頻流頻率
- 2. 音頻轉換C#
- 3. FFmpeg音頻轉換
- 4. 與音頻轉換
- 5. Java轉換音頻格式
- 6. 原始音頻轉換
- 7. ffmpeg轉換跳過音頻
- 8. 音頻格式轉換
- 9. AS3 audiioencoder轉換爲音頻
- 10. 使用Xuggler轉換音頻
- 11. 音頻文件轉換
- 12. Maven Build - SoX /音頻轉換
- 13. 音頻文件的語音轉換器
- 14. 將音頻和視頻轉換爲NSData
- 15. 將WMA音頻文件轉換爲MP3音頻文件
- 16. 將二進制音頻文本轉換爲音頻文件
- 17. 轉換音頻立體聲爲音頻字節
- 18. 將wav音頻文件轉換爲DSS音頻格式
- 19. 音頻轉碼
- 20. Windows Phone 8.1音頻格式轉換
- 21. 轉換的NSData迴音頻文件
- 22. ffmpeg轉換 - 保持音頻比特率
- 23. C++音頻轉換(mp3 - > ogg)
- 24. 將頻率轉換爲鍵盤音符
- 25. 轉換avi到mp4:音頻不同步
- 26. 將原始音頻轉換爲mp3/ogg
- 27. 基於Microsoft Azure的音頻轉換?
- 28. CAF文件的音頻轉換
- 29. 開源音頻轉換器到mp3
- 30. 從AVMutableComposition到AVAudioPlayer的iOS音頻轉換
這是一個非常棘手的問題 - 即使是最先進的算法也無法做到這一點。 SO不是這個地方。 – 2012-03-13 17:34:48