DE69423240T2 - Verfahren und vorrichtung für quadratische interpolation - Google Patents
Verfahren und vorrichtung für quadratische interpolationInfo
- Publication number
- DE69423240T2 DE69423240T2 DE69423240T DE69423240T DE69423240T2 DE 69423240 T2 DE69423240 T2 DE 69423240T2 DE 69423240 T DE69423240 T DE 69423240T DE 69423240 T DE69423240 T DE 69423240T DE 69423240 T2 DE69423240 T2 DE 69423240T2
- Authority
- DE
- Germany
- Prior art keywords
- signal
- signal sample
- response
- sample
- value
- 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.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims abstract description 17
- 239000000523 sample Substances 0.000 description 36
- 238000010586 diagram Methods 0.000 description 2
- 239000006185 dispersion Substances 0.000 description 2
- 239000013074 reference sample Substances 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/17—Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
- Image Processing (AREA)
Description
- Die vorliegende Erfindung bezieht sich allgemein auf Interpolationen und insbesondere auf einen quadratischen Interpolator zum Erzeugen einer Folge von Ausgangsabtastwerten, die zwischen aufeinanderfolgenden Eingangssignal- Abtastwerten eine Näherungskurve bilden.
- Seit vielen Jahren wird in vielen Bereichen der Wissenschaft die mathematische Interpolation für die Approximation von Kurven zwischen bekannten Signalabtastpunkten angewandt. Das Thema Interpolation ist in vielen Lehrbüchern wie etwa in jenem von Robert L. Ketter und Sherwood P. Prawel jun. mit dem Titel "Modern Methods of Engineering Computation", McGraw Hill, 1969 abgehandelt. In der digitalen Signalverarbeitung werden seit vielen Jahren zahlreiche hochentwickelte Verfahren angewandt, wie sie etwa von Rabiner L. R. und Schafer in "Digital Processing of Speech Signals", Prentice Hall, 1978, sowie von George Wolberg in "Digital Image Warping", IEEE Computer Society Press, 1988 beschrieben wurden.
- Gemäß den bei der digitalen Signalverarbeitung angewandten Interpolationstechniken im Stand der Technik ist die Interpolation im allgemeinen auf die lineare oder die kubische Interpolation beschränkt. In der digitalen Signalverarbeitung ist die quadratische Interpolation bis heute nicht implementiert worden, da sie dafür bekannt ist, daß sie räumlich streut und Phasenverzerrungen des Ausgangssignals mit sich bringt. Eine häufig zitierte Arbeit, die als maßgebliche Arbeit über dieses Thema angesehen wird, stammt von R. W. Schafer und L. R. Rabiner und trägt den Titel "A Digital Signal Processing Approach to Interpolation", Proceedings of the IEEE, Bd. 61, Juni 1973.
- Die gewöhnlich verwendete Form der Interpolation ist die lineare Interpolation, bei der eine gerade Linie der Form
- y = mx + c (Gleichung 1)
- zwischen zwei bekannten Punkten (z. B. y(0) und y(1)) gezogen wird. Die Punkte, die zwischen x = 0 und x = 1 liegen, werden durch Lösen von
- y = y(0) + (y(1) - y(0))x
- für 0 ≤ x ≤ 1 (Gleichung 2)
- bestimmt.
- Die lineare Interpolation wurde auf dem Gebiet der Signalverarbeitung der kubischen Interpolation vorgezogen, weil, obwohl die Frequenzantwort der linearen Interpolation kleiner als diejenige der kubischen Interpolation ist, die kubischen Interpolationssysteme zur Implementierung weitaus mehr Hardware für die Berechnung und die Speicherung als die lineare Interpolation benötigen. Es sind außerdem weitere Interpolationsverfahren bekannt.
- FR-A-2 311 357 offenbart ein Verfahren zur Approximation einer Folge von Signalabtastwerten y(t) durch mehrere Parabeln. Jedoch geht die Näherungskurve nicht durch alle Abtastpunkte. Als weiteres Beispiel offenbart US-A-4 031 370 ein Interpolationsverfahren, das Polynome höheren Grades, insbesondere ein Interpolationspolynom vierten Grades, verwendet, um in zwei Iterationsschritten des Verfahrens vierten Grades eine Interpolation bis zum achten Grad zu erhalten.
- Die quadratische Interpolation, wie sie in der oben zitierten Quelle von Ketter und Prawel und an manch anderer Stelle beschrieben wird, wird erzielt, indem eine quadratische Gleichung der Form
- y = ax² + bx + c (Gleichung 3)
- durch drei bekannte Punkte (z. B. y(-1), y(0) und y(1)) bestimmt wird. Die sich ergebende Interpolationsgleichung lautet:
- y = ((y(-1) - 2y(0) + y(1))/2)x² + ((y(1) - y(-1))/2)x + y(0)
- -1 ≤ x ≤ +1 (Gleichung 4)
- Der Hauptnachteil der Anwendung der quadratischen Interpolation bei der digitalen Signalverarbeitung und anderen Anwendungen liegt in der Verzerrung, die beim Übergang von einer Menge von Abtastpunkten zu einer anderen auftritt. Wie weiter unten mit Bezug auf die Figuren näher abgehandelt wird, kann eine falsche Auswahl eines Referenzabtastpunkts zu großen Kurvenunstetigkeiten (d. h. einer Verzerrung) der interpolierten Ausgangsnäherungskurve zwischen den Punkten führen.
- Gemäß der vorliegenden Erfindung wird eine digitale Signalverarbeitungsvorrichtung geschaffen, die eine quadratische Interpolation an abgetasteten Werten eines physikalischen Signals ausführt, um für jeden von mehreren Referenzwerten x und anhand bekannter Signalabtastwerte y(-1), y(0) und y(1), die um einen vorgegebenen gleichen Betrag voneinander beabstandet sind, einen Ausgangssignal-Abtastwert y(x) zu erzeugen, wobei x im Bereich des halben vorgegebenen gleichen Betrags beiderseits des Signalabtastwerts y(0) liegt, wobei der quadratische Interpolator eine Einrichtung enthält, die ein erstes Signal mit Wert a = y(-1) + y(1) - 2y(0) und ein zweites Signal mit Wert b = (y(1) - y(-1))/2 ausgibt, und eine Einrichtung enthält, die arbeitet, um x einzugeben, um x² zu bestimmen, um das erste Signal und das zweite Signal zu empfangen, um ein drittes Signal mit Wert x mal b zu erzeugen, um ein viertes Signal mit Wert x² mal a zu erzeugen und um das dritte Signal, das vierte Signal und den Signalabtastwert y(0) zu addieren, und als Antwort darauf den Ausgangssignal-Abtastwert y(x) erzeugt.
- Gemäß der vorliegenden Erfindung wird ferner eine Schaltung geschaffen, die für jeden von mehreren Referenzwerten x mittels dreier bekannter Signalabtastwerte y(-1), y(0) und y(1) einen Ausgangssignal- Abtastwert y(x) erzeugt, wobei die drei bekannten Signalabtastwerte um einen vorgegebenen gleichen Betrag voneinander beabstandet sind und wobei y(x) für alle x, die im Bereich des halben vorgegebenen gleichen Betrags beiderseits des Signalabtastwerts y(0) liegen, erzeugt wird, wobei die Schaltung einen ersten Eingang zum Empfangen der drei bekannten Signalabtastwerte y(-1), y(0) und y(1), einen zweiten Eingang zum Empfangen jedes der mehreren Referenzwerte x, erste, zweite und dritte Speicherregister, die mit dem ersten Eingang in Serie geschaltet sind, um die drei bekannten Signalabtastwerte y(-1), y(0) bzw. y(1) zu speichern, einen ersten Addierer, der mit den ersten und dritten Speicherregistern verbunden ist, um die Signalabtastwerte y(-1) und y(1) zu addieren und als Antwort darauf einen ersten Summensignal-Abtastwert y(-1) + y(1) zu erzeugen, ein erstes Schieberegister, das mit dem zweiten Speicherregister verbunden ist, um den Signalabtastwert y(0) um ein Bit nach links zu verschieben, und als Antwort darauf einen ersten verdoppelten Signalabtastwert 2y(0) erzeugt, einen ersten Subtrahierer, der mit dem ersten Addierer und mit dem ersten Schieberegister verbunden ist, um den ersten verdoppelten Signalabtastwert 2y(0) von dem ersten Summensignal- Abtastwert y(-1) + y(1) zu subtrahieren, und als Antwort darauf einen ersten Differenzsignal-Abtastwert a = y(-1) + y(1) - 2y(0) erzeugt, einen zweiten Subtrahierer, der mit dem ersten und mit dem dritten Speicherregister verbunden ist, um den Signalabtastwert y(-1) von dem Signalabtastwert y(1) zu subtrahieren, und als Antwort darauf ein zweites Differenzsignal y(1) - y(-1) erzeugt, ein zweites Schieberegister, das mit dem zweiten Subtrahierer verbunden ist, um das zweite Differenzsignal y(1) - y(-1) um ein Bit nach rechts zu verschieben, und als Antwort darauf ein erstes halbiertes Signal b = (y(1) - y(-1))/2 erzeugt, einen ersten Multiplizierer, der mit dem zweiten Eingang verbunden ist, um jeden der mehreren Referenzwerte x zu quadrieren, und als Antwort darauf einen entsprechenden quadrierten Referenzwert x² erzeugt, einen zweiten Multiplizierer, der mit dem ersten Multiplizierer und mit dem ersten Subtrahierer verbunden ist, um den ersten Differenzsignal-Abtastwert a mit jedem der entsprechenden quadrierten Referenzwerte x² zu multiplizieren, und als Antwort darauf einen entsprechenden ersten Produktsignal- Abtastwert ax² erzeugt, einen dritten Multiplizierer, der mit dem zweiten Eingang und mit dem zweiten Schieberegister verbunden ist, um das erste halbierte Signal b mit jedem der mehreren Referenzwerte (x) zu multiplizieren, und als Antwort darauf einen entsprechenden zweiten Produktsignal-Abtastwert bx erzeugt, und einen zweiten Addierer, der mit dem zweiten Multiplizierer, dem zweiten Speicherregister und dem dritten Multiplizierer verbunden ist, um jeden entsprechenden ersten Produktsignal-Abtastwert ax² den zweiten Produktsignal-Abtastwert bx und den bekannten Signalabtastwert y(0) zu addieren, und als Antwort darauf den Ausgangssignal-Abtastwert y(x) erzeugt, enthält.
- Gemäß der vorliegenden Erfindung wird außerdem ein Verfahren zur digitalen Signalverarbeitung eines abgetasteten Werts eines physikalischen Signals bereitgestellt, um für jeden von mehreren Referenzwerten x und anhand bekannter Signalabtastwerte y(-1), y(0) und y(1), die um einen vorgegebenen, gleichen Betrag beabstandet sind, einen quadratischen, interpolierten Ausgangssignal- Abtastwert y(x) zu erzeugen, wobei x im Bereich des halben vorgegebenen, gleichen Betrags beiderseits des Signalabtastwerts y(0) liegt, wobei das Verfahren die folgenden Schritte enthält:
- a) Bestimmen
- eines Signals a = y(-1) + y(1) - 2y(0) und
- eines Signals b = (y(1) - y(-1))/2;
- b) Erzeugen eines Ausgangssignals
- y(x) = ax² + bx + y(0).
- Vorzugsweise können das Verfahren und die Vorrichtung gemäß der Erfindung die quadratische Interpolation mit einer geringen Phasenverzerrung und ohne Unstetigkeiten, die durch eine falsche Wahl von Referenzpunkten hervorgerufen werden könnten, implementiert werden. Bei der Implementierung der Interpolation können Referenzpunkte so bestimmt werden, daß die Phasenverzerrung und die räumliche Streuung vermieden wird. Die Bestimmung dieser Referenzpunkte kann durch einen linearen Interpolator zur Auswahl des Mittelpunkts zwischen Eingangsabtastwerten erfolgen. Anschließend werden die interpolierten Punkte als Referenzpunkte für eine quadratische Interpolation verwendet, wobei der Abstand zwischen den Referenzpunkten der halbe Abstand zwischen den jeweiligen bekannten Abtastpunkten ist.
- Somit kann die gemäß der Erfindung implementierte quadratische Interpolation durch die folgende Formel ausgedrückt werden:
- y(x) = ((y(-0,5) - 2Y(0) + y(0,5))/0,5)x² + (y(0,5) - - y(-0,5))x + y(0)
- - 0,5 ≤ x ≤ +0,5 (Gleichung 5)
- Die obenerwähnten Operationen der linearen Interpolation und der quadratischen Interpolation können gleichzeitig durchgeführt werden, wenn die auf dem Ergebnis der Gleichung für die lineare Interpolation basierende Gleichung für die quadratische Interpolation umgeformt wird. Die sich ergebende quadratische Formel lautet wie folgt:
- y = (y(-1) - 2Y(0) + Y(1)))x² + ((y(1) - y(-1))/2)x + + y(0)
- -0,5 ≤ x ≤ +0,5 (Gleichung 6)
- Die Ausgangssignal-Abtastwerte von y werden in einem ±0,5-Bereich um den mittleren Abtastwert interpoliert, wobei ein willkürlicher Abtastwertabstand von 1,0 angenommen wird. Jedoch können die Prinzipien der vorliegenden Erfindung auf einen von 1 verschiedenen Abtastwertabstand erweitert werden, indem einfach Referenzpunkte in einem halben gegeben Abtastwertabstand gewählt werden.
- Im folgenden wird eine Beschreibung des Standes der Technik und einer Ausführungsform der vorliegenden Erfindung mit Bezug auf die folgende Zeichnung gegeben, worin:
- Fig. 1A eine Näherungskurve zwischen mehreren bekannten Signalabtastpunkten ist, die durch lineare Interpolation gemäß dem Stand der Technik erzeugt wurde,
- Fig. 1B zwei mögliche Näherungskurven zeigt, die unter Anwendung der quadratische Interpolation gemäß dem Stand der Technik erhalten wurden,
- Fig. 2A die Bestimmung von Referenzpunkten zeigt, die gemäß einem Aspekt der vorliegenden Erfindung unter Anwendung der linearen Interpolation im Mittelpunkt zwischen Eingangsabtastwerten gewählt wurden,
- Fig. 2B eine Kurve zeigt, die gemäß einem weiteren Aspekt der vorliegenden Erfindung unter Anwendung der quadratischen Interpolation unter Verwendung der durch lineare Interpolation nach Fig. 2A bestimmten Mittelpunkte konstruiert wurde, und
- Fig. 3 ein Blockschaltbild eines quadratischen Interpolators gemäß der bevorzugten Ausführung ist.
- In Fig. 1A ist eine Kurve gezeigt, die eine Approximation unter Verwendung bekannter Abtastpunkte A, B, C, D, E und F unter Anwendung der linearen Interpolation ist. Es ist anzumerken, daß, wenn die lineare Interpolation angewandt wird, die Kurven zwischen bestimmten Punkten A, B, C usw. linear sind. Dies führt zu einer äußerst groben Approximation der tatsächlichen Kurve zwischen den bekannten Signalabtastpunkten und außerdem zur Erzeugung einer starken harmonischen Verzerrung aufgrund der scharfen Knicke der Näherungskurve.
- Im Gegensatz dazu sind die in Fig. 18 gezeigten Kurven 1 und 2, die unter Anwendung der quadratischen Interpolation erzeugt wurden, viel glatter, sie sind aber andererseits in der Approximation der Kurve ähnlich, die durch lineare Interpolation erzeugt wurde (Fig. 1A) Jedoch resultiert der Hauptnachteil der Anwendung der quadratischen Interpolation bei der Signalverarbeitung, wie oben angesprochen wurde, aus der räumlichen Streuung und der Phasenverzerrung beim Übergang von einer Menge von Abtastwerten zur anderen. Während die Linien 1 und 2 in Fig. 1B eine mögliche durch quadratische Interpolation erzeugte Näherungskurve darstellen, die der durch die lineare Interpolation in Fig. 1A beschriebenen Kurve ähnlich ist, auch wenn sie durch quadratische Interpolation erzeugt wird, ist die von den Linien 3 und 4 dargestellte Kurve völlig verschieden. Ob bei Anwendung derselben quadratischen Interpolation die Linien 1 und 2 oder die Linien 3 und 4 erhalten werden, hängt davon ab, welche drei Pixel als Referenzpunkte für die Interpolation verwendet werden (die Kurve 1 verwendet die Punkte B, C, D und die Kurve 2 die Punkte D, E, F, während die Kurve 3 die Punkte A, B, C verwendet und die Kurve 4 die Punkte C, D, E). Die Linien 3 und 4 weisen eine deutliche Unstetigkeit auf, die bei der digitalen Signalverarbeitung und anderen wissenschaftlichen Anwendungen äußerst unerwünscht ist.
- In den Fig. 2A und 2B wird nun gemäß dem Verfahren der vorliegenden Erfindung, anstatt die bekannten Signalabtastpunkte A, B, C, D, E und F als Referenzpunkte zu verwenden, bei der vorliegenden Erfindung, wie in Fig. 2A gezeigt ist, die lineare Interpolation verwendet, um die jeweiligen Mittelpunkte zwischen den Eingangsabtastwerten zu bestimmen.
- Anschließend werden die interpolierten Referenzpunkte in einer quadratischen Formel verwendet, wobei der Abstand zwischen den Referenzpunkten 0,5 statt 1,0 beträgt, wodurch sich die Kurve aus Fig. 2B ergibt.
- Im Schaltbild nach Fig. 3 ist dann eine bevorzugte Ausführung des quadratischen Interpolators der vorliegenden Erfindung für einen Eingangs-Abtastdatenstrom gezeigt.
- Die drei Datenpunkte y(-1), y(0) und y(1) werden über einen Eingang 30 empfangen und in jeweils einem der in Serie geschalteten Register 31, 32 und 33 gespeichert.
- Ein Addierer 34 addiert die Signalabtastwerte y(-1) und y(1) und legt das Ergebnissignal an einen nichtinvertierenden Eingang des Subtrahierers 35 an. Der zweite Referenzabtastpunkt y(0) wird im Schieberegister 36 um ein Bit nach links verschoben, wodurch das Multiplizieren des Werts y(0) mit 2 bewirkt wird. Der Ausgang des Schieberegisters 36 wird an den invertierenden Eingang des Subtrahierers 35 angelegt. Somit entspricht der Ausgang des Subtrahierers 35 dem Wert "a" in der Gleichung 6, nämlich:
- a = y(-1) + y(1) - 2y(0).
- Der Subtrahierer 37 erfaßt die Differenz zwischen y(-1) und y(1), während dessen Ausgang im Schieberegister 38 um ein Bit nach rechts verschoben wird, was den Wert "b" in Gleichung 6 ergibt, nämlich:
- b = (y(1) - y(-1))/2
- Der Wert von x wird am Eingang 39 empfangen und an beide Eingänge eines Multiplizierers 40 angelegt, der infolgedessen den Wert von x quadriert. Die Multiplizierer 41 und 42 führen die Operationen "ax²" bzw. "bx" aus.
- Die drei Eingangsaddierer 43 addieren die Ausgänge der Multiplizierer 41 und 42 zu dem von dem Speicherregister 32 empfangenen y(0) hinzu und erzeugen als Antwort darauf den interpolierten Wert y(x).
- Obwohl die bevorzugte Ausführung der vorliegenden Erfindung im Hinblick auf die in Fig. 3 gezeigte digitale Schaltung definiert wurde, sind andere Schaltungskonfigurationen zum Erzielen desselben Ergebnisses möglich.
- Ferner kann das quadratische Interpolationsverfahren gemäß der vorliegenden Erfindung als Software implementiert werden. Das C-Quellencodeprotokall einer solchen möglichen Softwareimplementierung der vorliegenden Erfindung ist als Anhang A beigefügt.
- Sämtliche Modifikationen und alternativen Ausführungen der vorliegenden Erfindung werden als im Bereich und im Rahmen dieser Erfindung liegend angesehen, die durch die beigefügten Ansprüche definiert ist. Anhang A
Claims (6)
1. Digitalsignalverarbeitungsvorrichtung zum Ausführen
einer quadratischen Interpolation an abgetasteten Werten
eines physikalischen Signals, um für jeden von mehreren
Referenzwerten x und anhand bekannter Signalabtastwerte
y(-1), y(0) und y(1), die um einen vorgegebenen gleichen
Betrag voneinander beabstandet sind, einen
Ausgangssignal-Abtastwert y(x) zu erzeugen, wobei x im
Bereich des halben vorgegebenen gleichen Betrags
beiderseits des Signalabtastwerts y(0) liegt, wobei der
quadratische Interpolator enthält:
eine Einrichtung (31, 32, 33, 34, 35, 36, 37, 38),
die ein erstes Signal mit Wert a = y(-1) + y(1) - 2y(0)
und ein zweites Signal mit Wert b = (y(1) - y(-1))/2
ausgibt; und
eine Einrichtung (39, 40, 41, 42, 43), die arbeitet,
um x einzugeben, um x² zu bestimmen, um das erste Signal
und das zweite Signal zu empfangen, um ein drittes Signal
mit Wert x mal b zu erzeugen, um ein viertes Signal mit
Wert x² mal a zu erzeugen und um das dritte Signal, das
vierte Signal und den Signalabtastwert y(0) zu addieren,
und um als Antwort darauf den Ausgangssignal-Abtastwert
y(x) zu erzeugen.
2. Digitalsignalverarbeitungsvorrichtung nach Anspruch
1, wobei die Ausgabeeinrichtung enthält:
ein erstes Register (31), das den bekannten
Signalabtastwert y(-1) speichert,
ein zweites Register (32), das mit dem ersten
Register (31) gekoppelt ist und den bekannten
Signalabtastwert y(0) speichert,
ein drittes Register (33), das mit dem zweiten
Register (32) gekoppelt ist und den bekannten
Signalab
tastwert y(1) speichert,
einen ersten Addierer (34), der mit dem ersten
Register (31) und mit dem dritten Register (33) gekoppelt
ist, den bekannten Signalabtastwert y(-1) und den
bekannten Signalabtastwert y(1) addiert und ein erstes
Teilergebnissignal erzeugt;
einen ersten Schieber (36), der mit dem zweiten
Register (32) gekoppelt ist, den bekannten
Signalabtastwert y(0) mit 2 multipliziert, indem er den bekannten
Signalabtastwert nach links verschiebt, und ein
verschobenes Ausgangssignal erzeugt,
einen ersten Subtrahierer (35) mit einem
invertierenden Eingang und einem nichtinvertierenden Eingang,
wobei der erste Subtrahierer mit dem ersten Addierer (34)
und mit dem ersten Schieber (36) gekoppelt ist, das erste
Teilergebnissignal an dem nichtinvertierenden Eingang
empfängt, das verschobene Ausgangssignal an dem
invertierenden Eingang empfängt und das erste Signal ausgibt,
einen zweiten Subtrahierer (37) mit einem
invertierenden Eingang und einem nichtinvertierenden Eingang,
wobei der zweite Subtrahierer mit dem ersten Register
(31) und mit dem dritten Register (33) gekoppelt ist, den
bekannten Signalabtastwert y(-1) am invertierenden
Eingang empfängt, den bekannten Signalabtastwert y(1) am
nichtinvertierenden Eingang empfängt und ein zweites
Teilergebnissignal ausgibt, und
einen zweiten Schieber (38), der mit dem zweiten
Subtrahierer (37) gekoppelt ist, das zweite
Teilergebnissignal empfängt und das zweite Teilergebnis nach
rechts verschiebt und das zweite Signal ausgibt; und
wobei die Eingabeeinrichtung enthält:
einen ersten Multiplizierer (40), der das x empfängt
und das x mit sich selbst multipliziert, um x² zu
erzeugen, und das Quadrierungsergebnissignal ausgibt,
einen zweiten Multiplizierer (41), der mit dem ersten
Multiplizierer (40) und mit dem ersten Subtrahierer (35)
gekoppelt ist, das Quadrierungsergebnissignal mit dem
ersten Signal multipliziert und ein erstes
Multiplikationsergebnissignal ausgibt,
einen dritten Multiplizierer (42), der mit dem
zweiten Schieber (38) gekoppelt ist, das x empfängt, das
x mit dem zweiten Signal multipliziert und ein zweites
Multiplikationsergebnissignal ausgibt, und
einen zweiten Addierer (43), der mit dem zweiten
Multiplizierer (41), mit dem dritten Multiplizierer (42)
und mit dem zweiten Register (32) gekoppelt ist, das
erste Multiplikationsergebnissignal, das zweite
Multiplikationsergebnissignal und den bekannten
Signalabtastwert y(0) addiert und den
Ausgangssignal Abtastwert y(x) ausgibt.
3. Digitalsignalverarbeitungsvorrichtung nach Anspruch
1, wobei die Ausgangseinrichtung enthält:
a) eine Einrichtung (34), die die Signalabtastwerte
y(-1) und y(1) addiert und als Antwort darauf den ersten
Summensignal-Abtastwert y(-1) + y(1) erzeugt;
b) eine Einrichtung (36), die den Signalabtastwert
y(0) verdoppelt und als Antwort darauf einen ersten
verdoppelten Signalabtastwert 2y(0) erzeugt;
c) eine Einrichtung (35), die den ersten verdoppelten
Signalabtastwert 2y(0) von dem ersten Summensignal-
Abtastwert y(-1) + y(1) subtrahiert und als Antwort
darauf einen ersten Differenzsignal-Abtastwert
a = y(-1) + y(1) - 2y(0) erzeugt;
d) eine Einrichtung (37), die den Signalabtastwert
y(-1) von dem Signalabtastwert y(1) subtrahiert und als
Antwort darauf ein zweites Differenzsignal y(1) - y(-1)
erzeugt;
e) eine Einrichtung (38), die das zweite
Differenzsignal y(1) - y(-1) halbiert und als Antwort darauf ein
erstes halbiertes Signal b = (y(1) - y(-1))/2 erzeugt;
f) eine Einrichtung (40), die jeden der mehreren
Referenzwerte x quadriert und als Antwort darauf einen
jeweiligen quadrierten Referenzwert x² erzeugt;
g) eine Einrichtung (41), die den ersten
Differenzsignal-Abtastwert a mit jedem der entsprechenden
quadrierten Referenzwerte x² multipliziert und als Antwort
darauf einen entsprechenden ersten
Produktsignal-Abtastwert ax² erzeugt;
h) eine Einrichtung (42), die das erste halbierte
Signal b mit jedem der mehreren Referenzwerte x
multipliziert und als Antwort darauf einen entsprechenden zweiten
Produktsignal-Abtastwert bx erzeugt; und
i) eine Einrichtung (43), die jeden entsprechenden
ersten Produktsignal-Abtastwert ax² und jeden
entsprechenden zweiten Produktsignal-Abtastwert bx und den
bekannten Signalabtastwert y(0) addiert und als Antwort
darauf den Ausgangssignal-Abtastwert y(x) erzeugt.
4. Digitalsignalverarbeitungsvorrichtung nach Anspruch
1, die umfaßt:
a) einen ersten Eingang (30) zum Empfangen der drei
bekannten Signalabtastwerte y(-1), y(0) und y(1);
b) einen zweiten Eingang (39) zum Empfangen jedes der
mehreren Referenzwerte x;
c) erste, zweite und dritte Speicherregister (31, 32,
33), die mit dem ersten Eingang (30) in Serie geschaltet
sind, um die drei bekannten Signalabtastwerte y(-1), y(0)
bzw. y(1) zu speichern;
d) einen ersten Addierer (34), der mit den ersten
(31) und dritten (33) Speicherregistern verbunden ist, um
die Signalabtastwerte y(-1) und y(1) zu addieren und als
Antwort darauf einen ersten Summensignal-Abtastwert
y(-1) + y(1) zu erzeugen;
e) ein erstes Schieberegister (36), das mit dem
zweiten Speicherregister (32) verbunden ist, um den
Signalabtastwert y(0) um ein Bit nach links zu
verschieben, und als Antwort darauf einen ersten verdoppelten
Signalabtastwert 2y(0) erzeugt;
f) einen ersten Subtrahierer (35), der mit dem ersten
Addierer (34) und mit dem ersten Schieberegister (36)
verbunden ist, um den ersten verdoppelten
Signalabtastwert 2y(0) von dem ersten Summensignal-Abtastwert
y(-1) + y(1) zu subtrahieren, und als Antwort darauf
einen ersten Differenzsignal-Abtastwert
a = y(-1) + y(1) - 2y(0) erzeugt;
g) einen zweiten Subtrahierer (37), der mit dem
ersten (31) und mit dem dritten (33) Speicherregister
verbunden ist, um den Signalabtastwert y(-1) von dem
Signalabtastwert y(1) zu subtrahieren, und als Antwort
darauf ein zweites Differenzsignal y(1) - y(-1) erzeugt;
h) ein zweites Schieberegister (38), das mit dem
zweiten Subtrahierer (37) verbunden ist, um das zweite
Differenzsignal y(1) - y(-1) um ein Bit nach rechts zu
verschieben, und als Antwort darauf ein erstes halbiertes
Signal b = (y(1) - y(-1))/2 erzeugt;
i) einen ersten Multiplizierer (40), der mit dem
zweiten Eingang (39) verbunden ist, um jeden der mehreren
Referenzwerte x zu quadrieren, und als Antwort darauf
einen entsprechenden quadrierten Referenzwert x² erzeugt;
j) einen zweiten Multiplizierer (41), der mit dem
ersten Multiplizierer (40) und mit dem ersten
Subtrahierer (35) verbunden ist, um den ersten Differenzsignal-
Abtastwert a mit jedem der entsprechenden quadrierten
Referenzwerte x² zu multiplizieren, und als Antwort
darauf einen entsprechenden ersten
Produktsignal-Abtastwert ax² erzeugt;
k) einen dritten Multiplizierer (42), der mit dem
zweiten Eingang (39) und mit dem zweiten Schieberegister
(38) verbunden ist, um das erste halbierte Signal b mit
jedem der mehreren Referenzwerte x zu multiplizieren, und
als Antwort darauf einen entsprechenden zweiten
Produktsignal-Abtastwert bx erzeugt; und
l) einen zweiten Addierer (43), der mit dem zweiten
Multiplizierer (41), dem zweiten Speicherregister (32)
und dem dritten Multiplizierer (42) verbunden ist, um
jeden entsprechenden ersten Produktsignal-Abtastwert ax²,
den zweiten Produktsignal-Abtastwert bx und den bekannten
Signalabtastwert y(0) zu addieren, und als Antwort darauf
den Ausgangssignal-Abtastwert y(x) erzeugt.
5. Verfahren zur digitalen Signalverarbeitung eines
abgetasteten Werts eines physikalischen Signals, um für
jeden von mehreren Referenzwerten x und anhand bekannter
Signalabtastwerte y(-1), y(0) und y(1), die um einen
vorgegebenen, gleichen Betrag beabstandet sind, einen
quadratischen, interpolierten Ausgangssignal-Abtastwert
y(x) zu erzeugen, wobei x im Bereich des halben
vorgegebenen, gleichen Betrags beiderseits des Signalabtastwerts
y(0) liegt, wobei das Verfahren die folgenden Schritte
enthält:
a) Bestimmen
eines Signals a = y(-1) + y(1) - 2y(0) und
eines Signals b = (y(1) - y(-1))/2;
b) Erzeugen eines Ausgangssignals
y(x) = ax² + bx + y(0).
6. Verfahren zur digitalen Signalverarbeitung nach
Anspruch 5, mit den folgenden Schritten:
a) Addieren der Signalabtastwerte y(-1) und y(1) und
als Antwort darauf Erzeugen eines ersten Summensignal-
Abtastwerts y(-1) + y(1);
b) Verdoppeln des Signalabtastwerts y(0) und als
Antwort darauf Erzeugen eines ersten verdoppelten
Signalabtastwerts 2y(0);
c) Subtrahieren des ersten verdoppelten
Signalabtastwerts 2y(0) von dem ersten Signalabtastwert
y(-1) + y(1) und als Antwort darauf Erzeugen eines ersten
Differenzsignal-Abtastwerts a = y(-1) + y(1) - 2y(0);
d) Subtrahieren des Signalabtastwerts y(-1) von dem
Signalabtastwert y(1) und als Antwort darauf Erzeugen
eines zweiten Differenzsignals y(1) - y(-1);
e) Halbieren des zweiten Differenzsignals
y(1) - y(-1) und als Antwort darauf Erzeugen eines ersten
halbierten Signals b = (y(1) - y(-1))/2;
f) Quadrieren jedes der mehreren Referenzwerte x und
als Antwort darauf Erzeugen eines entsprechenden
quadrierten Referenzwerts x²;
g) Multiplizieren des ersten
Differenzsignal-Abtastwerts a mit jedem der entsprechenden quadrierten
Referenzwerte x² und als Antwort darauf Erzeugen eines
entsprechenden ersten Produktsignal-Abtastwerts ax²;
h) Multiplizieren des ersten halbierten Signals b mit
jedem der mehreren Referenzwerte x und als Antwort darauf
Erzeugen eines entsprechenden zweiten Produktsignal-
Abtastwerts bx; und
i) Addieren jedes der ersten
Produktsignal-Abtastwerte ax², des Produktsignal-Abtastwerts bx und des
bekannten Signalabtastwerts y(0) und als Antwort darauf
Erzeugen des Ausgangssignal-Abtastwerts y(x).
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/172,065 US5379241A (en) | 1993-12-23 | 1993-12-23 | Method and apparatus for quadratic interpolation |
PCT/CA1994/000686 WO1995017728A1 (en) | 1993-12-23 | 1994-12-13 | Method and apparatus for quadratic interpolation |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69423240D1 DE69423240D1 (de) | 2000-04-06 |
DE69423240T2 true DE69423240T2 (de) | 2000-08-10 |
Family
ID=22626227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69423240T Expired - Lifetime DE69423240T2 (de) | 1993-12-23 | 1994-12-13 | Verfahren und vorrichtung für quadratische interpolation |
Country Status (8)
Country | Link |
---|---|
US (2) | US5379241A (de) |
EP (1) | EP0736206B1 (de) |
JP (1) | JP3760385B2 (de) |
KR (1) | KR100286601B1 (de) |
AT (1) | ATE190154T1 (de) |
AU (1) | AU1189895A (de) |
DE (1) | DE69423240T2 (de) |
WO (1) | WO1995017728A1 (de) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW267228B (en) * | 1994-06-02 | 1996-01-01 | Matsushita Electric Ind Co Ltd | Data sample series access apparatus |
US5594675A (en) * | 1994-07-14 | 1997-01-14 | Industrial Technology Research Institute | Reduced signal processing requirement sample and hold linear phase interpolative fir filter |
JP2958742B2 (ja) * | 1994-10-07 | 1999-10-06 | ローランド株式会社 | 波形データ圧縮装置、波形データ伸長装置、量子化装置および浮動小数点によるデータ作成方法 |
US5608665A (en) * | 1995-10-03 | 1997-03-04 | Wyszynski; Adam S. | Self-tuned, continuous-time active filter |
US5949695A (en) * | 1997-01-10 | 1999-09-07 | Harris Corporation | Interpolator using a plurality of polynomial equations and associated methods |
US6539128B1 (en) | 1999-04-16 | 2003-03-25 | Macronix International Co., Ltd. | Method and apparatus for interpolation |
KR20020021787A (ko) * | 1999-04-22 | 2002-03-22 | 추후제출 | 표본 신호의 보간 중간값을 결정하기 위한 방법 및 장치 |
US20030187893A1 (en) * | 2002-04-01 | 2003-10-02 | Kun-Nan Cheng | Method of data interpolation with bi-switch slope control scaling |
TWI236642B (en) * | 2002-04-01 | 2005-07-21 | Mstar Semiconductor Inc | Scaling method by using cubic-like triple point slope control |
TW584816B (en) * | 2002-04-01 | 2004-04-21 | Mstar Semiconductor Inc | Triple point slope control scaling method |
US20030187613A1 (en) * | 2002-04-01 | 2003-10-02 | Kun-Nan Cheng | Method of data interpolation using midpoint slope control scaling |
TWI223781B (en) * | 2002-04-01 | 2004-11-11 | Mstar Semiconductor Inc | Scaling method by using dual point slope control |
TWI234746B (en) * | 2002-04-01 | 2005-06-21 | Mstar Semiconductor Inc | Scaling method by using symmetrical middle-point slope control |
TWI235963B (en) * | 2002-04-01 | 2005-07-11 | Mstar Semiconductor Inc | Scaling method by using dual point cubic-like slope control |
KR100557121B1 (ko) * | 2003-11-10 | 2006-03-03 | 삼성전자주식회사 | 디지털 영상의 확대 방법 |
JP4205070B2 (ja) * | 2005-03-09 | 2009-01-07 | アンリツ株式会社 | 信号測定装置及び信号分析装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1363073A (en) * | 1970-07-17 | 1974-08-14 | Solartron Electronic Group | Generation of trigonometrical and other functions by interpolation between point values |
US3860805A (en) * | 1973-05-07 | 1975-01-14 | Bendix Corp | Method and apparatus for producing a fairing contour in numerical control systems |
GB1536845A (en) * | 1975-02-26 | 1978-12-20 | Bell & Howell Ltd | Generation of mathematical functions |
FR2311357A1 (fr) * | 1975-05-16 | 1976-12-10 | Commissariat Energie Atomique | Dispositif de lissage de signaux en temps reel |
US4763293A (en) * | 1984-02-27 | 1988-08-09 | Canon Kabushiki Kaisha | Data processing device for interpolation |
US4694414A (en) * | 1984-12-19 | 1987-09-15 | Rca Corporation | Digital delay interpolation filter with amplitude and phase compensation |
US5257355A (en) * | 1986-10-01 | 1993-10-26 | Just Systems Corporation | Method and apparatus for generating non-linearly interpolated data in a data stream |
US5068816A (en) * | 1990-02-16 | 1991-11-26 | Noetzel Andrew S | Interplating memory function evaluation |
JPH04207516A (ja) * | 1990-11-30 | 1992-07-29 | Norio Akamatsu | 補間方法 |
-
1993
- 1993-12-23 US US08/172,065 patent/US5379241A/en not_active Expired - Lifetime
-
1994
- 1994-10-26 US US08/329,163 patent/US5502662A/en not_active Expired - Lifetime
- 1994-12-13 EP EP95902733A patent/EP0736206B1/de not_active Expired - Lifetime
- 1994-12-13 JP JP51706295A patent/JP3760385B2/ja not_active Expired - Lifetime
- 1994-12-13 DE DE69423240T patent/DE69423240T2/de not_active Expired - Lifetime
- 1994-12-13 WO PCT/CA1994/000686 patent/WO1995017728A1/en active IP Right Grant
- 1994-12-13 AU AU11898/95A patent/AU1189895A/en not_active Abandoned
- 1994-12-13 AT AT95902733T patent/ATE190154T1/de not_active IP Right Cessation
- 1994-12-13 KR KR1019960702329A patent/KR100286601B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
JPH09511079A (ja) | 1997-11-04 |
JP3760385B2 (ja) | 2006-03-29 |
AU1189895A (en) | 1995-07-10 |
EP0736206A1 (de) | 1996-10-09 |
EP0736206B1 (de) | 2000-03-01 |
WO1995017728A1 (en) | 1995-06-29 |
US5502662A (en) | 1996-03-26 |
US5379241A (en) | 1995-01-03 |
ATE190154T1 (de) | 2000-03-15 |
KR100286601B1 (ko) | 2001-04-16 |
DE69423240D1 (de) | 2000-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69423240T2 (de) | Verfahren und vorrichtung für quadratische interpolation | |
DE69529328T2 (de) | Verfahren und Apparat zur Geräuschunterdrückung in einem Sprachsignal und korrespondierendes System mit Echounterdrückung | |
DE68927120T2 (de) | Interpolator und Verfahren zur Interpolierung von digitalen Signalmustern | |
DE69504371T2 (de) | Digitales videoumwandlungsschaltsystem | |
DE68920102T2 (de) | Gerät zur Verarbeitung eines echographischen Signals. | |
DE2524497C3 (de) | Verfahren und Schaltungsanordnung zur Sprachsynthese | |
DE3485792T2 (de) | Digitale signalverarbeitungseinrichtungen. | |
DE2818204C2 (de) | Signalverarbeitungsanlage zur Ableitung eines störverringerten Ausgangssignals | |
DE3688600T2 (de) | Musikinstrument mit digitalem Filter mit programmierten variablen Koeffizienten. | |
DE3688298T2 (de) | Videosignalverarbeitung. | |
DE69221228T2 (de) | Adaptives Filterverfahren eines in Teilbändern transformierten Signals und entsprechende Filteranordnung | |
DE69128407T2 (de) | Verfahren und Einrichtung zur Übertragung mit niedriger Bitrate eines Sprachsignals mittels CELP-Codierung | |
DE2707936C3 (de) | Einseitenband-FrequenzmultiplexÜbertragungssystem | |
DE3885303T2 (de) | Verfahren zur annäherung eines wertes, der eine nichtlineare funktion der linearen bildelementsdatenmittelwerte ist. | |
AT399236B (de) | Digitaler sinusgenerator | |
DE3226619C2 (de) | ||
DE3810916C2 (de) | Delta-Pulscodemodulation | |
DE2523625A1 (de) | Digitalfilter | |
DE2163621A1 (de) | Schaltungsanordnung zur Durchführung der Fourier-Analyse | |
DE2615498A1 (de) | Konvolutionsfunktionsgenerator und dessen anwendung in digitalfiltern | |
DE3413694A1 (de) | Verfahren und vorrichtung fuer eine 4-punkt-signalfolgefrequenzwandlung | |
DE69603360T2 (de) | Verfahren und vorrichtung zur synthetisierung von musiktönen durch frequenzmodulation und mittels eines filters | |
DE69307192T2 (de) | Verfahren und Einrichtung zur Übertragungsfehlerverdeckung von mittels einer Frequenztransformation kodierten digitalen Audiosignalen | |
DE3037276C2 (de) | Tonsynthesizer | |
EP1906527A2 (de) | Vorrichtung und Verfahren zum polyphasigen Resampling |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: TAMIRAS PER PTE. LTD., LLC, DOVER, DEL., US |