Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

VAD(Обнаружение Активности Голоса)   Найти похожие ветки 

 
han_malign   (2012-04-06 08:58) [0]

Вопрос на засыпку - будет ли VAD заточенный под 8 КГц(G.729B) без изменений работать для 16 КГц? Или там какие нибудь завязки на спектр вылезут???


 
sniknik ©   (2012-04-06 09:19) [1]

ответ на рассыпку - а проверить?


 
han_malign   (2012-04-06 09:40) [2]


> а проверить?

- угу, потратить день на выдирание из кодека, и пару месяцев на накопление статистики по коллизиям детектирования...
Это мне и без ваших советов сделать придется(за неимением более простых альтернатив, т.к. простейшее СКО - после АРУ - бесполезно).

Меня больше "теория" интересует.


 
Jeer ©   (2012-04-06 10:08) [3]


> будет ли VAD заточенный под 8 КГц(G.729B) без изменений
> работать для 16 КГц?


Не будет. "Полетят" коэффициенты, да и банки фильтров другой д.б.
Для распознавания голоса закладывается его модель:
первая форманта 150..200 Гц + гармоники, а, так называемый unvoice speach: 3..8 кHz

http://www.iwaenc.org/proceedings/2008/contents/papers/9019.pdf


 
Вариант   (2012-04-06 12:56) [4]


> han_malign   (06.04.12 08:58)


А теперь перевернем задачу. Как быстро из 16 кГц сделать 8 кГц?


 
Труп Васи Доброго ©   (2012-04-10 16:51) [5]


> А теперь перевернем задачу. Как быстро из 16 кГц сделать
> 8 кГц?
>
>

Опередил! И я хотел спросить - сделать 8 из 16 религия запрещает?


 
Pavia ©   (2012-04-10 19:52) [6]

Из 16кгц в 8Кгц легко, удаляем каждый второй.  Обратно вставляем среднее между двумя отсчётами.


 
Inovet ©   (2012-04-10 19:59) [7]

> [6] Pavia ©   (10.04.12 19:52)
> Из 16кгц в 8Кгц легко, удаляем каждый второй.  Обратно вставляем
> среднее между двумя отсчётами.

А время куда денется?


 
Jeer ©   (2012-04-10 20:31) [8]


> Pavia ©   (10.04.12 19:52) [6]
>
> Из 16кгц в 8Кгц легко, удаляем каждый второй.  Обратно вставляем
> среднее между двумя отсчётами.


Если совсем примитивно и топорно - сойдет. :)


 
Pavia ©   (2012-04-10 20:44) [9]


> Если совсем примитивно и топорно - сойдет. :)

А слобо доказать что топорно?


 
Jeer ©   (2012-04-10 21:08) [10]

Не "слобо".

Децимация:
Наличие в исходном сигнале частот, превышающих частоту Найквиста (теорема Котельникова) для пониженной частоты дискретизации неизбежно вызовет наложение ( aliasing ).

Чтобы этого избежать, необходимо пред-обрабатывать сигнал соответствующим ФНЧ.

Интерполяция:

Стандартный алгоритм интерполяции (передискретизации)  в целое число раз для сигналов online - вставка нулевых отсчетов, затем использование ФНЧ для удаления спектра, изначально не существовавшего в исходном сигнале.

Если есть возможность задержки сигнала, то можно использовать общеизвестные приемы интерполяции, в т.ч. линейной.


 
Jeer ©   (2012-04-10 21:13) [11]

Как поступают на практике, к примеру с использованием CIC-фильтров, можно посмотреть здесь:
http://www.dsplib.ru/content/cicid/cicid.html


 
Pavia ©   (2012-04-10 21:38) [12]

Извиняюсь, сразу не признал.


 
Jeer ©   (2012-04-10 21:38) [13]

Ну и еще, вдогонку..

Пример линейной интерполяции сигнала синус
http://s017.radikal.ru/i407/1204/f7/dca7837b063c.jpg

Пример интерполяции оконной функцией sin(x)/x сигнала синус
http://s017.radikal.ru/i420/1204/2d/be5b0e25671d.jpg


 
Inovet ©   (2012-04-10 22:55) [14]

> [10] Jeer ©   (10.04.12 21:08)
> Стандартный алгоритм интерполяции (передискретизации)  в
> целое число раз для сигналов online - вставка нулевых отсчетов,
> затем использование ФНЧ для удаления спектра, изначально
> не существовавшего в исходном сигнале.

Есть такие микросхемы, давно уже лет 20 наверное, где коеффициенты аппаратно заданы и аппаратные умножители на них умножают на глубину в несколько семплов в обе стороны. В CD плеерах применялись для удвоения-учетверения частоты, чтобы аналоговый фильтр с более пологой характеристикой на выходе ЦАП ставить и соответсвенно уменьшать искажения.

Так всё-таки, в сабже растянули спектр в 2 раза, и время в 2 раза изменилось. Или это не важно для сабжа, всмысле там не поток?


 
Inovet ©   (2012-04-10 22:56) [15]

> [14] Inovet ©   (10.04.12 22:55)
> частоты

дискретизации


 
Труп Васи Доброго ©   (2012-04-10 23:42) [16]


> Так всё-таки, в сабже растянули спектр в 2 раза, и время
> в 2 раза изменилось. Или это не важно для сабжа, всмысле
> там не поток?

??? Варум камрад? Время осталось неизменным и спектр никуда не растянулся. Просто исчезнут ненужные верхние частоты, которые для 8кГц девайса/софтины и так были лишними (он их и не видел).


 
Inovet ©   (2012-04-10 23:48) [17]

> [16] Труп Васи Доброго ©   (10.04.12 23:42)
> ??? Варум камрад? Время осталось неизменным и спектр никуда
> не растянулся.

А, так как раз частоту квантования снизили? Ну тгда ФНЧ сначала надо бы, как уже сказал Jeer.


 
Труп Васи Доброго ©   (2012-04-11 11:32) [18]


> Ну тгда ФНЧ сначала надо бы

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


 
Inovet ©   (2012-04-11 11:37) [19]

> [18] Труп Васи Доброго ©   (11.04.12 11:32)
> На кой? Девайс физически не сможет "воспринять" высокие
> частоты, так зачем их предварительно убирать?

Они станут уже не высокими.


 
Труп Васи Доброго ©   (2012-04-11 12:05) [20]


> Они станут уже не высокими.

Кто они? И как эти они станут низкими??? Дискретизация вносит высокочастотные  искажения, а низкие частоты живут вполне спокойно. В телефонных линиях полоса всего 3кГц, значит для нормальной передачи сигнала частоты дискретизации  6кГц уже хватит, а 8 кГц это с запасом. А тут даже передавать не надо, а только определить наличие. Наличие определяется в 90% случаев как раз по наличию низкой частоты основного тона (от 60-70 до 500-600 Гц), а все высокочастотные помехи не должны восприниматься вообще.


 
Inovet ©   (2012-04-11 12:27) [21]

> [20] Труп Васи Доброго ©   (11.04.12 12:05)

В условии не сказано, что спектр ограничен сверху частотой 4 кГц для 16 кГц квантования, а как раз наоборот.


 
Jeer ©   (2012-04-11 14:31) [22]


> а все высокочастотные помехи не должны восприниматься вообще.


Иди кури теорему Котельникова.


 
Труп Васи Доброго ©   (2012-04-11 15:13) [23]


> Иди кури теорему Котельникова.

Иногда лучше жевать, чем говорить/писать


 
Jeer ©   (2012-04-11 17:39) [24]


> Труп Васи Доброго ©   (11.04.12 15:13) [23]


Да я тебе не мешаю, иди и займи рот чем-нибудь.


 
Труп Васи Доброго ©   (2012-04-12 00:57) [25]


> Jeer ©  

Не говори что мне делать и я не скажу куда тебе идти.
З.Ы. Я ещё много афоризмов знаю. Все рассказать? Ты высказал безосновательное предложение, я продолжил тему. Ты скажи где в моих словах было нарушение теоремы Котельникова, а потом сам попробуй её понять.


 
han_malign   (2012-04-12 08:59) [26]


> Ты скажи где в моих словах было нарушение теоремы Котельникова,
>  а потом сам попробуй её понять.


1 2 3 4 5 6 7 8 9 A B
---------------------
   .     .     .

  * *   * *   * *   *


     
*     *     *     *
---------------------
1   3   5   7   9   B
---------------------
   .     .     .

  . *   * .   . *   *


     
*     .     *     .
---------------------

sapienti sat


 
Труп Васи Доброго ©   (2012-04-12 09:18) [27]


> han_malign

Ну, я об этом и говорил, что выбрасывание каждой второй точки внесёт искажение в высокочастотные составляющие сигнала, всё правильно.
Высокочастотные составляющие в данной задаче являются ненужным шумом, (девайс априори на высокие частоты не настроен) и искажение шума никак не помешает работе девайса. Низкая частота (основной тон голоса и первые форманты), по которым и срабатывает VAD никак не пострадают, ибо их частоты гораздо ниже 4 кГц (верхняя граница по теореме Котельникова при 8 кГц).
И что не так?


 
Inovet ©   (2012-04-12 09:48) [28]

> [27] Труп Васи Доброго ©   (12.04.12 09:18)
> что выбрасывание каждой второй точки внесёт искажение в
> высокочастотные составляющие сигнала

Так какие искажения? А не простые, а очень даже некошерные, которые без предварительного обрезания как раз помешают распознавателю. Поправтье, если не так: верхняя половина спектра зеркально отразится на нижнюю относительно 4 кГц.


 
Inovet ©   (2012-04-12 09:55) [29]

> [28] Inovet ©   (12.04.12 09:48)
> зеркально

нет, не зеркально всё-таки, но отразится.


 
Труп Васи Доброго ©   (2012-04-12 10:20) [30]

Вот ты упрямый!
Скажи какая разница - оцифровать сигнал с чстотой 8 кГц или 16 кГц, а потом выбросить все чётные остчёты? Никакой разницы нет, результат будет ОДИНАКОВЫЙ!!! Это и требовалось доказать. Девайс получит тот сигнал, на какой он и расчитан. Дальше его работа.
А все эти искажения спектра от оцифровки - шум! Понимаешь что это такое? Высокочастотный шум от голоса отделяется элементарно, даже слишком элементарно. И это опять же работа девайса.
Вопрос был про то как засунуть 16 кГц в девайс, рассчитанный на 8 кГц, ответ - сделать из 16 8 путём "прореживания".


 
Inovet ©   (2012-04-12 10:35) [31]

> [30] Труп Васи Доброго ©   (12.04.12 10:20)
> оцифровать сигнал с чстотой 8 кГц или 16 кГц

Хорошо. Какая полоса у оцифровываемого сигнала в том и в другом случае?


 
Труп Васи Доброго ©   (2012-04-12 10:55) [32]

Спектр исходного сигнала не зависит от способа его регистрации и оцифровки.
Нарисуй в тетради в клеточку две одинаковых синусоиды одна над другой.
Это исходный сигнал. Теперь отметь на верхней синусоиде точки пересечения с каждой вертикальной линией, а на нижней - через одну. Потом на верхней синусоиде сотри резинкой каждую чётную точку. У тебя получится тот же результат, что и внизу. Если ты всё сделал правильно, но получил разные результаты - немедленно садись за докторскую диссертацию.


 
Pavia ©   (2012-04-12 10:56) [33]

Сделал небольшой эксперимент. Считаю считаю, что вторая картинка наиболее корректная.

http://postimage.org/image/bmc2m2x0r/


 
Inovet ©   (2012-04-12 11:03) [34]

> [33] Pavia ©   (12.04.12 10:56)
> вторая картинка наиболее корректная.

А если бы взял не среднее между двумя соседними, а между несколькими соедними каждый со своим коэффициентом, то была бы ещё лучше. И то и другое - суть ФНЧ.


 
Inovet ©   (2012-04-12 11:07) [35]

> [32] Труп Васи Доброго ©   (12.04.12 10:55)

Период какой у этой синусоиды в тетрадке? Больше или меньше 4-х клеток? Меньше наверняка. нарисуй ещё одну у которой между 2-4.


 
Pavia ©   (2012-04-12 11:08) [36]


> Если ты всё сделал правильно, но получил разные результаты
> - немедленно садись за докторскую диссертацию.

Мне рисовать лень взял из книги А.Б. Сергиенко
http://postimage.org/image/51fdsz0z9/


 
Труп Васи Доброго ©   (2012-04-12 11:45) [37]


> Период какой у этой синусоиды в тетрадке? Больше или меньше
> 4-х клеток? Меньше наверняка. нарисуй ещё одну у которой
> между 2-4.

Да какая разница???? Исходные редкие и "прореженные" точки будут СОВПАДАТЬ ибо в один и тот же момент времени уровень сигнала будет ТОТ ЖЕ.
Ты нарисуй, сделай как я сказал и сравни - результат будет ОДИНАКОВЫЙ.


 
Inovet ©   (2012-04-12 11:57) [38]

> [37] Труп Васи Доброго ©   (12.04.12 11:45)
> сигнала будет ТОТ ЖЕ.

Мы о разном говорим? Как он может быть тот же.


 
Труп Васи Доброго ©   (2012-04-12 12:09) [39]


> Мы о разном говорим?

Вот и мне непонятно чего ты рогом упёрся. Я сказал что при оцифровке сигнала (любого) что при частоте дискретизации 8 кГц, что при 16 кГц (и последующем прореживании через один) получим один и тот же массив чисел. Потому что частоты дискретизации кратны друг другу. (не поленись, нарисуй и сам убедишься.)


 
Inovet ©   (2012-04-12 12:32) [40]

> [39] Труп Васи Доброго ©   (12.04.12 12:09)
> Я сказал что при оцифровке сигнала (любого) что при частоте
> дискретизации 8 кГц, что при 16 кГц (и последующем прореживании
> через один) получим один и тот же массив чисел.

Вот в этом ты ошибаешься. Не любого, нельзя оцифровывать сигнал со спектром шире 1/2 частоты модуляции. Оно, конечно, можно так сделать по какой-либо специфической надобности, но получатся искадения, тогда да - одинакого. Но у нас в сабже не тот случай.


 
Труп Васи Доброго ©   (2012-04-12 13:18) [41]


> Вот в этом ты ошибаешься. Не любого, нельзя оцифровывать
> сигнал со спектром шире 1/2 частоты модуляции. Оно, конечно,
>  можно так сделать по какой-либо специфической надобности,
>  но получатся искадения, тогда да - одинакого. Но у нас
> в сабже не тот случай.

Вот что значит "усраться, но не поддаться". В одной фразе ты говоришь, что я ошибаюсь, а потом подтверждаешь что я прав. Но всё-же намекаешь на какой-то иной случай.
Какой иной??? Давайс по умолчанию должен получать отсчёты с частотой 8 кГц. Имеются отсчёты исходного сигнала сделанные с частотой 16 кГц. Был вопрос - может ли девайс правильно работать с таким сигналом? Было предложено сделать из имеющегося, слишком частого, набора отсчётов такой, котрый был бы для девайса родным. Это делается простым удалением всех чётных отсчётов. Всё - задача решена. Девайс получил то, на что он расчитан.
И нет никакой разницы как получен конечный набор отсчётов, сделан изначально с заданной частотой или был получен путём прореживания удвоенной частоты. Набор данных будет одинаковым, независимо от того, какая частота была у исходного сигнала.
С чем ты тут не согласен я так и не понял. Ты хочешь доказать что наборы данных (1,3,5,7,9) и (1,2,3,4,5,6,7,8,9) - (2,4,6,8)=(1,3,5,7,9) не одинаковы?


 
Inovet ©   (2012-04-12 13:46) [42]

> [41] Труп Васи Доброго ©   (12.04.12 13:18)

Я тебе объясняю всю ветку, что 16 сделано не с потолка, значит надо было, значит там есть частоты выше 4, до 8. А раз есть, то будет НЕ однинаково в сравнении с изначально сделанным в 8, в котором их нет. Чтобы получить одинаково надо делать прореживание, потом ФНЧ - вот после этого будет одинаково с точностью до погрешностей. Ты же утверждаешь, что ФНЧ ничего не изменит, а это неверно при исходных условиях, озвученных в первом предложении этого и поста и ранее.

Так как ты предложил оцифровывать никто не делает.


 
Труп Васи Доброго ©   (2012-04-12 14:07) [43]


> 16 сделано не с потолка, значит надо было, значит там есть
> частоты выше 4, до 8.

Сдаюсь! Ты не видишь то, что написано и видишь то, чего нет.
Вот что было в начале.

> han_malign   (06.04.12 08:58) 
> Вопрос на засыпку - будет ли VAD заточенный под 8 КГц(G.
> 729B) без изменений работать для 16 КГц? Или там какие нибудь
> завязки на спектр вылезут???

Ты не видишь слова "заточенный под 8 КГц", не видишь "VAD", что предполагает обработку ГОЛОСА, а не писка дельфинов. Ты похоже явно не знаешь что в детектировании голоса не нужны частоты выше 4 кГц (и заточка девайса именно под 8 кГц это подтверждает), или знаешь, но хочешь доказать что-то своё. СДАЮСЬ!!!


 
Jeer ©   (2012-04-12 15:02) [44]


> не нужны частоты выше 4 кГц


"Не нужны" и "их там нет" - вот и принципиальная разница.

> СДАЮСЬ!!!


Принято.


 
Труп Васи Доброго ©   (2012-04-12 15:21) [45]


> Не нужны" и "их там нет" - вот и принципиальная разница.

Ещё один! Да где я сказал что высоких частот нет???? Я всегда говорил что они НЕ НУЖНЫ, поэтому заботиться о их сохранности глупо, ибо они в любом случае обрежутся девайсом.


 
han_malign   (2012-04-12 15:25) [46]


> (не поленись, нарисуй и сам убедишься.)

- я не поленился и нарисовал - han_malign [26], специально оставив метки времени, вместо номеров отсчета(то есть сохранив масштаб абсолютного времени)...

- и там четко видно, что на интервале времени [1..7] - после прореживания -  вместо двух волн - одна, причем той же формы размывания и с той же амплитудой...
(для особо непонятливых - засечки сигнала на частоте дискретизации отмечены символом "*", точками(.) отмечен исходный сигнал(будем считать его синусоидой))
И заметь(те) - никаких "высокочастотных  искажений" - один чистый гармонический сигнал - превратился в другой чистый гармонический сигнал...

> а не писка дельфинов

- и - как бы... - так получается, что писк дельфинов превратится во вполне себе сопрано...


 
Jeer ©   (2012-04-12 15:30) [47]


> Ещё один!


Не один, а главный :)


> И заметь(те) - никаких "высокочастотных  искажений" - один
> чистый гармонический сигнал - превратился в другой чистый
> гармонический сигнал...


Ну да, постоянный уровень 5 вольт тоже превратится в те же 5 В.

Но, вот незадача - в жизни нет места постоянству.
Даже ляжешь в гроб и все равно идут процессы :)


 
Труп Васи Доброго ©   (2012-04-12 15:35) [48]


> я не поленился и нарисовал - han_malign [26]

Ну так разницы между массивами полученными при "редком" считывании и "частом", а потом прореженном нет? - Нет! Что и требовалось доказать!

1 2 3 4 5 6 7 8 9 A B
---------------------
  .     .     .

 * *   * *   * *   *

     
*     *     *     *
---------------------
1   3   5   7   9   B
---------------------
  .     .     .

 . *   * .   . *   *

     
*     .     *     .
---------------------
это после прореживания, а вот что было бы при изначально "редкой" оцифровке
1   3   5   7   9   B
---------------------
  .     .     .

 . *   * .   . *   *

     
*     .     *     .
---------------------
ОДИНАКОВО!!!


 
han_malign   (2012-04-12 16:07) [49]


> а вот что было бы при изначально "редкой" оцифровке

- перед "изначально редкой оцифровкой" - идут аналоговые фильтры, после чего - идут цифровые фильтры - исправляющие АЧХ аналогового тракта(и, в том числе, приводящие к требующейся частоте дискретизации)...

Все "девайсы" которые работают по другому - выкинуты на помойку в 60-х годах, а их разработчики работают разнорабочими...


 
Труп Васи Доброго ©   (2012-04-12 16:15) [50]

Ты задал вопрос - тебе дали ответ, что девайс будет нормально работать если сигнал проредить. Для целей VAD этого более чем достаточно. Ты или уточняй что тебе надо или задавай вопрос по другому.

> идут аналоговые фильтры, после чего - идут цифровые фильтры
> - исправляющие АЧХ аналогового тракта

Вот что значит прогресс!!! У меня с такой задачей справлялся нормальный цифровой фильтр, написаный ещё на Delphi 5 на первом пне.


 
Jeer ©   (2012-04-12 16:28) [51]


> У меня с такой задачей справлялся нормальный цифровой фильтр,
>  написаный ещё на Delphi 5 на первом пне.


Хорошо, что тогда не было "Фобоса" :)


 
han_malign   (2012-04-12 16:57) [52]

уговорил...
выкидываю микрофон, выпаиваю AC-97 - на их место впаиваю пень и ставлю D5...
осталось найти правильный "нормальный цифровой фильтр"...

З.Ы. Запатентуй, а то Apple сопрет...


 
Inovet ©   (2012-04-12 18:06) [53]

> [48] Труп Васи Доброго ©   (12.04.12 15:35)
> Ну так разницы между массивами полученными при "редком"
> считывании и "частом", а потом прореженном нет? - Нет! Что
> и требовалось доказать!

Уже все всё объяснили, а ты снова за своё. Сдаётся мне, что ты всё это понял, но продолжаешь упорствовать. Позволь отцитировать тебя:

> [41] Труп Васи Доброго ©   (12.04.12 13:18)
> Вот что значит "усраться, но не поддаться".

Или просто развлекаешься?



Страницы: 1 2 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.63 MB
Время: 0.052 c
2-1331629101
alexdn
2012-03-13 12:58
2013.03.22
Клик мышки


15-1333476590
paramela
2012-04-03 22:09
2013.03.22
Новый IPad может работать на полную на наших интернет-сетях


15-1344450199
ppoko
2012-08-08 22:23
2013.03.22
w8


15-1352901277
ЕщеОдинКакжеНадоели
2012-11-14 17:54
2013.03.22
Удалить кусок текста.


15-1343507404
Юрий
2012-07-29 00:30
2013.03.22
С днем рождения ! 29 июля 2012 воскресенье