语音识别编码
256(30天)
显示旧的评论
答案(6)
米歇尔·赫希
2011年2月4日
是你的目标在MATLAB运行语音识别,还是真正了解如何实现算法?
如果你只是希望能够在MATLAB中使用语音识别,在Windows上运行,你可以很容易地将现有的Windows功能使用MATLAB接口。net。
函数rec = speechrecognition
%增加组装
NET.addAssembly (“System.Speech”);
%构建引擎
rec = System.Speech.Recognition.SpeechRecognitionEngine;
rec.SetInputToDefaultAudioDevice;
rec.LoadGrammar (System.Speech.Recognition.DictationGrammar);
%定义侦听器回调
addlistener (rec,“SpeechRecognized”,@recognizedFcn);
%开始识别
rec.RecognizeAsync (System.Speech.Recognition.RecognizeMode.Multiple);
%的回调
函数recognizedFcn (obj, e)
%得到文本
txt = char (e.Result.Text);
%分成词语
w = regexp (txt,' \ s ',“分裂”);
如果长度(w) > 1
%寻找“搜索”这个词的出现
idx =找到(strcmp (w (1: end-1),“搜索”)&…
比较字符串(w(2:结束),“对”),1“第一”);
如果~ isempty (idx) & &长度(w) > = idx + 2
%的单词后,搜索词
searchTerm = sprintf (“% s +”w {idx + 2:结束});
searchTerm(结束)=”;
%在网上搜索
网站([“http://www.google.com/search?q=”searchTerm]);
流(2“搜索" % s " \ n”strrep (searchTerm“+”,' '));
其他的
% disp (txt)
结束
elseif长度(w) = = 1 & & strcmpi (w {1},“停止”)
obj.RecognizeAsyncStop;
obj.delete;
% disp (txt);
disp (“停止语音识别。感谢您的使用!”);
其他的
% disp (txt);
结束
Neha Tonpe
2022年11月25日
编辑:沃尔特·罗伯森
2022年11月25日
函数rec = speechrecognition
%增加组装
NET.addAssembly (“System.Speech”);
%构建引擎
rec = System.Speech.Recognition.SpeechRecognitionEngine;
rec.SetInputToDefaultAudioDevice;
rec.LoadGrammar (System.Speech.Recognition.DictationGrammar);
%定义侦听器回调
addlistener (rec,“SpeechRecognized”,@recognizedFcn);
%开始识别
rec.RecognizeAsync (System.Speech.Recognition.RecognizeMode.Multiple);
%的回调
函数recognizedFcn (obj, e)
%得到文本
txt = char (e.Result.Text);
%分成词语
w = regexp (txt,' \ s ',“分裂”);
如果长度(w) > 1
%寻找“搜索”这个词的出现
idx =找到(strcmp (w (1: end-1),“搜索”)&…
比较字符串(w(2:结束),“对”),1“第一”);
如果~ isempty (idx) & &长度(w) > = idx + 2
%的单词后,搜索词
searchTerm = sprintf (“% s +”w {idx + 2:结束});
searchTerm(结束)=”;
%在网上搜索
网站([“http://www.google.com/search?q=”searchTerm]);
流(2“搜索" % s " \ n”strrep (searchTerm“+”,' '));
其他的
% disp (txt)
结束
elseif长度(w) = = 1 & & strcmpi (w {1},“停止”)
obj.RecognizeAsyncStop;
obj.delete;
% disp (txt);
disp (“停止语音识别。感谢您的使用!”);
其他的
% disp (txt);
结束
0评论
Lavuri
2022年12月26日
函数
rec = speechrecognition
%增加组装
NET.addAssembly (
“System.Speech”
);
%构建引擎
rec = System.Speech.Recognition.SpeechRecognitionEngine;
rec.SetInputToDefaultAudioDevice;
rec.LoadGrammar (System.Speech.Recognition.DictationGrammar);
%定义侦听器回调
addlistener (rec,
“SpeechRecognized”
,@recognizedFcn);
%开始识别
rec.RecognizeAsync (System.Speech.Recognition.RecognizeMode.Multiple);
%的回调
函数
recognizedFcn (obj, e)
%得到文本
txt = char (e.Result.Text);
%分成词语
w = regexp (txt,
' \ s '
,
“分裂”
);
如果
长度(w) > 1
%寻找“搜索”这个词的出现
idx =找到(strcmp (w (1: end-1),
“搜索”
)&
…
比较字符串(w(2:结束),
“对”
),1
“第一”
);
如果
~ isempty (idx) & &长度(w) > = idx + 2
%的单词后,搜索词
searchTerm = sprintf (
“% s +”
w {idx + 2:结束});
searchTerm(结束)=
”
;
%在网上搜索
网站([
“http://www.google.com/search?q=”
searchTerm]);
流(2
“搜索" % s " \ n”
strrep (searchTerm
“+”
,
' '
));
其他的
% disp (txt)
结束
elseif
长度(w) = = 1 & & strcmpi (w {1},
“停止”
)
obj.RecognizeAsyncStop;
obj.delete;
% disp (txt);
disp (
“停止语音识别。感谢您的使用!”
);
其他的
% disp (txt);
结束