Google открыла доступ к Cloud Speech API, лежащей в основе Google Ассистента технологии распознавания речи. Примеры проектов по работе с Microsoft Speech API

Вот информация из Интернета с сайта vorabota.ru :

Чтобы приступить к преобразованию голоса в текст, понадобится микрофон (в ноутбуках он встроенный), желательна хорошая скорость интернет соединения и браузер Google Chrome не ниже 25 версии. В других браузерах функция голосового набора текстов, к сожалению, не работает.

Запустите страницу для ввода текста голосом в браузере Chrome. Внизу окна выберите язык, на котором Вы планируете диктовать текст. Нажмите на иконку микрофона в верхнем правом углу. И в всплывшей строке нажмите кнопку «разрешить» использование браузером микрофона.

Теперь Вы можете не спеша и четко наговаривать недлинные фразы. После завершения диктовки текста голосом его можно выделить и при помощи комбинации клавиш Ctrl+C скопировать в буфер обмена, а затем вставить в любой редактор для обработки. При желании текст можно сразу отправить по электронной почте.

Пожалуй, Web Speech API – самый простой и довольно качественный способ преобразовать свою речь в текст. Так как не надо отвлекаться на какие-то дополнительные манипуляции с клавиатурой. Просто включил микрофон и говори текст.

В любом случае придется использовать какой-нибудь дополнительный текстовый редактор для дальнейшей корректировки надиктованного текста.

Запустил в браузере Google Chrome страницу http://vorabota.ru/voice/text.html и опробовал голосовой ввод текста. Зачитал фразу «Web Speech API Голосовой набор текста. Выделить всё. Отправить Email «, а получил «Websphere api голосовой набор текста выделить все отправить email «. Вторая попытка: «Нажмите кнопку разрешить, чтобы включить микрофон » — «Нажмите кнопку разрешить чтобы включить микрофон «.

Сравнение исходной фразы и результата показывает, что: а) русская фраза преобразуется в русский текст достаточно качественно; б) английская фраза преобразуется в английский текст с ошибками, которые легко скорректировать; в) требуется обязательная корректировка текста с исправлением ошибок и с расстановкой знаков препинания и заглавных букв; г) отличие этой реализации Голосового набора текста от других, доступных в Интернете, в предельной простоте: в ней нет ничего лишнего, что облегчает освоение и использование.

Мой вывод таков: имеет смысл подобным образом реализовать Голосовой ввод текста на своём сайте, чтобы облегчить ввод текста на страницы сайта.

Надо всего лишь вставить на соответствующую страницу сайта необходимый код.

Создал отдельную страницу , предназначенную только для Голосового ввода текста , и начал её отладку.

Вот код страницы Диктуем текст :

Код в отладке…

Можете использовать приведенный код на своём сайте, преобразовав его так, как сочтёте нужным.

Приглашаю всех высказываться в

Решил немного дополнить отчет, который составлял еще будучи студентом. Прошло время и, как говорится, прогресс не стоит на месте. Технологии распознавания речи динамически развиваются. Что-то появляется, что-то исчезает. Вашему вниманию представляю самые известные речевые движки, которые может использовать разработчик в своем продукте на основе лицензионного соглашения. Буду рад замечаниям и дополнениям.

Цели:

Определить наиболее оптимальную аудио-систему распознавания речи (речевой движок) на базе закрытого исходного кода, то есть лицензии которой не подходит под определение открытого ПО.

Задачи:

Определить аудио-системы распознавания речи, которые попадают под понятие закрытого исходного кода. Рассмотреть наиболее известные варианта речевых систем преобразования голоса в текст, для перспектив интеграции видео-модуля в наиболее оптимальную голосовую библиотеку, которая имеет открытое API для совершения данной операции. Сделать выводы целесообразности использования аудио-систем распознавания речи на базе закрытого исходного кода под наши цели и задачи.

Введение

Реализация своей собственной системы распознавания речи является очень сложной, трудоемкой и ресурсозатратной задачей, которую сложно выполнить в рамках данной работы. Поэтому предполагается интегрировать представленную технологию видео-идентификации в системы распознавания речи, которые имеют для этого специальные возможности. Так как системы распознавания речи с закрытым исходным кодом реализованы более качественно и точность распознавания речи в них выше, то поэтому интеграция нашей видео-разработки в их работу следует считать более перспективным направлением, по сравнению с аудио системами распознавания речи на базе открытого исходного кода. Однако же необходимо иметь в виду тот факт, что системы распознавания речи с закрытым исходным кодом часто не имеют должной документации для возможности интеграции сторонних решений в их работу или же это направление является платным, то есть необходимо покупать специальную лицензию на использование речевых технологий, представленных лицензиантом.

Закрытый исходный код (Proprietary software)

Что касается определения - закрытый исходный код, то необходимо сказать – оно означает, что распространяются только бинарные (откомпилированные) версии программы и лицензия подразумевает отсутствие доступа к исходному коду программы, что затрудняет создание модификаций программы. Доступ к исходному коду третьим лицам обычно предоставляется при подписании соглашения о неразглашении. .
ПО с закрытым исходным кодом является проприетарным (собственническим) ПО. Однако необходимо иметь в виду, что фраза «закрытый исходный код» можно трактовать по-разному. Так как она может подразумевать лицензии, в которых исходный код программ недоступен. Однако если считать ее антонимом открытого кода, то она относится к программному обеспечению, не подходящему под определение лицензии открытого ПО, что имеет несколько другой смысл. Одним из таковых спорных моментов стало то, как трактовать понятия интерфейса программирования приложений.

Интерфейс программирования приложений (API)

С 24 марта 2004 года на основании решения Европейской комиссии для программ с закрытым исходным кодом в результате судебного процесса появилось определение API, которое расшифровывается как интерфейс программирования приложений или как интерфейс прикладного программирования (с англ. яз. - application programming interface). API - набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) для использования во внешних программных продуктах. Используется программистами для написания всевозможных приложений.
API определяет функциональность, которую предоставляет программа (модуль, библиотека), при этом API позволяет абстрагироваться от того, как именно эта функциональность реализована.
Если программу (модуль, библиотеку) рассматривать как чёрный ящик, то API - это множество «ручек», которые доступны пользователю данного ящика, которые он может вертеть и дёргать.
Программные компоненты взаимодействуют друг с другом посредством API. При этом обычно компоненты образуют иерархию - высокоуровневые компоненты используют API низкоуровневых компонентов, а те, в свою очередь, используют API ещё более низкоуровневых компонентов.
По такому принципу построены протоколы передачи данных по Интернет. Стандартный стек протоколов (сетевая модель OSI) содержит 7 уровней (от физического уровня передачи бит до уровня протоколов приложений, подобных протоколам HTTP и IMAP). Каждый уровень пользуется функциональностью предыдущего уровня передачи данных и, в свою очередь, предоставляет нужную функциональность следующему уровню.
Важно заметить, что понятие протокола близко по смыслу к понятию API. И то и другое является абстракцией функциональности, только в первом случае речь идёт о передаче данных, а во втором - о взаимодействии приложений. .

Dragon Mobile SDK

Сам инструментарий называется NDEV. Чтоб получить необходимый код и документацию, надо зарегистрироваться на сайте в «программе сотрудничества». Сайт:
dragonmobile.nuancemobiledeveloper.com/public/index.php .
Инструментарий (SDK) содержит в себе компоненты и клиента, и сервера. Диаграмма иллюстрирует их взаимодействие на верхнем уровне:


Рис. 1. Принцип работы технологии Dragon Mobile SDK

Комплект Dragon Mobile SDK состоит из различных примеров кода и шаблонов проектов, документации, а также программной платформы (фреймворка), упрощающей интеграцию речевых сервисов в любое приложение.

Платформа Speech Kit framework позволяет легко и быстро добавлять в приложения сервисы распознавания и синтеза (TTS, Text-to-Speech) речи. Данная платформа также обеспечивает доступ к компонентам обработки речи, находящимся на сервере, через асинхронные «чистые» сетевые API, сводя к минимуму накладные расходы и потребляемые ресурсы.

Платформа Speech Kit является полнофункциональным высокоуровневым «фреймворком», который автоматически управляет всеми низкоуровневыми сервисами.

Рис. 2. Архитектура Speech Kit

Платформа выполняет несколько согласованных процессов:
1. Осуществляет полное управление аудио системой для записи и воспроизведения
2. Сетевой компонент управляет подключениями к серверу и автоматически восстанавливает соединения с истекшим временем ожидания при каждом новом запросе
3. Детектор окончания речи определяет, когда пользователь закончил говорить, и при необходимости автоматически останавливает запись
4. Кодирующий компонент сжимает и распаковывает потоковую аудиозапись, снижая требования к полосе пропускания и уменьшая среднее время задержки.

Система серверов отвечает за большинство операций, входящих в цикл обработки речи. Процесс распознавания или синтеза речи выполняется целиком на сервере, обрабатывая или синтезируя аудио-поток. Кроме того, сервер осуществляет аутентификацию в соответствии с конфигурацией разработчика.

Платформа Speech Kit является сетевым сервисом и нуждается в некоторых базовых настройках перед началом использования классов распознавания или синтеза речи.

Данная установка выполняет две основные операции:
Во-первых, она определяет и авторизует ваше приложение.
Во-вторых, - устанавливает соединение с речевым сервером, - это позволяет производить быстрые запросы на речевую обработку и, следовательно, повышает качество обслуживания пользователей.

Распознавание речи
Технология распознавания позволяет пользователям диктовать вместо того, чтобы печатать там, где обычно требуется ввод текста. Распознаватель речи выдает список текстовых результатов. Он никак не привязан к какому-либо объекту пользовательского интерфейса (UI), поэтому отбор наиболее подходящего результата и выборка альтернативных результатов остается на усмотрение пользовательского интерфейса каждого приложения.


Рис. 3. Процесс распознавания речи

В работе нашего приложения на ОС Android нам удалось интегрировать решение от Dragon Mobile SDK. Пионер отрасли распознавания речи показал отличные результаты, особенно на английском языке. Однако большим его недостатком следует считать ограниченный бесплатный функционал: только 10 тысяч запросов в сутки - которых для работы нашего приложения очень скоро стало недостаточно. За больший доступ следует платить .

Google Speech Recognition API


Рис. 4. Логотип Google Voice Search

Это продукт компании Google, который позволяет вводить голосовой поиск с помощью технологии распознавания речи. Технология интегрирована в мобильные телефоны и компьютеры, где можно ввести информация с помощью голоса. С 14 июня 2011 года Google объявила об интеграции речевого движка в Google Search и с тех пор он работает в стабильном режиме с этого времени. Эта технология на персональных компьютерах поддерживается только браузером Google Chrome. Функция включена по умолчанию в сборках dev-канала, но может быть включена вручную добавлением командного флага. Есть также функция голосового управления для введения речевых команд на телефонах с ОС Android.

Первоначально Google Voice Search - поддерживал короткие поисковые запросы длиной 35-40 слов. Необходимо было для отправки запроса включать и выключать микрофон, что было очень не естественно для использования (такая функция еще осталось в строке поиска Google, нужно нажать лишь на микрофон). Однако, в конце февраля 2013 года в браузер Chrome была добавлена возможность распознавания непрерывной речи и фактически Google Voice Search трансформировался в Speech Input (можно попробовать технологию на примере набора текста в Google Translate). Технологию можно экспериментально протестировать например также . Ознакомиться с полной документацией можно . Заметим лишь, что если раньше многие разработчики грешили тем, что незаконно с помощью различных уловок вклинивались в канал распознавания Google Speech API, то сейчас во время частых изменений API с мая 2014 года процесс доступа к API фактически стал легализован, так как для работы с базой данных системы распознавания речи достаточно зарегистрировать учетную запись в Google Developers и потом можно работать с системой в рамках правового поля.

Voice Search по умолчанию поставляется со следующими сервисами: Google, Википедия, YouTube, Bing, Yahoo, DuckDuckGo и Wolfram|Alpha и другими. Вы также можете добавить собственные поисковые системы. Расширение также добавляет кнопку голосового ввода для всех сайтов с использованием поисковых форм HTML5. Для работы расширения необходим микрофон. Речевой ввод весьма экспериментальный, так что не удивляйтесь, если он не сработает. .

Для этого, чтобы использовать технологию Google Voice Search необходимо сделать следующее:
Необходимо сделать POST запрос на адрес (сейчас он часто меняется - например, в мае месяце было три изменения и поэтому к этому надо быть готовым) со звуковыми данными в формате FLAC или Speex . Реализовывали демонстрацию распознавания WAVE-файлов с помощью C#. Количество ограничений запросов в сутки не замечали. Был риск с 10 000 знаками, как у многих других систем распознавания речи, но такие значения экспериментальным образом было нами доказано, можно преодолевать ежедневно.

Останавливаться на том, как работает данная технология специально не буду. Очень много статей имеется в сети, в том числе на хабре. Замечу лишь, что системы распознавания речи имеют практически схожий принцип работы, который был представлен в пункте выше на примере Nuance.

Yandex Speech Kit


Рис. 5. Лого Yandex Speech Kit

Сразу замечу, что сам лично я с данной библиотекой не работал. Расскажу лишь об опыте программиста, который работал с нами. Он говорил, что очень тяжелая для его восприятия документация и система имеет ограничение по количеству запросов: 10 000 в сутки, поэтому в итоге мы не стали использовать базу данных от Яндекса. Хотя по уверению разработчиков - этот инструментарий является номером 1 для русского языка и, что исследовательская группа компании, которая работала одна в Швейцарии, другая в Москве смогла сделать технологический прорыв в этой области. Однако с таким решением достаточно тяжело выходить на международный рынок по словам Григория Бакунова, так как «многое в области распознавания речи с точки зрения патентования принадлежит известной Nuance и Яндекс одним из последних сумел зацепиться за вагон уходящего вперед поезда развития систем распознавания речи.»

Краткое описание технологии: api.yandex.ru/speechkit/
Документация для Android: api.yandex.ru/speechkit/generated/android/html/index.html
Документация для iOS: api.yandex.ru/speechkit/generated/ios/html/index.html

Скачать же библиотеки можно на портале Технологий «Яндекса»: api.yandex.ru/speechkit/downloads/

Microsoft Speech API


Рис. 6. Лого Microsoft Speech API

Майкрософт тоже в последнее время стал активно развивать речевые технологии. Особенно после анонсирования голосового ассистента Cortana и разработки автоматический технологии синхронного теле-перевода с английского на немецкий язык и наоборот для Skype
На текущий момент существуют 4 варианта использования:

1. Для Windows и Windows Server 2008. Можно добавить речевой движок для Windows приложения используя управляемый или нативный код, который можно взять с API и управлять речевым движком, который встроен в Windows и Windows Server 2008.
2. Speech Platforms. Встраивание платформы в приложения, которые используют распространяемые Microsoft диструбутивы (языковые пакеты с функцией распознавания речи или же средства перевода текста в речь).
3. Embedded. Встроенные решения, которые позволяют человеку взаимодействовать с устройствами используя голосовые команды. Например управление автомобилями Форд с помощью голосовых команд в ОС WIndows Automotive
4. Services. Разработка приложения с речевыми функциями, которые можно использовать в реальном времени, тем самым освобождая себя от создания, обслуживания и модернизации инфраструктуры речевых решений.

Microsoft Speech Platform (есть SDK)
После установки – можно посмотреть справку по следующему пути
И также нужно ставить еще Runtime (ссылка)
а также Runtime Languages (Version 11). Т.е. для каждого языка нужно скачать и установить словарь. Я видел 2 версии словаря для английского и русского языков.

Системные требования (для SDK)
Поддержка ОС
Windows 7, Windows Server 2008, Windows Server 2008 R2, Windows Vista

Разработка и поддержка
Windows Vista или позднее

Развертывание поддерживается на:
Windows 2003 Server или позднее
Windows 2008 Server или позднее
Плюсы:
1) Готовая технология, бери и пользуйся! (есть SDK)
2) Поддержка от Майкрософт

Минусы:
1) нет отрыва от потенциальных конкурентов
2) как я понял – можно развернуть только на серверной Виндоус (Windows 2003 Server, Windows 2008 Server or later)
3) разработка под Виндоус 8 не анонсирована, только Виндоус 7 пока и ранние версии Виндоус

Использование Microsoft Speech API 5.1 для синтеза и распознавания речи
как работать с АПИ

Установка (только для Windows XP), я так понимаю Speech API 5.1 он теперь входит в Microsoft Speech Platform (v 11), поэтому имеет смысл ознакомиться со статьей .

Примеры проектов по работе с Microsoft Speech API
MSDN ссылки про работу с Microsoft.Speech.dll
Примеры:
C#, Разговоры с компом или System.Speech
Краткая как юзать System.Speech. Автор указывает на необходимость наличия английской версии Windows Vista или 7.

Распознавание речи с C# – Диктовка и пользовательская грамматика
, как использовать системные классы Майкрософт для задач аудио-распознавания (голос в текст), автор также сделал в своем блоге пост для обратной задачи речь в текст.
Проект (WinForms) по туториалу запускается и собирается. Там есть распознавание 20 секундного интервала. И распознавание по узкому словарю для управления софтом - Choices(«Calculator», «Notepad», «Internet Explorer», «Paint»); Если говорить фразы «start calculator» и т.п. то запускается соответствующий софт.

C# Speech to Text
Клиент на WPF.
Цель этой статьи дать Вам небольшое представление о способностях системы. В деталях рассмотреть как работают классы речевого движка. Также можно найти всю документацию MSDN .

Создание грамматики в.NET
Примеры работы с классом GrammarBuilder
Microsoft .NET Speech API позволяет быстро и легко создать приложения, которые дадут преимущества для взаимодействия с исследовательским центром Майкрософт, который специализируется на распознавании речи. Можно построить грамматические процессы и формы для работы. В этой статье пример как можно все это реализовать. на языке программирования C#.
Speech for Windows Phone 8
рассматриваются аспекты программирования аудио-распознавания под Windows Phone 8.

Заключение

Таким образом, рассмотрев самые распространенные системы распознавания речи с закрытым исходным кодом необходимо заметить, что по своей библиотеке данных наиболее точным следует считать продукт на базе Dragon NaturallySpeaking. Он более всего подходит для задач распознавания на базе нашего визуального мобильного расширения (так как имеет хорошую документацию и простой код API для встраивания). Однако необходимо заметить, что данный инструментарий отличается очень сложной системой лицензирования, порядком и правилами использования данной технологии. Поэтому возникает сложность реализации на Dragon Mobile SDK пользовательского продукта.

Следовательно, в таком случае более правильным, для наших целей и задач следует считать использование речевого инструментария Google, который более встраиваемый и быстрый за счет больших вычислительных мощностей по сравнению с Dragon Mobile SDK. Также преимуществом распознавания речи от Google стало отсутствие ограничений по количеству запросов в сутки (у многих систем распознавания речи с закрытым исходным кодом есть ограничение 10 000 запросов). Также данная компания стала активно стремиться развивать свой речевой движок на базе лицензионного соглашения. Еще раз напомню в мае месяце 2014 года началась чехарда частой смены API от корпорации и для того, чтобы координировать процесс необходимо иметь статус GoogleDevelopers.

Большим достоинством систем распознавания с закрытым исходным кодом (но открытым API для разработчиков), по сравнению с аудио-системами распознавания речи с открытым исходным кодом является высокая точность (за счет огромных библиотек баз данных) и скорость распознавания речи, поэтому их использование для решения нашей задачи является актуальным направлением.

  • Google Voice Search
  • Dragon Mobile SDK
  • yandex speechkit
  • google speech recognition api
  • proprietary
  • microsoft speech api
  • Добавить метки

    The Web Speech API enables you to incorporate voice data into web apps. The Web Speech API has two parts: SpeechSynthesis (Text-to-Speech), and SpeechRecognition (Asynchronous Speech Recognition.)

    Web Speech Concepts and Usage

    The Web Speech API makes web apps able to handle voice data. There are two components to this API:

    • Speech recognition is accessed via the SpeechRecognition interface, which provides the ability to recognize voice context from an audio input (normally via the device"s default speech recognition service) and respond appropriately. Generally you"ll use the interface"s constructor to create a new SpeechRecognition object, which has a number of event handlers available for detecting when speech is input through the device"s microphone. The SpeechGrammar interface represents a container for a particular set of grammar that your app should recognise. Grammar is defined using JSpeech Grammar Format (JSGF .)
    • Speech synthesis is accessed via the SpeechSynthesis interface, a text-to-speech component that allows programs to read out their text content (normally via the device"s default speech synthesiser.) Different voice types are represented by SpeechSynthesisVoice objects, and different parts of text that you want to be spoken are represented by SpeechSynthesisUtterance objects. You can get these spoken by passing them to the SpeechSynthesis.speak() method.

    Web Speech API Interfaces

    Speech recognition

    SpeechRecognition The controller interface for the recognition service; this also handles the SpeechRecognitionEvent sent from the recognition service. SpeechRecognitionAlternative Represents a single word that has been recognised by the speech recognition service. SpeechRecognitionError Represents error messages from the recognition service. SpeechRecognitionEvent The event object for the result and nomatch events, and contains all the data associated with an interim or final speech recognition result. SpeechGrammar The words or patterns of words that we want the recognition service to recognize. SpeechGrammarList Represents a list of SpeechGrammar objects. SpeechRecognitionResult Represents a single recognition match, which may contain multiple SpeechRecognitionAlternative objects. SpeechRecognitionResultList Represents a list of SpeechRecognitionResult objects, or a single one if results are being captured in continuous mode.

    Speech synthesis

    SpeechSynthesis The controller interface for the speech service; this can be used to retrieve information about the synthesis voices available on the device, start and pause speech, and other commands besides. SpeechSynthesisErrorEvent Contains information about any errors that occur while processing SpeechSynthesisUtterance objects in the speech service. SpeechSynthesisEvent Contains information about the current state of SpeechSynthesisUtterance objects that have been processed in the speech service. SpeechSynthesisUtterance Represents a speech request. It contains the content the speech service should read and information about how to read it (e.g. language, pitch and volume.) SpeechSynthesisVoice Represents a voice that the system supports. Every SpeechSynthesisVoice has its own relative speech service including information about language, name and URI. Window.speechSynthesis Specced out as part of a interface called SpeechSynthesisGetter , and Implemented by the Window object, the speechSynthesis property provides access to the SpeechSynthesis controller, and therefore the entry point to speech synthesis functionality.

    Examples

    The Web Speech API repo on GitHub contains demos to illustrate speech recognition and synthesis.

    Specifications

    Specification Status Comment
    Web Speech API Draft Initial definition

    Browser compatibility

    SpeechRecognition

    https://github.com/mdn/browser-compat-data and send us a pull request.

    Desktop Mobile
    Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Edge Mobile Firefox for Android Opera for Android Safari on iOS Samsung Internet
    SpeechRecognition

    Experimental

    Chrome Full support 33

    Prefixed Notes

    Full support 33

    Prefixed Notes

    Prefixed
    Edge ? Firefox No support No IE No support No Opera No support No Safari No support No WebView Android ? Chrome Android Full support Yes

    Prefixed Notes

    Full support Yes

    Prefixed Notes

    Prefixed Implemented with the vendor prefix: webkit Notes You"ll need to serve your code through a web server for recognition to work.
    Edge Mobile ? Firefox Android No support No Opera Android No support No Safari iOS No support No Samsung Internet Android ?

    Legend

    Full support Full support No support No support Compatibility unknown Compatibility unknown Experimental. Expect behavior to change in the future. Experimental. Expect behavior to change in the future. See implementation notes. See implementation notes. Requires a vendor prefix or different name for use.

    SpeechSynthesis

    The compatibility table on this page is generated from structured data. If you"d like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.

    Update compatibility data on GitHub

    Desktop Mobile
    Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Edge Mobile Firefox for Android Opera for Android Safari on iOS Samsung Internet

    Google Speech API - сервис распознавания голоса Google.

    Распознавание речи позволяет создавать системы автоматического обслуживания клиентов в тех случаях, когда не применимо управление с помощью тонального набора. В качестве примера можно рассмотреть сервис бронирования авиабилетов, который подразумевает выбор их большого числа городов. Тональное меню в таком сервисе не удобно, поэтому голосовое управление будет самым эффективным. Диалог между системой и абонентом может выглядеть следующим образом:

    Система: Здравствуйте. Куда вы хотите лететь? Абонент: Казань Система: Откуда вы хотите лететь? Абонент: Москва Система: Назовите дату вылета Абонент: 10 апреля
    • Голосовой навигации в многоуровневых меню IVR и автоматического соединения с нужным сотрудником
    • Распознавания адреса для доставки
    • Автоматической голосовой аутентификации пользователей при запросе персонализированной или конфиденциальной информации по телефону или через интернет
    • Справочной системы информационного обслуживания
    • Корпоративной системы голосового самообслуживания клиентов (запрос баланса, проверка лицевого счета, бронирование билетов)

    Система распознавания речи, как правило, состоит из следующих частей:

    • Запись сообщения от абонента
    • Распознавание голоса и прием текстовых данных от сервиса
    • Анализ полученной информации и выполнение необходимых действий

    Для использования Google Speech API в вашей системе выполните следующие действия:

    Шаг 1. Скачайте и импортируйте сценарии в вашу систему Oktell .

    Скачать сценарий: (для версий Oktell старше 2.10)

    В архиве располагаются два сценария:

    После импорта сценариев в Oktell , сохраните их "На сервер "

    ВНИМАНИЕ: Google Speech API - это платный продукт. В сценарии (компонент Web-запроса GoogleVoice ) используется пробный ключ, который может быть заблокирован в следствие определенного числа запросов. При тестах максимальное количество запросов не обнаружено. Если вы хотите приобрести платную версию Google Speech API обратитесь в поддержку Google.

    Шаг 2. В модуле "Администрирование " - "Внутренние номера " добавьте внутренний номер с типом "Запуск IVR ". Выберите IVR-сценарий Google_Speech_API_main .

    Если Вы слишком медленно печатаете на клавиатуре, а учиться десятипальцевому методу набора лень, можете попробовать воспользоваться современными программами и сервисами голосового ввода текста.

    Клавиатура, бесспорно, достаточно удобный инструмент управления компьютером. Однако, когда дело доходит до наборки длинного текста, мы понимаем всё её (а, если быть честными, то наше:)) несовершенство... На ней ещё нужно уметь быстро печатать!

    Пару лет назад я, желая упростить себе работу по написанию статей, решил найти такую программу, которая бы позволяла преобразовать голос в текст. Я думал, как было бы хорошо, если бы я просто говорил всё что нужно в микрофон, а компьютер печатал вместо меня:)

    Каково же было моё разочарование, когда я понял, что на тот момент никаких реально работающих (а тем более бесплатных) решений для этого дела не существовало. Были, правда, отечественные разработки, вроде "Горыныча" и "Диктографа". Они понимали русский язык, но, увы, качество распознавания речи имели довольно низкое, требовали долгой настройки с созданием словаря под свой голос, да ещё и стоили довольно недёшево...

    Потом на свет появился Android и ситуация немного сдвинулась с мёртвой точки. В этой системе голосовой ввод появился в качестве встроенной (и довольно удобной) альтернативы ввода с виртуальной экранной клавиатуры. И вот недавно в одном из комментариев меня спросили, есть ли возможность голосового ввода для Windows? Я ответил, что пока нет, но решил поискать и оказалось, что, может и не совсем полноценная, но такая возможность существует! О результатах моих изысканий и будет сегодняшняя статья.

    Проблема распознавания речи

    Перед тем как начать разбор существующих на сегодняшний день решений для голосового ввода в Windows, хотелось бы немного осветить суть проблемы распознавания речи компьютером. Для более точного понимания процесса предлагаю взглянуть на следующую схему:

    Как видим, преобразование речи в текст происходит в несколько этапов:

    1. Оцифровка голоса . На этом этапе качество зависит от чёткости дикции, качества микрофона и звуковой карты.
    2. Сравнение записи с записями в словаре . Здесь работает принцип "чем больше - тем лучше": чем больше записанных слов содержит словарь, тем выше шансы того, что Ваши слова будут распознаны правильно.
    3. Вывод текста . Система автоматически, ориентируясь по паузам, пытается выделить из потока речи отдельные лексемы, соответствующие шаблонным лексемам из словаря, а затем выводит найденные соответствия в виде текста.

    Главная проблема, как нетрудно догадаться, кроется в двух основных нюансах: качестве оцифрованного отрезка речи и объёме словаря с шаблонами. Первую проблему реально минимизировать даже при наличии дешёвого микрофона и стандартной звуковой карты. Достаточно просто говорить не спеша и внятно.

    Со второй проблемой, увы, не всё так просто... Компьютер, в отличие от человека, не может корректно распознать одну и ту же фразу, сказанную, например, женщиной и мужчиной. Для этого в его базе должны существовать оба варианта озвучки разными голосами!

    В этом и кроется основной подвох. Создать словарь для одного человека, в принципе, не так сложно, однако, учитывая, что каждое слово должно быть записано в нескольких вариантах, это получается очень долго и трудозатратно. Поэтому, большинство из существующих на сегодняшний день программ для распознавания речи либо стоят слишком дорого, либо не имеют собственных словарей, предоставляя пользователю возможность создать их самостоятельно.

    Я не зря упомянул про Андроид чуть выше. Дело в том, что Гугл, который его разрабатывает, создал и единственный на сегодня общедоступный глобальный онлайн-словарь для распознавания речи (причём многоязычный!) под названием Google Voice API . Подобный словарь для русского языка также создаёт Яндекс, но пока он, увы, ещё непригоден для использования в реальных условиях. Поэтому практически все бесплатные решения, которые мы рассмотрим ниже, работают именно со словарями Google. Соответственно, все они имеют одинаковое качество распознавания и нюансы заключаются лишь в дополнительных возможностях...

    Программы голосового ввода

    Полноценных программ для голосового ввода под Windows не так уж много. Да и те, которые есть и понимают русский язык, в основном являются платными... Например, стоимость популярной пользовательской системы преобразования голоса в текст RealSpeaker стартует с отметки 2 587 руб, а профессионального комплекса Цезарь-Р аж с 35 900 руб!

    Но среди всего этого дорогого софта имеется одна программка, которая не стоит и копейки, но при этом предоставляет функционал, более чем достаточний для большинства пользователей. Называется она MSpeech :

    Основное окно программы имеет максимально простой интерфейс - индикатор уровня звука и всего три кнопки: включить запись, остановить запись и открыть окно настроек. Работает MSpeech также весьма просто. Вам нужно нажать кнопку записи, установить курсор в окно, в которое должен выводиться текст и начать диктовать. Для большего удобства запись и её остановку лучше производить горячими клавишами, которые можно задать в Настройках:

    Кроме горячих клавиш Вам может потребоваться изменить тип передачи текста в окна нужных программ. По умолчанию установлен вывод в активное окно, однако, можно задать передачу в неактивные поля или в поля конкретной программы. Из дополнительных возможностей стоит отметить группу настроек "Команды", которая позволяет реализовать голосовое управление компьютером при помощи заданных Вами фраз.

    Вообще же MSpeech - довольно удобная программа, которая позволяет набирать текст голосом в любом окне Windows. Единственный нюанс в её использовании - компьютер должен быть подключён к Интернету для доступа к словарям Гугла.

    Голосовой ввод онлайн

    Если Вам не хочется устанавливать на свой компьютер никаких программ, но есть желание попробовать вводить текст голосом, можете воспользоваться одним из многочисленных онлайн-сервисов, которые работают на базе всё тех же словарей Гугла.

    Ну и, естественно, первым делом стоит упомянуть о "родном" сервисе Google под названием Web Speech API :

    Этот сервис позволяет переводить в текст неограниченные отрезки речи на более чем 50 языках! Вам достаточно просто выбрать язык, на котором Вы говорите, нажать на иконку микрофона в правом верхнем углу формы, при необходимости подтвердить разрешение на доступ сайта к микрофону и начать говорить.

    Если Вы не используете какую-либо узкоспециализированную терминологию и говорите внятно, то сможете получить весьма неплохой результат. Кроме слов сервис "понимает" ещё и знаки препинания: если Вы скажете "точка" или "запятая", необходимый знак появится в форме вывода.

    По окончании записи распознанный текст будет автоматически выделен и Вы сможете скопировать его в буфер обмена или отправить по почте.

    Из недостатков стоит отметить лишь возможность работы сервиса только в браузере Google Chrome старше 25-й версии, а также отсутствие возможности мультиязычного распознавания.

    Кстати, на нашем сайте вверху Вы найдёте полностью русифицированную версию этой же формы распознавания речи. Пользуйтесь на здоровье;)

    На базе сервиса Гугла существует достаточно аналогичных онлайн-ресурсов распознавания речи. Одним из представляющих для нас интерес можно назвать сайт Dictation.io :

    В отличие от Web Speech API, Dictation.io имеет более стильное оформление в виде блокнота. Основным его преимуществом перед сервисом Гугла является то, что он позволяет остановить запись, а затем снова запустить и при этом введённый ранее текст сохранится пока Вы сами не нажмёте кнопку "Clear".

    Как и сервис Google Dictation.io "умеет" ставить точки, запятые, а также восклицательный знак и знак вопроса, но не всегда начинает новое предложение с большой буквы.

    Если же Вы ищете сервис с максимальным функционалом, то, наверное, одним из лучших в этом плане будет :

    Главные преимущества сервиса:

    • наличие русскоязычного интерфейса;
    • возможность просмотра и выбора вариантов распознавания;
    • наличие голосовых подсказок;
    • автоотключение записи после длительной паузы;
    • встроенный текстовый редактор с функциями копирования текста в буфер обмена, распечатки его на принтере, отправки по почте или в Твиттер и перевода на другие языки.

    Единственным недостатком сервиса (кроме уже описанных общих недостатков Web Speech API) является не совсем привычный для подобных сервисов алгоритм работы. После нажатия кнопки записи и надиктовки текста, его нужно проверить, выбрать вариант, наиболее соответствующий тому, что Вы хотели сказать, а затем перенести в текстовый редактор внизу. После чего процедуру можно повторить.

    Плагины для Хрома

    Кроме полноценных программ и онлайн-сервисов, существует ещё один способ распознать речь в текст. Этот способ реализовывается за счёт плагинов для браузера Google Chrome.

    Главным преимуществом использования плагинов является то, что с их помощью Вы можете вводить текст голосом не только в специальной форме на сайте сервиса, но и в любом поле ввода на любом веб-ресурсе! Фактически плагины занимают промежуточную нишу между сервисами и полноценными программами для голосового ввода.

    Одним из лучших расширений для перевода речи в текст является SpeechPad :

    Не совру, если скажу, что SpeechPad - один из лучших русскоязычных сервисов перевода речи в текст. На официальном сайте Вы найдёте довольно мощный (хоть и немного староватый дизайном) онлайн-блокнот со множеством продвинутых функций, среди которых есть:

    • поддержка голосовых команд управления компьютером;
    • улучшенная поддержка расстановки знаков препинания;
    • функция отключения звуков на ПК;
    • интеграция с Windows (правда, на платной основе);
    • возможность распознавания текста с видео или аудиозаписи (функция "Транскрибация");
    • перевод распознанного текста на любой язык;
    • сохранение текста в текстовый файл, доступный для скачивания.

    Что же касается плагина, то он предоставляет нам максимально упрощённый функционал сервиса. Установите курсор в нужное Вам поле ввода, вызовите контекстное меню и нажмите на пункт "SpeechPad". Теперь подтвердите доступ к микрофону и, когда поле ввода станет розовым, надиктуйте нужный текст.

    После того, как Вы прекратите говорить (пауза более чем в 2 секунды), плагин сам остановит запись и выведет в поле всё, что Вы сказали. При желании Вы можете зайти в настройки плагина (правый клик на иконке плагина вверху) и изменить параметры по умолчанию:

    Как ни странно, но во всём Интернет-магазине расширений Гугла мне больше не попалось ни одного стоящего плагина, который бы позволял реализовать голосовой ввод в любом текстовом поле. Единственным похожим расширением было англоязычное . Оно добавляет иконку микрофона ко всем полям ввода на веб-странице, но не всегда правильно располагает её, поэтому она может оказаться вне экрана...