Skip to content

Programació amb pocketsphinx

Col·lectivaT edited this page Nov 22, 2018 · 4 revisions

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.

Instal·lació 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.


Debian based Linux

sudo apt-get install python3, python-pip
sudo pip3 install --upgrade pip
sudo pip3 install virtualenv

Mac OSX

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.

PocketSphinx en Python

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.


Debian based Linux

sudo apt-get install swig
sudo apt-get install libpulse-dev

Mac OS

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.

Exemples

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.