|
Выделение постоянной составляющей на фоне шума, Как сделать? |
|
|
|
Sep 24 2011, 16:02
|
Участник

Группа: Validating
Сообщений: 55
Регистрация: 6-04-11
Пользователь №: 64 180

|
Есть оцифрованный сигнал в виде постоянной составляющей с шумом и импульсными помехами (по оси х - время в секундах).
Точно известен интервал (+- 5*10^-6), в котором может находиться величина постоянной составляющей (этот интервал показан на рисунке). Надо определить величину постоянной составляющей. За минимальное время с начала обработки величина постоянной составляющей должна быть определена с точностью около около +- 1*10^-8, при последующей обработке точность должна возрастать (чем больше - тем лучше). С линейной фильтрацей пока у меня что-то плохо получается. В ЦОС я не силен, поэтому пробовал каскадное включение 10 БИХ-фильтров 1-го порядка (Yn + Yn*(K-1) = K*Xn при K=1/2^6) - слишом много времени уходит (где-то 1500-2000 с) и импульсы мешают. Пробовал вырезать участки с импульсами и потом "сшитый" сигнал пропускать через ФНЧ, но что-то не очень помогает. Медианный фильтр не пробовал, т.к. не знаю какого размера окна взять, а при очень большом окне он постоянку исказит (наверное). Посоветуйте как это лучше (и правильней) сделать.
Сообщение отредактировал R.A.K. - Sep 24 2011, 16:13
|
|
|
|
|
 |
Ответов
|
Sep 26 2011, 12:22
|
Участник

Группа: Validating
Сообщений: 55
Регистрация: 6-04-11
Пользователь №: 64 180

|
Товарищи, ДПФ по полной не нужно. Мне нужен только отсчет спектральной плотности только в одной точке - на нулевой частоте. А этом случае ДПФ (а также в случае преоб. Фурье для непрерывного сигнала) получаем просто среднее значение. Усреднение. У меня усреднение приемлемого результата не дает. Пробовал окно на 1000 (и кажись еще на 2000) отсчетов. На выходе сигнал весьма грязненький.
Суть задачи уже озвучил выше.
Может в самой методе чего-то не так?
|
|
|
|
|
Sep 26 2011, 13:07
|
    
Группа: Свой
Сообщений: 1 928
Регистрация: 11-07-06
Пользователь №: 18 731

|
Цитата(R.A.K. @ Sep 26 2011, 16:22)  Может в самой методе чего-то не так? Может быть. Я, н-р, не понимаю, как при частоте выборок 1 Гц можно восстановить частоту сигнала 1 кГц. Или Вам достаточно "среднего по больнице" за тысячу периодов? Если отвлечься от моих непоняток, то задача распадается на исключение из выборки отсчётов с неправильной динамикой (выбросов) и на расчёт собственно среднего значения выборки. Если делать скользящее БПФ (ДПФ), то попадание выброса в его окно приведёт к появлению бинов в правой части спектра - имхо, вполне наглядный признак выброса. Что делать с таким отсчётом, думайте сами, но, вероятно, его стОит исключить из расчёта среднего значения. Если Вас не устраивает "просто среднее значение" на выходе БПФ (ДПФ), придётся придумывать какую-нибудь более сложную модель, которая учитывает, н-р, предысторию или температуру, напряжение, фазу Луны... , т.к. для одного набора данных "просто среднее значение" будет совпадать со средним значением, посчитанным более другим образом.
|
|
|
|
|
Sep 26 2011, 14:08
|
Участник

Группа: Validating
Сообщений: 55
Регистрация: 6-04-11
Пользователь №: 64 180

|
Цитата(xemul @ Sep 26 2011, 17:07)  Может быть. Я, н-р, не понимаю, как при частоте выборок 1 Гц можно восстановить частоту сигнала 1 кГц. Или Вам достаточно "среднего по больнице" за тысячу периодов? Меряется время между соседними фронтами. Результаты 1000 измерений суммируются и выдаются в виде очередного "сэмпла". Получается каждый сэмпл - среднее значение мгновенной частоты на интервале 1000 периодов. Соответственно частота сэмплов ~ 1 Гц. Если надо, объясню почему взял 1000, а не 1, 15, 538000 ... Мысль про поликлинику не понял (но вы продолжайте развивать). Где и что направильно делаю? Цитата(xemul @ Sep 26 2011, 17:07)  Если Вас не устраивает "просто среднее значение" на выходе БПФ (ДПФ), придётся придумывать какую-нибудь более сложную модель, которая учитывает, н-р, предысторию или температуру, напряжение, фазу Луны... , т.к. для одного набора данных "просто среднее значение" будет совпадать со средним значением, посчитанным более другим образом. Изголяетесь. Вечереет... Дело не "устраивает/неустраивает". Сейчас я истинное значение частоты знаю. Я пытаюсь найти алгоритм, который бы в короткое время выдал близкий к истинному значению результат. Все методы, что пока перепробовал, не дают результат с нужной точностью.
|
|
|
|
|
Sep 26 2011, 14:58
|
Участник

Группа: Validating
Сообщений: 55
Регистрация: 6-04-11
Пользователь №: 64 180

|
Цитата(sup-sup @ Sep 26 2011, 18:23)  А почему, действительно, не взять '1'? Так можно было бы раз в мс просчитывать фильтр 1000 раз вместо одного сейчас. И результат был бы быстрее получен. Соображения были такие. Допустим измеряется частота входного сигнала ("чистого", без шумов). Измеряемая частота f 0 (входной сигнал). Частота опорного генератора f изм. Интервал между N импульсами входного сигнала равен М импульсов опорного генератора. Значит f 0/N = f имз/(М +- 1). Значит относительная погрешность измерения составит +-1/М. Фактически это что-то типа выбора разрядности АЦП. Попутно замечу, что существует такой метод (по крайней мере я о нем слышал  и подозреваю что ныне он не актуален), когда измеряется медленно-меняющийся сигнал путем наложения на него нормального шума с нулевым средним. В конечном счете это позволяет измерять полезный сигнал более точно, чем это позволяет разрядность АЦП. Цитата(Tanya @ Sep 26 2011, 18:35)  Как вам везет - Вам ведома истина. Истина мне неведома.  Цитата(Tanya @ Sep 26 2011, 18:35)  Тогда посчитайте (Вы же и дисперсию знаете), сколько отсчетов (минимум) нужно для получения истины, лежащей внутри заданного интервала с заданной вероятностью. Не понял  Типа сколько кавалеристов в год будет убито копытом лошади? P.S. Попробовал обработать последовательность: 1) путем отбрасывания пиков 2) путем замены пиков соседним "более достоверным" значением. Улучшения как бэ... есть в плане "грязи" выходного сигнала, но результат получается ниже ожидаемого. Ошибка короче получается.
|
|
|
|
|
Sep 26 2011, 17:01
|
Частый гость
 
Группа: Участник
Сообщений: 161
Регистрация: 22-06-09
Из: Москва
Пользователь №: 50 531

|
Цитата(R.A.K. @ Sep 26 2011, 18:58)  Улучшения как бэ... есть в плане "грязи" выходного сигнала, но результат получается ниже ожидаемого. Ошибка короче получается. Тогда проблему надо брать осадой. 1.Хотелось бы видеть гистограмму сигнала без выбросов хотя бы из 1000 точек, 20 градаций внутри Ваших границ. 2.Хотелось бы видеть спектр выборки из 2048 точек. Это позволит оценить максимально возможную точность.
--------------------
Ты можешь знать все что угодно, но пока ты не доказал это на практике, ты не знаешь ничего!© Ричард Бах
|
|
|
|
Сообщений в этой теме
R.A.K. Выделение постоянной составляющей на фоне шума Sep 24 2011, 16:02 SPACUM Цитата(R.A.K. @ Sep 24 2011, 20:02) Есть ... Sep 25 2011, 14:39 анатолий Цитата(SPACUM @ Sep 25 2011, 16:39) Главн... Sep 26 2011, 12:52  sup-sup Цитата(анатолий @ Sep 26 2011, 15:52) Оче... Sep 26 2011, 13:11   Tanya Цитата(sup-sup @ Sep 26 2011, 17:11)... Sep 26 2011, 13:52 psL http://electronix.ru/forum/index.php?showtopic=543... Sep 26 2011, 06:28 ViKo Я делал бы так же, как написал GetSmart в последне... Sep 26 2011, 07:24 xemul Цитата(R.A.K. @ Sep 24 2011, 20:02) Медиа... Sep 26 2011, 08:08 R.A.K. SPACUM, спасибо за совет, попробую.
Цитата(ViKo ... Sep 26 2011, 09:26 Tanya Цитата(R.A.K. @ Sep 26 2011, 13:13) P.S. ... Sep 26 2011, 09:46  R.A.K. Цитата(Tanya @ Sep 26 2011, 13:46) Основн... Sep 26 2011, 11:02 ViKo Цитата(R.A.K. @ Sep 26 2011, 12:26) Это с... Sep 26 2011, 10:56 xemul Цитата(R.A.K. @ Sep 26 2011, 13:26) Нет. ... Sep 26 2011, 11:25 ViKo Цитата(xemul @ Sep 26 2011, 14:25) Если н... Sep 26 2011, 11:49  xemul Цитата(ViKo @ Sep 26 2011, 15:49) Для выч... Sep 26 2011, 11:58   ViKo Цитата(xemul @ Sep 26 2011, 14:58) Что ж ... Sep 26 2011, 12:02    xemul Цитата(ViKo @ Sep 26 2011, 16:02) Да-да, ... Sep 26 2011, 12:05     SPACUM Цитата(R.A.K. @ Sep 26 2011, 18:58) но ре... Sep 28 2011, 16:22   xemul Цитата(R.A.K. @ Sep 26 2011, 18:08) Меряе... Sep 26 2011, 15:16   sup-sup Цитата(R.A.K. @ Sep 26 2011, 17:08) Меряе... Sep 26 2011, 19:25 @Ark ЦитатаЯ делал бы так же, как написал GetSmart в по... Sep 26 2011, 12:35 ViKo Вернемся к медианному фильтру. Если из 3-х текущих... Sep 26 2011, 14:08 Tanya Цитата(ViKo @ Sep 26 2011, 18:08) Вернемс... Sep 26 2011, 14:35  ViKo Цитата(Tanya @ Sep 26 2011, 17:35) А Вы о... Sep 26 2011, 14:45   Tanya Цитата(ViKo @ Sep 26 2011, 18:38) Зачем? ... Sep 26 2011, 14:46    ViKo Цитата(Tanya @ Sep 26 2011, 17:46) Если В... Sep 26 2011, 15:05     Tanya Цитата(ViKo @ Sep 26 2011, 19:05) Ничему ... Sep 26 2011, 15:26      ViKo Цитата(Tanya @ Sep 26 2011, 18:20) Пустые... Sep 26 2011, 15:34       Tanya Цитата(ViKo @ Sep 26 2011, 19:26) Пустые ... Sep 26 2011, 15:36        ViKo Цитата(Tanya @ Sep 26 2011, 18:36) Это Вы... Sep 26 2011, 15:41         Tanya Цитата(ViKo @ Sep 26 2011, 19:41) Автор т... Sep 26 2011, 15:46         Tanya Цитата(ViKo @ Sep 26 2011, 19:41) Насчет ... Sep 26 2011, 16:05        R.A.K. Цитата(Tanya @ Sep 26 2011, 19:36) Автор ... Sep 26 2011, 15:59       R.A.K. Цитата(ViKo @ Sep 26 2011, 19:26) Имеется... Sep 26 2011, 15:42        ViKo Цитата(R.A.K. @ Sep 26 2011, 18:42) А поч... Sep 26 2011, 16:00 @Ark ЦитатаА как можно восстановить несущую ФМ-сигнала,... Sep 26 2011, 16:27 Дмитрий_Б Сделайте так: все выборки, превышающие пределы воз... Sep 26 2011, 17:20 Alexey Lukin Автору: отсортируйте точки по амплитуде, отбросьте... Sep 26 2011, 17:43
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|