идентификация/распознавание голоса человека

я хочу записать чей-то голос, а затем из информации, которую я получаю о его / ее голосе, я узнаю, говорит ли этот человек снова! проблема в том, что у меня нет информации о том, какая статистика (например, частота) вызывает разницу с человеческим голосом, может ли кто-нибудь помочь мне с тем, как я могу распознать чей-то голос?

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


person Ocelot    schedule 05.03.2012    source источник
comment
Что вам подсказывает, что проще?   -  person Oskar Kjellin    schedule 05.03.2012
comment
хм..! просто моя первоначальная мысль! может быть, это сложнее!   -  person Ocelot    schedule 05.03.2012
comment
Я бы охарактеризовал эту проблему многими разными словами... но простота не входит в их число.   -  person ereOn    schedule 05.03.2012
comment
Учитывая, что в фреймворке c# есть распознавание речи, но нет распознавания лиц, я бы сказал, что вам будет намного сложнее.   -  person Oskar Kjellin    schedule 05.03.2012
comment
Найдите для этого основу. Если не найдете, попробуйте написать. Это не будет легко или просто   -  person Oskar Kjellin    schedule 05.03.2012
comment
Проверьте эту ссылку codeproject.com/Questions/166198. /   -  person Oskar Kjellin    schedule 05.03.2012
comment
Вы могли бы сделать докторскую степень. в этой теме. Большинство современных алгоритмов анализа/обнаружения голоса используют двухмерное/трехмерное моделирование физических голосовых связок для классификации различных степеней свободы голоса, используемых для классификации людей! Как было сказано выше - это не легко...   -  person MoonKnight    schedule 05.03.2012


Ответы (3)


Некоторая помощь здесь, возможно: http://www.generation5.org/content/2004/noReco.asp На основе библиотеки БПФ с открытым исходным кодом ( http://www.exocortex.org/dsp/ ) с некоторыми рекомендациями по проверке говорящего.

person David Brabant    schedule 05.03.2012

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

Еще один момент — отделение от других звуков (фона, других голосов и т. д.).

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

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

В основном способ реализовать это:

  • реализовать надежное разделение звука
  • реализовать надежное извлечение звуковых/голосовых паттернов
  • создайте БД с отпечатками голосов, которые вы хотите распознать, на основе идеальной настройки звука
  • определите алгоритм для сравнения между вашими сохраненными отпечатками пальцев и извлеченным/нормализованным звуковым/голосовым образцом (могут потребоваться некоторые пороговые значения для «вероятно равных» и т. д....)
  • совершенствуйте свои алгоритмы до тех пор, пока не достигнете приемлемого уровня обнаружения (также примите во внимание процент ложных срабатываний!)

Хороший обзор см. на http://www.scholarpedia.org/article/Speaker_recognition.

person Yahia    schedule 05.03.2012

См. VoiceID для Linux. Он использует Sphinx и другие библиотеки и довольно легко устанавливается.

person Maj Variola    schedule 19.11.2012