Speak up!
Como criar Speech-based apps
         Pedro Silva Santos
          Developer Lead, MLDC
        i-pedros@microso...
Agenda

• O Microsoft Language Development Center (MLDC)
• A Tecnologia de Fala:
   – Reconhecimento de fala.
   – Síntese...
MLDC - Microsoft Language
    Development Center, Portugal

•    Criado um Microsoft | Development Center em Portugal
    ...
http://www.microsoft.com/portugal/mldc
Missão de longo termo e linhas de
acção do MLDC

  Missão de Longo Termo
       Expandir o desenvolvimento local das tecno...
A tecnologia de Reconhecimento e
         Síntese de Fala
Speech Recognition - SR
• Ou Reconhecimento Automático de Fala.
• Características de um sistema de SR:
  – Modos de operaç...
Speech Recognition
• Como funciona
  – Hidden Markov Models: modelos estatísticos baseados em
    probabilidades.
  – A Fa...
Text-to-speech synthesis
        Transformar
           “É fácil sintetizar fala”
        Em
 Amplitude




             T...
Text-to-speech synthesis - TTS

• Síntese de texto para fala.
• Produção artificial de fala humana.
• Tipicamente, convert...
Engines and Language Packs

• Microsoft Speech Technology.
• Dois principais core engines:
   – O engine de SR.
   – O eng...
TalkToMe
Desenvolvimento de aplicações
     Speech (client-side)
A nova API de Speech


                     .NET Framework 3


              WPF     WCF    WWF   Cardspace   SpeechFX!!

...
A nova API de Speech

• O que já vem no Vista:
   – Runtime .NET Framework 3.0, incluindo SpeechFX.
   – O reconhecedor de...
System.Speech.Synthesizer

• Como usar?

    SpeechSynthesizer synthesizer = new SpeechSynthesizer();
    synthesizer.Spea...
System.Speech.Recognition

• Como usar?
   – Construir uma gramática.
   – Carregar a gramática no reconhecedor.
   – Regi...
System.Speech.Recognition

• Como usar?
SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine(new System.Global...
Speech Sample
RecoTuga
SpeechWiki
Media Center
Speech in Robotics
Microsoft Robotics Studio
• Ambiente de desenvolvimento que permite criar facilmente aplicações para
  uma grande variedad...
Microsoft Robotics Studio
Microsoft Robotics Studio
Lego MindStorm




                 1.   32-bit ARM7 microcontroller
                 2.   Sensor de toque
               ...
Lego Mindstorm
Desenvolvimento de aplicações
    Speech (server-side)
OCS 2007 Speech Server

• OCS 2007 Speech Server está incluído no
  Microsoft® Office Communications Server 2007
• Princip...
Supported Languages
Línguas suportadas: 14 (SR / TTS)

Suporte de SR e TTS:
   North American English
   UK English
   Can...
Dialog Workflow Designer
InfoService
Global                    “Bem-vindo ao serviço
                          Commands/Grammar                informativo da M...
Get the bits!
• Para cliente desktop:
   – API SpeechFX no .NET Framework3 (incluído no Vista; download
     necessário pa...
Language Packs de Português
• MLDC disponibiliza Programas de Avaliação Beta da sua tecnologia.
• LPs Beta para Português ...
Recursos
• Microsoft Language Development Center
   – http://www.microsoft.com/portugal/mldc
   – Beta Program + Projects ...
Recursos
• .NET Framework 3.0 SpeechFX API for client-side speech-development:
    – Intro article:
         • http://msdn...
Recursos
• “Microsoft Office Communications Server 2007 Speech Server” for IVR
  server-side speech-development:
    – Mic...
www.microsoft.com/portugal/mldc
Speak up: como criar Speech-based apps
Próximos SlideShares
Carregando em…5
×

Speak up: como criar Speech-based apps

3.737 visualizações

Publicada em

Publicada em: Tecnologia
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
3.737
No SlideShare
0
A partir de incorporações
0
Número de incorporações
235
Ações
Compartilhamentos
0
Downloads
47
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Speak up: como criar Speech-based apps

  1. 1. Speak up! Como criar Speech-based apps Pedro Silva Santos Developer Lead, MLDC i-pedros@microsoft.com
  2. 2. Agenda • O Microsoft Language Development Center (MLDC) • A Tecnologia de Fala: – Reconhecimento de fala. – Síntese de texto-para-fala. • Desenvolvimento de aplicações Speech (client-side): – A managed SpeechFX API. – Desenvolvimento e demos. • Desenvolvimento de aplicações Speech (server-side): – Microsoft Office Communications Server 2007: Speech Server. – Desenvolvimento e demos. • Downloads públicos e recursos: – Beta Program + TAP Program – Bits para Português!
  3. 3. MLDC - Microsoft Language Development Center, Portugal • Criado um Microsoft | Development Center em Portugal – Criação em Novembro de 2005 e início da operação em Março de 2006 – http://www.microsoft.com/portugal/mldc – Miguel Dias (Director, FTE) + 10 colaboradores (Engenheiros e Linguistas) – Um dos 4 Centros de Desenvolvimento Microsoft na Europa e o 1º fora de Redmond (EUA) dedicado ao desenvolvimento local da linguagem. – Expansão do grupo de componentes de processamento de fala da Microsoft, baseado em Redmond, EUA – Co-suportado pelo PRIME –NITEC
  4. 4. http://www.microsoft.com/portugal/mldc
  5. 5. Missão de longo termo e linhas de acção do MLDC Missão de Longo Termo Expandir o desenvolvimento local das tecnologias de linguagem na região da EMEA, para um conjunto de produtos e platformas Microsoft (Vista, Exchange, Office, Mobilidade, Media Center, Xbox) Início na língua Portuguesa Linhas de Acção : 1. Linhas de cooperação com as universidades e institutos de I&D mais inovadores em Portugal e na região da EMEA, nos domínios da fala e da língua natural 2. Desenvolvimento de recursos e tecnologias da linguagem em Portugal e na EMEA 3. Participação em projectos de I&D em consórcio nos programas Nacionais (FCT, PRIME-IDEA, PRIME- NITEC) e Europeus (FP7)
  6. 6. A tecnologia de Reconhecimento e Síntese de Fala
  7. 7. Speech Recognition - SR • Ou Reconhecimento Automático de Fala. • Características de um sistema de SR: – Modos de operação: • Comando e controlo, • Ditado (ou fala espontânea) – Dependência ao falante. – Adaptação ao falante. – Principais métricas de avaliação: precisão e velocidade
  8. 8. Speech Recognition • Como funciona – Hidden Markov Models: modelos estatísticos baseados em probabilidades. – A Fala é uma série de palavras. – Cada palavra consiste numa série de sons (fonemas). – Confidence scoring.
  9. 9. Text-to-speech synthesis Transformar “É fácil sintetizar fala” Em Amplitude Tempo
  10. 10. Text-to-speech synthesis - TTS • Síntese de texto para fala. • Produção artificial de fala humana. • Tipicamente, convertendo uma representação textual para fala num formato de audio. • Como funciona? Técnicas: – Concatenative synthesis – Formant – Articulatory – HMMs • A voice font: a fala do talento de voz armazenado como um conjunto de segmentos de sons individuais.
  11. 11. Engines and Language Packs • Microsoft Speech Technology. • Dois principais core engines: – O engine de SR. – O engine de TTS. – Independentes da língua. • Speech Language Packs: ficheiros específicos por língua. • Tipicamente, LPs contêm: – language-dependent recognizer data. – language-dependent synthesizer data.
  12. 12. TalkToMe
  13. 13. Desenvolvimento de aplicações Speech (client-side)
  14. 14. A nova API de Speech .NET Framework 3 WPF WCF WWF Cardspace SpeechFX!! • A API managed SpeechFX. • O que está no namespace System.Speech: – System.Speech.Recognition – System.Speech.Synthesis • Disponível publicamente no .NET Framework 3.0
  15. 15. A nova API de Speech • O que já vem no Vista: – Runtime .NET Framework 3.0, incluindo SpeechFX. – O reconhecedor de Inglês (Francês, Alemão, Espanhol, Japonês e Chinês também disponíveis). – O sintetizador de Inglês – a voz “Anna”. – O “Windows Speech Recognition User Experience” • Para XP: download do .NF3.0
  16. 16. System.Speech.Synthesizer • Como usar? SpeechSynthesizer synthesizer = new SpeechSynthesizer(); synthesizer.Speak(“Olá mundo!”); • Inclui suporte para custom spoken pronunciations, standard XML SSML W3C, gravar output para wave file, alterar velocidade de síntese e volume.
  17. 17. System.Speech.Recognition • Como usar? – Construir uma gramática. – Carregar a gramática no reconhecedor. – Registar eventos (SpeechRecognized, SpeechHypothesized, SpeechDetected, …) – Começar o reconhecimento…! – Inclui suporte para gramáticas complexas, semantic values, standard XML SRGS W3C, input de wave file, recognition confidence value, recognition alternate choices.
  18. 18. System.Speech.Recognition • Como usar? SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine(new System.Globalization.CultureInfo(quot;en-usquot;)); void init() { Choices pizzaChoices = new Choices(); pizzaChoices.AddPhrase(quot;I'd like a cheese pizzaquot;); pizzaChoices.AddPhrase(quot;I'd like a pepperoni pizzaquot;); pizzaChoices.AddPhrase(quot;I'd like a large pepperoni pizzaquot;); Grammar pizzaGrammar = new Grammar(new GrammarBuilder(pizzaChoices)); recognizer.LoadGrammar(pizzaGrammar); pizzaGrammar.SpeechRecognized += new EventHandler<RecognitionEventArgs>(PizzaGrammar_SpeechRecognized); recognizer.Recognize(..); } void PizzaGrammar_SpeechRecognized(object sender, RecognitionEventArgs e) { MessageBox.Show(e.Result.Text); }
  19. 19. Speech Sample
  20. 20. RecoTuga
  21. 21. SpeechWiki
  22. 22. Media Center
  23. 23. Speech in Robotics
  24. 24. Microsoft Robotics Studio • Ambiente de desenvolvimento que permite criar facilmente aplicações para uma grande variedade de plataformas (robôs). • Apresenta um ambiente virtual que simula o mundo real! • Interface muito simples de usar! • Para experts e para beginners! 
  25. 25. Microsoft Robotics Studio
  26. 26. Microsoft Robotics Studio
  27. 27. Lego MindStorm 1. 32-bit ARM7 microcontroller 2. Sensor de toque 3. Sensor de som 4. Sensor de luz 5. Sensor de distância 6. Motores
  28. 28. Lego Mindstorm
  29. 29. Desenvolvimento de aplicações Speech (server-side)
  30. 30. OCS 2007 Speech Server • OCS 2007 Speech Server está incluído no Microsoft® Office Communications Server 2007 • Principais componentes: – Authoring and debugging – Reporting, Analysis and Tuning – Telephony – Operations, Administration, Maintenance
  31. 31. Supported Languages Línguas suportadas: 14 (SR / TTS) Suporte de SR e TTS: North American English UK English Canadian French German American Spanish Suporte de TTS: Chinese (Mandarin + Traditional), English (Australia), French (France), Italian (Italy), Japanese (Japan), Korean (Korea), Portuguese (Brazil), Spanish (Spain).
  32. 32. Dialog Workflow Designer
  33. 33. InfoService
  34. 34. Global “Bem-vindo ao serviço Commands/Grammar informativo da Microsoft “Menu Principal”; “Iniciar”; “Reiniciar”; “Voltar”; Portugal” “Terminar” “Menu Principal. Diga notícias, trânsito ou tempo.” “Diga o nome do acesso que “Diga [categoria], deseja consultar, como por “Diga Lisboa, Porto pesquisar ou menu exempo IC19, ou menu ou menu principal.” principal. principal.” “Diga um ou vários termos a pesquisar.” “Escolheu a categoria Desporto. “Foram “IC19. Trânsito Existem 3 notícias encontradas 2 “Lisboa. Condições condicionado novas. Primeira notícias contendo actuais..., para amanhã...” no sentido...” notícia...” o termo... “
  35. 35. Get the bits! • Para cliente desktop: – API SpeechFX no .NET Framework3 (incluído no Vista; download necessário para XP). – Language Packs estão incluídos no Vista. • Para servidor: OCS 2007 Speech Server – Vários Language Packs estão incluídos.
  36. 36. Language Packs de Português • MLDC disponibiliza Programas de Avaliação Beta da sua tecnologia. • LPs Beta para Português Europeu e Brasileiro em: – Client desktop: • Reconhecedor de Fala de Português. – Speech Server: • Reconhecedor + Sintetizador de Fala de Português. • Toda a informação em: – http://www.microsoft.com/portugal/mldc/betaprograms/ • Invitation code: MLDC-BKBY-DTBD • http://connect.microsoft.com • i-pedros@microsoft.com
  37. 37. Recursos • Microsoft Language Development Center – http://www.microsoft.com/portugal/mldc – Beta Program + Projects + Videos + Demos + News • MLDC Blog – http://blogs.msdn.com/tagarela/ • Microsoft Speech – http://www.microsoft.com/speech/
  38. 38. Recursos • .NET Framework 3.0 SpeechFX API for client-side speech-development: – Intro article: • http://msdn.microsoft.com/msdnmag/issues/06/01/speechinWindowsVista/ – .NET Framework 3.0 runtime download (for XP): • http://www.microsoft.com/downloads/details.aspx?FamilyId=10CC340B-F857-4A14- 83F5-25634C3BF043&displaylang=en – Managed SpeechFX API Documentation (MSDN): • http://msdn2.microsoft.com/en-us/library/system.speech.recognition.aspx • http://msdn2.microsoft.com/en-us/library/system.speech.synthesis.aspx – “Windows Speech Recognition” User Experience in Windows Vista: • http://www.microsoft.com/enable/products/windowsvista/speech.aspx • http://www.microsoft.com/windows/products/windowsvista/features/details/speechrecognitio n.mspx • MLDC Client Beta Program: – http://www.microsoft.com/portugal/mldc/betaprograms/winclientdesktop.ms px • MLDC Client Demo Videos: – http://www.microsoft.com/portugal/mldc/projects/speechapps.mspx
  39. 39. Recursos • “Microsoft Office Communications Server 2007 Speech Server” for IVR server-side speech-development: – Microsoft Office Communications Server 2007 Speech Server Developer Edition Download: • http://www.microsoft.com/downloads/details.aspx?FamilyId=BB183640-4B8F-4828- 80C9-E83C3B2E7A2C&displaylang=en – OCS 2007 Speech Server Documentation (MSDN): • http://msdn2.microsoft.com/en-us/library/bb857803.aspx – Books and webcasts are also available. • MLDC TAP Program: – http://www.microsoft.com/portugal/mldc/betaprograms/officecomserv07spse rv.mspx • MLDC Server Demo Videos: – http://www.microsoft.com/portugal/mldc/projects/europtconnect.mspx – http://www.microsoft.com/portugal/mldc/news/feb08_Techdays2008.mspx http://www.microsoft.com/portugal/mldc/projects/ExchangeServer2007.mspx
  40. 40. www.microsoft.com/portugal/mldc

×