自然语言交流系统 phxnet团队 创新实训 个人博客 (五)
? ?
有關我們這個項目:智能自然語言交流系統,所借鑒的技術有:
???????? 第一:我們使用了科大訊飛的在線語音轉換,涉及的有文本傳給云端服務器的文字轉換成語音和本地的語音上傳給服務器轉換成文字。
???????? 涉及的相關的代碼有:
???????? private void showReconigizerDialog() {
?????? //setEngine(String engine,String params,String grammar);
?????? /**
?????? ?* 識別引擎選擇,目前支持以下五種
?????????? “sms”:普通文本轉寫
?????????? “poi”:地名搜索
?????????? “vsearch”:熱詞搜索
?????????? “vsearch”:熱詞搜索
?????????? “video”:視頻音樂搜索
?????????? “asr”:命令詞識別
??????????
?????????? params 引擎參數配置列表
?????????? 附加參數列表,每項中間以逗號分隔,如在地圖搜索時可指定搜索區域:“area=安徽省合肥市”,無附加參數傳null
?????? ?*/
?????? rd.setEngine("sms", null, null);
??????
?????? //設置采樣頻率,默認是16k,android手機一般只支持8k、16k.為了更好的識別,直接弄成16k即可。
?????? rd.setSampleRate(RATE.rate16k);
??????
?????? final StringBuilder sb = new StringBuilder();
?????? Log.i(TAG, "識別準備開始.............");
??????
?????? //設置識別后的回調結果
?????? rd.setListener(new RecognizerDialogListener() {
?????????? @Override
?????????? public void onResults(ArrayList<RecognizerResult> result, boolean isLast) {
????????????? for (RecognizerResult recognizerResult : result) {
????????????????? sb.append(recognizerResult.text);
????????????????? Log.i(TAG, "識別一條結果為::"+recognizerResult.text);
????????????? }
?????????? }
?????????? @Override
?????????? public void onEnd(SpeechError error) {
????????????? Log.i(TAG, "識別完成.............");
????????????? txt_result.setText(sb.toString());
????????????? Log.i(TAG, "識別完成:"+txt_result.getText().toString());
?
?????????? }
?????? });
??????
?????? txt_result.setText(""); //先設置為空,等識別完成后設置內容
?????? rd.show();
??????
??? }
?
}
??? 借鑒使用了科大訊飛的語音包,使用了科大訊飛的在線語音轉換。
總結
以上是生活随笔為你收集整理的自然语言交流系统 phxnet团队 创新实训 个人博客 (五)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 上传文件按钮美化,上传文件前后状态控制
- 下一篇: [New Portal]Windows