|
Реализация фильтра |
|
|
|
 |
Ответов
|
Jun 18 2013, 07:09
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(_Anatoliy @ Jun 18 2013, 09:13)  Как делать в частотной области - вообще не понятно,ведь время прихода сигнала не известно. Чем не устраивает быстрая свёртка? Коэффициенты фильтра можно считать на лету. Цитата(_Anatoliy @ Jun 18 2013, 09:13)  Может есть какие хитрые приёмы реализации подобных фильтров? Хитрые приёмы связаны с хитрыми CAZAC последовтаельностями, посмотрите последовательности Chu если так ЛЧМ хочется. Для некоторых последовательностей согласованные фильтры очень простые, например Golay Complementary Sequences.
|
|
|
|
|
Jun 18 2013, 10:18
|
Знающий
   
Группа: Свой
Сообщений: 521
Регистрация: 12-05-06
Пользователь №: 17 030

|
Цитата(_Anatoliy @ Jun 18 2013, 13:21)  Спасибо за ответ,начал поиск литературы.
Как я понял - быстрая свёртка это и есть то что я назвал в топовом сообщении "в частотной области". А здесь мне не понятен один момент:для FFT я набираю массив данных длиной 2^N,но может статься что в этом массиве окажется например 30% импульса ЛЧМ,следующие 70% попадут уже в следующий набор данных.Это как то скажется на качестве корреляции?Мне сдаётся что вместо одного пика на выходе согласованного фильтра я получу два пика(для первого и второго набора данных). Нужно использовать результаты предидидущих блоков. Как вариант см. код ниже. Используется тот факт что свертка суммы последовательностей есть сумма сверток. Хорошо написано было про это кажется у Рабинера с Голдом. Код N = 13; x = randn(1, 7*N); % signal h = randn(1,N); % impulse response of a filter
yref = conv(x, h);
y = zeros(1, length(x)+length(h)-1);
% size of FFT is 2*N !!! H = fft([h, zeros(1,N)]); prev_hx = zeros(1, N-1);
for i=1:7 X = fft([x((i-1)*N+1 : i*N), zeros(1,N)]); hx = ifft(H.*X); % прибавляем предидущий хвост hx(1:N-1) = hx(1:N-1) + prev_hx; prev_hx = hx(N+1:end-1); % запоминаем "хвост" y((i-1)*N+1 : i*N) = hx(1:N); end
figure(1); % Результаты вычисленные двумя способами идентичны plot(1:7*N, yref(1:7*N), 1:7*N, y(1:7*N))
--------------------
ну не художники мы...
|
|
|
|
Сообщений в этой теме
_Anatoliy Реализация фильтра Jun 18 2013, 05:13 Lmx2315 ..я может глупость скажу, но мне интересно - почем... Jun 18 2013, 05:48 _Anatoliy Цитата(Lmx2315 @ Jun 18 2013, 06:48) ..я ... Jun 18 2013, 06:12  Maverick Цитата(_Anatoliy @ Jun 18 2013, 09:12)
В... Jun 18 2013, 06:37   _Anatoliy Цитата(Maverick @ Jun 18 2013, 07:37) Воз... Jun 18 2013, 06:54    alex_os Сигнал должен быть комплексным, оцифровываем на 30... Jun 18 2013, 07:03 alex_os Цитата(petrov @ Jun 18 2013, 11:09) Хитры... Jun 18 2013, 07:23  petrov Цитата(alex_os @ Jun 18 2013, 11:23) А ка... Jun 18 2013, 07:31   _Anatoliy Цитата(alex_os @ Jun 18 2013, 11:18) Нужн... Jun 18 2013, 10:31    petrov Цитата(_Anatoliy @ Jun 18 2013, 14:31) О,... Jun 18 2013, 10:58     _Anatoliy Цитата(petrov @ Jun 18 2013, 11:58) Возмо... Jun 18 2013, 11:37   _Anatoliy Цитата(alex_os @ Jun 18 2013, 11:18) Нужн... Jun 19 2013, 12:23    alex_os Цитата(_Anatoliy @ Jun 19 2013, 16:23) Пр... Jun 20 2013, 06:26     _Anatoliy Цитата(alex_os @ Jun 20 2013, 07:26) Цикл... Jun 20 2013, 08:17      alex_os Цитата(_Anatoliy @ Jun 20 2013, 12:17) Сп... Jun 20 2013, 08:30       _Anatoliy Цитата(alex_os @ Jun 20 2013, 09:30) Так ... Jun 20 2013, 08:50        _Anatoliy Цитата(_Anatoliy @ Jun 20 2013, 10:50) Ве... Jun 20 2013, 13:46         petrov Цитата(_Anatoliy @ Jun 20 2013, 17:46) Но... Jun 20 2013, 13:55          _Anatoliy Цитата(petrov @ Jun 20 2013, 15:55) Бабоч... Jun 20 2013, 14:02           petrov Ну а что такого написать FFT самому? Куда проще то... Jun 20 2013, 14:12            _Anatoliy Цитата(petrov @ Jun 20 2013, 16:12) Ну а ... Jun 20 2013, 14:16 thermit Цитатаalex_os:
А как обычный ЛЧM "натянуть... Jun 18 2013, 07:48 thermit Вы помоему круто просчитались. Для вычисления непр... Jun 20 2013, 14:26 _Anatoliy Цитата(thermit @ Jun 20 2013, 16:26)
Спа... Jun 20 2013, 14:34  Maverick Цитата(_Anatoliy @ Jun 20 2013, 17:34)
к... Jun 21 2013, 21:06   _Anatoliy Цитата(Maverick @ Jun 21 2013, 22:06)
Сп... Jun 23 2013, 08:51    _Anatoliy Сдаётся мне что применение быстрой свёртки для это... Jun 24 2013, 04:50    Lmx2315 QUOTE (_Anatoliy @ Jun 23 2013, 12:51) По... Jun 24 2013, 14:26     _Anatoliy Цитата(Lmx2315 @ Jun 24 2013, 15:26) ..за... Jun 24 2013, 15:20      Lmx2315 QUOTE (_Anatoliy @ Jun 24 2013, 19:20) По... Jun 24 2013, 17:14 ViKo Попробую и я ляпнуть глупость. Вы фильтруете прин... Jun 24 2013, 08:20 _Anatoliy Цитата(ViKo @ Jun 24 2013, 09:20) Попробу... Jun 24 2013, 08:39  alex_os Цитата(_Anatoliy @ Jun 24 2013, 12:39) Не... Jun 24 2013, 09:03   _Anatoliy Цитата(alex_os @ Jun 24 2013, 10:03) Не п... Jun 24 2013, 09:13    alex_os Цитата(_Anatoliy @ Jun 24 2013, 13:13) Но... Jun 24 2013, 09:25     _Anatoliy Цитата(alex_os @ Jun 24 2013, 10:25) Скор... Jun 24 2013, 10:00  petrov Цитата(_Anatoliy @ Jun 24 2013, 12:39) Ка... Jun 24 2013, 10:32   _Anatoliy Цитата(petrov @ Jun 24 2013, 11:32) в быс... Jun 24 2013, 10:48 thermit В общем и целом - да. При децимации длина в отсчет... Jun 24 2013, 14:32
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|