Страница 4 из 4 Первая ... 234
Показано с 61 по 62 из 62

Тема: О погрешности конвольвера

  1. #1 Показать/скрыть первое сообщение.
    котег
    Автор темы
    Аватар для _Сам_
    Регистрация
    04.05.2010
    Адрес
    ☂☂☂Питер☂☂☂
    Сообщений
    2,305

    По умолчанию О погрешности конвольвера

    Заинтересовала меня недавняя дискуссия в теме «О фазолинейности. Продолжение или революция?!» о погрешности, вносимой конвольвером. После слов ViktKors
    Цитата Сообщение от ViktKors Посмотреть сообщение
    Увы, если я слышу грязь, я интерпертирую это как грязь.
    Причем, что характрено, если в наушниках я слушаю после конвольвера _искривленную ФЧХ_ , и именно на искривление можно попытаться списать эффект, то в АС ФЧХ ведь выравнивается, а эффект точно так-же плохой.
    я решил проверить, какая же «грязь» может возникать после применения фазового FIR-фильтра.

    Пусть у нас есть дискретные отсчёты сигнала с частотой выборки 48 кГц. Построим all-pass фильтр с коротким окном на 16 отсчётов. Постараемся сделать так, чтобы коэффициент передачи по амплитуде был равен 1, а фаза менялась по закону косинуса от частоты. При 0 Гц фаза равна 0°, при 12 кГц – минус 90°, а при 24 кГц достигает минус 180°. Для вычисления 16 искомых коэффициентов конвольвера нам нужно решить систему из 16 линейных. Я зафиксировал 7 точек на шкале частот 3,6,9,12,15,18,21 кГц. Для них по условиям задана фаза и амплитуда, что даёт 14 уравнений. Ещё два уравнения даёт условие для коэффиициента передачи +1 на частоте 0 Гц и минус 1 на частоте 24 кГц. Эти частоты стоят особняком, так как на них фаза может быть либо 0° либо ±180°.

    Решаем систему и получаем 16 коэффициентов конвольвера:
    Код:
      0.0000000000000002
      0.9722096263235436
     -0.0000000000000001
     -0.1668931209924746
      0.0000000000000001
     -0.0025951830757338
     -0.0000000000000001
     -0.0016313244799198
      0.0000000000000001
      0.0015642123336106
     -0.0000000000000001
      0.0070858939842292
      0.0000000000000000
      0.0288213444185797
     -0.0000000000000002
      0.1614385514881652
    Проверяем, строим график ФЧХ и радуемся:
    Нажмите на изображение для увеличения. 

Название:	PH16.png 
Просмотров:	434 
Размер:	6.5 Кб 
ID:	339288
    Целевая фаза показана зелёным цветом, а точки аппроксимации синие кружочки.
    Но есть один нюанс. Исходный сигнал содержит, конечно, больше частот, чем наши 9 штук прибитых гвоздями с шагом 3 кГц. Эти частоты тоже буду преобразовываться при свёртке с нашим окном из 16 коэффициентов. Их ФЧХ показана красной кривой. Между узлами интерполяции меняется даже знак производной, т.е. часть частот с положительным ГВЗ будут отставать, а другие с отрицательным ГВЗ – наоборот опережать соседей.

    На графике АЧХ картина столь же ужасна.
    Нажмите на изображение для увеличения. 

Название:	DB16.png 
Просмотров:	371 
Размер:	8.3 Кб 
ID:	339289
    Хотя точки с шагом 3 кГц точно лежат на целевой зелёной полке 0 дБ, но зато между ними мы огребаем погрешность от -4 до +2 дБ.

    Первая мысль была: надо взять больше точек и всё улучшится, но расчёты говорят об обратном.
    Увеличил в 16 раз длину конвольвера до 256 точек.
    Нажмите на изображение для увеличения. 

Название:	PH256.png 
Просмотров:	331 
Размер:	9.4 Кб 
ID:	339290
    Нажмите на изображение для увеличения. 

Название:	DB256.png 
Просмотров:	366 
Размер:	9.4 Кб 
ID:	339291
    Смотрим и видим, что хотя в самих узлах аппроксимации АФЧХ всё волшебно, но между ними творится кошмар. Одни частоты усиливаются, другие ослабляются, а фаза у всех разъехалась в разные стороны от целевой кривой. Причём амплитуда погрешности и не думает уменьшаться с ростом окна.

    Есть у меня подозрения, что именно "лохматость" АФЧХ конвольвера воспринимается на слух как "грязь".
    «Cобрать стадо из баранов легко, трудно собрать стадо из кошек» — Сергей Капица

  2. #61
    Завсегдатай Аватар для mr-marlen
    Регистрация
    03.05.2009
    Адрес
    Москва, Бун.Луга
    Возраст
    37
    Сообщений
    4,018

    По умолчанию Re: О погрешности конвольвера

    Цитата Сообщение от _Сам_ Посмотреть сообщение
    В том смысле, что коррекция фазы FIRом на 7 кГц существенно изменяет восприятие НЧ, я правильно понимаю?
    Не существенно, но меняет. Это сложно описать, но мне IIR без коррекции ГВЗ в районе 7кГц нравится больше. Для точного выяснения нужна статистика.
    Но в целом при переключении своих АС на Hypex FA253 - это стало абсолютно не актуально, т.к. там нет FIR, а звук с их DSP и IIR намного лучше miniDSP с моими железками.
    Также АЧХ на выходе Hypex FA253 при вбитии биквадов в точности повторяет передаточную как в LSP CAD, а miniDSP на выходе даёт не совсем точную, до этого мне пришлось с этим возится, с Hypex все точно. Плывут показания, особенно при уменьшении или сильном увеличении Q. Возможно и FIR процессинг у них через "одно местечко" .

  3. #62
    Завсегдатай Аватар для E.Sokol
    Регистрация
    17.01.2015
    Адрес
    Урал
    Сообщений
    1,365

    По умолчанию Re: О погрешности конвольвера

    Придумал ещё один интересный тест конвольвера.

    Если просто воспроизвести вот этот файл: sound.zip, то прозвучит запись моего голоса. Но если воспроизвести его через конвольвер вот с этим фильтром - filter.zip - то прозвучит голос совсем другого человека, а от первоначального не останется совсем ничего.

    ---------- Сообщение добавлено 22.03.2019 в 11:46 ---------- Предыдущее сообщение было 21.03.2019 в 19:45 ----------

    Соответственно, если конвольвер реализован некорректно, то либо исходная запись проникнет в результат, либо вторая будет звучать искажённо.

Страница 4 из 4 Первая ... 234

Социальные закладки

Социальные закладки

Ваши права

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