Motor de reconhecimento de voz. Sistemas automáticos de reconhecimento de voz

Como costumava ser bom! Ao ligar para o help desk, era possível conversar com a atendente e até marcar um horário com ela. Agora, do outro lado do fio, ouve-se uma voz feminina agradável, mas inanimada, oferecendo-se para discar 1 para receber tal ou qual informação, 2 - para se comunicar com isso, 3 - para sair do menu etc. Cada vez mais, o acesso à informação é controlado pelo sistema, não pelo indivíduo. Isso tem sua própria lógica: o trabalho monótono e desinteressante não é feito por uma pessoa, mas por uma máquina. E para o usuário, o procedimento para obter informações é simplificado: ele ligou para um determinado conjunto de números - ele recebeu as informações necessárias.

Como funciona tal sistema? Vamos tentar descobrir.

Os dois principais tipos de programas de reconhecimento de voz são:

Programas para ditado inserem texto e dados digitais.

Vamos fazer uma ressalva desde já que não vamos considerar os sistemas Text-to-speech e speech-to-text, ou seja, traduzir texto em fala oral e vice-versa. Vamos nos limitar a sistemas de reconhecimento automático de comandos, ou navegadores de voz.

SAR o que é?

O Reconhecimento Automático de Fala (CAPP) é um elemento do processo de processamento de fala, cujo objetivo é fornecer um diálogo conveniente entre o usuário e a máquina. Em sentido amplo, estamos falando de sistemas que realizam a decodificação fonêmica de um sinal acústico de fala ao pronunciar mensagens de fala em estilo livre, um falante arbitrário, sem levar em consideração a orientação do problema e as restrições de volume do dicionário. Em sentido estrito, os CAPPs facilitam a solução de problemas particulares, impondo algumas restrições aos requisitos de reconhecimento de fala com som natural em seu sentido clássico. Assim, a gama de variedades CAPP vai desde simples dispositivos autônomos e brinquedos infantis que são capazes de reconhecer ou sintetizar palavras, números, cidades, nomes, etc. para uso, por exemplo, como assistente assistente (IBM VoiceType Simply Speaking Gold).

Sendo o principal componente de qualquer interface amigável entre uma máquina e uma pessoa, o CAPP pode ser incorporado em várias aplicações, por exemplo, em sistemas de controle de voz, acesso por voz a recursos de informação, aprendizado de idiomas usando um computador, assistência a deficientes, acesso a algo através de sistemas de verificação de voz/identificação.

CAPP é muito útil como ferramenta de busca e classificação de dados de áudio e vídeo gravados. O reconhecimento de fala também é usado ao inserir informações, o que é especialmente útil quando os olhos ou as mãos de uma pessoa estão ocupados. O CARR permite que pessoas que trabalham em ambientes estressantes (médicos em hospitais, trabalhadores de fábricas, motoristas) usem um computador para obter ou inserir as informações necessárias.

Normalmente, o CAPP é usado em sistemas como aplicativos de telefonia, sistemas embarcados (sistemas de discagem, operação de PDA, condução, etc.), aplicativos multimídia (sistemas de ensino de idiomas).

Teclas de voz

As dicas de voz às vezes são chamadas de sistemas automáticos de reconhecimento de fala. Geralmente são sistemas biométricos de acesso autorizado a informações ou acesso físico a objetos. Dois tipos de tais sistemas devem ser distinguidos: sistemas de verificação e sistemas de identificação. Durante a verificação, o usuário primeiro apresenta seu código, ou seja, se declara de uma forma ou de outra, e depois diz em voz alta uma senha ou alguma frase arbitrária. O sistema verifica se a voz fornecida corresponde aos padrões que foram chamados da memória do computador de acordo com o código apresentado.

Ao identificar, não é feita nenhuma declaração prévia sobre o usuário. Nesse caso, é realizada uma comparação dessa voz com todos os padrões e, em seguida, é determinado especificamente quem é a pessoa identificada pela voz. Hoje, existem muitas abordagens e métodos para implementar esses sistemas, e todos eles, como regra, diferem uns dos outros - quantos desenvolvedores, tantas de suas variedades. O mesmo pode ser dito sobre os sistemas de reconhecimento de voz. Portanto, só é possível julgar as características de sistemas específicos de reconhecimento de fala e reconhecimento de personalidade usando bancos de dados de teste especiais.

Um pouco de história

Estados Unidos da América, final da década de 1960: "Três", disse Walter Cronkite, apresentador do popular programa de ciências 21st Century, durante uma demonstração dos últimos desenvolvimentos em reconhecimento de fala. O computador reconheceu esta palavra como "quatro". "Idiota," Walter murmurou. "Essa palavra não está no dicionário", respondeu o computador.

Embora os primeiros desenvolvimentos no campo do reconhecimento de fala remontem à década de 1920, o primeiro sistema foi criado apenas em 1952 pelos Laboratórios Bell (hoje parte da Lucent Technologies). E o primeiro sistema comercial foi criado ainda mais tarde: em 1960, a IBM anunciou o desenvolvimento de tal sistema, mas o programa nunca entrou no mercado.

Então, na década de 1970, a Eastern Airlines nos Estados Unidos instalou um sistema de despacho de bagagem dependente de alto-falante: o operador nomeava o destino - e a bagagem era enviada a caminho. No entanto, devido ao número de erros cometidos, o sistema nunca passou do período de teste.

Depois disso, os desenvolvimentos nesta área, se houver, foram realizados de forma bastante lenta. Mesmo na década de 1980, havia algumas aplicações comerciais reais usando sistemas de reconhecimento de fala.

Hoje, não dezenas, mas centenas de equipes de pesquisa em instituições científicas e educacionais, bem como em grandes corporações, estão trabalhando nessa direção. Isso pode ser julgado por fóruns internacionais de cientistas e especialistas no campo das tecnologias de fala como ICASSP, EuroSpeech, ICPHS, etc. ser superestimado.

Há vários anos, os navegadores de voz, ou sistemas de reconhecimento de comandos, têm sido utilizados com sucesso em vários campos de atividade. Por exemplo, o call center OmniTouch fornecido ao Vaticano pela Alcatel foi usado para atender eventos que ocorreram como parte da celebração do 2000º aniversário de Cristo. O peregrino que ligou para o call center fez sua pergunta e o sistema automático de reconhecimento de fala o “ouviu”. Se o sistema determinar que uma pergunta foi feita sobre um tópico frequente, como agendas de eventos ou endereços de hotéis, uma entrada pré-gravada foi incluída. Caso fosse necessário esclarecer a dúvida, era oferecido um menu de fala, no qual um dos itens deveria ser indicado por voz. Se o sistema de reconhecimento determinasse que não havia resposta pré-gravada para a pergunta feita, então o peregrino estava conectado ao operador humano.

Na Suécia, foi aberto recentemente um serviço automático de consulta telefônica usando o software de reconhecimento de fala da Philips. Durante o primeiro mês de funcionamento do serviço Autosvar, que começou a funcionar sem anúncio oficial, 200.000 clientes utilizaram os seus serviços. Uma pessoa deve discar um determinado número e, após a resposta da secretária automática, nomear a seção do diretório de informações que lhe interessa.

O novo serviço destina-se principalmente a clientes particulares, que o preferirão devido ao custo significativamente mais baixo dos serviços. O serviço Autosvar é o primeiro desse tipo na Europa (nos EUA, os testes de um serviço semelhante na AT&T começaram em dezembro do ano passado).

Aqui estão alguns exemplos do uso dessa tecnologia nos EUA.

Corretores de imóveis geralmente recorrem aos serviços da Newport Wireless. Quando um corretor de imóveis dirige pela rua e vê uma placa de Vende-se perto de uma casa, ele liga para a Newport Wireless e pede informações sobre uma casa com tal ou tal número localizado em tal rua. A secretária eletrônica com uma agradável voz feminina informa sobre a filmagem da casa, a data de construção e os proprietários. Todas essas informações estão no banco de dados Newport Wireless. Os corretores de imóveis só podem emitir uma mensagem para o cliente. A taxa de assinatura é de cerca de US $ 30 por mês.

Julie, agente virtual da Amtrak, atende passageiros ferroviários desde outubro de 2001. Ela informa por telefone sobre os horários dos trens, sua chegada e partida, e também faz reservas de passagens. Julie é um produto da SpeechWorks Software e da Intervoice Hardware. Já aumentou a satisfação dos passageiros em 45%; 13 em cada 50 clientes obtêm todas as informações de que precisam de Julie. A Amtrak costumava usar um sistema de referência baseado em tom, mas a taxa de satisfação era menor, com apenas 9 de 50 clientes.

A Amtrak admite que Julie pagou seu preço (US$ 4 milhões) em 12-18 meses. Ela permitiu não contratar uma equipe inteira de funcionários. E a British Airways está economizando US$ 1,5 milhão por ano usando a tecnologia da Nuance Communications que também automatiza o suporte técnico.

Recentemente, a Sony Computer Entertainment America apresentou o Socom, o primeiro videogame no qual os jogadores podem dar ordens verbais aos lutadores de granadas Deploy. O jogo de US$ 60 usa a tecnologia ScanSoft. No ano passado, 450.000 desses jogos foram vendidos, tornando a Socom a líder indiscutível nas vendas da empresa.

Em carros caros como Infinity e Jaguar, o controle verbal do painel de controle é usado há vários anos: o rádio, o regime de temperatura e o sistema de navegação entendem a voz do proprietário do carro e obedecem inquestionavelmente ao proprietário. Mas agora a tecnologia de reconhecimento de voz está começando a ser aplicada a carros de classe média. Assim, desde 2003, o Honda Accord possui um identificador de voz integrado da IBM. Chama-se ViaVoice e faz parte de um sistema de navegação de US$ 2.000. Segundo o fornecedor, um quinto dos compradores do Honda Accord optam por um modelo com navegação por voz.

Mesmo na medicina, a tecnologia de reconhecimento de voz encontrou seu lugar. Dispositivos para examinar o estômago, obedientes à voz do médico, já foram desenvolvidos. É verdade que esses aparelhos, segundo os especialistas, ainda são imperfeitos: têm uma resposta lenta às ordens médicas. Mas ainda à frente. Em Memphis, o VA Medical Center investiu US$ 277.000 no software Dragon, que permite que médicos e enfermeiros ditem informações em um banco de dados de computador. Provavelmente, em breve não será necessário sofrer para decifrar a caligrafia de um médico em um prontuário.

Centenas de grandes empresas já usam tecnologia de reconhecimento de voz em seus produtos ou serviços; estes incluem AOL, FedEx, Honda, Sony, Sprint, T. Rowe Price, United Airlines e Verizo. Segundo especialistas, o mercado de tecnologia de voz em 2002 atingiu cerca de 695 milhões de dólares, valor 10% superior ao de 2001.

A United Airways introduziu um serviço automatizado de consulta em 1999. Os sistemas automatizados de processamento de chamadas telefônicas são operados por empresas como o banco de investimento Charles Schwab & Co, a rede de varejo Sears, a rede de supermercados Roebuck. As operadoras sem fio dos EUA (AT&T Wireless e Sprint PCS) usam programas semelhantes e fornecem serviços de discagem por voz há mais de um ano. E embora a América seja agora a líder no número de call centers desse tipo, recentemente os benefícios dos sistemas de reconhecimento de voz começaram a ser percebidos na Europa. Por exemplo, o serviço ferroviário suíço já oferece aos seus passageiros de língua alemã serviços semelhantes aos oferecidos pela United Airways.

Previsões de analistas

Hoje, as tecnologias de reconhecimento de fala são consideradas entre as mais promissoras do mundo. Assim, de acordo com as previsões da empresa de pesquisa americana Cahners In-Stat, o mercado mundial de software de reconhecimento de voz passará de 200 milhões para 2,7 bilhões de dólares até 2005. Segundo a Datamonitor, o volume do mercado de tecnologia de voz crescerá em um média de 43% ao ano: de 650 milhões de dólares em 2000 para 5,6 bilhões de dólares em 2006 (Fig. 1). Especialistas que colaboram com a corporação de mídia CNN classificaram o reconhecimento de fala como uma das oito tecnologias mais promissoras deste ano. E analistas da IDC dizem que até 2005, o reconhecimento de fala irá substituir completamente todas as outras tecnologias de fala do mercado (Fig. 2).

Principais dificuldades

O principal problema que surge no desenvolvimento do CAPP é a pronúncia variante da mesma palavra tanto por pessoas diferentes quanto pela mesma pessoa em diferentes situações. Isso não incomodará uma pessoa, mas um computador pode. Além disso, o sinal de entrada é afetado por vários fatores, como ruído ambiente, reflexão, eco e ruído do canal. Isso é complicado pelo fato de que o ruído e a distorção não são conhecidos antecipadamente, ou seja, o sistema não pode ser ajustado a eles antes do início do trabalho.

No entanto, mais de meio século de trabalho em vários CAPPs deu frutos. Quase qualquer sistema moderno pode operar em vários modos. Primeiro, pode ser dependente ou independente do locutor. Um sistema dependente de alto-falante requer treinamento especial para um usuário específico, a fim de reconhecer com precisão o que ele está dizendo. Para treinar o sistema, o usuário precisa dizer algumas palavras ou frases específicas, que o sistema irá analisar e lembrar dos resultados. Este modo é geralmente usado em sistemas de ditado quando um usuário está trabalhando com o sistema.

O sistema independente de alto-falante pode ser usado por qualquer usuário sem um procedimento de treinamento. Este modo é normalmente utilizado onde o procedimento de aprendizagem não é possível, como em aplicações de telefonia. Obviamente, a precisão de reconhecimento de um sistema dependente de alto-falante é maior do que a de um sistema independente de alto-falante. No entanto, um sistema independente de alto-falante é mais conveniente de usar, por exemplo, pode funcionar com uma gama ilimitada de usuários e não requer treinamento.

Em segundo lugar, os sistemas são divididos entre aqueles que funcionam apenas com comandos isolados e aqueles que podem reconhecer a fala coerente. O reconhecimento de fala é uma tarefa muito mais difícil do que reconhecer palavras faladas separadamente. Por exemplo, ao passar do reconhecimento de palavras isoladas para o reconhecimento de fala com um dicionário de 1.000 palavras, a taxa de erro aumenta de 3,1 para 8,7 e o processamento de fala demora três vezes mais.

O modo de pronúncia de comando isolado é o mais simples e com menos recursos. Ao trabalhar neste modo, após cada palavra, o usuário faz uma pausa, ou seja, marca claramente os limites das palavras. O sistema não precisa encontrar o início e o fim de uma palavra em uma frase. O sistema então compara a palavra reconhecida com os padrões no dicionário e o modelo mais provável é aceito pelo sistema. Este tipo de reconhecimento é amplamente utilizado em telefonia ao invés dos métodos usuais de DTMF.

Variações adicionais na fala também surgem devido a entonações arbitrárias, estresse, estrutura não estrita de frases, pausas, repetições, etc.

Na junção da pronúncia contínua e separada das palavras, surgiu um modo de busca por palavra-chave. Neste modo, o CAPP encontra uma palavra predeterminada ou um grupo de palavras no fluxo de fala geral. Onde isso pode ser usado? Por exemplo, em dispositivos de escuta que ligam e iniciam a gravação quando certas palavras aparecem na fala ou na referência eletrônica. Tendo recebido uma solicitação de forma arbitrária, o sistema seleciona palavras semânticas e, reconhecendo-as, fornece as informações necessárias.

O tamanho do dicionário usado é um componente importante do CAPP. Obviamente, quanto maior o dicionário, maior a probabilidade de o sistema cometer um erro. Em muitos sistemas modernos, é possível complementar dicionários com novas palavras conforme necessário ou carregar novos dicionários. A taxa de erro típica para um sistema independente de alto-falante com pronúncia de comando isolada é de cerca de 1% para um dicionário de 100 palavras, 3% para um dicionário de 600 palavras e 10% para um dicionário de 8.000 palavras.

Ofertas do mercado CAPP moderno

e o mercado hoje é representado por CAPP de diversas empresas. Vamos considerar alguns deles.

Aculab

Precisão de reconhecimento de 97%.

Sistema independente de alto-falante. Os desenvolvedores do sistema analisaram vários bancos de dados para vários idiomas a fim de levar em conta todas as variações de fala que ocorrem dependendo da idade, voz, gênero e sotaque. Algoritmos proprietários fornecem reconhecimento de fala independentemente dos recursos do equipamento (fones de ouvido, microfone) e características do canal.

O sistema suporta a capacidade de criar dicionários adicionais que levam em consideração as peculiaridades de pronúncia e sotaques. Isso é especialmente útil quando o sistema é usado por pessoas cuja pronúncia é muito diferente da usual.

O sistema suporta os idiomas mais comuns, como inglês britânico e americano, francês, alemão, italiano, espanhol norte-americano. Um dicionário pode ser configurado para qualquer um desses idiomas, mas não é possível usar vários idiomas ao mesmo tempo como parte de um único dicionário.

O produto está disponível em Windows NT/2000, Linux e Sun SPARC Solaris.

Babear SDK Versão 3.0

Sistema independente de alto-falante que não requer treinamento para um usuário específico. A adaptação ao usuário ocorre durante a operação e proporciona o melhor resultado de reconhecimento. O ajuste automático da atividade de voz permite que você reconheça a fala em um ambiente muito barulhento, como em um carro. O sistema não determina palavras que não estão listadas no dicionário. É possível pesquisar por palavras-chave. O sistema pode ser configurado para funcionar tanto com um dicionário pequeno (pronúncia isolada de comandos) quanto com um dicionário grande (fala).

O sistema suporta os seguintes idiomas: inglês britânico e americano, espanhol alemão, francês, dinamarquês, sueco, turco, grego, islandês e árabe.

O sistema funciona em Windows 98 (SE)/NT 4.0/2000/CE, Mac OS X e Linux.

Loquendo ASR

Sistema independente de alto-falante otimizado para uso em telefonia. É possível reconhecer palavras e falas individuais, pesquisar palavras-chave (dicionário de até 500 palavras). Permite criar aplicações amigáveis ​​devido ao grande volume do dicionário e à flexibilidade do sistema.

Suporta 12 idiomas, incluindo os idiomas europeus mais comuns (italiano, espanhol, inglês britânico e americano, francês, alemão, grego, sueco, etc.).

Incluído no Loquendo Speech Suite juntamente com o sistema de conversão de texto em fala e o Loquendo VoiceXML Interpreter, que suporta várias vozes e idiomas.

O sistema funciona com base em MS Windows NT/2000, UNIX e Linux.

LumenVox

Um sistema independente de alto-falante que não requer treinamento, mas após a adaptação a um usuário específico, os resultados do reconhecimento tornam-se muito melhores: a precisão do reconhecimento excede 90%.

Suporta vários formatos de arquivo de áudio: (u-law 8 kHz, PCM 8 kHz, PCM 16 kHz). Ele não possui requisitos rígidos para recursos de hardware. Funciona com base em Windows NT/2000/XP e Linux.

Requisitos do sistema (baseado em Windows):

Windows NT 4.0 com Service Pack 6a, Windows 2000 ou Windows XP Pro;

O tamanho mínimo de memória é 512 MB.

Requisitos do sistema (baseado no Red Hat Linux):

Red Hat Linux 7.2;

Intel Pentium III 800 MHz ou superior;

Tamanho da memória 256 MB;

Tamanho do disco 17 MB (após a descompressão).

Nuance

Segundo os fabricantes, o sistema é otimizado para o menor consumo de memória e outros recursos do sistema. A precisão do reconhecimento é de até 96% e permanece alta mesmo em um ambiente barulhento.

Existe a possibilidade de autoaprendizagem do sistema e seu ajuste para cada usuário.

Funciona em Windows 2000 e Linux.

ESPÍRITO

O idioma pode ser qualquer um (o dicionário é compilado para os requisitos específicos do cliente e inclui essas palavras e no idioma que o cliente especificou nos requisitos para as configurações do sistema. O dicionário pode incluir palavras de diferentes idiomas, ou seja, sem alterando as configurações, o sistema pode reconhecer palavras, por exemplo, tanto em chinês quanto em finlandês, se elas foram inseridas anteriormente no dicionário). Assim, este sistema pode funcionar com qualquer linguagem, enquanto outros sistemas - apenas com um determinado conjunto deles.

Este é um sistema automático de reconhecimento de voz que fornece reconhecimento de alta qualidade mesmo em um ambiente muito barulhento. O sistema pode ser facilmente configurado para funcionar em um dos dois modos: reconhecimento de frases com um número fixo de comandos (pronúncia de comandos individuais, modo de código PIN) e reconhecimento de frases com um número arbitrário de comandos (pronúncia contínua de comandos, “modo de fala coerente”). É possível pesquisar por palavras-chave. Esta solução funciona em condições de ruído aditivo não estacionário. A relação sinal-ruído necessária é de até 0 dB no "modo de código PIN" e de até +15 dB no modo de fala conectado.

Retardo de reconhecimento 0,2 s. Parâmetros do canal acústico: largura de banda dentro de 300-3500 Hz. A adaptação ao ambiente acústico é realizada por fragmentos de ruído com duração total de pelo menos 3 s.

Para "modo de código PIN":

Dicionário 50 comandos;

Probabilidade de reconhecimento correto - 95-99% em SNR = 0…6 dB;

Condições acústicas necessárias: ruído estático de banda larga aditiva com SNR (relação sinal/ruído) >= 15 dB.

Para o modo de reconhecimento de fala conectado:

Vocabulário 12 palavras/números;

A probabilidade de reconhecimento correto de uma cadeia de palavras é de 98-99%.

Especificidade: adaptação a ruídos arbitrários.

O sistema de reconhecimento automático de voz da SPIRIT está disponível na forma de um aplicativo para PC em MS Windows ou código assembly. A pedido dos clientes, a solução pode ser portada para qualquer plataforma DSP ou RISC.

VoiceWare

O sistema pode operar nos modos dependente e independente do alto-falante, portanto, não é necessário treinamento especial do sistema para trabalhar com um usuário específico.

Fornece alta precisão de reconhecimento e operação em tempo real, mesmo em ambientes ruidosos.

O sistema reconhece a fala conectada e uma lista sequencial de números.

Palavras não listadas no dicionário e ruídos estranhos não são percebidas por ela, e palavras que não significam nada, como "a", "bem", etc., são descartadas.

Novas palavras podem ser adicionadas ao dicionário.

O sistema se ajusta automaticamente ao tom, pronúncia e outros recursos de fala do usuário.

VoiceWare suporta inglês americano e coreano; Chinês e japonês estão em desenvolvimento.

O sistema é executado em Windows 95/98/NT 4.0, UNIX e Linux.

Para reconhecer a fala e traduzi-lo de áudio ou vídeo para texto, existem programas e extensões (plugins) para navegadores. No entanto, por que tudo isso, se existem serviços online? Os programas devem ser instalados em um computador, além disso, a maioria dos programas de reconhecimento de fala está longe de ser gratuita.


Um grande número de plug-ins instalados no navegador diminui muito seu trabalho e a velocidade de navegação na Internet. E os serviços que serão discutidos hoje são totalmente gratuitos e não requerem instalação - você entrou, usou e saiu!

Neste artigo, veremos dois serviços de tradução de fala para texto online. Ambos funcionam com um princípio semelhante: você começa a gravar (permite que o navegador acesse o microfone enquanto usa o serviço), fala no microfone (dita), e na saída você obtém um texto que pode ser copiado para qualquer documento em seu computador.

Speechpad.ru

Serviço de reconhecimento de fala online em russo. Tem instruções detalhadas para o trabalho em russo.

  • suporte para 7 idiomas (russo, ucraniano, inglês, alemão, francês, espanhol, italiano)
  • download para transcrever um arquivo de áudio ou vídeo (os vídeos do YouTube são suportados)
  • tradução simultânea para outro idioma
  • suporte para entrada de voz de pontuação e alimentação de linha
  • barra de botões (mudança de maiúsculas, nova linha, aspas, colchetes, etc.)
  • a presença de uma conta pessoal com histórico de registros (a opção está disponível após o registro)
  • a presença de um plug-in para o Google Chrome para inserir texto por voz no campo de texto dos sites (chamado "Entrada de texto por voz - Speechpad.ru")

Ditado.io

O segundo serviço de tradução de fala para texto online. Um serviço estrangeiro, que, por sua vez, funciona muito bem com a língua russa, o que é extremamente surpreendente. A qualidade do reconhecimento de fala não é inferior ao Speechpad, mas falaremos mais sobre isso posteriormente.

A principal funcionalidade do serviço:

  • suporte para 30 idiomas, entre os quais húngaro, turco, árabe, chinês, malaio, etc.
  • reconhecimento automático da pronúncia de sinais de pontuação, quebras de linha, etc.
  • a capacidade de integração com as páginas de qualquer site
  • a presença de um plugin para o Google Chrome (chamado "VoiceRecognition")

No reconhecimento de voz, o mais importante é precisamente qualidade da tradução fala para texto. Agradáveis ​​"pães" e oportunidades - nada mais do que uma boa vantagem. Então, o que ambos os serviços podem se gabar a esse respeito?

Teste comparativo de serviços

Para o teste, escolheremos dois fragmentos difíceis de reconhecer que contêm palavras e frases que raramente são usadas na fala de hoje. Para começar, lemos um fragmento do poema "Crianças Camponesas" de N. Nekrasov.

Abaixo está resultado da tradução de fala para texto cada serviço (os erros estão marcados em vermelho):

Como você pode ver, ambos os serviços lidaram com o reconhecimento de fala com erros quase idênticos. O resultado é muito bom!

Agora, para o teste, vamos pegar um trecho da carta do soldado do Exército Vermelho Sukhov (filme "Sol Branco do Deserto"):

Excelente resultado!

Como você pode ver, ambos os serviços lidam com o reconhecimento de fala de forma bastante adequada - escolha qualquer um! Parece que eles até usam o mesmo mecanismo - eles tiveram erros muito semelhantes de acordo com os resultados do teste). Mas se você precisar de recursos adicionais, como fazer upload de um arquivo de áudio/vídeo e traduzi-lo em texto (transcrição) ou tradução simultânea de texto de voz para outro idioma, o Speechpad será a melhor escolha!


A propósito, eis como ele realizou uma tradução simultânea de um fragmento do poema de Nekrasov para o inglês:

Bem, este é um pequeno vídeo de instruções para trabalhar com o Speechpad, gravado pelo próprio autor do projeto:

Amigos, gostaram deste serviço? Você conhece melhores análogos? Compartilhe suas impressões nos comentários.

  • Tutorial

Neste artigo, quero rever o básico de uma área tão interessante de desenvolvimento de software como o Reconhecimento de Fala. Naturalmente, não sou um especialista neste assunto, então minha história estará repleta de imprecisões, erros e decepções. No entanto, o objetivo principal do meu "trabalho", como o nome indica, não é uma análise profissional do problema, mas uma descrição dos conceitos básicos, problemas e suas soluções. Em geral, peço a todos os interessados ​​que recebam sob o corte!

Prólogo

Vamos começar com o fato de que nossa fala é uma sequência de sons. O som, por sua vez, é uma superposição (superposição) de vibrações sonoras (ondas) de diferentes frequências. Uma onda, como sabemos da física, é caracterizada por dois atributos - amplitude e frequência.

Desta forma, as vibrações mecânicas são convertidas em um conjunto de números adequados para processamento em computadores modernos.

Segue-se que a tarefa de reconhecimento de fala se reduz a “combinar” um conjunto de valores numéricos (sinal digital) e palavras de algum dicionário (língua russa, por exemplo).

Vamos ver como, de fato, esse "mapeamento" pode ser implementado.

Dados de entrada

Digamos que temos algum arquivo/stream com dados de áudio. Antes de tudo, precisamos entender como ele funciona e como lê-lo. Vejamos a opção mais simples - um arquivo WAV.

O formato implica a presença de dois blocos no arquivo. O primeiro bloco é um cabeçalho com informações sobre o fluxo de áudio: taxa de bits, frequência, número de canais, tamanho do arquivo, etc. O segundo bloco consiste em dados "brutos" - o mesmo sinal digital, um conjunto de valores de amplitude.

A lógica para ler dados neste caso é bastante simples. Lemos o cabeçalho, verificamos algumas restrições (falta de compactação, por exemplo), salvamos os dados em um array especialmente alocado.

Reconhecimento

Puramente teoricamente, agora podemos comparar (elemento por elemento) a amostra que temos com outra, cujo texto já conhecemos. Ou seja, tente "reconhecer" a fala... Mas é melhor não fazer isso :)

Nossa abordagem deve ser estável (bem, pelo menos um pouco) para mudanças no timbre da voz (a pessoa que pronuncia a palavra), volume e velocidade de pronúncia. Naturalmente, isso não pode ser alcançado pela comparação elemento por elemento de dois sinais de áudio.

Portanto, iremos de uma maneira um pouco diferente.

Quadros

Em primeiro lugar, vamos dividir nossos dados em pequenos intervalos de tempo - quadros. Além disso, os quadros não devem seguir estritamente um após o outro, mas “sobrepor-se”. Aqueles. o final de um quadro deve cruzar com o início de outro.

Os quadros são uma unidade de análise de dados mais apropriada do que valores de sinais específicos, pois é muito mais conveniente analisar ondas em um determinado intervalo do que em pontos específicos. A disposição de quadros “sobrepostos” possibilita suavizar os resultados da análise de quadros, transformando a ideia de quadros em uma espécie de “janela” que se move ao longo da função original (valores do sinal).

Foi estabelecido empiricamente que o comprimento ideal do quadro deve corresponder a um intervalo de 10ms, "sobreposição" - 50%. Considerando que o comprimento médio da palavra (pelo menos nos meus experimentos) é de 500ms, tal passo nos dará aproximadamente 500 / (10 * 0,5) = 100 quadros por palavra.

Quebra de palavras

A primeira tarefa que deve ser resolvida no reconhecimento de fala é a divisão dessa mesma fala em palavras separadas. Para simplificar, vamos supor que no nosso caso a fala contenha algumas pausas (intervalos de silêncio), que podem ser consideradas como “separadores” de palavras.

Nesse caso, precisamos encontrar algum valor, um limite - valores acima dos quais são uma palavra, abaixo dos quais são silêncio. Pode haver várias opções aqui:

  • definido para uma constante (funciona se o sinal original for gerado sempre nas mesmas condições, da mesma maneira);
  • valores de sinal de cluster destacando explicitamente o conjunto de valores correspondentes ao silêncio (funcionará apenas se o silêncio ocupar uma parte significativa do sinal original);
  • analisar entropia;

Como você deve ter adivinhado, falaremos agora sobre o último ponto :) Vamos começar com o fato de que a entropia é uma medida de desordem, “uma medida da incerteza de qualquer experiência” (c). No nosso caso, entropia significa o quanto nosso sinal “flutua” dentro de um determinado quadro.

  • suponha que nosso sinal esteja normalizado e todos os seus valores estejam no intervalo [-1;1];
  • construir um histograma (densidade de distribuição) de valores de sinal de quadro:
calcule a entropia como ;

E assim, temos o valor da entropia. Mas essa é apenas mais uma característica do quadro, e para separar o som do silêncio, ainda precisamos compará-lo com alguma coisa. Em alguns artigos, recomenda-se tomar o limiar de entropia igual à média entre seus valores máximo e mínimo (entre todos os quadros). No entanto, no meu caso, esta abordagem não deu bons resultados.
Felizmente, a entropia (ao contrário do quadrado médio dos valores) é uma quantidade relativamente independente. Isso me permitiu pegar o valor de seu limite na forma de uma constante (0,1).

No entanto, os problemas não param por aí: (A entropia pode ceder no meio de uma palavra (em vogais), ou pode saltar de repente devido a um pequeno ruído. Para lidar com o primeiro problema, temos que introduzir o conceito de “distância mínima entre palavras” e “cola” próximos conjuntos de quadros reclinados separados devido à subsidência. O segundo problema é resolvido usando o “comprimento mínimo de palavra” e cortando todos os candidatos que não passaram na seleção no primeiro parágrafo).

Se, em princípio, a fala não é “articulada”, pode-se tentar quebrar o conjunto inicial de frames em subsequências preparadas de determinada maneira, cada uma das quais será submetida a um procedimento de reconhecimento. Mas essa é uma história completamente diferente :)

E assim, temos um conjunto de frames correspondentes a uma determinada palavra. Podemos pegar o caminho de menor resistência e usar o quadrado médio de todos os seus valores (Root Mean Square) como característica numérica do quadro. No entanto, essa métrica carrega muito pouca informação adequada para análise posterior.

É aqui que entram em jogo os coeficientes cepstral de frequência Mel. Segundo a Wikipedia (que, como você sabe, não mente), o MFCC é uma espécie de representação da energia do espectro do sinal. As vantagens de usá-lo são as seguintes:

  • Utiliza-se o espectro do sinal (ou seja, a expansão em função da base das funções [co]senoidais ortogonais), o que permite levar em conta a “natureza” ondulatória do sinal em análises posteriores;
  • O espectro é projetado em uma escala mel especial, permitindo destacar as frequências mais significativas para a percepção humana;
  • O número de coeficientes calculados pode ser limitado a qualquer valor (por exemplo, 12), o que permite “comprimir” o quadro e, consequentemente, a quantidade de informação que está sendo processada;

Vejamos o processo de cálculo dos coeficientes MFCC para um determinado quadro.

Vamos representar nosso quadro como um vetor , onde N é o tamanho do quadro.

Expansão de Fourier

Em primeiro lugar, calculamos o espectro do sinal usando a transformada discreta de Fourier (de preferência sua implementação FFT “rápida”).

Ou seja, o resultado será um vetor da seguinte forma:

É importante entender que após essa transformação no eixo x temos a frequência (hz) do sinal, e no eixo y temos a magnitude (como forma de fugir de valores complexos):

Cálculo de filtros de mel

Vamos começar com o que é mel. Novamente, de acordo com a Wikipedia, mel é uma “unidade psicofísica de tom” baseada na percepção subjetiva de pessoas comuns. Depende principalmente da frequência do som (assim como do volume e timbre). Ou seja, esse valor, que mostra o quanto o som de uma determinada frequência é “significativo” para nós.

Você pode converter a frequência para giz usando a seguinte fórmula (lembre-se como "fórmula-1"):

A transformação reversa se parece com isso (lembre-se como "fórmula-2"):

Plotar mel/frequência:

Mas voltando à nossa tarefa. Digamos que temos um quadro com um tamanho de 256 elementos. Sabemos (a partir dos dados do formato de áudio) que a frequência de áudio em um determinado quadro é 16000hz. Vamos supor que a fala humana esteja na faixa de hz. Vamos definir o número de coeficientes de mel procurados M = 10 (valor recomendado).

Para decompor o espectro obtido acima em escala mel, precisamos criar um “pente” de filtros. Na verdade, cada filtro mel é uma função de janela triangular que permite somar a quantidade de energia em uma determinada faixa de frequência e, assim, obter o coeficiente mel. Conhecendo o número de coeficientes mel e a faixa de frequência analisada, podemos construir um conjunto de tais filtros:

Observe que quanto maior o número do coeficiente de mel, mais larga será a base do filtro. Isso se deve ao fato de que a divisão da faixa de frequência de nosso interesse nas faixas processadas pelos filtros ocorre na escala de giz.

Mas nós divagamos novamente. E assim, para o nosso caso, a faixa de frequências de interesse para nós é . De acordo com a fórmula 1 na escala de giz, esse intervalo se transforma em.

m[i] =

Observe que os pontos são espaçados uniformemente na escala de giz. Vamos converter a escala de volta para hertz usando a fórmula-2:

h[i] =

Como você pode ver, agora a escala começou a se esticar gradualmente, nivelando assim a dinâmica do crescimento da “significância” em baixas e altas frequências.

Agora precisamos sobrepor a escala resultante no espectro do nosso quadro. Como lembramos, no eixo X temos a frequência. O comprimento do espectro é de 256 - elementos, enquanto cabe 16000hz. Resolvendo uma proporção simples, você pode obter a seguinte fórmula:

f(i) = andar((frameSize+1) * h(i) / sampleRate)

Que no nosso caso é equivalente a

f(i) = 4, 8, 12, 17, 23, 31, 40, 52, 66, 82, 103, 128

Isso é tudo! Conhecendo os pontos de referência no eixo X do nosso espectro, é fácil construir os filtros que precisamos usando a seguinte fórmula:

Aplicando filtros, logaritmo da energia do espectro

A aplicação do filtro consiste na multiplicação aos pares de seus valores com os valores do espectro. O resultado desta operação é o coeficiente de mel. Como temos M filtros, haverá o mesmo número de coeficientes.

No entanto, precisamos aplicar filtros mel não aos valores do espectro, mas à sua energia. Em seguida, pegue o logaritmo dos resultados. Acredita-se que isso reduz a sensibilidade dos coeficientes ao ruído.

transformação de cosseno

O Discrete Cosine Transform (DCT) é usado para obter esses coeficientes "cepstral". Seu significado é “comprimir” os resultados obtidos aumentando a significância dos primeiros coeficientes e diminuindo a significância dos últimos.

Neste caso, DCTII é usado sem qualquer multiplicação por (fator de escala).

Agora, para cada quadro, temos um conjunto de coeficientes M mfcc que podem ser usados ​​para análises posteriores.

Exemplos de código para os métodos sobrepostos podem ser encontrados.

Algoritmo de reconhecimento

Aqui, caro leitor, a principal decepção espera por você. Na Internet, vi muitas disputas altamente inteligentes (e nem tanto) sobre qual método de reconhecimento é melhor. Alguém defende Hidden Markov Models, alguém por redes neurais, os pensamentos de alguém são basicamente impossíveis de entender :)

De qualquer forma, é dada muita preferência ao HMM , e é a implementação deles que vou adicionar ao meu código ... no futuro :)

No momento, proponho parar em um método muito menos eficaz, mas muitas vezes mais simples.

E assim, lembre-se que nossa tarefa é reconhecer uma palavra de algum dicionário. Para simplificar, reconheceremos os nomes dos dez primeiros dígitos: “um”, “dois”, “três”, “quatro”, “cinco”, “seis”, “sete”, “oito”, “nove”, "dez".

Agora vamos pegar um iPhone/Android e passar por L colegas com um pedido para ditar essas palavras no registro. Em seguida, vamos atribuir (em algum banco de dados local ou um arquivo simples) a cada palavra L de conjuntos de coeficientes mfcc dos registros correspondentes.

Chamaremos essa correspondência de “Modelo” e o processo em si - Aprendizado de Máquina! Na verdade, simplesmente adicionar novas amostras ao banco de dados tem uma conexão extremamente fraca com aprendizado de máquina...

Agora nossa tarefa é reduzida a selecionar o modelo “mais próximo” para algum conjunto de coeficientes mfcc (palavra reconhecível). À primeira vista, o problema pode ser resolvido de forma bastante simples:

  • para cada modelo, encontramos a distância média (euclidiana) entre o vetor mfcc identificado e os vetores do modelo;
  • escolhemos como correto o modelo, cuja distância média será a menor;

No entanto, a mesma palavra pode ser pronunciada tanto por Andrei Malakhov quanto por alguns de seus colegas estonianos. Em outras palavras, o tamanho do vetor mfcc para a mesma palavra pode ser diferente.

Felizmente, o problema de comparar sequências de diferentes comprimentos já foi resolvido na forma do algoritmo Dynamic Time Warping. Este algoritmo de programação dinâmica é lindamente descrito tanto no Wiki burguês quanto no Habré ortodoxo.

A única mudança que deve ser feita é a forma como a distância é encontrada. Devemos lembrar que o vetor mfcc do modelo é na verdade uma sequência de "subvetores" mfcc de dimensão M obtidos a partir de quadros. Assim, o algoritmo DTW deve encontrar a distância entre as sequências desses mesmos “subvetores” de dimensão M. Ou seja, distâncias (euclidianas) entre os “subvetores” mfcc dos quadros devem ser utilizadas como valores da matriz de distâncias.

Experimentos

Não tive a oportunidade de testar o trabalho dessa abordagem em uma grande amostra de “treinamento”. Os resultados dos testes em uma amostra de 3 instâncias para cada palavra em condições não sintéticas mostraram, para dizer o mínimo, não o melhor resultado - 65% de reconhecimentos corretos.

No entanto, meu objetivo era criar o aplicativo mais simples para reconhecimento de fala. Por assim dizer “prova de conceito” :) Adicionar tags

  • 9. Posições fonológicas. Fonemas fortes e fracos.
  • 10. Alternâncias posicionais de fonemas vocálicos. Redução quantitativa e qualitativa de fonemas vocálicos.
  • 11. Alternâncias posicionais de fonemas consonantais. Assimilação e dissimilação por surdez/voz e por dureza/suavidade.
  • 12. Alternações históricas de fonemas.
  • 13. A queda dos fonemas vocálicos reduzidos e as consequências desse fenômeno.
  • 14. Alternações associadas à história dos sons nasais na língua russa antiga.
  • 15. Palatalização das línguas posteriores.
  • 17. Transcrição fonética. Transcrição fonêmica
  • 18. Sílaba. Programa de Estudos. Tipos de sílabas.
  • 19. Palavra fonética. estresse
  • 20. Compasso de fala. Entonação
  • 21. Ênfase. Construções de entonação
  • 21. Frase. Entonação
  • 22. O conceito de ortoepia
  • 23. Regras básicas de pronúncia literária russa.
  • 24. Pronúncia de vogais sob acento. Pronúncia de vogais átonas.
  • 25. Pronúncia de consoantes individuais.
  • 26. Pronúncia de grupos de consoantes.
  • 27. Pronúncia de algumas formas gramaticais.
  • 28. Pronúncia de algumas abreviaturas. Características da pronúncia de palavras estrangeiras.
  • 29. Casos difíceis de dominar o estresse em russo.
  • 30. Desenvolvimento da pronúncia literária russa.
  • 31. Codificação gramatical
  • 32. Codificação semântica. Dois argumentos (sinais temporais): causalidade.
  • 33. Codificação semântica. Dois argumentos (sinais temporários): consequência, resultado, propósito.
  • 34. Codificação semântica. Dois argumentos (sinais temporais): transformação, mudança
  • 35. Codificação semântica. Dois argumentos (sinais temporários): interação, agrupamento, semelhança, associação
  • 36. Codificação semântica. Dois argumentos (sinais temporários): separação, influência, condição, entrada.
  • 37. Codificação semântica. Dois argumentos (sinais temporários): obediência, controle, subordinação, dependência.
  • 38. Codificação semântica. Um argumento (sinais permanentes): propriedade, necessidade, possibilidade, probabilidade, sim, não.
  • 39. Codificação semântica. Um argumento (sinais constantes): verdade, falsidade.
  • código semântico. Seus objetivos. Propósito. Princípio de construção. Capacidades.
  • O objetivo do código semântico. O termo "significado".
  • O objetivo do código semântico. Texto. Em formação. Hipertexto no desenvolvimento da informação.
  • 43. Análise gramatical e semântica na codificação semântica.
  • 44. Dicionário semântico russo de compatibilidade e dicionário associativo para codificação semântica.
  • O objetivo do código semântico. Isomorfismo do sistema.
  • O objetivo do código semântico. Princípio do necessário e suficiente.
  • O objetivo do código semântico. Conectividade de classes e subclasses
  • 48. A finalidade do código semântico. O princípio da hierarquia/não-hierarquia.
  • 49. A finalidade do código semântico. metáfora sistêmica.
  • 50. Código semântico situacional (situacional).
  • 51. Codificação semântica. Código interpretativo de alinhamento. Código Matriz.
  • 52. Principais tarefas e conceitos-chave da interface de voz.
  • 53. Revisão histórica do problema de reconhecimento e síntese de fala.
  • 54. Sistemas de síntese automática de voz. Aplicações práticas da interface de voz.
  • 55. Sistemas automáticos de reconhecimento de voz. Aplicações práticas da interface de voz.
  • 56. Fundamentos linguísticos da interface de fala. O uso da linguística na implementação de sistemas de fala.
  • 57. A estrutura do sinal de fala. Análise e síntese. Características espectrais-temporais do sinal de fala.
  • 58. Estrutura de informação e modulação do sinal de fala.
  • 59. Métodos para sintetizar um sinal de fala. Modelos matemáticos generalizados para descrever sinais de fala.
  • 60. Métodos para sintetizar um sinal de fala. Modelo geométrico do trato vocal.
  • 61. Métodos para sintetizar um sinal de fala. modelo formante.
  • 62. Métodos de compilação para a síntese de um sinal de voz.
  • 63. Métodos de análise do sinal de fala.
  • 64. Método de filtragem digital de um sinal de fala. Análise espectral usando algoritmos FFT. Método de filtragem digital
  • Análise de espectro usando algoritmos FFT
  • 65. Análise espectral baseada em previsão linear. Descrição paramétrica-formante de um sinal de fala. Análise espectral baseada em previsão linear
  • Descrição paramétrica de formante de um sinal de fala
  • 66. Método de coeficientes cepstral. Características da percepção da fala. Propriedades da percepção receptiva da fala por uma pessoa. Método do coeficiente Cepstral
  • 67. Propriedades de percepção receptiva de sinais de fala. A natureza das características auditivas (fonéticas) do sinal de fala. Propriedades da percepção receptiva de sinais de fala
  • A natureza das características auditivas (fonéticas) de um sinal de fala
  • 68. Propriedades de percepção de elementos mínimos significativos da fala
  • 69. Síntese do discurso no texto. A estrutura do sintetizador de voz por texto.
  • Estrutura de conversão de texto em fala Conceitos-chave:
  • 70. Processador linguístico. Pré-processamento de texto. Processamento de frase de texto.
  • Pré-processamento de texto
  • Processamento de texto frase a frase
  • 71. Processamento de texto do teste. Um exemplo do trabalho de um processador linguístico. Processamento de texto
  • Um exemplo do trabalho de um processador linguístico
  • 72. Processador Prosódico
  • 73. Processador fonético. Processador fonético-articulatório. Processador fonético formante.
  • 74. Processador fonético alofone. processador acústico.
  • 75. Aproximação da geometria do tato de fala. Processador acústico baseado em métodos de compilação de síntese de voz.
  • 76. Classificação dos sistemas automáticos de reconhecimento de voz. Métodos de reconhecimento automático de fala.
  • 77. Classificação dos métodos de reconhecimento de fala.
  • 78. Método de programação dinâmica.
  • 79. O método dos modelos ocultos de Markov.
  • Os sistemas automáticos de reconhecimento de fala (SAPP) são entendidos como sistemas que convertem a fala de entrada (sinal de fala) em uma mensagem reconhecida. Neste caso, a mensagem reconhecida pode ser apresentada tanto na forma de texto desta mensagem, como

    convertido imediatamente em uma forma conveniente para seu processamento posterior, a fim de formar a resposta do sistema. Inicialmente, o sistema de reconhecimento automático de fala é encarregado de converter texto em fala. Portanto, na literatura inglesa, esses sistemas são chamados de Speech To Text System. Muitas vezes, os sistemas automáticos de reconhecimento de fala também são chamados simplesmente de sistemas de reconhecimento de fala (SPR).

    Um diagrama de blocos simplificado do sistema de reconhecimento automático de voz é mostrado na fig.

    Sob o modelo de análise de sinal de fala compreender o bloco cuja tarefa é analisar o sinal de entrada, em primeiro lugar, para classificá-lo como sinal de fala, e em segundo lugar, destacar os componentes do sinal recebido que são os principais para

    reconhecimento da mensagem recebida. Esses componentes incluem parâmetros que descrevem a fala, semelhantes aos que são formados no processo de síntese da fala. O conjunto de parâmetros especificados depende do método de reconhecimento escolhido.

    Modelo de reconhecimento de fala e tomada de decisãoé um bloco dentro do qual uma mensagem reconhecida é formada com base na análise da sequência de parâmetros obtidos do primeiro bloco. Por exemplo, se for utilizado um modelo formante de descrição de fala, então, com base nas frequências obtidas no primeiro bloco, os formantes são usados ​​para construir uma sequência de fonemas reconhecidos que compõem a mensagem de entrada. Nesse caso, é tomada uma decisão sobre se a mensagem de entrada é reconhecida corretamente. Ao tomar uma decisão, em particular, as seguintes decisões são possíveis: a mensagem é reconhecida corretamente (isso é confirmado pelo texto que atende às normas da linguagem natural) ou

    a mensagem não é reconhecida ou reconhecida incorretamente (tal decisão é tomada se a mensagem reconhecida contiver erros óbvios que são difíceis de corrigir automaticamente ou até mesmo um completo absurdo).

    Os seguintes parâmetros que os caracterizam podem ser citados como restrições impostas aos APPS:

    Tipo de fala reconhecível (pronúncia palavra por palavra com pausas no estilo de comandos de fala; pronúncia clara sem pausas no estilo de “ditado”; fala espontânea);

    O volume do dicionário (limitado a 100, 200, etc. palavras; ilimitado);

    O grau de dependência do falante (dependente do falante; independente do falante);

    Restrições sintáticas (palavras individuais; frases típicas; linguagem artificial; linguagem natural);

    Condições para receber sinais de fala (microfones de contato; microfones remotos a uma distância superior a 1 m);

    Condições para uso de CRR (interferência fraca ou forte);

    confiabilidade de reconhecimento.

    Aplicações práticas da interface de voz

    Antes de passar a considerar exemplos de uso prático da interface de fala, vamos compará-la com os meios mais comuns de interação do usuário com um computador atualmente: teclado e tela. Pelo menos três diferenças fundamentais da interface de fala devem ser observadas:

    1) uma clara desvantagem do teclado e da tela é que uma pessoa precisa passar por um treinamento especial para se comunicar com um computador. Ao mesmo tempo, a fala é uma interface natural para qualquer pessoa, mesmo para uma pessoa despreparada. A fala reduz drasticamente a distância psicológica entre uma pessoa e um computador. Se uma interface de fala aparecer, o círculo de usuários de computador pode se tornar ilimitado;

    2) a fala em si não está ligada mecanicamente a um computador de forma alguma e pode ser conectada a ele por meio de sistemas de comunicação, por exemplo, um telefone. A interface de fala encurta a distância física entre uma pessoa e um computador. Isso expande ainda mais o círculo de potenciais usuários de computador e torna a interface de voz uma ferramenta ideal para construir sistemas de serviços de informação em massa;

    3) você pode manusear o computador na escuridão total, com os olhos fechados, quando suas mãos estão ocupadas com as alavancas de controle, com as mãos amarradas e em outras situações extremas. Essa propriedade confere a eficiência e mobilidade da comunicação, a liberação das mãos e a descarga do canal visual de percepção ao receber informações. Isso é extremamente importante, por exemplo, para um controlador de um grande sistema de energia ou um piloto de aeronave e um motorista de carro. Além disso, os sistemas computacionais estão se tornando mais acessíveis às pessoas com deficiência visual.

    Atualmente, as tecnologias de computador de fala já são bastante difundidas e estão se desenvolvendo em várias direções, as principais das quais são mostradas na Fig.

  • Legendador de telefone para surdos e deficientes auditivos

    Transforme sua tela em um cabeçalho de telefone incrível. É totalmente automático, sem digitadores humanos digitando suas conversas. Acha os avós difíceis de ouvir a família e os amigos ao telefone? Ligue o Speechlogger para eles e pare de gritar no telefone. Basta conectar a saída de áudio do seu telefone à entrada de áudio do seu computador e iniciar o Speechlogger. Também é útil em interações face a face.

    Transcrição automática

    Você gravou a entrevista? Economize algum tempo reescrevendo-o, desde a fala automática do Google, até o texto trazido ao seu navegador pelo Speechlogger. Reproduza a entrevista gravada no microfone (ou linha) do seu computador e deixe o speechlogger fazer a transcrição. O Speechlogger salva a transcrição do texto junto com a data, hora e seus comentários. Também permite editar texto. As conversas telefônicas podem ser transcritas usando o mesmo método. Você também pode gravar arquivos de áudio diretamente do seu computador, conforme descrito abaixo.

    Intérprete e tradutor automático

    Encontro com convidados estrangeiros? Traga um laptop (ou dois) com um registrador de fala e microfone. Cada parte verá as palavras faladas da outra traduzida para seu próprio idioma em tempo real. Também é útil fazer um telefonema em um idioma estrangeiro para garantir que você entenda completamente o outro lado. Conecte a saída de áudio do seu telefone à entrada de linha do seu computador e inicie o Speechlogger.

    Aprenda línguas estrangeiras e melhore suas habilidades de pronúncia

    O Speechlogger é uma ótima ferramenta de aprendizado de idiomas e pode ser usado de várias maneiras. Você pode usá-lo para aprender vocabulário falando seu idioma nativo e deixando o software traduzi-lo. Você pode aprender e praticar a pronúncia correta falando uma língua estrangeira e vendo se o Speechlogger entende ou não. Se o texto transcrito estiver em fonte preta, significa que você o pronunciou bem.

    Geração de legendas de filmes

    O Speechlogger pode gravar automaticamente filmes ou outros arquivos de som. Em seguida, pegue o arquivo e traduza-o automaticamente para qualquer idioma para produzir legendas internacionais.

    Ditar em vez de digitar

    Escrevendo uma carta? Os documentos? Listas? Resumo? Tudo o que você precisa digitar, tente ditar para o Speechlogger. O Speechlogger irá salvá-lo automaticamente para você e permitir que você o exporte para um documento.

    Jogo engraçado :)

    Você pode imitar o falante chinês? Francês? E o russo? Tente imitar uma língua estrangeira e veja o que você acabou de dizer com o Speechlogger. Use a tradução simultânea do Speechlogger para entender o que você acabou de dizer. Obtenha resultados surpreendentes - é muito divertido!