導航:首頁 > 編程知識 > 如何編程語音識別技術

如何編程語音識別技術

發布時間:2022-09-17 19:00:09

1. 語音識別系統都是用什麼編程語音編寫的

用matlab就行,matlab信號處理非常方便,既有一些模塊,又有一些命令,還可以將數字語音信號轉換到頻域進行處理。
建議找一些matlab的參考書看一下!

2. 怎樣用java做語音識別

這塊國內一般都用科大訊飛的語音雲來做語音識別。不過那個介面是c/c++的,用JAVA來調用的話要通過java調用dll的技術,類似於 jni 或者 jna 都可以

3. 如何在android平台上實現語音識別

語音識別,藉助於雲端技術可以識別用戶的語音輸入,包括語音控制等技術,下面我們將利用Google 提供的Api 實現這一功能。
功能點為:通過用戶語音將用戶輸入的語音識別出來,並列印在列表上。
功能界面如下:

步驟閱讀
2
用戶通過點擊speak按鈕顯示界面:
步驟閱讀
3
用戶說完話後,將提交到雲端搜索
步驟閱讀
4
在雲端搜索完成後,返回列印數據:
步驟閱讀

5
* Copyright (C) 2008 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package com.example.android.apis.app;

import com.example.android.apis.R;

import android.app.Activity;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.os.Bundle;
import android.speech.RecognizerIntent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;

import java.util.ArrayList;
import java.util.List;

/**
* Sample code that invokes the speech recognition intent API.
*/
public class VoiceRecognition extends Activity implements OnClickListener {

private static final int VOICE_RECOGNITION_REQUEST_CODE = 1234;

private ListView mList;

/**
* Called with the activity is first created.
*/
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

// Inflate our UI from its XML layout description.
setContentView(R.layout.voice_recognition);

// Get display items for later interaction
Button speakButton = (Button) findViewById(R.id.btn_speak);

mList = (ListView) findViewById(R.id.list);

// Check to see if a recognition activity is present
PackageManager pm = getPackageManager();
List activities = pm.queryIntentActivities(
new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH), 0);
if (activities.size() != 0) {
speakButton.setOnClickListener(this);
} else {
speakButton.setEnabled(false);
speakButton.setText("Recognizer not present");
}
}

/**
* Handle the click on the start recognition button.
*/
public void onClick(View v) {
if (v.getId() == R.id.btn_speak) {
startVoiceRecognitionActivity();
}
}

/**
* Fire an intent to start the speech recognition activity.
*/
private void startVoiceRecognitionActivity() {
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Speech recognition demo");
startActivityForResult(intent, VOICE_RECOGNITION_REQUEST_CODE);
}

/**
* Handle the results from the recognition activity.
*/
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == VOICE_RECOGNITION_REQUEST_CODE && resultCode == RESULT_OK) {
// Fill the list view with the strings the recognizer thought it could have heard
ArrayList matches = data.getStringArrayListExtra(
RecognizerIntent.EXTRA_RESULTS);
mList.setAdapter(new ArrayAdapter(this, android.R.layout.simple_list_item_1,
matches));
}

super.onActivityResult(requestCode, resultCode, data);
}

4. C++如何使用NeoSpeech開發語音識別系統

1:語音採集系統,可通過對PC的音效卡進行編程實現
2,選擇合適的語音識別演算法,關鍵是語音參數提取,模式識別等,比較復雜(可參閱數字信號處理)
在PC平台下,用c++和vc++可以搞定
再看看別人怎麼說的。

5. 用51單片機,實現語音識別,簡單的數字,或者單個字詞都行,需要什麼樣的硬體,電路圖,如何編程。

可以用語音識別晶元LD3320,電路圖你只要下了它的pdf就可以知道了,pdf裡面有典型的應用。
但我推薦你別用這個晶元,應為比較貴在100元左右。我推薦你用凌陽61單片機,自帶語音識別模塊,專為語音而生。而且官方提供很多函數,可以直接調用,並不需自己寫程序去控制聲音的中間處理過程。另外凌陽單片機比較容易學習,比51還容易,而且是16位單片機,相比51更有優勢。

6. C++如何使用NeoSpeech開發語音識別系統

我的畢業設計就是一個語音識別和合成系統,你可以在我空間留言,我可以發一些資料給你。(qq:11461017註明語音識別)
我用C#開發的,當然用C++最好,使用COM組件開發,難度不大。
微軟下的開發主要用SAPI,XP是5.1版本 WIN7已經到5.4版本了
其實就是調用一個系統COM組件的問題,裡面的API很多,但是網上語音合成的比較多,語音識別的很少,你可以到codeproject上搜speech recognition,裡面源碼很多。
另外NeoSpeech只是語音合成引擎,並不能開發語音識別。
語音識別用微軟的就行了,xp系統要下載語音識別的安裝包,visita以上是系統集成,只要你的系統不是精簡過的就有。

PS:開發語音程序你也可以考慮用科大訊飛的產品,不過要聯網,他們的開發API介面,有專門的論壇,科大語音雲,不管是合成還是識別,效果都是相當的好,是基於C++的

7. 求語音識別的源代碼,要求是用C#或C語言編寫,能夠識別一些基本的漢語發音

首先你要引用 DotNetSpeech
然後
創建SpeechRecognitionEngine 對象
下面的代碼可以讓系統獲取語音並且識別

SRE = new SpeechRecognitionEngine(new System.Globalization.CultureInfo("zh-CN"));//中文
SRE.LoadGrammar(new DictationGrammar());//所有語言
SRE.SpeechRecognized += new EventHandler<SpeechRecognizedEventArgs>(SRE_SpeechRecognized);//系統接受後的事件
SRE.SetInputToDefaultAudioDevice();//設置默認輸入設備

微軟MSDN裡面有詳細的介紹,望採納。

8. 如何編程提高語音識別的准確率

語音識別率跟演算法有關,不是說想提高就提高的,如果那麼容易提高現在語音識別的應用就會很廣泛使用,可實際不是這樣。

9. 樹莓派怎麼調用科大訊飛的語音庫實現語音識別

語音識別開發平台有很多,具體總結如下:(更詳細的介紹參見本人的博文:幾個常見的語音交互平台的簡介和比較)

1.商業化的語音交互平台
1)微軟Speech API

微軟的Speech API(簡稱為SAPI)是微軟推出的包含語音識別(SR)和語音合成(SS)引擎的應用編程介面(API),在Windows下應用 廣泛。目前,微軟已發布了多個SAPI版本(最新的是SAPI 5.4版),這些版本要麼作為於Speech SDK開發包發布,要麼直接被包含在windows 操作系統中發布。SAPI支持多種語言的識別和朗讀,包括英文、中文、日文等。

2).IBM viaVoice
IBM是較早開始語音識別方面的研究的機構之一,早在20世紀50年代末期,IBM就開始了語音識別的研究,計算機被設計用來檢測特定的語言 模式並得出聲音和它對應的文字之間的統計相關性。1999年,IBM發布了VoiceType的一個免費版。2003年,IBM授權ScanSoft公司擁有基於ViaVoice的桌面產品的全球獨家經銷權,隨後ScanSoft與Nuance合並,如今viaVoice早已淡出人們的視線,取而代之的是Nuance。
3)Nuance

Nuance通訊是一家跨國計算機軟體技術公司,總部設在美國馬薩諸塞州伯靈頓,主要提供語音和圖像方面的解決方案和應用。目前的業務集中 在伺服器和嵌入式語音識別,電話轉向系統,自動電話目錄服務等。Nuance語音技術除了語音識別技術外,還包擴語音合成、聲紋識別等技術。世界語音技術市場,有超過80%的語音識別是採用Nuance識別引擎技術, 其名下有超過1000個專利技術,公司研發的語音產品可以支持超過50種語言,在全球擁有超過20億用戶。蘋果的iPhone 4S的Siri語音識別中就應用了Nuance的語音識別服務。

4)科大訊飛

科大訊飛作為中國最大的智能語音技術提供商,在智能語音技術領域有著長期的研究積累,並在中文語音合成、語音識別、口語評測等多項 技術上擁有國際領先的成果。佔有中文語音技術市場60%以上市場份額,語音合成產品市場份額達到70%以上。

5)其他

其他的影響力較大商用語音交互平台有谷歌的語音搜索(Google Voice Search),網路和搜狗的語音輸入法等等。

2.開源的語音交互平台

1)CMU-Sphinx

CMU-Sphinx也簡稱為Sphinx(獅身人面像),是卡內基 - 梅隆大學( Carnegie Mellon University,CMU)開發的一款開源的語音識別系統, 它包括一系列的語音識別器和聲學模型訓練工具。最早的Sphinx-I 由@李開復 (Kai-Fu Lee)於1987年左右開發,使用了固定的HMM模型(含3個大小為256的codebook),它被號稱為第一個高性能的連續語音識別 系統(在Resource Management資料庫上准確率達到了90%+)。 最新的Sphinx語音識別系統包含如下軟體包:
? Pocketsphinx — recognizer library written in C.
? Sphinxbase — support library required by Pocketsphinx
? Sphinx4 — adjustable, modifiable recognizer written in Java
? CMUclmtk — language model tools
? Sphinxtrain — acoustic model training tools
這些軟體包的可執行文件和源代碼在sourceforge上都可以免費下載得到。

2)HTK
HTK是Hidden Markov Model Toolkit(隱馬爾科夫模型工具包)的簡稱,HTK主要用於語音識別研究,最初是由劍橋大學工程學院(Cambridge University Engineering Department ,CUED)的機器智能實驗室(前語音視覺及機器人組) 於1989年開發的,它被用來構建CUED的大詞彙量的語音識別系統。HTK的最新版本是09年發布的3.4.1版,關於HTK的實現原理和各個工具的使用方法可以參看HTK的文檔HTKBook。
3)Julius
Julius是一個高性能、雙通道的大詞彙量連續語音識別(large vocabulary continues speech recognition,LVCSR)的開源項目, 適合於廣大的研究人員和開發人員。它使用3-gram及上下文相關的HMM,在當前的PC機上能夠實現實時的語音識別,單詞量達到60k個。
4)RWTH ASR
該工具箱包含最新的自動語音識別技術的演算法實現,它由 RWTH Aachen 大學的Human Language Technology and Pattern Recognition Group 開發。RWTH ASR工具箱包括聲學模型的構建、解析器等重要部分,還包括說話人自適應組件、說話人自適應訓練組件、非監督訓練組件、個性化 訓練和單詞詞根處理組件等。
5)其他
上面提到的開源工具箱主要都是用於語音識別的,其他的開源語音識別項目還有Kaldi 、simon 、iATROS-speech 、SHoUT 、 Zanzibar OpenIVR 等。

閱讀全文

與如何編程語音識別技術相關的資料

熱點內容
mp4視頻文件解密軟體 瀏覽:62
多軸編程哪個軟體最方便 瀏覽:27
老平板哪個是顯示屏數據線插座 瀏覽:849
5sing上傳音頻文件格式 瀏覽:171
win10輸入文件滑鼠右鍵異常 瀏覽:634
聽幼兒故事用什麼app 瀏覽:514
iphone修改音頻文件名 瀏覽:53
國家氣象站點數據在哪裡下載 瀏覽:342
網路設置的網站 瀏覽:914
手機測量放樣怎麼導數據和線型 瀏覽:648
企業展示型網站源碼 瀏覽:781
易花花app哪裡下載 瀏覽:323
外國程序員職業生涯長 瀏覽:709
看理想app怎麼注銷賬號 瀏覽:545
數控銑床加工手工編程的步驟有哪些 瀏覽:411
uc瀏覽器為什麼很多網站進不了 瀏覽:513
西部數據移動硬碟怎麼 瀏覽:645
批處理修改子目錄文件名命令 瀏覽:405
文件損壞怎麼刪除 瀏覽:977
代碼百度地圖web服務api 瀏覽:523

友情鏈接