Нужны инструменты преобразования текста в речь и распознавания речи для Linux

Я планирую написать программу для Linux, которая использует текст в речь и распознавание речи. Каковы лучшие инструменты / библиотеки для этого? Должен ли я использовать Windows вместо того, чтобы иметь возможность использовать лучшие инструменты? Инструменты должны легко вызываться из консоли или C-программы.

12 ответов

Решение

Для распознавания речи существуют различные сфинксы. Разные варианты имеют разные плюсы и минусы, здесь есть сравнение Сравнение версий Sphinx. Сфинкс 4 - это Java, а остальные - C, я считаю.

Это зависит от того, какую речь вы пытаетесь распознать.

Эта статья 2005 года объясняет некоторые трудности при создании программы диктовки: http://www.cs.cmu.edu/~archan/personal/whyNoOpenSourceDictationDraft4.html. Если вы хотите, механизм распознавания речи Julius выглядит многообещающе, но вам нужно будет добавить свои собственные акустические и языковые модели. Вы можете использовать акустическую модель Voxforge.

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

Я смог получить довольно хорошие результаты, используя pocketsphinx и gstreamer, чтобы создать программу, которая автоматически редактирует большинство вхождений слова " twitter" из подкаста TWiT. Это не работало вообще, пока я не использовал свою собственную языковую модель, основанную на стенограммах подкаста; машинные транскрипции из распознавателя речи бесполезны / смешны, но они хорошо справляются с поиском ключевого слова.

Я использовал и Loquendo, и Festival под Linux. Я бы посчитал фестивальные голоса, которые я использовал, довольно бедными, с очень автоматизированным синтезом. Голоса Loquendo, с другой стороны, превосходны - очень высокого качества.

Для распознавания речи существует очень мало для Linux. Я знал только об одном, по-видимому, приличном варианте, который IBM выпустила несколько лет назад, но позже он больше не был доступен (кто-нибудь знает, можно ли получить этот ViaVoice SDK где-нибудь еще?). Есть еще немного информации о возможных вариантах в Википедии.

Для преобразования текста в речь Debian/Ubuntu также существует SVOX Pico:

sudo apt-get install libttspico-utils

http://simon-listens.org/ - программа распознавания речи / голоса Симона с открытым исходным кодом

Это немного устарело, но я видел это довольно полное руководство по распознаванию речи на Hackaday несколько дней назад: http://hackaday.com/2010/07/09/get-started-with-speech-recognition/

И тогда есть mbrola для преобразования текста в речь.

Вы проверяли синтез речи на основе HMM для преобразования текста в речь? Вы можете найти бесплатную демоверсию на сайте http://hts.sp.nitech.ac.jp/. Установка будет немного утомительной.

Я знаю, что espeak - очень хорошая программа преобразования текста в речь для linux (она может даже делать разные акценты!), Но я не знаю ни одной системы распознавания речи, разработанной для UNIX.

Инструментарий at&t fsm также довольно хорош - коммерческое использование запрещено,

http://www.research.att.com/~fsmtools/fsm/

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

В настоящее время я пытаюсь рекламировать Dragon NaturallySpeaking как поддерживаемый продукт CodeWeavers ... поэтому, если вы заинтересованы как пользователь, было бы полезно, если бы вы проголосовали...

http://www.codeweavers.com/compatibility/browse/name/?app_id=8427

Другие вопросы по тегам