'Низкоуровневое' распознавание речи (звуки)?

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


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


Естественно я говорю про offline библиотеки и фреймворки. Какие это позволяют и в каких пределах? Конечно opensource и кроссплатформенность — рекомендуется.


Платные решения тоже возможны, но не хотелось бы 'приобретать самолет с аэровокзалом, чтобы ездить за хлебом на соседней улице'.
  • Вопрос задан
  • 5293 просмотра
Пригласить эксперта
Ответы на вопрос 2
merlin-vrn
@merlin-vrn
Возможно, вам вот указали sphinx, читайте про него. Есть версия для джавы (sphinx4), есть — для C (poketsphinx).

Но.

Дело в том, что сама схема распознавания речи основана на скрытых марковских моделях (HMM).

Вот так работает sphinx: вначале происходит обработка звука (фильтрация, получение кепстра), потом из этого кепстра извлекаются особенности (features) — в итоге имеем поток, если не ошибаюсь, 13-мерных feature vectors с частотой 100 Гц. Вот векторы этого потока соотносятся с конкретными звуками — либо там будет переходный процесс, связанный с согласным, либо — много похожих векторов подряд — тянущийся гласный звук.

Проблема тут в том, что этот поток очень грязный в смысле качества информации. Что там за особенности извлекли — одному Дану Журафски известно. Поток указанный обычно потом направляется в HMM, которая знает именно слова, в смысле — какие звуки обычно идут за какими и т. д., и на основании этих знаний предполагает, что на самом деле должно было получиться на выходе (что «имелось ввиду»). Я плохо представляю себе, как можно что-то делать без фильтрации с HMM.
Ответ написан
@lightcaster
Копайте в сторону cmu sphinx. На сколько я помню, там можно было получить список фонем на выходе без дальнейшего декодинга. На сколько это риалтайм судить не берусь
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы