DE4218189A1 - Anordnung zur zweidimensionalen Transformation - Google Patents

Anordnung zur zweidimensionalen Transformation

Info

Publication number
DE4218189A1
DE4218189A1 DE19924218189 DE4218189A DE4218189A1 DE 4218189 A1 DE4218189 A1 DE 4218189A1 DE 19924218189 DE19924218189 DE 19924218189 DE 4218189 A DE4218189 A DE 4218189A DE 4218189 A1 DE4218189 A1 DE 4218189A1
Authority
DE
Germany
Prior art keywords
dimensional transformation
transformation
arrangement
dimensional
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE19924218189
Other languages
English (en)
Inventor
Maximilian Riegel
Walter Schlenk
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Philips Intellectual Property and Standards GmbH
Original Assignee
Philips Patentverwaltung GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Philips Patentverwaltung GmbH filed Critical Philips Patentverwaltung GmbH
Priority to DE19924218189 priority Critical patent/DE4218189A1/de
Publication of DE4218189A1 publication Critical patent/DE4218189A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

Die Erfindung betrifft eine Anordnung zur zweidimensiona­ len Transformation von n*n strukturierten Eingangsdaten.
Eine solche Anordnung wird beispielsweise bei der Bildco­ dierung angewandt um Bilddaten zu reduzieren bzw. redu­ zierte Bilddaten wieder in die ursprüngliche Form zurück­ zuführen. Hierbei hat sich als Transformationsalgorithmus die Diskrete Cosinus-Transformation (DCT) bzw. die Inverse Diskrete Cosinus-Transformation (IDCT) als besonders ge­ eignet erwiesen.
Aus EP 0 286 184 ist eine Anordnung zur zweidimensionalen Transformation (2d-Transformation) von n*n seriellen Eingangsdaten bekannt, die eine erste und eine zweite Anordnung zur jeweils eindimensionalen Transformation (1d- Transformation) aufweist. Hierbei werden die seriellen Eingangsdaten in n Zeilen mit jeweils n Elementen geordnet und zeilenweise der ersten Anordnung zur eindimensionalen Transformation zugeführt. Die 1d-transformierten Daten­ wörter werden wiederum zeilenweise zwischengespeichert und spaltenweise ausgelesen und der zweiten Anordnung zur eindimensionalen Transformation zugeführt. Durch das spal­ tenweise Auslesen der zeilenweise eingelesenen Daten wer­ den die 1d-transformierten Datenwörter auf diese Weise transpositioniert. Durch zweimalige eindimensionale Trans­ formation sind die am Ausgang der zweiten Anordnung zur eindimensionalen Transformation erhältlichen Datenwörter zweidimensional transformiert.
Die zweidimensionale Transformation entspricht einer Ma­ trix-Multiplikation von zwei n*n-Matrizen. Hierfür sind n2 Multiplikationen und n(n-1) Additionen erforder­ lich. Es sind jedoch auch "schnelle" Algorithmen bekannt, bei denen bei hinreichender Genauigkeit die Anzahl der Multiplikationen und Additionen drastisch reduziert ist. So benötigt beispielsweise der in EP 0 286 184 beschriebe­ ne Algorithmus bei n = 8 zur eindimensionalen Transforma­ tion lediglich 16 Multiplikationen und 32 Additionen bzw. Subtraktionen.
Um den Platzbedarf für eine Schaltungsanordnung zur Be­ rechnung einer solchen schnellen Transformation möglichst gering zu halten, werden bei bekannten Anordnungen die einzelnen Multiplikationen hintereinander ausgeführt, so daß nur ein einziger Multiplizierer benötigt wird. Da doppelt soviele Additionen wie Multiplikationen anfallen, hat es sich als optimal erwiesen, eine Schaltungsanordnung mit einem Multiplizierer und zwei Addierern zu wählen, bei denen die einzelnen Eingangsdaten seriell hintereinander eingelesen werden und die einzelnen bei der eindimensiona­ len Transformation anfallenden internen Zwischenergebnisse in dafür vorgesehenen Registern zwischengespeichert wer­ den. Durch entsprechend geschickte Auswahl der Berech­ nungsreihenfolge sind bei der bekannten Anordnung bereits nach 32 Berechnungsschritten alle 1d-transformierten Da­ tenwörter berechnet. Die 1d-transformierten Datenwörter werden zwischengespeichert und transpositioniert an eine zweite Anordnung zur eindimensionalen Transformation wei­ tergegeben.
Eine Aufgabe der vorliegenden Erfindung ist es, den Platz­ bedarf für eine zweidimensionale Transformation von n*n strukturierten Eingangsdaten zu reduzieren.
Diese Aufgabe wird dadurch gelöst, daß bei einer Anordnung der eingangs genannten Art folgende Mittel vorgesehen sind:
  • - Mittel zur eindimensionalen Transformation von je­ weils eine Zeile bildenden n Datenwörtern zu trans­ formierten Datenwörtern,
  • - Mittel zur Transposition der n*n-1d-transformier­ ten Datenwörter in transpositionierte Datenwörter
  • - Mittel zum wahlweisen Einlesen der n*n-struktu­ rierten Eingangsdaten bzw. der transpositionierten Datenwörter in die Mittel zur eindimensionalen Trans­ formation.
Durch die Mittel zum wahlweisen Einlesen der n*n-struk­ turierten Eingangsdaten bzw. der transpositionierten Da­ tenwörter wird nur noch ein einziges Mittel zur eindimen­ sionalen Transformation benötigt. Die Mittel zur Trans­ position der n*n-transformierten Datenwörter werden in bekannterweise mit den Ergebnissen der ersten eindimensio­ nalen Transformation zeilenweise aufgefüllt. Durch spal­ tenweises Auslesen wird die 1d-transformierte Matrix tran­ positioniert. Anstelle die erstmals transformierten und transpositionierten Ergebnisse in eine zweite Anordnung zur eindimensionalen Transformation einzulesen, werden diese Ergebnisse ein zweites Mal den Mitteln zur eindimen­ sionalen Transformation zugeführt. Nach der zweiten ein­ dimensionalen Transformation liegen die Ergebnisse nunmehr zweidimensional transformiert vor.
Auf diese Weise kann der Platzbedarf für die Mittel zur zweidimensionalen Transformation um die Hälfte reduziert werden. Der Platzbedarf für die Mittel zum wahlweisen Einlesen der Eingangsdaten bzw. der erstmals transformier­ ten Datenwörter fällt dem gegenüber nicht ins Gewicht.
Dieser reduzierte Platzbedarf ermöglicht es, außer der Anordnung zur Transformation auch noch andere Teile einer Bildcodierung auf nur einem einzigen gemeinsamen Chip zu integrieren.
Bei Verwendung von bekannten Anordnungen zur eindimensio­ nalen Transformation muß wegen der erforderlichen Trans­ position der nach der ersten 1d-Transformation erhaltene­ nen Zwischenergebnisse die erstmals transformierte Matrix fast vollständig vorliegen, bevor mit dem zweiten Trans­ formationsdurchlauf begonnen werden kann. Durch die hier­ durch bedingten Wartezeiten verringert der sich der theo­ retisch maximal erzielbare Datendurchsatz.
Eine weitere Aufgabe der Erfindung ist es, mit dieser Anordnung den theoretisch maximal möglichen Datendurchsatz zu erzielen.
Diese Aufgabe wird dadurch gelöst, daß vorgesehen ist, nach der Eingabe der letzten Zeile der Eingabedaten ohne Verzögerung die erste transponierte Zeile folgen zu las­ sen, wobei vorgesehen ist, das erste Datenwort der letzten Zeile spätestens bei der Eingabe des letzten Datenworts der ersten transformierten Zeile bereitzustellen.
Bei den bekannten Anordnungen werden die 1d-transformierten Datenwörter in fortlaufender Reihenfolge in die Mittel zur 1d-Transformation eingeschrieben und in fortlaufender Reihenfolge wieder ausgelesen. Dies bietet den Vorteil, daß zum Einschreiben in den Speicher zur Speicherung der transformierten Datenwörter der Adreßzähler zur Ansteue­ rung der einzelnen Speicherelemente fortlaufend erhöht werden kann. Für ein lückenloses Ineinandergreifen des ersten und zweiten eindimensionalen Transformationsdurch­ laufs in ein und derselben Anordnung ist dann aber das erste 1d-transformierte Datenwort der letzten Zeile erst dann berechnet, wenn es bereits als letztes Datenwort der ersten Spalte bereits zur zweiten 1d-Transformation wieder eingelesen sein müßte. Durch Änderung der Ausgabereihen­ folge bzw. wenn dies erforderlich wäre auch unter Änderung der Berechnungsreihenfolge kann dieses erste Datenwort der letzten Zeile bereits vorher oder genau zu dem Zeitpunkt vorliegen, an dem es als Eingangsdatum wieder benötigt wird.
Eine Ausführungsform bei der dieses Prinzip angewendet wird sieht vor, daß das erste Datenwort der letzten Zeile unter Durchbrechung der Ausgabereihenfolge bereits zu einem früheren Zeitpunkt ausgegeben wird und durch eine entsprechend geänderte Ansteuerung der Mittel zur Trans­ position an der für dieses Datenwort vorgesehenen Spei­ cherplatz gespeichert wird. Auf diese Weise steht dieses Datenwort beim Auslesen aus den Mitteln zur Transposition bzw. beim Einlesen in die Anordnung zur eindimensionalen Transformation für den zweiten Transformationslauf bereits zu dem erforderlichen Zeitpunkt zur Verfügung.
Auf diese Weise kann ein Umschalten zwischen den struk­ turierten Eingangsdaten und den transpositionierten Daten­ wörtern so vorgenommen werden, daß eine verzögerungsfreie Fortführung der Berechnungen zwischen erster und zweiter Transformation möglich ist.
Eine weitere Ausführungsform sieht vor, das erste Daten­ wort der letzten Zeile nach der ersten eindimensionalen Transformation unter Umgehung der Mittel zur Transposition in die Mittel zur eindimensionalen Transformation als Ein­ gabe-Datenwort vorzugeben.
Insbesondere bei Schaltungsanordnungen, die mit weniger internen Registern als die aus der EP 0 286 184 bekannte Anordnung auskommen, ist eine so frühzeitige Ausgabe des ersten Datenwortes der letzten 1d-transformierten Zeile nicht möglich, daß es so rechtzeitig in die Mittel zur Transposition eingeschrieben werden kann, daß es zum benö­ tigten Ausgabezeitpunkt bereitsteht. Unter Umgehung der Mittel zur Transposition kann das Datenwort dann doch noch rechtzeitig zur Verfügung stehen.
Zur Umgehung der Mittel zur Transposition kann bei­ spielsweise ein speziell dafür vorgesehenes Schaltmittel für eine direkte Übergabe dieses Datenworts vorgesehen sein.
Eine besonders vorteilhafte Ausführungsform ergibt sich dadurch, die Berechnung dieses ersten Datenwortes der letzten Zeile so zu legen, daß der Ausgang des Addierers, in welchem dieses Datenwortes berechnet wird, direkt mit dem Eingang verbunden werden kann und das betreffende Datenwort auf diese Weise durch eine interne Verbindung direkt auf den Eingang des Registers bzw. und/oder auf den Eingang des Addierers, der dieses Datenwort als Eingabeda­ tum benötigt geschaltet werden kann. Es ist dem Belieben des Fachmanns überlassen, den Berechnungzeitpunkt so zu wählen, daß eventuelle interne Verzögerungszeiten, bei­ spielsweise auch durch zwischengeschaltete Rundungslogiken und dergleichen entsprechend berücksichtigt werden.
Diese Ausführungsform bietet den Vorteil, daß außerhalb der Anordnung zur eindimensionalen Transformation keine Schaltungsänderungen notwendig sind. Auf diese Weise kann auch die Auslesereihenfolge der transformierten Elemente beibehalten werden.
Die Erfindung wird nun im folgenden anhand eines Ausfüh­ rungsbeispiels näher beschrieben und erläutert.
Es zeigen:
Fig. 1 ein Blockschaltbild einer Anordnung zur zweidi­ mensionalen Transformation mit nur einer einzi­ gen Anordnung zur eindimensionalen Transforma­ tion,
Fig. 2 eine Anordnung zur eindimensionalen Transforma­ tion,
Fig. 3 ein Diagramm mit den Ein- und Ausgabezeitpunkten von zu transformierenden, bzw. transformierten Datenwörtern,
Fig. 4 ein Zeit-Zustandsdiagramm mit den ursprünglichen und den für die Erfindung modifizierten Berech­ nungszeitpunkten einzelner Zwischen- und Ender­ gebnisse des zweiten Addierers/Subtrahierers in Fig. 2.
Die Anordnung zur zweidimensionalen Transformation von n*n-strukturierten Eingangsdaten ist im Ausführungsbei­ spiel Teil einer Einrichtung zur Codierung bzw. Decodie­ rung von Bildern zum Zwecke der Datenreduzierung. Bei solchen Einrichtungen wird beispielsweise ein zu übertra­ gendes Bild mittels einer optoelektrischen Einrichtung, beispielsweise einer Videokamera oder bei Standbildern durch einen Scanner in Bildzeilen zerlegt, wobei jede Bildzeile sich aus einer bestimmten Anzahl von Bildpunkten zusammensetzt. Wie aus dem Stand der Technik hinreichend bekannt, wird ein solches Bild in Teilbilder zerlegt, wobei üblicherweise bei der Aufteilung in Teilbilder un­ terschiedliche Teilbilder für die Helligkeitsinformation (Luminanz) und die Farbinformation (Chrominanzkomponenten) erzeugt werden. Jedes Teilbild setzt sich aus n unterein­ anderliegenden Bildzeilen zusammen, wobei jede Bildzeile ebenfalls nur n aufeinanderfolgen Bildpunkte aufweist. Als besonders geeignet hat sich hierfür eine Anzahl von n = 8 Bildpunkten pro Zeile bzw. Zeilen erwiesen. Ohne Beschrän­ kung auf diese Anzahl von Bildpunkten bzw. Bildzeilen für ein Teilbild wird im folgenden Ausführungsbeispiel von 8*8-strukturierten Teilbildern ausgegangen.
Durch Abtastung mittels eines Analog-Digital-Umsetzers wird jeder Bildpunkt beispielsweise durch ein 8-bit-brei­ tes PCM-Wort repräsentiert.
Fig. 1 zeigt eine Einrichtung zur zweidimensionalen Trans­ formation von n*n-strukturierten Eingangsdaten, die sich prinzipiell sowohl zum Codieren als auch zum Decodieren eignet. Im Coderbetrieb sind einem Bildspeicher 1 die PCM- Worte mehrerer Teilbilder gespeichert. Durch entsprechende Adressierung dieses Bildspeichers 1 werden die jeweils 64 Bildpunkte eines Teilbildes X zeilenweise seriell ausgele­ sen und über den symbolisch als Umschalter dargestellten Eingangsdatenselektor 2 der Einrichtung zur eindimensiona­ len Diskreten Cosinus-Transformation 3 zugeführt. Dieser Datenselektor besteht in der bevorzugten Ausführungsform aus einem Multiplexer.
In der Anordnung zur eindimensionalen Diskreten Cosinus- Transformation 3 werden die eingelesenen Teilbilder X, wie noch später erläutert, zum ersten Mal transformiert. Die einmal transformierten Teilbilder P werden durch einen symbolisch als Umschalter dargestellten Ausgangsselektor 4 in einen Transpositionsspeicher 5 eingelesen. Dieser Transpositionsspeicher 5 ist so bemessen, daß er ein voll­ ständiges Teilbild aufnehmen kann. Die einmal transfor­ mierten Teilbilder P werden zeilenweise in diesen Trans­ positionsspeicher 5 eingeschrieben, aber spaltenweise wieder ausgelesen. Auf diese Weise werden die einmal transformierten Teilbilder P transpositioniert.
Nach dem ersten vollständigen Durchlauf eines Teilbildes X wechseln der Eingangsselektor 2 und der Ausgangsselektor 4 ihre Schaltstellungen. Auf diese Weise wird der Einrich­ tung zur eindimensionalen diskreten Cosinus-Transformation 3 das transpositionierte Teilbild PT zugeführt. Die trans­ positionierten Teilbilder PT durchlaufen die Anordnung zur eindimensionalen Diskreten Cosinus-Transformation 3 auf diese Weise ein zweites Mal. Die dabei entstehenden Aus­ gangsdaten Y werden über den Ausgangsselektor 4 einem Ausgangsspeicher 6 seriell zugeführt. In diesem Ausgangs­ speicher 6 kann jeweils ein vollständig zweidimensional transformiertes Teilbild Y zwischengespeichert werden. Diese zweidimensionale transformierten Teilbilder Y können dann einer nicht mehr gezeigten Anordnung zur Codierung zugeführt werden. Der Ausgansspeicher 6 ist Teil der nicht dargestellten Anordnung zur Codierung und somit für die Anordnung zur zweidimensionalen Transformation als solches nicht unbedingt erforderlich.
In der bevorzugten Ausführungsform jedoch sind der Trans­ positionsspeicher 5 und der Ausgangsspeicher 6 ein ein­ ziger Speicher, wobei die 1d-transformierten Teilbilder P in einem anderen Adreßraum liegen als die für die nach­ folgende Codierung zu speichernden 2d-transformierten Teilbilder Y. Die Funktion des Ausgangsselektors 4 ist hierbei durch entsprechende Adressierung dieses gemein­ samen Speichers beim Einlesen realisiert.
Als Anordnung zur eindimensionalen diskreten Cosinus- Transformation 3 eignet sich eine Einrichtung wie sie aus EP 0 286 184 bekannt ist. Abgesehen von den für die vor­ teilhafte Ausführungsform vorgenommenen Änderungen, ent­ spricht die Fig. 2 dieser Anmeldung der Fig. 4 der EP 0 286 184. Da die Wirkungsweise dieser Anordnung aus der EP 0 286 184 bereits bekannt ist, wird im folgenden nur noch ein kurzer Überblick über diese Anordnung gegeben, um dann die für eine vorteilhafte Ausführungsform erforderliche Abwandlung dieser bekannten Anordnung zu erklären.
Die bekannte Anordnung weist einen Multiplizierer 14.32 und zwei Addierer/Subtrahierer 14.30, 14.31 und eine ge­ taktete Ablaufsteuerung auf. In dem Multiplizierer 14.32 bzw. den Addierern/Subtrahierern 14.30, 14.31 zugeordneten Registern M1, M2 bzw. R1, R2, R3, R4 werden Eingangsdaten bzw. Zwischenergebnisse der Multiplikationen bzw. Additio­ nen zwischengespeichert. In einem ersten Festwertspeicher 14.44 sind die Faktoren für die Multiplikationen gespei­ chert. Ein- und Ausgang dieser Anordnung, als auch die Ein- und Ausgänge 14.33, 14.34, 14.35, 14.36, 14.37, 14.38 der Register sind teilweise fest mit verschiedenen Daten­ bussen verbunden bzw. können mittels Schaltern (SW1, . . . , SW12) mit verschiedenen Datenbussen 14.22, 14.23, 14.24, 14.25 zeitweilig verbunden werden. Auf diese Weise werden die Eingangsdaten bzw. die berechneten Zwischenergebnisse zu den entsprechenden Eingängen geführt, an denen sie zu den entsprechenden Taktzeiten benötigt werden.
Wegen der 16 erforderlichen Multiplikationen sind minde­ stens 16 Berechnungsschritte für jeweils 8 Eingangsdaten erforderlich. Nach jeweils 16 Berechnungsschritten wie­ derholt sich ein solcher Berechnungszyklus für die näch­ sten 8 Eingangswerte. Da durch die zwei Addierer jeweils gleichzeitig bei jedem Berechnungstakt zwei Additionen bzw. Subtraktionen erfolgen können, werden insgesamt auch nur 16 Berechnungstakte für die Additionen bzw. Subtrak­ tionen benötigt. Einige der Additionen können zeitgleich mit den Multiplikationen erfolgen. Da allerdings einige Additionen schon vor der ersten Multiplikation und einige Additionen nach der letzten Multiplikationen erforderlich sind, ist die Durchlaufzeit zur Berechnung der einzelnen Werte größer als 16 Berechnungstakte. Durch geschickte Verschachtelung der Berechnungen aufeinanderfolgender Eingangsdaten können der bekannten Einrichtung zur eindi­ mensionalen Diskreten Cosinus-Transformation nach 16 Be­ rechnungsschritten schon die nächsten Eingabedaten zuge­ führt werden. Die transformierten Ergebnisse der Eingangs­ werte werden wegen der erforderlichen Berechnungsschritte erst um zwei volle Berechnungszyklen versetzt ausgegeben.
Die Steuerung der Schalter SW1, . . . , SW13 bzw. die Um­ schaltung zwischen Addition bzw. Subtraktion und die An­ steuerung der richtigen Koeffizienten für die Multiplika­ tion wird von einer Ablaufsteuerung erzeugt, welche mit­ tels eines Modulo 16-Zählers 14.47 aus einem Schaltzu­ standsspeicher 14.45 für jedes anzusteuernde Element den entsprechenden Schaltzustand ausliest und über einen An­ steuerungsbus 14.46 den zu Steuereingängen der Schalter, der Addierer/Subtrahierer bzw. Adreßeingängen AD5, AD6, AD7, AD8, AD9, AD10 und AD11 den Registern R1, R2, R3, R4, M1, M2 und dem Festwertspeicher 14.44 zuführt. Die Schalt­ zustände sind durch Zeit-Zustands-Diagramme für die DCT in Fig. 10 und die IDCT in Fig. 11 der EP 0 286184 hinrei­ chend herleitbar. Einen Ausschnitt aus dem Zeit-Zustands- Diagramm für die DCT zeigt Fig. 3 dieses Dokuments.
Fig. 3 zeigt jeweils in einer ersten Spalte einen Takt­ zeitpunkt C1, in einer zweiten Spalte das diesem Taktzeit­ punkt zugeordnete Eingangs-PCM-Wort IN und in einer drit­ ten das zu diesem Taktzeitpunkt ausgegebene Ausgangs-PCM- Wort OUT. Die erste Ziffer vor dem Punkt ist die fortlau­ fende Nummer des jeweiligen Berechnungszyklus und die Nummer nach dem Punkt gibt die sich zyklisch wiederholende Nummer eines Berechnungstaktes an. So ist aus dieser Fig. 3 ersichtlich, daß zum Zeitpunkt 1.1, d. h. zum ersten Taktsignal des ersten Berechnungszyklus das PCM-Wort des ersten Bildpunktes X00 eingelesen wird, zum Zeitpunkt 1.3 der zweite Bildpunkt X01 der ersten Zeile des Teilbildes usw. eingelesen wird. Erst mit dem Einlesen des ersten Bildpunktes X20 der dritten Bildzeile des Teilbildes zum Zeitpunkt 3.1 wird der erste transformierte Wert P00 ausge­ geben. Ein- und Ausgabe erfolgen somit genau um zwei Be­ rechnungszyklen versetzt. Nach acht Berechnungszyklen sind alle Bildpunkte eines Teilbildes zum ersten Mal eingele­ sen. Mit Beginn des neunten Berechnungszyklus 9.1 kann nun spaltenweise aus dem Transpositionsspeicher 5 der erste transpositionierte Zwischenwert eingelesen werden. Dies ist zum Zeitpunkt 9.1 der Wert P00. Da dieser Wert bereits zum Zeitpunkt 3.1 ausgegeben wurde, ist das Einschreiben dieses Wertes unkritisch. Gleiches gilt für die Werte P10 bis P60. Ein Problem ergibt sich allerdings beim Werte P70 zum Zeitpunkt 9.15. Dieser Wert wird erst zum Zeitpunkt 9.16 berechnet und zum Zeitpunkt 10.1 ausgegeben.
Die einfachste Lösung wäre es, das Einlesen der transposi­ tionierten Zwischenergebnisse einen Berechnungszyklus auszusetzen. Dies hätte aber zur Folge, daß der maximal erzielbare Datendurchsatz hierdurch entsprechend sinken wurde.
Die bevorzugte Ausführungsform beschreitet hingegen einen anderen Lösungsweg. Fig. 4 ist ein Ausschnitt des Zeit-Zu­ stands-Diagramms der Fig. 10 der EP 0 286 184. In der ersten Spalte sind die verschiedenen Takte 1 bis 16 eines Berechnungszyklus wiedergegeben. In der zweiten Spalte A- S(2) sind die Zwischenergebnisse und Endergebnisse der Addition des zweiten Addierers entsprechend derselben Spalte in Fig. 10 der EP 0 286 184 nach dem Stand der Technik wiedergegeben. In der dritten Spalte A-S(2)′ ist die nach der Erfindung modifizierte Berechnung der Zwi­ schenergebnisse und Ergebnisse des zweiten Addierers wie­ dergegeben.
Wie aus Fig. 4 ersichtlich ist wurde lediglich die Berech­ nungsreihenfolge von P0, P6 und P7 vertauscht. P7 wird aus den Summanden P′′7 und Z10 bereits schon im Takt 11, P6 aus den Summanden Z3 und Z2 erst im Takt 16 berechnet, damit P0 aus den Summanden Z6 und Z1 nunmehr erst in Takt 14 im zweiten Addierer 14.31 berechnet werden kann. Alle anderen Berechnungen bleiben in der ursprünglichen Reihenfolge erhalten. Der Übersichtlichkeit halber sind diese gleich­ bleibenden Berechnungen in Fig. 4 in der Spalte A/S(2)′ lediglich durch drei Punkte dargestellt. Eine Änderung der Berechnungsreihenfolge des ersten Addierers bzw. des Mul­ tiplizierers ist bei der bekannten Anordnung nicht erfor­ derlich.
Nachdem die beiden Summanden Z6 und Z1 dem zweiten Addierer A/S (2) jeweils im 14. Berechnungstakt zugeführt werden, ist das Ergebnis der Addition dieser beiden Summanden wegen der endlichen Rechenzeit des Addierers nicht sofort am Ausgang des zweiten Addierers 14.31 vorhanden. Da die Rechenzeit des Addierers aber kürzer als eine Taktperiode ist, ist das Ergebnis schon vor Beginn des 15. Berech­ nungstaktes vorhanden und wird über ein hierfür speziell vorgesehenes Schaltmittel SW13 vom Ausgang des Addierers direkt an den Eingang 14.33 des Registers R1 geführt. Dieses Schaltmittel SW13 wird nur dann geschlossen, wenn der erste 1d-transformierte Wert P70 einer letzten Zeile P70 . . . P77 im zweiten Berechnungslauf wegen der Transformation als letzter Wert P70 der ersten Zeile P00 . . . P70 dem Regi­ ster R1 zugeführt werden soll. In diesem Fall darf der Schalter SW1, der in allen anderen Taktperioden, die über den Eingang 14.20 auf den Eingangsdatenbus 14.22 jeweils im 15. Berechnungstakt eingelesenen Eingangsdaten X07, X17, X27, . . . , X77 und P71, P72, . . . , P77 an den Eingang 14.33 des Registers R1 durchschaltet, nicht geschlossen werden.
Durch den Schalter SW13 und dessen geeignete Ansteuerung ist eine Schaltungsänderung nur innerhalb der Anordnung zur eindimensionalen Transformation erforderlich. Wegen der Vertauschung der Berechnungszeitpunkte von P0, P6 und P7 muß noch entweder deren Abspeicherung in den Registerzel­ len der Registers R3, R4 oder wahlweise die Ansteuerung beim Auslesen aus diesen Registerzellen vertauscht werden.
Es bleibt natürlich in das Belieben des Fachmanns ge­ stellt, das Ergebnis der Addition über Schaltmittel auf den Eingangsdatenbus 14.22 und von dort auf den Eingang 14.33 des Registers R1 zu führen oder andere ähnliche Ausgestaltungen zu wählen. Alle diese "internen" Varianten bieten den Vorteil, daß eine Änderung in der Außenbeschal­ tung der Anordnung zur eindimensionalen Transformation nicht erforderlich ist.
Die gleiche technische Lehre kann auch bei der inversen diskreten Cosinus-Transformation (IDCT) angewandt werden, wobei lediglich die Berechnungsreihenfolge und die für die Multiplikation erforderlichen Koeffizienten entsprechend der in der EP 0 286 184 geoffenbarten Lehre entsprechend angepaßt werden müssen.
Die beschriebene Anordnung zur eindimensionalen Transfor­ mation eignet sich daher je nach dem im Schaltzustands­ speicher 14.45 gespeicherten Steuerinformationen wahlweise als Anordnung zur zweidimensionalen Cosinus-Transformation bzw. als Anordnung zur zweidimensionalen Inversen Diskre­ ten Cosinus-Transformation. Je nach Auswahl des entspre­ chenden Ablaufprogramms ist auch eine Umschaltung zwischen diesen beiden Betriebsarten möglich. Hierbei ist jedoch zu beachten, daß bei jeder Umschaltung wegen der sich über mehrere Berechnungszyklen erstreckenden Durchlaufzeit und der für jede Betriebsart unterschiedlichen Schaltzustände und Koeffizienten nach der letzten Eingabe in eine der beiden Betriebsarten bis zur Eingabe des ersten Wertes in der anderen Betriebsart die entsprechende Anzahl von vol­ len Berechnungszyklen ohne Eingabewerte durchlaufen werden müssen bis der letzte DCT-Wert der entsprechenden Be­ triebsart ausgegeben ist.

Claims (6)

1. Anordnung zur zweidimensionalen Transformation von N*N strukturierten Eingangsdaten, bei der vorgesehen sind
  • - Mittel zur eindimensionalen Transformation (3) von jeweils eine Zeile bildenden N Datenwörtern (X00 . . . X0N) zu N transformierten Datenwörtern (P00 . . . P0N)
  • - Mittel zur Transposition (5) der N*N transformier­ ten Datenwörter ((P00 . . . P0N) . . . (P0N . . . PNN)) in transponierte Datenwörter ((P00 . . . PN0) . . . (PN0 . . . PNN))
  • - Mittel zum wahlweisen Einlesen der N*N strukturierten Eingangsdaten ((X00 . . . X0N) . . . (XN0 . . . XNN), bzw. der transponierten Datenwörter ((P00 . . . PN0) . . . (PN0 . . . PNN)) in die Mittel zur eindimensionalen Trans­ formation (3).
2. Anordnung zur zweidimensionalen Transformation von N*N strukturierten Eingangsdaten nach Anspruch 1, dadurch gekennzeichnet, daß vorgesehen ist, nach der Eingabe der letzten Zeile der Eingabedaten (XN0 . . . XNN) ohne Verzögerung die erste trans­ ponierte Zeile (P00 . . . PN0) folgen zu lassen, wobei vor­ gesehen ist das erste Datenwort (PN0) der letzten Zeile einer erstmals eindimensional-transformierten Zeile (PN0 . . . PNN) spätestens bei der Eingabe des letzten Datenwortes (PN0) der ersten transformierten Zeile bereitzustellen (P00 PN0).
3. Anordnung zur zweidimensionalen Transformation von N*N strukturierten Eingangsdaten nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß vorgesehen ist, das erste Datenwort (PN0) der letzten Zeile (PN0 . . . PNN) nach der ersten eindimensionalen Trans­ formation unter Umgehung der Mittel zur Transposition (5) den Mitteln zur eindimensionalen Transformation (3) als Eingabe-Datenwort vorzugeben.
4. Anordnung zur zweidimensionalen Transformation von N*N strukturierten Eingangsdaten nach Anspruch 3, dadurch gekennzeichnet, daß zur Umgehung der Mittel zur Transposition (5) Schalt­ mittel (SW13) vorgesehen sind.
5. Anordnung zur zweidimensionalen Transformation von N*N strukturierten Eingangsdaten nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß als Transformationsalgorithmus die Diskrete Cosinus Transformation bzw. die Inverse Diskrete Cosinus Trans­ formation vorgesehen ist.
6. Anordnung zur zweidimensionalen Transformation von N*N strukturierten Eingangsdaten nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß die Anordnung zur zweidimensionalen Transformation Teil einer Einrichtung zur Bildverarbeitung bzw. Bildüber­ tragung ist.
DE19924218189 1992-06-03 1992-06-03 Anordnung zur zweidimensionalen Transformation Withdrawn DE4218189A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19924218189 DE4218189A1 (de) 1992-06-03 1992-06-03 Anordnung zur zweidimensionalen Transformation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19924218189 DE4218189A1 (de) 1992-06-03 1992-06-03 Anordnung zur zweidimensionalen Transformation

Publications (1)

Publication Number Publication Date
DE4218189A1 true DE4218189A1 (de) 1993-12-09

Family

ID=6460235

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19924218189 Withdrawn DE4218189A1 (de) 1992-06-03 1992-06-03 Anordnung zur zweidimensionalen Transformation

Country Status (1)

Country Link
DE (1) DE4218189A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2734926A1 (fr) * 1995-05-31 1996-12-06 United Microelectronics Corp Circuit bi-dimensionnel en temps reel de transformation en cosinus discret/transformation inverse en cosinus discret
NL1000506C2 (en) * 1995-06-07 1996-12-10 United Microelectronics Corp Real=time two=dimensional discrete cosine transform circuit

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2734926A1 (fr) * 1995-05-31 1996-12-06 United Microelectronics Corp Circuit bi-dimensionnel en temps reel de transformation en cosinus discret/transformation inverse en cosinus discret
NL1000506C2 (en) * 1995-06-07 1996-12-10 United Microelectronics Corp Real=time two=dimensional discrete cosine transform circuit

Similar Documents

Publication Publication Date Title
DE69028075T2 (de) Digitaler bildinterpolator
DE2640140C2 (de) Verfahren und Anordnung zur redundanzvermindernden Bildcodierung
DE3688353T2 (de) Nichtrekursiver zweidimensionaler digitalfilter.
DE69425847T2 (de) Rechner für die inverse diskrete Cosinus-Transformation
DE69020724T2 (de) Schneller interpolationsfilter für fernsehnormenumsetzung.
DE69728247T2 (de) Pyramidenförmiger pipeline-prozessor für ein bildverarbeitungssystem
DE3872424T2 (de) Fernsehuebertragungssystem mit verwendung von transformationskodierung.
DE3789116T2 (de) Prozessor zur zweidimensionalen diskreten cosinustransformation.
DE69422871T2 (de) Digitaler integrierter Abtastratenumwandlungsschaltkreis und Anwendung bei einer schnellen Grössenänderung eines Bildes
DE4033552C2 (de)
DE2640157C2 (de) Verfahren und Anordnung zum redundanzvermindernden Codieren von Bildern
DE3689926T2 (de) Einrichtung zur sequenziellen Bildtransformation.
DE68921847T2 (de) Verfahren und Anordnung zur Filterung des Bilddarstellungssignals.
DE3632639C2 (de) Einrichtung zum Hochgeschwindigkeitsverarbeiten von Bilddaten durch Faltung
DE4133460A1 (de) Einrichtung und verfahren zum verdichten von bildern
DE4038240A1 (de) Prozessor zum durchfuehren einer orthogonaltransformation
DE639032T1 (de) Struktur und Verfahren für einen Mehrnormen-Bildkodierer/-dekodierer.
DE69117579T2 (de) Gammakorrekturschaltungen
DE69633716T2 (de) Hochgeschwindigkeitssystem zur Skalierung von Bildern
DE4141024A1 (de) Verfahren zum umsetzen zwischen zwei farbraeumen
DE9219006U1 (de) Digitale Zoomvorrichtung mit Bildpufferspeichern
DE69721373T2 (de) Quantisierer für ein Videokodierungssystem
DE3505796C2 (de)
DE69221923T2 (de) Gemeinsamer Zwischenformat-Umwandler mit verringerter Multipliziereranzahl
EP0304836A2 (de) Verfahren und Schaltungsanordnung zur Verbesserung der Auflösung von digitalen Signalen

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: G06F 17/14

8127 New person/name/address of the applicant

Owner name: PHILIPS CORPORATE INTELLECTUAL PROPERTY GMBH, 2233

8130 Withdrawal