DE69419167T2 - Digitale vorrichtung zur änderung der grösse eines bildes und verwendungsmethode desgleichen - Google Patents
Digitale vorrichtung zur änderung der grösse eines bildes und verwendungsmethode desgleichenInfo
- Publication number
- DE69419167T2 DE69419167T2 DE69419167T DE69419167T DE69419167T2 DE 69419167 T2 DE69419167 T2 DE 69419167T2 DE 69419167 T DE69419167 T DE 69419167T DE 69419167 T DE69419167 T DE 69419167T DE 69419167 T2 DE69419167 T2 DE 69419167T2
- Authority
- DE
- Germany
- Prior art keywords
- filter
- coefficients
- input
- intermediate product
- integers
- 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 description 17
- 238000005070 sampling Methods 0.000 claims abstract description 28
- 239000013067 intermediate product Substances 0.000 claims description 31
- 230000000295 complement effect Effects 0.000 claims description 10
- 230000003111 delayed effect Effects 0.000 claims description 2
- 230000004044 response Effects 0.000 abstract description 7
- 230000006872 improvement Effects 0.000 abstract description 3
- 238000001914 filtration Methods 0.000 abstract description 2
- 238000012545 processing Methods 0.000 description 64
- 230000006870 function Effects 0.000 description 17
- 239000000047 product Substances 0.000 description 10
- 238000011045 prefiltration Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000009467 reduction Effects 0.000 description 3
- 238000012952 Resampling Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Complex Calculations (AREA)
- Editing Of Facsimile Originals (AREA)
- Apparatus For Radiation Diagnosis (AREA)
- Holo Graphy (AREA)
Description
- Die Erfindung betrifft im allgemeinen die digitale Signalverarbeitung von Bildern und insbesondere eine Einrichtung zum Ändern der Größe eines Bilds bei der digitalen Verarbeitung von Bildern.
- In der folgenden Beschreibung bezeichnet der Ausdruck "Bild" eine zweidimensionale Darstellung, die digital abtastbar und die durch einen Frame oder ein Halbbild darstellbar ist, das Pixelzeilen enthält, wobei jedes Pixel ein Bildelement darstellt. Die Größe eines Bilds, die durch die Pixelanzahl pro Zeile und die Zeilenanzahl pro Frame oder Halbbild dargestellt wird, kann man durch digitale Signalverarbeitung ändern, ohne den Informationsgehalt des Bilds zu verändern.
- Der Stand der Technik kennt verschiedene Formen der digitalen Signalverarbeitung bei Bildern, die beispielsweise in US-A-4,674,125 und US-A-4,797,942 offenbart sind. Es ist bekannt, Bilder zu erzeugen, die gefiltert, in der Größe verändert, projiziert, verformt usw. worden sind (siehe Digital Image Warping, George Wolberg, IEEE Computer Society Press 1988; Two-dimensional Signal und Image Processing, Jae S. Lim, Prentice Hall 1990; Handbook of Digital Signal Processing, Douglas F. Elliott, Academic Press 1987).
- Es ist ebenfalls bekannt, daß man digitale Bildprozessoren, beispielsweise Filter, mit integrierten Schaltungen implementieren kann. Bei diesen Schaltungen sind die Bildgrößen begrenzt, die man mit ihnen in einem gegebenen Zeitrahmen verarbeiten kann, und zwar aufgrund der größtmöglichen Taktfrequenzen und durch die Größe der Bauteile, die man in solchen Schaltungen zum Bereitstellen von Zeilenverzögerungen verwendet. Softwareumsetzungen sind in ähnlicher Weise durch den größtmöglichen Durchsatz der CPU begrenzt, auf der die Software läuft.
- In US-A-5,355,328 (Arbeiter et al.) ist in allgemeinen Angaben eine Vorrichtung zum Bereitstellen einer Bildgrößenveränderungsfunktion beschrieben. Das erste Element in der Vorrichtung, die in US-A-5,355,328 (Arbeiter et al.) offenbart ist, ist ein Interpolierer zum Ändern der Anzahl der Abtastwerte eines Eingabe-Abtastwertestroms, der eine gegebene Abtastperiode P hat, um einen Faktor M/CL, wobei C eine positive Ganzzahl ist und M kleiner als CL ist, und wobei entweder 2ºM/CL oder 2-"M/CL gleich dem Zeitinkrement M/L ist, und der Betrag von n zumindest gleich null ist, so daß man als Abtastperiode des ersten abgeleiteten Abtaststroms (M/(CL))P erhält.
- Das zweite Element in der Vorrichtung, die in US-A-5,355,328 (Arbeiter et al.) offenbart ist, ist eine Oktavfiltervorrichtung, die eine vorbestimmte Abtastrate hat, die mit der Interpolierrate des ersten Elements verknüpft ist, so daß die Ausgabe des zweiten Elements eine Abtastperiode von (M/L)P hat.
- Das heißt, US-A-5,355,328 (Arbeiter et al.) offenbart das Neuabtasten mit dem Verhältnis oder Zeitinkrement M/L, wobei zuerst mit dem Verhältnis 2nM/L interpoliert wird.
- Ein herkömmliches System zum Berechnen des Verhältnisses der Ausgangs-Abtastwerte M zu den Eingangs-Abtastwerten L ist in Fig. 1 in den beiliegenden Zeichnungen dargestellt.
- Gemäß dieser herkömmlichen Technik wird der Zeitschritt bzw. das Inkrement wie folgt berechnet.
- Die Quell- bzw. Zielwerte L und M in Pixel/Zeile werden an die "a"- und "b"-Eingänge eines Teilers 1 angelegt, der eine Ausgabe a/b = M/L liefert, wobei M/L das Zeitschrittinkrement darstellt.
- Damit erhält man für die Abbildung von vier Quellpixeln/Zeile auf fünf Zielpixel/Zeile M/L - 4/5 = 0,8. Das letzte abgebildete Pixel in jeder Zeile ist jedoch nicht mit dem letzten Eingabepixel auf dem Eingabegitter ausgerichtet.
- Das System nach US-A-5,355,328 (Arbeiter et al.) stellt eine ganz wesentliche Verbesserung gegenüber herkömmlichen Wiederabtastsystemen bereit.
- WO-A-9424632 gehört zum Stand der Technik, der unter die Begriffe des Artikels 54(3) EPC fällt, und betrifft einen digitalen Neuabtaster, der eine Kombination aus ersten Mitteln und zweiten Mitteln enthält. Das erste Mittel, das eine Interpolierfiltervorrichtung enthält, verarbeitet die Digitalsignal-Abtastwerte eines Eingangsabtaststroms und erzeugt einen ersten abgeleiteten Abtaststrom von Digitalsignal-Abtastwerten, in denen die gegebene Abtastperiode P des Eingangsstroms direkt mit einem Faktor M'/CL multipliziert wird, wobei C eine gegebene Ganzzahl und M' kleiner als CL ist, und entweder 2n(M'/CL) oder 2-n(M'/CL) gleich M/L ist, und der Betrag von n zumindest gleich null ist, so daß die Abtastperiode des ersten abgeleiteten Abtaststroms (M'/CL)P beträgt. Das zweite Mittel, das Oktavvorfilter- und Abtastvorrichtungen enthält, verarbeitet den ersten abgeleiteten Abtaststrom der Digitalsignal-Abtastwerte und erzeugt als Ausgabe einen zweiten abgeleiteten Abtaststrom der Digitalsignal-Abtastwerte, in dem die erste abgeleitete Abtastperiode (M'/CL)P des ersten abgeleiteten Abtaststroms mit einem Faktor multipliziert wird, der entweder gleich 2n(M'/CL) oder 2-n(M'/CL) ist, so daß die Abtastperiode des zweiten abgeleiteten Abtaststroms (M/L)P beträgt.
- Erfindungsgemäß wird eine Einrichtung zum Ändern der Größe eines Bilds bereitgestellt, umfassend:
- a) eine Interpolierfiltervorrichtung, die einen Eingabepixelstrom empfängt, der eine vorbestimmte Abtastperiode P und eine erste Abtastrate von S Pixeln/Zeile hat, und den Strom der Eingabepixel mit einer vorbestimmten Interpolierrate interpoliert und einen ersten abgeleiteten Pixelabtaststrom erzeugt, der eine weitere Abtastperiode (M/(CL))P und eine zweite Abtastrate von T Pixeln/Zeile aufweist, wobei L eine erste positive Ganzzahl größer als eins ist, C eine positive Ganzzahl und M kleiner als CL ist, und wobei entweder 2nM/CL oder 2-nM/CL gleich dem Zeitschrittinkrement M/L und der Betrag von n wenigstens gleich null ist;
- b) eine Oktavfiltervorrichtung, die eine vorbestimmte Abtastrate hat, die mit der Interpolierrate des Interpolierfilters verknüpft ist, und den ersten abgeleiteten Pixelabtaststrom empfängt und daraus einen gefilterten Ausgabepixelstrom erzeugt, der eine Abtastrate von (M/L)P aufweist, wobei die Oktavfiltervorrichtung eine Anzahl Filterkoeffizienten hat, und die positiven Koeffizienten durch vorzeichenlose binäre Ganzzahlen dargestellt werden und die negativen Koeffizienten durch binäre Zweierkomplement-Ganzzahlen dargestellt werden, und die Oktavfiltervorrichtung umfaßt:
- i) einen Eingang, der den ersten abgeleiteten Pixelabtaststrom empfängt, von denen jedes Pixel eine vorbestimmte Bitanzahl umfaßt;
- ii) Vorrichtungen zum Abschneiden oder Runden von zumindest einer führenden "0" oder einer an letzter Stelle stehenden "0" der positiven Koeffizienten und von zumindest einer führenden "1" oder einer an letzter Stelle stehenden "0" der negativen Koeffizienten, so daß Stellen der Ganzzahlen entfernt werden;
- iii) Vorrichtungen, die nacheinander den ersten abgeleiteten Pixelabtaststrom verzögern und nacheinander verzögerte Versionen des ersten abgeleiteten Pixelabtaststroms erzeugen;
- iv) Vorrichtungen, die den ersten abgeleiteten Pixelabtaststrom mit entsprechenden abgeschnittenen Darstellungen entsprechender Koeffizienten aus der Anzahl Filterkoeffizienten multiplizieren und daraus eine Anzahl Zwischenprodukt- Ganzzahlen erzeugen:
- v) Vorrichtungen zum Wiederherstellen der Stellenanzahl der Zwischenprodukt-Ganzzahlen; und
- vi) Vorrichtungen, die die Zwischenprodukt-Ganzzahlen summieren und daraus den Strom gefilterter Ausgabepixel erzeugen.
- Man kann die Erfindung daher so betrachten, daß sie eine Einrichtung zum Ändern der Größe eines Bilds bereitstellt, die die in US-A-5,355,328 (Arbeiter et al.) beschriebenen Funktionen umsetzt.
- Bevorzugte Entwurfsmerkmale beziehen sich auf die Behandlung der Randbedingungen, die Fähigkeit, einzelne Bilder in mehreren Segmenten zu verarbeiten, die Genauigkeit der Arithmetik, die in den Oktavfiltervorrichtungen verwendet wird, und das Handhaben hoher Größenänderungsfaktoren mit einem Filter fester Ordnung. Alle Merkmale können dazu beitragen, im Vergleich zum System nach US-A-5,355,328 verbesserte Leistungseigenschaften bereitzustellen.
- Gemäß einer Ausführungsform der Erfindung werden zwei Oktavfilter bereitgestellt. In einem Filter filtert man die erste Oktave mit Hilfe eines nichtrekursiven Filters ('FIR'- Filter) mit 5 Abzweigungen. Die zweite Oktave filtert man mit einem FIR-Filter mit 9 Abzweigungen, die dritte Oktave filtert man mit einem FIR-Filter mit 17 Abzweigungen, die vierte Oktave filtert man mit einem FIR-Filter mit 33 Abzweigungen, und die fünfte Oktave filtert man mit einem FIR-Filter mit 65 Abzweigungen. Alle höheren Oktaven filtert man mit einem FIR- Filter mit 65 Abzweigungen. Im zweiten Fall filtert man die erste Oktave mit einem nichtrekursiven Filter ('FIR'-Filter) mit 3 Abzweigungen. Die zweite Oktave filtert man mit einem FIR-Filter mir 5 Abzweigungen, die dritte Oktave filtert man mit einem FIR-Filter mit 9 Abzweigungen, die vierte Oktave filtert man mit einem FIR-Filter mit 17 Abzweigungen, und die fünfte Oktave filtert man mit einem FIR-Filter mit 33 Abzweigungen. Alle höheren Oktaven filtert man mit einem FIR-Filter mit 33 Abzweigungen. In den beiden genannten Oktavfilterumsetzungen wählt man die Filterkoeffizienten derart, daß man den gleichen Dämpfungsfaktor oder "Q"-Faktor erhält. Dies ermöglicht einen gleichmäßigen und fortlaufenden Änderungsvorgang der Bildgröße.
- Die Genauigkeit der in den FIR-Filtern verwendeten Arithmetik kann man dadurch verbessern, daß man ein System zum Koeffizientenabschneiden oder Runden einsetzt, damit die Anzahl der erforderlichen Bits zum Darstellen der Koeffizienten kleiner wird. Anschließend erweitert man die Vorzeichen und schiebt die Zwischenproduktwerte, die durch das Multiplizieren der Koeffizienten entstehen, um die Stellenanzahl der Werte wieder herzustellen.
- Die Pseudo-Fließkomma-Filterkoeffizienten kann man bei verminderter Genauigkeit mit den Eingabedaten multiplizieren. Die Ergebnisse werden geschoben und vorzeichenerweitert, um die abgeschnittenen Bits auszugleichen. Dies verringert die gespeicherte Datenmenge, wenn die Koeffizienten im Speicher gespeichert sind, und vermindert die Komplexität der Arithmetik, die man braucht, um das exakte Ergebnis zu erhalten. Dabei betrachtet man, daß die Filterkoeffizienten fest verdrahtet sein können (festliegende Koeffizienten, die bitweise mit logischen High- oder Low-Spannungen verbunden sind), im RAM oder ROM gespeichert sind, von einem Host geladen oder berechnet werden.
- Die Randbedingungen und Kantenwirkungen der Bilder kann man durch das Spiegeln der Kantenpixel und der Zeilen auf ei ne neuartige Weise abmildern, die im weiteren ausführlicher beschrieben wird.
- Die Erfindung wird nunmehr zur besseren Darstellung und um zu zeigen, wie sie ausgeführt werden kann, beispielhaft mit Bezug auf die beiliegenden Zeichnungen beschrieben. Es zeigt:
- Fig. 1 ein Blockdiagramm eines herkömmlichen Systems zum Berechnen des Zeitinkrements M/L;
- Fig. 2 ein Blockdiagramm eines Systems gemäß einem Aspekt der Erfindung zum Berechnen des Zeitinkrements M/L;
- Fig. 3 ein Blockdiagramm eines Oktavfilters gemäß einer Ausführungsform der Erfindung; und
- Fig. 4 ein Blockdiagramm eines Oktavfilters gemäß einer weiteren Ausführungsform der Erfindung.
- Es wird nun Bezug auf Fig. 2 genommen. Sie zeigt die Mittel, die zum Umrechnen des Zeitschrittinkrements M/L bereitgestellt sind, damit die interpolierten Pixel mit dem Eingabegitter ausgerichtet sind, und zwar wie folgt:
- M/L = (S - 1)/(T - 1).
- Der Quellwert 5 der Eingabepixel/Zeile wird an den Eingang (X) eines ersten Subtrahierers 13 angelegt, der vom Eingabewert "1" subtrahiert, so daß man S-1 erhält. In ähnlicher Weise legt man den Zielwert der Ausgangspixel/Zeile an den Eingang (X) eines zweiten Subtrahierers 15, der vom Eingabewert "1" subtrahiert, so daß man T-1 erhält. Die digitalen Ausgangssignale der Subtrahierer 13 und 15 legt man an die Eingänge "a" bzw. "b" eines Teilers 17, der ein Ausgangssignal a/b = (S - 1)/(T - 1) - M/L liefert.
- Gemäß der Schaltung nach Fig. 2 sind die interpolierten Ausgangspixel an den Bildgrenzen mit den Eingangspixeln an den Bildgrenzen ausgerichtet. Damit ist für das oben besprochene Beispiel M/L = (4 - 1)/(5 - 1) = 3/4 = 0,75.
- Als Alternative zum Gebrauch der Subtrahierer 13 und 15 kann man ladbare Abwärtszähler einsetzen, in denen die geladenen Eingabewerte nach dem Laden um "1" nach unten getaktet werden. Zudem kann man neben der Hardwareausführungsform nach Fig. 2 die Berechnung von M/L auch bequem in einem Computer ausführen, der geeignete Software abarbeitet.
- Es ist bekannt, daß man, nachdem M/L bekannt ist, 2nM/L einfach dadurch berechnen kann, daß man M/L für jede Potenz von 2 um eine Binärstelle nach links schiebt. Damit gilt im System nach US-A-5,355,328 (Arbeiter et al.): ist n = 1, so schiebt man M/L um eine Binärstelle nach links; ist n = 2, so schiebt man M/L um zwei Binärstellen nach links, usw. Für n = -1 schiebt man M/L um eine Binärstelle nach rechts.
- Die Einrichtung nach Fig. 2 liefert zwei bedeutende Verbesserungen gegenüber der herkömmlichen Größenänderungsvorrichtung nach US-A-5,355,328 (Arbeiter et al.). Die Randbedingungen kann man leicht durch das Spiegeln der Pixel an den Bildgrenzen handhaben, und das Verarbeiten eines Bilds in mehrfachen Segmenten vereinfacht sich, siehe die Beschreibung in WO-A-9508815.
- Fig. 3 zeigt eine Oktavfilterschaltung gemäß einer Ausführungsform der Erfindung, die man als Umsetzung der FIR- Oktavfilter im Größenänderungssystem nach US-A-5,355,328 (Arbeiter et al.) betrachten kann, und zwar mit einer fortgeschrittenen Arithmetik, die die Präzision und Güte der Filter verbessert; dies wird im weiteren ausführlicher besprochen. In der dargestellten Anordnung sind fünf Filter enthalten. Die Filterkoeffizienten befinden sich in Tabelle 1, die im weiteren ausführlicher besprochen wird.
- Die numerische Genauigkeit in einem Digitalfilter verbessert sich durch das Abschneiden oder Runden der Multipliziererkoeffizienten vor dem Multiplizieren und durch das Schieben der entstehenden Multiplizierer-Produktwerte und den Einsatz einer Vorzeichenerweiterung zum Wiederherstellen der Stellenanzahl der Produktwerte. Die Koeffizienten stellt man als Zweierkomplementzahlen dar, wobei man positive Ganzzahlen in üblicher Weise als vorzeichenlose binäre Ganzzahlen darstellt. Man legt jedoch an die Digitalfilter-Multiplizierer (z. B. die Multiplizierer, 39, 41 und 45 im Filter nach Fig. 3) nur die höchstwertigen Bits der Koeffizienten an. Insbesondere löscht man bei positiven Zahlen führende Nullen und ignoriert an letzter Stelle stehende Nullen. Für negative Zweierkomplementzahlen löscht man führende Einsen und ignoriert an letzter Stelle stehende Nullen. Zuletzt schiebt man die Multiplikationsergebnisse und erweitert das Vorzeichen, damit die Stellenanzahl der erzeugten Produktwerte wiederhergestellt wird.
- Bei einem Digitalfilter mit der Verstärkung eins ist die Summe der Koeffizienten gleich 1. Daher sind bei Filtern mit mehr Abzweigungen die Koeffizienten kleiner als bei Filtern mit weniger Abzweigungen, damit die Summe der Filterkoeffizienten 1 ergibt. Diese Technik ist unabhängig von der Verstärkung des Filters anwendbar; die Koeffizientensumme kann dann jedoch von 1 abweichen.
- Tabelle 1 zeigt die abgeschnittenen oder gerundeten Filterkoeffizienten für Gauß-Tiefpaßfilter mit 5, 9, 17, 33 und 65 Abzweigungen. Tabelle 1 ist zu entnehmen, daß bei breiten Filtern die führenden Bits in den positiven Koeffizienten stets 0 und die führenden Bits in den negativen Koeffizienten stets 1 sind. Im Gegensatz dazu sind bei schmalen Filtern die Bits an letzter Stelle alle 0.
- Im Beispiel nach Tabelle 1 hat man sechs Stellen ausgewählt, die die größte Datenmenge (d. h. die "1" auf "0"- Übergänge) für einen 6-Bit-Multiplizierer enthalten. Im Fall eines Filters mit fünf Abzweigungen kann man auch die an letzter Stelle stehenden Nullen in den 6-Bit-Ganzzahlen streichen. Bei einem Multiplizierer mit 6 Bit Auflösung hat man jedoch keinen Vorteil davon.
- Damit kann man die Genauigkeit der Filterkoeffizienten für einen Multiplizierer mit gegebener Größe erweitern. In den Beispielen nach Tabelle 1 streicht man im Fall der 5 Abzweigungen die an letzter Stelle stehenden Nullen, wenn sie die Genauigkeit übersteigen. Bei den 17, 33 und 65 Abzweigungen sind keine an letzter Stelle stehenden Nullen zu streichen. Tabelle 1, Filterkoeffizienten
- Der Schritt des Umschaltens zwischen einem Zweierkomplement und einem vorzeichenlosen Multiplikator entspricht dem Schieben der Stellen des erzeugten Produkts. Der Schritt des Schiebens und des Vorzeichenerweiterns dargestellt in Bezug auf die Filter mit 9, 17, 33 und 65 Abzweigungen stellt die Stellenanzahl der Daten nach erfolgter Multiplikation wirksam wieder her.
- Falls die Eingabedaten führende Nullen (positive Zahlen) oder führende Einsen (negative Zahlen) enthalten, kann man die 6 höchstwertigen Stellen auswählen. Die Stellenanzahl des Zweierkomplementprodukts stellt man durch das Rechtsschieben der Ergebnisse mit Vorzeichenerweiterung wieder her. In dieser Technik verwendet man die Stellenanzahl des Produkts zum Erweitern der tatsächlichen Genauigkeit der Eingabedaten.
- Der Tabelle 1 kann man entnehmen, daß Wechsel zwischen dem Zweierkomplement und den vorzeichenlosen Binärfilterkoeffizienten nur dann verwendet worden sind, wenn ein besonderer Bedarf erkennbar war. Insbesondere ist die Stellenanzahl aller Filter beibehalten worden, so daß man unterschiedliche Filter auswählen kann, ohne daß sich die mittlere Intensität des gefilterten Bilds, das erzeugt wird, in irgendeiner Weise ändert. In den Filtern mit 5, 9 und 17 Ab zweigungen verwendet man den Wechsel zwischen Zweierkomplement und vorzeichenlosen Binärzahlen zum Verbessern der Gesamtgenauigkeit des Filters. In allen Filtern verwendet man die Technik des Abschneidens der Filterkoeffizienten zum Bewahren der wesentlichen Stellen und anschließend das Schieben mit Vorzeichenerweiterung zum Wiederherstellen des korrekten Werts, nachdem die Multiplikation abgeschlossen ist.
- Die Filterkoeffizienten sind in senkrechter und waagrechter Richtung gleich. Das in WO-A-9510883 beschriebene Verfahren verwendet man in der hier beschriebenen Vorrichtung, um den Einsatz des Filters mit 65 Abzweigungen auf Größenänderungsfaktoren über der fünften Oktave zu erweitern. Diese Technik ist in dieser Vorrichtung sowohl waagrecht als auch senkrecht angewendet worden.
- Es folgt nun eine ausführliche Beschreibung der Schaltung nach Fig. 3, die als Unterabtast-Halbbandfilter mit fünf Abzweigungen arbeitet.
- Die Eingabeleitung 31 führt Videosignal-Abtastwerte aus aufeinanderfolgenden Eingabezeilen L1, L2, ... L6, L7, ... usw., die die relativ langen Abtastzeilen-Abtastperioden in senkrechter Richtung eines Videobilds bilden. Damit stellen L1, L2, ... L7 und L8 acht aufeinanderfolgende, relativ lange waagrechte Abtastzeilen des Videobilds dar (wobei jede Abtastzeile eine große Anzahl Pixelabtastwerte umfaßt). Damit empfängt der Multiplizierer 39 beginnend mit der Eingabezeile L1 nacheinander als Multiplikant jede der aufeinanderfolgenden Eingabezeilen L1, L2, ... L6, L7, ... der Abtastwerte und empfängt als Multiplikator einen der abgeschnittenen 6-Bit- Filterkoeffizienten h(-2) oder h(-1) aus dem ROM 37 (siehe die Tabelle 1 der abgeschnittenen Kernfunktionskoeffizienten).
- Beginnend mit der Eingabezeile L3 empfängt der Multiplizierer 41 nacheinander als Multiplikant jede der aufeinanderfolgenden Eingabezeilen L3, L4, ... L8, L9, ... der Abtastwerte und empfängt als Multiplikator einen der abgeschnittenen 6-Bit-Filterkoeffizienten h(1) oder h(0) aus dem ROM 40. Beginnend mit der Eingabezeile L5 empfängt der Multiplizierer 45 nacheinander als Multiplikant jede der aufeinanderfolgenden ungeradzahlig numerierten Eingabezeilen L5, L7, L9... der Abtastwerte und empfängt als Multiplikator den abgeschnittenen 6-Bit-Filterkoeffizienten h(2). Im allgemeinen enthält jede der aufeinanderfolgenden Eingabezeilen L1..., L9... N Abtastwerte. Dabei kann N jede beliebige positive Ganzzahl sein. Zur Erläuterung sei jedoch angenommen, daß jede dieser aufeinanderfolgenden Eingabezeilen die Abtastzeile eines Videobilds ist, die eine Abtastzeilenperiode einnimmt, und N ist die Anzahl der Pixelabtastwerte in einer solchen Abtastzeile.
- Wie oben mit Bezug auf Tabelle 1 besprochen, wird das 14-Bit-Ausgangssignal des Multiplizierers 39 in der Schiebe- und Vorzeichenerweiterungsschaltung 47 geschoben und vorzeichenerweitert, um die Stellenanzahl der Zwischenprodukt-Ganzzahlen wiederherzustellen, die der Multiplizierer 39 ausgibt.
- Das Ausgangssignal der Schiebe- und Vorzeichenerweiterungsschaltung 47 wird als erstes Eingangssignal an den Summierer 53 angelegt. Das Ausgangssignal des Summierers 53 wird als Eingangssignal an die erste Verzögerungsschaltung 57 für N Abtastwerte angelegt. Das Ausgangssignal der Verzögerungsschaltung 57 für N Abtastwerte wird als erstes Eingangssignal an den Multiplexer 55 und als erstes Eingangssignal an den Multiplexer 59 angelegt. Als zweites Eingangssignal wird ein Nullsignal an beide Multiplexer 55 und 59 angelegt. Das Ausgangssignal des Multiplexers 55 wird als zweites Eingangssignal an den Summierer 53 angelegt. Das Ausgangssignal des Multiplexers 59 wird als erstes Eingangssignal in den Summierer 61 eingegeben. Das Ausgangssignal des Multiplizierers 41 wird in der Schaltung 49 wie beschrieben geschoben und vorzeichenerweitert. Das Ausgangssignal der Schiebe- und Vorzeichenerweiterungsschaltung 49 wird als zweites Eingangssignal an den Summierer 61 angelegt. Das Ausgangssignal des Summierers 61 wird als Eingangssignal an eine zweite Verzögerungsschaltung 65 für N Abtastwerte angelegt. Das Ausgangssignal der Verzögerungsschaltung 65 für N Abtastwerte wird als erstes Eingangssignal in den Multiplexer 63 eingegeben und als erstes Eingangssignal in einen zusätzlichen Multiplexer 66.
- Als zweites Eingangssignal wird ein Nullwert in jeden der Multiplexer 63 und 66 eingegeben. Das Ausgangssignal des Multiplexers 63 wird als drittes Eingangssignal in den Summierer 61 eingespeist. Das Ausgangssignal des Multiplexers 66 wird als erstes Eingangssignal in den Summierer 67 eingegeben. Das Ausgangssignal des Multiplizierers 45 wird in der Schaltung 51 geschoben und vorzeichenerweitert. Das geschobene und vorzeichenerweiterte Zwischenproduktsignal, das die Schaltung 51 ausgibt, wird als zweites Eingangssignal in den Summierer 67 eingegeben. Das Ausgangssignal des Summierers 67 umfaßt das unterabgetastete Oktaworfilter-Ausgangssignal.
- Zusätzlich zur in Fig. 3 dargestellten Anordnung enthält jeder Multiplizierer und Summierer ein eigenes Abtastlatch (nicht dargestellt) an jedem seiner Eingänge und Ausgänge, wobei jedes Latch eine Verzögerung um einen Abtastwert im Datenfluß erzeugt. Zudem sind in der praktischen Umsetzung geeignete Timing- und Steuerschaltungen (nicht dargestellt) bereitgestellt, die den Datenfluß durch die Oktavvorfilteranordnung nach Fig. 3 wie besprochen steuern.
- Die Multiplexer 55 und 63 sind so eingestellt, daß die jeweiligen Ausgangssignale der ersten und zweiten Verzöge rungsschaltung 57 und 65 für N Abtastwerte nur während der geraden Eingabezeilen-Abtastzeilen-Periodenzyklen der Verarbeitung zurückgeführt werden. Normalerweise werden in allen ungeraden Eingabezeilen-Abtastzeilen-Periodenzyklen der Verarbeitung Nullwerte zurückgeführt. (Grundsätzlich ist es nicht unbedingt erforderlich, daß sich die Multiplexer 55 und 63 während dieser ungeraden Eingabezeilen-Abtastzeilen-Periodenzyklen der Verarbeitung in ihrem Nullwertzustand befinden, beispielsweise während des Anfangszyklus, in dem man von vorn herein weiß, daß keine Abtastwerte aus den jeweiligen Ausgängen der ersten und zweiten Verzögerungsschaltung 57 und 65 für N Abtastwerte austreten können.) Die Multiplexer 59 und 66 sind so eingestellt, daß die Ausgangssignale der Verzögerungsschaltungen 57 und 65 für N Abtastwerte jeweils nur während der ungeraden Eingabezeilen-Abtastzeilen-Periodenzyklen der Verarbeitung in ihnen an die Eingänge der Summierer 61 und 67 weitergeleitet werden. Während der geraden Eingabezeilen-Abtastzeilen-Periodenzyklen der Verarbeitung werden in ihnen Nullwerte an die ersten Eingänge der Summierer 61 und 67 weitergeleitet.
- Für die folgende Beschreibung sind entsprechende Abtastwerte der jeweiligen Eingabezeilen L1, L2, L3... jeweils mit sL1, sL2, sL3... bezeichnet. Während des ersten Abtastzeilen-Periodenzyklus der Filterverarbeitung wird jeder der N Abtastwerte der Eingabezeile L1 zuerst mit dem Koeffizienten h(-2) multipliziert, um einen Abtastwert h(-2)sL1 bereitzustellen. Anschließend wird jeder dieser Abtastwerte in der Schaltung 47 geschoben und vorzeichenerweitert, damit man die Stellenanzahl des Produktsignals wiederherstellt. Das Produktsignal wird dann über den Summierer 53 als Eingangssignal an die erste Verzögerungsvorrichtung 57 für N Abtastwerte angelegt.
- Während des zweiten Abtastzeilen-Periodenzyklus der Verarbeitung befindet sich der Multiplexer 55 in seinem Nicht-Nullzustand, so daß die Abtastwerte h(-2)sL1, die nun als Ausgangssignale aus der Verzögerungsschaltung 57 für N Abtastwerte austreten, als zweites Eingangssignal auf den Summierer 53 zurückgeführt und zu den entsprechenden Abtastwerten h(-1)sL2 addiert werden, die nun als erstes Eingangssignal an den Summierer 53 gelangen (d. h., das ROM 37 erzeugt den geeigneten abgeschnittenen 6-Bit-Kernfunktion-Gewichtungskoeffizienten, der im Multiplizierer 39 mit den N Abtastwerten der zweiten Eingabezeile L2 multipliziert und dann in der Schaltung 47 geschoben und vorzeichenerweitert wird). Daher hat während des zweiten Abtastzeilen-Periodenzyklus der Verarbeitung der Abtastwert einer jeden Abtastung, der als Eingangssignal an die erste Verzögerungsschaltung 57 für N Abtastwerte angelegt wird, die Gestalt h(-2)sL1 + h(-1)sL2. Während des zweiten Abtastzeilen-Periodenzyklus der Verarbeitung befindet sich jedoch der Multiplexer 59 in seinem Nullzustand, so daß der Wert h(-2)sL1, den die Verzögerungsschaltung 57 ausgibt, nicht an den ersten Eingang des Summierers 61 angelegt wird.
- Während des dritten Abtastzeilen-Periodenzyklus der Verarbeitung befinden sich beide Multiplexer 55 und 63 in ihrem Nullzustand, so daß die von der ersten Verzögerungsschaltung 57 für N Abtastwerte ausgegebenen Abtastungen mit dem Wert h(-2)sL1 + h(-1)sL2 nicht auf den Summierer 53 zurückgeführt werden. Der Multiplexer 59 befindet sich jedoch in seinen Nicht-Nullzustand, so daß die von der Verzögerungsschaltung 57 ausgegebenen Abtastungen mit dem Wert h(-2)sL1 + h(-1)sL2 über den Multiplexer 59 an den ersten Eingang des Summierers 61 weitergegeben werden. Damit werden im dritten Abtastzeilen-Periodenzyklus der Verarbeitung die Abtastungen mit dem Wert h(-2)sL1 + h(-1)sL2 + h(0)sL3 als Eingangssignal an die zweite Verzögerungsschaltung 65 für N Abtastwerte angelegt (d. h., das ROM 40 erzeugt den h(0)-Kernfunktion-Gewichtungskoeffizienten in abgeschnittener 6-Bit-Form, der im Multiplizierer 41 mit den N Abtastwerten der Eingabezeile L3 multi pliziert wird; das Zwischenprodukt-Ausgangssignal dieses Multiplizierers wird in der Schaltung 49 geschoben und vorzeichenerweitert und an den Summierer 61 angelegt).
- Während des vierten Abtastzeilen-Periodenzyklus der Verarbeitung befinden sich beide Multiplexer 55 und 63 in ihrem Nicht-Nullzustand, so daß die Abtastungen mit dem Wert h(-2)sL1 + h(-1)sL2 + h(0)sL3, die die Verzögerungsschaltung 65 für N Abtastwerte ausgibt, als drittes Eingangssignal auf den Summierer 61 zurückgeführt werden. Zudem erzeugt das ROM 40 den auf 6 Bit abgeschnittenen h(1)-Kernfunktion-Gewichtungskoeffizienten für die Multiplikation mit den N Abtastwerten der Eingabezeile L4 im Multiplizierer 41. Das aus dem Multiplizierer 41 ausgegebene Zwischenproduktsignal wird in der Schaltung 49 geschoben und vorzeichenerweitert und an den Summierer 61 angelegt, so daß das Ausgangssignal des Summierers 61 eine Summation der Abtastwerte h(-2)sL1 + h(-1)sL2 + h(0)sL3 + h(1)sL4 erzeugt. Diese Abtastwertsumme wird nun an den Eingang der Verzögerungsschaltung 65 für N Abtastwerte angelegt. Die Multiplexer 59 und 66 befinden sich nun jedoch im Nullzustand. D. h., daß die Abtastungen mit dem Wert h(-2)sL3, die nun aus dem Ausgang der ersten Schaltung 57 für N Abtastwerte austreten, auf den zweiten Eingang des Summierers 53 zurückgeführt werden. Dagegen werden diese Abtastungen mit dem Wert h(-2)sL3 nicht an den ersten Eingang des Summierers 61 weitergereicht, und die Abtastungen mit dem Wert h(-2)sL1 + h(-1)sL2 + h(0)sL3, die nun als Ausgangssignal aus der zweiten Verzögerungsschaltung 65 für N Abtastwerte austreten, werden nicht an den ersten Eingang des Summierers 67 weitergereicht. Die zurückgeführten Abtastungen mit dem Wert h(-2)sL3 werden nun im Summierer 53 zu den Abtastungen mit dem Wert h (-1) sL4 addiert. Die entstehenden Abtastungen mit dem Wert h(-2)sL3 + h(-1)sL4 werden an den Eingang der ersten Verzögerungsschaltung 57 für N Abtastwerte angelegt.
- Während des fünften Abtastzeilen-Periodenzyklus der Verarbeitung befinden sich beide Multiplexer 55 und 63 in ihrem Nullzustand, so daß die Abtastungen mit dem Wert h(-2)sL3 + h(-1)sL4, die nun als Ausgangssignal der ersten Verzögerungsschaltung 57 für N Abtastwerte auftreten, nicht als zweites Eingangssignal auf den Summierer 53 zurückgeführt werden. Nun befinden sich jedoch die Multiplexer 59 und 66 im Nicht-Nullzustand, so daß die Abtastungen mit dem Wert h(-2)sL3 + h(-1)sL4 durch den Multiplexer 59 auf den ersten Eingang des Summierers 61 weitergereicht werden, und die Abtastungen mit dem Wert h(-2)sL1 + h(-1)sL2 + h(0)sL3 + h(1)sL4, die nun aus der zweiten Verzögerungsschaltung 65 für N Abtastwerte austreten, werden an den ersten Eingang des Summierers 67 angelegt. Zudem erzeugt das ROM 43 den auf 6 Bit abgeschnittenen h(2)-Kernfunktion-Gewichtungskoeffizienten, der im Multiplizierer 45 mit den N Abtastwerten der Eingabezeile L5 multipliziert wird. Das aus dem Multiplizierer 45 ausgegebene Zwischenproduktsignal wird in der Schaltung 51 geschoben und vorzeichenerweitert und als zweites Eingangssignal an den Summierer 67 angelegt. Dadurch bildet man in der Oktavvorfilteranordnung mit 5 Abzweigungen nach Fig. 3 eine erste gefilterte Ausgangszeile, die die Abtastwerte h(-2)sL1 + h(-1)sL2 + h(0)sL3 + h(1)sL4 + h(2)sL5 enthält.
- Man beachte, daß der Status der Abtastwerte h(-2)sL3 + h(-1)sL4 während des fünften Abtastzeilen-Periodenzyklus der Verarbeitung identisch mit dem Status der Abtastwerte h(-2)sL1 + h(-1)sL2 während des dritten Abtastzeilen-Periodenzyklus der Verarbeitung ist. Damit entsprechen die sechsten und siebten Abtastzeilen-Periodenzyklen der Verarbeitung dem vierten bzw. fünften Abtastzeilen-Periodenzyklus der Verarbeitung.
- Somit wird die zweite gefilterte Ausgabezeile, die die Abtastwerte h(-2)sL3 + h(-1)sL4 + h(0)sL5 + h(1)sL6 + h(2)sL7 enthält, im siebten Abtästzeilen-Periodenzyklus der Verarbei tung ermittelt. In ähnlicher Weise wird die dritte gefilterte Ausgabezeile, die die Abtastwerte h(-2)sL5 + h(-1)sL6 + h(0)sL7 + h(1)sL8 + h(2)sL9 enthält, im neunten Abtastzeilen- Periodenzyklus der Verarbeitung ermittelt. Dagegen wird die vierte gefilterte Ausgabezeile, die die Abtastwerte h(-2)sL7 + h(-1)sL8 + h(0)sL9 + h(1)sL10 + h(2)sL11 enthält, im elften Abtastzeilen-Periodenzyklus der Verarbeitung ermittelt, usw.
- Der obigen Beschreibung kann man entnehmen, daß gefilterte Ausgabezeilen nur für jeden aufeinander folgenden ungeraden Abtastzeilen-Periodenzyklus der Verarbeitung auftreten, und zwar beginnend mit dem fünften Abtastzeilen-Periodenzyklus der Verarbeitung. Damit ist eine Unterabtastung mit dem Faktor zwei zwischen den Eingabe- und Ausgabezeilen der ersten erfindungsgemäßen Oktavvorfilteranordnung mit fünf Abzweigungen nach Fig. 3 erfolgt.
- Die Anordnung nach Fig. 3 kann man dazu verwenden, eine Anordnung mit 9, 17, 33, 65 usw. Abzweigungen umzusetzen, indem man die passenden abgeschnittenen Kernfunktion-Gewichtungskoeffizienten aus den ROMs 37, 40 und 43 mit einer geeigneten zeitlichen Steuerung an die Multiplizierer 39, 41 und 45 anlegt. Die abgeschnittenen Zwischenproduktsignale, die die Multiplizierer 39, 41 und 45 ausgeben, werden in der beschriebenen Weise in den Schaltungen 47, 49 und 51 geschoben und vorzeichenerweitert.
- Als Beispiel sei die Umsetzung der Schaltung nach Fig. 3 als Unterabtastfilter mit 9 Abzweigungen im weiteren besprochen. Das ROM 37 arbeitet zyklisch und leitet jeden der vier Kernfunktion-Gewichtungskoeffizienten h(-4), h(-3), h(-2) und h(-1) aus Tabelle 1 abwechselnd an den Multiplikatoreingang des Multiplizierers 39. Das ROM 40 arbeitet ebenfalls zyklisch und leitet jeden der vier Kernfunktion-Gewichtungskoeffizienten h(0), h(1), h(2) und h(3) aus Tabelle 1 abwechselnd an den Multiplikatoreingang des Multiplizierers 41.
- Ferner erzeugt das ROM 43 den abgeschnittenen Kernfunktion- Gewichtungskoeffizienten h(4) und legt ihn direkt an den Eingang des Multiplizierers 45.
- Neben diesem Unterschied in der physikalischen Anordnung treten die folgenden Unterschiede im Signaltiming und in der Steuerung zwischen den Verfahren auf, die man in der Schaltung nach Fig. 3 zum Umsetzen eines Filters mit 5 Abzweigungen einsetzt, und den Verfahren, die man zum Umsetzen eines Filters mit 9 Abzweigungen verwendet. In der Umsetzung für ein Filter mit 9 Abzweigungen wird beginnend mit der Eingabezeile L5 jede Eingabezeile an den Multiplikanteneingang des Multiplizierers 41 angelegt. Beginnend mit der Eingabezeile L9 wird jede vierte Eingabezeile (d. h., L13, L17, ...) an den Multiplikanteneingang des Multiplizierers 45 angelegt. Zudem erfolgt die zeitliche Steuerung der Multiplexer 55 und 63 so, daß sie sich nur während der Abtastzeilen-Periodenzyklen der Verarbeitungen 1, 5, 9, 13... in ihrem Nullzustand befinden, und in allen anderen Abtastzeilen-Periodenzyklen der Verarbeitung in ihrem Nicht-Nullzustand. Die zeitliche Steuerung der Multiplexer 59 und 66 erfolgt so, daß sie sich nur während der Abtastzeilen-Periodenzyklen der Verarbeitungen 1, 5, 9, 13... in ihrem Nicht-Nullzustand befinden, und während der anderen Abtastzeilen-Periodenzyklen der Verarbeitung im Nullzustand.
- In der Verarbeitung nach Fig. 3 zum Umsetzen eines Unterabtastfilters mit 9 Abzweigungen legt man die Abtastwerte h(-4)sL1 während des ersten Abtastzeilen-Periodenzyklus der Verarbeitung an den Eingang der ersten Verzögerungsschaltung 57 für N Abtastwerte an. In allen Zyklen des zweiten bis vierten Abtastzeilen-Periodenzyklus der Verarbeitung werden nacheinander ältere zurückgeführte Abtastwerte, die als Ausgangssignal aus der ersten Verzögerungsschaltung 57 für N Abtastwerte austreten, und die an den zweiten Eingang des Summierers 53 angelegt werden, zu den neuen Abtastwerten ad diert, die an den ersten Eingang des Summierers 53 angelegt werden (in der Weise, die oben im Zusammenhang mit der Umsetzung des Unterabtastfilters mit 5 Abzweigungen nach Fig. 3 beschrieben wurde). Dadurch werden die Abtastwerte h(-4)sL1 + h(-3)sL2 + h(-2)sL3 + h(-1)sL4 während des vierten Abtastzeilen-Periodenzyklus der Verarbeitung an den Eingang der ersten Verzögerungsschaltung 57 für N Abtastwerte angelegt. Treten diese Abtastwerte h(-4)sL1 + h(-3)sL2 + h(-2)sL3 + h(-1)sL4 während des fünften Abtastzeilen-Periodenzyklus der Verarbeitung als Ausgangssignal aus der ersten Verzögerungsschaltung 57 für N Abtastwerte aus, so befindet sich der Multiplexer 55 in seinem Nullzustand und der Multiplexer 59 in seinem Nicht-Nullzustand. Damit werden diese Abtastwerte h(-4)sL1 + h(-3)sL2 + h(-2)sL3 + h(-1)sL4 auf den ersten Eingang des Summierers 61 weitergeleitet. Dort werden sie zu den Abtastwerten h(0)sL5 addiert, die am zweiten Eingang des Summierers 61 anliegen, bevor sie als Eingangssignal an die zweite Verzögerungsschaltung 65 für N Abtastwerte angelegt werden.
- In jedem Zyklus der Abtastzeilen-Periodenzyklen 6 bis 8 der Verarbeitung werden nacheinander ältere zurückgeführte Abtastwerte, die als Ausgangssignal aus der zweiten Verzögerungsschaltung 65 für N Abtastwerte austreten, und die an den dritten Eingang des Summierers 61 angelegt werden, zu neuen Abtastwerten addiert, die an den zweiten Eingang des Summierers 61 angelegt werden. Man erhält h(-4)sL1 + h(-3)sL2 + h(-2)sL3 + h(-1)sL4 + h(0)sL5 + h(1)sL6 + h(2)sL7 + h(3)sL8. Das Ergebnis wird während des achten Abtastzeilen-Periodenzyklus der Verarbeitung an den Eingang der zweiten Verzögerungsschaltung 65 für N Abtastwerte angelegt. Treten diese Abtastwerte während des neunten Abtastzeilen-Periodenzyklus der Verarbeitung als Ausgangssignal aus der zweiten Verzögerungsschaltung 65 für N Abtastwerte aus, so befinden sich die Multiplexer 59 und 66 im Nicht-Nullzustand. Daher werden diese Abtastwerte an den ersten Eingang des Summierers 67 wei tergeleitet. Dort werden sie zu den Abtastwerten h(4)sL9 addiert, die am zweiten Eingang des Summierers 67 anliegen. Man erhält die Abtastwerte h(-4)sL1 + h(-3)sL2 + h(-2)sL3 + h(-1)sL4 + h(0)sL5 + h(1)sL6 + h(2)sL7 + h(3)sL8 + h(4)sL9 aus dem Ausgangssignal des Summierers 67, das eine erste gefilterte Ausgabepixelzeile darstellt.
- In ähnlicher Weise erhält man die Abtastwerte h(-4)sL5 + h(-3)sL6 + h(-2)sL7 + h(-1)sL8 + h(0)sL9 + h(1)sLl0 + h(2)sLl1 + h(3)sLl2 + h(4)sL13, die die zweite gefilterte Ausgabepixelzeile darstellen, usw.
- Der obigen Beschreibung kann man entnehmen, daß gefilterte Ausgabezeilen nur für jeden aufeinander folgenden vierten Abtastzeilen-Periodenzyklus der Verarbeitung auftreten, und zwar beginnend mit dem neunten Abtastzeilen-Periodenzyklus der Verarbeitung. Damit ist eine Unterabtastung mit dem Faktor vier zwischen den Eingabe- und Ausgabezeilen der Umsetzung der Oktavvorfilteranordnung mit 9 Abzweigungen nach Fig. 3 erfolgt.
- Die Einrichtung zum Ändern der Größe nach US-A-5,355,328 (Arbeiter et al.) erfordert, daß für die Bildverkleinerung oder Vergrößerung bei jeder Oktave unterschiedliche Filter angewendet werden. Wechselt man diese Filter an den Grenzen der Verkleinerung oder Vergrößerung, so ergibt sich möglicherweise ein unerwünschter sichtbarer Unterschied zwischen dem Bild, das mit einem Oktavvorfilter gefiltert wird, und dem Bild, das mit dem folgenden Oktavvorfilter gefiltert wird. Die Schaltung gemäß dieser Ausführungsform umschließt den Gebrauch von 5 Oktavfiltern, die alle die gleiche Grundform haben. Diese wird gelegentlich als das "Q" eines Filters oder als Dämpfungsfaktor bezeichnet ("Filter Theory and Design: Active and Passive" von Adel S. Sedra and Peter O. Bracket, Matrix Publishers 1978).
- Die in Fig. 3 umgesetzten Oktavfilter kann man wie beschrieben dadurch entwerfen, daß man zuerst das Halbbandfilter entwirft und die Impulsantwort des Halbbandfilters überabtastet, um die höheren Verkleinerungsfilter zu erhalten. Beispielsweise hat das in Tabelle 1 beschriebene Halbbandfilter mit 5 Abzweigungen eine dezimal dargestellte Frequenzantwort H(w) = h(0) + 2(h(1))cos(wt) + 2(h(2))cos(2wt) = 0,625 + 0,5cos(wt) - 0,125cos(2wt). Die Impulsantwort h(t) des Filters kann man mit irgendeinem Programm aus einer Anzahl käuflicher Softwarepakete berechnen. Die FIR-Filter-Abzweigungskoeffizienten des Filters entsprechen den Werten der Impulsantwort des Filters (d. h., h(0) = 0,625; h(1) = 0,25; h(2) = 0,0625). Berechnet man die Impulsantwort bei t = 0, 0,5, 1,0, 1,5 und 2,0 und verwendet man diese Werte als Filterkoeffizienten für ein Viertelband-FIR-Filter mit 9 Abzweigungen, so hat dieses Filter die gleiche Grundform wie das Halbbandfilter. Die Koeffizienten lauten 0,65, 0,525, 0,25, 0,025, -0,0625. Die Filterkoeffizienten müssen normiert werden, so daß die Verstärkung des Filters gleich 1 wird. Die normierten Koeffizienten lauten 0,304688, -0,246094, 0,117188, 0,011719, -0,023744. Dies sind die Filterkoeffizienten, die in Tabelle 1 in binärer Form angegeben sind. Das Umwandeln in Ganzzahl-Binärform erfordert eine bekannte Justierung für die Ganzzahlarithmetik. Für das Achtelbandfilter muß man die Impulsantwort bei t = 0, 0,25, 0,75, 1,0, 1,25, 1,5, 1,75 und 2,0 berechnen und normieren.
- Die ursprüngliche Einrichtung, die von Arbeiter und Bessler in US-A-5,355,328 beschrieben ist, ist als Filter mit 5 Abzweigungen implementiert. Die Filtervorrichtung der weiteren Ausführungsform nach Fig. 4 ist darin einzigartig, daß sie ein Filter mit 3 Abzweigungen ist. Wir glauben, daß ein Fachmann nicht erwartet, daß man ein Filter mit 3 Abzweigungen in einer hochwertigen Videoverarbeitungsarchitektur verwenden kann. Die Anwendung eines Halbbandfilters mit 3 Abzweigungen auf das überabgetastete Signal, das die Interpo liervorrichtung erzeugt, liefert jedoch ein wesentlich hochwertigeres Ausgangssignal, als man normalerweise erwarten würde. Die in Tabelle 2 enthaltenen Filterkoeffizienten beschreiben die Filter, die man mit dieser zweiten Filtervorrichtung verwendet. Die erste Oktave filtert man mit einem nichtrekursiven (FIR) Filter mit 3 Abzweigungen. Die zweite Oktave filtert man mit einem FIR-Filter mit 5 Abzweigungen. Die dritte Oktave filtert man mit einem FIR-Filter mit 9 Abzweigungen. Die vierte Oktave filtert man mit einem FIR-Filter mit 17 Abzweigungen. Die fünfte Oktave filtert man mit einem FIR-Filter mit 33 Abzweigungen. Alle höheren Oktaven filtert man mit einem FIR-Filter mit 33 Abzweigungen wie in WO-A-9508867 beschrieben. Tabelle 2
- Man beachte, daß die Filterkoeffizienten alle positiv sind. In diesem Sonderfall bleibt die Eingabe in die Multiplizierer, die zwischen dem Zweierkomplement und der normalen Verarbeitung auswählt, unbenutzt. Man fordert von den Multiplizierern nach wie vor, daß sie Zweierkomplementdaten und vorzeichenlose Filterkoeffizienten verarbeiten. Die Filterkoeffizienten werden genauso wie im Fall der vorzeichenlosen und vorzeichenbehafteten Filterkoeffizienten geschoben und vorzeichenerweitert.
- Die Filterkoeffizienten sind in senkrechter und waagrechter Richtung gleich. Man hat das in WO-A-9510883 beschriebene Verfahren dazu verwendet, den Gebrauch des Filters mit 33 Abzweigungen auf Größenänderungsfaktoren über die fünfte Oktave hinaus auszudehnen. Diese Technik hat man waagrecht und senkrecht verwendet.
- Es folgt nun eine ausführlichere Beschreibung der Schaltung nach Fig. 4.
- Die Eingabeleitung 71 führt Videosignal-Abtastwerte aus aufeinanderfolgenden Eingabezeilen L1, L2, ... L6, L7, ... usw., die die relativ langen Abtastzeilen-Abtastperioden in senkrechter Richtung eines Videobilds bilden. Damit stellen L1, L2, ... L7 und L8 acht aufeinanderfolgende, relativ lange waagrechte Abtastzeilen des Videobilds dar (wobei jede Abtastzeile eine große Anzahl Pixelabtastwerte umfaßt). Damit empfängt der Multiplizierer 77 beginnend mit der Eingabezeile L1 nacheinander als Multiplikant jede der aufeinanderfolgen den Eingabezeilen L1, L2, ... L6, L7, ... der Abtastwerte und empfängt als Multiplikator einen der abgeschnittenen 4-Bit- Filterkoeffizienten h(-1) oder h(0) aus dem ROM 75 (siehe die Tabelle 2 der abgeschnittenen Kernfunktionskoeffizienten). Beginnend mit der Eingabezeile L3 empfängt der Multiplizierer 79 nacheinander als Multiplikant jede der aufeinanderfolgenden Eingabezeilen L3, L5, L7, L9, ... der Abtastwerte und empfängt als Multiplikator den abgeschnittenen 4-Bit-Filterkoeffizienten h(1) aus dem ROM 78. Im allgemeinen enthält jede der aufeinanderfolgenden Eingabezeilen L1..., L9... N Abtastwerte. Dabei kann N jede beliebige positive Ganzzahl sein. Zur Erläuterung sei jedoch angenommen, daß jede dieser aufeinanderfolgenden Eingabezeilen die Abtastzeile eines Videobilds ist, die eine Abtastzeilenperiode einnimmt, und N ist die Anzahl der Pixelabtastwerte in einer solchen Abtastzeile.
- Wie oben mit Bezug auf Tabelle 2 besprochen wird das 12- Bit-Ausgangssignal des Multiplizierers 77 in der Schiebe- und Vorzeichenerweiterungsschaltung 81 geschoben und vorzeichenerweitert, um die Stellenanzahl der Zwischenprodukt-Ganzzahlen wiederherzustellen, die der Multiplizierer 77 ausgibt.
- Das Ausgangssignal der Schiebe- und Vorzeichenerweiterungsschaltung 81 wird als erstes Eingangssignal an den Summierer 85 angelegt. Das Ausgangssignal des Summierers 85 wird als Eingangssignal an die Verzögerungsschaltung 89 für N Abtastwerte angelegt. Das Ausgangssignal der Verzögerungsschaltung 89 für N Abtastwerte wird als erstes Eingangssignal an den Multiplexer 87 und als erstes Eingangssignal an den Multiplexer 91 angelegt. Als zweites Eingangssignal wird ein Nullsignal an beide Multiplexer 87 und 91 angelegt. Das Ausgangssignal des Multiplexers 87 wird als zweites Eingangssignal an den Summierer 85 angelegt. Das Ausgangssignal des Multiplexers 91 wird als erstes Eingangssignal in den Summierer 93 eingegeben. Das Ausgangssignal des Multiplizierers 79 wird in der Schaltung 83 wie beschrieben geschoben und vorzeichenerweitert. Das Ausgangssignal der Schiebe- und Vorzeichenerweiterungsschaltung 83 wird als zweites Eingangssignal an den Summierer 93 angelegt. Das Ausgangssignal des Summierers 93 umfaßt das unterabgetastete Oktavvorfilter-Ausgangssignal.
- Zusätzlich zur in Fig. 4 dargestellten Anordnung enthält jeder Multiplizierer und Summierer ein eigenes Abtastlatch (nicht dargestellt) an jedem seiner Eingänge und Ausgänge, wobei jedes Latch eine Verzögerung um einen Abtastwert im Datenfluß erzeugt. Zudem sind in der praktischen Umsetzung geeignete Timing- und Steuerschaltungen (nicht dargestellt) bereitgestellt, die den Datenfluß durch die besprochene Oktavvorfilteranordnung nach Fig. 4 steuern.
- Der Multiplexer 87 ist so eingestellt, daß das Ausgangssignal der Verzögerungsschaltung 89 für N Abtastwerte nur während der geraden Eingabezeilen-Abtastzeilen-Periodenzyklen der Verarbeitung zurückgeführt wird. Normalerweise werden in allen ungeraden Eingabezeilen-Abtastzeilen-Periodenzyklen der Verarbeitung Nullwerte zurückgeführt. (Grundsätzlich ist es nicht unbedingt erforderlich, daß sich der Multiplexer 87 während der ungeraden Eingabezeilen-Abtastzeilen-Periodenzyklen der Verarbeitung in seinem Nullwertzustand befindet, beispielsweise während des Anfangszyklus, in dem man von vorn herein weiß, daß keine Abtastwerte aus dem Ausgang der Verzögerungsschaltung 89 für N Abtastwerte austreten können.) Der Multiplexer 91 ist so eingestellt, daß das Ausgangssignal der Verzögerungsschaltungen 89 für N Abtastwerte jeweils nur während der ungeraden Eingabezeilen-Abtastzeilen-Periodenzyklen der Verarbeitung in ihm in die Eingangssignale des Summierers 93 umgesetzt wird. Während der geraden Eingabezeilen- Abtastzeilen-Periodenzyklen der Verarbeitung werden in ihm Nullwerte in das erste Eingangssignal des Summierers 93 umgesetzt.
- Für die folgende Beschreibung sind entsprechende Abtastwerte der jeweiligen Eingabezeilen L1, L2, L3... jeweils mit sL1, sL2, sL3... bezeichnet. Während des ersten Abtastzeilen-Periodenzyklus der Filterverarbeitung wird jeder der N Abtastwerte der Eingabezeile L1 zuerst mit dem Koeffizienten h(-1) multipliziert, um einen Abtastwert h(-1)sL1 bereitzustellen. Anschließend wird jeder dieser Abtastwerte in der Schaltung 81 geschoben und vorzeichenerweitert, damit die Stellenanzahl des Produktsignals wiederhergestellt wird. Das Produktsignal wird dann über den Summierer 85 als Eingangssignal an die Verzögerungsvorrichtung 89 für N Abtastwerte angelegt.
- Während des zweiten Abtastzeilen-Periodenzyklus der Verarbeitung befindet sich der Multiplexer 87 in seinem Nicht- Nullzustand, so daß die Abtastwerte h(-1)sL1, die nun als Ausgangssignale aus der Verzögerungsschaltung 89 für N Abtastwerte austreten, als zweites Eingangssignal auf den Summierer 85 zurückgeführt und zu den entsprechenden Abtastwerten h(0) sL2 addiert werden, die nun als erstes Eingangssignal an den Summierer 85 gelangen (d. h., das ROM 75 erzeugt den geeigneten abgeschnittenen 4-Bit-Kernfunktion-Gewichtungskoeffizienten, der im Multiplizierer 77 mit den N Abtastwerten der zweiten Eingabezeile L2 multipliziert und dann in der Schaltung 81 geschoben und vorzeichenerweitert wird). Daher hat während des zweiten Abtastzeilen-Periodenzyklus der Verarbeitung der Abtastwert einer jeden Abtastung, der als Eingangssignal an die Verzögerungsschaltung 89 für N Abtastwerte angelegt wird, die Gestalt h (-1)sL1 + h (0) sL2. Während des zweiten Abtastzeilen-Periodenzyklus der Verarbeitung befindet sich jedoch der Multiplexer 91 in seinem Nullzustand, so daß der Wert h(-1)sL1, den die Verzögerungsschaltung 89 ausgibt, nicht an den ersten Eingang des Summierers 93 angelegt wird.
- Während des dritten Abtastzeilen-Periodenzyklus der Verarbeitung befindet sich der Multiplexer 87 in seinem Nullzu stand, so daß die von der Verzögerungsschaltung 89 für N Abtastwerte ausgegebenen Abtastungen mit dem Wert h(-1)sL1 + h(0)sL2 nicht auf den Summierer 85 zurückgeführt werden. Der Multiplexer 91 befindet sich jedoch in seinem Nicht-Nullzustand, so daß die von der Verzögerungsschaltung 89 ausgegebenen Abtastungen mit dem Wert h(-1)sL1 + h(0)sL2 über den Multiplexer 91 an den ersten Eingang des Summierers 93 weitergegeben werden. Damit werden im dritten Abtastzeilen-Periodenzyklus der Verarbeitung die Abtastungen mit dem Wert h(-1)sL1 + h(0)sL2 + h(1)sL3 aus dem Filter ausgegeben (d. h., das ROM 78 erzeugt den geeignet abgeschnittenen 4-Bit- Kernfunktion-Gewichtungskoeffizienten, der im Multiplizierer 79 mit den N Abtastwerten der Eingabezeile L3 multipliziert und in der Schaltung 83 geschoben und vorzeichenerweitert wird).
- Während des vierten Abtastzeilen-Periodenzyklus der Verarbeitung erzeugt das ROM 75 den auf 4 Bit abgeschnittenen h(0)-Kernfunktion-Gewichtungskoeffizienten für die Multiplikation mit den N Abtastwerten der Eingabezeile L4 im Multiplizierer 77. Das aus dem Multiplizierer 77 ausgegebene Zwischenproduktsignal wird in der Schaltung 81 geschoben und vorzeichenerweitert und an den Summierer 85 angelegt, so daß das Ausgangssignal des Summierers 85 in die Verzögerungsschaltung 89 für N Abtastwerte eingegeben wird, da sich der Multiplexer 87 im Nicht-Nullzustand befindet.
- Während des fünften Abtastzeilen-Periodenzyklus der Verarbeitung befindet sich der Multiplexer 87 in seinem Nullzustand, so daß die Abtastwerte h(-1)sL3 + h(-0)sL4, die nun als Ausgangssignal der Verzögerungsschaltung 89 für N Abtastwerte auftreten, nicht als zweites Eingangssignal auf den Summierer 85 zurückgeführt werden. Nun befindet sich jedoch der Multiplexer 91 im Nicht-Nullzustand, so daß die Abtastwerte h (-1)sL3 + h (-0)sL4 durch den Multiplexer 91 auf den ersten Eingang des Summierers 93 weitergereicht werden. Zudem erzeugt das ROM 78 den auf 4 Bit abgeschnittenen h(1)-Kernfunktion-Gewichtungskoeffizienten, der im Multiplizierer 79 mit den N Abtastwerten der Eingabezeile L5 multipliziert wird. Das aus dem Multiplizierer 79 ausgegebene Zwischenproduktsignal wird in der Schaltung 83 geschoben und vorzeichenerweitert und an den Summierer 93 angelegt. Dadurch werden während des fünften Abtastzeilen-Periodenzyklus der Verarbeitung die Abtastwerte h(-1)sL3 + h(0)sL4 + h(1)sL5 aus dem Filter ausgegeben.
- Man beachte, daß der Status der Abtastwerte h(-1)sL3 + h(0)sL4 während des fünften Abtastzeilen-Periodenzyklus der Verarbeitung identisch mit dem Status der Abtastwerte h(-1)sL1 + h(0)sL2 während des dritten Abtastzeilen-Periodenzyklus der Verarbeitung ist. Damit entsprechen die sechsten und siebten Abtastzeilen-Periodenzyklen der Verarbeitung dem vierten bzw. fünften Abtastzeilen-Periodenzyklus der Verarbeitung.
- Damit wird die zweite gefilterte Ausgabezeile, die die Abtastwerte h(-1)sL3 + h(0)sL4 + h(1)sL5 enthält, im fünften Abtastzeilen-Periodenzyklus der Verarbeitung ermittelt. In ähnlicher Weise wird die dritte gefilterte Ausgabezeile, die die Abtastwerte h(-1)sL5 + h(0)sL6 + h(1)sL7 enthält, im siebten Abtastzeilen-Periodenzyklus der Verarbeitung ermittelt. Dagegen wird die vierte gefilterte Ausgabezeile, die die Abtastwerte h(-1)sL7 + h(0)sL8 + h(1)sL9 enthält, im neunten Abtastzeilen-Periodenzyklus der Verarbeitung ermittelt, usw.
- Der obigen Beschreibung kann man entnehmen, daß gefilterte Ausgabezeilen nur für jeden aufeinander folgenden ungeraden Abtastzeilen-Periodenzyklus der Verarbeitung auftreten, und zwar beginnend mit dem dritten Abtastzeilen-Periodenzyklus der Verarbeitung. Damit ist eine Unterabtastung mit dem Faktor zwei zwischen den Eingabe- und Ausgabezeilen der ersten Oktavvorfilteranordnung mit 3 Abzweigungen nach Fig. 4 erfolgt.
- Die Anordnung nach Fig. 4 kann man dazu verwenden, eine Anordnung mit 5, 9, 17 und 33 Abzweigungen umzusetzen, indem man die passenden abgeschnittenen Kernfunktion-Gewichtungskoeffizienten aus den ROMs 75 und 78 mit einer geeigneten zeitlichen Steuerung an die Multiplizierer 77 und 79 anlegt. Die abgeschnittenen Zwischenproduktsignale, die die Multiplizierer 77 und 79 ausgeben, werden in der beschriebenen Weise in den Schaltungen 81 und 83 geschoben und vorzeichenerweitert.
Claims (1)
1. Einrichtung zum Ändern der Größe eines Bilds, umfassend:
a) eine Interpolierfiltervorrichtung, die einen
Eingabepixelstrom empfängt, der eine vorbestimmte Abtastperiode P und
eine erste Abtastrate von 5 Pixeln/Zeile hat, und den Strom
der Eingabepixel mit einer vorbestimmten Interpolierrate
interpoliert und einen ersten abgeleiteten Pixelabtaststrom
erzeugt, der eine weitere Abtastperiode (M/(CL))P und eine
zweite Abtastrate von T Pixeln/Zeile aufweist, wobei L eine
erste positive Ganzzahl größer als eins ist, C eine positive
Ganzzahl und M kleiner als CL ist, und wobei entweder 2nM/CL
oder 2-nM/CL gleich dem Zeitschritt-Inkrement M/L und der
Betrag von n wenigstens gleich null ist;
b) eine Oktavfiltervorrichtung, die eine vorbestimmte Abtastrate
hat, die mit der Interpolierrate des Interpolierfilters
verknüpft ist, und den ersten abgeleiteten Pixelabtaststrom
empfängt und daraus einen gefilterten Ausgabepixelstrom erzeugt,
der eine Abtastrate von (M/L)P aufweist, wobei die
Oktavfiltervorrichtung eine Anzahl Filterkoeffizienten hat, und die
positiven Koeffizienten durch vorzeichenlose binäre
Ganzzahlen dargestellt werden und die negativen Koeffizienten durch
binäre Zweierkomplement-Ganzzahlen dargestellt werden, und
die Oktavfiltervorrichtung umfaßt:
i) einen Eingang (31, 33, 35; 71, 73), der einen ersten
abgeleiteten Pixelabtaststrom empfängt, von denen jedes
Pixel eine vorbestimmte Bitanzahl umfaßt;
ii) Vorrichtungen (37, 40, 43; 75, 78) zum Abschneiden oder
Runden von zumindest einer führenden "0" oder einer an
letzter Stelle stehenden "0" der positiven Koeffizienten
und von zumindest einer führenden "1" oder einer an
letzter Stelle stehenden "0" der negativen
Koeffizienten, so daß Stellen der Ganzzahlen entfernt werden;
iii) Vorrichtungen (57, 65; 89), die nacheinander den ersten
abgeleiteten Pixelabtaststrom verzögern und nacheinander ·
verzögerte Versionen des ersten abgeleiteten
Pixelabtaststroms erzeugen;
iv) Vorrichtungen (39, 41, 45; 77, 79), die den ersten
abgeleiteten Pixelabtaststrom mit entprechenden
abgeschnittenen Darstellungen entsprechender Koeffizienten
aus der Anzahl Filterkoeffizienten multiplizieren und
daraus eine Anzahl Zwischenprodukt-Ganzzahlen erzeugen;
v) Vorrichtungen (47, 49, 51 : 81, 83) zum Wiederherstellen
der Stellenanzahl der Zwischenprodukt-Ganzzahlen; und
vi) Vorrichtungen (53, 61, 67; 85, 93), die die
Zwischenprodukt-Ganzzahlen summieren und daraus den Strom
gefilterter Ausgabepixel erzeugen.
2. Einrichtung nach Anspruch 1, wobei die
Multipliziervorrichtung (39, 41, 45; 77, 79) zudem eine Anzahl digitaler
Multiplizierer umfaßt.
3. Einrichtung nach Anspruch 1 oder 2, wobei die Vorrichtung
(47, 49, 51; 81, 83) zum Wiederherstellen der Stellenanzahl
eine Vorrichtung zum Vorzeichen-Erweitern und Schieben der
Zwischenprodukt-Ganzzahlen nach rechts umfaßt.
4. Einrichtung nach Anspruch 1, 2 oder 3, wobei die Vorrichtung
(37, 40, 43; 75, 78) zum Abschneiden oder Runden einen
digitalen Speicher zum Speichern der Koeffizienten enthält, die
in abgeschnittener Form codiert sind.
5. Einrichtung nach Anspruch 4, wobei der digitale Speicher drei
abgeschnittene 6-Bit-Koeffizienten zum Implementieren eines
Unterabtast-Halbbandfilters mit fünf Abzweigungen wie folgt
speichert: h(0) = 101000; h(1), h(-1) = 010000 und h(2),
h(-2) = 111100, und wobei die Vorrichtung zum
Wiederherstellen der Stellenanzahl eine Vorrichtung zum
Vorzeichen-Erwei
tern und Schieben der Zwischenprodukt-Ganzzahlen um 1 Bit
nach rechts umfaßt.
6. Einrichtung nach Anspruch 4, wobei der digitale Speicher
einen ersten abgeschnittenen 6-Bit-Filterkoeffizienten und
weitere abgeschnittene 6-Bit-Filterkoeffizienten zum
Implementieren eines Unterabtast-Viertelbandfilters mit neun
Abzweigungen speichert, wobei der erste abgeschnittene
Filterkoeffizient h(0) = 100111 enthält, und die weiteren
abgeschnittenen Filterkoeffizienten umfassen: h(1), h(-1) -
111111; h(2), h(-2) = 011110; h(3), h(-3) = 000011 und h(4),
h(-4) = 111001, und wobei die Vorrichtung zum
Wiederherstellen der Stellenanzahl bei den Zwischenprodukt-Ganzzahlen
bezüglich einer ersten Zwischenprodukt-Ganzzahl eine
Vorrichtung zum Vorzeichen-Erweitern und Schieben der ersten
Zwischenprodukt-Ganzzahl um 2 Bit nach rechts umfaßt, und wobei
die Vorrichtung zum Wiederherstellen der Stellenanzahl bei
den zusätzlichen Zwischenprodukt-Ganzzahlen eine Vorrichtung
zum Vorzeichen-Erweitern und Schieben der zusätzlichen
Zwischenprodukt-Ganzzahlen um drei Bit nach rechts umfaßt.
7. Einrichtung nach Anspruch 4, wobei die Vorrichtung zum
Wiederherstellen der Stellenanzahl eine Vorrichtung zum
Vorzeichen-Erweitern und Schieben der Zwischenprodukt-Ganzzahlen um
drei Bit nach rechts umfaßt, und wobei die Koeffizienten in
abgeschnittener Form in dem digitalen Speicher codiert sind,
um ein Unterabtast-Achtelbandfilter mit 17 Abzweigungen wie
folgt zu erzeugen:
h(0) = 100110
h(1), h(-1) = 100101
h(2), h(-2) = 011111
h(3), h(-3) = 010111
h(4), h(-4) = 001111
h(5), h(-5) = 000111
h(6), h(-6) = 000001
h(7), h(-7) = 111110
h(8), h(-8) = 111101.
Einrichtung nach Anspruch 4, wobei die Vorrichtung zum
Wiederherstellen der Stellenanzahl eine Vorrichtung zum
Vorzeichen-Erweitern und Schieben der Zwischenprodukt-Ganzzahlen um
drei Bit nach rechts umfaßt, und wobei die Koeffizienten in
abgeschnittener Form in dem digitalen Speicher codiert sind,
um ein Unterabtast-Sechzehntelbandfilter mit 33 Abzweigungen
wie folgt zu erzeugen:
h(0) = 010010
h(1), h(-1) = 011000
h(2), h(-2) = 010001
h(3), h(-3) = 010000
h(4), h(-4) = 001111
h(5), h(-5) = 001101
h(6), h(-6) = 001011
h(7), h(-7) = 001001
h(8), h(-8) = 000111
h(9), h(-9) = 000101
h(10), h(-10) = 000011
h(11), h(-11) = 000010
h(12), h(-12) = 000000
h(13), h(-13) = 000000
h(14), h(-14) = 111111
h(15), h(-15) = 111111
h(16), h(-16) = 111111
Einrichtung nach Anspruch 4, wobei die Vorrichtung zum
Wiederherstellen der Stellenanzahl eine Vorrichtung zum
Vorzeichen-Erweitern und Schieben der Zwischenprodukt-Ganzzahlen um
drei Bit nach rechts umfaßt, und wobei die Koeffizienten in
abgeschnittener Form in dem digitalen Speicher codiert sind,
um ein Unterabtast-Zweiunddreissigstelbandfilter mit 65
Abzweigungen wie folgt zu erzeugen:
h(0) = 001010
h(1), h(-1) = 010000
h(2), h(-2) = 001001
h(3), h(-3) = 001001
h(4), h(-4) = 001000
h(5), h(-5) = 001000
h(6), h(-6) = 001000
h(7), h(-7) = 001000
h(8), h(-8) = 000111
h(9), h(-9) = 000111
h(10), h(-10) = 000110
h(11), h(-11) - 000110
h(12), h(-12) = 000101
h(13), h(-13) = 000101
h(14), h(-14) = 000100
h(15), h(-15) = 000100
h(16), h(-16) = 000011
h(17), h(-17) - 000011
h(18), h(-18) = 000010
h(19), h(-19) = 000010
h(20), h(-20) = 000001
h(21), h(-21) = 000001
h(22), h(-22) = 000001
h(23), h(-23) = 000000
h(24), h(-24) = 000000
h(25), h(-25) = 000000
h(26), h(-26) = 000000
h(27), h(-27) = 000000
h(28), h(-28) = 000000
h(29), h(-29) - 000000
h(30), h(-30) = 000000
h(31), h(-31) = 000000
h(32), h(-32) = 000000
10. Einrichtung nach Anspruch 4, wobei der digitale Speicher zwei
abgeschnittene 4-Bit-Koeffizienten zum Implementieren eines
Unterabtast-Halbbandfilters mit 3 Abzweigungen wie folgt
speichert: h(0) = 1000; h(1), h(-1) = 0100, und wobei die
Vorrichtung zum Wiederherstellen der Stellenanzahl eine
Vorrichtung zum Vorzeichen-Erweitern und Schieben der
Zwischenprvdukt-Ganzzahlen um 1 Bit nach rechts umfaßt.
11. Einrichtung nach Anspruch 4, wobei der digitale Speicher
einen ersten abgeschnittenen 4-Bit-Filterkoeffizienten und
weitere abgeschnittene 4-Bit-Filterkoeffizienten zum
Implementieren eines Unterabtast-Viertelbandfilters mit fünf
Abzweigungen speichert, wobei der erste abgeschnittene
Filterkoeffizient h(0) = 1001 enthält, und die weiteren
abgeschnittenen Filterkoeffizienten umfassen: h(1), h(-1) = 1110 und
h(2), h(-2) = 0111, und wobei die Vorrichtung zum
Wiederherstellen der Stellenanzahl bei den Zwischenprodukt-Ganzzahlen
bezüglich einer ersten Zwischenprodukt-Ganzzahl eine
Vorrichtung zum Vorzeichen-Erweitern und Schieben der ersten
Zwischenprodukt-Ganzzahl um 2 Bit nach rechts umfaßt, und wobei
die Vorrichtung zum Wiederherstellen der Stellenanzahl bei
den zusätzlichen Zwischenprodukt-Ganzzahlen eine Vorrichtung
zum Vorzeichen-Erweitern und Schieben der zusätzlichen
Zwischenprodukt-Ganzzahlen um drei Bit nach rechts umfaßt.
12. Einrichtung nach Anspruch 4, wobei die Vorrichtung zum
Wiederherstellen der Stellenanzahl eine Vorrichtung zum
Vorzeichen-Erweitern und Schieben der Zwischenprodukt-Ganzzahlen um
drei Bit nach rechts umfaßt, und wobei die Koeffizienten in
abgeschnittener Form in dem digitalen Speicher codiert sind,
um ein Unterabtast-Achtelbandfilter mit 9 Abzweigungen wie
folgt zu erzeugen:
h(0) = 1010
h(1), h(-1) = 1001
h(2), h(-2) = 0100
h(3), h(-3) = 0110
h(4), h(-4) = 0100
13. Einrichtung nach Anspruch 4, wobei die Vorrichtung zum
Wiederherstellen der Stellenanzahl eine Vorrichtung zum
Vorzeichen-Erweitern und Schieben der Zwischenprodukt-Ganzzahlen um
drei Bit nach rechts umfaßt, und wobei die Koeffizienten in
abgeschnittener Form in dem digitalen Speicher codiert sind,
um ein Unterabtast-Sechzehntelbandfilter mit 17 Abzweigungen
wie folgt zu erzeugen:
h(0) = 0110
h(1), h(-1) = 0101
h(2), h(-2) = 0100
h(3), h(-3) - 0100
h(4), h(-4) = 0100
h(5), h(-5) = 0100
h(6), h(-6) = 0011
h(7), h(-7) - 0011
h(8), h(-8) = 0010
4. Einrichtung nach Anspruch 4, wobei die Vorrichtung zum
Wiederherstellen der Stellenanzahl eine Vorrichtung zum
Vorzeichen-Erweitern und Schieben der Zwischenprodukt-Ganzzahlen um
drei Bit nach rechts umfaßt, und wobei die Koeffizienten in
abgeschnittener Form in dem digitalen Speicher codiert sind,
um ein Unterabtast-Sechzehntelbandfilter mit 33 Abzweigungen
wie folgt zu erzeugen:
h(0) = 0100
h(1), h(-1) = 0011
h(2), h(-2) = 0011
h(3), h(-3) = 0010
h(4), h(-4) = 0010
h(5), h(-5) = 0010
h(6), h(-6) = 0010
h(7), h(-7) = 0010
h(8), h(-8) = 0010
h(9), h(-9) = 0010
h(10), h(-10) = 0010
h(11), h(-11) = 0010
h(12), h(-12) = 0010
h(13), h(-13) = 0010
h(14), h(-14) = 0001
h(15), h(-15) = 0001
h(16), h(-16) = 0001
15. Verfahren zum Gebrauch einer Einrichtung gemäß irgendeinem
der vorhergehenden Ansprüche, geeignet zum Ändern der Größe
eines Bilds, wobei in dem Verfahren die
Interpolierfiltervorrichtung zum Ausrichten des Eingangspixelstroms und des
ersten abgeleiteten Abtastpixelstroms an den Bildgrenzen
verwendet wird.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/125,530 US5559905A (en) | 1993-09-22 | 1993-09-22 | Digital image resizing apparatus |
PCT/CA1994/000532 WO1995008814A1 (en) | 1993-09-22 | 1994-09-21 | Digital image resizing apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69419167D1 DE69419167D1 (de) | 1999-07-22 |
DE69419167T2 true DE69419167T2 (de) | 1999-10-14 |
Family
ID=22420140
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69419167T Expired - Lifetime DE69419167T2 (de) | 1993-09-22 | 1994-09-21 | Digitale vorrichtung zur änderung der grösse eines bildes und verwendungsmethode desgleichen |
Country Status (8)
Country | Link |
---|---|
US (1) | US5559905A (de) |
EP (1) | EP0723688B1 (de) |
JP (1) | JPH09507314A (de) |
KR (1) | KR100301543B1 (de) |
AT (1) | ATE181435T1 (de) |
AU (1) | AU7736994A (de) |
DE (1) | DE69419167T2 (de) |
WO (1) | WO1995008814A1 (de) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5835160A (en) * | 1995-09-13 | 1998-11-10 | Oak Technology, Inc. | Sampling rate conversion using digital differential analyzers |
KR100416370B1 (ko) * | 1995-11-08 | 2004-04-30 | 제너시스 마이크로칩 인코포레이티드 | 비디오필드들을순차주사비디오프레임들로디인터레이싱하기위한방법및장치 |
US6101293A (en) * | 1997-10-20 | 2000-08-08 | Moore U.S.A., Inc. | Digital special pantograph |
US6239842B1 (en) | 1998-12-18 | 2001-05-29 | Oplus Technologies Ltd. | Method of de-interlacing video signals using a mixed mode spatial and temporal approximation technique |
JP2000251090A (ja) * | 1999-03-01 | 2000-09-14 | Sony Computer Entertainment Inc | 描画装置及び該描画装置で被写界深度を表現する方法 |
US7890566B1 (en) * | 2000-02-18 | 2011-02-15 | Texas Instruments Incorporated | Microprocessor with rounding dot product instruction |
US6950115B2 (en) * | 2001-05-09 | 2005-09-27 | Clairvoyante, Inc. | Color flat panel display sub-pixel arrangements and layouts |
DE60218190T2 (de) * | 2001-05-17 | 2008-03-20 | Koninklijke Philips Electronics N.V. | Verfahren und vorrichtung zur ausführung einer affinen oder nicht affinen transformation |
US7142729B2 (en) * | 2001-09-10 | 2006-11-28 | Jaldi Semiconductor Corp. | System and method of scaling images using adaptive nearest neighbor |
US6993207B1 (en) * | 2001-10-05 | 2006-01-31 | Micron Technology, Inc. | Method and apparatus for electronic image processing |
US7714943B2 (en) * | 2002-06-12 | 2010-05-11 | Geo Semiconductor Inc. | Ultra-thin image projection system |
US20070165192A1 (en) * | 2006-01-13 | 2007-07-19 | Silicon Optix Inc. | Reduced field angle projection display system |
US7145936B2 (en) * | 2002-12-23 | 2006-12-05 | International Business Machines Corporation | Bandpass delta sigma truncator and method of truncating a multi-bit digital signal |
EP1588546A4 (de) * | 2003-01-08 | 2008-07-09 | Silicon Optix Inc | Bildprojektionssystem und -verfahren |
US20080285888A1 (en) * | 2007-05-15 | 2008-11-20 | Yang-Hung Shih | Image resizing device and parameter adjusting method thereof |
CN112886944B (zh) * | 2019-11-29 | 2024-09-10 | 西安诺瓦星云科技股份有限公司 | 滤波器系数生成方法及装置 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4551753A (en) * | 1981-12-17 | 1985-11-05 | Nippon Hoso Kyokai | Picture signal processing system including spatio-temporal filter |
JPS5951686A (ja) * | 1982-09-02 | 1984-03-26 | Hitachi Medical Corp | デイジタルフイルタ法及びデイジタルフイルタ |
US4674125A (en) * | 1983-06-27 | 1987-06-16 | Rca Corporation | Real-time hierarchal pyramid signal processing apparatus |
NL8501834A (nl) * | 1985-06-26 | 1987-01-16 | Philips Nv | Egalisatie-inrichting met verschuifbare bandfilters en een digitaal filter eventueel te gebruiken in de egalisatie-inrichting. |
GB2181318B (en) * | 1985-10-04 | 1989-12-28 | Sony Corp | Two-dimensional finite impulse response filters |
US4779217A (en) * | 1985-12-27 | 1988-10-18 | Kyocera Corporation | Octave multiple filter |
US4797942A (en) * | 1987-03-02 | 1989-01-10 | General Electric | Pyramid processor for building large-area, high-resolution image by parts |
EP0397807A4 (en) * | 1988-07-13 | 1992-08-12 | Analogic Corporation | Apparatus for simultaneously filtering and resampling digital data |
JPH04500419A (ja) * | 1989-06-16 | 1992-01-23 | イーストマン・コダック・カンパニー | ディジタル画像補間器 |
GB9012423D0 (en) * | 1990-06-04 | 1990-07-25 | Abekas Video Systems | Video image transformation |
JP2991485B2 (ja) * | 1990-11-29 | 1999-12-20 | 株式会社東芝 | 画像処理装置 |
JP2906791B2 (ja) * | 1990-12-21 | 1999-06-21 | ミノルタ株式会社 | 画像処理装置 |
EP0517912A1 (de) * | 1990-12-31 | 1992-12-16 | E.I. Du Pont De Nemours And Company | Verfahren zur änderung der grösse eines bildes, entwicklung eines filters dafür und abbildung des ausgabebildes auf das eingabebild |
US5355328A (en) * | 1991-09-27 | 1994-10-11 | Northshore Laboratories, Inc. | Resampling apparatus suitable for resizing a video image |
WO1994024632A1 (en) * | 1993-04-14 | 1994-10-27 | Northshore Laboratories, Inc. | Resampling apparatus suitable for resizing a video image |
-
1993
- 1993-09-22 US US08/125,530 patent/US5559905A/en not_active Expired - Lifetime
-
1994
- 1994-09-21 WO PCT/CA1994/000532 patent/WO1995008814A1/en active IP Right Grant
- 1994-09-21 JP JP7509469A patent/JPH09507314A/ja active Pending
- 1994-09-21 AU AU77369/94A patent/AU7736994A/en not_active Abandoned
- 1994-09-21 DE DE69419167T patent/DE69419167T2/de not_active Expired - Lifetime
- 1994-09-21 AT AT94928235T patent/ATE181435T1/de not_active IP Right Cessation
- 1994-09-21 KR KR1019960701509A patent/KR100301543B1/ko not_active IP Right Cessation
- 1994-09-21 EP EP94928235A patent/EP0723688B1/de not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5559905A (en) | 1996-09-24 |
EP0723688A1 (de) | 1996-07-31 |
KR100301543B1 (ko) | 2001-10-22 |
WO1995008814A1 (en) | 1995-03-30 |
ATE181435T1 (de) | 1999-07-15 |
EP0723688B1 (de) | 1999-06-16 |
AU7736994A (en) | 1995-04-10 |
DE69419167D1 (de) | 1999-07-22 |
JPH09507314A (ja) | 1997-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69504371T2 (de) | Digitales videoumwandlungsschaltsystem | |
DE69419167T2 (de) | Digitale vorrichtung zur änderung der grösse eines bildes und verwendungsmethode desgleichen | |
DE3486316T2 (de) | System und Verfahren zum Umformen und Filtern von Videobildern. | |
DE68927120T2 (de) | Interpolator und Verfahren zur Interpolierung von digitalen Signalmustern | |
DE69020724T2 (de) | Schneller interpolationsfilter für fernsehnormenumsetzung. | |
DE69406306T2 (de) | Verfahren zur bildskalierung und zum filtern mit diskreter cosinustransformation | |
DE69411470T2 (de) | Methode und Vorrichtung zur Verbesserung der Schärfe einer einem kontinuierlichem Zoom unterworfenen Bildfolge | |
DE3628349C2 (de) | ||
DE102009039428B4 (de) | Digitalfilter | |
DE4336331A1 (de) | Umwandlung der Abtastrate unter Verwendung von mehrphasigen Filtern mit Interpolation | |
DE3855437T2 (de) | Abtastfrequenzumsetzer zum Umsetzen einer niedrigen Abtastfrequenz in eine höhere Abtastfrequenz und Verfahren dafür | |
DE69329332T2 (de) | Fernsehbilderdekodierarchitektur zur Ausführung eines 40 ms-Prozessalgorithmus in HDTV | |
DE69422650T2 (de) | Als dreistufiges transversales Filter anwendbare digitale Filterschaltung | |
DE2125230B2 (de) | Verfahren und Schaltungsanordnung zur modifizierenden Verarbeitung digitaler Informationssignalfolgen | |
DE69027509T2 (de) | Kommunikationsschnittstelle mit Dezimierungsschaltkreis | |
DE69932673T2 (de) | Digitaler Signalsynthetisierer | |
DE69527482T2 (de) | Filterauswahlschaltung für ein digitales Wiederabtastsystem | |
DE69320218T2 (de) | Digitales Filter | |
DE69524827T2 (de) | Verbesserungen an Filtern | |
DE69418711T2 (de) | Verarbeitung von videosignalen | |
DE3413694A1 (de) | Verfahren und vorrichtung fuer eine 4-punkt-signalfolgefrequenzwandlung | |
DE69303183T2 (de) | Dezimationsfilter mit zwei in Reihe geschalteten Filtern | |
DE69403328T2 (de) | Verfahren und vorrichtung zum filtern eines digitalen zeitsignals und anwendung für echokorrektur in einem übertragungskanal | |
DE3751088T2 (de) | Signalverarbeitungseinrichtung. | |
DE4022387C2 (de) |
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 |