DE10149213A1 - Verfahren zur Skalierung von Bilddaten-Samples und Vorrichtung hierzu - Google Patents

Verfahren zur Skalierung von Bilddaten-Samples und Vorrichtung hierzu

Info

Publication number
DE10149213A1
DE10149213A1 DE10149213A DE10149213A DE10149213A1 DE 10149213 A1 DE10149213 A1 DE 10149213A1 DE 10149213 A DE10149213 A DE 10149213A DE 10149213 A DE10149213 A DE 10149213A DE 10149213 A1 DE10149213 A1 DE 10149213A1
Authority
DE
Germany
Prior art keywords
output
sample
samples
register
adder
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
DE10149213A
Other languages
English (en)
Inventor
Andreas Verse
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.)
Sci Worx GmbH
Original Assignee
Sci Worx 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 Sci Worx GmbH filed Critical Sci Worx GmbH
Priority to DE10149213A priority Critical patent/DE10149213A1/de
Publication of DE10149213A1 publication Critical patent/DE10149213A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/10Selection of transformation methods according to the characteristics of the input images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/28Indexing scheme for image data processing or generation, in general involving image processing hardware

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)

Abstract

Ein Verfahren zur Skalierung von Bilddaten-Samples mit einem Skalierungsfaktor (s) als Verhältnis der Gesamtanzahl der resultierenden skalierten Samples (S) zu der Gesamtanzahl von Ausgangssamples (P) und mit dem relativen Abstand (a¶i¶) zwischen einem aktuellen skalierten Sample (S¶j¶) und dem unmittelbar vorausgehenden Ausgangssampel (P¶i¶), wobei ein aktuelles skaliertes Sample (S¶j¶) aus den in Abhängigkeit von dem relativen Abstand (a¶j¶) gewichteten vorausgehenden und nachfolgenden Ausgangsamples (P¶i¶ und P¶i+1¶) bestimmt wird, hat zur Berechnung des relativen Abstands (a¶j¶) die Schritte: DOLLAR A - Addieren des inversen Skalierungsfaktors (q = 1/s) mit dem relativen Abstand (a¶j-1¶) eines vorhergehenden skalierten Samples (S¶j-1¶), und DOLLAR A - Subtrahieren der Zahl Eins vom Additionsergebnis, wenn das Additionsergebnis größer als Eins ist.

Description

  • Die Erfindung betrifft ein Verfahren zur Skalierung von Bilddaten-Samples mit einem Skalierungsfaktor als Verhältnis der Gesamtanzahl der resultierenden skalierten Samples zu der Gesamtanzahl von Ausgangssamples und mit dem relativen Abstand zwischen einem aktuellen skalierten Sample und dem unmittelbar vorausgehenden Ausgangssample, wobei ein aktuelles skaliertes Sample aus den in Abhängigkeit von dem relativen Abstand gewichteten vorausgehenden und nachfolgenden Ausgangssamples bestimmt wird.
  • Bei der digitalen Bildverarbeitung ist es insbesondere zur Bilddarstellung auf Bildanzeigeeinheiten, wie LCD-Displays, oftmals erforderlich, Bilder zu vergrößern (upsampling) oder zu verkleinern (downsampling). Hierbei werden die Bilddaten-Samples mit einem beliebigen Skalierungsfaktor skaliert.
  • Eine zweidimensionale Skalierung wird in der Regel durch zwei aufeinanderfolgende orthogonale Skalierungen, d. h. zeilen- und spaltenweise realisiert. Die Ausgangsbilddaten sind hierbei Ausgangssamples, die den jeweiligen Ortskoordinaten zugeordnet sind.
  • Die Abstände Δti aufeinanderfolgender Ausgangssamples (Δti = ti+1 - ti) sowie die Abstände Δtj der durch die Skalierung an den Positionen entstehenden skalierten Samples (Δtj = tj+1 - tj) sind konstant.
  • Der Skalierungsfaktor s beschreibt das Verhältnis der Gesamtanzahl der skalierten Samples zu den Ausgangssamples und damit den Faktor, um den ein Bild vergrößert bzw. verkleinert wird. Er berechnet sich nach der Formel s = Δti/Δtj. Der inverse Skalierungsfaktor q ergibt sich damit als


  • Die Aufskalierung (Upsampling) erfolgt in der Regel durch lineare Interpolation, wobei der skalierte Sample Sj aus dem ihm unmittelbar vorausgehenden Ausgangssample Pi und dem ihm unmittelbar folgenden Ausgangssample Pi+1 mit einer Gewichtung entsprechend der jeweiligen Abstände α der Ausgangssamples zu den skalierten Samples gebildet wird. Die Berechnung der skalierten Samples erfolgt nach den Formeln:

    Sj(1 - α)Pi + α)Pi+1

    α = (tj - ti)/ti+1 - ti)

    mit i und j als ganze Zahlen und ti ≤ tj < ti+1.
  • Bei der Abskalierung (downsampling) errechnen sich die skalierten Samples Sj in ähnlicher Weise aus den entsprechend ihrer relativen Abstände α zu den skalierten Samples S gewichteten Ausgangssamples P, die zwischen dem unmittelbar vorhergehenden skalierten Sample und dem unmittelbar nachfolgenden skalierten Sample liegen. Die Interpolation erfolgt herkömmlicherweise nach den folgenden Formeln:




    mit i, j und k als ganze Zahl und tj-1 ≤ ti < tj und tj ≤ tk < tj+1.
  • Das Problem bei der Skalierung ist, dass zur Berechnung des relativen Abstands eine Division erforderlich ist.
  • Aufgabe der Erfindung war es, ein Verfahren zur Skalierung von Bilddaten-Samples zu schaffen, das eine schritthaltende Berechnung von skalierten Samples mit geringem Hardware-Aufwand, insbesondere unter Einsparung von Speicherplatz und arithmetischen Rechenmodulen, ermöglicht.
  • Die Aufgabe wird erfindungsgemäß gelöst durch Berechnen des relativen Abstands mit den Schritten:
    • - Addieren des inversen Skalierungsfaktors mit dem relativen Abstand eines vorhergehenden skalierten Samples, und
    • - Subtrahieren der Zahl Eins vom Additionsergebnis, wenn das Additionsergebnis größer als Eins ist.
  • Der Rechenaufwand zur Berechnung des relativen Abstands reduziert sich hierdurch auf die Aufaddierung der im vorhergehenden Schritt berechneten relativen Abstände mit dem inversen Skalierungsfaktor. Dem Verfahren liegt die Erkenntnis zugrunde, dass die Division bei der Berechnung des relativen Abstands vermieden werden kann, wenn die Differenz der Abstände auf Eins normiert wird. Dies ist möglich, da die tatsächlichen Koordinaten aufgrund der digitalen Berechnung aufeinanderfolgender Werte der skalierten Samples und aus den Ausgangssamples unerheblich sind und nur ihr durch den relativen Abstand gegebenes relatives Verhältnis zueinander von Bedeutung ist. Die Differenz ist dann gleich dem inversen Skalierungsfaktor, so dass sich bei der Berechnung eines skalierten Samples, das zwischen dem Ausgangssample und dem nachfolgenden Ausgangssample liegt, der relative Abstand um den inversen Skalierungsfaktor erhöht. Da der neue Bezugspunkt für den relativen Abstand αi nun jedoch ti+1 ist, muss der für Δti normierte Wert Eins wieder abgezogen werden. Damit ist auch sichergestellt, dass bei einem Abskalieren der inverse Skalierungsfaktor q > 1 bleibt.
  • Das Subtrahieren der Zahl Eins vom Additionsergebnis erfolgt vorzugsweise bei einem digitalen Addierer über das Weglassen des die Zahl Eins repräsentierenden Carry-Bits.
  • Zur weiteren Berechnung des skalierten Samples wird dann das einem skalierten Sample unmittelbar nachfolgende Ausgangssample von dem unmittelbar vorausgehenden Ausgangssample subtrahiert. Das Ergebnis der Subtraktion wird dann mit dem zugehörigen relativen Abstand multipliziert und das unmittelbar vorausgehende Ausgangssample auf das Ergebnis der Multiplikation addiert.
  • Das Verfahren kann somit durch Umstellen des Algorithmus in die Formel

    Sj = α(Pi+1 -Pi) + Pi
    mit weniger Aufwand implementiert werden. In entsprechender Weise werden zur Abskalierung (Downsampling) die relativen Abstände auf addiert, wobei jedoch die Differenz auf den Wert Eins normiert ist.
  • Bei der Abskalierung stellt sich das weitere Problem, dass eine Division durch einen Normierungswert für die Gewichtungen der Ausgangssamples erforderlich ist und dieser Normierungswert für die Abstände der verschiedenen Ausgangssamples und skalierten Samples schankt, wenn der inverse Skalierungsfaktor keine positive ganze Zahl ist.
  • Zur Abskalierung wird daher vorgeschlagen, zunächst eine Abskalierung der Ausgangssamples mit einem zum inversen Skalierungsfaktor nächst höheren ganzzahligen inversen Skalierungsfaktor durchzuführen. Anschließend erfolgt ein Aufskalieren der abskalierten Samples mit einem inversen Skalierungsfaktor, der dem Verhältnis des ganzzahligen inversen Skalierungsfaktors q' zum inversen Skalierungsfaktor q entspricht.
  • Alternativ kann auch zuerst das Aufskalieren der Ausgangssamples mit dem inversen Skalierungsfaktor und anschließend das Abskalieren der aufskalierten Samples mit dem ganzzahligen inversen Skalierungsfaktor erfolgen.
  • Auf diese Weise wird sichergestellt, dass das Abskalieren immer mit einem ganzzahlingen inversen Skalierungsfaktor erfolgt und dadurch der Normierungswert konstant ist. Die erforderliche Division kann dann durch eine Multiplikation mit einem zuvor berechneten inversen Normierungswert bzw. dem Produkt des inversen Skalierungsfaktors mit dem inversen Normierungswert sowie dem Produkt aus der Differenz zwischen der Zahl Eins und dem inversen Skalierungsfaktor q' mit dem inversen Normierungswert ersetzt werden.
  • Für definierte ganzzahlige inverse Skalierungsfaktoren werden mögliche Produkte und der relativen Abstände mit dem Normierungswert und Differenzprodukte als Produkt der Differenz zwischen der Zahl Eins und den relativen Abständen mit dem Normierungswert berechnet und fest abgespeichert.
  • Eine Vorrichtung zur Durchführung des Verfahrens hat ein erstes Register für den inversen Skalierungsfaktor, einen Addierer am Ausgang des ersten Registers und ein zweites Register am Ausgang des Addierers, wobei das zweite Register an einen Eingang des Addierers zur Addition des inversen Skalierungsfaktors mit dem relativen Abtand eines vorhergehenden skalierten Samples angeschlossen ist und das Subtrahieren der Zahl Eins vom Additionsergebnis im Addierer durch Weglassen des Carry- Bits erfolgt.
  • Zur Berechnung eines aufskalierten Samples ist ein Subtrahierer zur Bildung der Differenz zwischen dem unmittelbar nachfolgenden Ausgangssample und dem unmittelbar vorausgehenden Ausgangssample, ein Multiplizierer am Ausgang des Subtrahierers, der mit seinem anderen Eingang an den Ausgang des zweiten Registers angeschlossen ist, und ein Addierer am Ausgang des Multiplizierers vorgesehen, der mit seinem anderen Eingang an ein Register für das unmittelbar vorausgehende Ausgangssample angeschlossen ist.
  • Zur Abskalierung ist ein Festspeicher für die möglichen Produkte und Differenzprodukte vorgesehen, so dass die Produkte und Differenzprodukte nicht mehr neu berechnet werden müssen.
  • An den Festspeicher ist ein erster Multiplizierer zur Multiplikation eines Produktes mit einem Ausgangssample angeschlossen. Ferner ist ein dritter Addierer an den Ausgang des ersten Multiplizierers mit einem Register geklemmt, der an den Ausgang des Addierers gekoppelt ist, wobei das Register an den anderen Eingang des Addierers angeschlossen ist und das abskalierte Sample zwischenspeichert. Ein zweiter Multiplizierer zur Multiplikation eines Differenzproduktes mit dem Ausgangssample ist ebenfalls an den Festspeicher angeschlossen. Ein vierter Addierer befindet sich an dem Ausgang des zweiten Multiplizierers mit einem Register, das an den Ausgang des Addierers gekoppelt ist, wobei das Register an den anderen Eingang des Addierers angeschlossen ist und das nachfolgende abskalierte Sample zwischenspeichert.
  • Zur Initialisierung der Vorrichtung ist ein Multiplexer zwischen dem Ausgang des dritten Addierers und dem Register vorgesehen, um wahlweise die Werte am Ausgang des dritten Addierers oder die Werte, die in dem Register des vierten Addierers für den nachfolgenden abskalierten Sample abgelegt sind, in das Register zu speichern.
  • Ebenfalls kann ein weiterer Multiplexer, zwischen dem Ausgang des vierten Addierers und dem Register vorgesehen sein, um wahlweise die Werte an dem Ausgang des vierten Addierers oder den Wert Null in das Register zu speichern.
  • Die Erfindung wird nachfolgend anhand der beigefügten Zeichnungen näher erläutert. Es zeigen:
  • Fig. 1 Zeitdiagramm von Ausgangssamples und skalierten Samples bei der Aufskalierung durch lineare Interpolation;
  • Fig. 2 Blockschaltbild einer Vorrichtung zur Aufskalierung mit dem erfindungsgemäßen Verfahren;
  • Fig. 3 Zeitdiagramm von Ausgangssamples und skalierten Samples bei der Abskalierung durch Interpolation;
  • Fig. 4 Blockschaltbild einer Vorrichtung zur Abskalierung mit dem erfindungsgemäßen Verfahren.
  • Die Fig. 1 lässt ein Zeitdiagramm von Ausgangssamples P, die zur Zeit t bzw. mit einem entsprechenden Abstand voneinander als Bilddaten-Samples eines Bildausschnittes vorliegen. Die Ausgangssamples P können z. B. Luminanz-Bilddaten Y oder Chröminanz-Bilddaten Cr oder Cb oder sonstige Bildpunkte sein.
  • Zur Vergrößerung des Bildes werden die Ausgangssamples P mit einem inversen Skalierungsfaktor q skaliert, so dass Zwischenwerte zwischen den Ausgangssamples P erzeugt werden. Die skalierten Samples Sj werden aus dem jeweils unmittelbar vorausgehenden Ausgangssample Pi und dem unmittelbar folgenden Ausgangssample Pi-1 mit einer Gewichtung entsprechend der jeweiligen Abstände des skalierten Samples Sj zu den Ausgangssamples Pi und Pi+1, gebildet.
  • Erfindungsgemäß wird der Abstand Δti zwischen dem unmittelbar nachfolgenden Ausgangssample Pi+1 und dem unmittelbar vorhergehenden Ausgangssample Pi auf den Wert Eins normiert.
  • Aus der Beziehung für den inversen Skalierungsfaktor


    ergibt sich dann, dass der Abstand Δtj von zwei benachbarten skalierten Samples Sj dem inversen Skalierungsfaktor q entspricht. Erfindungsgemäß kann dann ein relativer Abstand αi,j+1 für einen skalierten Sj+1 aus dem relativen Abstand für den vorhergehenden skalierten Sample Sj durch Addition des inversen Skalierungsfaktors q für ein Abtastsample Pi berechnet werden. Wenn diese Addition auch für die darauffolgenden Ausgangssamples Pi+1 etc. weitergeführt wird, würde der inverse Skalierungsfaktor größer Eins sein. Bei einem Aufskalieren muss der inverse Skalierungsfaktor allerdings kleiner Eins sein. Aufgrund des neuen Bezugspunktes ti+1 und der Normierung wird der normierte Wert daher von dem relativen Abstand αi+1,j abgezogen.
  • Bei der Verwendung eines digitalen Addierers kann dies sehr einfach durch Weglassen des den Wert Eins repräsentierenden Carry-Bits erfolgen.
  • Die Fig. 2 zeigt ein Blockschaltbild einer Vorrichtung zur Durchführung des Aufskalierungs-Verfahrens. In einem ersten Register 1 ist der inverse Skalierungsfaktor q abgelegt. Dieser wird in einem ersten Addierer 2 mit dem vorher bestimmten relativen Abstand α addiert. Das Additionsergebnis wird als neuer relativer Abstand α in einem zweiten Registerspeicher 3 zwischengespeichert.
  • Zur Berechnung eines skalierten Samples Sj werden die Ausgangssamples P fortlaufend in einem vierten und fünften Registerspeicher 4 und 5 abgelegt, wobei die Register 4 und 5 hintereinander geschaltet sind, so dass in dem dritten Register 4 das unmittelbar vorausgehende Ausgangssample Pi+1 und in dem vierten Register 5 der unmittelbar vorhergehende Ausgangssample Pi vorliegt. Von dem unmittelbar folgenden Ausgangssample Pi+1 wird der unmittelbar vorhergehende Ausgangssample Pi mit einem ersten Subtrahierer 6 subtrahiert und das Ergebnis mit dem relativen Abstand α in einem ersten Multiplizierer 7 multipliziert. Hierzu ist ein Eingang des ersten Multiplizierers 7 mit dem Ausgang des zweiten Registers 3 verschaltet. Der Ausgang des Multiplizierers 7 ist an einen zweiten Addierer 8 geschaltet. Der andere Eingang des zweiten Addierers 8 ist an den Ausgang des vierten Registers 5 mit dem unmittelbar vorhergehenden Ausgangssample Pi verschaltet, so dass als skaliertes Sample Sj = α(Pi+1 - Pi) + Pi berechnet wird.
  • Mit der Schaltungsanordnung können die Ausgangssamples P schrittweise in die dritten und vierten Register 4 und 5 geladen werden. An dem Ausgang des zweiten Addierers 8 werden die skalierten Samples S dann schrittweise zur Verfügung gestellt. Der Rechenaufwand zur Aufskalierung durch lineare Interpolation reduziert sich mit dem erfindungsgemäßen Verfahren auf die Aufaddierung der relativen Abstände α mit dem inversen Skalierungsfaktor q, die Subtraktion von dem relativen Abstand von der Zahl Eins (1-α), die beiden Multiplikationen mit den Ausgangssamples P und die Addition ihrer Ergebnisse.
  • Die Fig. 3 lässt ein Zeitdiagramm von Ausgangssamples P und skalierten Samples S für die Abskalierung (Downsampling) durch Interpolation erkennen. Jedes abskalierte Sample Sj errechnet sich, wie eingangs beschrieben, aus den entsprechend ihrer Entfernung zu den skalierten Samples Sj gewichteten Ausgangssamples P, die zwischen den unmittelbar vorhergehenden skalierten Sample Sj-1 und dem unmittelbar nachfolgenden skalierten Sample Sj+1 liegen. Dabei wird jeder Ausgangssample Pi zur Berechnung der beiden ihn umgebenen skalierten Samples Sj und Sj+1 verwendet. Um nicht alle Ausgangssamples P zwischen zwei skalierten Samples zwischenspeichern zu müssen, wird nur der jeweilige gewichtete Betrag jedes Ausgangssamples Pi zu den skalierten Samples Sj und Sj+1 aufaddiert. Die entsprechenden Summen ergeben dann die skalierten Samples Sj.
  • Die Abskalierung erfolgt nach folgendem Gleichungssystem:




    mit i, j und k als ganze Zahl und tj-1 ≤ ti < tj und tj ≤ tk < tj+1.
  • Wie aus der Fig. 3 ersichtlich ist, werden auch hier wiederum die relativen Abstände α aufaddiert. Hierbei wird jedoch der Abstand Δtj von zwei skalierten Samples Sj auf den Wert Eins normiert. Der Abstand Δti von zwei benachbarten Ausgangssamples P entspricht daher dem Skalierungsfaktor S.
  • Bei der Abskalierung ist der Normierungswert N von den relativen Abständen α abhängig. Wenn der inverse Skalierungsfaktor q keine positive ganze Zahl ist, schwankt der Normierungswert N für die Gewichtungen für verschiedene bezogene skalierte Samples Sj, das heißt für verschiedene Wertes des Index j.
  • Erfindungsgemäß wird daher für nicht ganzzahlige inverse Skalierungsfaktoren q der nächst höhere natürliche inverse Skalierungsfaktor q' gewählt. Hierdurch ist der Normierungswert N konstant, so dass die Division mit dem Normierungswert N durch eine Multiplikation mit einem vorher berechneten Produkt aus den möglichen relativen Abständen α mit dem inversen Normierungswert N ersetzt werden kann. Die Berechnung der Summen zur Ermittlung des Normierungswertes Nj ist dann nicht mehr erforderlich.
  • Vorher oder anschließend wird eine Aufskalierung (Upsampling) nach dem oben beschriebenen Verfahren durchgeführt, wobei der inverse Skalierungsfaktor q" für die Aufskalierung aus dem Verhältnis des zur Abskalierung verwendeten inversen Skalierungsfaktors q' zu dem inversen Skalierungsfaktor q (q'/q) verwendet wird.
  • Der Prozess der Abskalierung wird daher in einen Prozess der Abskalierung mit einem ganzzahligen inversen Skalierungsfaktor q' und einem anschließenden oder vorhergehenden leichten Aufskalieren aufgeteilt.
  • Die Fig. 4 lässt ein Blockdiagramm zur Durchführung des Verfahrens zur Abskalierung unter Verwendung des Produkts aus den möglichen relativen Abständen α mit dem inversen Normierungswert N (α/N) sowie dem Differenzprodukt aus der Differenz zwischen dem Wert Eins und dem relativen Abstand α mit dem inversen Normierungswert N((1-α)/N) erkennen. Diese möglichen Produkte und Differenzprodukte sind in einem Festwertspeicher 9 abgelegt.
  • Die Ansteuerung erfolgt über eine Steuereinheit 10, mit der die entsprechenden Produkte und Differenzprodukte ausgewählt werden können.
  • Die Produkte und Differenzprodukte werden zusammen mit den Ausgangssamples P auf einen zweiten und dritten Multiplizierer 11 und 12 gegeben. An dem Ausgang des zweiten Multiplizierers 11 liegt dann der Wert (1-α)/N × P und an dem dritten Multiplizierer 12 der Wert α/N × P an.
  • Der Ausgang des zweiten Multiplizierers 11 wird mit dem in einem fünften Registerspeicher 13 abgelegten skalierten Sample Sj in einem dritten Addierer 14 addiert und das Ergebnis in das fünfte Register 13 geschrieben.
  • Gleichzeitig wird das Ergebnis am Ausgang des dritten Multiplizierers 12 mit dem in einem sechsten Register 15 abgelegten unmittelbar folgenden abskalierten Sample Sj+1 in einem vierten Addierer 16 addiert und das Ergebnis in das sechste Register 15 geladen.
  • Eine Freigabevorrichtung 17 wird von der Steuerungseinheit 10 angesteuert, um den Ausgang des fünften Registers 13 gegebenenfalls durchzuschalten, wenn die Berechnung eines skalierten Samples Si für einen Ausgangssample Pi vollständig durchgeführt ist.
  • Zwischen dem dritten Addierer 14 und dem fünften Register 13 sowie dem vierten Addierer 16 und dem sechsten Register 15 ist jeweils ein Multiplexer 18 und 19 geschaltet, wobei ein Eingang des ersten Multiplexers 18 mit dem sechsten Register 15 zur Übernahme des unmittelbar folgenden skalierten Samples Sj+1 in das fünfte Register 13 verschaltet ist. Der zweite Multiplexer 19 ist zur Übernahme des Wertes Null für die Initialisierung ausgebildet.
  • Die Ausgangswerte akkumulieren sich in dem fünften und sechsten Register 13 und 15. Wenn ein skaliertes Sample S vollständig berechnet ist, wird zwischen dem fünften und sechsten Register 13 und 15 umgeschaltet, so dass dann beide Summenanteile zur Berechnung des skalierten Samples


    addiert werden.
  • Zusammen mit der Skalierung kann gleichzeitig eine Farbformatkonvertierung durchgeführt werden. Das beschriebene Verfahren und die Vorrichtungen lassen sich auch für die Konvertierung von verschiedenen Farbformaten verwenden. Hierbei werden die Chrominanz-Samples getrennt von den Luminanz-Samples behandelt. Dies wird beispielhaft anhand von zwei Konvertierungsfällen beschrieben. Hieraus ist auch die Wahl des Startwertes für den relativen Abstand A ersichtlich.
  • 1. Format 4 : 4 : 4 nach 4 : 2 : 2 und umgekehrt
  • Wenn bei einem 4 : 4 : 4-Format die horizontalen Ausgangssample-Positionen der Chrominanzwerte bei den Werten tp0 = 0,25, tp1 = 0,75, tp2 = 1,25 usw. festgelegt werden, so liegen die skalierten Samples des 4 : 2 : 2-Formats bei ts0 = 0,25, ts1 = 1,25, ts2 = 2,25 usw. Bei einem linken Bildrand einer Position t = 0 und einer Abskalierung um einen inversen Skalierungsfaktor q = 2 beträgt der Startwert für den relativen Abstand α = 0,25. Der relative Abstand α wird jeweils um den Wert 0,5 inkrementiert und die Farbformatkonvertierung durchgeführt.
  • Wenn parallel zu der Farbformatkonvertierung eine Bildskalierung stattfinden soll, kann sie mit dem Abskalieren in einem Skalierungsschritt kombiniert werden.
  • Umgekehrt wird bei einer Farbformatkonvertierung von 4 : 2 : 2 nach 4 : 4 : 4 eine Aufskalierung mit den Werten


    ausgeführt. Der Startwert für den relativen Abstand α beträgt 0,25. Der relative Abstand α wird jeweils um den Wert 0,5 inkrementiert.
  • 2. Format 4 : 2 : 2 nach 4 : 2 : 0 und umgekehrt
  • In diesem Falle findet eine Konvertierung der Chrominanzwerte in der vertikalen Ebene statt. Bei der Wahl des Startwertes für den relativen Abstand α ist wiederum die relative Position der Ausgangssamples P und skalierten Samples S am oberen Bildschirmrand zu beachten. Unter der Annahme einer 4 : 2 : 0-Formatdefinition, die z. B. in dem H.263-Standard verwendet wird, und bei der die Chrominanz-Samples mittig zwischen je vier im Rechteck angeordneten Luminanz-Samples positioniert sind, ist ein zusätzliches horizontales Aufsampeln (Upsampling) um den Faktor 1, jedoch mit einem Startwert für den relativen Abstand α von 0,75 erforderlich. Auch hierbei kann die Farbformatkonvertierung mit einer Bildskalierung kombiniert werden.

Claims (14)

1. Verfähren zur Skalierung von Bilddaten-Samples mit einem Skalierungsfaktor (s) als Verhältnis der Gesamtanzahl der resultierenden skalierten Samples (S) der Gesamtanzahl von Ausgangssamples (P) und mit dem relativen Abstand (αi) zwischen einem aktuellen skalierten Sample (Sj) und dem unmittelbar vorausgehenden Ausgangssample (Pi), wobei ein aktuelles skalierten Sample (Sj) aus den in Abhängigkeit von dem relativen Abstand (αj) gewichteten vorausgehenden und nachfolgenden Ausgangssamples (Pi und Pi+1) bestimmt wird, gekennzeichnet durch Berechnen des relativen Abstandes (αj) mit den Schritten:
- Addieren des inversen Skalierungsfaktors (q = 1/s) mit dem relativen Abstand (αj-1) eines vorhergehenden skalierten Samples (Sj-1), und
- Subtrahieren der Zahl Eins vom Additionsergebnis, wenn das Additionsergebnis größer als Eins ist.
2. Verfahren nach Anspruch 1, gekennzeichnet durch
- Subtrahieren des einem skalierten Sample (5) unmittelbar vorausgehenden Ausgangssamples (Pi) von dem unmittelbar nachfolgenden Ausgangssample (Pi+1),
- Multiplizieren des Ergebnisses der Subtraktion mit dem zugehörigen relativen Abstand (αj), und
- Addieren des unmittelbar vorausgehenden Ausgangssamples (Pi) auf das Ergebnis der Multiplikation.
3. Verfahren nach Anspruch 1 oder 2, gekennzeichnet durch Berechnen des aktuellen skalierten Samples (5) nach der Formel
Sj = (1 - αj)Pi + aj Pi+1.
4. Verfahren nach einem der vorhergehenden Ansprüche zur Abskalierung mit einem inversen Skalierungsfaktor (q), gekennzeichnet durch
- Abskalieren des Ausgangssamples (P) mit einem zum inversen Skalierungsfaktor (q) nächst höheren ganzzahligen inversen Skalierungsfaktor (q'),
- Aufskalieren der abskalierten Samples (S) mit einem inversen Skalierungsfaktor (q"), der dem Verhältnis des ganzzahligen inversen Skalierungsfaktor (q) zum ganzzahligen inversen Skalierungsfaktor (q') entspricht.
5. Verfahren nach einem der Ansprüche 1 bis 3 zur Abskalierung mit einem inversen Skalierungsfaktor (q), gekennzeichnet durch
- Aufskalieren der Ausgangssamples (P) mit einem inversen Skalierungsfaktor (q"), der dem Verhältnis des inversen Skalierungsfaktors (q) zum nächst höheren ganzzahligen inversen Skalierungsfaktor (q') entspricht, und
- Abskalieren der aufskalierten Samples (S) mit dem ganzzahligen inversen Skalierungsfaktor (q').
6. Verfahren nach Anspruch 4 oder 5, gekennzeichnet durch Berechnen des aktuelle skalierten Samples (Sj) zur Abskalierung nach der Formel
Sj = (Σi αi,j-1 Pi,j-1 + Σk (1 - αk,j) Pk,j)/Nj,
wobei i, j und k ganze Zahlen sind, Nj ein von den relativen Abständen (α) abhängiger Normierungswert ist, und die relativen Abstände (α) definiert sind als ai,j = (ti - tj-1)/Δtj und αk,j = (tk - tj)/Δtj.
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass der Normierungswert (Nj) nach der Formel
Nj = Σi αi,j-1 + Σk (1 - αk,j)
definiert ist.
8. Verfahren nach Anspruch 6 oder 7, gekennzeichnet durch Zugreifen auf für definierte ganzzahlige inverse Skalierungsfaktoren (q) fest abgespeicherte Werte der möglichen Produkte der relativen Abstände (α) mit dem Normierungswert (N) sowie der möglichen Differenzprodukte der Differenz zwischen der Zahl Eins und der relativen Abständen (α) mit dem Normierungswert (N).
9. Vorrichtung zur Skalierung von Bilddaten-Samples, dadurch gekennzeichnet, dass die Vorrichtung zur Durchführung des Verfahrens nach einem der vorhergehenden Ansprüche ausgebildet ist.
10. Vorrichtung nach Anspruch 9, gekennzeichnet durch ein erstes Register (1) für den inversen Skalierungsfaktor (q), einen Addierer (2) am Ausgang des ersten Registers (1), und ein zweites Register (3) am Ausgang des Addierers (2), wobei das zweite Register (3) an einen Eingang des Addierers (2) zur Addition des inversen Skalierungsfaktors (q) mit dem relativen Abstand (aj-1) eines vorhergehenden skalierten Samples (Sj-1) angeschlossen ist und das Subtrahieren dei Zahl Eins vom Additionsergebnis im Addierer (2) durch Weglassen des Carry- Bits erfolgt.
11. Vorrichtung nach Anspruch 10, gekennzeichnet durch einen Subtrahierer (6) zur Bildung der Differenz zwischen dem unmittelbar nachfolgenden Ausgangssample (Pi+1) und dem unmittelbar vorausgehenden Ausgangssample (Pi), eine Multiplizierer (7) am Ausgang des Subtrahierers (6), der mit seinem anderen Eingang an den Ausgang des zweiten Registers (3) angeschlossen ist, und eine Addierer (8) am Ausgang des Multiplizierers (7), der mit seinem anderen Eingang an ein Register (5) für das unmittelbar vorausgehende Ausgangssample (Pi) angeschlossen ist.
12. Vorrichtung zur Abskalierung mit den Schritten nach Anspruch 8, gekennzeichnet durch:
einen Festspeicher (9) für die möglichen Produkte (α/N) und Differenzprodukte ((1 - α)/N),
einen Multiplizierer (11) zur Multiplikation eines Produktes (α/N) mit einem Ausgangssample (Pi), und einen Addierer (14) am Ausgang des Multiplizierers (11) mit einem Register (13), das an den Ausgang des Addierers (14) gekoppelt ist, wobei das Register (13) an den anderen Eingang des Addierers (14) angeschlossen ist und das abskalierte Sample (5) zwischenspeichert, und
einen Multiplizierer (12) zur Multiplikation eines Differenzproduktes ((1 - α)/N) mit dem Ausgangssample (Pi), und einen Addierer (16) am Ausgang des Multiplizierers (12) mit einem Register (15), das an den Ausgang des Addierers (16) gekoppelt ist, wobei das Register (15) an den anderen Eingang des Addierers (16) angeschlossen ist und das nachfolgende abskalierte Sample (Sj+1) zwischenspeichert.
13. Vorrichtung nach Anspruch 12, gekennzeichnet durch einen Multiplexer (18) zwischen dem Ausgang des Addierers (14) und dem Register (13), um wahlweise die Werte am Ausgang des Addierers (14) oder die Werte in dem Register (13) des Addierers (14) für den nachfolgenden abskalierten Sample (Sj+1) in das Register (13) zu speichern.
14. Vorrichtung nach Anspruch 13, gekennzeichnet durch einen Multiplexer (19) zwischen dem Ausgang des Addierers (16) und dem Register (15), um wahlweise die Werte am Ausgang des Addierers (16) oder dem Wert Null in das Register (15) zu speichern.
DE10149213A 2001-10-05 2001-10-05 Verfahren zur Skalierung von Bilddaten-Samples und Vorrichtung hierzu Withdrawn DE10149213A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE10149213A DE10149213A1 (de) 2001-10-05 2001-10-05 Verfahren zur Skalierung von Bilddaten-Samples und Vorrichtung hierzu

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10149213A DE10149213A1 (de) 2001-10-05 2001-10-05 Verfahren zur Skalierung von Bilddaten-Samples und Vorrichtung hierzu

Publications (1)

Publication Number Publication Date
DE10149213A1 true DE10149213A1 (de) 2003-04-24

Family

ID=7701540

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10149213A Withdrawn DE10149213A1 (de) 2001-10-05 2001-10-05 Verfahren zur Skalierung von Bilddaten-Samples und Vorrichtung hierzu

Country Status (1)

Country Link
DE (1) DE10149213A1 (de)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3418624C2 (de) * 1983-05-19 1987-06-19 Matsushita Electric Industrial Co., Ltd., Kadoma, Osaka, Jp
EP0513516A2 (de) * 1991-05-08 1992-11-19 International Business Machines Corporation Verfahren und Vorrichtung zur Verkleinerung von numerischen Bildern

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3418624C2 (de) * 1983-05-19 1987-06-19 Matsushita Electric Industrial Co., Ltd., Kadoma, Osaka, Jp
EP0513516A2 (de) * 1991-05-08 1992-11-19 International Business Machines Corporation Verfahren und Vorrichtung zur Verkleinerung von numerischen Bildern

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
IWAINSKY, A. *
WILHELMI, W.: Lexikon der Computer- grafik und Bildverarbeitung, Vieweg Verlagsge- sellschaft, 1994, S. 156, 157 *

Similar Documents

Publication Publication Date Title
DE3587155T2 (de) Verfahren und vorrichtung zum verdichten von bilddaten.
DE3036770C1 (de) Verfahren zur Schätzung der Verschiebung und/oder Geschwindigkeit von Objekten in Video-Szenen
DE2640157C2 (de) Verfahren und Anordnung zum redundanzvermindernden Codieren von Bildern
DE102008046398A1 (de) Vorrichtung zum Erzeugen eines zusammengesetzten Bildes und computerlesbares Medium zum Speichern eines Programmes, um zu bewirken, dass ein Computer als Vorrichtung zum Erzeugen eines zusammengesetzten Bildes wirkt
DE102006038646A1 (de) Bildverarbeitungsvorrichtung für Farb-Bilddaten und Verfahren zur Bildverarbeitung von Farb-Bilddaten
DE10344397A1 (de) Vorrichtung und Verfahren zur Kantenhervorhebung bei der Bildverarbeitung
DE10013068C2 (de) Potenzierungsoperationsvorrichtung
WO2003042920A1 (de) Verfahren und vorrichtung zum entzerren einer eingescannten abbildung
EP1383322A2 (de) Verfahren zur Interpolation eines Bildpunktes einer Zwischenzeile eines Halbbildes
DE3885303T2 (de) Verfahren zur annäherung eines wertes, der eine nichtlineare funktion der linearen bildelementsdatenmittelwerte ist.
DE3751262T2 (de) Verarbeitungsschaltung für Videosignale.
DE10315442A1 (de) Verfahren und Schaltung zur Skalierung von Rasterbildern
DE69418711T2 (de) Verarbeitung von videosignalen
DE69601935T2 (de) Bildschraegung und bilddrehung mit anwendung der diskreten cosinusformation
DE10149213A1 (de) Verfahren zur Skalierung von Bilddaten-Samples und Vorrichtung hierzu
EP0213683B1 (de) Verfahren und Anordnung zur Erzeugung von Zwischenbildsignalen aus Referenzbildsignalen mit verringerter Bildfrequenz
EP1489842B1 (de) Verfahren und Vorrichtung zur bewegungsvektorgestützten Bildpunktinterpolation
DE102011007644A1 (de) Verfahren und Vorrichtung zur Bestimmung von zur Entzerrung eines Bildes geeigneten Werten und zur Entzerrung eines Bildes
DE10221389A1 (de) Verfahren zur Ermittlung eines Pixelwertes eines Pixel aufweisenden Bildes, Gewichtungsmatrix und Recheneinrichtung
DE10219161A1 (de) Vorrichtung und Verfahren zum Umrechnen eines Terms
EP0534996B1 (de) Verfahren zur segmentierung bewegter objekte durch hintergrundadaption mit kompensation der kamerabewegung
DE102019211829A1 (de) Recheneinheit, Verfahren und Computerprogramm zur Multiplikation
DE69320394T2 (de) Digitale Korrektur von Bildern
DE2432979C3 (de) Mit gemischter Zahlendarstellung arbeitende Einrichtung zum Multiplizieren zweier komplexer Zahlen und Addieren einer dritten komplexen Zahl zum Produkt
EP1259938B1 (de) Verfahren und vorrichtung zur transformation von bildern in zwei koordinatensystemen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8139 Disposal/non-payment of the annual fee