用CNN识别出物体后,需要用文字转语音工具把识别结果读出来。文字转语音的工具有很多,比如festival、espeak等。
Ubuntu 14.04安装festival
sudo apt-get install festival
Ubuntu 14.04安装espeak
sudo apt-get install espeak
espeak -ven+f3 -k5 -s150 "hello world"
尝试之后,个人觉得pico2wave效果更好些,所以最终采用pico2wave。
Ubuntu 14.04安装pico2wave
sudo apt-get install libttspico-utils
安装后创建脚本文件tts_reader.sh。
#!/bin/bashpico2wave -l=de-DE -w=/tmp/test.wav "$1"aplay /tmp/test.wavrm /tmp/test.wav
使用它读取文本内容。
tts_reader.sh "hello world"
或者读取整个文件的内容:
tts_reader.sh "$(cat)"
音频测试内容:hello,welcome to my home
当然离线模块的效果整体不如在线效果,也只是勉强可用,如果要达到比较好的效果,可以采用百度、科大讯飞等的在线文字转语音服务。
閱讀更多 半杯茶的小酒杯 的文章