我在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. 與音頻轉換
- 3. 音頻轉換C#
- 4. 音頻文件轉換
- 5. ffmpeg轉換跳過音頻
- 6. 原始音頻轉換
- 7. 音頻文件的語音轉換器
- 8. 將音頻和視頻轉換爲NSData
- 9. 將wav音頻文件轉換爲DSS音頻格式
- 10. 轉換音頻立體聲爲音頻字節
- 11. 將音頻轉換爲文本
- 12. 轉換的NSData迴音頻文件
- 13. 如何將音頻轉換爲信號
- 14. iOS - 轉換音頻格式(opus to mp3)
- 15. 將音頻流轉換爲PCM
- 16. 音頻轉換器如何工作?
- 17. 轉換或導出音頻文件
- 18. 將spx音頻文件轉換爲mp3
- 19. ffmpeg音頻轉換不起作用
- 20. 將原始音頻轉換爲mp3/ogg
- 21. 將音頻文件轉換爲mp3
- 22. 將chrome.tabcapture.capture轉換爲音頻文件?
- 23. 將頻率轉換爲鍵盤音符
- 24. 將音頻加倍轉換爲字節
- 25. 在iPhone中使用FFMPEG音頻轉換
- 26. 在nodejs中使用sox轉換音頻
- 27. ffmpeg音頻轉換失真 - 半速率
- 28. Naudio - 將音頻流轉換爲值[-1,1]
- 29. 開源音頻轉換器到mp3
- 30. 音頻轉換爲文本編程
這是一個非常棘手的問題 - 即使是最先進的算法也無法做到這一點。 SO不是這個地方。 – 2012-03-13 17:34:48