реклама на сайте
подробности

 
 
10 страниц V  « < 3 4 5 6 7 > »   
Reply to this topicStart new topic
> Voice recognition with AVR
Rst7
сообщение Oct 22 2008, 08:51
Сообщение #61


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Абсолютно прав.


Я бы, конечно, предпочел ответ от defunct'а. Но если так, то, видимо, DCT пролетает как фанера, из него нельзя получить спектр мощности.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
DRUID3
сообщение Oct 22 2008, 09:03
Сообщение #62


山伏
*****

Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294



Цитата(Rst7 @ Oct 22 2008, 11:51) *
Я бы, конечно, предпочел ответ от defunct'а. Но если так, то, видимо, DCT пролетает как фанера, из него нельзя получить спектр мощности.

biggrin.gif а зачем Вам спектр мощности? Вы сравниваете силу голоса? biggrin.gif

P.S.: аФФтара харош бредить, я признаю ваши(всех) заслуги в других областях, но вы очень сбиваете новичков такими "интеллектуальными забавами".

...частот от 400 до 2400 уже будет достаточно для распознавания (а распознавания команд и того уже). Женский и мужской голос разно тембрально окрашены внутри этого диапазона.

...FFT на 32 точки при 8 ksps распознает фонемы что-ли? 07.gif

...более-менее приемущества FFT при быстрой одномерной свертке ощущаются начиная с 128 отсчетов. На 32 выгоднее написать FIR в лоб, причем это и на asm элементарно.


--------------------
Нас помнят пока мы мешаем другим...
//--------------------------------------------------------
Хороший блатной - мертвый...
//--------------------------------------------------------
Нет старик, это те дроиды которых я ищу...
Go to the top of the page
 
+Quote Post
Petka
сообщение Oct 22 2008, 09:09
Сообщение #63


Профессионал
*****

Группа: Свой
Сообщений: 1 453
Регистрация: 23-08-05
Пользователь №: 7 886



Цитата(Rst7 @ Oct 22 2008, 12:51) *
Я бы, конечно, предпочел ответ от defunct'а. Но если так, то, видимо, DCT пролетает как фанера, из него нельзя получить спектр мощности.

Ну так категорично тоже нельзя =) Если немного применить мозг DCT тоже годится, только надо его "нетривиально использовать". Всё разжёвывать не буду, подскажу только идею: DCT пренобразовывает в базисы косинусов. т.е. не хватает только второй составляющей Фурье - синусов. Далее: sin(x) = cos(x - pi/2).
ИМХО всё-таки FFT получится проще и быстрее.
Go to the top of the page
 
+Quote Post
DRUID3
сообщение Oct 22 2008, 09:14
Сообщение #64


山伏
*****

Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294



Цитата(Petka @ Oct 22 2008, 12:09) *
Ну так категорично тоже нельзя =) Если немного применить мозг DCT тоже годится, только надо его "нетривиально использовать". Всё разжёвывать не буду, подскажу только идею: DCT пренобразовывает в базисы косинусов. т.е. не хватает только второй составляющей Фурье - синусов. Далее: sin(x) = cos(x - pi/2).
ИМХО всё-таки FFT получится проще и быстрее.

Можно еще думать так "если FCT однозначное преобразование временного ряда, и мы знаем как во временнОй области получить мощность можем ли мы описАть переход его в область косинусного разложения?"


--------------------
Нас помнят пока мы мешаем другим...
//--------------------------------------------------------
Хороший блатной - мертвый...
//--------------------------------------------------------
Нет старик, это те дроиды которых я ищу...
Go to the top of the page
 
+Quote Post
Rst7
сообщение Oct 22 2008, 09:45
Сообщение #65


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
а зачем Вам спектр мощности?


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

Давайте все-же подождем defunct'а, пусть он уточнит данные моменты.

Цитата
...частот от 400 до 2400 уже будет достаточно для распознавания (а распознавания команд и того уже).


А возражений и нет. Только у нас границы 50-1600...

Цитата
Ну так категорично тоже нельзя =)

Можно. Как Вы себе видите получить вторую половину спектра? Ту, которая синусная.

Цитата
Можно еще думать так "если FCT однозначное преобразование временного ряда, и мы знаем как во временнОй области получить мощность можем ли мы описАть переход его в область косинусного разложения?"


Думать можно что угодно. Вопрос в том, будет ли это оптимальной реализацией?


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
defunct
сообщение Oct 22 2008, 15:38
Сообщение #66


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(Rst7 @ Oct 22 2008, 11:09) *
Слушайте, а мы наверное один момент упустили. После FFT надо получить мощности на каждой частоте, т.е. sqrt(I*I+Q*Q), я прав?

Обязательно! Только я не думаю, что мы упустили этот момент, это предполагалось как само собой разумеющееся.

Цитата
Но если так, то, видимо, DCT пролетает как фанера, из него нельзя получить спектр мощности.

Не совсем, просто это отразится на методе сравнения - придется подстроиться под попугаи.

Цитата(DRUID3 @ Oct 22 2008, 11:17) *
Я тоже занимался таким-же(искал корреляцию через RealFFT), но совсем не так! 07.gif И что-то мне подсказывает - Вы не на верном пути...

Ничего удивительного, что разные люди используют разные методы.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Oct 22 2008, 15:51
Сообщение #67


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Не совсем, просто это отразится на методе сравнения


Вот боюсь что хреново будет. Ведь длинна вектора (мощность спектральной составляющей) после DFT не зависит от сдвига фазы этой составляющей (ну почти), а в DCT этого нет... А значит все поломается.

Но то фигня. Я почти сделал быстрый Хартли - то что доктор прописал - никаких мнимых чисел. Завтра доделаю, посмотрим по тактам. Кстати, DCT я дооптимайзил до "меньше 3000", и это еще не конец.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 22 2008, 19:23
Сообщение #68


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Можно я еще встряну ? Вы о каких герцах говорите, о звуке или о частоте преобразования ? Кодек на 8кгц дает полосу до 3кгц, но у него _встроенный_крутой_ фильтр. Если делать то же самое, но на рассыпухе и иметь на входе 1,6кгц, то частота преобразования может оказаться даже выше 8кгц, если не сказать намного выше. И кроме того, пусть высокий женский голос, максимум - 1кгц, но в речи присутсвуют шипящие, звенящие и разные другие звуки, и если урезать полосу ниже 3кгц, скажем пусть 1.6, я думаю, все эти звуки будут сильно искажены. И результат тоже.
Если же быстродействия для обработки 8 килосэмплов не хватит (как на практике показали выше, AVR должна работать в 10 раз быстрее BF ))))) ) можно разделить обработку на несколько корпусов, не в смысле параллельно, а в смысле последователно - в одном, например, делать FFT, в другом искать фонемы, в третьем искать команды. А четвертый будет уже лампочку включать.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Oct 23 2008, 10:22
Сообщение #69


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Можно я еще встряну ?


Конечно нельзя, что за вопрос! Шютка wink.gif

Теперь по теме. Сделал я БПХ необходимого размера. 1948 тактов, 1648 байт кода. Что дальше делаем? Получение спектра мощности, его нормирование и поиск ближайшего в заранее заготовленных?

Кстати, для мощности ведь будет только 16 значений, а не 32.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
defunct
сообщение Oct 23 2008, 11:16
Сообщение #70


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(Rst7 @ Oct 23 2008, 13:22) *
Теперь по теме. Сделал я БПХ необходимого размера. 1948 тактов, 1648 байт кода. Что дальше делаем? Получение спектра мощности, его нормирование и поиск ближайшего в заранее заготовленных?

Да, в заренее заготовленные кстати не забываем положить спектр белого шума, спектр тишины.

Цитата
Кстати, для мощности ведь будет только 16 значений, а не 32.

15 - нижнюю полосу спектра (постоянная составляющая и 50hz фон) можно сразу выбросить.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Oct 23 2008, 11:38
Сообщение #71


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Да, в заренее заготовленные кстати не забываем положить спектр белого шума, спектр тишины.


все мощности равны максимальной? wink.gif

Цитата
15


Да, конечно, эта полоса нас не интересует.

Ну и поделитесь уже заготовками (в смысле, готовыми образцовыми спектрами)...


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 23 2008, 11:42
Сообщение #72


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



А как нормировать по частоте и ширине спектра ? Ведь для разных людей (да и для одного тоже) "несущая" высота голоса гуляет. Т.е. сравнивать, по-сути, нужно не спектры, а подобие форм спектров. Задачка.

зы: вспомнил кое-что из буйной молодости. БПФ можно делать не на синусах, а на меандре, т.о. умножения заменяются на сложения/вычитания. ДПФ, по всей видимости, тоже. И это будет выигрыш на порядок. На тот, который проиграли перед этим.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Oct 23 2008, 12:01
Сообщение #73


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
И это будет выигрыш на порядок.


Ну покажите мастерство. 2000 тактов в Вашем распоряжении. Итого, мы хотим увидеть 200.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Rst7
сообщение Oct 23 2008, 13:19
Сообщение #74


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Ну что, вычисление мощностей с нормированием - это плюс 3200 тактов. Там, конечно, можно с бубном поплясать, но особо меньше не будет.

Итого пока 5200 тактов. На очереди - сравнение.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 23 2008, 13:38
Сообщение #75


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Цитата(Rst7 @ Oct 23 2008, 12:01) *
Ну покажите мастерство. 2000 тактов в Вашем распоряжении. Итого, мы хотим увидеть 200.

Ну эта...я пока еще за вами подсматриваю - самому становиться Александром Матросовым что-то не очень хочется.
А если по существу, тема в общем, мне интересная, но как я уже говорил, сначала хотелось бы видеть задчау решенной, а только после заниматься оптимизацией, в т.ч. загонять такты в AVR. Или еще куда.
А пока вот выкопал из хлама микрофон, нашел рабочие исходники для С# по работе с wavein/waveout (для Delphi я сам когда-то написал, спектроанализатор в т.ч., но Delphi сейчас нет, а переписывать было лениво) - жду когда здесь что-то вменяемое появится, чтобы помоделировать.
Go to the top of the page
 
+Quote Post

10 страниц V  « < 3 4 5 6 7 > » 
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 04:02
Рейтинг@Mail.ru


Страница сгенерированна за 0.01496 секунд с 7
ELECTRONIX ©2004-2016