Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Модифицированного дискретного косинусного преобразования ( МДКП ) представляет собой преобразование с перекрытием на основе типа-IV дискретного косинусного преобразования (ДКП-IV), с дополнительным свойством внахлест : она предназначена для быть выполнены на последовательных блоках большего набора данных , где последующие блоки перекрываются, так что последняя половина одного блока совпадает с первой половиной следующего блока. Это перекрытие, в дополнение к качеству сжатия энергии DCT, делает MDCT особенно привлекательным для приложений сжатия сигналов, поскольку помогает избежать артефактов, возникающих из-за границ блоков. В результате этих преимуществ MDCT является наиболее широко используемымметод сжатия с потерями при сжатии аудиоданных . Он используется в большинстве современных стандартов кодирования звука , включая MP3 , Dolby Digital (AC-3), Vorbis (Ogg), Windows Media Audio (WMA), ATRAC , Cook , Advanced Audio Coding (AAC), [1] High-Definition Кодирование (HDC), [2] LDAC , Dolby AC-4 , [3] и MPEG-H 3D Audio , [4], а также стандарты кодирования речи, такие как AAC-LD(LD-MDCT), [5] G.722.1 , [6] G.729.1 , [7] CELT , [8] и Opus . [9] [10]

Дискретного косинусного преобразования (ДКП) впервые был предложен Насира Ахмеда в 1972 году, [11] , и продемонстрирована Ahmed с Т. Natarajan и КР Рао в 1974 г. [12] МДКП позже был предложен Джоном П. Princen, Джонсон и AW Алан Б. Брэдли из Университета Суррея в 1987 году [13] после более ранней работы Принсена и Брэдли (1986) [14] по разработке лежащего в основе MDCT принципа подавления наложения спектров во временной области (TDAC), описанного ниже. (Существует также аналогичное преобразование MDST, основанное на дискретном синусоидальном преобразовании, а также другие, редко используемые формы MDCT, основанные на различных типах DCT или комбинаций DCT / DST.)

В MP3 MDCT применяется не к аудиосигналу напрямую, а к выходу 32- полосного банка многофазных квадратурных фильтров (PQF). Выходные данные этого MDCT подвергаются постобработке с помощью формулы сокращения псевдонимов для уменьшения типичного наложения спектров банка фильтров PQF. Такая комбинация набора фильтров с MDCT называется гибридным набором фильтров или MDCT поддиапазонов . С другой стороны, AAC обычно использует чистый MDCT; только (редко используемый) вариант MPEG-4 AAC-SSR (от Sony ) использует четырехполосный банк PQF, за которым следует MDCT. Подобно MP3, ATRAC использует многослойные квадратурные зеркальные фильтры (QMF), за которыми следует MDCT.

Определение [ править ]

Как преобразование с перекрытием, MDCT немного необычен по сравнению с другими преобразованиями, связанными с Фурье, поскольку он имеет вдвое меньше выходов, чем входов (вместо того же числа). В частности, это линейная функция (где R обозначает множество действительных чисел ). 2 N действительных чисел x 0 , ..., x 2 N -1 преобразуются в N действительных чисел X 0 , ..., X N -1 по формуле:

(Коэффициент нормализации перед этим преобразованием, здесь единица, является произвольным соглашением и различается в зависимости от лечения. Ограничивается только произведение нормализации MDCT и IMDCT, приведенное ниже.)

Обратное преобразование [ править ]

Обратный MDCT известен как IMDCT . Поскольку количество входов и выходов разное, на первый взгляд может показаться, что MDCT не должен быть обратимым. Однако идеальная обратимость достигается путем добавления перекрывающихся IMDCT последующих перекрывающихся блоков, что приводит к отмене ошибок и извлечению исходных данных; этот метод известен как подавление псевдонимов во временной области ( TDAC ).

IMDCT преобразует N действительных чисел X 0 , ..., X N -1 в 2 N действительных чисел y 0 , ..., y 2 N -1 по формуле:

(Как и для DCT-IV , ортогонального преобразования, обратное преобразование имеет ту же форму, что и прямое преобразование.)

В случае оконного MDCT с обычной оконной нормализацией (см. Ниже) коэффициент нормализации перед IMDCT должен быть умножен на 2 (то есть становится 2 / N ).

Вычисление [ править ]

Хотя прямое применение формулы MDCT потребует O ( N 2 ) операций, можно вычислить то же самое со сложностью только O ( N log N ) путем рекурсивной факторизации вычислений, как в быстром преобразовании Фурье (FFT). Можно также вычислить MDCT с помощью других преобразований, обычно DFT (FFT) или DCT, в сочетании с O ( N ) этапами предварительной и последующей обработки. Кроме того, как описано ниже, любой алгоритм для DCT-IV немедленно предоставляет способ вычисления MDCT и IMDCT четного размера.

Оконные функции [ править ]

Функции окна MDCT:
синий: косинус, красный: синус-косинус, зеленый: модифицированный Кайзера-Бесселя

В типичных приложениях сжатия сигнала свойства преобразования дополнительно улучшаются за счет использования оконной функции w n ( n = 0, ..., 2 N -1), которая умножается на x n и y n в формулах MDCT и IMDCT, выше, чтобы избежать разрывов на границах n = 0 и 2 N , заставляя функцию плавно переходить к нулю в этих точках. (То есть мы окна данных перед MDCT и после IMDCT.) В принципе, x и y могут иметь разные оконные функции, и оконная функция также может изменяться от одного блока к другому (особенно для случая, когда блоки данных разных размеров объединяются), но для простоты мы рассматриваем общий случай идентичных оконных функций для равных размеров блоки.

Преобразование остается обратимым (то есть TDAC работает) для симметричного окна w n = w 2 N −1− n , пока w удовлетворяет условию Принсена-Брэдли:

.

Используются различные оконные функции. Окно, которое производит форму, известную как модулированное преобразование с перекрытием (MLT) [15] [16] , задается как

и используется для MP3 и MPEG-2 AAC, и

для Vorbis. AC-3 использует окно , производное от Кайзера-Бесселя (KBD) , а MPEG-4 AAC также может использовать окно KBD.

Обратите внимание, что окна, применяемые к MDCT, отличаются от окон, используемых для некоторых других типов анализа сигналов, поскольку они должны соответствовать условию Принсена-Брэдли. Одна из причин этого различия заключается в том, что окна MDCT применяются дважды, как для MDCT (анализ), так и для IMDCT (синтез).

Связь с DCT-IV и происхождением TDAC [ править ]

Как можно увидеть при просмотре определений, для даже N MDCT по существу эквивалентен DCT-IV, где вход сдвигается на N / 2, и два N -блока данных преобразуются одновременно. Путем более тщательного изучения этой эквивалентности можно легко получить важные свойства, такие как TDAC.

Чтобы определить точное отношение к DCT-IV, необходимо понимать, что DCT-IV соответствует чередующимся четным / нечетным граничным условиям: четные на левой границе (около n = −1 / 2), нечетные на правой границе (около n = N −1/2) и так далее (вместо периодических границ, как для ДПФ ). Это следует из тождеств и . Таким образом, если его входные данные представляют собой массив x длины N , мы можем представить расширение этого массива до ( x , - x R , - x , x R , ...) и так далее, где x R обозначает x в обратном порядке.

Рассмотрим MDCT с 2 N входами и N выходами, где мы делим входы на четыре блока ( a , b , c , d ), каждый размером N / 2. Если мы сдвинем их вправо на N / 2 (от члена + N / 2 в определении MDCT), тогда ( b , c , d ) простираются за конец N входов DCT-IV, поэтому мы должны «свернуть "их обратно в соответствии с граничными условиями, описанными выше.

Таким образом, MDCT 2 N входов ( a , b , c , d ) в точности эквивалентен DCT-IV из N входов: (- c R - d , a - b R ), где R обозначает реверс, как указано выше.

(Таким образом, любой алгоритм вычисления DCT-IV может быть тривиально применен к MDCT.)

Точно так же формула IMDCT, приведенная выше, составляет ровно 1/2 от DCT-IV (которая является собственной инверсией), где выходной сигнал расширяется (с помощью граничных условий) до длины 2 N и смещается назад влево на N / 2. . Обратный DCT-IV просто вернет входные данные (- c R - d , a - b R ) сверху. Когда это расширяется с помощью граничных условий и сдвигается, мы получаем:

IMDCT (MDCT ( a , b , c , d )) = ( a - b R , b - a R , c + d R , d + c R ) / 2.

Таким образом, половина выходов IMDCT является избыточной, так как b - a R = - ( a - b R ) R , и то же самое для последних двух условий. Если мы сгруппируем входные данные в более крупные блоки A , B размера N , где A = ( a , b ) и B = ( c , d ), мы можем записать этот результат более простым способом:

IMDCT (MDCT ( A , B )) = ( A - A R , B + B R ) / 2

Теперь можно понять, как работает TDAC. Предположим, что вычисляется MDCT следующего, перекрывающегося на 50% блока 2 N ( B , C ). IMDCT тогда даст, аналогично приведенному выше: ( B - B R , C + C R ) / 2. Когда это добавлено с предыдущим результатом IMDCT в перекрывающейся половине, обратные члены аннулируются, и получается просто B , восстанавливая исходные данные.

Происхождение TDAC [ править ]

Происхождение термина «отмена псевдонимов во временной области» теперь ясно. Использование входных данных , которые выходят за пределы логического DCT-IV приводит к тому , данные , которые будут совмещенным таким же образом , что частоты за пределами частоты Найквиста являются псевдонимом для снижения частоты, за исключением того, что это сглаживание происходит во временной области вместо частотная область: мы не можем различить вклады a и b R в MDCT ( a , b , c , d ) или, что эквивалентно, в результат IMDCT (MDCT ( a , b , c , d)) = ( a - b R , b - a R , c + d R , d + c R ) / 2. Комбинации c - d R и т. д. имеют в точности правильные знаки для отменяемых комбинаций, когда они добавлен.

Для нечетных N (которые редко используются на практике), N / 2 не является целым числом, поэтому MDCT - это не просто перестановка сдвига DCT-IV. В этом случае дополнительный сдвиг на половину выборки означает, что MDCT / IMDCT становится эквивалентным DCT-III / II, и анализ аналогичен приведенному выше.

Плавность и неоднородность [ править ]

Выше мы видели, что MDCT из 2 N входов ( a , b , c , d ) эквивалентен DCT-IV из N входов (- c R - d , a - b R ). DCT-IV разработан для случая, когда функция на правой границе нечетная, и поэтому значения около правой границы близки к 0. Если входной сигнал гладкий, это так: крайние правые компоненты a и b R идут подряд во входной последовательности ( a , b , c , d), поэтому разница между ними невелика. Давайте посмотрим на середину интервала: если мы перепишем приведенное выше выражение как (- c R - d , a - b R ) = (- d , a ) - ( b , c ) R , второй член, ( b , в ) R , дает плавный переход посередине. Тем не менее, в первом члене, (- д , ), существует потенциальный разрыв , где правый конец - й встречает левый конец а. Это причина использования оконной функции, которая уменьшает компоненты около границ входной последовательности ( a , b , c , d ) до 0.

TDAC для оконного MDCT [ править ]

Выше свойство TDAC было доказано для обычного MDCT, показывая, что добавление IMDCT последующих блоков в их перекрывающуюся половину восстанавливает исходные данные. Вывод этого обратного свойства для оконного MDCT лишь немного сложнее.

Рассмотрю для перекрытия последовательных наборов из 2 N входов ( , B ) и ( B , C ), для блоков , В , С размером N . Напомним, что когда и подвергаются MDCT, IMDCT и добавляются в их перекрывающуюся половину, мы получаем исходные данные.

Теперь предположим , что мы умножаем обе МДКП входы и в ОМДКП выходы по оконной функции длины 2 N . Как и выше, мы предполагаем симметричную оконную функцию, которая, следовательно, имеет вид, где W - вектор длины N, а R обозначает реверс, как и раньше. Тогда условие Принсена-Брэдли можно записать как , с квадратами и сложениями, выполняемыми поэлементно.

Поэтому вместо MDCT мы теперь MDCT (все умножения выполняются поэлементно). Когда это IMDCTed и снова умножается (поэлементно) на оконную функцию, последняя N половина становится:

.

(Обратите внимание, что у нас больше нет умножения на 1/2, потому что нормализация IMDCT отличается в 2 раза в оконном случае.)

Точно так же оконные MDCT и IMDCT дают в первой половине N :

.

Когда мы складываем эти две половинки вместе, получаем:

восстановление исходных данных.

См. Также [ править ]

  • Дискретное косинусное преобразование
  • Другие перекрывающиеся оконные преобразования Фурье включают:
    • Модулированное сложное преобразование с перекрытием
    • Кратковременное преобразование Фурье
    • Метод Велча
  • Формат кодирования аудио
  • Аудио сжатие (данные)

Ссылки [ править ]

  1. Перейти ↑ Luo, Fa-Long (2008). Стандарты мобильного мультимедийного вещания: технологии и практика . Springer Science & Business Media . п. 590. ISBN 9780387782638.
  2. ^ Джонс, Грэм А .; Layer, Дэвид Х .; Осенковский, Томас Г. (2013). Технический справочник Национальной ассоциации вещателей: Технический справочник NAB . Тейлор и Фрэнсис . С. 558–9. ISBN 978-1-136-03410-7.
  3. ^ «Dolby AC-4: передача звука для развлекательных услуг нового поколения» (PDF) . Dolby Laboratories . Июнь 2015 . Проверено 11 ноября 2019 .
  4. ^ Bleidt, RL; Отправить.; Niedermeier, A .; Czelhan, B .; Füg, S .; и другие. (2017). «Разработка аудиосистемы телевидения MPEG-H для ATSC 3.0» (PDF) . IEEE Transactions on Broadcasting . 63 (1): 202–236. DOI : 10.1109 / TBC.2017.2661258 .
  5. ^ Шнелл, Маркус; Шмидт, Маркус; Джандер, Мануэль; Альберт, Тобиас; Гейгер, Ральф; Руоппила, Веса; Экстранд, Пер; Бернхард, Гриль (октябрь 2008 г.). MPEG-4 Enhanced Low Delay AAC - новый стандарт для высококачественной связи (PDF) . 125-я конвенция AES. Фраунгофера IIS . Аудио инженерное общество . Проверено 20 октября 2019 года .
  6. ^ Луцки, Манфред; Шуллер, Джеральд; Гейер, Марк; Кремер, Ульрих; Вабник, Стефан (май 2004 г.). Руководство по задержке аудиокодека (PDF) . 116-я Конвенция AES. Фраунгофера IIS . Аудио инженерное общество . Проверено 24 октября 2019 года .
  7. ^ Nagireddi, Sivannarayana (2008). Обработка голосовых и факсимильных сигналов VoIP . Джон Вили и сыновья . п. 69. ISBN 9780470377864.
  8. ^ Презентация кодека CELT Тимоти Б. Террибери (65 минут видео, см. Также слайды презентации в PDF)
  9. ^ "Кодек Opus" . Opus (Домашняя страница). Фонд Xiph.org . Проверено 31 июля 2012 года .
  10. Брайт, Питер (2012-09-12). «Новый стандартизированный аудиокодек Opus выполняет все функции, от онлайн-чата до музыки» . Ars Technica . Проверено 28 мая 2014 .
  11. Ахмед, Насир (январь 1991 г.). «Как я пришел к дискретному косинусному преобразованию» . Цифровая обработка сигналов . 1 (1): 4–5. DOI : 10.1016 / 1051-2004 (91) 90086-Z .
  12. ^ Ахмед, Насир ; Натараджан, Т .; Рао, КР (январь 1974), "дискретного косинусного преобразования", IEEE Transactions на компьютерах , C-23 (1): 90-93, DOI : 10,1109 / TC.1974.223784
  13. ^ Princen, Джон П .; Джонсон, AW; Брэдли, Алан Б. (1987). «Кодирование поддиапазона / преобразования с использованием схем набора фильтров, основанных на отмене наложения спектров во временной области». ICASSP '87. Международная конференция IEEE по акустике, речи и обработке сигналов . 12 : 2161–2164. DOI : 10.1109 / ICASSP.1987.1169405 .
  14. ^ Джон П. Принсен, Алан Б. Брэдли: Дизайн банка фильтров анализа / синтеза, основанный на отмене наложения спектров во временной области , IEEE Trans. Акуст. Обработка речевых сигналов, ASSP-34 (5), 1153–1161, 1986. Описан предшественник MDCT с использованием комбинации дискретных косинусных и синусоидальных преобразований.
  15. ^ HS Malvar, "Lapped Transforms for Efficient Transform / Subband Coding", IEEE Trans. по акустике, речи и обработке сигналов , т. 38, нет. 6, pp. 969–978 (уравнение 22), июнь 1990 г.
  16. ^ HS Malvar, "Модулированные банки фильтров QMF с идеальной реконструкцией", Electronics Letters , vol. 26, вып. 13, стр. 906–907 (уравнение 13), июнь 1990 г.

Библиография [ править ]

  • Энрике С. Малвар, Обработка сигналов с перекрывающимися преобразованиями (Artech House: Norwood MA, 1992).
  • AW Johnson и AB Bradley, «Адаптивное преобразование кодирования, включающее отмену наложения спектров во временной области», Speech Comm. 6 , 299-308 (1987).
  • Алгоритмы см. В примерах:
    • Чи-Мин Лю и Вен-Чи Ли, « Унифицированный быстрый алгоритм для наборов фильтров с косинусной модуляцией в современных стандартах звука [ постоянная мертвая ссылка ] », J. Audio Engineering 47 (12), 1061-1075 (1999).
    • В. Британак и К. Р. Рао, «Новый быстрый алгоритм для унифицированного прямого и обратного вычисления MDCT / MDST», Signal Processing 82 , 433-459 (2002)
    • Владимир Николаевич и Герхард Феттвейс, «Вычисление прямого и обратного MDCT с использованием формулы рекурсии Кленшоу», IEEE Trans. Sig. Proc. 51 (5), 1439–1444 (2003).
    • Че-Хонг Чен, Бин-Да Лю и Джар-Ферр Ян, «Рекурсивные архитектуры для реализации модифицированного дискретного косинусного преобразования и его обратного», IEEE Trans. Circuits Syst. II: Аналоговый Dig. Sig. Proc. 50 (1), 38-45 (2003).
    • JS Wu, HZ Shu, L. Senhadji, и LM Luo, «Алгоритм со смешанным основанием для вычисления прямого и обратного MDCT», IEEE Trans. Circuits Syst. I: Рег. Статьи 56 (4), 784-794 (2009).
    • В. Британак, "Обзор эффективных реализаций MDCT в стандарте кодирования звука MP3: ретроспективный и современный уровень", Signal. Процесс. 91 (4), 624-672 (2011).