Modifizierte diskrete Kosinustransformation

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Die modifizierte diskrete Kosinustransformation (englisch modified discrete cosine transform, kurz: MDCT) ist eine reellwertige, diskrete, lineare, orthogonale Transformation, die zu der Gruppe der diskreten Fouriertransformationen (DFT) zählt und eine Modifikation der namensgebenden diskreten Kosinustransformation (DCT) ist.

Die MDCT wurde in den Jahren 1986, 1987 von John P. Princen, A. W. Johnson und Alan B. Bradley entwickelt [1][2]. Der Anwendungsbereich der MDCT liegt als zentrale Transformation bei der Audiodatenkompression wie MP3, Vorbis, Advanced Audio Coding (AAC) oder Dolby Digital (AC-3). Daneben existiert die ähnlich aufgebaute modifizierte diskrete Sinustransformation (MDST) welche auf der diskreten Sinustransformation basiert, die aber im Bereich der digitalen Signalverarbeitung keine wesentliche Bedeutung hat.

Motivation[Bearbeiten]

Die MDCT basiert auf dem Typ IV der diskreten Kosinustransformation, auch als DCT-IV bezeichnet, und verwendet am Anfang der zu transformierenden Eingangssignalfolge, beispielsweise ist dies eine endliche Anzahl von Abtastwerten eines Audiosignals, eine gerade Fortsetzung und am Ende der Signalfolge eine ungerade Fortsetzung. Das Eingangssignal wird in aufeinander folgende Blöcke unterteilt, wobei jeder Block getrennt der Transformation unterworfen wird. Bei der MDCT werden die Signalfolgen zur Bildung der einzelnen Blöcke teilweise miteinander überlappt, um die geraden bzw. ungeraden Fortsetzungen der Blockbildung zu kompensieren. In der meist englischsprachigen Fachliteratur wird dies als time-domain aliasing cancellation (TDAC) bezeichnet. Ähnliche Verfahren finden im Rahmen der DFT beim Overlap-Add-Verfahren und dem Overlap-Save-Verfahren Anwendung, um die dort periodische Fortsetzung der DFT in die aperiodische Faltungsoperation zu überführen.

Der Grund für den Einsatz der MDCT im Bereich der Audiodatenkompression liegt darin, dass eine periodische Fortsetzung der Signalfolge wie bei der DFT im Regelfall mit Sprüngen an den Randstellen eines Blockes verbunden ist, bedingt durch ungünstige Fortsetzungen. Dadurch lassen sich im Bereich der Datenkompression obere Spektralkomponenten nicht entsprechend grob quantisieren bzw. wäre dies bei der DFT mit einem stärkeren Informationsverlust oder Qualitätsverlust im Audiosignal verbunden. Bei der DCT und durch die Art der Fortsetzung wird die Signalenergie primär in unteren Frequenzbereichen konzentriert. Dadurch können bei der DCT höhere Spektralkomponenten bei gleicher Qualität stärker quantisiert werden, mit der Folge eine bessere Kompressionseffizienz zu erzielen. Die Modifizierung und die Methode der Überlappung als Erweiterung der DCT-IV sind notwendig, um beliebig lange Signalfolgen durch die Blockbildung der DCT transformieren zu können, die Überlappung verändert aber nicht Kompressionseffizienz der Transformation an sich.

Anwendungsbeispiele[Bearbeiten]

In Anwendungen wie MP3 wird das Audiosignal nicht unmittelbar der MDCT unterworfen. Vielmehr erfolgt zunächst eine Aufteilung des Eingangssignals in verschiedene spektrale Frequenzbereiche mittels Gruppen von Bandpassfiltern, welche optimiert in Form so genannter Polyphase-Quadrature-Filter (PQF) oder Quadrature-Mirror-Filter (QMF) realisiert werden. Deren Ausgangssignale werden der MDCT zugeführt. Die von der MDCT gebildeten Spektralkomponenten werden dann mit Hilfe eines psychoakustischen Modells unterschiedlich stark quantisiert.

Bei Verfahren wie Advanced Audio Coding (AAC) findet hingegen keine Bandbreitenaufteilung vor der MDCT statt, und die Eingangssignalfolge wird direkt der MDCT unterworfen.

Definition[Bearbeiten]

Durch die Überlappung ist bei der MDCT und im Unterschied zu symmetrischen Frequenztransformationen die Menge der Eingangssamples aus dem Zeitbereich doppelt so groß wie die daraus gebildeten spektralen Ausgangsdaten. Formal werden bei der Transformation 2N reelle Zahlen x0, …, x2N−1 auf N reelle Zahlen X0, …, XN−1 nach folgender Beziehung abgebildet:

X_k = \sum_{n=0}^{2N-1} x_n \cos \left[\frac{\pi}{N} \left(n+\frac{1}{2}+\frac{N}{2}\right) \left(k+\frac{1}{2}\right) \right]

In der Literatur werden manchmal, in nicht einheitlicher Form und zur Normierung, in dieser Beziehung zusätzliche konstante Faktoren eingebracht, welche aber die Transformation nicht grundsätzlich verändern.

Inverse Transformation[Bearbeiten]

Die inverse MDCT, abgekürzt IMDCT, stellt die Umkehrung zur obigen Transformation dar. Da die Eingangs- bzw. Ausgangsfolge eine unterschiedliche Anzahl umfassen, ist zur Umkehrung eine Addition im Zeitbereich der aufeinander folgenden Blöcke und der zeitlich überlappenden Bereiche im Rahmen der time-domain aliasing cancellation (TDAC) nötig.

Formal werden bei der IMDCT N reelle Zahlen X0, …, XN-1 in 2N reelle Zahlen y0, …, y2N−1 übergeführt:

y_n = \frac{1}{N} \sum_{k=0}^{N-1} X_k \cos \left[\frac{\pi}{N} \left(n+\frac{1}{2}+\frac{N}{2}\right) \left(k+\frac{1}{2}\right) \right]

Wie bei der DCT-IV, als eine Form von orthogonaler Transformation, ist die Rücktransformation bis auf einen Faktor identisch zu der Vorwärtstransformation.

Berechnungsaufwand[Bearbeiten]

Die direkte Berechnung der MDCT nach obiger Formel benötigt O(N2) Operationen. Ähnlich wie bei der schnellen Fourier-Transformation (FFT), als eine Form der effizienten Berechnung der DFT, existieren auch bei der MDCT-Algorithmen die ähnlich wie der Radix-2-Algorithmus aufgebaut sind, um die Anzahl der Rechenoperationen auf O(N log N) zu reduzieren.

Literatur[Bearbeiten]

  •  Henrique S. Malvar: Signal Processing with Lapped Transforms. Artech House, 1992, ISBN 0-89006467-9.

Einzelnachweise[Bearbeiten]

  1.  John P. Princen, Alan B. Bradley: Analysis/Synthesis filter bank design based on time domain aliasing cancellation. In: IEEE Transactions on Acoustics, Speech and Signal Processing. 34, Nr. 5, 1986, S. 1153–1161, doi:10.1109/TASSP.1986.1164954.
  2.  J. Princen, A. Johnson, A. Bradley: Subband/Transform coding using filter bank designs based on time domain aliasing cancellation. In: Acoustics, Speech, and Signal Processing, IEEE International Conference on ICASSP ’87.. 12, 1987, S. 2161–2164, doi:10.1109/ICASSP.1987.1169405 (Erstmalige Erwähnung des Begriffes MDCT).