-
Notifications
You must be signed in to change notification settings - Fork 6
Programació amb pocketsphinx
Per accedir a les funcions completes del toolkit pocketsphinx
hem de poder accedir a les seves funcions internes, és a dir, hem de programar. Hi ha diversos contenidors per pocketsphinx
, en aquests exemples utilitzarem el de python.
Assegurem-nos de que tenim una versió recent del python. A més, per instal·lar biblioteques de python voldrem tenir pip, i també treballarem amb entorns virtuals, a través de virtualenv
. D'aquesta manera mantenim net el nostre entorn local i treballem en entorns aïllats per a cada projecte python.
sudo apt-get install python3, python-pip
sudo pip3 install --upgrade pip
sudo pip3 install virtualenv
brew install pip3
pip3 install virtualenv
Ara comprovem que tot funcioni com s'esperava:
virtualenv --python=python3 venv
source venv/bin/activate
Per sortir de l'entorn virtual escriviu deactivate
.
Suposant que ja tenim pocketsphinx
instal·lat, ara volem instal·lar el contenidor de python. Per això primer hem d'instal·lar un parell de coses més.
sudo apt-get install swig
sudo apt-get install libpulse-dev
brew install swig
swig
és l'eina de contenidor principal que connecta el codi de pocketshinx
programat en C amb els seus contenidors en python. Per fi, estem preparats per instal·lar pocketsphinx
per python. Primer activeu l'entorn virtual mitjançant source venv/bin/activate
i després:
pip install pocketsphinx
Podeu comprovar la vostra instal·lació al shell, escrivint
python -c "import pocketsphinx"
Si no heu rebut el missatge d'error ImportError: No module named 'pocketsphinx'
la instal·lació s'ha realitzat amb èxit.
Ara podem executar el script test_ps_tasks.py
que inclou diverses tasques. Encara que la majoria d'ells són executables des del terminal, ara tenim accés a més informació, com ara el temps d'inici i final de les paraules, i la precisió.
scripts python/test_ps_tasks.py
Ara obriu el script amb el vostre editor de text favorit i comenceu a canviar els fitxers, les paraules clau que voleu buscar i els models d'idiomes. Podeu fer-ho modificant el contingut del diccionari de configuració i executant el mètode corresponent.