DE69822545T2 - Bildverbesserung unter Benutzung einer Flächeninterpolation - Google Patents

Bildverbesserung unter Benutzung einer Flächeninterpolation Download PDF

Info

Publication number
DE69822545T2
DE69822545T2 DE69822545T DE69822545T DE69822545T2 DE 69822545 T2 DE69822545 T2 DE 69822545T2 DE 69822545 T DE69822545 T DE 69822545T DE 69822545 T DE69822545 T DE 69822545T DE 69822545 T2 DE69822545 T2 DE 69822545T2
Authority
DE
Germany
Prior art keywords
data
pixels
resolution
coordinate
filters
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 - Fee Related
Application number
DE69822545T
Other languages
English (en)
Other versions
DE69822545D1 (de
Inventor
Brian Atkins
Charles A. Bouman
Jan P. Allebach
Jay S. Gondek
Morgan T. Schramm
Frank W. Sliz
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Application granted granted Critical
Publication of DE69822545D1 publication Critical patent/DE69822545D1/de
Publication of DE69822545T2 publication Critical patent/DE69822545T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4007Interpolation-based scaling, e.g. bilinear interpolation

Description

  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich allgemein auf Computerprozesse zum Interpolieren von Eingangsdaten, die sich auf Datenstrukturen beziehen, die funktionelle und strukturelle Aspekte von physikalischen Objekten und Aktivitäten darstellen. Insbesondere bezieht sich die vorliegende Erfindung auf ein rechnergestütztes Verfahren zum Verbessern der Datenauflösung. Eine spezifische Implementierung der vorliegenden Erfindung ist für ein Verfahren für Graphikbildverarbeitungsdatenanalyse und Auflösungssyntheseverbesserungen beschrieben.
  • 2. Beschreibung des Stands der Technik
  • Für viele Computerprozeßanwendungen ist es notwendig, Eingangsdaten zu interpolieren, die Ausgangsdaten mit niedriger Auflösung einer Quellvorrichtung umfassen, um annehmbare, verwendbare oder verbesserte Ergebnisse zu erhalten.
  • Repräsentative Daten stellen häufig einen Eingangsdatensatz mit niedriger Auflösung dar, der eine schlechte Wiederholung der ursprünglichen Quelle ist. Die Daten stellen etwas viel geringeres als eine lebensechte Aufbereitung dar. Viele Quellendatentypen können von der Datenauflösungsverbesserung profitieren: Computerbilddaten, digitale oder analoge Videodaten, geographische Daten, die auf einem regelmäßigen Gitter gemessen werden, Vektorfelddaten, Sprachsynthesesignaldaten, und dergleichen.
  • Bezüglich spezifischerer Beispiele auf dem Gebiet der Bildverarbeitung – wie z. B. digitales Abtasten, Punktmatrixdrucken, Digitalkamera-zu-Videoanzeigeumwandlung, WEBTVTM und andere Internetanbieterdaten, JPEG-Computerbildstandards, CDROM, Magnetresonanzbilderzeugung, Zwischenbildinterpolation für analoges Video und dergleichen – liefert die Quelle der Bilderzeugungsdaten häufig Graphikbilddaten (einschließlich bitabgebildeter alphanumerischer Textbilder), die eine relativ niedrige Auflösung aufweisen. Der Begriff „Graphik", wie er hierin verwendet wird, soll allgemein für alle Formen der Bilderzeugung gelten. Daher können Ausgabeaufbereitungen, die direkt von den Quellendaten gemacht werden, von geringer Qualität sein.
  • Darüber hinaus werden Quellenbilder – wie z. B. JPEG-Photographien, Internet- und WEBTV-Dateien – häufig unter Verwendung von Komprimierungsalgorithmen mit relativ hohem Datenverlust komprimiert, um Speicherspeicherungsanforderungen für die Anbieter zu reduzieren. Dekomprimierungsalgorithmen, die angelegt werden, wenn die Daten von dem Speicher wiedergewonnen werden, interpolieren im wesentlichen die reduzierten Daten unter Verwendung einfacher linearer Interpolationstechniken, denen die Präzision fehlt, die notwendig ist, um das ursprüngliche Bild originalgetreu wiederzugeben.
  • Beim Farbdrucken, wie z. B. mit einer Laser- oder Tintenstrahlpunktmatrixdruckkopievorrichtung, kann es sogar einfach eine Benutzervorliebe sein, einen Druck mit einer höheren Auflösung zu erzeugen als die Quelle liefert, um ein schärferes, weniger körniges, glatteres texturiertes Bild zu liefern, um einen insgesamt qualitativ hochwertigeren künstlerischen Druck zu präsentieren.
  • Ein weiteres Beispiel des Bedarfs für Auflösungsverbesserung ist während der Verwendung einer Bildvideoanzeige, wo ein Bild betrachtet wird, aber das Bild gern vergrößern würde zum Abschneiden vor dem Drucken oder lediglich um ei ne spezielle Einzelheit in dem Originalbild genauer zu betrachten.
  • Somit gibt es einen fortlaufenden Bedarf an Verfahren zum Interpolieren vieler Niedrigauflösungsdatentypen zu einer höheren Auflösung.
  • Die Bildverarbeitung ist eine relativ gut entwickelte Wissenschaft des Modifizierens und Analysierens von Bildern, Graphikentwürfen und dergleichen. Siehe beispielsweise Introduction to Image Processing Algorithms, von Benjamin M. Dawson, Byte Magazine, März 1987, S. 169–186. Eine Vielzahl unterschiedlicher Lösungsansätze für Bildinterpolation wurden vorgeschlagen und verwendet. Bekannte Colorimetrieaufbauten und Verfahren für mehrdimensionale Farbraumdateninterpolation sind in der Literatur beschrieben, wie z. B. Principles of Color Technology, von Billmeyer und Saltzman, John Wiley & Sons, Inc., NY, publishers, copr. 1981 (2. Ausg.); Color Science: Concepts an d Methods, Quantitative Data and Formula, von Wyszecki und Stiles, John Wiley & Sons, Inc., NY, publishers, copr. 1982 (2. Ausg.); und Fundamentals of Interactive Computer Graphics, Foley und Van Dam, Addison-Wesley Publishing Company.
  • B-Spline-Interpolatoren, wie z. B. Bildbildelement („Pixel") Wiederholungs- und Bilinear-Interpolation, sind in der Technik gut bekannt. Das Hauptkonzept von B-Spline-Interpolation ist das Spezifizieren einer Interpolationsfunktion, die sich dem Originalbild durch Abtasten über einen Bereich der Quellenbilddaten annähert. Die Interpolationsfunktion ist auf einem fortlaufend bewerteten Parameter definiert und kann an beliebigen Punkten ausgewertet werden. Die resultierenden Werte umfassen die interpolierten Bildpixel. Eine wichtige Anforderung ist, daß die Interpolationsfunktion durch die bekannten Funktionswerte von den abgetasteten Daten verlaufen muß. Die Ordnung in der B-Spline-Interpolation – zweite Ordnung, dritte Ordnung, usw. – bezieht sich auf die maximale Anzahl von fortlaufenden Ableitungen, die die Interpolationsfunktion haben muß. B-Spline-Bildinterpolationsergebnisse höherer Ordnung sehen tendenziell glatter und kontinuierlicher aus. Sobald die Interpolationsfunktion erhalten wurde, sind noch mehr Berechnungen erforderlich, um die gewünschten Ausgangsabtastwerte wiederzugewinnen. Somit ist der Hauptnachteil, daß komplexe und somit aufwendige Berechnungslogik und Datenverarbeitungszeit erforderlich ist.
  • Bei der Pixelwiederholung ist die Interpolationsfunktion gebietsweise konstant. Dies bedeutet, daß jedes Ausgangspixel einfach den Wert des nächsten Eingangspixels annimmt. Die Pixelwiederholung neigt dazu, Sperr- (Stufenschrittkantenaufbereitungen) oder Aliasing-Artefakte (unerwünschte störende Markierungen) zu erzeugen.
  • Bei der bilinearen Interpolation ist die Interpolationsfunktion gebietsweise linear; dieselbe kann erhalten werden durch Verbinden der bekannten Datenabtastwerte mit geraden Linien. Dies bedeutet, daß jedes Ausgangspixel als eine lineare Kombination von bis zu vier Eingangspixeln berechnet werden kann. Als ein einfacher Mittelwertbildungsalgorithmus erzeugt die bilineare Interpolation Ergebnisse, die unscharf sein können.
  • Sowohl Pixelwiederholung als auch bilineare Interpolation arbeiten zufriedenstellend zum Interpolieren glatter Texturen. Andererseits neigen diese Lösungsansätze mit einem Linearfilter dazu, Bilddaten über Hochkontrastgrenzen, wie Kanten und schnelle Kontraständerungszonen, zu mitteln, was ein blockiges oder unscharfes gedrucktes Ergebnis bewirkt. Somit sind diese Techniken bezüglich Kanten- und Einzelheitenwiederholung nicht besonders effektiv.
  • Kantenverbesserung und das Glätten nicht-linearer Algorithmen sind ebenfalls bekannt, insbesondere beim Drucken von alphanumerischem Text. Der Gedanke dabei ist es, Kanten (scharfe tonale Übergänge, z. B. zwischen einem Auge und dem umgebenden Augenlid) in den Quellendaten zu finden und dieselben beide fortlaufend, daß es nicht so erscheint, als wären Schritte vorhanden, und bei der Zielauflösung scharf aufzubereiten, ohne die Werte der Pixel zu verwischen, die auf unterschiedlichen Seiten der Kante liegen. Beispielsweise offenbart das US-Patent Nr. 5,394,485 (Lowe u. a., der gemeinsamen Anmelderin der vorliegenden Erfindung übertragen) ein Method and Apparatus for Smoothed Scaling of Facsimile Images. Das US-Patent Nr. 5,270,728 (Lund u. a., der gemeinsamen Anmelderin der vorliegenden Erfindung übertragen) lehrt eine Pixelausdünnungsmethodik in Raster Imaging Device Speed-Resolution Product Multiplying Method and Resulting Pixel Image Data Structure. Das US-Patent Nr. 5,446,804 (Allebach u. a., der gemeinsamen Anmelderin der vorliegenden Erfindung übertragen) offenbart ein Verfahren zum Magnifying Digital Image[s] Using Edge Mapping, wobei zum Vergrößern des Bildes eine Kantenabbildung für bestimmte Bildgrenzenbedingungen erzeugt wird, wobei ein oder mehrere zusätzliche Pixel in Positionen zwischen den ursprünglichen Pixeln erzeugt werden und die Abstände zwischen den Pixeln ausgedehnt werden, so daß die Auflösung der Positionen der Pixel gleich wird wie die ursprünglichen Pixel.
  • Im Gegensatz zur Pixelwiederholung und bilinearen Interpolationen kann es sein, daß Kantenverbesserungs- und Glättungsalgorithmen nicht sehr effektiv sind bezüglich der Verbesserung von glatten Texturen und Übergangszonen.
  • Bezüglich weiterem relevanten Stand der Technik offenbart das Dokument US-A-5,387,985 ein weiteres Verfahren zum Umwandeln der Auflösung von Bittabellenbildern. Das Verfahren umfaßt die Erzeugung von Schablonen in einem statistisch basierten Lernprozeß, Speichern der Schablonen in Nachschlagetabellen und Adressieren derselben zum Verbessern eines jeweiligen Zielpixels des Eingangsbildes. Die Schablonen können als morphologische Filter angesehen werden; dieselben werden in einem „Übereinstimmungs- und Ersetzungs-Prozeß" an das Eingangsbild angelegt.
  • Die WO-A-96/16380 liefert eine Reihe von unterschiedlichen Filtern, von denen der geeignetste für die Auflösungsverbesserung eines Eingangsbildes gewählt wird, gemäß dem gewünschten Druckformat, der Art des Ausgabemediums und Benutzervorlieben. Das Filter wird für das gesamte Bild ausgewählt, d. h. nicht für einzelne Pixel.
  • Es gibt einen Bedarf an einer Datenauflösungsverbesserungsmethodik, die bei Daten angewendet werden kann, die Datenstrukturen darstellen, die funktionale und strukturelle Aspekte von physikalischen Objekten oder Aktivitäten darstellen, wobei Teilsätze der Daten von dem gesamten Datensatz extrahiert und interpoliert werden können.
  • Bei der Anwendung der vorliegenden Erfindung für Bilddatenverarbeitung bleibt ein spezieller Bedarf an einem Verfahren zum Verbessern von Niedrigauflösungsdaten, das die visuelle Qualität des gesamten Quellbildes über das gesamte Inhaltsspektrum verbessert. Das Verfahren zum Verbessern der Auflösung sollte sowohl für Graphikbilder als auch alphanumerischen Text effektiv sein.
  • Datenfiltern, wie es bei der vorliegenden Erfindung verwendet wird, ist in der Technik gut bekannt. Texte, wie z. B. Fundamentals of Digital Image Processing, von Anil Jain (copr. 19_, Prentice Hall publishers) besprechen solche Techniken. Insbesondere für die Drucktechnologie wird die Verwendung von Datenfiltern in dem US-Patent Nr. 5,313,287 beschrieben (Barton u. a., der Anmelderin der vorliegenden Erfindung übertragen).
  • Zusammenfassung der Erfindung
  • In ihren Grundaspekten liefert die vorliegende Erfindung ein Verfahren zum Verbessern eines Eingangsdatensatzes, der ein zusammenhängendes Konstrukt darstellt, das als Teilsät ze von Datenkoordinaten ausgedrückt werden kann, die einzelne Elemente des Satzes darstellen, um die Auflösung des Konstrukts zu einem Ausgangsdatensatz zu verbessern. Das Verfahren umfaßt die folgenden Schritte: Auswählen eines ersten Datenkoordinatenteilsatzes des Konstrukts, das verbessert werden soll, Bestimmen eines Satzes von zweiten Datenkoordinatenteilsätzen, wobei jeder der zweiten Datenkoordinatenteilsätze in einer vorbestimmten nahen Beziehung zu dem ersten Datenkoordinatenteilsatz ist; Charakterisieren des Satzes von zweiten Datenkoordinatenteilsätzen durch einen ersten Vektor, der einen Wert darstellt, der sich auf zumindest einen Konstruktcharakterisierungsfaktor des zusammenhängenden Konstruktes bezieht; Bereitstellen einer Datenbank, wobei die Datenbank Gruppen von Datenfiltern für den zumindest einen Konstruktcharakterisierungsfaktor aufweist, wobei jede der Gruppen von Datenfiltern einen zweiten Vektor aufweist, der zumindest eine Konstruktcharakterisierungsfaktordatenfiltergruppe identifiziert, die direkt mit dem zumindest einen Konstruktcharakterisierungsfaktor verwandt ist, so daß das Filtern des ersten Datenkoordinatenteilsatzes durch eine zweite, durch einen Vektor identifizierte Gruppe von Datenfiltern die Auflösung des ersten Datenkoordinatenteilsatzes verbessert; Vergleichen des ersten Vektors mit dem zweiten Vektor; Auswählen von zumindest einer der Gruppen von Datenfiltern auf der Basis einer vorbestimmten Beziehung des ersten Vektors zu dem zweiten Vektor; Filtern der zweiten Datenkoordinatenteilsätze mit einer ausgewählten Gruppe von Datenfiltern von dem Schritt des Auswählens; Ausgeben eines dritten Teilsatzes von Datenkoordinaten, die aus einer Mehrzahl von gefilterten zweiten Datenkoordinatenteilsätzen besteht; Einsetzen des dritten Teilsatzes für den ersten Datenkoordinatenteilsatz in dem Konstrukt; und Wiederholen jedes Schrittes des Prozesses für jeden ersten Datenkoordinatenteilsatz in dem Konstrukt.
  • Die vorliegende Erfindung liefert auch ein Verfahren zum Verbessern eines Graphikbildes durch rechnergestütztes Ver bessern von Eingangsdaten, die ein Graphikbild darstellen, um die Auflösung zu erhöhen und auflösungsverbesserte Ausgangsdaten zu liefern, wobei die Eingangsdaten und die Ausgangsdaten Pixel des Graphikbildes darstellen. Das Verfahren umfaßt hauptsächlich folgende Schritte: Auswählen eines Zielpixels, das verbessert werden soll; Auswählen eines Satzes von Pixeln, die das Zielpixel umschreiben; Charakterisieren des Satzes von Pixeln durch einen ersten Schlüssel, der einen Wert darstellt, der sich auf zumindest einen visuellen Wahrnehmungsfaktor von Graphikbildern bezieht; Liefern einer Datenbank mit einer Mehrzahl von Datenfiltern für den zumindest einen visuellen Wahrnehmungsfaktor, wobei jedes individuelle Filter der Datenbank einen zweiten Schlüssel aufweist, der einen Wert darstellt, der sich auf den zumindest einen visuellen Wahrnehmungsfaktor bezieht; Vergleichen des ersten Schlüssels mit dem zweiten Schlüssel; Auswählen zumindest eines Datenfilters von der Datenbank auf der Basis des Vergleichsschritts und einer vorbestimmten Beziehung des ersten Schlüssels zu dem zweiten Schlüssel; Filtern des Satzes von Pixeln, die das Zielpixel umschreiben, mit dem ausgewählten Filter; Erhöhen der Auflösung des Zielpixels durch Einsetzen einer Mehrzahl von Pixeln für dasselbe, auf der Basis des Schritts des Filterns des Satzes von Pixeln; und Ausgeben der Mehrzahl von Pixeln.
  • Bei einem weiteren Grundaspekt der vorliegenden Erfindung ist ein rechnergestütztes Verfahren für Auflösungsverbesserung von Tristimulus-Farbraumeingangsdaten vorgesehen, wie es in Anspruch 16 spezifiziert ist.
  • Ein weiterer Grundaspekt der vorliegenden Erfindung ist in eine Computerspeichervorrichtung eingebaut, die für die Verwendung mit einer Druckkopievorrichtung angepaßt ist. Die Vorrichtung weist ein Programm für Analyse und Auflösungsverbesserung von Eingangsdaten auf, wobei das Programm die Schritte umfaßt, die in Anspruch 18 spezifiziert sind.
  • Noch ein weiterer Grundaspekt der vorliegenden Erfindung ist ein System zum Erzeugen von Graphikbildern, einschließlich aufbereiteten alphanumerischen Textbildern, wie es in Anspruch 9 spezifiziert ist.
  • Es ist ein Vorteil der vorliegenden Erfindung, daß dieselbe eine Datenauflösungsverbesserungsmethodik liefert, die auf Daten anwendbar ist, die Datenstrukturen darstellen, die funktionelle und strukturelle Aspekte von physikalischen Objekten oder Aktivitäten darstellen, wobei Teilsätze der Daten von dem gesamten Datensatz extrahiert und interpoliert werden können.
  • Es ist ein Vorteil der vorliegenden Erfindung, daß dieselbe ein Verfahren zum Verbessern von Niedrigauflösungsbilderzeugungsdaten liefert, das die visuelle Qualität des gesamten Quellenbilds über das gesamte Inhaltsspektrum verbessert.
  • Es ist ein Vorteil der vorliegenden Erfindung, daß dieselbe mit relativ moderaten rechentechnischen Anforderungen Hochauflösungsdateninterpolationen von Niedrigauflösungsquellendaten erzeugt.
  • Es ist ein Vorteil der vorliegenden Erfindung, daß dieselbe eine Eingangsbildauflösungssynthese liefert, die ein Ausgangsbild mit verbesserter visueller Qualität, Schärfe und tonaler Glätte liefert.
  • Es ist ein weiterer Vorteil der vorliegenden Erfindung, daß dieselbe auf Niedrigauflösungsbilddaten anwendbar ist, die von im wesentlichen jeder Quelle erzeugt wurden.
  • Es ist ein weiterer Vorteil der vorliegenden Erfindung, daß die Anwendung bei Bilderzeugungsdaten, die aufbereiteten Text umfassen, wie z. B. Text, der in die Bittabellen von Logos oder Icons aufbereitet wird, wesentlich verbessert wird, wodurch die Lesbarkeit verbessert wird.
  • Es ist noch ein weiterer Vorteil der vorliegenden Erfindung, daß dieselbe entweder eine volle Interpolation oder eine beschleunigte Interpolation verwenden kann, um die Datenverarbeitungszeit zu reduzieren.
  • Es ist noch ein weiterer Vorteil der vorliegenden Erfindung, daß bei einer Verwendung für Rasterdatendrucken die Berechnungszeit während der Rasterdatenübertragung durchgeführt werden kann, und somit keine Echtzeitdruckerverzögerungen hinzugefügt werden.
  • Es ist noch ein weiterer Vorteil der vorliegenden Erfindung, daß dieselbe eine Geschlossene-Form-Berechnung ist, was aufwendige iterative Optimierungsberechnungskosten eliminiert.
  • Es ist noch ein weiterer Vorteil der vorliegenden Erfindung, daß dieselbe eine nicht-lineare Operation erzeugt, durch die selektive Kombination von linearen Operatoren oder Datenfiltern.
  • Es ist noch ein weiterer Vorteil der vorliegenden Erfindung, daß dieselbe unter Verwendung unabhängiger paralleler Operationen bei jedem Pixel eines Bildes implementiert werden kann.
  • Es ist noch ein weiterer Vorteil der vorliegenden Erfindung, daß dieselbe Dateninterpolationstechniken mit Datenwiederherstellungs-, Bildglättungs- und Schärfungsergebnissen kombiniert, so daß die Ausgangsauflösung ≥ einmal die Eingangsauflösung ist.
  • Es ist ein Vorteil der vorliegenden Erfindung, daß dieselbe als ein Computerprogramm implementiert werden kann.
  • Andere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden bei der Betrachtung der folgenden Beschrei bung und der beiliegenden Zeichnung offensichtlich werden, wobei gleiche Bezugszeichen gleiche Merkmale in den Zeichnungen darstellen.
  • Kurze Beschreibung der Zeichnungen
  • Die Datei dieses Patents enthält zumindest eine Zeichnung, die in Farbe ausgeführt ist. Kopien dieses Patents mit Farbzeichnungen werden auf Anfrage und auf Zahlung der notwendigen Gebühr durch das Patent- und Markenamt bereitgestellt.
  • 1A ist ein schematisches Blockdiagramm eines Systems, das die vorliegende Erfindung implementiert.
  • 1 ist ein Flußdiagramm einer beispielhaften Computeranwendung gemäß der vorliegenden Erfindung.
  • 2A2D kombiniert sind ein Flußdiagramm, das die Auflösungssynthesemethodik der vorliegenden Erfindung detailliert darstellt, wie sie in den Prozeß von 1 eingebaut ist.
  • 3 ist ein schematisches Blockdiagramm eines Pixelauflösungssyntheseinterpolators gemäß der vorliegenden Erfindung, wie sie in 2A bis 2D beschrieben ist.
  • 4 ist ein schematisches Blockdiagramm einer Einzelheit von 3.
  • 5 ist eine schematische Darstellung einer beispielhaften Datenbank, die gemäß der vorliegenden Erfindung verwendet wird, wie sie in 2A bis 4 dargestellt ist.
  • 6 ist ein Farbvergleich von Bildern, die ohne und mit der Anwendung der vorliegenden Erfindung gedruckt werden, wie es in 1 bis 5 gezeigt ist.
  • 7A und 7B sind ein verallgemeinertes Flußdiagramm hoher Ebene für die Methodik der vorliegenden Erfindung, wie sie in 1 gezeigt ist.
  • 8 ist eine schematische Zeichnung eines gewichteten Filterprozesses als Alternative zu der Filteranwendung, wie sie in 3 gezeigt ist.
  • Die Zeichnungen, auf die in dieser Beschreibung Bezug genommen wird, sollen als nicht maßstabsgerecht gezeichnet angesehen werden, es sei denn, dies ist speziell angemerkt.
  • Beschreibung des bevorzugten Ausführungsbeispiels
  • Nachfolgend wird näher auf spezifische Ausführungsbeispiele der vorliegenden Erfindung Bezug genommen, die den besten Modus darstellen, der derzeit durch die Erfinder zum Praktizieren der Erfindung in Betracht gezogen wird. Alternative Ausführungsbeispiele werden ebenfalls, falls zutreffend, kurz beschrieben. Um das Verständnis zu unterstützen ist die Erfindung bezüglich eines beispielhaften Ausführungsbeispiels bezüglich einer Computeranwendung für Interpolation eines Datensatzes für ein Graphikbild beschrieben. Dies ist auf keinen Fall als eine Beschränkung der praktischen Anwendbarkeit der vorliegenden Erfindung beabsichtigt noch sollte dies daraus impliziert werden. Der hierin beschriebene Prozeß kann in Software implementiert werden, wie sie in Hardwarespeicher (RAM, ROM und deren Äquivalente), Plattentypspeicher, Bandtypspeicher, in einer anwendungsspezifischen integrierten Schaltung (ASIC), die Firmwareversionen des Programmprozesses umfaßt, oder anderen allgemeinen Rechenspeichereinrichtungen gespeichert ist, wie es für den Stand der Technik zu einem bestimmten Zeitpunkt üblich ist. Bei einer Softwareversion kann das Programm in ANSI C-Sprache-Softwarecode oder dergleichen implementiert sein. Überschriften von Teilabschnitten der Beschreibung sind lediglich der Zweckmäßigkeit halber für den Leser bereitgestellt und sollen weder Beschränkungen definieren noch spezifische Aspekte der Erfindung beschreiben; keine solche Absicht sollte impliziert werden.
  • Allgemeines
  • 1A ist eine Darstellung eines Systems 100, das die vorliegende Erfindung implementiert. Eine Datenquelle 102 hat eine Ausgabe von Niedrigauflösungsdaten 104. Bevor die Daten 104 in eine Speichevorrichtung 108 eines Ausgangsgeräts 106 (z. B. einen Farbdrucker) plaziert werden, plaziert werden, von dem eine Ausgangsversion 110 der Eingangsdaten 104 erzeugt werden kann, werden die Daten 104 analysiert. Wenn herausgefunden wird, daß die Eingangsdaten 104 mit den Prozessen der vorliegenden Erfindung übereinstimmen, können weitere Analyse-, Datenverbesserungs- und Auflösungssyntheseschritte 112 durchgeführt werden. Bei dem Prozeß der Analyse können auch andere bekannte Datenverbesserungen verwendet werden, um die Ausgangsdaten 114 an die Datenauflösungsfähigkeit des Ausgabegeräts 106 anzupassen, wie z. B. eine Vielzahl von Benutzerausgabeoptionen, die in einem Farbdrucker vorgesehen sind.
  • 1 ist ein Flußdiagramm des Gesamtprozesses des beispielhaften Ausführungsbeispiels der vorliegenden Erfindung, wo Niedrigauflösungsbilderzeugungsdaten (z. B. 1A, 104) als ein Ausgangsdatensatz 101 von einer Rechenquelle geliefert werden. Beispielsweise möchte ein Computernutzer eine Photographie herunterladen, die er während einer Internetsuche entdeckt hat. [Als alternatives Verwendungsbeispiel für die Technologie des Stand der Technik kann sich ein WEBTV-Fernsehbetrachter – wo WEBTV ein Typ einer vereinfachten speziell zugewiesenen Computerworkstation wird – entscheiden, eine Werbeseite von Interesse zu drucken, die aufbereiteten Text und Bilder umfaßt.] Es wird somit davon ausgegangen, daß der Ursprungsquellenbilderzeugungseingangsdatensatz 101 in einer Niedrigauflösungsform ist, z. B. weniger als 120 Punkte pro Zoll („dpi" = dots per inch) [oder für das alternative Beispiel ein angenommenes Bildformat von 70 dpi für eine WEBTV-Bildschirmbittabelle].
  • Die vorliegende Erfindung liefert hauptsächlich einen Auflösungsanalyse- und Synthesealgorithmus, der en Niedrigauflösungsquellenbildeingangsdatensatz 101 nimmt, und eine Hochauflösungsversion (z. B. mehr als 300 dpi) des Ausgangsdatensatzes 114 zum Drucken generiert, wobei ein Niedrigauflösungseingangsbild in ein Hochauflösungsausgangsbild umgewandelt wird. Der Algorithmus wird durchgeführt durch Charakterisieren eines Mehrpixelbereichs oder „Fensters", das ein „Ziel-" oder „aktuelles" Pixel umschließt, – das Pixel, das verbessert werden soll – und dann durch Anlegen eines Satzes von räumlichen Filtern an den Bereich, auf der Basis der Fenstercharakterisierung oder -Klassifizierung bezüglich einer bestimmten Datenbank mit relevanten Klassenfiltern. Die Ausgabe des Auflösungssynthesizers ist ein Satz von mehreren Pixeln für jedes Zielpixel, wodurch das Eingangspixel in einer generierten Version mit höherer Auflösung dargestellt wird. Die Filter werden von einer gespeicherten Datenbank oder einer spezifischen anwendbaren Datenbank für jeden Eingangsgerättyp ausgewählt, d. h. Ausgabe von einem Computer, WEBTV, Scanner, digitalen Scanner, Digitalkamera, Videokamera und dergleichen, erzeugt speziell für jedes Eingabegerät oder jeden Satz von Eingabegeräten. [Außer zum Bilden der Filterdaten in der/den Datenbanken) ist eine weitere detaillierte Beschreibung, wie solche speziell zugeschnittenen Datenbanken erzeugt werden, nicht wesentlich, um es einem Fachmann auf diesem Gebiet zu ermöglichen, die vorliegende Erfindung zu verstehen, d. h. während die Verwendung solcher Datenbanken durch die vor liegende Erfindung durchgeführt wird, ist die Erzeugung der Datenbank keine inhärente Komponente des Datenanalyse- und Auflösungssyntheseprozesses. Anders ausgedrückt, die vorliegende Erfindung ist mit zugeführten Datenbanken verwendbar, wie es hierin nachfolgend beschrieben wird.]
  • Eingangsdatenanalysevorverarbeitung
  • Es ist gut bekannt, daß Computerprogramme betriebssystemkompatibel sein müssen – z. B. Programme die mit dem Windows 95TM Betriebssystem kompatibel sind. Daher wird eine Betriebssystemkompatibilitätsprüfung 103 durchgeführt. Falls das Quellcomputerbetriebssystem nicht mit dem Auflösungssyntheseprogramm kompatibel ist, werden die Eingangsdaten 101, falls notwendig, hochskaliert 115, 117, zu einer Bildaufbereitungsausgabegerätauflösungsfähigkeit, die durch den Benutzer ausgewählt wird, und direkt an eine Ausgabegerätsteuerung gesendet 105, z. B. eine HPTM DeskjetTM Druckersteuerplatine.
  • Ein allgemeineres alternatives Ausführungsbeispiel der vorliegenden Erfindung ist in einem Flußdiagramm der Methodik hoher Ebene in 7A vorgesehen, mit Einzelheiten einer Vorbestimmung 701 darüber, ob die Auflösungssynthese, die in 7B gezeigt ist, angelegt werden soll. Es ist anzumerken, daß für eine Implementierung der vorliegenden Erfindung in einem anderen Ausführungsbeispiel, z. B. einer Digitalkamera als eine Bildeingangsdatenquelle zu einem RGB-Videobildschirm als eine Bildanzeige, eine solche Programmkompatibilität eingebaut ist oder anderweitig kein Thema ist, was diesen Schritt im allgemeinen irrelevant macht. Für eine Implementierung einer einzigen Niedrigauflösungsdatenausgabe, wie WEBTV (7, 703) kann die Anfangsprüfung, ob der Algorithmus der vorliegenden Erfindung an den Eingangsdatensatz 101 angelegt werden soll, das Bestimmen sein, ob der druckbare Bildschirm nur ASCII Code ist, z. B. E-Mail Text, 705; falls dies der Fall ist, ist die Auflösungssynthese nicht anwendbar und die Textdaten können hochskaliert werden 115, 117 und direkt an den Drucker gesendet werden.
  • Falls, mit erneuter Bezugnahme auf 1, die Kompatibilitätsprüfung 103 bestanden ist, wird eine Druckmodusprüfung 107 durchgeführt. Ein Benutzer möchte eventuell einfach eine schnelle, druckereffiziente Kopie mit geringer Qualität als groben Entwurf des Quellenbildes haben (oder der obigen beispielhaften WEBTV-Werbung] und eine ENTWURF-Moduskopie auswählen 107. Oder der Benutzer möchte, als weiteres Beispiel, eventuell eine Hochauflösungskopie von einem dekomprimierten JPEG-Bild haben, und würde somit eine BESTER-Druckmodus-Kopie auswählen 107.
  • Falls der Benutzer BESTER-Druckmodusausgabe ausgewählt hat 107, aber der Computer keine Auflösungshochskalierung 109 angefordert hat, wird eine Prüfung durchgeführt, um zu bestimmen, ob die Quellendaten bereits hochskaliert wurden 111, z. B. die dekomprimierte JPEG-Datei. Beispielsweise kann die Dekomprimierung die wahren Quellendaten bereits um einen Faktor von 2 oder mehr über eine einfache Pixelwiederholungroutine hochskaliert haben (siehe den Abschnitt Hintergrund der Erfindung, oben). Alternativ kann die Quelle die Daten zweidimensional gedehnt haben, um zu dem Ausgangsgerätformat zu passen [z. B. kann der Internetanbieter wissen, daß Pixeldaten hochskaliert werden müssen, um einen 6 × 9 Zoll Druck der aktuellen Bildschirmanzeige aufzubereiten, anstatt eines 2 × 3 Zoll Drucks auf dem 8,5 × 11 Zoll Druckerpapier]. Der Algorithmus, der durch die Anwendung verwendet wird, um Bilder im voraus hoch zu skalieren, ist jedoch höchstwahrscheinlich eine einfache und wenig effektive herkömmliche Technik. Da es ein Ziel der vorliegenden Erfindung ist, eine hochwertige Hochskalierung für diese Techniken zu liefern, während Datensatz geliefert wird, dessen Auflösung an das Ausgabegerät angepaßt ist, liefert die Umkehrung einer solchen herkömmlichen Hochskalierung oder Herunterskalierung 113 vor der weiteren Analyse und Auflösungssynthese 121 hervorragende Endbildergebnisse.
  • Falls der Computer keine Hochskalierungsanforderung 109 ausgegeben hat und die Quellendaten keine hochskalierten Daten 111 sind, wird eine Auflösungsprüfung 115 durchgeführt. Falls die Auflösung mit der Auflösung des Druckers, z. B. 300 dpi, übereinstimmt, werden die Daten an die Bilderzeugungssteuerung gesendet 105. Falls die Auflösung nicht mit der ausgewählten Druckerausgabefähigkeit übereinstimmt, wird eine weitere Verbesserung, wie z. B. eine bekannte zweidimensionale Pixelwiederholung 117 verwendet, um die Daten an die Druckerauflösung anzupassen, bevor die Daten an die Bilderzeugungssteuerung gesendet werden 105.
  • Falls der Benutzer BESTER-Modus-Drucken 107 gewählt hat und der Computer eine Hochskalierungsanforderung 109 ausgegeben hat, werden die Daten für die Auflösungssynthese 121 vorbereitet.
  • Entlang Bildgrenzen gibt es Pixel, die nicht „Mittelpunkte" eines Fensters von Pixeln sind. Daher wird die Pixelwiederholung des nächsten benachbarten Pixelwertes verwendet, um die äußeren Grenzen des Bildes einzustellen 119, um Datenpunkte zu liefern, die bei der Auflösungssynthese 121 verwendet werden, die das Bild gemäß der vorliegenden Erfindung verarbeitet. Anders ausgedrückt, eine neue äußere Grenze wird erzeugt, so daß tatsächliche Grenzzielpixel des Quellenbildes verbessert werden können.
  • Auflösungssynthese
  • 2A bis 2D liefern ein Flußdiagramm der Auflösungssynthese- (hierin nachfolgend „RS" =„resolution synthesis") Datenverbesserungsprozeßschritte. Bei diesem beispielhaften Ausführungsbeispiel wird der RS-Algorithmus verwendet, um eine Version eines Quellenbildes zu erzeugen, die durch ei nen Faktor von mehr als 2 verbessert wird, z. B. 96 dpi zu 300 dpi. Eine zweifache Verbesserung wird durch den RS-Algorithmus selbst durchgeführt, und alles restliche Hochskalieren wird durch eine andere bekannte Technik verarbeitet, wie z. B. Pixelwiederholung (siehe 1, Flußdiagrammschritte 121, 115, 117, 105).
  • Pixelfensterbildung
  • Der RS-Algorithmus für Bildauflösungsverbesserungsimplementierungen arbeitet auf einer Pixel-mal-Pixel-Basis. Ein Niedrigauflösungsrasterdatenteilsatzeingabetriplett (R, G, B oder andere Tristimulus-Farbraumdatenkoordinaten) für ein Pixel der Eingangsdaten, das verbessert werden soll, wird von dem Quellbilddatensatz ausgewählt 201. Wie es in 3 – einem vereinfachten Blockdiagramm eines Interpolators – gezeigt ist, wird der Algorithmus durch eine Charakterisierung 309 und die Verwendung eines Mehrfachpixelpixelbereichs oder „Fensters" 301 durchgeführt, das das Zielpixel 303 umschließt. Bei dem beispielhaften Ausführungsbeispiel von ausgedehnten Formen von Auflösungssynthese, siehe unten, ist der Interpolator ein minimaler mittlerer quadratischer Fehlerinterpolator. Andere Formen eines Interpolators können innerhalb des Schutzbereichs der vorliegenden Erfindung implementiert werden.
  • Für eine zweifache („2X") Verbesserung – d. h. zweidimensional von einem Eingangspixel zu vier Ausgangspixeln – hat sich herausgestellt, daß die Wahl 203 (2A) eines Fensters 301 (3) von 3 × 3 Pixeln eine angemessene Abtastung einer lokalen Region eines Bildes geliefert, das verbessert werden soll. Es ist jedoch anzumerken, daß ein größeres Fenster 105 (z. B. 5 × 5 Pixel) bei der Charakterisierung, dem Filtern oder beiden Routinen der vorliegenden Erfindung verwendet werden könnte. Beim Experimentieren insbesondere für Tintenstrahldruckimplementierungen wurde herausgefunden, daß die Verwendung eines größeren Fensters sowohl zum Charakterisieren eines Zielpixels 303 als auch zum Filtern eines Fensters das gedruckte Bild, innerhalb der Grenzen der menschlichen visuellen Wahrnehmung nicht merklich verbessern kann. Die Auswahl eines zu großen Fensters kann zum Drucken unerwünschter Artefakte führen, falls die Variationen der bildcharakterisierenden Faktoren innerhalb des ausgewählten Fensters groß sind. Solche größeren Fenster können jedoch bei einer anderen spezifischen Anwendung wirksam sein (siehe Hintergrundabschnitt oben). Gleichartig dazu ist es möglich, ein „Doppelfenster" auszuwählen und zu verwenden, eines für die Charakterisierung und eines für Datenfiltern. Bei den in 3 gezeigten Alternativen ist das äußere 5 × 5 Pixelfenster 305 des Bildes, das Filtern unterworfen werden könnte, als Beobachtungsvektor z bezeichnet, während das innere 3 × 3-Pixelfenster 301 verwendet wird, um die Art des Zielpixels 303 zu charakterisieren. Somit kann der Prozeß angepaßt werden auf die Optimierung für unterschiedliche Eingangsdatenquellen und Ausgangsdatengeräte.
  • Die Funktion des 2X-RS-Algorithmus ist es, ein einziges Niedrigauflösungspixel wie das Zielpixel 303 mit vier interpolierten Hochauflösungspixeln 307 zu ersetzen, die mit Vektor x bezeichnet sind. Falls das Pixel 301 in 3 1/96 Zoll mal 1/96 Zoll ist, umfaßt das Pixel 307 vier Zellen von jeweils 1/192 Zoll mal 1/192 Zoll. Allgemeiner gesagt, für eine Verbesserung mit einem Faktor E (wobei E ≥ 1) würde das Niedrigauflösungspixel durch E2 Pixel ersetzt.
  • Auflösungssyntheseumgehungen
  • Mit erneuter Bezugnahme auf 2A bis 2B wird vor dem Beginn der Auflösungssyntheseschritte des Datenauflösungsverbesserungsprozesses eine Bestimmung durchgeführt, ob der RS-Algorithmus angelegt werden soll, um die Gesamtverarbeitung zu beschleunigen. Für ein ausgewähltes 203/219 3 × 3 Fenster werden Farbdaten in einer Ebene-um-Ebene-Analyse – d. h. R, G, B einzeln, entweder in serieller oder paralleler Verarbeitung – geprüft, um zu bestimmen, welches Spektrum von Variationen von jeder Farbebene innerhalb des Fensters existiert und ob es eine Auflösungssynthese rechtfertigt. Ein vorbestimmter Schwellenwert oder ein Bereich von Schwellenwerten von Farbvariation auf der Basis der spezifischen Datenbankimplementierung wird für jede Farbe berechnet. Dieser Bereich würde von Ebene zu Ebene variieren, da die Fähigkeit der menschlichen visuellen Wahrnehmung in jeder unterschiedlich ist; z. B. sind Variationen bei blau weniger wahrnehmbar als bei rot oder grün. Falls eine Farbe, z, mögliche Farbraumdatentriplettkoordinatenwerte {zr, zg, zb} aufweist, die jeweils einen Wert aufweisen, der von 0 bis 255 reicht, werden die Unterschiede zwischen dem höchsten und dem niedrigsten Wert in dem Datensatz für das Fenster und den Zielpixelwert berechnet 206, 207, 208. Falls der Unterschied größer ist als der vorbestimmte Schwellenwert für diese Farbebene, werden Analyse und Auflösungssynthese fortgesetzt 206'/211, 207'/211, 208'/211, Farbebene um Farbebene für jedes Zielpixel.
  • Beispielsweise gibt es bei einer Analyse eines bestimmten Fensters eine erste Prüfung zum Bestimmen, ob es ausreichend rote Farbvariationen gibt, um eine Auflösungsverbesserung zu rechtfertigen, durch Vergleichen der Differenz zwischen der Rotdatentriplettkoordinate für das mittlere Zielpixel und der Rotdatentriplettkoordinate für den maximalen Wert dem vorbestimmten Schwellenwert. Angenommen, das Zielpixel hat ein Datentriplett von {55, 22, 1} und das maximale Rotdatentriplett der anderen Pixel in dem Fenster ist {255}, ist die berechnete Differenz (255 – 55) gleich 200. Falls der Schwellenwert für die Variation bei 75 voreingestellt ist, ist die Auflösungsverbesserung in der roten Ebene gewährleistet. Gleichartig dazu würde die Rotdatentriplettkoordinate für den minimalen Wert verglichen.
  • Falls die Unterschiede jeweils unter dem vorbestimmten Schwellenwert für eine spezifische Farbebene liegen, ist dies eine Anzeige, daß die Auflösungssynthese für diese Ebene nicht gewährleistet ist, was bedeutet, daß visuell wahrnehmbare Unterschiede, die dadurch hergestellt werde, daß Verarbeitungszeit verwendet wird zum Erreichen einer vollständigen Synthese gemäß der vorliegenden Erfindung nicht zu einem größeren Ausmaß erreicht werden als durch Anlegen einer schnelleren bekannten Interpolation. Anders ausgedrückt, das verbesserte Endausgangsbild wird im wesentlichen das gleiche sein unter Verwendung einer Verbesserungsverarbeitungsabkürzung. Daher, wenn dies nicht gewährleistet ist, wird eine zweidimensionale Pixelwiederholung oder andere bekannte Verbesserung in dieser Ebene 205, 205', 205'' durchgeführt und der Wert für den nächsten Ausgangspixelsatz 217 gespeichert.
  • Falls die Differenz über dem Schwellenwert 206208 liegt, was anzeigt, daß eine Verbesserung gewährleistet ist 206', 207', 208'', wird der Prozeß auf einer Ebenen-um-Ebenen-Basis fortgesetzt. Nachfolgend wird eine Prüfung 211213 einer Bilderzeugungscharakteristikfaktorvariation für die gesamte Fensterdatenteilsatzauswahl 203 durchgeführt, erneut zum Bestimmen, ob eine Auflösungssynthese gewährleistet ist. Während beispielsweise ein Zielpixel von dem umgebenden Fenster abweichen kann, wie es in den Schritten 206, 207, 208 bestimmt wird, falls das Fenster 301 selbst wenig Gesamtfarbvariation aufweist – z. B. das Bild des weißen Teils eines Auges – könnte das Anwenden einer Auflösungssynthese für die visuelle Erscheinung des Ausgangsendbildes überflüssig sein, und daher kann dieselbe umgangen werden, um die Datenverarbeitung zu beschleunigen. Bei dem bevorzugten Ausführungsbeispiel wird ein Grauskalierungsluminanzwert für das Zielpixel 303 und jedes Pixel in dem Fenster 301 berechnet 211.
  • Für das aktuell bevorzugte Ausführungsbeispiel, das bei Computerpheripheriefarbdrucken sinnvoll ist, wird herausgefunden, daß geeignete Ergebnisse in vernünftiger Echtzeitberechnung erreicht werden durch Verwenden von Grauskalie rungswerten, selbst durch Manipulieren von Farbdaten einer Form, die Tristiumulusfarbraumtripletts umfaßt, wie z. B. {rot, grün, blau} oder {cyan, magenta, gelb}. Jeder Datentriplettwert verläuft einzeln durch die Berechnungen, als ob er eine Grauskalierungsdatenkoordinate darstellt. Anders ausgedrückt, jede Farbebenendatenkoordinate eines Tripletts wird einzeln behandelt, als ob sie ein einzelner Luminanzwert in Grauskalierung wäre: L*zZielpixel = 0,299zr + 0,587zg + 0,114zb
  • Für einen Fachmann auf diesem Gebiet ist klar, daß eine Datenbank, die Echtfarbraumdaten verwendet, erzeugt und verwendet werden kann, um Tristimulusfarbraumvektoren und Datenfilter zu erzeugen, aber auf Kosten des Hinzufügens von wesentlich mehr Speicher, Logik und Datenverarbeitungszeit. Da eine Vielfalt solcher Techniken in der Technik bereits bekannt sind, ist die Verwendung der Echtfarbraumdaten anstatt den Grauskalierungsluminanzwerten nicht außerhalb des Schutzbereichs der vorliegenden Erfindung, aber für das Verständnis der vorliegenden Erfindung sind keine weiteren Einzelheiten notwendig. Es ist anzumerken, daß die Auswahl von Grauskalierungsluminanz den Prozeß für eine echte Grauskalierungsbildverbesserung geeignet macht, z. B. für die Auflösungsverbesserung von Schwarz/Weiß-Photographien.
  • Die Änderungen bei der Luminanz (Max L*-Min L*, wobei L* die Standardnomenklatur für Luminanz ist) über das Zielpixelfenster von Pixeln 301 wird berechnet und mit einem vorbestimmten Schwellenwert verglichen 212. Die Differenz wird mit einem ersten Schwellenwert eines Bereichs von Luminanzwerten verglichen. Falls er über dem ersten vorbestimmten Schwellenwert liegt, schreitet der Prozeß fort. Falls er nicht über dem ersten Schwellenwert liegt, was sehr wenig Variation in dem Fenster 301 bedeutet, wird eine andere, einfache, in der Technik bekannte Verbesserung – z. B. Pixelwiederholung oder dergleichen – angewendet 209. Wenn der Prozeß fortschreitet, wird die gesamte Fensterluminanz variation des Fensters geprüft 213, im Vergleich mit einem zweiten vorbestimmten Schwellenwert. Anders ausgedrückt, es wird ein Test durchgeführt, ob die mittlere Luminanz eines Fensters 301 innerhalb eines Bereichs von Farbvariation liegt – was ein wenig aber kein großes Ausmaß an Variation bedeutet. Falls somit die Differenz 213 über der oberen Grenze, dem ersten Schwellenwert, des Bereichs von Farbvariation 212, aber unter der unteren Grenze, dem zweiten Schwellenwert liegt – was geringe Farbvariationen innerhalb des Fensters bedeutet – wird eine sekundäre, fortgeschrittene Verbesserung, wie z. B. ein asymmetrisches Laplace-Filter an das Zielpixel 215 angelegt. Das heißt, es kann sein, daß die Auflösungssynthese innerhalb des Luminanzprüfungsbereichs nicht als gewährleistet gilt, aber eine bekannte Verbesserung gewünscht und daher angelegt wird. Falls im Vergleich dazu die Fensterluminanzvariation den zweiten Schwellenwert 213 überschreitet, schreitet der Prozeß fort.
  • Falls nach der R, G, B Ebene-um-Ebeneanalyse des aktuellen Pixels keine Auflösungssynthese gewährleistet ist, wird der Ausgangsaustauschpixelsatz gesendet 217 und ein nächstes Zielpixel und Fensterdaten werden ausgewählt 219, 203.
  • Fenstercharakterisierung
  • Mit Bezugnahme auf 2B und 3 wird angenommen, daß ein Fenster 301 oder zumindest eine Farbebene des aktuellen Pixels 301 für Auflösungssynthese ausgewählt wird. Für die Druckimplementierung des beispielhaften Ausführungsbeispiels der vorliegenden Erfindung wird die Zielpixelfensterregion 301 charakterisiert 221, 309. Der Charakterisierungsprozeß ist in 4 näher dargestellt. Jede Achse in dem achtdimensionalen Raum L0–L7 hat einen zugewiesenen Bereich von 0–255. Das Zielpixel LT und acht umgebende Pixel L0–L7 wurden zur Grauskalierungsluminanzwerten umgewandelt; nun wird der mittlere Zielpixel-LT-Wert subtrahiert Ln – LT = Vn,wobei Ln = Luminanzwert für das Umgebungspixel n,
    LT = Luminanzwert für das Zielpixel und
    Vn = relative Luminanzwerte von LT bis Ln.
  • Dies liefert einen achtdimensionalen Vektor, der als der Clustervektor y bezeichnet wird (hierin nachfolgend auch manchmal als „Fensterschlüssel" oder „Clusterschlüssel" bezeichnet), der eine Darstellung der gegebenen Struktur, tonunabhängig, der Fensterdaten für das gesamte Pixelfenster 301 ist. Anders ausgedrückt, ein in Echtzeit abgeleiteter Clustervektor y enthält vorstehende Bilddaten für das Pixelfenster 301. Es wird angenommen, daß Clustervektoren y als Mehrfach-Variate Gaußsche Mischung über diese Luminanzwertcharakterisierung verteilt sind.
  • Ein Clustervektor y wird für Bilddatencharakterisierung erhalten, und unter Verwendung der drei Farbebenen berechnet. Diese führt zu der gleichen Charakterisierung und Filterklassenauswahl für alle drei Ebenen. Man nehme beispielsweise an, daß nur die rote Ebene eine Auflösungssynthese rechtfertigt, 2C2D. Die grüne und die blaue Ebene werden auf eine bekannte Weise 205, 205', 205'' interpoliert. Der Clustervektor y, der für die Farbebenenauflösungssynthese verwendet wird, ist ein Produkt der Rot-, Grün- und Blau-Ebenenanalyse und der gefilterte Datenvektor ist von der roten Ebene.
  • Von dem Fenster von Pixeln wird ein nicht-linearer Transformationsfaktor „f", der einen Projektionsvektor bezeichnet, verwendet, um den Endclustervektor y zu erhalten, um zu bewirken, wie gut der Auflösungssynthesealgorithmus Kanten und Einzelheiten bei der Zielausgangsauflösung aufbereitet. Das Format des V0–V7 Fenstercharakterisierungs schlüssel ist in einem vergleichbaren Format wie der Datenbankpositionsvektorschlüssel. Eine nicht-lineare Transformation „f" kann angelegt werden.
  • Bei dem beispielhaften Ausführungsbeispiel: y = f(y') = y'||y'||p–1 falls y' ≠ 0, oder sonst = 0,wobei p z. B. ein Skalar eines vorbestimmten Werts zwischen 0 und 1 ist.
  • Bei dem bevorzugten Ausführungsbeispiel für digitale Bildverbesserung ist p = 0,25. Geometrisch ist es der Zweck und die Wirkung dieses Skalierens, den Raum von Clustervektoren zu verformen, so daß Kanten unterschiedlicher Größe aber ähnlicher Ausrichtung oder Form zusammenkopiert werden. Das heißt, die meisten Vektoren werden auf der Basis der Richtung zusammengeclustert, relativ unabhängig von der Größe. Das Ergebnis ist, daß Kanten- und Einzelheitenklassen während der Charakterisierung akzentuiert werden können, was eine bessere Unterscheidung solcher Verhalten ermöglicht. Beispielsweise kann für die Verwendung bei einer Pixelverbesserung, wo eine Tristimulusfarbraumkoordinate empirisch in dem Bereich von 0–255 liegt, der Vektor teilweise normiert werden durch Berechnen der Länge und durch Dividieren jedes Elements durch die Länge ^0,75 (Dividieren durch die Länge würde den Vektor vollständig normalisieren, aber Dividieren durch die Länge ^0,75 reduziert den Bereich auf etwa –4 bis +4 (~–4 bis –4); das Ergebnis ist, daß jeder Vektor in einem Schwellenwert innerhalb des Bereichs, z. B. 0,34 Einheiten von dem Clustervektor y, enthalten ist. Das heißt, jede Positionsvektorklasse in diesem Abstand ist auch in dem Filtern enthalten, wenn eine ausgedehnte RS, siehe unten, durchgeführt wird). Erneut macht dies den Prozeß anpaßbar, da spezifisches Skalieren speziell angepaßt werden kann auf spezielle Implementierungen des Auflösungs syntheseprozesses auf der Basis des Eingangsdatentyps, der verbessert wird.
  • Auf der Basis einer Entwurfszweckmäßigkeit für eine spezielle Implementierung der vorliegenden Erfindung wird eine Entscheidung 233 getroffen, ob eine zeiteffiziente Auflösungssynthese oder eine volle Auflösungssynthese durchgeführt wird.
  • Filtern
  • Wie es in 5 dargestellt ist, ist zumindest eine Datenbank von Filtern, die Gruppen von Eingangsdaten-relevanten Filtern umfassen, die als „Klassen" bezeichnet sind, vorgesehen. Im allgemeinen sind die Datenfilter für einen konstruktcharakterisierender Faktor, der mit verwandten Quelleingangsdaten aneinandergrenzt. Anders ausgedrückt, falls die Eingangsdaten ein Konstrukt beschreiben, das in spezifische Elemente unterteilt werden kann, beziehen sich die Datenfilter der Datenbank, die für die Verbesserung verwendet wird, auf Aspekte dieser spezifischen Elemente, wo das Verbessern der Datenauflösung den Gesamtaufbau verbessern wird.
  • Bei diesem beispielhaften Ausführungsbeispiel ist die bereitgestellte Datenbank einhundertundeinen Bildauflösungsdatenfilter (die Anzahl von Filterklassen ist nur durch die Speicherkapazität der speziellen Implementierung beschränkt), wobei jede Klasse Gruppen von vier Datenfiltern umfaßt, die auf der Basis von Bilderzeugungstestdaten erzeugt und klassifiziert wurden. Für das beispielhafte Ausführungsbeispiel ist jede Klasse eine Gruppe von vier Datenfiltern, die sich auf eine Luminanzgrauskalierungsstruktur beziehen.
  • Jede Klasse 0–100 ist mit einem Klassifizierungspositionsvektor versehen, der auch als Klassenmittelvektor bezeich net wird, die aufgrund ihrer Funktion auch als „Positionsschlüssel" bezeichnet werden. Diese Klassifizierungspositionsvektoren sind auch achtdimensionale Vektordarstellungen, die speziell jeder Klasse von Gruppen von vier gespeicherten Filtern zugewiesen sind. Anders ausgedrückt, jeder der Positionsvektoren liefert eine Kurzschriftdefinition oder einen anderen ähnlichen Zeiger einer spezifischen Filterklasse in der Datenbank. Die Datenbankschlüssel verwenden die gleiche Definitionsskala wie sie für die Clustervektoren y verwendet wird. Somit kann ein einfach strukturierter Euklidischer Mittelvergleich eines Positionsvektors mit jedem abgeleiteten 8-d-Clustervektor y verwendet werden, um schnell einen zugehörigen Satz von Filtern für jedes Pixelfenster 301 zu finden. Für dieses beispielhafte Ausführungsbeispiel ist der Schwellenwert der kleinste quadrierte euklidische Abstand zwischen dem aktuellen Clustervektor y und allen Positionsvektoren der aktuellen Datenbank plus einer Konstanten, die die gewünschte Verbesserungsqualität gegenüber der gewünschten Echtzeitleistungsfähigkeit darstellt.
  • Effiziente Auflösungssynthese
  • In 2C bis 2D sind die Vektorvergleichsschritte, die bei dem bevorzugten Ausführungsbeispiel verwendet werden, als Nummer 226231 dargestellt. Andere bedeutende Vergleichsberechnungen können auf der Basis einer speziellen Entwurfsimplementierung abgeleitet werden.
  • Ein Schwellenwert für einen Vektorabstand wird für die Filterauswahl 231 verwendet. Ein vorbestimmter Wert bezüglich der Datenbank, die verwendet wird, wird eingestellt. Das heißt, wenn ein Vergleich eines Clustervektors y und einer Filterklassenvektorbestimmung der Anwendbarkeit 229 eine nähere Übereinstimmung findet als ein vorhergehender Vergleich wird ein Vergleich mit einem vorbestimmten Schwellenwert 331 durchgeführt.
  • Mit erneuter Bezugnahme auf 2C wird, unter der Annahme, daß eine effiziente Auflösungssynthese ausgewählt wurde 232, nacheinanderfolgend jede nächste Klasse der Datenbank (5, Klasse Nr. 0–100) ausgewählt 234, 225, beginnend mit der ersten Klasse 224, für den Vergleich 226231 mit dem Clustervektor y mit den Filterklassensatzpositionsvektoren. Erneut werden Schwellenwerttests durchgeführt 226231, um zu Bestimmen, ob ein spezieller Filtersatz, der geprüft wird, auf das aktuelle Pixel und Fenster anwendbar ist. Falls nicht, kehrt der Prozeß in einer Schleife zurück, bis der erste Klassenfiltersatz die Vektordifferenzschwellenwertkriterien erfüllt. Der erste Klassenfiltersatz, der die Schwellenwertkriterien erfüllt – d. h. die Schlüssel stimmen überein – wird ausgewählt und angelegt, und liefert die Austauschausgangspixel 217. Ein neues Zielpixel wird ausgewählt 219 und der Prozeß wiederholt. Da die Filtergruppen, die in der Datenbank gespeichert sind, nicht notwendigerweise linear verwandt sind, verwendet das Auswählen der ersten Schlüssel-angepaßten Klasse, die nahe genug ist (nicht notwendigerweise die nächste) als Gruppe von Filtern, die angelegt werden soll, die kürzeste Verarbeitungszeit bei der Konvergenz auf der Basis des festen Schwellenwertes zu der Schlüsselabstandsuche.
  • Falls keine ausgewählte Klasse von Datenfiltern den Schwellenwert trifft, ist anzumerken, daß die Klasse mit dem geringsten Vektorabstand zwischen dem Clustervektor und dem ausgewählten Klassenmittelvektor 229, 230, verwendet wird 231, 234. Die Datenbank wird somit verwendet, so daß zumindest eine Klasse immer eine Übereinstimmung (231, 232, 233 oder 230, 231, 234, 233) eines Satzes von vier Filtern zu dem aktuellen Pixelfenster für jeden Eingangsdatenteilsatz liefert. Erneut wird während der verarbeitungseffizienten Form der Auflösungssynthese genau eine Klasse immer eine Übereinstimmung liefern.
  • Mit erneuter Bezugnahme auf 3 werden die Filter, die durch den Klassifizierungskomparator 311 des Clustervektors y zu den Datenbankpositionsvektoren ausgewählt wurden, beim Filtern 313 verwendet, um jedes Zielpixel mit einem Satz von Hochauflösungspixeln 307 zu ersetzen, die mit dem Vektor x bezeichnet sind. Jedes Filter erzeugt ein neues Ausgangspixel mit höherer Auflösung. Das erste ausgewählte Datenfilter F0 eines übereinstimmenden Satzes des ausgewählten Klasse wird an die Daten des 3 × 3 Fensters angelegt und erzeugt ein neues Ausgangspixel NP0, 3. Das zweite ausgewählte Datenfilter F1 wird an die Daten des 3 × 3 Fensters angelegt, und erzeugt ein neues Ausgangspixel NP1. Das dritte ausgewählte Datenfilter, F2, wird an die Daten des 3 × 3 Fensters angelegt und erzeugt ein neues Ausgangspixel NP2. Das vierte ausgewählte Datenfilter, F3, wird an die Daten des 3 × 3 Fensters angelegt und erzeugt ein neues Ausgangspixel NP3. Somit wurde ein Austauschsatz von Pixeln 307 mit einer zweidimensionalen doppelten Auflösung des ursprünglichen Pixels für das Zielpixel 303 erzeugt.
  • Ausgedehnte Auflösungssynthese
  • Mit erneuter Bezugnahme auf 2C, Schritt 233, kann eine gründlichere Vollauflösungssynthese durch eine spezifische Implementierung oder einen speziellen gewünschten Wirkungsausgang gewährleistet sein. Wenn eine ausgedehntere Auflösungssynthese berechtigt ist, oder durch das Anwendungsprogramm, das die Quellenbildeingangsdaten erzeugt, oder durch den Benutzer angefordert wird, kann ein optimaler Schwellenwert und eine optimale Filtergruppe abgeleitet und verwendet werden. Die Anzahl von Klassen, die zum Filtern verwendet werden, ist nicht fest, aber lokal anpaßbar und die Schwellenwerte, die verwendet werden sollen, werden berechnet.
  • Zunächst wird ein Schwellenwert für die Filtergruppenauswahl berechnet 235, 237. Bei dem beispielhaften Ausfüh rungsbeispiel werden die quadrierten euklidischen Abstände zwischen dem Clustervektor y und dem Mittelwert der Positionsvektoren aller Klassen in der Datenbank berechnet. Der Schwellenwert für das aktuelle Pixel ist dann der kleinste quadrierte Abstand plus eine Konstante. Beispielsweise, beginnend mit dem nächsten übereinstimmenden Positionsvektor: Schwellenwert = 2,0*Sigma_Faktor*Sigma_Faktor*Varianz,wobei
    Sigma_Faktor 1,0 ist und die Varianz 0,172 für 2 × Auflösungshochskalieren ist.
  • Erneut werden Clustervektoren y für jedes aktuelle Zielpixel sequentiell ausgewählt 224', 234'', 225'' und verglichen 228'', 231'' mit den Klassenmittelvektoren von jeder Gruppe von Filtern (wie in den Schritten 224230). Bei diesem Ausführungsbeispiel wird die Zeit genommen, alle Differenzwerte zwischen dem Klassenvektor und jedem Klassenmittelvektor in der Datenbank zu berechnen und alle diese berechneten Differenzwerte auf den Schwellenwert 231' zu beziehen (wie bei Schritt 231). Für jede übereinstimmende Klasse von Gruppen von Filtern – diejenigen unter dem berechneten Schwellenwert 237 – werden die Positionsvektoren gespeichert 239. Sobald alle der Gruppen von Filtern in der Datenbank in Betracht gezogen wurden 234', nämlich „keine Klassen übrig" wird ein optimaler Filtersatz berechnet 241.
  • Einige Klassen sind näher zu dem aktuellen Vektor als andere und werden gemäß der Wahrscheinlichkeit gewichtet, eine geeignetste Filtergruppe für die aktuelle Zielpixelverbesserung zu sein. Wie es in 8 dargestellt ist, werden daher die gespeicherten Gruppen gewichtet 241 (2D), wobei die Summe der Gewichtungsfaktoren für Klasse 1 bis Klasse M eins ist, wobei M die Gesamtzahl von Klassen in 239 ist. Die Filter werden verwendet zum Erzeugen einer optimalen Vierfiltergruppe in Proportion zu der Differenz zwischen jedem Klassenmittelvektor und dem Clustervektor. Das Gewichten für die Filtergruppe für jede spezielle Klasse hängt von dem Abstand zwischen dem Clustervektor und dem Positionsvektor ab. Dieses Gewichten bestimmt, wie viel Einfluß der Filter für diese Klasse auf die Ausgangspixel hat. Die Gewichtung fällt mit ab mit der Distanz, nach einer Gaußschen Verteilung:
    Figure 00310001
    wobei „Πi" eine vorbestimmte Größe für eine Klasse ist.
  • Aus dieser Gewichtung (oder einem anderen ähnlichen Gewichtungsfaktor, wie es für einen Fachmann auf diesem Gebiet bekannt ist) können optimale Stoßfiltersätze erzeugt werden. Für jeden gespeicherten 239 Positionsvektor werden die Gruppen von Filter von jeder bestimmten Klasse angelegt 234 an das Fenster, wie bei dem effizienten Auflösungssyntheseweg, der oben beschrieben ist. Von den Pixelsätzen, die so erzeugt werden, wird ein optimaler Satz von Ausgangspixeln interpoliert 245, um einen einzigen Satz von neuen Echtzeit-erzeugten optimalen Pixeln (307, 3) für das zu analysierende Pixelfenster zu erzeugen. Erneut wird ein Satz von kleineren Ausgangspixeln 307 mit höherer Auflösung ausgegeben 217 für das Zielpixel, und der Prozeß kehrt zurück, um das nächste Zielpixel des Bildes zu analysieren. Es ist anzumerken, daß diese Interpolation entweder an die Filtersätze oder an die Sätze von Ausgangspixeln angelegt werden kann, um die letzten vier Austauschpixel abzuleiten. Diese Optimierungsalternative für die Auflösungssynthese fügt dem Prozeß Computerverarbeitungskosten hinzu.
  • Zusammenfassung und einige Alternativen
  • Die Auflösungssynthese gemäß der Erfindung kann lokal angepaßt werden. Wie bei dem beispielhaften Ausführungsbeispiel kann ein anderer Satz von Filtern verwendet werden, um jedes Zielpixel der Quellendaten zu interpolieren. Jedes 2 × 2 Ausgangspixel wird erzeugt durch Addieren der Effekte jedes ausgewählten Filters der Reihe nach. Die Effekte jedes Filters werden skaliert durch das Filtergewicht, das darauf basierte, wie eng der Clustervektor y mit dem Mittelvektor des Filters übereinstimmte, wobei jedes eine Darstellung eines Bilderzeugungscharakterisierungsfaktors des Fensters von Pixeln ist, die derzeit analysiert werden. Obwohl eine Mittelwertbildung aller übereinstimmenden Filter oder eine volle Interpolation für jede Klasse möglich ist, ist es rechentechnisch intensiv. Daher wird für eine praktische Implementierung ein Durchschnitt von nur ein oder zwei Filtern angelegt. Erneut werden bei der am meisten echtzeiteffizienten Auflösungssynthese lediglich das nächstliegende Filter oder das erste Filter mit einem Positionsvektor, der nahe genug mit einer vorbestimmten Toleranz des Clustervektors übereinstimmt, ausgewählt und verwendet. Obwohl solche reduzierten Interpolationen genau gesagt suboptimal sind, abhängig von der Vorrichtungsimplementierung, können die Ergebnisse visuell beinahe äquivalent sein. Der Implementierer muß entscheiden, welche ausreichende Anzahl von Filtern und welches Interpolationsverfahren eine geeignete Ausgabe liefert.
  • Somit werden bei dem Bildverarbeitungsmodus, der für kommerzielle Effizienz praktiziert wird, Schwellenwerterfüllende Nahfilter so anlegt, wie sie vorliegen. Es ist jedoch anzumerken, daß eine weitere Interpolation zwischen Filtern in der Datenbank implementiert werden könnte. Wie es vorher detailliert angemerkt wurde, könnte eine gewichtete Mittelwertbildung verwendet werden, um eine Mehrzahl von ausgewählten Filterklassen in Echtzeit in ein neues interpoliertes Filter umzuwandeln, wobei die optimale Inter polation berechnet wird als eine Kombination der Ausgänge aller Interpolationsfilter. Ein solches Modellfilter muß jedoch ausreichend Klassen aufweisen, um eine große Vielzahl von Texturen darzustellen, die eine übermäßige Berechnung für ein annehmbares kommerzielles Produkt erfordern können. Eine weitere Alternative, die durch die Erfinder in Betracht gezogen wird, ist eine Echtzeitfilterentwicklung aus der gegebenen Datenbank, die implementiert werden kann durch Auswählen der beiden nächstliegenden Filter mit Positionsvektoren, die den Clustervektor y umgeben, und Interpolieren der beiden Gruppen von ausgewählten Datenfiltern. Solche Interpolationsverfahren zum Erzeugen eines noch genaueren Filters können durchgeführt werden durch jede einer Anzahl von Interpolationstechniken, wie sie in der Technik bekannt sind. Hauptsächlich ist das Aufbauen der spezifischen Datenbanken und der Filterauswahltechnik, entweder unabhängig oder resultierend, eine Entwurfsentscheidung, die denjenigen überlassen bleibt, die spezielle Implementierungen der vorliegenden Erfindung erzeugen.
  • Ergebnisse
  • Trotz der anscheinenden Komplexität des neuen verbesserten Hochauflösungsbilds im Vergleich von den Niedrigauflösungsbilddaten, wurde herausgefunden, daß die Datenverarbeitungszeit bei dem effizienten Auflösungssynthesemodus vernachlässigbar ist bezüglich der mittleren Druckzeit, die für einen Vollfarbdruck erforderlich ist.
  • 6 zeigt zwei 300 dpi Drucke, die eine nicht verbesserte Version mit einer Version vergleichen, die gemäß der vorliegenden Erfindung verbessert ist. Bei der nicht verbesserten Version wurde eine 1,6 × Vergrößerung verwendet, um die abgestufte oder blockige Natur des Drucks zu zeigen; jeder Block ist ein Superpixel, das 2 × 2 Pixel umfaßt.
  • Die vorhergehende Beschreibung des bevorzugten Ausführungsbeispiels der vorliegenden Erfindung wurde zu Darstellungs- und Beschreibungszwecken präsentiert. Dieselbe soll nicht erschöpfend sein oder die Erfindung auf die genau offenbarte Form begrenzen. Offensichtlich sind viele Modifikationen und Variationen für Fachleute auf diesem Gebiet klar. Gleichartig dazu können alle Prozeßschritte, die beschrieben wurden, mit anderen Schritten austauschbar sein, um das gleiche Ergebnis zu erreichen. Das Ausführungsbeispiel wurde gewählt und beschrieben, um die Prinzipien der Erfindung und ihre beste praktische Anwendung am besten zu erklären, um es dadurch anderen Fachleuten auf diesem Gebiet zu ermöglichen, die Erfindung für verschiedene Ausführungsbeispiele und mit verschiedenen Modifikationen zu verstehen, wie sie für die spezielle, in Betracht gezogene, Verwendung geeignet sind. Es ist beabsichtigt, daß der Schutzbereich der Erfindung durch die angehängten Ansprüche definiert wird.

Claims (23)

  1. Ein Verfahren zum Verbessern eines Eingangsdatensatzes, der ein zusammenhängendes Konstrukt darstellt, das als Teilsätze von Datenkoordinaten ausgedrückt werden kann, die einzelne Elemente des Eingangsdatensatzes darstellen, um die Auflösung des Konstruktes zu einem Ausgabedatensatz zu verbessern, wobei das Verfahren folgende Schritte umfaßt: Wählen (201) eines ersten Datenkoordinatenteilsatzes (303) des Konstrukts, das verbessert werden soll; Bestimmen (203) eines Satzes von zweiten Datenkoordinatenteilsätzen (301), wobei jeder der zweiten Datenkoordinatenteilsätze in einer vorbestimmten nahen Beziehung zu dem ersten Datenkoordinatenteilsatz ist; Charakterisieren (221, 309) des Satzes von zweiten Datenkoordinatenteilsätzen durch einen ersten Vektor (y), der einen Wert darstellt, der sich auf zumindest einen Konstruktcharakterisierungsfaktor des zusammenhängenden Konstruktes bezieht; Bereitstellen einer Datenbank (5), wobei die Datenbank Gruppen von Datenfiltern für den zumindest einen Konstruktcharakterisierungsfaktor aufweist, wobei jede der Gruppen von Datenfiltern einen zweiten Vektor aufweist, der zumindest eine Konstruktcharakterisierungsfaktordatenfiltergruppe identifiziert, die direkt mit dem zumindest einen Konstruktcharakterisierungsfaktor verwandt ist, so daß das Filtern eines Datenkoordinatenteilsatzes des Eingangsdatensatzes durch eine zweite durch einen Vektor identifizierte Gruppe von Datenfiltern die Auflösung des ersten Datenkoordinatenteilsatzes verbessert; Vergleichen (226231) des ersten Vektors (y) mit dem zweiten Vektor; Auswählen (232) von zumindest einer der Gruppen von Datenfiltern auf der Basis einer vorbestimmten Beziehung des ersten Vektors zu dem zweiten Vektor; Filtern (313) der zweiten Datenkoordinatenteilsätze mit einer ausgewählten Gruppe von Datenfiltern von dem Schritt des Auswählens (233) zum Berechnen (217) eines dritten Teilsatzes (x) von Datenkoordinaten, der aus einer Mehrzahl von gefilterten zweiten Datenkoordinatenteilsätzen besteht; Einsetzen des dritten Teilsatzes (x) für den ersten Datenkoordinatenteilsatz (303) in dem Konstrukt; und Wiederholen (219) jedes Schrittes des Prozesses für jeden ersten Datenkoordinatenteilsatz in dem Konstrukt.
  2. Das Verfahren gemäß Anspruch 1, bei dem der Schritt des Einsetzens ferner folgenden Schritt umfaßt: Einsetzen von E2 Elementen eines Datenkoordinatenteilsatzes für einen gewählten ersten Datenkoordinatenteilsatz, wobei E eine Größenordnung der Verbesserung ist, die durchgeführt werden soll.
  3. Das Verfahren gemäß Anspruch 1, das ferner folgende Schritte umfaßt: vor dem Schritt des Charakterisierens (221, 309) Analysieren (206, 207, 208) jeder Koordinate der zweiten Datenkoordinatenteilsätze bezüglich eines vorbestimm ten Konstruktcharakterisierungsfaktors, um zu bestimmen, ob die Verbesserung des ersten Datenkoordinatenteilsatzes gemäß nachfolgenden Schritten des Verfahrens eine Region des zusammenhängenden Konstrukts verbessern wird, die durch den zweiten Datenkoordinatenteilsatz dargestellt ist, und Auswählen eines nächsten ersten Datenkoordinatenteilsatzes, wenn das vorbestimmte Konstruktcharakterisierungsfaktoranalyseergebnis keinen Bedarf für Verbesserung anzeigt.
  4. Das Verfahren gemäß Anspruch 3, das ferner folgende Schritte umfaßt: vor dem Schritt des Auswählens eines nächsten ersten Datenkoordinatenteilsatzes, Bestimmen (115), ob die Auflösung des Eingangsdatensatzes mit der Auflösung einer vorbestimmten Ausgabekonstruktauflösung übereinstimmt; Hochskalieren (117) der Auflösung des ersten Datenkoordinatenteilsatzes zu der Ausgabekonstruktauflösung auf bekannte Weise; und Ausgeben (217''') eines vierten Teilsatzes von Datenkoordinaten, der aus einer Mehrzahl von ersten Datenkoordinatenteilsätzen besteht, die auf bekannte Weise bei der Einsetzung des ersten Datenkoordinatenteilsatzes hochskaliert werden.
  5. Das Verfahren gemäß Anspruch 1, das ferner folgende Schritte umfaßt: vor dem Schritt des Filterns (313), Bestimmen eines Satzes von fünften Datenkoordinatenteilsätzen, wobei jeder der fünften Datenkoordinatenteilsätze in einer vorbestimmten nahen Beziehung zu dem zweiten Datenkoordinatenteilsatz (301) ist; und bei dem Schritt des Filterns, Filtern der fünften Datenkoordinatenteilsätze und der zweiten Datenkoordinatenteilsätze mit einem gewählten Satz von Datenfiltern von dem Schritt des Auswählens (232).
  6. Das Verfahren gemäß Anspruch 1 oder 5, wobei der Schritt des Auswählens (232) von zumindest einer der Gruppen von Datenfiltern ferner folgenden Schritt umfaßt: Auswählen einer Mehrzahl von Gruppen von Datenfiltern auf der Basis eines Bereichs von vorbestimmten Beziehungen des ersten Vektors und des zweiten Vektors.
  7. Das Verfahren gemäß Anspruch 6, wobei der Schritt des Filterns (232) ferner folgenden Schritt umfaßt: Anlegen (243) von jeder der Mehrzahl von Gruppen von Datenfiltern an die zweiten Datenkoordinatenteilsätze.
  8. Das Verfahren gemäß Anspruch 6, wobei der Schritt des Filterns (232) ferner folgenden Schritt umfaßt: Anlegen von jeder der Mehrzahl von Gruppen von Datenfiltern an den zweiten und den fünften Datenkoordinatenteilsatz.
  9. Das Verfahren gemäß Anspruch 5 oder 6, das ferner folgenden Schritt umfaßt: Ableiten (241) einer optimalen Gruppe von Datenfiltern auf der Basis einer Interpolation der Mehrzahl von Gruppen von Datenfiltern.
  10. Das Verfahren gemäß Anspruch 9, wobei der Schritt des Filterns ferner folgenden Schritt umfaßt: Anlegen des Optimums der Gruppe von Datenfiltern an den zweiten und fünften Datenkoordinatenteilsatz.
  11. Das Verfahren gemäß Anspruch 9, bei dem der Schritt des Filterns ferner folgenden Schritt umfaßt: Anlegen der optimalen Gruppe von Datenfiltern an den zweiten Datenkoordinatenteilsatz.
  12. Das Verfahren gemäß Anspruch 1, das ferner folgende Schritte umfaßt: vor dem Schritt des Auswählens (201), Bestimmen (111) ob der Eingangsdatensatz einen Datensatz umfaßt, der vorher auf bekannte Weise verbessert wurde; und wenn der Eingangsdatensatz ein Datensatz ist, der vorher auf bekannte Weise verbessert wurde, Umkehren (113) vorhergehender Verbesserungen.
  13. Das Verfahren gemäß Anspruch 1, das ferner folgende Schritte umfaßt: vor dem Schritt des Auswählens (201), Bestimmen (111), ob der Eingangsdatensatz einen dekomprimierten Datensatz umfaßt; und wenn der Eingangsdatensatz einen dekomprimierten Datensatz umfaßt, Abwärtsskalieren (113) des Datensatzes auf die ursprüngliche Eingangsdatenform.
  14. Ein Verfahren zum Verbessern eines Graphikbildes durch rechnergestütztes Verbessern von Eingangsdaten, die ein Graphikbild darstellen, um die Auflösung zu erhöhen und auflösungsverbesserte Ausgangsdaten zu liefern, wobei die Eingangsdaten und die Ausgangsdaten Pixel des Graphikbildes darstellen, wobei das Verfahren folgende Schritte umfaßt: Auswählen (201) eines Zielpixels (303), das verbessert werden soll; Auswählen (203) eines Satzes (301) von Pixeln, die das Zielpixel umschreiben; Charakterisieren (221, 309) des Satzes (301) von Pixeln durch einen ersten Schlüssel (y), der einen Wert darstellt, der sich auf zumindest einen visuellen Wahrnehmungsfaktor (Vn) von Graphikbildern bezieht; Liefern einer Datenbank (5) mit einer Mehrzahl von Datenfiltern für den zumindest einen visuellen Wahrnehmungsfaktor (Vn), wobei jedes individuelle Filter der Datenbank einen zweiten Schlüssel aufweist, der einen Wert darstellt, der sich auf den zumindest einen visuellen Wahrnehmungsfaktor bezieht; Vergleichen (226231) des ersten Schlüssels mit dem zweiten Schlüssel; Auswählen (232) zumindest eines Datenfilters von der Datenbank auf der Basis des Vergleichsschritts und einer vorbestimmten Beziehung des ersten Schlüssels zu dem zweiten Schlüssel; Filtern (313) des Satzes (301) von Pixeln, die das Zielpixel (303) umschreiben, mit dem ausgewählten Filter, um eine verbesserte Auflösung für das Pixel (301) zu berechnen, das verbessert werden soll, und Einsetzen einer Mehrzahl (x) von Pixeln für das Zielpixel auf der Basis des Schritts des Filterns (313) des Satzes von Pixeln; und Ausgeben der Mehrzahl von Pixeln.
  15. Das Verfahren gemäß Anspruch 14, das ferner folgende Schritte umfaßt: vor dem Schritt des Auswählens (201) eines Zielpixels (303), Bestimmen (703), ob die Eingangsdaten von einem einzigen Niedrigauflösungsausgabedatensystem erzeugt werden, wenn die Eingangsdaten von einem einzigen Niedrigauflösungsausgangsdatensystem erzeugt werden, Bestimmen (705), ob die Eingangsdaten nichtbitabgebildete Eingangsdaten sind, und wenn die Eingangsdaten nichtbitabgebildete Eingangsdaten sind, Hochskalieren (117) der Auflösung der Eingangsdaten auf bekannte Weise, Erzeugen von Ausgangsdaten mit einer vorbestimmten Ausgabeauflösung, Ausgeben (217'') der Ausgangsdaten und Laden (101) eines nächsten Satzes von Eingangsdaten, die ein Graphikbild darstellen, das verbessert werden soll.
  16. Ein rechnergestütztes Verfahren für Auflösungsverbesserung von Tristimulus-Farbraumeingangsdaten, das folgende Schritte umfaßt: Bestimmen (103), ob die Eingangsdaten mit der Auflösungsverbesserung kongruent sind; Auswählen (201) eines Zielpixels (303) von kongruenten Eingangsdaten, die durch einen ersten Satz von Eingangsdaten dargestellt werden, die ein Format von Farbraumkoordinaten aufweisen, wobei jede Koordinate eine Farbebene (R, G, B) darstellt; Auswählen (203) eines Fensters (301) von Pixeln, wobei jedes der Pixel des Fensters, die durch jeweilige zweite Sätze von Eingangsdaten dargestellt sind, ein Format von Farbraumkoordinaten (R, G, B) aufweist, wo bei jede Koordinate eine Farbebene darstellt, wobei das Fenster (301) von Pixeln das Zielpixel (303) als ein Mittelpixel hat; Bereitstellen (5) einer Datenbank, die klassifizierte Gruppen von Datenverbesserungsfiltern aufweist, wobei jede der klassifizierten Gruppen von Datenverbesserungsfiltern einen ersten Schlüssel aufweist, der eine Bilderzeugungscharakteristik darstellt; Prüfen (206, 207, 208) jeder Farbraumkoordinate des Fensters von Pixeln gegen zumindest einen vorbestimmten Schwellenwert, der einen Bedarf für Verbesserung in der Farbebene der Zielpixelkoordinate darstellt, einschließlich: Bestimmen (206208) von Farbebene um Farbebene einzelner Bilderzeugungscharakteristikpegel für jedes Pixel (L0–L7) des Fensters von Pixeln und für das Zielpixel (LT), Bestimmen (211) eines maximalen Bilderzeugungscharakteristikpegels des Fensters von Pixeln und eines minimalen Bilderzeugungscharakteristikpegels des Fensters von Pixeln, Einstellen eines ersten Schwellenwertes, der die minimale Varianz der Bilderzeugungscharakteristik über das Fenster von Pixeln darstellt, was einen Pegel spezifiziert, über dem Verbesserung benötigt wird, Vergleichen (212) des maximalen Bilderzeugungscharakteristikpegels und des minimalen Bilderzeugungscharakteristikpegels mit dem Bilderzeugungscharakteristikpegel des Zielpixels, und wenn der Schritt des Vergleichens einen Wert ergibt, der den ersten Schwellenwert überschreitet, Fortsetzen mit Schritten des Verfahrens durch: Auswählen einer zweiten Bilderzeugungscharakteristik, die einen visuellen Wahrnehmungsfaktor anzeigt, Einstellen eines zweiten Schwellenwertes, der einen Pegel spezifiziert, über dem Verbesserung benötigt wird, Bestimmen der Varianz der zweiten Bilderzeugungscharakteristik in dem Fenster von Pixeln, und wenn die Varianz der zweiten Bilderzeugungscharakteristik über dem zweiten Schwellenwert liegt, Fortsetzen mit dem Schritt des Filterns; und wenn das Prüfen der Zielpixelkoordinate den vorbestimmten Schwellenwert nicht überschreitet, Ausgeben (205') eines Satzes von mehreren Pixeln, in Substitution für das Zielpixel, wobei der Satz aus Pixeln besteht, die von dem Zielpixel auf bekannte Weise interpoliert sind, oder wenn das Prüfen der Zielpixelkoordinate den vorbestimmten Schwellenwert überschreitet, Filtern (313) der Pixel des Fensters mit zumindest einer Gruppe von Datenverbesserungsfiltern, die von der Datenbank ausgewählt werden, und Ersetzen des Zielpixels mit einer Mehrzahl von kleineren Pixeln auf der Basis des Filterns.
  17. Das Verfahren gemäß Anspruch 16, wobei der Schritt des Filterns der Pixel ferner folgende Schritte umfaßt: Erzeugen (221) eines zweiten Schlüssels, der die Bilderzeugungscharakteristik für das Fenster von Pixeln darstellt, sequentielles Vergleichen (226229) des zweiten Schlüssels mit jedem ersten Schlüssel der Datenbank für eine vorbestimmte Abhängigkeitsbeziehung, Auswählen (232) zumindest eines Satzes der Datenverbesserungsfilter auf der Basis des sequentiellen Vergleichens, Anlegen (233) des zumindest einen Satzes von Datenverbesserungsfiltern an die Pixel des Fensters, und Erzeugen (217) eines Satzes von Ausgabepixeln, die durch den Schritt des Anlegens als Ersatz für die Zielpixel verbessert wurden.
  18. Eine Computerspeichervorrichtung, die für die Verwendung mit einer Druckkopievorrichtung (106) angepaßt ist, wobei die Vorrichtung ein Programm für Analyse und Auflösungsverbesserung von Eingangsdaten (104) aufweist, wobei die Eingangsdaten digitale Bilderzeugungsdaten umfassen, wobei ein Bild als eine Matrix von Pixeln dargestellt ist, wobei das Programm folgende Schritte umfaßt: Bestimmen (103), ob die Eingangsdaten mit der Auflösungsverbesserung kongruent sind; Auswählen eines Zielpixels (303), das durch einen ersten Satz von Eingangsdaten dargestellt ist, die ein Format von Farbraumkoordinaten aufweisen, wobei jede Koordinate eine Farbebene (R, G, B) darstellt; Auswählen (203) eines Fensters (301) von Pixeln, wobei jedes der Pixel des Fensters durch einen jeweiligen Satz von Eingangsdaten dargestellt ist, die ein Format von Farbraumkoordinaten (R, G, B) aufweisen, wobei jede Koordinate eine Farbebene darstellt, wobei das Fenster (301) von Pixeln zumindest teilweise zusammenhängend ist mit dem Zielpixel (303); Bereitstellen (5) einer Datenbank, die klassifizierte Gruppen von Auflösungsverbesserungsdatenfiltern umfaßt, wobei jede der klassifizierten Gruppen von Auflösungsverbesserungsdatenfiltern einen Positionsvektor aufweist, der eine Klasse von Bilderzeugungscharakteristika darstellt, die sich auf die Auflösungsverbesserungsdatenfilter beziehen; Untersuchen (206, 207, 208) jeder Farbraumkoordinate des Fensters von Pixeln mit zumindest einem vorbestimmten Schwellenwertkriterium, das einen Bedarf für Verbesserung in der Farbebene der Zielpixelkoordinate darstellt, und wenn die Untersuchung der Zielpixelkoordinate das zumindest eine vorbestimmte Schwellenwertkriterium nicht erfüllt, Ausgeben (205) eines Satzes von mehreren Pixeln in Substitution für das Zielpixel, wobei der Satz aus Pixeln besteht, die auf bekannte Weise von dem Zielpixel interpoliert werden, oder wenn die Untersuchung der Zielpixelkoordinate die vorbestimmten Schwellenwertkriterien erfüllt, Filtern (313) der Pixel des Fensters mit zumindest einer Gruppe von Datenverbesserungsfiltern, die von der Datenbank ausgewählt werden, wobei das Filtern folgende Schritte umfaßt: Erzeugen (221) eines Charakterisierungsvektors, der die Bilderzeugungscharakteristik für das Fenster von Pixeln darstellt, sequentielles Vergleichen (226229) des Charakterisierungsvektors mit Positionsvektoren der Datenbank, Auswählen (232) zumindest eines Satzes von den Gruppen von Auflösungsverbesserungsdatenfiltern auf der Basis des sequentiellen Vergleichens, einschließlich des Auswählens einer Mehrzahl von Sätzen von den Gruppen von Auflösungsverbesserungsdatenfiltern, und Gewichten der Mehrzahl von Sätzen, um einen interpolierten Satz von Auflösungsverbesserungsdatenfiltern zu erhalten, durch Gewichten jedes Satzes von Auflösungsverbesserungsdatenfiltern, die bezüglich der Differenz zwischen dem Positionsvektor für jeden Satz und dem Charakterisierungsvektor ausgewählt werden, Anlegen (233) des zumindest einen Satzes von Auflösungsverbesserungsdatenfiltern an die Pixel des Fensters, einschließlich des Anlegens des interpolierten Satzes von Auflösungsverbesserungsdatenfiltern und Erzeugen (217) eines Satzes von Ausgangspixeln, die durch den Schritt des Anlegens verbessert werden, in Einsetzung für das Zielpixel, und Ersetzen des Zielpixels mit einer Mehrzahl von kleineren Pixeln auf der Basis des Filterns.
  19. Ein System zum Erzeugen von Graphikbildern, einschließlich aufbereiteten alphanumerischen Textbildern, wobei das System eine Speichervorrichtung zum Speichern und Betreiben eines Bildauflösungsverbesserungsverfahrens umfaßt, wobei das Verfahren folgende Schritte umfaßt: a) Empfangen eines Eingangsdatensatzes (104) von Pixeldaten eines Graphikbildes, wobei die Pixeldaten räumliche Koordinaten umfassen; b) Bestimmen (111), ob der Datensatz ein hochskalierter Datensatz ist, und wenn der Datensatz ein hochskalierter Datensatz ist, Abwärtsskalieren (113) des Datensatzes; c) Auswählen (203) eines Fensters von Pixeln, einschließlich eines Zielpixels (LT) und zumindest einiger Pixel (L0–L7), die mit den Zielpixeln zusammenhängen; d) Vergleichen der Variation einer räumlichen Koordinate der zusammenhängenden Pixel mit einer gleichen räumlichen Koordinate des Zielpixels bezüglich eines Variationsschwellenwerts, und falls keine Variation den Variationsschwellenwert überschreitet, Ersetzen (117) des Zielpixels durch eine Mehrzahl von Pixeln höherer Auflösung, die auf bekannte Weise erzeugt werden, und Zurückkehren zu Schritt c), und falls eine Variation den Variationsschwellenwert überschreitet, Fortsetzen mit Schritt e); e) Berechnen eines Bildcharakteristikfaktors (Vn) für jedes der Pixel des Fensters; f) Vergleichen (206208) der Variation des Bildcharakteristikfaktors für die zusammenhängenden Pixel zu einem selben Bildcharakteristikfaktor für das Zielpixel mit einem Bereich von Bildcharakteristikfaktoren, und falls die Variation innerhalb des Bereichs liegt, Ersetzen (205, 205', 205'') des Zielpixels durch eine Mehrzahl von Pixeln höherer Auflösung, die auf bekannte Weise erzeugt werden, und Zurückkehren zu Schritt c), und falls die Variation über dem Bereich ist, Fortsetzen mit Schritt g); g) Bereitstellen einer Datenbank (5) von Gruppen von Datenfiltern, wobei jede der Gruppen von Datenfiltern durch einen Mittelvektor klassifiziert ist, der sich auf den Bildcharakteristikfaktor bezieht; h) Berechnen eines Clustervektors (y) für das Fenster, das sich auf den Bildcharakteristikfaktor bezieht; i) sequentielles Vergleichen (228) des Clustervektors mit jedem der Mittelvektoren; j) Auswählen (230) zumindest einer Gruppe von Datenfiltern auf der Basis einer vorbestimmten Beziehung des Clustervektors mit zumindest einem Mittelvektor; k) Anlegen (233) der zumindest einen Gruppe von Datenfiltern, die in Schritt j) ausgewählt werden, und Berechnen (217) einer Mehrzahl von Pixeln, um das Zielpixel von denselben zu ersetzen; l) Ersetzen (117) des Zielpixels mit der Mehrzahl von Pixeln; m) Senden der Mehrzahl von Pixeln an ein Ausgabegerät zum Erzeugen eines auflösungsverbesserten visuellen Bildes, und n) Zurückkehren zu Schritt c) und Fortsetzen des Prozesses, bis alle Pixel des Bildes ausgewählt wurden.
  20. Das System gemäß Anspruch 19, wobei Schritt i) ferner folgende Schritte umfaßt: Auswählen (239) einer Mehrzahl von Sätzen der Gruppen von Datenfiltern, Gewichten (241) der Mehrzahl von Sätzen, um eine interpolierte Gruppe von Datenfiltern zu erhalten, und Fortfahren mit Schritt j) unter Verwendung der interpolierten Gruppe von Datenfiltern.
  21. Das System gemäß Anspruch 20, wobei der Schritt des Gewichtens (241) ferner folgenden Schritt umfaßt: Gewichten des Abfalls mit Abstand nach einer Gaußschen Verteilung gemäß der Berechnung:
    Figure 00490001
    wobei „πj" eine vorbestimmte Größe für eine Klasse ist.
  22. Das System gemäß Anspruch 19, wobei Schritt j) ferner folgende Schritte umfaßt: Auswählen (230) nur einer ersten Gruppe von Datenfiltern, die die vorbestimmte Beziehung des Clustervektors zu dem Mittelvektor erfüllen, und Fortfahren mit Schritt k) unter Verwendung der ersten Gruppe von Datenfiltern.
  23. Das System gemäß Anspruch 19, wobei Schritt c) ferner folgende Schritte umfaßt: Auswählen (101) eines Zielpixels (303), Auswählen (203) jedes Pixels, das das Zielpixel umschreibt, Erzeugen eines ersten Fensters (301) zum Charakterisieren einer Region des Bildes, und Auswählen einer Mehrzahl von Pixeln, die das erste Fenster umschreiben, Erzeugen eines zweiten Fensters (305) zum Filtern der Eingangsdaten, um Schritt k) durchzuführen.
DE69822545T 1997-04-21 1998-04-16 Bildverbesserung unter Benutzung einer Flächeninterpolation Expired - Fee Related DE69822545T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/837,619 US6075926A (en) 1997-04-21 1997-04-21 Computerized method for improving data resolution
US837619 1997-04-21

Publications (2)

Publication Number Publication Date
DE69822545D1 DE69822545D1 (de) 2004-04-29
DE69822545T2 true DE69822545T2 (de) 2005-04-14

Family

ID=25274975

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69822545T Expired - Fee Related DE69822545T2 (de) 1997-04-21 1998-04-16 Bildverbesserung unter Benutzung einer Flächeninterpolation

Country Status (4)

Country Link
US (5) US6075926A (de)
EP (1) EP0874330B1 (de)
JP (1) JPH10302059A (de)
DE (1) DE69822545T2 (de)

Families Citing this family (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0985317B1 (de) * 1997-05-07 2001-11-21 Infineon Technologies AG Verfahren zur codierung und decodierung eines digitalisierten bildes
DE69822923T2 (de) * 1997-06-02 2005-04-28 Seiko Epson Corp. Verfahren und Vorrichtung zur Kantenhervorhebung
JP3549720B2 (ja) * 1998-01-28 2004-08-04 シャープ株式会社 画像処理装置
US6208765B1 (en) * 1998-06-19 2001-03-27 Sarnoff Corporation Method and apparatus for improving image resolution
JP2000125267A (ja) * 1998-10-13 2000-04-28 Sony Corp 補間演算装置及び方法
US7030917B2 (en) * 1998-10-23 2006-04-18 Hewlett-Packard Development Company, L.P. Image demosaicing and enhancement system
DE60002835T2 (de) * 1999-02-01 2004-03-11 Honeywell International Inc. Verfahren und vorrichtung zur erzeugung einer bodennäherungswarnung und computerprogramm zum kontrollierten verändern der basisbreite einer alarmhülle
US6721457B1 (en) * 1999-08-27 2004-04-13 Hewlett-Packard Development Company, L.P. Method for enhancing digital images
KR100311482B1 (ko) * 1999-10-21 2001-10-18 구자홍 보간 영상의 화질 개선을 위한 필터링 제어방법
US6483605B1 (en) * 1999-12-07 2002-11-19 Destiny Technology Corporation Method for transforming an image from a resolution to a lower resolution
US7119915B2 (en) * 2000-02-21 2006-10-10 Canon Kabushiki Kaisha Communication apparatus and method
TW476212B (en) * 2000-07-12 2002-02-11 Ulead Systems Inc One-button-triggered image processing unit
CA2316610A1 (en) * 2000-08-21 2002-02-21 Finn Uredenhagen System and method for interpolating a target image from a source image
US20020047907A1 (en) * 2000-08-30 2002-04-25 Nikon Corporation Image processing apparatus and storage medium for storing image processing program
WO2002025589A1 (en) * 2000-09-20 2002-03-28 Nik Multimedia, Inc. Digital image sharpening system
US6834297B1 (en) * 2000-10-06 2004-12-21 Redline Networks, Inc. Web resource transfer acceleration system and method
JP4277446B2 (ja) * 2000-12-26 2009-06-10 ソニー株式会社 情報信号処理装置、情報信号処理方法、画像信号処理装置およびそれを使用した画像表示装置、それに使用される係数種データ生成装置および生成方法、並びに記録媒体
GB2371458A (en) * 2001-01-17 2002-07-24 Eastman Kodak Co Method of enlargement of a digital image
JP2004523795A (ja) * 2001-02-21 2004-08-05 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ビデオ信号を処理する表示システム
US6870956B2 (en) 2001-06-14 2005-03-22 Microsoft Corporation Method and apparatus for shot detection
US7110026B2 (en) * 2001-07-03 2006-09-19 Logitech Europe S.A. Image tagging for post processing
US7904454B2 (en) * 2001-07-16 2011-03-08 International Business Machines Corporation Database access security
US7127503B2 (en) * 2001-10-10 2006-10-24 Juniper Networks, Inc. Computer networking system, device, and method for improved speed in web page rendering
US7061490B2 (en) * 2001-12-31 2006-06-13 Polynarythink, Llc Multi-variate data and related presentation and analysis
US6927780B2 (en) * 2002-01-14 2005-08-09 Seiko Epson Corporation Fast text/graphics resolution improvement with chain-code table look-up
US6728396B2 (en) 2002-02-25 2004-04-27 Catholic University Of America Independent component imaging
US7149369B2 (en) * 2002-04-23 2006-12-12 Hewlett-Packard Development Company, L.P. Method and system for image scaling
US6859204B2 (en) * 2002-07-01 2005-02-22 Xerox Corporation Dynamic threshold system for multiple raster content (MRC) representation of documents
US7148990B2 (en) * 2002-08-15 2006-12-12 Hewlett-Packard Development Company, L.P. System and method for producing a photobook
US7098117B2 (en) * 2002-10-18 2006-08-29 The Regents Of The University Of Michigan Method of fabricating a package with substantially vertical feedthroughs for micromachined or MEMS devices
US7116716B2 (en) * 2002-11-01 2006-10-03 Microsoft Corporation Systems and methods for generating a motion attention model
US20040088723A1 (en) * 2002-11-01 2004-05-06 Yu-Fei Ma Systems and methods for generating a video summary
US7274741B2 (en) * 2002-11-01 2007-09-25 Microsoft Corporation Systems and methods for generating a comprehensive user attention model
US7127120B2 (en) * 2002-11-01 2006-10-24 Microsoft Corporation Systems and methods for automatically editing a video
US7006764B2 (en) * 2002-11-12 2006-02-28 Eastman Kodak Company User interface for controlling cropping in electronic camera
US7561793B2 (en) * 2002-11-12 2009-07-14 Eastman Kodak Company User interface for controlling cropping in electronic camera
US6907194B2 (en) 2002-11-12 2005-06-14 Eastman Kodak Company Camera having continuously cropping viewfinder
WO2004064388A1 (ja) * 2003-01-09 2004-07-29 Sony Corporation 画像処理装置および方法
US7133553B2 (en) * 2003-02-18 2006-11-07 Avago Technologies Sensor Ip Pte. Ltd. Correlation-based color mosaic interpolation adjustment using luminance gradients
US7164798B2 (en) * 2003-02-18 2007-01-16 Microsoft Corporation Learning-based automatic commercial content detection
US7260261B2 (en) * 2003-02-20 2007-08-21 Microsoft Corporation Systems and methods for enhanced image adaptation
US20040190786A1 (en) * 2003-03-24 2004-09-30 Khageshwar Thakur Method of image enhancement for an imaging apparatus
US7308158B2 (en) * 2003-06-20 2007-12-11 Eastman Kodak Company Imaging method and system
US7400761B2 (en) * 2003-09-30 2008-07-15 Microsoft Corporation Contrast-based image attention analysis framework
JP3767593B2 (ja) * 2003-10-07 2006-04-19 三菱電機株式会社 画素補間回路及び画素補間方法
US7188310B2 (en) * 2003-10-09 2007-03-06 Hewlett-Packard Development Company, L.P. Automatic layout generation for photobooks
KR100553892B1 (ko) * 2003-10-13 2006-02-24 삼성전자주식회사 디지털 영상 보간 방법 및 장치
US7471827B2 (en) * 2003-10-16 2008-12-30 Microsoft Corporation Automatic browsing path generation to present image areas with high attention value as a function of space and time
US20050100235A1 (en) * 2003-11-07 2005-05-12 Hao-Song Kong System and method for classifying and filtering pixels
US20050114382A1 (en) * 2003-11-26 2005-05-26 Lakshminarayan Choudur K. Method and system for data segmentation
US8659619B2 (en) 2004-03-26 2014-02-25 Intellectual Ventures Fund 83 Llc Display device and method for determining an area of importance in an original image
EP1583030A1 (de) * 2004-03-31 2005-10-05 Fujitsu Limited Bildvergrösserungsvorrichtung und Bildvergrösserungsverfahren
KR100634507B1 (ko) * 2004-07-23 2006-10-16 삼성전자주식회사 영상 랜더링 장치 및 방법과 이 장치를 제어하는 컴퓨터프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체
US9053754B2 (en) * 2004-07-28 2015-06-09 Microsoft Technology Licensing, Llc Thumbnail generation and presentation for recorded TV programs
US7986372B2 (en) * 2004-08-02 2011-07-26 Microsoft Corporation Systems and methods for smart media content thumbnail extraction
JP2006085233A (ja) * 2004-09-14 2006-03-30 Noritsu Koki Co Ltd 画像処理装置及び画像処理方法
JP4244027B2 (ja) * 2004-09-14 2009-03-25 株式会社リコー 画像処理装置および画像形成装置およびデジタルスチルカメラ印刷システム
JP2006115078A (ja) * 2004-10-13 2006-04-27 Matsushita Electric Ind Co Ltd 画像データの信号処理装置及びその方法
US7610400B2 (en) * 2004-11-23 2009-10-27 Juniper Networks, Inc. Rule-based networking device
US7327904B2 (en) * 2004-12-15 2008-02-05 Arcsoft, Inc. Pattern classification and filter design for increasing image resolution
TWI259145B (en) * 2004-12-29 2006-08-01 Ind Tech Res Inst Method for converting printing data and device using the same
US7548936B2 (en) 2005-01-12 2009-06-16 Microsoft Corporation Systems and methods to present web image search results for effective image browsing
US7321400B1 (en) 2005-02-22 2008-01-22 Kolorific, Inc. Method and apparatus for adaptive image data interpolation
US7634152B2 (en) * 2005-03-07 2009-12-15 Hewlett-Packard Development Company, L.P. System and method for correcting image vignetting
US7970788B2 (en) * 2005-08-02 2011-06-28 International Business Machines Corporation Selective local database access restriction
US20070112811A1 (en) * 2005-10-20 2007-05-17 Microsoft Corporation Architecture for scalable video coding applications
CN1953504B (zh) * 2005-10-21 2010-09-29 意法半导体研发(上海)有限公司 用于cfa图像插值的自适应分类方法
US7773813B2 (en) * 2005-10-31 2010-08-10 Microsoft Corporation Capture-intention detection for video content analysis
US8180826B2 (en) 2005-10-31 2012-05-15 Microsoft Corporation Media sharing and authoring on the web
US8196032B2 (en) * 2005-11-01 2012-06-05 Microsoft Corporation Template-based multimedia authoring and sharing
US7933923B2 (en) * 2005-11-04 2011-04-26 International Business Machines Corporation Tracking and reconciling database commands
US20070109324A1 (en) * 2005-11-16 2007-05-17 Qian Lin Interactive viewing of video
US7599918B2 (en) * 2005-12-29 2009-10-06 Microsoft Corporation Dynamic search with implicit user intention mining
US7738739B2 (en) * 2006-01-26 2010-06-15 Vestel Elektronik Sanayi Ve Ticaret A.S. Method and apparatus for adjusting the resolution of a digital image
JP4157568B2 (ja) * 2006-04-11 2008-10-01 株式会社東芝 画像の高解像度化方法及び装置
US8325196B2 (en) * 2006-05-09 2012-12-04 Koninklijke Philips Electronics N.V. Up-scaling
WO2007139067A1 (ja) 2006-05-29 2007-12-06 Panasonic Corporation 画像高解像度化装置、画像高解像度化方法、画像高解像度化プログラムおよび画像高解像度化システム
US8023733B2 (en) * 2006-06-08 2011-09-20 Panasonic Corporation Image processing device, image processing method, image processing program, and integrated circuit
JP4890974B2 (ja) * 2006-06-29 2012-03-07 キヤノン株式会社 画像処理装置、及び画像処理方法
JP4926568B2 (ja) * 2006-06-29 2012-05-09 キヤノン株式会社 画像処理装置、画像処理方法、及び画像処理プログラム
US8374234B2 (en) * 2006-09-29 2013-02-12 Francis S. J. Munoz Digital scaling
US7941002B2 (en) * 2006-12-01 2011-05-10 Hewlett-Packard Development Company, L.P. Apparatus and methods of producing photorealistic image thumbnails
DE602007010514D1 (de) * 2006-12-18 2010-12-23 Koninkl Philips Electronics Nv Bildkomprimierung und dekomprimierung
US8141100B2 (en) 2006-12-20 2012-03-20 International Business Machines Corporation Identifying attribute propagation for multi-tier processing
US8495367B2 (en) 2007-02-22 2013-07-23 International Business Machines Corporation Nondestructive interception of secure data in transit
US8538203B2 (en) * 2007-07-24 2013-09-17 Sharp Laboratories Of America, Inc. Image upscaling technique
US8396330B2 (en) * 2007-07-24 2013-03-12 Sharp Laboratories Of America, Inc. Image upscaling based upon directional interpolation
US8655108B2 (en) * 2007-09-19 2014-02-18 Sharp Laboratories Of America, Inc. Adaptive image up-scaling technique
US8139899B2 (en) * 2007-10-24 2012-03-20 Motorola Mobility, Inc. Increasing resolution of video images
US8261326B2 (en) 2008-04-25 2012-09-04 International Business Machines Corporation Network intrusion blocking security overlay
US7941004B2 (en) * 2008-04-30 2011-05-10 Nec Laboratories America, Inc. Super resolution using gaussian regression
US8351725B2 (en) * 2008-09-23 2013-01-08 Sharp Laboratories Of America, Inc. Image sharpening technique
US8289568B1 (en) 2009-02-19 2012-10-16 Hewlett-Packard Development Company, L.P. Printing using variable pixel-replication factors
US8391647B1 (en) * 2010-02-17 2013-03-05 Hewlett-Packard Development Company, L.P. Pixel replacement
US9600760B2 (en) * 2010-03-30 2017-03-21 Disney Enterprises, Inc. System and method for utilizing motion fields to predict evolution in dynamic scenes
US8494308B2 (en) 2011-03-10 2013-07-23 Sharp Laboratories Of America, Inc. Image upscaling based upon directional interpolation
WO2013109281A1 (en) * 2012-01-19 2013-07-25 Hewlett-Packard Development Company, L.P. Right sizing enhanced content to generate optimized source content
US20130314558A1 (en) 2012-05-24 2013-11-28 Mediatek Inc. Image capture device for starting specific action in advance when determining that specific action is about to be triggered and related image capture method thereof
WO2014040061A1 (en) * 2012-09-10 2014-03-13 Ortho Transmission, Llc Transcutaneous implant for skeletal attachment of external prosthetic devices
JP5935196B1 (ja) * 2015-07-08 2016-06-15 Eizo株式会社 画像処理装置、表示装置及びプログラム
JP7098351B2 (ja) * 2018-02-28 2022-07-11 キヤノン株式会社 画像処理装置および画像処理方法、およびプログラム
KR20200142883A (ko) * 2019-06-13 2020-12-23 엘지이노텍 주식회사 카메라 장치 및 카메라 장치의 이미지 생성 방법
CN113099182B (zh) * 2021-04-08 2022-11-22 西安应用光学研究所 基于机载并行处理架构的多视窗实时缩放方法

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3573789A (en) * 1968-12-13 1971-04-06 Ibm Method and apparatus for increasing image resolution
US4437122A (en) * 1981-09-12 1984-03-13 Xerox Corporation Low resolution raster images
JP2589298B2 (ja) * 1987-01-28 1997-03-12 キヤノン株式会社 符号化画像データの復号化装置
US4783840A (en) * 1987-12-04 1988-11-08 Polaroid Corporation Method for enhancing image data by noise reduction or sharpening
US4941190A (en) * 1988-07-15 1990-07-10 Minnesota Mining And Manufacturing Company Method and system for enhancement of a digitized image
GB2229059B (en) * 1989-03-07 1993-08-04 Sony Corp Obtaining access to a two-dimensional portion of a digital picture signal
US5200840A (en) * 1989-07-07 1993-04-06 Kabushiki Kaisha Toshiba Image processing apparatus
US5282057A (en) * 1990-04-23 1994-01-25 Xerox Corporation Bit-map image resolution converter
GB9020079D0 (en) * 1990-09-14 1990-10-24 Crosfield Electronics Ltd Image enhancement
WO1992012495A1 (en) * 1990-12-31 1992-07-23 E.I. Du Pont De Nemours And Company Method of resizing an image, designing a filter therefor, and mapping the output image to the input image
US5270728A (en) * 1991-04-17 1993-12-14 Hewlett-Packard Company Raster imaging device speed-resolution product multiplying method and resulting pixel image data structure
IL115166A (en) * 1991-04-30 1997-02-18 Scitex Corp Ltd Apparatus and method for descreening
US5151783A (en) * 1991-06-05 1992-09-29 Faroudja Y C Digital television with enhancement
KR100206267B1 (ko) * 1991-08-20 1999-07-01 윤종용 화상처리장치의 화상데이타 경계성분 강조회로
US5377018A (en) * 1992-06-22 1994-12-27 Media Vision Video compression and decompression using block selection and subdivision
JP2526532B2 (ja) * 1992-10-14 1996-08-21 日本プレシジョン・サーキッツ株式会社 画像処理用デジタルフィルタ
US5270836A (en) * 1992-11-25 1993-12-14 Xerox Corporation Resolution conversion of bitmap images
ATE247308T1 (de) * 1993-01-22 2003-08-15 Olympus Optical Co Bildprozessor
US5394485A (en) * 1993-03-17 1995-02-28 Hewlett-Packard Company Method and apparatus for smoothed scaling of facsimile images
US5313287A (en) * 1993-04-30 1994-05-17 Hewlett-Packard Company Imposed weight matrix error diffusion halftoning of image data
US5717789A (en) * 1993-09-08 1998-02-10 California Institute Of Technology Image enhancement by non-linear extrapolation in frequency space
JP3488729B2 (ja) * 1993-09-10 2004-01-19 富士ゼロックス株式会社 カラー画像処理方法および装置
JP3590996B2 (ja) * 1993-09-30 2004-11-17 ソニー株式会社 ディジタル画像信号の階層符号化および復号装置
US5696845A (en) * 1993-12-17 1997-12-09 Xerox Corporation Method for design and implementation of an image resolution enhancement system that employs statistically generated look-up tables
US5387985A (en) * 1993-12-17 1995-02-07 Xerox Corporation Non-integer image resolution conversion using statistically generated look-up tables
US5579445A (en) * 1993-12-17 1996-11-26 Xerox Corporation Image resolution conversion method that employs statistically generated multiple morphological filters
US5446804A (en) * 1994-04-14 1995-08-29 Hewlett-Packard Company Magnifying digital image using edge mapping
US5539866A (en) * 1994-05-11 1996-07-23 Xerox Corporation Method and apparatus for accurately rendering half-bitted image pixels
AUPM701394A0 (en) * 1994-07-22 1994-08-18 Monash University A graphical display system
US5528339A (en) * 1994-08-26 1996-06-18 Eastman Kodak Company Color image reproduction of scenes with color enhancement and preferential tone mapping
US5671298A (en) * 1994-08-30 1997-09-23 Texas Instruments Incorporated Image scaling using cubic filters
US5552825A (en) * 1994-11-08 1996-09-03 Texas Instruments Incorporated Color resolution enhancement by using color camera and methods
AU4006295A (en) * 1994-11-23 1996-06-17 Minnesota Mining And Manufacturing Company System and method for adaptive interpolation of image data
US5689343A (en) * 1995-05-26 1997-11-18 Xerox Corporation Area mapping employing reference clusters for high quality noninteger resolution conversion with enhancement
EP0753828B1 (de) * 1995-07-13 2002-10-02 Fuji Photo Film Co., Ltd. Verfahren und Vorrichtung zum Interpolieren von Bildsignalen
US5703618A (en) * 1995-11-22 1997-12-30 Cirrus Logic, Inc. Method and apparatus for upscaling video images when pixel data used for upscaling a source video image are unavailable
US5734802A (en) * 1996-02-29 1998-03-31 Xerox Corporation Blended look-up table for printing images with both pictorial and graphical elements
US5778158A (en) * 1996-03-04 1998-07-07 Hewlett-Packard Company High speed system for image scaling
US5758034A (en) * 1996-09-26 1998-05-26 Xerox Corporation Video path architecture including logic filters for resolution conversion of digital images

Also Published As

Publication number Publication date
US20030026504A1 (en) 2003-02-06
JPH10302059A (ja) 1998-11-13
US6058248A (en) 2000-05-02
EP0874330B1 (de) 2004-03-24
EP0874330A2 (de) 1998-10-28
EP0874330A3 (de) 2000-05-03
US6466702B1 (en) 2002-10-15
US20040013320A1 (en) 2004-01-22
DE69822545D1 (de) 2004-04-29
US6683998B2 (en) 2004-01-27
US6075926A (en) 2000-06-13

Similar Documents

Publication Publication Date Title
DE69822545T2 (de) Bildverbesserung unter Benutzung einer Flächeninterpolation
DE69931549T2 (de) Vorrichtung und Verfahren zur Interpolation von Bilddaten
DE69812800T2 (de) Verfahren und Gerät zur Bildverbesserung
DE60009644T2 (de) Farbtonumsetzung unter Verwendung lokaler Information
DE60031337T2 (de) Geräteabhängige Darstellung von Zeichen
DE60320178T2 (de) Verfahren und System zur Verbesserung von Portraitbildern
DE69826044T2 (de) Vektorkartenplanarisierung und -einfang
DE69532016T2 (de) Bildverarbeitungsgerät und -verfahren
DE69935120T2 (de) Automatische Verbesserung der Druckqualität basiert auf Grösse, Form, Orientierung und Farbe von Strukturen
DE69920791T2 (de) Vorrichtung und Verfahren zur Interpolation von Bilddaten
DE69630353T2 (de) Rechnerkalibrierung eines Farbdruckbildes mittels stufenweiser Verbesserung
DE60033484T2 (de) Umsetzung des Farbtonbereichs mit Erhaltung der lokalen Luminanzdifferenzen
DE60111816T2 (de) Adaptives Filterverfahren und -vorrichtung zur Entrasterung abgetasteter Halbtonbilddaten
DE60020038T2 (de) Verfahren zum Verarbeiten eines numerischen Bildes
DE60127016T2 (de) Verfahren und Gerät zur Durchführung einer lokalen Farbkorrektur
DE60302924T2 (de) Anpassungsfähige nichtlineare Bildvergrösserung mittels Wavelet-Transformkoeffizienten
DE10204751B4 (de) Verfahren zur Konvertierung eines Linework Datenformats in das Format einer Seitenbeschreibungssprache
DE112006003272T5 (de) Verfahren und Vorrichtung zum Entfernen von Rauschen aus einem digitalen Bild
DE10319094A1 (de) Verfahren und Vorrichtung zum Zuordnen einer Farbverbesserung zu einer Farbe
DE60100247T2 (de) Verfahren zur Verarbeitung und Bezahlung von erweiterten digitalen Farbtonbildern
DE69928775T2 (de) Verfahren und vorrichtung zur interpolation von bilddaten sowie medium für ein bilddateninterpolationsprogramm
EP1692640B1 (de) Verfahren und system zum verarbeiten von druckdaten mindestens einer druckseite
DE60033479T2 (de) Bilderzeugungssystem und -verfahren
EP1842361B1 (de) Verfahren, computerprogramm, computer und drucksystem zum trapping von bilddaten
DE69724200T2 (de) Verfahren und Vorrichtung zur Erzeugung einer digitalen Bilddarstellung

Legal Events

Date Code Title Description
8332 No legal effect for de
8370 Indication of lapse of patent is to be deleted
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee