Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.85/121: Рейтинг темы: голосов - 121, средняя оценка - 4.85
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 28
1

Голосовое управление и распознавание\сравнение речи

13.04.2013, 12:03. Показов 22088. Ответов 29
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток, друзья!
В виду того, что скоро предстоит выбирать тему курсовой работы, я решил немного активизироваться и вспомнил, что вот уже пару лет во мне тлеет мечта разработать программу, которая бы могла управлять системой при помощи человеческого голоса. Ну, это совсем глобально.
Цель сейчас - написать программу, которая распознавала бы 10-15 голосовых команд (обязательное условие - язык C++)Сроку - год)
В дальнейшем планирую не бросать и развивать проект, но пока оцениваю свои возможности более менее трезво и понимаю, что за год смогу создать только маленькую "распознавалку"=)
А теперь внимание, вопрос-просьба:
Помогите, кто чем может - советом, указаниями и т.д.
Хотя бы посоветуйте, в какую сторону начинать копать.
Допустим, с захватом голоса проблем нет, какие необходимы дальнейшие преобразования? Какие существуют алгоритмы сравнения (я знаю, что это самая сложная часть)
Да, я читал google, да я знаю (вики) о нейронных сетях и вообще немного времени посвятил изучению данной проблемы. Но это все очень разбросанно и поверхностно)
Может, кто-то посоветует хорошие книжки?Или ваш собственный опыт?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.04.2013, 12:03
Ответы с готовыми решениями:

распознавание речи
Здравствуйте, пишу программу голосового дворецкого и наткнулся на проблему что, достойного...

Голосовое управление программой
Здравствуйте, я еще неопытный программист, но хочу попробовать сделать программу с голосовым...

голосовое управление. диплом
Доброго времени суток. Хочу создать программу голосового управления(на подобие умных домов) что-то...

Нейронные сети и распознавание речи C++ и Java
Здравствуйте. Я обладаю некоторыми навыками в программировании на языках C++ и Java. Мне интересно...

29
СуперМодулятор
134 / 134 / 48
Регистрация: 03.11.2012
Сообщений: 974
13.04.2013, 12:33 2
Начать можно со статьи на хабре. Точнее, в этой статье есть ссылки на пару статей, которые стоит прочитать, а потом смотреть на ту статью, на которую я даю ссылку.
Если хочется готовенького, то в винде есть SpeechAPI. Но он не поддерживает русский.
1
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 28
13.04.2013, 12:43  [ТС] 3
Izobara, статью, конечно же читал)
Проблема в том, что SpeechAPI только Апи)Да и русского нет совсем)
Да и не хотелось бы готового решения) С тем же успехом можно и просто приложение готовое скачать)
Суть же в том, чтоб самому написать, почитать литературу и разобраться в вопросе)
0
СуперМодулятор
134 / 134 / 48
Регистрация: 03.11.2012
Сообщений: 974
13.04.2013, 12:58 4
Хм... Ну, раз хотите смотреть в корень, то читайте:
Speech Separation by Humans and Machines, Kluwer Academic Publishers, 2005
Young, S., A Review of Large-Vocabulary Continuous Speech Recognition, IEEE Signal
Processing Magazine
0
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
13.04.2013, 13:04 5
Цитата Сообщение от Vlad Pisatel Посмотреть сообщение
во мне тлеет мечта разработать программу, которая бы могла управлять системой при помощи человеческого голоса. Ну, это совсем глобально.
-Вашему вниманию предлагается комп с новой виндой, управляемой голосом и пока существующей в единственном экземпляре.
-Формат ц, двоеточие, слеш энте.
. Как система узнает, что команда произнесена именно легальным пользователем? Сопоставление голоса? Допустим. В криминалистике уже применяются такие алгоритмы и для них они достаточно надёжны. Но у подсистемы защиты другая задача. Может голос пользователя записан на плёнку? Может он учил другого пользователя, а потом его фразы вырваны из контекста? Надо убедиться в том, что команда дана легальным пользователем, здесь, в данный момент времени и он обращался не к соседнему компьютеру. Целесообразен вынос на голос отдельных функций приложения, но глобальное управление всей системой с голоса нельзя делать раньше, чем система пройдёт тест на интеллект. Или для машин, чьи микрофоны будут расположены в хорошо охраняемых местах и которые сами полностью контролируют всё воспроизведение звуков. Например, в кабине самолёта, чей ангар запирается, или в рубке корабля. А так диктовка текста, управление чатом без административных полномочий...

Добавлено через 3 минуты
Цитата Сообщение от Vlad Pisatel Посмотреть сообщение
Какие существуют алгоритмы сравнения
Для сопоставления голоса строй спектр, логарифмируй его и снова спектр, потом сравнение с эталоном. Это в общих чертах криминалистический алгоритм голосовой экспертизы, так что случайной реакции на голоса посторонних не должно быть даже при кривой реализации. Но это сравнение именно голосов, а не фраз.
0
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 28
13.04.2013, 13:37  [ТС] 6
taras atavin, Вы знаете, мечта - это мечта=) Я же в свою очередь сейчас просто спрашиваю о дикторозависимой системе распознавания 10-15 команд, которую я сам и обучу ( т.е. образ-пример голосов будет мой)

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

Добавлено через 37 секунд
Izobara, спасибо большое, а на русском есть что-то?)
Не то чтоб я не знал английского, но времени займет раза в 3 больше(

Добавлено через 1 минуту
taras atavin, кстати, а что вы скажете на то, чтобы система просила прочитать человека рандомную фразу? Это избавит от необходимости следить, не диктофон ли говорит)
0
СуперМодулятор
134 / 134 / 48
Регистрация: 03.11.2012
Сообщений: 974
13.04.2013, 13:44 7
Цитата Сообщение от Vlad Pisatel Посмотреть сообщение
на русском есть что-то?
Лично я не встречал. Это довольно серьезная тема, и боюсь, чего-то сколь-нибудь серьезного на русском Вы не найдете. Привыкайте читать на английском - мне понравилось

Добавлено через 1 минуту
Цитата Сообщение от Vlad Pisatel Посмотреть сообщение
прочитать человека рандомную фразу?
Орригинально... Правда, человек замучается, плюнет и начнет работать мышкой, по-старинке.
1
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 28
13.04.2013, 13:54  [ТС] 8
Izobara, фразой может стать день недели, время...что-то обыденное, а не hjksdk323Gjkkj=))))))
Легкий математический пример)
В общем, проблема авторизации откладывается в любом случает)
0
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
13.04.2013, 14:06 9
Цитата Сообщение от Vlad Pisatel Посмотреть сообщение
Разумеется, в перспективе, необходимо будет авторизовывать пользователя, но это явно не для меня сегодняшнего)
Речь не об авторизации, а о том, что постороннего вообще не должно быть рядом с микрофоном, чтоб диктофон не включил на воспроизведение. О том, что всё воспроизведение звука с диска должны конролировать сами компьютер и пользователь, всё ради тоже через компьютер, а магнитофона рядом быть вообще не должно. А авторизация может быть реализована с самого начала, это как раз проще, чем распознавание фраз.

Добавлено через 1 минуту
Либо выносить на голос только те команды, которые много не напортят. Либо сам компьютер должен быть разумен.
0
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 28
13.04.2013, 14:11  [ТС] 10
Проект J.A.R.V.I.S.?))
Пока все равно речь не о том=) А про "Музыка, стоп, интернет, который час" и т.д) Нужно с чего-то начать)
0
2014 / 1286 / 61
Регистрация: 05.06.2010
Сообщений: 2,213
13.04.2013, 14:48 11
Цитата Сообщение от Vlad Pisatel Посмотреть сообщение
а на русском есть что-то?
у меня есть небольшая подборка книг на русском, посвященная синтезу/распознаванию речи
Вокодерная_телефония_Пирогов
Коммерч_речевые_шифраторы.chm
Маркел_Грэй_Линейное_предсказ_речи.djvu
Мясников_Авт_распозн_звука.djvu
Назаров_Методы_цифр_обраб_речи.djvu
Пикон_Мет_Моделир_сигн_в_расп_речи.pdf
Потапова_Речевое_управление_роботом.djvu
Рабинер_Цифр_обраб_речи.djvu
Росляков_IP_Телефония.djvu
Сапожков_Вокодеры.djvu
Физиол_речи_Чистович.djvu
Фланаган_Анализ_синтез_и_воспр_речи.djvu
книги старые, но в плане алгоритмов с тех пор особо ничего не изменилось Если что понадобится обращайтесь, хотя все их можно найти в сети.

Добавлено через 23 минуты
и да, тут на форуме тоже отличная подборка: Литература по ЦОС и алгоритмам
1
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 28
13.04.2013, 15:45  [ТС] 12
vital792, Спасибо за список=)
Вообще скажите, стоит ли за это браться начинающему?)
0
СуперМодулятор
134 / 134 / 48
Регистрация: 03.11.2012
Сообщений: 974
13.04.2013, 16:18 13
Цитата Сообщение от Vlad Pisatel Посмотреть сообщение
стоит ли за это браться начинающему

Не по теме:

Если хотите покончить с программированием, то стоит...


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

Не по теме:

И не стесняйтесь использовать библиотеки. Ведь крыша поедет от объема работ.

0
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 28
13.04.2013, 17:07  [ТС] 14
Izobara, Честно говоря я тоже немного посматриваю в сторону распознавания изображений (контурный анализ)...там и openCV хорошая есть) И вообще жить проще...
0
117 / 116 / 8
Регистрация: 23.12.2012
Сообщений: 195
13.04.2013, 21:47 15
Цитата Сообщение от Vlad Pisatel Посмотреть сообщение
Вообще скажите, стоит ли за это браться начинающему?)
Мое мнение - не стоит. Особенно если нет серьезных познаний в области цифровой обработки сигналов и теории статистических решений. Как вы думаете, если всё так просто, то почему мы до сих пор вводим тексты с клавиатуры вместо того, чтобы их надиктовывать? А ведь корпорации тратят большие деньги на исследования в области распознавания речи.
0
59 / 58 / 7
Регистрация: 03.02.2013
Сообщений: 167
13.04.2013, 22:08 16
Цитата Сообщение от Izobara Посмотреть сообщение
Так после нескольких месяцев мучений я смотреть не мог на код.
Поидее, если заступорились, то стоило отложить проект до "лучших времен", или ненадолго попросту. Ведь умные люди советуют: "утро вечера мудренее..", и со временем пришл бы ответ, или новое решение проблемы, может не скоро, но всеже пришло.)

Цитата Сообщение от Nagdiel Посмотреть сообщение
Мое мнение - не стоит.
Ну каждому свое, надо ведь развиваться, интересоваться все новым и новым, а не выучить одно и медленно начинать деградировать.))

Цитата Сообщение от Nagdiel Посмотреть сообщение
А ведь корпорации тратят большие деньги на исследования в области распознавания речи.
вранье все это, хотели бы- сделали, ну или уже сделали, только не распространяются об этом, взять хотя бы Kinect - в нем вроде реализовано простое голосовое управление- читал просто где-то когда-то про это.)
0
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 28
13.04.2013, 22:13  [ТС] 17
Kins, С английским-то легче=) И Api от мелкомягких есть...и вообще тема у них актуальна. А вот с русским - провал(
0
59 / 58 / 7
Регистрация: 03.02.2013
Сообщений: 167
13.04.2013, 22:15 18
Цитата Сообщение от Vlad Pisatel Посмотреть сообщение
С английским-то легче=)
А в чем отличие звуков английского языка от русского? Я не про слова, а про звуки.
0
117 / 116 / 8
Регистрация: 23.12.2012
Сообщений: 195
13.04.2013, 22:40 19
Цитата Сообщение от Kins Посмотреть сообщение
Ну каждому свое, надо ведь развиваться, интересоваться все новым и новым,
Полностью поддерживаю! Я однако хотел сказать, что такие задачи с наскоку не решаются. Да и не очень понятно, какова цель ТС - то ли выучить С++, то ли разобраться с основами распознавания речи. Во всяком случае С++ не лучший выбор для исследования и разработки подобных алгоритмов (именно для разработки, а не для реализации), уж лучше тогда использовать matlab, в котором есть мощные библиотеки по ЦОС, ИНС, статистике и пр.

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

Цитата Сообщение от Kins Посмотреть сообщение
А в чем отличие звуков английского языка от русского? Я не про слова, а про звуки.
Сомневаюсь, что компьютеры речь по отдельным буквам (звукам) распознают. Алгоритм распознавания, как правило, обучают на специально подготовленных базах. И думается, что таких баз на английском языке гораздо больше, и их качество скорее всего лучше.

Добавлено через 3 минуты
А еще в английском языке семантика проще, поэтому легче верифицировать результаты распознавания отдельных слов в составе предложения.
0
59 / 58 / 7
Регистрация: 03.02.2013
Сообщений: 167
13.04.2013, 22:52 20
Цитата Сообщение от Nagdiel Посмотреть сообщение
эти вещи еще далеки от широкого практического использования.
Думаю, что разрабам не составило бы труда поменять включение/выключение освещения в доме с хлопка на слово "свет", да так скорее всего и было изначально, а во всем виновата лень, ибо хлопать легче, чем говорить.)


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

Добавлено через 6 минут
Голосовое управление контактами в сотовых телефонах, быстрый вызов, распознается по звукам, тоесть определенная последовательность звуков закрепляется за определенным контактом.
0
13.04.2013, 22:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.04.2013, 22:52
Помогаю со студенческими работами здесь

Голосовое управление
Привет всем. Захотелось создать прогу с голосовым управлением. Как?) не знаю как сделать, что бы...

Распознавание речи(+ команд)
привет!!) вопрос такой - при помощи чего можно распознавать речь, какие есть варианты?? интересует...

Голосовое управление. Активация записи
Здравствуйте! Хочу добавить в свой проект умного дома голосовое управление. Нужно несколько команд...

Голосовое управление операционной системой
Такой вопрос: можно ли сделать голосовое управление? например, грубо говоря, произносишь слово...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru