ligoban 0 3 октября, 2006 Опубликовано 3 октября, 2006 · Жалоба Чем отличается эхоподавление от эхокомпенсации в телефонии? Где лучше всего об этом почитать? Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sav6622 0 3 октября, 2006 Опубликовано 3 октября, 2006 (изменено) · Жалоба Чем отличается эхоподавление от эхокомпенсации в телефонии? Где лучше всего об этом почитать? Спасибо. Насколько я понимаю, эхоподавление - блокировка эха посредством эхозаградителя, то есть нелинейное усиление в тракте в зависимости от уровня сигнала, небольшие сигналы (подразумевается что это эхосигнал) подавляются. Более прогрессивное - эхокомпенсация, то бишь адаптивная подстройка фильтра для получения модели эхопути и на основе этой модели из передаваемого сигнала вычитается сигнал эха. Последний способ наиболее употребим сейчас, так как эхоподавление приводило к эффекту "потери контакта", когда вы не слышите ничего с дальней стороны. Где почитать, точно пока не могу сказать :-) Пощите в инете найдете кучу информации... P.S. Но сейчас похоже эти два понятия означают одно и тоже, то бишь эхокомпенсацию.... :) Изменено 3 октября, 2006 пользователем sav6622 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Stanislav 0 3 октября, 2006 Опубликовано 3 октября, 2006 · Жалоба Насколько я понимаю, эхоподавление - блокировка эха посредством эхозаградителя, то есть нелинейное усиление в тракте в зависимости от уровня сигнала, небольшие сигналы (подразумевается что это эхосигнал) подавляются. Более прогрессивное - эхокомпенсация, то бишь адаптивная подстройка фильтра для получения модели эхопути и на основе этой модели из передаваемого сигнала вычитается сигнал эха. Последний способ наиболее употребим сейчас, так как эхоподавление приводило к эффекту "потери контакта", когда вы не слышите ничего с дальней стороны. Где почитать, точно пока не могу сказать :-) Пощите в инете найдете кучу информации... P.S. Но сейчас похоже эти два понятия означают одно и тоже, то бишь эхокомпенсацию... Да, по-моему, это синонимы. Устройства с усилением, управляемым сигналом, называются эхозаградителями. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ligoban 0 5 октября, 2006 Опубликовано 5 октября, 2006 · Жалоба А где бы исходный код эхокомпенсатора посмотреть? Хорошо бы с соответствием рекомендации G.168. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sav6622 0 5 октября, 2006 Опубликовано 5 октября, 2006 · Жалоба А где бы исходный код эхокомпенсатора посмотреть? Хорошо бы с соответствием рекомендации G.168. :) Cразу вас расстрою, скорее всего не найдете... Я пытаюсь периодически в течении 3-4 лет найти, причем копаю глубоко... :) Если найдете, поделитесь пожалуйста ссылочкой :cheers: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sav6622 0 6 октября, 2006 Опубликовано 6 октября, 2006 · Жалоба А где бы исходный код эхокомпенсатора посмотреть? Хорошо бы с соответствием рекомендации G.168. :) Cразу вас расстрою, скорее всего не найдете... Я пытаюсь периодически в течении 3-4 лет найти, причем копаю глубоко... :) Имелось ввиду что соответствующий рекомендациям g.168, просто эхокомпенсатор достаточно широко представлен. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
fontp 0 7 октября, 2006 Опубликовано 7 октября, 2006 · Жалоба А где бы исходный код эхокомпенсатора посмотреть? Хорошо бы с соответствием рекомендации G.168. :) Cразу вас расстрою, скорее всего не найдете... Я пытаюсь периодически в течении 3-4 лет найти, причем копаю глубоко... :) Имелось ввиду что соответствующий рекомендациям g.168, просто эхокомпенсатор достаточно широко представлен. G165-168 стандарты телефонии. Эхо-подавитель соответственно голосовой. Голосовой эхоподавитель, кроме линейного эхокомпенсатора, должен содержать ещё нелинейные компоненты, как-то Double-Talk_Detector и т.п. В принципе, всё это хозяйство можно найти в специальной литературе. Прибабахи необходимы, но требуют обычно настройки экспериментальной Чтобы заполнить пробел размещаю прямо здесь свою модель эхоподавителя с которой начиналась моя разработка эхоподавителя. Модель целочисленная на С, со всеми прибабахами, настраивалась в реальном времени (понятно что быстродействие не очень и нужно переписывать на ассемблер хотя-бы внутренний цикл). Обработка блочная, программа организована правильно, вложеными циклами (а не наоборот, когда напишут сначала адаптивный фильтр, а потом подвешивают на счётчики всё остальное). Линейный адаптивный фильтр -NLMS. Можно ли сделать с него G168? Можно. Только будет неэффективно, если по максимуму. G168 - стандарт расплывчатый. Требований по испытаниям много, но они для цифровой реализации - тривиальны. А по длине задержки эхо (эффективной длине адаптивного фильтра) там нет жёстких требований. Можно делать на 30 мс. Стандарт не требует, чтобы эхоподавитель был дальний. В стандарте сказано, что он может быть дальним (60мс), но не обязан. Если, конечно, заказчик говорит G168, подразумевает - дальний, тогда другое дело. Северо-американские корпорации практикуют обычно в своём оборудовании внутри-континентальный вариант - миллисекунд так на 40. Называется G168 тем не менее. Если реклама ссылается на оба стандарта G165/G168, то скорее всего там 30 мс или меньше. Для дальних эхоподавителей или очень быстродействующих средних - нужны другие алгоритмы. В основе проектирования дальних эхоподавителей лежит тот факт, что импульсная характеристика отражения от гибрида обычно очень короткая - 2-4 мс. Неизвестно только где эти отражения от разных гибридов расположены. Алгоритмы включают эвристики, а потому содержат know-how Раньше делали прорежённые алгоритмы (искать в google sparced echo canceller), последнее время появилась мода на Лагерровские решётки (работы Ali.H.Sayed & Ricardo Merched). Ищите статьи этих авторов, а также эту книгу A. H. Sayed, Fundamentals of Adaptive Filtering, John Wiley & Sons, NY 2003 Пароль на архив: НеДляЛиберастов Иванычу респект :) Программа размещена "как есть" и комментариев я давать не буду. У меня нет времени вспоминать почему и что и как Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
fontp 0 9 октября, 2006 Опубликовано 9 октября, 2006 · Жалоба в программке всё традиционно. Единственная нестандартная фича - это то, что эхоподавитель дифференциальный. Дифферинцирование входов fir-фильтром (с последующим интегрированием iir-фильтром выходов) отбеливает речь, а значит ускоряет сходимость. Но снижает динамический диапазон. В общем, это необязательно, можно исключить Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
timonja 0 9 февраля, 2007 Опубликовано 9 февраля, 2007 · Жалоба Знает ли кто-нибудь алгоритмы эхокомпенсации, требующие меньше выч. ресурсов чем NLMS при условии, что линия задержки 16 мс и больше не надо. Реализация осуществляется на TI 320c6412. Память не так критична, а вот производительности не хватает на всё что нужно Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
fontp 0 9 февраля, 2007 Опубликовано 9 февраля, 2007 · Жалоба Знает ли кто-нибудь алгоритмы эхокомпенсации, требующие меньше выч. ресурсов чем NLMS при условии, что линия задержки 16 мс и больше не надо. Реализация осуществляется на TI 320c6412. Память не так критична, а вот производительности не хватает на всё что нужно Блочный NLMS. Всё то же самое, но обновление коэффициентов производится с чередованием, как бы интерливингом. А именно, на данном такте обновляются только коэффициенты номер которых по модулю М равен i=0,...., М-1. М равно 8 или 16. Страдает время сходимости, а так - работает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
timonja 0 9 февраля, 2007 Опубликовано 9 февраля, 2007 (изменено) · Жалоба To fontp Видимо я не так понял... но ведь в таком случае пересчитываться будут только 1\8 либо 1\16 часть всех коэффициентов адаптивного фильтра, остальные же будут находиться в начальном(нулевом) состоянии. Где я ошибся? может быть я не правильно понимаю идеологию NLMS алгоритма? Если не трудно, поправьте. for (k=0; k < LZ_len; k++) W[k++] = Wr[k] -W_update_val * LZ[k]; вроде так рассчитывается классический NLMS (деление внутри W_update_val), вы предлагаете фактически: for (k=0; k < LZ_len; k+= M) W[k++] = Wr[k] -W_update_val * LZ[k]; где я не понял? Изменено 9 февраля, 2007 пользователем timonja Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
fontp 0 9 февраля, 2007 Опубликовано 9 февраля, 2007 · Жалоба To fontp Видимо я не так понял... но ведь в таком случае пересчитываться будут только 1\8 либо 1\16 часть всех коэффициентов адаптивного фильтра, остальные же будут находиться в начальном(нулевом) состоянии. Где я ошибся? может быть я не правильно понимаю идеологию NLMS алгоритма? Не, ну нужно двигать им фазу на каждом такте, устроив чередование for (k=j; k < LZ_len; k+= M) { W[k] = Wr[k] -W_update_val * LZ[k]; // c автоинкрементом или чепуха или двусмысленность } j = (j+1) % M Фильтр будет адаптироваться в нужном направлении, хоть и замедленно. Вообще-то там (в Block LMS) ещё обычно и усредняют ошибку W_update_val * LZ[k] по нескольким тактам, что улучшает сходимость. Ищите Block LMS в гугле, когда-то было множество публикаций На TI точно было в частности вот это http://focus.ti.com/general/docs/techdocsa...actName=slau107 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
nsemenoff 0 15 февраля, 2007 Опубликовано 15 февраля, 2007 · Жалоба Чем отличается эхоподавление от эхокомпенсации в телефонии? Где лучше всего об этом почитать? Спасибо. Мне кажется, что обсуждение пошло не в ту сторону. Эхоподавление - это электрическая противоместная схема, позволяющая при преобразовании двухпроводной линии в четырехпроводную отсеивать собственную передачу от приема. Схема хорошо работает только при полном согласовании с линией. Часть ближнего эхо-сигнала все равно оказывается на приеме. Эхокомпенсация - это одна из операций ЦОС, когда во время приема тишины с дальней стороны строится цифровой КИХ-фильтр, компенсирующий ближнее эхо. Способов компенсации много, самые простые - LMS и линейное схождение. Результат легко просчитывается и моделируется в том же Матлабе. Если интересно - пишите, расскажу как :) А в упомянутой рекомендации не описывается, КАК происходит эхоподавление, там описано только ЧТО при этом нужно получить :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
fontp 0 15 февраля, 2007 Опубликовано 15 февраля, 2007 · Жалоба Вообще-то это в основном путаница в переводной терминологии. Echocanceler - это всегда ЦОС. Он подавитель посредством компенсации. А мостовые или оптронные схемы начального аналогового подавления эхо (на переходе от 2-проводной линии к 4-проводной) называют гибридами. Хотя когда-то, лет 50 назад, когда ещё ЦОС не было их наверно называли эхоподавителями. Существуют ещё нелинейные схемы типа компандеров, их ещё называют эхозаградителями (упоминается в самом стандарте) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mag24 0 20 февраля, 2007 Опубликовано 20 февраля, 2007 · Жалоба Для подавления эха использую метод Frequency-Domain Adaptive Filter. По экспериментам - сходится быстрее NLMS. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться