Índice:

Comando Por Voz - DragonBoard410c: 5 etapas
Comando Por Voz - DragonBoard410c: 5 etapas

Vídeo: Comando Por Voz - DragonBoard410c: 5 etapas

Vídeo: Comando Por Voz - DragonBoard410c: 5 etapas
Vídeo: A Taste of Tal'Dorei | Critical Role | Campaign 3, Episode 25 2024, Novembro
Anonim
Comando Por Voz - DragonBoard410c
Comando Por Voz - DragonBoard410c

Este guia irá usar a instalação e configurar o programa Julius junto com o Coruja, que são respectivamente um programa de reconhecimento de voz e o modelo acústico em Português.

A vantagem da utilização do Julius é o funcionamento "offline", isto é, não utiliza os serviços através da Internet para realizar o reconhecimento de voz.

Após a instalação, e pequenos ajustes na biblioteca, o programa escrito em Python permitirá ligar e desligar um LED, por meio de comando de voz utilizando um microfone ligado à porta USB através de um adaptador. Foi usado o adaptador de sinal de áudio (conexão P2) para USB "7.1 Channel Sound".

Este exemplo pode ser expandido para usar como GPIOs da placa DragonBoard410c para comandar outros dispositivos.

Desenvolvido e escrito por João Vitor Magalhães Barros, aluno de iniciação científica da Faculdade de Tecnologia SENAI "Mariano Ferraz" no curso de Tecnologia em Automação Industrial. Abril de 2017.

Etapa 1: Instalar Julius

Instalar Julius
Instalar Julius

Todos os passos foram obtidos com o Linux 4.4.23 - linaro instalado no DragonBoard 410c da Qualcomm.

O programa em Python para teste foi obtido utilizando uma versão Python 2.7.2. 1º - Adicionar os repositórios brasileiros:

Abra o arquivo source.list usando o caminho / etc / apt / source.list

Referências ao início da lista de repositórios as seguintes linhas:

  • deb https://ftp.br.debian.org/debian/ squeeze main contrib non-free
  • deb-src https://ftp.br.debian.org/debian/ squeeze main contrib non-free deb
  • https://ftp.br.debian.org/debian/ squeeze-updates main contrib non-free deb-src
  • https://ftp.br.debian.org/debian/ squeeze-updates main contrib non-free

Então salve o arquivo.

2º - Atualizar o Linux e instalar bibliotecas necessárias

Abra o terminal e digite os seguintes comandos:

  • … $ Sudo apt-get install update
  • … $ Sudo apt-get install upgrade
  • … $ Sudo apt-get install build-essential zlib1g-dev flex
  • … $ Sudo apt-get install libasound2-dev libesd0-dev libsndfile1-dev
  • … $ Sudo apt-get install alsa-tools alsa-oss flex zlib1g-dev libc-binlibc-dev-bin python-pexpect libasound2 libasound2-dev cvs build-essential libesd0-dev libsndfile1-dev

3º - Baixar uma biblioteca de reconhecimento de voz Julius 4.3.1

Entre no site: https://julius.osdn.jp/en_index.php e baixe o arquivo compactado.

4º - Configurar opções de compilação pelas variáveis de ambiente:

Digite o seguinte comando sem terminal:

… $ Export CFLAGS = "- O2 -mcpu = arm1176jzf-s -mfpu = vfp -mfloatabi = hard -pipe -fomit-frame-pointer"

5º - Instalar o Julius

Extraia o arquivo baixado compactado do Julius, entre na pasta julius-4.3.1 pelo Terminal e digite:

  • … $ Sudo./configure aarch64-unknown-linux
  • … $ Sudo make clean
  • … $ Sudo make
  • … $ Sudo make install

Para testar a instalação foi feita com sucesso, utilize o comando:

… $ Julius - versão

Caso tenha sido bem sucedido, os dados técnicos irão aparecer no terminal

Etapa 2: Instalar O Coruja

1º - Baixe os modelos acústicos do Coruja pelo link:

coruja_jlapisapi1.5.rar

2º - Extraia o arquivo baixado na pasta do usuário (geralmente: / home / linaro).

Esses arquivos devem estar dentro da pasta extraída:

  • dic.temp
  • julius.jconf
  • LaPSAM1.5.am.bin
  • LaPSAM1.5.tiedlist
  • LaPSLM1.5.lm.bin

Etapa 3: Modificando O Coruja Para a Aplicação do Programa

1º - Entre na pasta "coruja_jlapsapi" e substitua o arquivo existente "julius.jconf" pelo anexo, nele há algumas modificações e ajustes para a execução do programa em tempo real, taxas de frequência, etc.

2º - Ainda na pasta "coruja_jlapsapi", substitua também o arquivo "dic.temp" pelo fornecido em anexo. O motivo dessa mudança é que especifica do ambiente e a captação do microfone, o Julius pode confundir palavras, então sempre é recomendado reduzir a biblioteca de palavras no coruja para palavras extra; as que serão utilizadas para a aplicação, e de preferência com vocábulos distintos.

3º - No Terminal novamente, acesse a pasta onde está localizado o arquivo "julius.jconf" e aguarde o dispositivo de áudio com o seguinte comando:

… $ Export ALSADEV = "plughw: 1, 0"

4º - Executar o Julius através do seguinte comando:

… $ Julius -input mic -C julius.jconf

Para sair da execução do programa, pressione Ctrl + C.

Passo 4: Configuração Das Saídas Digitais Da DragonBoard

Configuração Das Saídas Digitais Da DragonBoard
Configuração Das Saídas Digitais Da DragonBoard

1º - Instalação da biblioteca "libsoc"

Baixe a biblioteca "libsoc", dentro da sua pasta de usuário (geralmente: / home / linaro).

… $ Git clone

Caso nesse passo ou em qualquer outro, houver erro ao executar um clone de função git, escreva o comando abaixo e tente baixar novamente:

… $ Export GIT_SSL_NO_VERIFY = 1

Instale a biblioteca "libsoc" com os seguintes comandos:

  • … $ Cd libsoc
  • … $ Autoreconf -i

Caso haja erro ao executar uma função autoreconf -i, instale-o com o comando abaixo e tente novamente:

… $ Apt-get install dh-autoreconf

Prossiga com a instalação:

  • … $./Configure --enable-python2 --enable-board = dragonboard410c
  • … $ Make && sudo make install
  • … $ Sudo ldconfig / usr / local / lib

2º - Instalação da biblioteca "96boardsGPIO"

Baixe uma biblioteca "96boardsGPIO" de sua pasta de usuário (geralmente: / home / linaro).

… $ Git clone

Instale a biblioteca "96boardsGPIO" com os comandos abaixo:

  • … $ Cd 96BoardsGPIO
  • … $ Autoreconf -i
  • … $./Configure
  • … $ Make
  • … $ Sudo make install
  • … $ Sudo ldconfig / usr / local / lib

3º - Instalação da biblioteca "mraa"

Baixe a biblioteca "mraa" da sua pasta de usuário (geralmente: / home / linaro).

… $ Git clone

Instale a biblioteca "mraa" com os seguintes comandos:

  • … $ Mkdir -p mraa / build
  • … $ Cd mraa / build
  • … $ Cmake..

Caso haja erro ao executar uma função cmake.., instale-o com o seguinte comando e tente novamente:

… $ Apt-get install cmake

Prossiga com a instalação:

  • … $ Make
  • … $ Sudo make install
  • … $ Sudo ldconfig / usr / local / lib

4º - Após realizar os passos acima, reinicie o sistema:

… $ Sudo reboot

5º - Para testar se todas as instalações foram feitas com sucesso, execute o programa teste em python na pasta 96boards

  • … $ Cd 96BoardsGPIO / examples
  • … $ Sudo python blink.py

É importante lembrar que para testá-lo, deve-se conectar um LED entre a saída 23 (GPIO_A) da DragonBoard e o terminal GND da mesma (veja a figura acima).

Passo 5: Implementando O Programa de Reconhecimento de Voz Para Acionar O LED

Implementando O Programa De Reconhecimento De Voz Para Acionar O LED
Implementando O Programa De Reconhecimento De Voz Para Acionar O LED

1º - Além do LED já conectado ao terminal 23, conecte mais um LED entre a saída 25 (o terminal adjacente), e o outro GND (veja figura acima).

2º - Baixe o arquivo do programa em Python anexado e copie-o dentro da pasta "coruja_jlapsapi".

3 ° - Compilar e executar o programa baixado:

Abra o Terminal, entre na pasta:

… $ Cd coruja_jlapsapi

Compilar e executar o programa com o comando:

… $ Sudo python Reconhecimento.py

Alguns segundos após o programa iniciar, ele pedirá que fale o comando ao microfone.

4º - Para acender o LED 23, a palavra "liga" deve ser dita. O LED 25 confirmará que uma palavra foi recebida e compreendida como presente em seu dicionário. Caso queira apagar o LED 23, é necessário pronunciar ao microfone a palavra "apaga".

Vale relembrar que a taxa de compreensão depende tanto do microfone, da sensibilidade configurada a ele e a forma de pronúncia das palavras.

Caso queira adicionar palavras, para outros comandos, o documento anexado "dicionario.temp" possui como palavras e vocábulos do arquivo original do Coruja, então basta adiciona-las ao arquivo "dic.temp" dentro da pasta coruja_jlapsapi

Recomendado: