СТАТЬИ / Компьютер / Голосовой ввод / Как преобразовать речь в текст
21.06.16 12:45

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

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

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

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

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

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

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

Схема распознавания речи

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

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

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

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

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

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

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

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

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

Программа для перевода речи в текст MSpeech

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

Настройки MSpeech

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

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

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

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

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

Голосовой ввод от Google

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

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

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

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

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

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

Голосовой ввод от Dictation.io

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

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

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

TalkTyper

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

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

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

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

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

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

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

SpeechPad для Google Chrome

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

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

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

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

Настройки SpeechPad

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

Если же Вы являетесь любителем социальной сети VK.com, то можете установить расширение Голосовой ввод для ВКонтакте:

Голосовой ввод для ВКонтакте

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

Выводы

Несмотря на то, что до сих пор не существует способа, который бы обеспечил стопроцентное распознавание голоса в текст, за последние годы прогресс всё же наметился. Как мы могли убедиться, этому активно способствует корпорация Google. Создав свой Web Speech API, Гугл, практически открыл дорогу всем желающим для создания программ и сервисов перевода речи в текст. Причём, все они потенциально бесплатны!

Если Гугл не забросит развитие словарей распознавания голоса (как это у него, увы, часто бывало с другими проектами), то уже в ближайшем будущем у нас будет шанс получить качественные и бесплатные инструменты голосового ввода. Думаю, что так оно и будет, поскольку даже наш Яндекс ведёт активную работу в данном направлении. А, если будет конкуренция, то будет и развитие...

На сегодняшний же день мы уже можем использовать некоторые наработки, которые дают нам возможность распознавать речь с точностью от 60 до 90% (зависит от Вашей дикции и качества микрофона). В принципе, такой точности достаточно для надиктовки чернового варианта любого текста с последующей его правкой. Поэтому, если Вы до сих пор медленно печатаете, попробуйте голосовой ввод. Вполне возможно, что Вы будете очень довольны ;)

P.S. Разрешается свободно копировать и цитировать данную статью при условии указания открытой активной ссылки на источник и сохранения авторства Руслана Тертышного.

Read Full Article