Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры Atmega AVR
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.86/87: Рейтинг темы: голосов - 87, средняя оценка - 4.86
komtrottir
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 500
1

Распознавание речи

15.08.2011, 11:42. Просмотров 15997. Ответов 23
Метки нет (Все метки)

Можно ли микроконтроллером авр распознавать речь? Хотя бы одно слово.
В интернете ничего вменяемого не нашел.
Теорию читал немного, достаточно сложная.
Может быть есть несложные методы? (нейроные сети не предлагать)
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.08.2011, 11:42
Ответы с готовыми решениями:

Распознавание RFID
Доброго времени суток! Делаю один девайс, в котором нужно считывать RFID карты (125 кгц),...

UART Распознавание букв
Всем привет, возможно название темы звучит очень не красиво,но мне надо сделать так,чтоб...

Распознавание DTMF в MSP430
Распознавая DТМFпосылки, декодер передаёт в микроконтроллер DA2 четырёхразрядные двоичные коды...

Распознавание речи
Пожалуйста помогите как распознавать звук в языке VB_6.0. У меня курсовая работа срок до...

Распознавание речи
Привет. Есть такой вопрос: Прикручиваю к своему приложению на андроид (Xamarin.Forms)...

23
Skytymi
0 / 0 / 0
Регистрация: 16.01.2011
Сообщений: 27
15.08.2011, 11:53 2
Посмотрите здесь: http://roboforum.ru/wiki/%D0%A1%D0%B8%D ... 0%B8%D1%8F
0
vtodmyk
0 / 0 / 0
Регистрация: 20.01.2011
Сообщений: 142
15.08.2011, 12:02 3
Чисто теоретически. Оцифровываешь речь, сравниваешь с шаблоном в памяти, 60 % совпадает - оно, это слово. Нет - ждёшь(цифруешь) дальше. А если хочешь фонемный, формантный, тембровый анализ и синтез, то мощности маловато будет, да и книг много надо перечитать, у меня где-то лежат(штук двадцать, каждая размером с энциклопедию)
Если попроще то - http://www.ie.tusur.ru/books/COI/page_43.htm
0
Bokris
0 / 0 / 0
Регистрация: 27.08.2010
Сообщений: 77
15.08.2011, 12:07 4
Цитата Сообщение от komtrottir
Можно ли микроконтроллером авр распознавать речь?
Можно. Но это одна из тех аЦких задач, которые нужно обходить стороной.
Гораздо проще сделать управление хлопками.
0
swk
0 / 0 / 0
Регистрация: 22.10.2015
15.08.2011, 12:19 5
Цитата Сообщение от komtrottir
Можно ли микроконтроллером авр распознавать речь? Хотя бы одно слово.
Сложно. Речь - штука нестабильная, одно и то же слово один и тот же человек может произносить по разному. Меняется темп, тембр, громкость, акценты... Даже на больших компьютерах большинство программ распознавания речи требуют предварительной "калибровки" словаря под конкретного человека наговором тестовых слов, и в дальнейшем произнесения их в той же манере. Хотя опыты идут давно, еще с 60х годов... А году в 94-95 даже в операционной системе OS/2 v4 WARP, появившейся незадолго до WIN-95, и имевшей похожий графический многооконный интерфейс, был встроен модуль раснознавания речи с базовым словарем не то 400, не то 600 слов... Естественно, аглицкого... У нас на работе пацаны с ним баловались. Но общее впечатление - ненужная игрушка. Проще ткнуть мышкой куда надо, чем обьяснять это определенными словами, наговаривая команды, имена файлов, пути... Да и ошибок много.

Конечно, сделать определение нескольких резко отличающихся слов, типа "Стоп", "Пуск", "Вперед", "Назад", "Влево", "Вправо", можно достаточно простыми (относительно) средствами, но с увеличением их количества сложность программы будет расти в квадрате, а то и в кубе, из за усложнения способов распознавания.
0
komtrottir
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 500
15.08.2011, 12:23 6
На компьютере не интересно.
Весь смак сделать на МК.
Типа включить свет/выключить свет
0
swk
0 / 0 / 0
Регистрация: 22.10.2015
15.08.2011, 12:32 7
Цитата Сообщение от komtrottir
На компьютере не интересно. Весь смак сделать на МК.
Типа включить свет/выключить свет
Можно использовать сдвоенный свисток с разными частотами... Или брелок с радио или ИК управлением... В ладоши хлопать, пальцами щелкать, ногой топать, лазер использовать, ультразвук, датчики движения (присутствия)...
0
Skytymi
0 / 0 / 0
Регистрация: 16.01.2011
Сообщений: 27
15.08.2011, 12:54 8
Цитата Сообщение от komtrottir
Типа включить свет/выключить свет
Вот хорошая статья про включение/выключение света, правда по хлопку!
http://avrproject.ru/publ/sounds_detector/1-1-0-8
0
Ipyssop
0 / 0 / 0
Регистрация: 18.03.2011
Сообщений: 15
15.08.2011, 22:36 9
Я видел решение на mego32 вроде. Там реализован FFT. Хотя преобразование фурье и не сильно подходит для такой задачи, но несколько слов понимает как разные. А разложить фурье еще и по времени не хватит ресурсов, но это было бы куда эффективнее.
0
swk
0 / 0 / 0
Регистрация: 22.10.2015
15.08.2011, 22:57 10
Цитата Сообщение от Ipyssop
Я видел решение на mego32 вроде. Там реализован FFT. Хотя преобразование фурье и не сильно подходит для такой задачи, но несколько слов понимает как разные. А разложить фурье еще и по времени не хватит ресурсов, но это было бы куда эффективнее.
Гораздо проще, думаю, использовать что-нибудь вроде анализатора спектра, что во многих плэерах используется. Выделять огибающую спектра и ее уже анализировать. Можно также сделать несколько "слепков" спектра, например, с периодом в полсекунды. Это резко уменьшит обьем обрабатываемой и хранимой информации, особенно если поддержать контроллер готовыми микросхемами спектроанализаторов, вроде BA3834F (или получше):
<ul>BA3834F - семиполосный фильтр японской корпорации ROHM. BA3834F имеет семь полосовых фильтров: 68 Гц, 170 Гц, 420 Гц, 1000 Гц, 2400 Гц, 5900 Гц, 14400 Гц. </ul>
Вот например простой вариант использования такой микросхемы: http://www.labkit.ru/html/show_meter?id=253
[135.33 Кб]
0
Ipyssop
0 / 0 / 0
Регистрация: 18.03.2011
Сообщений: 15
15.08.2011, 23:06 11
Цитата Сообщение от SWK
Гораздо проще, думаю, использовать что-нибудь вроде анализатора спектра, что во многих плэерах используется.
FFT и есть по сути спектр, только Вы предлагаете сделать аппаратный FFT, что конечно будет менее нагружать МК.
0
Ymk
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,233
15.08.2011, 23:07 12
не очень четко распознавать пару-тройку слов, сказанных одним человеком (при одинаковой скорости и интонации) - вполне можно. а вот просто так фурье вам ничего не даст - попробуйте провести опыты на большом брате, любой звуковой редактор позволяет записывать с микрофона и строить фурье или сонограмму (развертка фурье во времени).
0
Ipyssop
0 / 0 / 0
Регистрация: 18.03.2011
Сообщений: 15
15.08.2011, 23:15 13
И если делать разложения спектра во времени, то до 4khz. Выше для речи смысла нет.
0
swk
0 / 0 / 0
Регистрация: 22.10.2015
15.08.2011, 23:20 14
Потому и сложно, что чем лучше нужно распознавание, тем больше параметров надо анализировать... В идеале - выделять фонемы, а то и отдельные буквы. Но например в том же английском - произношение слов весьма далеко от их написания...
Для небольшого же обьема (порядка ~10 фиксированных слов), проще запоминать, хранить, и сравнивать, их упрощенные образы, типа спектральных гистограмм, или усредненной огибающей амплитудных отсчетов. С дискретностью значений, например, 0,1 - 0,5 сек.
0
Ipyssop
0 / 0 / 0
Регистрация: 18.03.2011
Сообщений: 15
15.08.2011, 23:54 15
Цитата Сообщение от SWK
Потому и сложно, что чем лучше нужно распознавание, тем больше параметров надо анализировать... В идеале - выделять фонемы, а то и отдельные буквы. Но например в том же английском - произношение слов весьма далеко от их написания...
Для небольшого же обьема (порядка ~10 фиксированных слов), проще запоминать, хранить, и сравнивать, их упрощенные образы, типа спектральных гистограмм, или усредненной огибающей амплитудных отсчетов. С дискретностью значений, например, 0,1 - 0,5 сек.
Нужно понимать что это AVR.
Для всего что Вы перечислили идеально подойдет DSP, но никак не avr.
Все помнят времена zx80. Так вот даже там был проект по распознаванию речи. Достаточно поднять номера ZX-Review и найти. Правда там прямой доступ к 48к памяти, что существенно облегчает жизнь.
Если извратиться, то можно реализовать на Nом значении полосовых фильтров во времени. Вот реализация полосовых фильтров на тиньке http://we.iosyitistromyss.ru/Soft/prostoy-polosovoy-filtr.html
0
komtrottir
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 500
15.08.2011, 23:56 16
Задача, как я понял, не подьемная.
0
Ipyssop
0 / 0 / 0
Регистрация: 18.03.2011
Сообщений: 15
15.08.2011, 23:59 17
Цитата Сообщение от komtrottir
Задача, как я понял, не подьемная.
Ну почему же
Вот готовое http://instruct1.cit.cornell.edu/cou...s34/index.html
0
komtrottir
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 500
16.08.2011, 00:03 18
Цитата Сообщение от Ipyssop
Ссылка интересная, но к сожалению все на англицком.
0
Ipyssop
0 / 0 / 0
Регистрация: 18.03.2011
Сообщений: 15
16.08.2011, 00:05 19
Цитата Сообщение от komtrottir
Цитата Сообщение от Ipyssop
Ссылка интересная, но к сожалению все на англицком.
а так?)) http://translate.google.ru/translate...4%2Findex.html
0
dsodir
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 4,284
16.08.2011, 00:08 20
ААА-ААА!!! "Распознавание голоса роботов автомобилей" и далее по тексту :)
0
16.08.2011, 00:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.08.2011, 00:08

Распознавание речи
Понадобилась прога по сабжу. По указанным ссылка на ifolder скачать прогу не удалось(( У кого...

Распознавание речи
Добрый день. При компиляции возникает такая ошибка https://ibb.co/n8VOW6 . Код: using System;...

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


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru