DE102015114651B4 - Bildskalierungstechniken - Google Patents

Bildskalierungstechniken Download PDF

Info

Publication number
DE102015114651B4
DE102015114651B4 DE102015114651.7A DE102015114651A DE102015114651B4 DE 102015114651 B4 DE102015114651 B4 DE 102015114651B4 DE 102015114651 A DE102015114651 A DE 102015114651A DE 102015114651 B4 DE102015114651 B4 DE 102015114651B4
Authority
DE
Germany
Prior art keywords
pixel data
blocks
image
color
directionally
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.)
Active
Application number
DE102015114651.7A
Other languages
English (en)
Other versions
DE102015114651A1 (de
Inventor
Walter Donovan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nvidia Corp
Original Assignee
Nvidia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nvidia Corp filed Critical Nvidia Corp
Publication of DE102015114651A1 publication Critical patent/DE102015114651A1/de
Application granted granted Critical
Publication of DE102015114651B4 publication Critical patent/DE102015114651B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4023Scaling of whole images or parts thereof, e.g. expanding or contracting based on decimating pixels or lines of pixels; based on inserting pixels or lines of pixels
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling 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)
  • Editing Of Facsimile Originals (AREA)

Abstract

Ein Verfahren mit:Empfangen (702) von Blöcken an Pixeldaten eines Bildes;Empfangen (704) eines Bildskalierungsfaktors;richtungsabhängiges Interpolieren (710) der Blöcke an Pixeldaten, wenn der Bildskalierungsfaktor größer ist als 1,0 und kleiner ist als 2,0;Abwärts-abtasten (714) der richtungsabhängig interpolierten Blöcke an Pixeldaten, wenn der Bildskalierungsfaktor größer ist als 1,0 und kleiner ist als 2,0;Farbverstärken (716) der abwärts-abgetasteten, richtungsabhängig interpolierten Blöcke an Pixeldaten, wenn der Bildskalierungsfaktor größer ist als 1,0 und kleiner ist als 2,0;Festlegen (718) der farbverstärkten, abwärts-abgetasteten, richtungsabhängig interpolierten Blöcke an Pixeldaten auf eine Leuchtstärke, wenn der Bildskalierungsfaktor größer ist als 1,0 und kleiner ist als 2,0; undAusgeben (756) der auf eine Leuchtstärke festgelegten, farbverstärkten, abwärts-abgetasteten, richtungsabhängig interpolierten Blöcke an Pixeldaten als ein skaliertes Bild, wenn der Bildskalierungsfaktor größer ist als 1,0 und kleiner ist als 2,0.

Description

  • HINTERGRUND DER ERFINDUNG
  • Rechensysteme, Anzeigen und andere ähnliche Elektronikgeräte haben wesentliche Beiträge zur Entwicklung der modernen Gesellschaft beigetragen und werden in einer Reihe von Anwendungen eingesetzt, um vorteilhafte Wirkungen zu erreichen. Zahlreiche Geräte, etwa Tisch-Personalcomputer (PC), tragbare PCs, Tablett-PCs, Netzbuch-Computer, intelligente Telefone, Dienstleister-Rechner bzw. Server, Fernsehgeräte und dergleichen haben erhöhte Produktivität und reduzierte Kosten bei der Kommunikation und Analyse von Daten in den meisten Gebieten der Unterhaltung, Erziehung, Geschäftswelt und Wissenschaft ermöglicht. Ein gemeinsamer Aspekt von Rechensystemen ist die Anzeige von Bildern und die Fähigkeit, darauf Bilder zu skalieren (beispielsweise vergrößern).
  • Es gibt zahlreiche Techniken zur Aufwärtsskalierung von Bildern auf elektronischen Einrichtungen. Jedoch findet sich im aktuellen Stand der Technik ein Mangel hinsichtlich der Geschwindigkeit der Techniken zur Skalierung der Bilder und/oder der resultierenden Qualität der skalierten Bilder. Daher gibt es ein ständiges Streben nach Bildskalierungstechniken, die eine Bildskalierung mit sehr guter Qualität und schnellerer Geschwindigkeit bieten. Die US 7236 191 B2 beschreibt ein Verfahren zur Bildverarbeitung, bei dem eine Interpolation zwischen 2 Farbkomponenten verwendet wird zur Erstellung eines neuen Bildes.
  • ÜBERBLICK ÜBER DIE ERFINDUNG
  • Die vorliegende Technik kann am besten verstanden werden, indem auf die folgende Beschreibung und die begleitenden Zeichnungen Bezug genommen wird, die verwendet werden, um Ausführungsformen der vorliegenden Technik zu veranschaulichen, die sich an Bildskalierungstechniken richten.
  • In einer Ausführungsform wird ein Verfahren gemäß Anspruch 1 zur Bildskalierung bereitgestellt mit richtungsabhängigem Interpolieren mehrerer Blöcke an Pixeldaten eines empfangenen Bildes. Die richtungsabhängigen interpolierten Blöcke an Pixeldaten werden farbverstärkt bzw. farb-geschärft. Die farbverstärkten richtungsabhängigen interpolierten Blöcke an Pixeldaten werden auf eine Leuchtstärke festgelegt, um ein skaliertes Bild zu erzeugen.
  • In einer weiteren Ausführungsform wird ein Verfahren zur Bildskalierung gemäß Anspruch 9 bereitgestellt mit richtungsabhängigem Interpolieren mehrerer Blöcke an Pixeldaten eines empfangenen Bildes. Die richtungsabhängigen interpolierten Blöcke an Pixeldaten werden farbverstärkt, um ein skaliertes Bild zu erzeugen.
  • Dieser Überblick wird bereitgestellt, um eine Auswahl von Konzepten in vereinfachter Form einzuführen, die nachfolgend in der detaillierten Beschreibung weitergehend beschrieben sind. Dieser Überblick beabsichtigt nicht, Schlüsselmerkmale oder wesentliche Merkmale des beanspruchten Gegenstands anzugeben, und es ist auch nicht beabsichtigt, dass der Überblick zur Beschränkung des Schutzbereichs des beanspruchten Gegenstands verwendet wird.
  • Figurenliste
  • Ausführungsformen der vorliegenden Technik sind beispielhaft und nicht einschränkend in den Figuren der begleitenden Zeichnungen dargestellt, in denen gleiche Bezugszeichen ähnliche Elemente bezeichnen, und in denen:
    • 1 ein Flussdiagramm eines Verfahrens zur Bildskalierung gemäß einer Ausführungsform der vorliegenden Technik zeigt.
    • 2A, 2B, 2C, 2D, 2E und 2F Ansichten von Pixelblöcken zeigen, die Aspekte einer richtungsabhängigen Interpolation gemäß Ausführungsformen der vorliegenden Technik darstellen.
    • 3A und 3B Ansichten von Pixelblöcken zeigen, die Aspekte einer richtungsabhängigen Interpolation gemäß Ausführungsformen der vorliegenden Technik darstellen.
    • 4A und 4B Ansichten zeigen, die Aspekte möglicher Interpolationsrichtungen gemäß Ausführungsformen der vorliegenden Technik darstellen.
    • 5A, 5B und 5C Ansichten von Pixelblöcken zeigen, die Aspekte einer richtungsabhängigen Interpolation gemäß Ausführungsformen der vorliegenden Technik darstellen.
    • 6 ein Flussdiagramm eines Verfahrens zur Bildskalierung gemäß einer weiteren Ausführungsform der vorliegenden Technik zeigt.
    • 7A, 7B, 7C und 7D ein Flussdiagramm eines Verfahrens zur Bildskalierung gemäß einer weiteren Ausführungsform der vorliegenden Technik zeigen.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Es sei nun detailliert auf die Ausführungsformen der vorliegenden Technik verwiesen, wovon Beispiele in den begleitenden Zeichnungen dargestellt sind. Obwohl die vorliegende Technik in Verbindung mit diesen Ausführungsformen beschrieben ist, ist zu beachten, dass sie nicht beabsichtigen, die Erfindung auf diese Ausführungsformen einzuschränken. Vielmehr beabsichtigt die Erfindung, Alternativen, Modifizierungen und Äquivalente abzudecken, die innerhalb des Schutzbereichs der Erfindung liegen, wie sie durch die angefügten Patentansprüche definiert ist. Des Weiteren sind in der folgenden detaillierten Beschreibung der vorliegenden Technik zahlreiche spezielle Details angegeben, um ein gründlicheres Verständnis der vorliegenden Technik zu ermöglichen. Jedoch ist zu beachten, dass die vorliegende Technik auch ohne diese speziellen Details praktiziert werden kann. In anderen Fällen sind gut bekannte Verfahren, Prozeduren, Komponenten und Schaltungen nicht detailliert beschrieben, um nicht in unnötiger Weise Aspekte der vorliegenden Technik zu verdunkeln.
  • Einige der folgenden Ausführungsformen der vorliegenden Technik sind anhand von Routinen, Modulen, Logikblöcken und anderen symbolischen Darstellungen von Operationen an Daten innerhalb einer oder mehrere elektronischer Einrichtungen präsentiert. Die Beschreibungen und Darstellungen sind diejenigen Mittel, die von dem Fachmann verwendet werden, um in höchst effizienter Weise seiner Arbeit anderen Fachleuten zu vermitteln. Eine Routine, ein Modul, ein Logikblock und/oder dergleichen ist hierin und auch allgemein als eine selbstkonsistente Abfolge von Prozessen oder Befehlen zu verstehen, die zu einem gewünschten Ergebnis führt. Die Prozesse sind solche, die physikalische Manipulationen von physikalischen Größen umfassen. Für gewöhnlich, ohne dass dies jedoch erforderlich ist, nehmen diese physikalischen Manipulationen die Form elektrischer oder magnetischer Signale an, die in einer elektronischen Einrichtung gespeichert, übertragen, verglichen oder anderweitig verarbeitet werden können. Aus Gründen der Bequemlichkeit im Hinblick auf die üblichen Verwendung werden diese Signale als Daten, Bits, Werte, Elemente, Symbole, Zeichen, Terme, Zahlen, Zeichenfolgen und/oder dergleichen mit Bezug zu Ausführungsformen der vorliegenden Technik bezeichnet.
  • Es sollte jedoch bedacht werden, dass alle diese Begriffe so zu verstehen sind, dass sie sich auf physikalische Manipulationen und Größen beziehen und lediglich bequeme Namen sind, die weiterhin im Hinblick auf Terme zu interpretieren sind, die üblicherweise in diesem Bereich verwendet werden. Sofern dies nicht anders aus der folgenden Diskussion zu entnehmen ist, ist zu beachten, dass in den Erläuterungen der vorliegenden Technik, Erläuterungen, die Begriffe verwenden, etwa „empfangen“ und/oder dergleichen, Aktionen und Prozesse einer elektronischen Einrichtung bezeichnen, etwa einer elektronischen Recheneinrichtung, die Daten manipuliert und transformiert. Die Daten sind als physikalische (beispielsweise elektronische) Größen innerhalb der Logikschaltungen, Register, Speicher und/oder dergleichen der elektronischen Einrichtung dargestellt und werden in andere Daten umgewandelt, die in ähnlicher Weise als physikalische Größen in der elektronischen Einrichtung repräsentiert sind.
  • In dieser Anmeldung soll die Verwendung einer disjunkten Verknüpfung auch die verbindende Verknüpfung umfassen. Die Verwendung eines bestimmten oder unbestimmten Artikels soll nicht eine Reihenfolge angeben. Insbesondere soll ein Verweis auf „das“ Objekt oder „ein“ Objekt auch eines von möglichen mehreren derartigen Objekten bezeichnen. Ferner ist zu beachten, dass die Begriffe und Terminologie, wie sie hierin verwendet sind, dem Zwecke der Beschreibung dienen und nicht als Einschränkung betrachtet werden sollen.
  • Gemäß 1 ist ein Verfahren zur Bildskalierung gemäß einer Ausführungsform der vorliegenden Technik gezeigt. Das Verfahren kann als von einer Recheneinrichtung ausführbare Befehle (beispielsweise Computerprogramm) implementiert werden, die in einem oder mehreren von einer Recheneinrichtung lesbaren Medien (beispielsweise Computerspeicher) gespeichert sind und von einer oder mehreren Recheneinrichtungen (beispielsweise Graphikverarbeitungseinheit) ausgeführt werden.
  • Das Verfahren beginnt bei 110 mit Empfang mehrerer Blöcke an Pixeldaten eines Bildes. Die Blöcke an Pixeldaten beinhalten eine gegebene Anzahl an Pixelwerten pro Block. In einer Implementierung beinhalten die Blöcke an Pixeldaten Werte eines 4x 4-Array an Pixel. Bei 120 wird eine richtungsabhängige Interpolation an jedem Block an Pixeldaten ausgeführt. Die Richtungsinterpolation umfasst in einer Implementierung das Anwenden eines richtungsabhängigen nicht-linearen Filters D(Bild, m), der um einen Faktor 2 aufwärts skaliert, auf den Block an Pixelwerten.
  • Für jeden ursprünglichen 4x 4-Block an Pixelwerten werden Werte aus dem 4x 4-Gitter interpoliert, wie in 2A und 2B gezeigt ist. Der gleiche Algorithmus wird auch angewendet, um Werte zu interpolieren, nachdem das Gitter um 45 Grad nach links gedreht ist, wie in 2C und 2D gezeigt ist. Der gleiche Algorithmus wird auch angewendet, um Werte zu interpolieren, nachdem das Gitter um 45 Grad nach rechts gedreht ist, wie in 2B und 2F gezeigt ist. Die Quadrate repräsentieren die ursprünglichen Pixelwerte, die Kreise repräsentieren interpolierte Werte auf dem ursprünglichen Gitter, das Dreieck repräsentiert den interpolierten Wert für das Gitter, das um 45 Grad nach links gedreht ist, uns das Achteck repräsentiert den interpolierten Wert für das Gitter, das um 45 Grad nach rechts gedreht ist. Wenn Daten von außerhalb des ursprünglichen Bildes benötigt werden, kann eine beliebige standardmäßige Textur-Funktion (beispielsweise, Klemmen, Spiegeln, Umschließen, Begrenzen, usw.) verwendet werden. Jedes ursprüngliche Pixel (beispielsweise Quadrat) erzeugt drei weitere Pixel (einen Kreis, ein Dreieck und ein Achteck).
  • Für jede Interpolation wird die Summe der absoluten Differenz der Pixel-Leuchtstärken von ursprünglichen Pixelwerten links und rechts neben der Diagonale gemäß den Metrikgleichungen 1 und 2 berechnet, wie dies in 3A und 3B dargestellt ist. M 45 = 45 °  pairs i , j | l u m i l u m j |
    Figure DE102015114651B4_0001
    M 135 = 135 °  pairs i , j | l u m i l u m j |
    Figure DE102015114651B4_0002
    Die Metriken bzw. Maßzahlen sind die Summe von sieben Absolutdifferenzen der Pixel-Leuchtstärken der ursprünglichen Pixelwerte, die benachbart zur Diagonalen liegen.
  • In einer Implementierung können die Metrik-Gleichungen 1 und 2 auch durch Faltung des Bildes mit den Kernen gemäß 3 und 4 berechnet werden, abs ( [ 1 0 0 1 ] )
    Figure DE102015114651B4_0003
    abs ( [ 0 1 1 0 ] )
    Figure DE102015114651B4_0004
    und durch Anwenden eines Schachtel- bzw. Würfel-Filters nach 5. [ 1 1 1 1 1 1 1 1 1 ]
    Figure DE102015114651B4_0005
    Der Schachtelfilter 5 wird verwendet, um die Antwort der Kerne 3 und 4 zu glätten.
  • Wenn beispielsweise ein 4x 4-Block an Pixelwerten durch [ 03 13 23 33 02 12 22 32 01 11 21 31 00 10 20 30 ]
    Figure DE102015114651B4_0006
    angegeben wird,
    kann die Faltung berechnet werden als 102 - 131 + 101 - 121 + 112 - 231 + 100 - 11| + |11 - 221 + |22 - 33| + |10 - 21| + |21 - 32| + |20 - 31| für die linken Diagonalen, und als |01 - 10| + |20 - 11| + |11 - 02| + |30 - 21| + |21 - 12| + |12 - 03| + |31 - 22| + |22 - 13| + |32 - 23|. Die Summe der Absolutdifferenzen kann größer gemacht werden als 4x4. Unterschiedliche Gewichtungen für jede Differenz, etwa [ 3 2 1 2 1 2 1 2 3 ]
    Figure DE102015114651B4_0007
    können anstelle des Schachtelfilters 5 verwendet werden.
  • Eine weitere Vorgehensweise besteht darin, die Metrik für das gesamte Bild (beispielsweise M45 und M135, berechnet für das gesamte Bild) zu berechnen, und anschließend einen Max-, Mittel- oder Min-Filter über jeweils ein 3×3-, 5×5-oder dergleichen Array an Pixelwerten anzuwenden und die ursprünglichen Werte durch das Ergebnis zu ersetzen. Es kann dann eine Kategorisierung und Auswahl der Interpolationsrichtung angewendet werden.
  • Wenn eine gegebene Metrik klein ist, ist das Bild in dieser entsprechenden Richtung isophotisch. Der gegebene Block an Pixel wird in der Richtung seiner dominierenden Isophote interpoliert. Wenn keine Richtung dominiert, wird ein standardmäßiger linearer Filter verwendet, um den gegebenen Block an Pixel richtungsabhängig zu interpolieren. Somit kann, wenn die zwei Metriken den Bereich [0,9] gegeben sind, der Graf aus 4A verwendet werden, um die Metrik in drei mögliche Interpolationsrichtungen 8, 9 und 10 einzustufen, F 45 :  f u ¨ r ( aM 45 + bM 135 + c < 0 )
    Figure DE102015114651B4_0008
    F 135 :  f u ¨ r ( bM 45 + a M 135 + c < 0 )
    Figure DE102015114651B4_0009
    Ansonsten :  F 4 × 4
    Figure DE102015114651B4_0010
    und wie dies entsprechend in 5A, 5B und 5C gezeigt ist. Die Interpolationsrichtung kann Lanczos-fensterunterteilte sinc-Gewichtungen [-199 - 1]/16 verwenden. Für das 4x4-Array kann die gleiche Gewichtung wie für den separaten Filter verwendet werden. Die Konstanten a, b und c können aus den Parametern tx und ty entsprechend den Gleichungen 11, 12 und 13 berechnet werden. a = ( 9 ty )
    Figure DE102015114651B4_0011
    b = tx
    Figure DE102015114651B4_0012
    c = txty
    Figure DE102015114651B4_0013
  • Die Parameter tx und ty, beide in [0,9], sind einstellbare Parameter. Vernünftige Werte sind tx = 8,1 und ty = 0,1.
  • In einer zweiten Implementierung können die Metrik-Gleichungen 1 und 2 auch berechnet werden, indem das Bild mit den Kernen entsprechend zu 3 und 4 gefaltet wird, und indem danach ein Mittelwertfilter 14 [ 0 1 1 1 1 1 1 1 0 ]
    Figure DE102015114651B4_0014
    auf die Ergebnisse angewendet wird.
  • Es gilt wiederum, wenn eine gegebene Metrik klein ist, dann ist das Bild in dieser entsprechenden Richtung isophotisch. Der gegebene Block an Pixel kann in der Richtung der dominierenden Isophote interpoliert werden. Wenn keine Richtung dominiert, kann ein standardmäßiger linearer Filter zur richtungsabhängigen Interpolation des gegebenen Blocks an Pixel verwendet werden. Die dominierende Richtung kann bestimmt werden, indem relative Größen der Metrik verglichen werden. Somit kann bei den zwei gegebene Metriken der Graf aus 4B verwendet werden, um die Metrik in drei mögliche Interpolationsrichtungen 15, 16 und 17 einzuteilen, F 45 :  f u ¨ r M 135 > mM 45
    Figure DE102015114651B4_0015
    F 135 :  f u ¨ r M 45 > mM 135
    Figure DE102015114651B4_0016
    Ansonsten :  F 4 × 4
    Figure DE102015114651B4_0017
    und wie dies auch in den 5A, 5B und 5C entsprechend dargestellt ist. Die Gewichtungen für die F45-und F135-Interpolation können sein 1 16 ,   9 16 ,   9 16 ,   1 16 .
    Figure DE102015114651B4_0018
    Für F4X4 können die gleichen Gewichtungen wie für die separaten horizontalen und vertikalen Gewichtungen verwendet werden. Andere Gewichtungen, die verwendbar sind, sind dem ungefähren Bereich 1 8 ,   5 8 ,   5 8 ,   1 8  bis  1 32 ,   17 32 ,   17 32 ,   1 32 .
    Figure DE102015114651B4_0019
  • Wenn YUV (Luminanz/Leuchtstärke + Chrominanz) Bilder bearbeitet werden, kann man den Maßstab des Y-Kanals gemäß dem zuvor beschriebenen Verfahren auswählen und kann eine beliebige geeignete lineare Skalierung für die UV-Kanäle verwenden. Im Allgemeinen kann dies vorgenommen werden, wenn dies aus Leistungsgründen erforderlich ist, da Detail hinsichtlich der Farbe verloren geht. D(I, m) für einen einzigen Kanal I ist gleich wie oben mit Ausnahme, dass der Kanalwert direkt als Leuchtstärke verwendet wird.
  • Bei 130 wird eine Farb-Verstärkung bzw. Farb-Schärfung an jedem Block aus richtungsabhängig interpolierten Pixelwerten ausgeführt. Der Verstärkungsfilter kann
    p' = p +2 (p -blur(p)) sein, wobei der blur-Filter bzw. Verschwommenheits-Filter in beliebiger Tiefpassfilter sein kann. Die Farb-Verstärkung umfasst in einer Implementierung die Anwendung eines nicht-linearen verstärkenden bzw. schärfenden Filters. In einer Implementierung kann der verstärkende Filter 18 [ 1 2 1 2 12 2 1 2 1 ] + [ 0 0 0 0 1 0 0 0 0 ]
    Figure DE102015114651B4_0020
    sein. In einer Implementierung wird der YPbPr-Farbraum verwendet. In einer Implementierung scheint der Verstärkungsfilter im Bereich 0,10 bis 0,16 am besten zu sein. Zu beachten ist, dass der Verstärkungsfilter als ein separater Filter berechnet werden kann, gefolgt von einer Multiplizier-Addition.
  • In einer zweiten Implementierung wird der Verstärkungsfilter p ' = p + s ( p blur N × N ( p ) )
    Figure DE102015114651B4_0021
    auf alle Kanäle des Pixels p angewendet, s kann variieren, wenn der Interpolationsschritt iterativ ausgeführt wird. Der blur-Filter bzw. Verschwommenheits-Filter wird auf die NxN-Nachbarschaft um p herum angewendet, wobei N ungerade ist. Ein brauchbarer Filter für die Anwendung ist 1 16 [ 1 2 1 2 4 2 1 2 1 ]
    Figure DE102015114651B4_0022
    aber es kann nahezu alles verwendet werden, was wie ein Tiefpassfilter wirkt. Es ist herausgefunden worden, dass m ∈ {~1,1 , ~1,9} und s ≈2,0 mit dem vorhergehenden Filter für Bilder gut funktionieren.
  • Bei 140 wird eine Leuchtstärkefestlegung an jedem Block aus farbverstärkten richtungsabhängig interpolierten Pixelwerten ausgeführt. In einer Implementierung kann die Leuchtstärke auf den Lautstärkebereich der ursprünglichen 3x3-Nachbarschaft festgelegt werden. In einer zweiten Implementierung
  • Bei 150 werden mehrere Blöcke an auf eine Leuchtstärke festgelegten (wenn möglich), farbverstärkten, richtungsabhängig interpolierten Pixelwerten als ein vergrößertes Bild ausgegeben. In einer Implementierung werden die mehreren Blöcke an auf eine Leuchtstärke festgelegten, farbverstärkten, richtungsabhängig interpolierten Werten auf eine Anzeige für eine visuelle Darstellung für einen Anwender ausgegeben. Beispielsweise können Ausführungsformen vorteilhaft eingesetzt werden, um Rück-Puffer zu vergrößern, um damit Leistung von GPUs während der Ausführung von Echtzeit-Spielen oder einer Video-Skalierung zu verbessern, die auf 4K oder größeren Anzeigen laufen. In einer weiteren Implementierung werden die mehreren Blöcke an auf eine Leuchtstärke festgelegten, farbverstärkten, richtungsabhängig interpolierten Werten in von einer Recheneinheit lesbaren Medien (beispielsweise Computerspeicher) gespeichert.
  • Es sei nun auf 6 verwiesen, in der ein Verfahren zur Bildskalierung gemäß einer weiteren Ausführungsform der vorliegenden Technik gezeigt ist. Das Verfahren beginnt mit dem Empfang mehrere Blöcke an Pixeldaten eines Bildes bei 610. Bei 620 wird eine richtungsabhängige Interpolation an jedem Block an Pixeldaten ausgeführt. Die Pixel-Blöcke können richtungsabhängig interpoliert werden, wie dies zuvor mit Bezug zu dem Prozess 120 beschrieben ist. Bei 630 wird eine Schärfung bzw. Verstärkung an jedem Block an richtungsabhängig interpolierten Pixelwerten ausgeführt. Eine lineare Verstärkung bzw. Schärfung kann ausgeführt werden, wie dies zuvor mit Bezug zu dem Prozess 130 beschrieben ist. Bei 640 wird ermittelt, ob eine vorbestimmte Skalierung erreicht ist. Wenn die vorbestimmte Skalierung nicht erreicht ist, kann der Prozess aus 620 und 630 iterativ wiederholt werden. Sobald die gewünschte Skalierung erreicht ist, werden die linear geschärften bzw. verstärkten, richtungsabhängig interpolierten Pixeldaten für die mehreren Blöcke an Pixeldaten als das skalierte Bild ausgegeben.
  • Das Verfahren zur Bildskalierung unter Verwendung einer richtungsabhängigen Interpolation und der Verstärkung ohne Leuchtstärkefestsetzung erzeugt vorteilhafterweise ein skaliertes Bild, das bei vierfacher (4x) und höherer Skalierung besser aussieht im Vergleich zu dem Fall, wenn eine Festlegung auf eine Leuchtstärke verwendet wird.
  • Andere Maßstäbe können mittels eines linearen Filterschritts erreicht werden. Beispielsweise kann eine bi-lineare Abwärtsskalierung für verbesserte Details eingesetzt werden, oder es kann eine tri-lineare Skalierung verwendet werden, wenn Kontinuität zwischen Vergrößerungen wichtig ist. Für einen Vergrößerungsvorgang von Z wird in der tri-linearen Interpolation log2(Z) = int.fac berechnet. Das Verfahren zur richtungsabhängigen Interpolation und Verstärkung ohne Festlegung auf eine Leuchtstärke wird verwendet, um zwei Bilder als Vergrößerungs-Bilder A = 2int und B = 2(int+1) zu erhalten, diese werden linear miteinander gemischt mittels A*(1-frac) + B*frac..
  • Es sei nun auf 7A - 7D verwiesen, in denen ein Verfahren zur Bildskalierung gemäß einer noch weiteren Ausführungsform der vorliegenden Technik gezeigt ist. Das Verfahren beginnt mit Empfangen mehrerer Blöcke an Pixeldaten eines Bildes bei 702. Bei 704 wird ein Bildskalierungsfaktor ebenfalls empfangen. In einer Implementierung sei Z = max (xscale, yscale) der Bildskalierungsfaktor.
  • Wenn der Bilder Skalierungsfaktor Z bei 706 kleiner als 1,0 ist, werden die mehreren Blöcke an Pixeldaten bei 708 abwärts-abgetastet. In einer Implementierung kann eine bi-lineare Abtastung angewendet werden. In einer weiteren Implementierung wird eine Gauß' sche-Abwärtsabtastung als ein 6x6-Filter mit dem Kern e x 2 / 2 σ 2
    Figure DE102015114651B4_0023
    angewendet
    Dabei ist σ 2 max ( 0.01,   σ adj 2 σ in 2 )
    Figure DE102015114651B4_0024
    wobei σ adj = σ out / Z downscale
    Figure DE102015114651B4_0025
    und σ out ,   σ in
    Figure DE102015114651B4_0026
    die gewünschte Ausgangsverschwommenheit und die abgeschätzte Eingangsverschwommenheit sind. Generell σ out = σ in = 0.5
    Figure DE102015114651B4_0027
    und 0.5 < Z downscale < 1.0
    Figure DE102015114651B4_0028
    Die abwärts abgetasteten mehreren Blöcke an Pixeldaten werden bei 756 als das skalierte Bild ausgegeben.
  • Wenn der Bildskalierungsfaktor Z größer als 1,0 und kleiner als 2,0 bei 710 ist, werden die mehreren Blöcke an Pixel bei 712 richtungsabhängig interpoliert. Die Pixel-Blöcke können richtungsabhängig interpoliert werden in der Weise, wie dies zuvor mit Bezug zu dem Prozess 120 beschrieben ist. Bei 714 werden die richtungsabhängig interpolierten Blöcke an Pixel abwärts-abgetastet. In einer Implementierung erfolgt die Abwärts-Abtastung in der zuvor mit Bezug zu dem Prozess 708 beschriebenen Weise. Bei 716 werden die abwärts-abgetasteten richtungsabhängig interpolierten Pixel-Blöcke in der Farbe verstärkt bzw. geschärft. Farb-Verstärkung kann ausgeführt werden, wie dies zuvor mit Bezug zu dem Prozess 130 beschrieben ist. Bei 718 werden die farbverstärkten, abwärts-abgetasteten, richtungsabhängig interpolierten Blöcke an Pixeldaten auf eine Leuchtstärke festgelegt. Die Festlegung auf eine Leuchtstärke kann ausgeführt werden, wie dies zuvor mit Bezug zu den Prozessen 140 beschrieben ist. Die in der Leuchtstärke festgelegten, farbverstärkten, abwärts-abgetasteten, richtungsabhängig interpolierten mehreren Blöcke an Pixeldaten werden bei 756 als das skalierte Bild ausgegeben.
  • Wenn der Bildskalierungsfaktor Z bei 720 gleich 2,0 ist, werden bei 722 die mehreren Blöcke an Pixel richtungsabhängig interpoliert. Wiederum können die Pixel-Blöcke richtungsabhängig interpoliert werden, wie dies zuvor mit Bezug zu dem Prozess 120 beschrieben ist. Bei 724 werden die richtungsabhängig interpolierten Pixel-Blöcke farbverstärkt. Wiederum kann die Farb-Verstärkung ausgeführt werden, wie dies zuvor mit Bezug zu dem Prozess 130 beschrieben ist. Bei 726 werden die farbverstärkten, richtungsabhängig interpolierten Blöcke an Pixeldaten auf eine Leuchtstärke festgelegt. Wiederum kann die Festlegung auf eine Leuchtstärke ausgeführt werden, wie dies zuvor mit Bezug zu den Prozessen 140 beschrieben ist. Die auf eine Leuchtstärke festgelegten, farbverstärkten, richtungsabhängig interpolierten mehreren Blöcke an Pixeldaten werden bei 756 als das skalierte Bild ausgegeben.
  • Wenn der Bildskalierungsfaktor Z bei 728 größer ist als 2,0, werden bei 730 die mehreren Blöcke an Pixel richtungsabhängig interpoliert. Wiederum können die Pixel-Blöcke richtungsabhängig interpoliert werden, wie dies zuvor mit Bezug zu dem Prozess 120 beschrieben ist. Bei 732 werden die richtungsabhängig interpolierten Pixel-Blöcke farbverstärkt. Wiederum kann die Farb-Verstärkung so ausgeführt werden, wie dies zuvor mit Bezug zu dem Prozess 130 beschrieben ist. Bei 734 werden die farbverstärkten, richtungsabhängig interpolierten Blöcke an Pixeldaten auf eine Leuchtstärke festgelegt. Wiederum kann eine Festlegung auf eine Leuchtstärke so ausgeführt werden, wie dies zuvor mit Bezug zu den Prozessen 140 beschrieben ist. Bei 736 wird ermittelt, ob die zwischenstufliche Bildskalierung, die gemäß den Prozessen 730-734 ausgeführt ist, innerhalb eines Faktors von 2,0 oder kleiner des Bildskalierungsfaktors liegt. Wenn eine zwischenstufliche Bildskalierung nicht innerhalb eines Faktors von 2,0 oder kleiner des Bildskalierungsfaktors liegt, dann werden die Prozesse 730-734 iterativ wiederholt, bis die zwischenstufliche Bildskalierung innerhalb eines Faktors von 2,0 oder kleiner des Bildskalierungsfaktors liegt.
  • Wenn die zwischenstufliche Bildskalierung größer als 1,0 und kleiner als 2,0 des Bildskalierungsfaktors bei 738 ist, wird der zwischenstufliche skalierte Block aus Pixel bei 740 richtungsabhängig interpoliert. Die Pixel-Blöcke können richtungsabhängig interpoliert werden, wie dies zuvor mit Bezug zu dem Prozess 120 beschrieben ist. Bei 742 werden die richtungsabhängig interpolierten Blöcke an Pixel abwärtsabgetastet. Die Abwärts-Abtastung kann ausgeführt werden, wie dies zuvor mit Bezug zu dem Prozess 708 beschrieben ist. Bei 744 werden die abwärts-abgetasteten, richtungsabhängig interpolierten Pixel-Blöcke farbverstärkt. Die Farb-Verstärkung kann ausgeführt werden, wie dies zuvor mit Bezug zu dem Prozess 130 beschrieben ist. Bei 746 werden die farbverstärkten, abwärts-abgetasteten, richtungsabhängig interpolierten Blöcke an Pixeldaten auf eine Leuchtstärke festgelegt. Die Festlegung auf eine Leuchtstärke kann ausgeführt werden, wie dies zuvor mit Bezug zu den Prozessen 140 beschrieben ist. Die auf eine Leuchtstärke festgelegten, farbverstärkten, abwärts-abgetasteten, richtungsabhängig interpolierten mehreren Blöcke an Pixeldaten werden bei 756 als das skalierte Bild ausgegeben.
  • Wenn die zwischenstufliche Bildskalierung gleich 2,0 des Bildskalierungsfaktors bei 748 ist, werden die zwischenstuflichen skalierten Blöcke an Pixel bei 750 richtungsabhängig interpoliert. Die Pixel-Blöcke können richtungsabhängig interpoliert werden, wie dies zuvor mit Bezug zu dem Prozess 120 beschrieben ist. Bei 752 werden die richtungsabhängig interpolierten Pixel-Blöcke farbverstärkt. Die Farb-Verstärkung kann ausgeführt werden, wie dies zuvor mit Bezug zu dem Prozess 130 beschrieben ist. Bei 754 werden die farbverstärkten, richtungsabhängig interpolierten Blöcke an Pixeldaten auf eine Leuchtstärke festgelegt. Die Festlegung auf eine Leuchtstärke kann ausgeführt werden, wie dies zuvor mit Bezug zu den Prozessen 140 beschrieben ist. Die auf eine Leuchtstärke festgelegten, farbverstärkten, richtungsabhängig interpolierten mehreren Blöcke an Pixeldaten werden bei 756 als das skalierte Bild ausgegeben.
  • Operationen in den zuvor beschriebenen Skalierungstechniken werden im linearen Farbraum ausgeführt. Das Koordinatensystem der zuvor beschriebenen Skalierungstechniken ist nicht ganz gleich wie bei linear-skalierten Bildern. Wenn daher mit YUV-Bildern gearbeitet wird, wobei die zuvor beschriebenen Verfahren den Y-Kanal skalieren und ein beliebiger geeigneter linearer Filter die UV-Kanäle skaliert, muss die inverse Abbildung in den linearen Filter zwei unterschiedliche Abbildungen für den Vergrößerungsfaktor Z = 2n-δ (wobei 0 ≤ δ < 1 und n eine Ganzzahl ist) ermöglichen, um sicherzustellen, dass die UV-Kanäle in korrekter Weise zu dem Y-Kanal ausgerichtet sind: u 0 = 2 n +   δ  zu ( nicht modifizierte Umkehrabbildung )
    Figure DE102015114651B4_0029
    u 0 = 2 n +   δ  u z 2 n 1 + 0,5 UV
    Figure DE102015114651B4_0030
    u 0 = 2 n +   δ  u z 2 n 2 + 0,25 UV 420
    Figure DE102015114651B4_0031
    wobei u0 die Abtastposition in dem ursprünglichen Bild ist, die der Abtastposition uZ in dem Ausgangsbild entspricht. Die gleiche Gleichung gilt für die v -Koordinate.
  • Ausführungsformen der vorliegenden Technik können vorteilhafterweise die Geschwindigkeit für die Skalierung von Bildern in einer vorgegebenen Bilderzeugungsqualität im Vergleich zu konventionellen Techniken erhöhen. Des Weiteren können durch verstärken der Farbe vor der Festlegung auf eine Leuchtstärke Ausführungsformen der vorliegenden Technik vorteilhaft kantenbezogene Bildfehler in dem vergrößerten Bild reduzieren. Ausführungsformen der vorliegenden Technik erreichen typischerweise eine Leistung im Bereich von Giga-Pixel pro Sekunde und bieten eine Qualität, die sichtbar besser ist im Vergleich zu einer rein linearen Skalierung in konventionellen Verarbeitungseinheiten. Ausführungsformen der vorliegenden Technik können vorteilhafterweise fortgesetzt interessierende Details auf einer beliebigen Stufe der Vergrößerung erzeugen.

Claims (12)

  1. Ein Verfahren mit: Empfangen (702) von Blöcken an Pixeldaten eines Bildes; Empfangen (704) eines Bildskalierungsfaktors; richtungsabhängiges Interpolieren (710) der Blöcke an Pixeldaten, wenn der Bildskalierungsfaktor größer ist als 1,0 und kleiner ist als 2,0; Abwärts-abtasten (714) der richtungsabhängig interpolierten Blöcke an Pixeldaten, wenn der Bildskalierungsfaktor größer ist als 1,0 und kleiner ist als 2,0; Farbverstärken (716) der abwärts-abgetasteten, richtungsabhängig interpolierten Blöcke an Pixeldaten, wenn der Bildskalierungsfaktor größer ist als 1,0 und kleiner ist als 2,0; Festlegen (718) der farbverstärkten, abwärts-abgetasteten, richtungsabhängig interpolierten Blöcke an Pixeldaten auf eine Leuchtstärke, wenn der Bildskalierungsfaktor größer ist als 1,0 und kleiner ist als 2,0; und Ausgeben (756) der auf eine Leuchtstärke festgelegten, farbverstärkten, abwärts-abgetasteten, richtungsabhängig interpolierten Blöcke an Pixeldaten als ein skaliertes Bild, wenn der Bildskalierungsfaktor größer ist als 1,0 und kleiner ist als 2,0.
  2. Das Verfahren nach Anspruch 1, wobei richtungsabhängiges Interpolieren (710) der mehreren Blöcke an Pixeldaten Anwenden eines richtungsabhängigen nicht-linearen Filters umfasst, der um einen Faktor zwei aufwärts skaliert, auf die Blöcke an Pixeldaten.
  3. Das Verfahren nach Anspruch 1, wobei richtungsabhängiges Interpolieren (710) der mehreren Blöcke an Pixeldaten die Summe von Metriken aus Absolutdifferenzen M 45 = 45 °  Paare i , j | l u m i l u m j |
    Figure DE102015114651B4_0032
    M 135 = 135 °  Paare i , j | l u m i l u m j |
    Figure DE102015114651B4_0033
    der Pixel-Leuchtstärke umfasst.
  4. Das Verfahren nach Anspruch 1, wobei Farbverstärken (716) der richtungsabhängig interpolierten Blöcke an Pixeldaten Anwenden eines nicht-linearen Verstärkungsfilters auf die richtungsabhängig interpolierten Blöcke an Pixeldaten umfasst.
  5. Das Verfahren nach Anspruch 1, wobei Farbverstärken (716) der richtungsabhängig interpolierten Blöcke an Pixeldaten Anwenden eines Tiefpassfilters umfasst.
  6. Das Verfahren nach Anspruch 1, wobei Festlegen (718)der farbverstärkten, richtungsabhängig interpolierten Blöcke an Pixeldaten auf eine Leuchtstärke Festlegen der farbverstärkten, richtungsabhängig interpolierten Blöcke an Pixeldaten auf den Leuchtstärkebereich der empfangenen mehreren Blöcke an Pixeldaten des Bildes umfasst.
  7. Das Verfahren nach Anspruch 1, das ferner umfasst: richtungsabhängiges Interpolieren (722) der Blöcke an Pixeldaten, wenn der Bildskalierungsfaktor gleich 2,0 ist; Farbverstärken (724) der richtungsabhängig interpolierten Blöcke an Pixeldaten, wenn der Bildskalierungsfaktor gleich 2,0 ist; Festlegen (724) der farbverstärkten, richtungsabhängig interpolierten Blöcke an Pixeldaten auf eine Leuchtstärke, wenn der Bildskalierungsfaktor gleich 2,0 ist; und Ausgeben der auf eine Leuchtstärke festgelegten, farbverstärkten, richtungsabhängig interpolierten Blöcke an Pixeldaten als ein skaliertes Bild, wenn der Bildskalierungsfaktor gleich 2,0 ist.
  8. Das Verfahren nach Anspruch 1, das ferner umfasst: richtungsabhängiges Interpolieren (730) der Blöcke an Pixeldaten, wenn der Bildskalierungsfaktor größer ist als 2,0; Farbverstärken (732) der richtungsabhängig interpolierten Blöcke an Pixeldaten, wenn der Bildskalierungsfaktor größer ist als 2,0; Festlegen (734) der farbverstärkten, richtungsabhängig interpolierten Blöcke an Pixeldaten auf eine Leuchtstärke, wenn der Bildskalierungsfaktor größer ist als 2,0, um Blöcke an Pixeldaten mit einer zwischenstuflichen Bildskalierung zu erzeugen; iteratives Ausführen der richtungsabhängigen Interpolation, der Farbverstärkung und der Festlegung auf eine Leuchtstärke, wenn die zwischenstufliche Skalierung nicht innerhalb eines Faktors von zwei oder kleiner des Bildskalierungsfaktors liegt; richtungsabhängiges Interpolieren (740) der Blöcke an Pixeldaten mit der zwischenstuflichen Bildskalierung, wenn der zwischenstufliche Bildskalierungsfaktor größer als 1,0 und kleiner als 2,0 des Bildskalierungsfaktors ist; Abwärts-abtasten (742) der richtungsabhängig interpolierten Blöcke an Pixeldaten mit der zwischenstuflichen Bildskalierung, wenn der Bildskalierungsfaktor größer ist als 1,0 und kleiner als 2,0 des Bildskalierungsfaktors ist; Farbverstärken (744) der abwärts-abgetasteten, richtungsabhängig interpolierten Blöcke an Pixeldaten mit der zwischenstuflichen Bildskalierung, wenn der Bildskalierungsfaktor größer ist als 1,0 und kleiner ist als 2,0 des Bildskalierungsfaktors; Festlegen (746) der farbverstärkten, abwärts-abgetasteten, richtungsabhängig interpolierten Blöcke an Pixeldaten auf eine Leuchtstärke mit der zwischenstuflichen Bildskalierung, wenn der Bildskalierungsfaktor größer ist als 1,0 und kleiner ist als 2,0 des Bildskalierungsfaktors; und Ausgeben der auf eine Leuchtstärke festgelegten, farbverstärkten, abwärts-abgetasteten, richtungsabhängig interpolierten Blöcke an Pixeldaten mit der zwischenstuflichen Bildskalierung als ein skaliertes Bild, wenn der Bildskalierungsfaktor größer ist als 1,0 und kleiner ist als 2,0 des Bildskalierungsfaktors; richtungsabhängiges Interpolieren der Blöcke an Pixeldaten mit der zwischenstuflichen Bildskalierung, wenn der Bildskalierungsfaktor gleich 2,0 des Bildskalierungsfaktors ist; Farbverstärken der richtungsabhängig interpolierten Blöcke an Pixeldaten mit der zwischenstuflichen Bilderskalierung, wenn der Bildskalierungsfaktor gleich 2,0 des Bildskalierungsfaktors ist; Festlegen der farbverstärkten, richtungsabhängig interpolierten Blöcke an Pixeldaten auf eine Leuchtstärke mit der zwischenstuflichen Bildskalierung, wenn der Bildskalierungsfaktor gleich 2,0 des Bildskalierungsfaktors ist; und Ausgeben der auf eine Leuchtstärke festgelegten, farbverstärkten, richtungsabhängig interpolierten Blöcke an Pixeldaten mit der zwischenstuflichen Bildskalierung als ein skaliertes Bild, wenn der Bildskalierungsfaktor gleich 2,0 des Bildskalierungsfaktors ist.
  9. Ein Verfahren mit: Empfangen mehrerer Blöcke an Pixeldaten eines Bildes; richtungsabhängiges Interpolieren der mehreren Blöcke an Pixeldaten, wobei richtungsabhängiges Interpolieren der mehreren Blöcke an Pixeldaten die Summe von Metriken aus Absolutdifferenzen M 45 = 45 °  Paare i , j | l u m i l u m j |
    Figure DE102015114651B4_0034
    M 135 = 135 °  Paare i , j | l u m i l u m j |
    Figure DE102015114651B4_0035
    der Pixel-Leuchtstärke für diagonal benachbarte Pixel für jeden Block umfasst; Farbverstärken der richtungsabhängig interpolierten Blöcke an Pixeldaten; iteratives Wiederholen der Kombination aus richtungsabhängiger Interpolation und Farbverstärkung, bis die vorbestimmte Skalierung erreicht ist; und Ausgeben der farbverstärkten, richtungsabhängig interpolierten Blöcke an Pixeldaten als ein skaliertes Bild, wenn die vorbestimmte Skalierung erreicht ist.
  10. Das Verfahren nach Anspruch 9, wobei richtungsabhängiges Interpolieren der mehreren Blöcke an Pixeldaten Anwenden eines richtungsabhängigen nicht-linearen Filters auf die Blöcke an Pixeldaten umfasst.
  11. Das Verfahren nach Anspruch 9, wobei Farbverstärken der richtungsabhängig interpolierten Blöcke an Pixeldaten Anwenden eines linearen Verstärkungsfilters auf die richtungsabhängig interpolierten Blöcke an Pixeldaten umfasst.
  12. Das Verfahren nach Anspruch 9, wobei Farbverstärken der richtungsabhängig interpolierten Blöcke an Pixeldaten Anwenden eines Tiefpassfilters umfasst.
DE102015114651.7A 2014-09-02 2015-09-02 Bildskalierungstechniken Active DE102015114651B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201462044548P 2014-09-02 2014-09-02
US62/044,548 2014-09-02

Publications (2)

Publication Number Publication Date
DE102015114651A1 DE102015114651A1 (de) 2016-03-10
DE102015114651B4 true DE102015114651B4 (de) 2021-07-22

Family

ID=55358631

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015114651.7A Active DE102015114651B4 (de) 2014-09-02 2015-09-02 Bildskalierungstechniken

Country Status (4)

Country Link
US (1) US9865035B2 (de)
CN (1) CN105389776B (de)
DE (1) DE102015114651B4 (de)
TW (1) TW201624414A (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9384410B2 (en) 2012-05-21 2016-07-05 Nvidia Corporation Method and system for image compression while encoding at least one extra bit
US9819969B2 (en) 2013-11-26 2017-11-14 Nvidia Corporation Generalization of methods and systems for image compression while encoding at least one extra bit
US10489967B2 (en) 2017-02-22 2019-11-26 Microsoft Technology Licensing, Llc Indexed value blending for use in image rendering
CN106875340A (zh) * 2017-04-05 2017-06-20 上海矽奥微电子有限公司 基于方向差值的图像缩放方法
US10477064B2 (en) 2017-08-21 2019-11-12 Gopro, Inc. Image stitching with electronic rolling shutter correction
CN109919847B (zh) * 2017-12-13 2023-03-14 彩优微电子(昆山)有限公司 改善放大图像品质的方法
US11941783B2 (en) * 2020-08-28 2024-03-26 Apple Inc. Scaler de-ringing in image processing circuitry
EP4730769A1 (de) * 2024-10-21 2026-04-22 InterDigital CE Patent Holdings, SAS Intraprädiktion mit unterabtastung eines prädiktionsgitters

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7236191B2 (en) 2003-04-30 2007-06-26 Nokia Corporation Method and system for image processing with pixel interpolation using second order gradients
US7876979B2 (en) 2004-08-12 2011-01-25 Samsung Electronics Co., Ltd. Resolution-converting apparatus and method
US8144977B2 (en) 2007-07-03 2012-03-27 Stmicroelectronics S.R.L. Method and relative device of color interpolation of an image acquired by a digital color sensor
EP2491528B1 (de) 2009-10-20 2016-08-31 Apple Inc. Temporäre filterungsverfahren für bildsignalverarbeitung

Family Cites Families (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE58907127D1 (de) 1989-08-22 1994-04-07 Itt Ind Gmbh Deutsche Fernsehempfänger mit positionsgesteuerter Fernbedienung.
GB9012326D0 (en) 1990-06-01 1990-07-18 Thomson Consumer Electronics Wide screen television
US5103490A (en) 1990-06-13 1992-04-07 National Computer Systems, Inc. Method and apparatus for storing and merging multiple optically scanned images
JP2759727B2 (ja) 1992-04-22 1998-05-28 日本ビクター株式会社 ディスプレイ装置
US6181822B1 (en) 1993-05-12 2001-01-30 The Duck Corporation Data compression apparatus and method
GB2278524B (en) 1993-05-28 1997-12-10 Nihon Unisys Ltd Method and apparatus for rendering visual images employing area calculation and blending of fractional pixel lists for anti-aliasing and transparency
JP3231142B2 (ja) 1993-06-18 2001-11-19 株式会社日立製作所 映像圧縮拡大回路及び装置
US5734744A (en) 1995-06-07 1998-03-31 Pixar Method and apparatus for compression and decompression of color data
US5790705A (en) 1996-09-13 1998-08-04 Apple Computer, Inc. Compression techniques for substantially lossless digital image data storage
JPH10108143A (ja) 1996-09-27 1998-04-24 Sony Corp 画像表示制御装置および方法
US5953691A (en) 1996-10-11 1999-09-14 Divicom, Inc. Processing system with graphics data prescaling
US6208350B1 (en) 1997-11-04 2001-03-27 Philips Electronics North America Corporation Methods and apparatus for processing DVD video
US6356588B1 (en) 1998-04-17 2002-03-12 Ayao Wada Method for digital compression of color images
US6738072B1 (en) 1998-11-09 2004-05-18 Broadcom Corporation Graphics display system with anti-flutter filtering and vertical scaling feature
JP4345937B2 (ja) 1998-11-10 2009-10-14 キヤノン株式会社 画像拡大処理回路
US20020145610A1 (en) 1999-07-16 2002-10-10 Steve Barilovits Video processing engine overlay filter scaler
US6518974B2 (en) 1999-07-16 2003-02-11 Intel Corporation Pixel engine
JP3478329B2 (ja) 1999-10-01 2003-12-15 セイコーエプソン株式会社 画像処理装置及び画像処理方法
US6674479B2 (en) 2000-01-07 2004-01-06 Intel Corporation Method and apparatus for implementing 4:2:0 to 4:2:2 and 4:2:2 to 4:2:0 color space conversion
US7039241B1 (en) 2000-08-11 2006-05-02 Ati Technologies, Inc. Method and apparatus for compression and decompression of color data
JP2002064760A (ja) 2000-08-23 2002-02-28 Olympus Optical Co Ltd 画像表示装置
US6825851B1 (en) 2000-08-23 2004-11-30 Nintendo Co., Ltd. Method and apparatus for environment-mapped bump-mapping in a graphics system
US7184059B1 (en) 2000-08-23 2007-02-27 Nintendo Co., Ltd. Graphics system with copy out conversions between embedded frame buffer and main memory
CA2344615A1 (en) 2000-09-08 2002-03-08 Jaldi Semiconductor Corp. A method and apparatus for motion adaptive deinterlacing
WO2002101534A1 (en) 2001-06-12 2002-12-19 Idelix Software Inc. Graphical user interface with zoom for detail-in-context presentations
US7307642B2 (en) 2001-06-28 2007-12-11 Ideaworks 3D Ltd. Graphics compression
US6828987B2 (en) 2001-08-07 2004-12-07 Ati Technologies, Inc. Method and apparatus for processing video and graphics data
JP2003189266A (ja) 2001-12-21 2003-07-04 Nec Microsystems Ltd 画像処理装置、テレビ受信機及び画像処理方法
US20030189581A1 (en) 2002-04-08 2003-10-09 Nasoff David G. Content based window filtering for simultaneous display of multiple high-quality video and graphics windows
KR100547812B1 (ko) 2002-06-24 2006-01-31 삼성전자주식회사 컬러 참조테이블을 사용하여 화소데이터의 컬러모델을변환하는 장치 및 방법
US7382489B2 (en) 2002-07-01 2008-06-03 Xerox Corporation Efficient interpolation technique using programmable node spacing
US7200263B2 (en) 2002-07-01 2007-04-03 Xerox Corporation Background suppression and color adjustment method
JP4065155B2 (ja) 2002-07-12 2008-03-19 オリンパス株式会社 画像処理装置および画像処理プログラム
US7308146B2 (en) 2002-09-30 2007-12-11 Canon Kabushiki Kaisha Digital video compression
US7385615B2 (en) 2002-10-21 2008-06-10 Microsoft Corporation System and method for scaling images to fit a screen on a mobile device according to a non-linear scale factor
US8111928B2 (en) 2003-02-13 2012-02-07 Ati Technologies Ulc Method and apparatus for compression of multi-sampled anti-aliasing color data
US7928994B2 (en) 2003-07-16 2011-04-19 Transpacific Image, Llc Graphics items that extend outside a background perimeter
US7158668B2 (en) 2003-08-01 2007-01-02 Microsoft Corporation Image processing using linear light values and other image processing improvements
WO2005024777A1 (ja) 2003-09-03 2005-03-17 Olympus Corporation 画像表示装置、画像表示プログラム、画像表示方法、画像表示プログラムを記録する記録媒体
CA2442603C (en) 2003-10-01 2016-11-22 Aryan Saed Digital composition of a mosaic image
US20040145595A1 (en) 2003-10-21 2004-07-29 Sony Corporation/Sony Electronics Inc. Method and apparatus for displaying an image on a display with a different aspect ration than the image
US6933954B2 (en) 2003-10-31 2005-08-23 Microsoft Corporation Aspect ratio conversion of video content
US7511714B1 (en) 2003-11-10 2009-03-31 Nvidia Corporation Video format conversion using 3D graphics pipeline of a GPU
JP4522199B2 (ja) 2003-11-27 2010-08-11 キヤノン株式会社 画像符号化装置及び画像処理装置及びそれらの制御方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
US20070195194A1 (en) 2003-12-17 2007-08-23 Koninklijke Philips Electronic, N.V. Image format conversion
JP5082184B2 (ja) 2004-05-19 2012-11-28 ソニー株式会社 画像データ処理装置、画像データ処理方法及び画像データ処理プログラム
KR100653090B1 (ko) 2004-07-13 2006-12-06 삼성전자주식회사 디스플레이 사이즈 조정 장치 및 그 방법
JP3858923B2 (ja) 2004-11-02 2006-12-20 船井電機株式会社 映像表示装置および映像表示装置の映像表示方法
EP1831823B1 (de) 2004-12-21 2011-03-09 Canon Kabushiki Kaisha Segmentierung eines digitalen bildes und herstellung einer kompakten repräsentation
US7668386B2 (en) 2005-03-25 2010-02-23 Microsoft Corporation Lossless compression algorithms for spatial data
US7400777B2 (en) 2005-05-25 2008-07-15 Microsoft Corporation Preprocessing for information pattern analysis
WO2007050817A2 (en) 2005-10-25 2007-05-03 Enuclia Semiconductor, Inc. Region or frame based aspect ratio scaling
JP4617239B2 (ja) 2005-10-27 2011-01-19 Okiセミコンダクタ株式会社 画像変換回路
KR100968452B1 (ko) 2005-12-12 2010-07-07 삼성전자주식회사 영상처리장치 및 그 제어방법
KR100816916B1 (ko) 2006-08-04 2008-03-27 엘지전자 주식회사 영상표시장치의 화면 디스플레이 방법 및 장치
US8442344B2 (en) * 2006-08-07 2013-05-14 Qualcomm Incorporated Adaptive spatial image filter for filtering image information
JP2008122800A (ja) 2006-11-14 2008-05-29 Sharp Corp 画像表示装置
AU2006246497B2 (en) 2006-11-30 2010-02-11 Canon Kabushiki Kaisha Method and apparatus for hybrid image compression
US20080158246A1 (en) 2007-01-03 2008-07-03 Tvia, Inc. Digital color management method and system
JP5161311B2 (ja) * 2007-09-19 2013-03-13 トムソン ライセンシング 画像をスケーリングするシステムおよび方法
AU2007249106B2 (en) 2007-12-18 2010-11-25 Canon Kabushiki Kaisha A lossless compressor for image data values
CN101197957A (zh) 2007-12-25 2008-06-11 上海广电集成电路有限公司 非线性图像缩放方法以及系统
JP5207732B2 (ja) 2007-12-28 2013-06-12 キヤノン株式会社 表示装置
WO2010038212A2 (en) 2008-10-01 2010-04-08 Nxp B.V. Embedded video compression for hybrid contents
US9218792B2 (en) 2008-12-11 2015-12-22 Nvidia Corporation Variable scaling of image data for aspect ratio conversion
JP5052569B2 (ja) 2009-06-25 2012-10-17 シャープ株式会社 画像圧縮装置、画像圧縮方法、画像伸張装置、画像伸張方法、画像形成装置、コンピュータプログラム及び記録媒体
TWI429274B (zh) 2009-07-10 2014-03-01 Silicon Integrated Sys Corp 具有縮放與清晰裝置之影像處理系統及其方法
US8724692B2 (en) 2010-01-08 2014-05-13 Nokia Corporation Apparatus, a method and a computer program for video coding
US8848801B2 (en) 2010-01-08 2014-09-30 Nokia Corporation Apparatus, a method and a computer program for video processing
US8854384B2 (en) 2010-04-06 2014-10-07 Broadcom Corporation Method and system for processing pixels utilizing scoreboarding
US8767828B2 (en) 2010-07-16 2014-07-01 Sharp Laboratories Of America, Inc. System for low resolution power reduction with compressed image
US8605167B2 (en) 2010-09-01 2013-12-10 Apple Inc. Flexible color space selection for auto-white balance processing
US10218988B2 (en) * 2011-02-23 2019-02-26 Nvidia Corporation Method and system for interpolating base and delta values of associated tiles in an image
GB2493428B (en) 2011-07-19 2013-07-10 Nvidia Corp Method and system for interpolating index values of associated tiles in an image
US20140009576A1 (en) 2012-07-05 2014-01-09 Alcatel-Lucent Usa Inc. Method and apparatus for compressing, encoding and streaming graphics
US10158858B2 (en) 2012-12-27 2018-12-18 Nvidia Corporation Method and system for index compression for fixed block size texture formats and for non-linear interpolation of index values along an edge in a tile
US9082180B2 (en) 2012-12-28 2015-07-14 Nvidia Corporation System, method, and computer program product for implementing a spatially varying unsharp mask noise reduction filter

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7236191B2 (en) 2003-04-30 2007-06-26 Nokia Corporation Method and system for image processing with pixel interpolation using second order gradients
US7876979B2 (en) 2004-08-12 2011-01-25 Samsung Electronics Co., Ltd. Resolution-converting apparatus and method
US8144977B2 (en) 2007-07-03 2012-03-27 Stmicroelectronics S.R.L. Method and relative device of color interpolation of an image acquired by a digital color sensor
EP2491528B1 (de) 2009-10-20 2016-08-31 Apple Inc. Temporäre filterungsverfahren für bildsignalverarbeitung

Also Published As

Publication number Publication date
US9865035B2 (en) 2018-01-09
US20160063676A1 (en) 2016-03-03
CN105389776A (zh) 2016-03-09
DE102015114651A1 (de) 2016-03-10
TW201624414A (zh) 2016-07-01
CN105389776B (zh) 2019-05-03

Similar Documents

Publication Publication Date Title
DE102015114651B4 (de) Bildskalierungstechniken
DE602005004694T2 (de) Verfahren und Vorrichtung für lokal adaptive Bildverarbeitungsfilter
DE102014015352B4 (de) Dynamikkompression
DE602004006306T2 (de) Vorrichtung und Verfahren zur Erzeugung einer Kartografie herausstechender Merkmale in einem Bild
DE60132278T2 (de) Rauschverminderungsverfahren unter Verwendung von Farbinformationen, einer Vorrichtung und eines Programms zur Digital-Bildverarbeitung
DE102020125207A1 (de) Unbeaufsichtigtes training von neuronalem netz zur bildkompression mit hohem dynamikumfang
DE69406306T2 (de) Verfahren zur bildskalierung und zum filtern mit diskreter cosinustransformation
DE102019008221A1 (de) Interaktives Bildmattieren unter Verwendung neuronaler Netze
DE102020131265A1 (de) Segmentieren von video-rahmen unter verwendung eines neuronalen netzes mit verringerter auflösung und von masken aus vorhergehenden rahmen
DE69517855T2 (de) Verfahren zur Erzeugung einer Schwellenmatrix
EP2050023B1 (de) Verfahren zum analysieren und/oder testen zumindest einer benutzeroberfläche, datenverarbeitungseinrichtung und computerprogrammprodukt
DE69729603T2 (de) Bildverarbeitungsgerät und -verfahren
DE112019003587T5 (de) Lernvorrichtung, Betriebsprogramm von Lernvorrichtung und Betriebsverfahren von Lernvorrichtung
DE102007019057A1 (de) Vorrichtung und Verfahren zum Bestimmen eines Kanten-Histogramms, Vorrichtung und Verfahren zum Ablegen eines Bildes in einer Bilddatenbank, Vorrichtung und Verfahren zum Auffinden von zwei ähnlichen Bildern und Computerprogramm
EP2052550A2 (de) Bildverarbeitungsvorrichtung für farb-bilddaten und verfahren zur bildverarbeitung von farb-bilddaten
DE102017102952A1 (de) Eine Vorrichtung zum Erzeugen eines dreidimensionalen Farbbildes und ein Verfahren zum Produzieren eines dreidimensionalen Farbbildes
DE102020133244A1 (de) Kantenbewusste Aufwärtsskalierung für verbesserte Bildschirminhaltsqualität
DE112015003626T5 (de) System und verfahren zum erhöhen der bittiefe von bildern
DE112024000304T5 (de) Erzeugung von hochauflösenden bildern
DE112018002432T5 (de) Verfahren und Vorrichtung zum Reduzieren von Artefakten in einem projektionsbasierten Rahmen
DE69938473T2 (de) Verfahren zum umgekehrten Halbtonzittern niedriger Komplexität und Speicherung
DE102018008064A1 (de) Herunterskalieren von Bildern mit Pixelsätzen, die durch eine für blaues Rauschen gegebene Abtastung ausgewählt werden
DE112017007815T5 (de) Bildverarbeitungsvorrichtung, Bildvergrbeitungsverfahren und Bildverarbeitungsprogramm
DE102014010598A1 (de) Bildverarbeitungssystem
DE112020006088T5 (de) Computerimplementiertes verfahren zum umwandeln eines eingangsbildes in ein ausgangsbild basierend auf einem referenzbild

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: KRAUS & WEISERT PATENTANWAELTE PARTGMBB, DE

R082 Change of representative

Representative=s name: KRAUS & WEISERT PATENTANWAELTE PARTGMBB, DE

R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final