确定好麦克风和喇叭可以使用。
下面的命令是用来录音的,用于测试
arecord temp.wav
播放录音文件
aplay -D hw:1,0 temp.wav
2. 安装一些需要的软件和库
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install vim git-core espeak python-dev python-pip --yes
sudo apt-get install bison libasound2-dev libportaudio-dev python-pyaudio --yes
vim 编辑器
espeak tts工具
bison 自动生成语法分析器程序
libasound2-dev libportaudio-dev python-pyaudio 声卡相关
python-dev python-pip python相关,还有利器pip
3. 安装Pocketsphinx
因为pocketsphinx
依赖于库Sphinxbase
,先安装Sphinxbase
下载sphinxbase
wget http://downloads.sourceforge.net/project/cmusphinx/sphinxbase/0.8/sphinxbase-0.8.tar.gz
解压sphinxbase
tar -zxvf sphinxbase-0.8.tar.gz
编译和安装sphinxbase
cd ~/sphinxbase-0.8/
./configure --enable-fixedmake
sudo make install
下载Pocketsphinx
wget http://downloads.sourceforge.net/project/cmusphinx/pocketsphinx/0.8/pocketsphinx-0.8.tar.gz
解压Pocketsphinx
tar -zxvf pocketsphinx-0.8.tar.gz
编译和安装Pocketsphinx
cd ~/pocketsphinx-0.8/
./configure
make
sudo make install
语言模型生成工具 cmuclmtk
编译所需要的工具
sudo apt-get install subversion autoconf libtool automake gfortran --yes
编译安装CMUCLMTK
svn co https://svn.code.sf.net/p/cmusphinx/code/trunk/cmuclmtk/
cd cmuclmtk/
sudo ./autogen.sh && sudo make && sudo make install
4. 在 ../pocketsphinx-0.8/src/programs/ 中,执行命令进行语音识别: pocketsphinx_continuous
(1) 通过自己建立的语料库,缩小识别范围。
例如:建立一个command.txt (要用utf-8格式),在网站 http://www.speech.cs.cmu.edu/tools/lmtool-new.html 用lmtool工具生成 需要的几个文件 。执行
pocketsphinx_continuous -lm xxxx.lm -dict xxxx.dic
(2) 识别中文,找到 tdt_sc_8k 文件夹,拷贝到当前文件夹,同上(1)操作的,得到了几个文件,打开其中的字典 xxxx.dic,因为该工具不支持中文,所以打开文件 发现每个词的后面没有拼音,找到这些词语的拼音 并在该文件中补充好,保存退出。(注意,此处拼音不完全等于平常使用的拼音)。
pocketsphinx_continuous -hmm tdt_sc_8k -lm xxxx.lm -dict xxxx.dic
注:语音识别需要
声学模型:tdt_sc_8k
语言模型:xxxx.lm
字典文件:xxxx.dic