DE10223751B4 - System und Verfahren zum Kombinieren von Graphikformaten in einer digitalen Videopipeline - Google Patents

System und Verfahren zum Kombinieren von Graphikformaten in einer digitalen Videopipeline Download PDF

Info

Publication number
DE10223751B4
DE10223751B4 DE10223751A DE10223751A DE10223751B4 DE 10223751 B4 DE10223751 B4 DE 10223751B4 DE 10223751 A DE10223751 A DE 10223751A DE 10223751 A DE10223751 A DE 10223751A DE 10223751 B4 DE10223751 B4 DE 10223751B4
Authority
DE
Germany
Prior art keywords
image
stages
pipeline
graphics
bitmap
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
DE10223751A
Other languages
English (en)
Other versions
DE10223751A1 (de
Inventor
Robert D. San Diego Bushey
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of DE10223751A1 publication Critical patent/DE10223751A1/de
Application granted granted Critical
Publication of DE10223751B4 publication Critical patent/DE10223751B4/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
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining

Abstract

Bildprozessor mit folgenden Merkmalen:
einer Graphikpipeline (109), die eine erste Mehrzahl von Stufen (111–115) umfaßt, die konfiguriert sind, um ein Graphikobjekt zu verarbeiten;
einer Bittabellenbildpipeline (100), die eine zweite Mehrzahl von Stufen (102–108) umfaßt, die konfiguriert sind, um ein Bittabellenbild zu verarbeiten; und
einer auswählbar konfigurierbaren Verbindungsmatrix (140), die einen Bildpfad definiert, zum Liefern ausgewählter Ausgangsdaten von einer oder mehreren der Stufen einer der Pipelines zu ausgewählten Eingängen einer oder mehrerer der Stufen der anderen der Pipelines.

Description

  • Die vorliegende Erfindung bezieht sich allgemein auf eine Bildverarbeitung und insbesondere auf eine Vorrichtung und ein Verfahren zum Kombinieren einer objektorientierten Graphik- und einer Rastergraphikverarbeitungspipeline.
  • Bilder können üblicherweise unter Verwendung eines von zwei Typen von Abbildungsinformationen dargestellt und angezeigt werden: Rastergraphiken (oder Bittabellendaten) und Graphikobjekten. Üblicherweise werden digitale Bilder, die durch einen Computer erzeugt werden, unter Verwendung einer Farbtriade roter, grüner und blauer (RGB) phosphoreszierender Punkte auf eine Anzeigevorrichtung (Monitor) angezeigt. Eine Computeranzeige besteht aus Zeilen und Spalten von Pixeln. Jedes Pixel ist eine Triade phosphoreszierender Punkte (RGB). Die Intensitäten von Rot, Grün und Blau in jedem Pixel werden gesteuert, um verschiedene Farben auf der Computeranzeigevorrichtung zu simulieren. Ein digitales Bild wird auf einer Computeranzeigevorrichtung durch ein Adressieren jeder Triade dreier Punkte, die ein Pixel bilden, und ein Definieren der RGB-Intensitäten angezeigt.
  • Die Pixelbeleuchtungsinformationen werden als Grobrasterdaten von dem Computer zu der Anzeige gesendet und bestehen aus Intensitäten der RGB-Pixel, üblicherweise beginnend mit dem oberen linken Pixel auf dem Computerbildschirm, gefolgt von Intensitätswerten für die roten, grünen und blauen Pixel in jeder der nachfolgenden Pixelgruppen in dieser ersten Zeile entlang des oberen Endes des Computerbildschirms. Sobald die obere Zeile abgeschlossen ist, fahren die Grobrasterdaten mit dem Pixel ganz links in der zweiten Zeile des Computerbildschirms fort, wobei ähnlich jede Gruppe von Pixeln, die in dem Computerbildschirm enthalten sind, mit einem Intensitätswert für jedes der Pixel in der Pixelgruppe von den Grobrasterdaten versorgt wird. Auf diese Weise erzeugt der Computer ein digitales Bild, das auf dem Computerbildschirm angezeigt wird, der für einen Betrachter wie ein Bild aussieht. Diese Struktur von Pixelbeleuchtungsinformationen wird üblicherweise als eine „Bittabelle" („Bitmap") oder als ein „bitabgebildetes" („bitmapped") Bild bezeichnet, wobei anders ausgedrückt jedes Pixel auf dem Bildschirm auf einen Wert abgebildet wird, der in einem zweidimensionalen Speicherarray gespeichert ist, das dem Pixelentwurf der Anzeige entspricht, wobei jedes Speicherelement einen entsprechenden Pixelleuchtdichtenwert von 0 bis 255 speichert.
  • Eingangsvorrichtungen, wie z. B. Digitalkameras und Camcorder, können ein Bayer-Filter verwenden, das eine Bayer-Struktur von vier zusammengruppierten Farbsensoren implementiert, wobei der obere linke Sensor empfindlich gegenüber Grün ist, wobei der obere rechte Sensor empfindlich gegenüber Blau ist, wobei der untere linke Sensor empfindlich gegenüber Rot ist, und wobei der untere rechte Sensor empfindlich gegenüber Grün ist. Das Sensorelement wiederholt sich in einer bekannten Struktur. Die beschriebene Bayer-Struktur ist ein Standardeingangssensorfarbformat für die Ausrichtung der roten, grünen und blauen Pixel, wobei es für Fachleute offensichtlich ist, daß verschiede Permutationen dieser Struktur möglich sind und in der Computerindustrie verwendet werden.
  • Der Computer kann eine Anzahl von Prozessen oder Schritten bezüglich des Rohbittabellenbildes durchführen, das von einem Sensor erfaßt wird, um den ästhetischen Wert des Gesamtbildes zu erhöhen. Die Farbe, die aus dem Feld von vier Sensor-Bayer-Gruppen (bestimmt durch die Intensitäten der Sensoren selbst) resultiert, kann mit der Farbe umgebender Sensoren verglichen werden, wobei die abgeleiteten RGB-Triade-Intensitätswerte festgelegt und eingestellt werden können, um sicherzustellen, daß eine allmähliche Verände rung der Farben z. B. bei der Farbgebung des Gesichts einer Person auftritt, wie dieses schließlich als ein digitales Bild angezeigt wird. Gemeinsam legen diese einzelnen Schritte beim Einstellen der Farbe, die aus Sensoren oder Pixelgruppen resultiert, durch ein Einstellen der Intensitäten der Farbelemente eine Bittabellenpipeline oder eine Grobrasterpipeline fest. Das Bittabellenbild, das das digitale Bild bildet, ist für den Computer eine Serie oder Folge von Farbintensitätswerten.
  • Ein Computer kann typischerweise auch ein Graphikbild unter Verwendung objektorientierter Graphiken erzeugen, um eines oder mehrere Graphikgrundelemente zu erzeugen, wie z. B. Punkte, Linien, Vielecke, alphanumerische Zeichen, Spezialsymbole und Schriftarten, usw., und um diese zugrundeliegenden Graphikgrundelemente zu kombinieren, um das Gesamtbild darzustellen. Ein Quadrat z. B., das ein standardmäßiges Graphikgrundelement ist, würde als Daten dargestellt werden, die erforderlich sind, um ein derartiges Quadrat aufzubauen, wie z. B. Größe, Ort, Linien- und Füllfarbe, usw., um so ein graphisches Quadratbild zu bilden. Eine Person jedoch, die in einem Graphikbild enthalten ist, wäre aus einer Anzahl einzelner Graphikgrundelemente zusammengesetzt, die, wenn sie zusammengesetzt werden, wie eine Person oder ein anderes komplexes Objekt aussehen, das aus einer Mehrzahl von Grundelementen besteht. Heute gibt es Erkennungssoftware, die eine Bittabelle oder ein digitales Rastergraphikbild in eine objektorientierte Graphikdarstellung des digitalen Bildes umwandelt. Diese Algorithmen variieren in ihrer Fähigkeit, wobei die Graphikdarstellung des digitalen Bildes eine direkte Funktion der Fähigkeit des Algorithmus ist, der bei der Umwandlung verwendet wird. Wenn dieser Algorithmus z. B. bezüglich des digitalen Bildes einer Person verwendet wird, ist die Qualität des Aussehens des Graphikbildes der Person eine direkte Funktion der Qualität der Algorithmen, die das digitale Rasterbild der Person in eine objektorientierte Graphikdarstellung der Person umwandeln.
  • Sobald ein digitales Bild in eine objektorientierte Graphikdarstellung umgewandelt ist, kann der Computer die Position und Ausrichtung der verschiedenen Grundelemente verändern, die das digitale Bild darstellen, um eine Bewegung der Graphikdarstellung zu simulieren. Wenn z. B. ein digitales Bild einer Person in eine Graphikdarstellung umgewandelt wird, kann die Ausrichtung der objektorientierten Graphikgrundelemente, die verwendet werden, um die Beine der Person darzustellen, variiert werden, um das Gehen einer Person zu simulieren. Mit einer Verbesserung der Komplexität der Graphikbilder und der simulierten Bewegung nähert sich die Qualität des Graphikgesamtbildes einem echten oder nichtkünstlichen Bild an.
  • Die Graphikdaten, die auf einem Computerbildschirm angezeigt werden sollen, gelangen durch eine Anzahl von Stufen, um das Gesamtaussehen des Bildes zu verbessern. Anders ausgedrückt kann das Graphikbild durch eine Graphikpipeline geleitet werden, die das Aussehen des resultierenden Graphikgesamtbildes verbessert, verschiedene Korrekturen durchführt und Grundelemente und Bestandteilskomponenten in ein geeinigtes Bild zusammenführt.
  • Wie bereits besprochen wurde, resultieren die Bilder, die auf einem Computerbildschirm angezeigt sind, normalerweise entweder von einem objektorientierten Graphikbild oder einem Bittabellen-(Rasterabtast-) Bild. Wenn Bittabellenbilder angezeigt werden, wird eine Bittabellen- oder Rasterpipeline verwendet, um die Farbintensitäten der Pixel einzustellen, bevor das Bild auf dem Computerbildschirm angezeigt wird. Wenn objektorientierte Graphikbilder angezeigt werden, werden die Graphikbilder durch eine Graphikpipeline geleitet, um die Grundelemente zur Betrachtung in ein zusammengesetztes Bild zusammenzubauen. Während frühere Systeme Abschnitte oder Fenster auf dem Bildschirm getrennt haben, in dem ein Bittabellenbild oder ein objektorientiertes Graphikbild angezeigt werden kann, ähnlich wie bei dem „Bild-in-Bild"-Merkmal moderner Fernsehgeräte, ist das Bild in einem Bereich oder Fenster des Bildschirms noch immer entweder ein Bittabellenbild oder ein objektorientiertes Graphikbild, da diese Bilder durch unterschiedliche Graphikleitungen kommen.
  • Es existieren Probleme, wenn sowohl objektorientierte (d. h. Vektor-) als auch Bittabellen- (d. h. Raster-) Graphiken und -Bilder austauschbar effektiv und effizient verarbeitet werden sollen.
  • Die US-Patentschrift US-5,943,064 bezieht sich auf eine Vorrichtung zum Verarbeiten mehrerer Typen von Graphikdaten für eine Anzeige. Eine Controllerkarte ist vorgesehen, die die Verarbeitung und Anzeige von zwei Typen von Graphikpixeldaten für eine Anzeige in zwei Umgebungen ermöglicht. Die Karte enthält einen ersten Graphik-Controllerchip, der mit dem Videoerfassungsport eines zweiten Graphik-Controllerchips gekoppelt ist. In einem ersten Modus kann die erste Chipgraphik Pixeldaten für eine Anzeige in einer ersten Umgebung erzeugen. Die Pixeldaten werden in dem Speicher des zweiten Chips, der für Graphikpixeldaten reserviert ist, gespeichert und zu einer Anzeigevorrichtung übertragen, die mit dem zweiten Chip gekoppelt ist. In einem zweiten Modus kann der Videoerfassungsport mit einer Videoquelle gekoppelt werden, so dass Daten, die an dem Videoport erfasst werden, in dem Speicher des Chips gespeichert werden, der für Videopixeldaten reserviert ist. Der zweite Chip kann dann sowohl Videopixeldaten als auch einen zweiten Typ von Graphikpixeldaten, die von dem zweiten Chip erzeugt werden und in dem Speicher des zweiten Chips gespeichert sind, die für Graphikpixeldaten reserviert sind, verarbeiten und an die Anzeigevorrichtung ausgeben.
  • Wie nun beispielhaft Bezug nehmend auf 3 der US-Patentschrift US-5,943,064 dargestellt ist, kann die Videoanzeigemaschine eine Horizontal-Filterungseinrichtung (H-Filterung) enthalten, die die Videodaten filtert, um Rau schen oder Hintergrundinformationen zu entfernen. Die Videoanzeigemaschine kann ferner eine Horizontal/Vertikal-Skalierungs- und Farbraumumwandlungseinrichtung (CSC) aufweisen. Der Skalierungsabschnitt dieser Vorrichtung kann das Videobild sowohl in der horizontalen als auch vertikalen Richtung nach oben oder nach unten skalieren, damit dasselbe entweder größer erscheint, um beispielsweise die Anzeigevorrichtung vollständig zu füllen, oder um kleiner zu erscheinen, damit dasselbe auf die Anzeigevorrichtung passt. Dieses nach unten Skalieren, um die Größe des Bildes zu reduzieren, kann Busbandbreite einsparen, wenn die Videodaten zu und von dem Speicher übertragen werden, und dies kann Speicher einsparen, wenn die Videodaten gespeichert werden. Die Farbraumumwandlungsoperation kann verwendet werden, um das Videobild von einem Farbraum, wie z. B. dem YUV-Farbraum, in einen anderen Farbraum, wie z. B. den RGB-Farbraum, umzusetzen. Ein Videobild kann konvertiert werden, falls sich dasselbe in einem Farbraum befindet, der sich von dem Farbraum unterscheidet, der optimalerweise von der Anzeigevorrichtung verwendet wird. Die Videoanzeigemaschine kann ferner weitere bekannte Funktionen, die für Videodaten spezifisch sind, durchführen, wie z. B. De-Interlacing- und Dithering-Operationen.
  • Die wissenschaftliche Veröffentlichung (Park, H.; EO, K.; Kim, D. [u.a.]: „Two Widely-Different Architectural Approaches to Computer Image Generation", 1991, IEEE Visualization, S. 42–49, ISBN: 0-8186-2245-8) bezieht sich auf zwei unterschiedliche Architekturansätze zur Computerbilderzeugung. Das UWGSP3 und UWGSP4-System (UWGSP = University of Washington Graphics System Processor) verwenden parallele Architekturen und Pipeline-Architekturen für Hochleistungsgraphikoperationen. Das UWGSP3-System verwendet lediglich handelsüblich verfügbare Off-The-Shelf-Chips und besteht aus einem TMS34020-Graphiksystemprozessor und vier TMS34082-Gleit, Koprozessoren, die in Pipeline- oder SIMD-Betriebsmodi abhängig von dem Algorithmus konfiguriert werden können. Das UWGSP4-System verwendet zweckgebundene ASIC-Chips (ASIC = Application Specific IC) für eine höhere Leistungsfähigkeit und besteht aus zwei Hauptrechenteilen, nämlich einem parallelen Vektorprozessor mit 16 Vektorverarbeitungseinheiten, die hauptsächlich zur Bildverarbeitung verwendet werden, und einem Graphikteilsystem, das eine parallele Pipeline-Architektur zur Bildsynthese verwendet.
  • Es ist die Aufgabe der vorliegenden Erfindung, einen Bildprozessor mit verbesserten Charakteristika oder ein verbessertes Verfahren zum Verarbeiten eines Bildes zu schaffen.
  • Diese Aufgabe wird durch einen Bildprozessor gemäß Anspruch 1 oder 19 oder ein Verfahren zum Verarbeiten eines Bildes gemäß Anspruch 10 gelöst.
  • Der Bedarf nach einer effektiven und effizienten Verarbeitung von sowohl objektorientierten als auch Bittabellengraphiken und -Bildern wird durch ein System und ein Verfahren zum Kombinieren einer objektorientierten (oder „Vektor"-) Graphik- und einer Rasterabtast- (oder „bitabgebildeten" oder „Bittabellen"-Bild-) Pipeline erzielt, so daß Bilddaten durch ausgewählte Stufen von einer und/oder beiden Pipelines verarbeitet werden können. Dies bedeutet, daß eine objektorientierte Graphikpipeline mehrere Verarbeitungsstufen umfassen kann, die konfiguriert sind, um sequentiell Graphikdaten zu verarbeiten, wobei die Graphikdaten Daten umfassen können, um eines oder mehrere Graphikgrundelemente, wie z. B. Punkte, Linien, Vielecke, alphanumerische Zeichen, Spezialsymbole und Schriftarten, usw., zu erzeugen. Beispiele möglicher Graphikverarbeitungsstufen bei der objektorientierten Graphikpipeline können eine Kombination oder Unterkombination einer Abtastumwandlung („Scan Conversion"), eines Abschneidens („Clipping"), einer Fensterung in einen Betrachtungsport („Windowing to Viewport"), einer Projektion, eines Sortieren umfassen und/oder können andere oder Ersatzfunktionalitäten oder anderes umfassen. Ähnlich kann eine bitabgebildete oder Rasterabtastpipeline mehrere Verarbeitungsstufen umfassen, die konfiguriert sind, um aufeinanderfolgend bitabgebildete Daten zu verarbeiten, die ein Bild als eine Mehrzahl von Pixelleuchtdichtenwerten und/oder anderen Pixelcharakteristika darstellen. Diese bitabgebildeten oder Rasterabtastpipelineverarbeitungsstufen können eine Kombination oder Unterkombination von (i) Mosaikrückbildung, (ii) Farbkorrektur/Weißabgleich, (iii) Farbpalettenabbildung, (iv) Tonkorrektur, (v) Flimmerkorrektur, (vi) Farbumwandlung, (vii) Skalierung umfassen und/oder eine andere oder Ersatzfunktionalitäten oder anderes umfassen. Vorzugsweise sorgt der Prozessor für eine selektive Sequenzierung durch jede Pipeline und für ein „Überkreuzen" von Daten zwischen Stufen jeder Pipeline, was eine notwendige Datenumwandlung umfaßt (z. B. Vieleckerkennung und Umwandlung bitabgebildeter Bilder, um objektorientierte Graphikdaten zu bilden, und ähnliche Umwandlung von objektorientierten Graphikformatdaten in ein Bittabellendatenformat).
  • Gemäß einem Aspekt der Erfindung kann ein Bildprozessor eine objektorientierte Graphikpipeline, die eine erste Mehrzahl von Stufen aufweist, die konfiguriert sind, um ein Graphikobjekt zu verarbeiten, und eine Bittabellenbildpipeline umfassen, die eine zweite Mehrzahl von Stufen aufweist, die konfiguriert sind, um ein Bittabellenbild zu verarbeiten. Eine Verbindung kann selektiv konfigurierbar sein, um einen Ausgang aus einer der Stufen einer der Pipelines (d. h. entweder der Graphik- oder der Bittabellenpipeline) zu einem Eingang einer nächsten ausgewählten oder Vorgabestufe (falls vorhanden) der gleichen Pipeline oder zu einer ausgewählten Stufe (oder Stufen) der anderen Pipeline zu liefern. Gemäß einem Merkmal der Erfindung kann jede der ersten Mehrzahl von Stufen (d. h. Stufen der Graphikpipeline) eine unterschiedliche Funktion durchführen, wobei die Funktionen eines oder mehrere Merkmale der Gruppe umfassen (jedoch nicht auf dieselben beschränkt sind), die eine Abtastumwandlung, ein Abschneiden, eine Fensterung in einen Betrachtungsport, eine Projektion und eine Sortierung umfaßt. Ähnlich kann gemäß einem weiteren Merkmal der Erfindung jede der zweiten Mehrzahl von Stufen (d. h. die Stufen der Bittabellenbildpipeline) eine unterschiedliche Funktion durchführen, wobei die Funktionen eines oder mehrere Merkmale der Gruppe umfassen (jedoch nicht auf dieselben beschränkt sind), die folgendes umfaßt: Mosaikrückbildung, Farbkorrektur/Weißabgleich, Farbpalettenabbildung, Tonkorrektur, Flimmerkorrektur, Farbumwandlung und Skalierung.
  • Gemäß einem weiteren Merkmal der Erfindung kann eine Ausgangsstufe mit einem Ausgang von jeder der Pipelines (z. B. von einer ausgewählten Stufe sowohl der Graphik- als auch der Bittabellenbildpipeline) verbunden sein. Die Verbindung zwischen den Pipelines kann eine Schaltmatrix umfassen, die konfigurierbar ist, um Ausgänge von einer oder mehreren der ersten Mehrzahl von (Graphik-) Stufen zu einer bestimmten oder ausgewählten nächsten der ersten Mehrzahl von (Graphik-) Stufen und zu einer ausgewählten der zweiten Mehrzahl von (Bittabellenbild-) Stufen zu leiten. Ähnlich kann die Schaltmatrix konfiguriert sein, um Ausgänge von einer der zweiten Mehrzahl von (Bittabellenbild-) Stufen zu einer nächsten der zweiten Mehrzahl von (Bittabellenbild-) Stufen und zu einer ausgewählten der ersten Mehrzahl von (Graphik) Stufen zu leiten. Gemäß einem weiteren Merkmal der Erfindung ist die Graphikpipeline konfiguriert, um Graphikdaten zu empfangen, die Graphikidentifizierungs- und Lokalisierungsdaten umfassen, wobei die Bittabellenbildpipeline konfiguriert ist, um Rasterabtastbilddaten zu empfangen, die Pixelleuchtdichteninformationen darstellen. Ein Datenformatumwandler kann enthalten und konfiguriert sein, um zwischen einem objektorientierten Graphikdatenformat und einem Bittabellenbilddatenformat, d. h. unidirektional von einem oder bidirektional von einem der beiden Formate zu dem anderen, umzuwandeln.
  • Gemäß einem weiteren Merkmal der Erfindung kann eine Bilderkennungsstufe konfiguriert sein, um objektorientierte Graphikbilder in dem bitabgebildeten Bild zu identifizieren und codieren. Die Erkennungsstufe kann z. B. Grundelemente und -Formen, die Vielecke, Polyeder, Linien, Ebenen, Kurven, Bögen, Punkte, Vektoren, Zeichen, Symbole und andere Grundelemente umfassen, und zusammengesetzte Graphikstrukturen in einer Bittabellen- oder rasterbasierten Darstellung erkennen und dieselben in eine geeignete objektorientierte Graphikdatendarstellung umwandeln. Die Umwandlung kann ein Löschen der umgewandelten Abschnitte von dem ursprünglichen Bittabellenbild umfassen, so daß ein verbleibender Abschnitt desselben geeignet verarbeitet werden kann, während die umgewandelten Objekte einer Graphikpipelineverarbeitung unterzogen werden. Ein gemeinsamer Instruktionsdecodierer kann enthalten sein, der wirksam ist, um die Verbindung (z. B. eine Schaltmatrix) zu steuern, um zumindest eines der Graphikobjekte und der bitabgebildeten Bildobjekte zwischen sowohl der Graphik- als auch der Bittabellenbildpipeline zu leiten.
  • Gemäß einem weiteren Aspekt der Erfindung kann ein Verfahren zum Verarbeiten eines Bildes eine selektive Konfiguration einer oder mehrerer Stufen einer objektorientierten Graphikpipeline und einer oder mehrerer Stufen einer Bittabellenbildpipeline umfassen. Die resultierende Konfiguration kann bewirken, daß ein Ausgang von einer der Stufen einer der Pipelines zu einem Eingang einer der Stufen der anderen der Pipelines geliefert wird, und kann eine Verarbeitung eines Bildes durch eine Übertragung des Bildes durch zumindest eine der Stufen jeder Pipeline bewirken.
  • Gemäß einem Merkmal der Erfindung kann sich ein Verarbeiten, das durch jede der Graphikpipelinestufen durchgeführt wird, von einer Verarbeitung unterscheiden, die durch die anderen Stufen dieser Pipeline durchgeführt wird, und kann aus der Verarbeitungsgruppe ausgewählt werden (ist jedoch nicht auf dieselbe beschränkt), die eine Abtastumwandlung, ein Abschneiden, eine Fensterung in einen Betrachtungsport, eine Projektion und ein Sortieren umfaßt. Ähnlich kann sich die Verarbeitung, die durch jede der Stufen der Bittabellenbildpipeline durchgeführt wird, von der Verarbeitung unterscheiden, die durch die anderen Stufen durchgeführt wird, und kann aus der Verarbeitungsgruppe ausgewählt werden (ist jedoch nicht auf dieselbe beschränkt), die eine Mosaikrückbildung, eine Farbkorrektur/Weißabgleich, eine Farbpalettenabbildung, eine Tonkorrektur, eine Flimmerkorrektur, eine Farbumwandlung und eine Skalierung umfaßt.
  • Gemäß einem weiteren Merkmal der Erfindung kann ein Kombinationsschritt einen zusammengesetzten Ausgang aus Signalen oder Daten bilden, die durch Ausgänge beider Pipelines geliefert werden.
  • Gemäß einem weiteren Merkmal der Erfindung kann der Schritt des selektiven Konfigurierens der Pipelines ein alternatives Leiten von Ausgängen von einer oder mehreren Stufen zu einer nächsten der Stufen oder zu einer ausgewählten der Stufen der anderen Pipeline umfassen. Objektorientierte Graphikdaten können durch die Graphikpipeline in einem Format weitergeleitet werden, das Graphikidentifizierungs- und Lokalisierungsdaten umfaßt, und/oder Rasterabtast- (oder Bittabellen-) Bilddaten, die einzelne Pixelcharakteristika (z. B. Leuchtdichte, Farbe oder andere Pixelanzeigeinformationen, usw.) darstellen, können durch die Bittabellenbildpipeline geleitet werden. Ein Umwandlungsschritt kann enthalten sein, um zwischen einem objektorientierten Graphikdatenformat und einem Bittabellenbilddatenformat umzuwandeln (d. h. eine Datenumwandlung in eine oder beide Richtungen durchführen). Ein Bilderkennungsschritt kann für eine Identifizierung und Codierung der Graphikbilder in dem Bittabellenbild sorgen. Gemäß einem weiteren Merkmal der Erfindung liefert ein Schritt des Steuerns einer Verbindung ein Leiten des Graphikobjekts oder des Bittabellenbildob jekts (oder beider) zwischen der Graphik- und der Bittabellenbildpipeline.
  • Gemäß einem weiteren Aspekt der Erfindung kann ein Prozessor zwei Pipelineeinrichtungen umfassen, wobei eine erste Pipelineeinrichtung eine Mehrzahl von Graphikbildverarbeitungseinrichtungen zur Verarbeitung eines objektorientierten Graphikbildes umfassen kann, und wobei eine zweite Pipelineeinrichtung eine Mehrzahl von Bittabellenbildverarbeitungseinrichtungen zur Verarbeitung eines Bittabellenbildes umfassen kann. Eine Verbindungseinrichtung kann selektiv einen Ausgang von einer Verarbeitungseinrichtung einer der Pipelineeinrichtungen mit einem Eingang einer der Verarbeitungseinrichtungen der anderen der Pipelineeinrichtungen verbinden.
  • Das Vorausgegangene hat relativ allgemein bestimmte Merkmale und technische Vorteile der vorliegenden Erfindung herausgestellt, so daß die detaillierte Beschreibung der Erfindung, die nun folgt, besser verständlich ist. Zusätzliche Merkmale und Vorteile der Erfindung werden im folgenden beschrieben, die den Gegenstand der Ansprüche der Erfindung bilden. Es ist für Fachleute offensichtlich, daß die Konzeption und das spezifische offenbarte Ausführungsbeispiel ohne weiteres als eine Basis zum Modifizieren oder Entwerfen anderer Strukturen zum Ausführen der gleichen Zwecke der vorliegenden Erfindung verwendet werden können. Es sollte für Fachleute ebenfalls ersichtlich sein, daß derartige gleichwertige Aufbauten nicht von dem Bereich und der Wesensart der vorliegenden Erfindung abweichen, wie diese in den beigefügten Ansprüchen dargelegt ist.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegende Zeichnung näher erläutert.
  • Die Figur zeigt ein Blockdiagramm einer kombinierten Pipeline gemäß einem Ausführungsbeispiel der Erfindung, bei dem Stufen einer Bittabellenpipeline mit Stufen einer Graphikpipeline verbunden sind.
  • Eine digitale Bildverarbeitung erfordert ein Verarbeiten eines Bittabellenbildes unter Verwendung einer Bittabellen- oder Rasterpipeline, um ein anzeigbares Bild zu erhalten, das Rot-, Grün- und Blaupixelinformationen enthält. Die Bittabellenpipeline umfaßt eine Zahl von Schritten, in denen das resultierende Bild korrigiert oder manipuliert wird, um sicherzustellen, daß ein genaues, repräsentatives und angenehmes Bild angezeigt wird. Eine digitale Videoanzeige zeigt z. B. üblicherweise 30 Digitalbildrahmen pro Sekunde an, wobei jedes digitale Bild, wie unten beschrieben, durch die Rasterpipeline geleitet wird. Der Computer, der ein digitales Bild oder ein Voll- oder Teilbewegungsdigitalvideo anzeigt, interpretiert das digitale Bild oder die Bilder als eine Kombination von Intensitätswerten für die Pixel, die das digitale Bild bilden, das auf dem Computeranzeigemonitor angezeigt werden soll. Ohne eine zusätzliche Verarbeitung erkennt der Computer keine Objekte, die in dem digitalen Bild oder Video enthalten sind.
  • Der Computer kann jedoch eingeschränkte Modifizierungen von digitalen Bittabellenbildern durchführen. Da der Computer das digitale Bild als eine Serie von Intensitätswerten interpretiert, kann der Computer Intensitätswerte erhöhen oder senken, um jeweilige angezeigte, resultierende Farben zu verdunkeln oder zu reduzieren.
  • Die Figur zeigt eine kombinierte Pipeline, die die Verarbeitungsstufen von sowohl der Bittabellenpipeline als auch die Verarbeitungsstufen der objektorientierten Graphikpipeline gemäß einem Ausführungsbeispiel der Erfindung umfaßt. Verbindungen sind in der kombinierten Pipeline enthalten, die es ermöglichen, daß der Ausgang einer Stufe der Pipeline zu einer anderen Stufe der Pipeline zur weiteren Verarbeitung geleitet wird. Ein Bild in der Form eines Bayer-Struktur-Bittabellenbildes 101 ist z. B. gezeigt, das bei einer Mosaikrückbildungsstufe 102 eine herkömmliche Bittabellenpipeline 100 betritt. Die Mosaikrückbildungsstufe 102 wandelt die Bayer-Struktur-Eingangselemente von Rot-, Grün- und Blautriadenintensitäten für jedes Pixel um und gleicht Artefakte (den Einfluß vorher zugeführter Intensitätswerte) aus. Bei einer herkömmlichen Bittabellenpipeline würden die Ausgangsintensitätswerte der Mosaikrückbildungsstufe 102 in eine Farbkorrektur-und-Weißabgleich-Stufe 103 geleitet. In der Farbkorrektur-und-Weißabgleich-Stufe 103 prüft die Verarbeitungssoftware den Gesamtweißabgleich der Bittabellen, um sicherzustellen, daß die Farben, die jedes Pixel bilden und sich kombinieren sollen, um weiß zu erscheinen, die korrekten Intensitäten für die Kombination aufweisen, um tatsächlich weiß zu erscheinen. Zusätzlich werden die Intensitäten anderer Farben durch ein Einstellen der Intensitäten der roten, grünen und blauen Komponenten eingestellt, so daß die angezeigten Farben so weit wie möglich an die tatsächlichen, beabsichtigten Farben angepaßt sind.
  • Unterschiedliche Vorrichtungen erzeugen spezifische Farben unterschiedlich, wobei eine Farbpalettenabbildungsstufe 104 Farbgebungsunterschiede zwischen verschiedenen Plattformen korrigiert. Dieser Ausgleich korrigiert Unterschiede zwischen verschiedenen Vorrichtungen, wie z. B. Computerbildschirmen, Druckern, Plottern oder einer anderen Vorrichtung, bei der das Bild angezeigt oder aufgenommen werden soll. Der Zweck der Farbpalettenabbildung 104 besteht darin, Unterschiede zu beseitigen, die von einem Farbraum zu einem anderen Farbraum auftreten können, so daß die resultierenden Farben in dem digitalen Bild genau erzeugt werden. Anders ausgedrückt sollte ein digitales Bild, das auf einem Computerbildschirm angezeigt wird, die gleiche Farbgebung wie eine gedruckte Kopie des digitalen Bildes aufweisen. Die Farbpalettenabbildungsstufe 104 soll eine getreue Bildwiedergabe verbessern.
  • Eine Tonkorrekturstufe 105 ist auch in der Videopipeline enthalten, um Farbabweichungen von Pixel zu Pixel zu besei tigen oder zu reduzieren, wenn beide Pixel die gleiche Farbe darstellen. Wenn z. B. in der Mitte eines Diagramms ein quadratischer roter Kasten ist, wobei die Farbe des Kastens in sich konsistent ist, prüft die Tonkorrektur die Bestandteilspixelfarbkomponenten des quadratischen roten Kastens und stellt die Intensitäten der roten, grünen und blauen Komponenten ein, um identisch zu sein.
  • Eine Flimmerkorrekturstufe 106 ist auch in der Rohbildpipeline enthalten, um die Effekte weißen Lichts bei dem ursprünglichen Bild zu steuern, sowie, wie das weiße Licht das resultierende Bild beeinflußt. Wenn z. B. ein Teil des quadratischen roten Kastens, der oben besprochen wurde, mit einem weißen Scheinwerfer beleuchtet wird, während ein weiterer Abschnitt des quadratischen roten Kastens außerhalb des Lichts von dem Scheinwerfer war, sollte das Vorliegen des weißen Scheinwerfers den Schatten der roten Farbe auf dem quadratförmigen roten Kasten nicht beeinflussen, sondern nur die Beleuchtung dieses Abschnitts des roten Kastens selbst. Die Flimmerkorrekturstufe 106 stellt die Intensitäten jeder Farbkomponente ein, so daß resultierende Farben proportional zwischen Pixeln bei anderen Beleuchtungsbedingungen korrekt bleiben.
  • Eine Farbumwandlungsstufe 107 gleicht Veränderungen der Farbe bei einem einzelnen Objekt aus, wobei eine Skalierungsstufe 108 in der Videopipeline enthalten ist, um das digitale Bild für die erwünschte Anzeige- oder Ausgabevorrichtung zu skalieren. Es ist wichtig anzumerken, daß die Schritte, die in der Bittabellenpipeline 100 der kombinierten Pipeline enthalten sind, beispielhaft für eine mögliche Raster- oder Bittabellenbildverarbeitung gegeben sind, wobei die Unterteilung einer derartigen Verarbeitung in diskrete Stufen, wie dies verwendet werden könnte, um ein spezifisches digitales Bild zu verarbeiten, unter Umständen nicht während der Verarbeitung jedes einzelnen angezeigten Digitalbildes erforderlich ist. Zusätzlich ist die Bittabellenpipeline 100, die in der kombinierten Pipeline ent halten ist, nur eine Sequenz, in der die Verarbeitungsschritte auftreten können. Die Tonkorrekturstufe 105 kann z. B. vor der Farbpalettenabbildungsstufe 106 auftreten. Die Farbpalettenabbildung 106 benötigt Informationen über die beabsichtigten Ausgangsvorrichtungen. Die Farbpalettenabbildung kann bei einigen Fällen der letzte Schritt in der Bittabellenpipeline 100 sein. Die Sequenz von Stufen, und sogar die Zahl von Stufen, durch die ein spezifisches digitales Bild in der Bittabellenpipeline verarbeitet wird, ist flexibel. Gemäß einem Ausführungsbeispiel ist jede der erläuterten Stufen vorzugsweise in der Bittabellenpipeline enthalten, um eine erwünschte Korrektur zu liefern.
  • Ebenfalls in der kombinierten Pipelinestruktur enthalten ist eine objektorientierte Graphikpipeline 109. Ein anfängliches objektorientiertes Graphikbild, wie z. B. eine Linie 110, die durch zwei Endpunkte x1, y1 und z1 und x2, y2 und z2 definiert ist, betritt die Graphikpipeline 109 bei einer Abtastumwandlungsstufe 111. Für eine Linie würde die Abtastumwandlungsstufe 111 algorithmisch eine imaginäre Linie ziehen, die alle Punkt entlang der Linie 110 darstellt. Sobald die Linie algorithmisch bestimmt ist, werden die Pixel, die das Bild der Linie aufbauen, identifiziert und wiedergegeben. Wiedergeben ist der Ausdruck, der verwendet wird, um die Erzeugung des Bildes unter Verwendung geometrischer Modelle und unter Verwendung einer Farbe und Schattierung zu beschreiben, um dem Bild ein realistisches Aussehen zu geben. Die Gesamtfunktion der Abtastumwandlungsstufe 111 kann auch das Verfahren des Umwandelns einer verbindungslosen geometrischen Beschreibung einer Form, wie z. B. eines Vielecks, umfassen, um ein Bild eines Vielecks wiederzugeben.
  • Eine Abschneidstufe 112 tritt auf, wenn ein Bildfenster definiert ist und Abschnitte des wiedergegebenen Bildes, die außerhalb des spezifizierten Bildfensters liegen, aus dem wiedergegebenen Bild entfernt werden. Die Abschneidstufe umfaßt die Anwendung einer Zahl möglicher Algorithmen. Ein Abschneiden kann Fenster mit vom Benutzer definierter Größe und Formen verwenden, um intelligent Abschnitte des Bildes außerhalb des definierten Raums zu entfernen.
  • In der Fensterung-in-einen-Betrachtungsport-Stufe 113 sind orthogonale Koordinaten definiert, üblicherweise u und v, um einen Raum zu definieren, der das Graphikbild umfaßt. Sobald der Raum definiert ist, wird der Raum genormt, indem ein Satz von Algorithmen angewendet wird, die eine geometrische Umwandlung bezüglich des definierten Raums durchführen. Der genormte Raum wird verwendet, um die Komplexität der Projektion, die in einer Projektionsstufe 114 durchgeführt wird, zu minimieren.
  • Die Projektionsstufe 114 definiert verschiedene Projektionen oder Standpunkte zum Betrachten eines Graphikobjekts und des Abschnitts des Graphikobjekts, der von den verschiedenen Standpunkten betrachtet wird. Bei der Projektionsstufe 114 wird die genormte geometrische Form mit einer Mitte der Projektion gepaart, von der ein Strahl projiziert wird, wobei die Abschnitte der geometrischen Form identifiziert werden, die von dieser Mitte der Projektion sichtbar sind. Eine hintere Abschneidebene kann z. B. definiert sein, in der eine Projektion des Bildes erzeugt wird, die die Form des Bildes umfaßt, wie dieses von der Rückseite oder hinter dem Bild erscheinen würde. Ähnlich kann eine vordere Abschneidebene definiert sein, in der eine Projektion des Bildes erfaßt wird, wie dieses von der Vorderseite erscheinen würde. Diese Projektionen können von einem zweidimensionalen Standpunkt oder von einem dreidimensionalen Standpunkt sein. Üblicherweise wird eine Parallelprojektion verwendet, bei der die Mittelprojektion definiert ist, um unendlich zu sein. Die Parallelprojektion ermöglicht es, daß die Projektion des Objekts so erscheint, als ob der Standpunkt eine Ebene parallel zu der Oberfläche des Objekts wäre, und nicht von einem einzelnen Punkt im Raum. Die Mitte der Projektion kann vordefiniert oder durch den Benutzer bestimmt sein.
  • Eine Sortierungsstufe 115 wird üblicherweise plaziert, nachdem ein Ansichtsreferenzpunkt definiert ist. Der Ansichtsreferenzpunkt definiert den Punkt, von dem die Projektion des Objekts auf dem Anzeigebildschirm angezeigt wird. Sobald der Ansichtsreferenzpunkt definiert ist, werden die Projektionen des Bildes, die durch die Projektionsstufen 114 erzeugt wurden, sortiert, um die korrekte Projektion von dem Ansichtsreferenzpunkt zu identifizieren. Einer der Algorithmen, die bei der Sortierungsstufe 115 verwendet werden, ist z. B. ein Rückflächenaussortierungsalgorithmus („Backface Culling Algorithm"), der Oberflächen eliminiert, die von dem Referenzstandpunkt aus hinter dem Graphikobjekt liegen würden. Die Sortierungsstufe 115 stellt die Familie von Algorithmen dar, die die Abschnitte des Graphikbildes bestimmen, die zu sehen sein werden. Ein Tiefensortierungsalgorithmus ist üblicherweise ebenfalls enthalten, um verschiedene Tiefen des Graphikobjekts zu betrachten und geeignet anzuzeigen. Der Ansichtsreferenzpunkt kann vordefiniert oder durch den Benutzer bestimmt sein.
  • Die Ausgänge der objektorientierten Graphikpipeline 109 und der Rasterpipeline 100 werden kombiniert, um einen zusammengeführten Ausgang 116 zu bilden. Der zusammengeführte Ausgang kann entweder aus der letzten Ausgangsstufe der Graphikpipeline 109 oder der Rasterpipeline 100 sein. Alternativ kann der zusammengeführte Ausgang Ausgänge von beiden Pipelines sein, die durch eine geeignete Einrichtung miteinander verbunden sind. Der zusammengeführte Ausgang 116 kann dann auf dem Computerbildschirm oder durch eine andere Vorrichtung angezeigt werden.
  • Die kombinierte Pipeline umfaßt Querverbindungen 117 bis 139, die eine Leitmatrix 140 bilden und die sich zwischen den Stufen der Rasterpipeline und den Stufen der Graphikpipeline befinden. Die Leitmatrix 140 wird durch eine Steuerungslogik 141 gesteuert, die Konfigurationsregister 142 umfaßt, die verwendet werden, um Verbindungen zwischen und unter Pipelinestufen zu definieren, wie diese in der Leitmatrix 140 implementiert sind. Die Steuerungslogik 141 kann eine automatische Steuerung des Pfades umfassen, dem die spezifischen Bilddaten durch die kombinierte Pipeline folgen können. Dieser Pfad kann durch Anwendungssoftwareeinstellungen (vordefiniert oder vom Benutzer gesteuert), Betriebssystemeinstellungen (vordefiniert oder vom Benutzer gesteuert) oder basiert auf im vorhinein festgelegten Regeln abhängig von den Charakteristika der Bilddaten, der Eingangsvorrichtung und/oder der Ausgangsvorrichtung gesteuert werden.
  • Diese Verbindungen ermöglichen es, daß die Bilddaten von jeder Pipeline in ein kombiniertes Bild umgewandelt und durch jede der Stufen verarbeitet werden, die in der kombinierten Pipeline enthalten sind. Sobald die Mosaikrückbildungsstufe 102 ihre Verarbeitung z. B. beendet hat, können die resultierenden Bittabellenbilddaten eine Sequenz von Farbintensitätswerten sein, die das digitale Bild darstellen. Diese Intensitätswerte können über den Pfad 117 zu der Abtastumwandlungsstufe 111 gesandt werden. Bei der Abtastumwandlungsstufe 111 wird das Bild, das aus einer Serie von RGB-Werten besteht, verarbeitet, daß die Software die objektorientierten Graphikobjekte erkennt, die in dem Bittabellenbild enthalten sind. Diese Objekterkennungssoftware befindet sich in der Stufe 143 und ist bidirektional mit dem Ausgang der Stufen verbunden, die in der Bittabellenpipeline 100 enthalten sind. Wenn z. B. das ursprüngliche digitale Bild das einer Person ist, werden zahlreiche Pixel 101 durch die Mosaikrückbildungsstufe 102 verarbeitet. Diese Folge von Pixeln kann nach der Verarbeitung des digitalen Bilds zu der Abtastumwandlungsstufe 111 gesandt werden, wobei das Bild der Person, die in dem digitalen Bild enthalten ist, in eine Serie von objektorientierten geometrischen Formen (d. h. Grundelementen) umgewandelt wird, die sich dem ursprünglichen Bittabellendigitalbild annähern. Sobald die Umwandlung durchgeführt wurde, wandelt die Abtastumwandlungsstufe 111 die geometrischen Objekte in eine dreidimensionale Darstellung der Person um, die in dem digitalen Bild enthalten ist. Die dreidimensionale Darstellung kann dann durch eine der verbleibenden Stufen der Graphikpipeline geeignet verarbeitet werden.
  • Alternativ kann statt der Leitmatrix 140 ein Leiten von Daten zwischen und unter den verschiedenen Pipelinestufen erzielt werden, indem Leitinformationen enthalten sind, die an die zu verarbeitenden Bilddaten angehängt oder denselben anderweitig zugeordnet sind, wie z. B. ein Leitetikett, das einen Pfad durch die kombinierten Pipelines definiert.
  • Umgekehrt ist, wenn ein Graphikgrundelement in der Form einer Linie 110 durch die Abtastumwandlungsstufe 111 empfangen wird, eine dreidimensionale Darstellung dieser Linie üblicherweise das Endergebnis der Abtastumwandlung. Wenn der Benutzer diese dreidimensionale Linie zu der Farbkorrektur/Weißabgleich-Stufe 103 senden möchte, würde die dreidimensionale Linie in eine Bittabellendarstellung umgewandelt werden, die die Linie in einem digitalen Format darstellt. Diese Umwandlung wird durch den Datenformatumwandler 144 durchgeführt, der bidirektional mit dem Ausgang jeder Stufe der objektorientierten Graphikpipeline 109 verbunden ist. Diese RGB-Vier-Pixel-Darstellung könnte dann zur Verbesserung durch jede der verbleibenden Stufen der Bittabellenpipeline 100 gesandt werden.
  • Alternativ und vorzugsweise kann ein kombiniertes Format erzeugt werden, das die bevorzugten Attribute der beiden Verfahren zum Darstellen von Bildern, die Fähigkeit für den Computer, Objekte des objektorientierten Graphikformats zu erkennen und zu manipulieren, und die Fähigkeit, das Bild genau auf dem Computerbildschirm durch das Bittabellenbildformat darzustellen, enthält. Dieses kombinierte Format würde die Notwendigkeit beseitigen, das Bild jedesmal von einer Graphikdarstellung in eine RGB-Pixeldarstellung umzuwandeln, wenn der Benutzer das Bild zu einer Stufe leitet, die üblicherweise in der Bittabellenpipeline enthalten ist, und das Bild von einer RGB-Bittabellendarstellung in eine objektorientierte Graphik-(oder Vieleck-) Darstellung umzuwandeln, wenn Stufen von der Graphikpipeline verwendet werden. Dieses kombinierte Format ist vorzugsweise eine Abbildung zwischen dem RGB-Rasterraum und dem objektorientierten Graphikraum oder kann aus einem Supersatz der beiden Formate bestehen.

Claims (20)

  1. Bildprozessor mit folgenden Merkmalen: einer Graphikpipeline (109), die eine erste Mehrzahl von Stufen (111115) umfaßt, die konfiguriert sind, um ein Graphikobjekt zu verarbeiten; einer Bittabellenbildpipeline (100), die eine zweite Mehrzahl von Stufen (102108) umfaßt, die konfiguriert sind, um ein Bittabellenbild zu verarbeiten; und einer auswählbar konfigurierbaren Verbindungsmatrix (140), die einen Bildpfad definiert, zum Liefern ausgewählter Ausgangsdaten von einer oder mehreren der Stufen einer der Pipelines zu ausgewählten Eingängen einer oder mehrerer der Stufen der anderen der Pipelines.
  2. Bildprozessor gemäß Anspruch 1, bei dem jede der ersten Mehrzahl von Stufen (111115) sich von den anderen unterscheidet und aus der Gruppe von Stufen ausgewählt ist, die eine Abtastumwandlung (111), ein Abschneiden (112), eine Fensterung in einen Betrachtungsport (113), eine Projektion (114) und ein Sortieren (115) umfassen.
  3. Bildprozessor gemäß Anspruch 1 oder 2, bei dem jede der zweiten Mehrzahl von Stufen (102108) sich von den anderen unterscheidet und aus der Gruppe von Stufen ausgewählt ist, die eine Mosaikrückbildung (102), eine Farbkorrektur/einen Weißabgleich (103), eine Farbpalettenabbildung (104), eine Tonkorrektur (105), eine Flimmerkorrektur (106), eine Farbumwandlung (107) und eine Skalierung (108) umfassen.
  4. Bildprozessor gemäß einem der Ansprüche 1 bis 3, der ferner eine Ausgangsstufe (116) aufweist, die mit einem Ausgang von jeder der Pipelines verbunden ist.
  5. Bildprozessor gemäß einem der Ansprüche 1 bis 4, bei dem die Verbindung eine Schaltmatrix aufweist, die konfigurierbar ist, um folgende Schritte durchzuführen: Leiten von Ausgangsdaten von einer oder mehreren der ersten Mehrzahl von Stufen (111115) zu einer nächsten der ersten Mehrzahl von Stufen oder zu einer ausgewählten der zweiten Mehrzahl von Stufen (102108); und Leiten von Ausgangsdaten von einer oder mehreren der zweiten Mehrzahl von Stufen zu einer nächsten der zweiten Mehrzahl von Stufen oder zu einer ausgewählten der ersten Mehrzahl von Stufen.
  6. Bildprozessor gemäß einem der Ansprüche 1 bis 5, bei dem die Graphikpipeline (109) konfiguriert ist, um Graphikdaten (110) zu empfangen, die Graphikidentifizierungs- und Lokalisierungsdaten umfassen, und bei dem die Bittabellenbildpipeline (100) konfiguriert ist, um Rasterabtastbilddaten (101) zu empfangen, die Pixelleuchtdichteninformationen darstellen.
  7. Bildprozessor gemäß einem der Ansprüche 1 bis 6, der ferner einen Datenformatumwandler (144) aufweist, der konfiguriert ist, um zwischen einem Graphikdatenformat und einem Bittabellenbilddatenformat umzuwandeln.
  8. Bildprozessor gemäß einem der Ansprüche 1 bis 7, der ferner eine Bilderkennungsstufe (143) aufweist, die konfiguriert ist, um Graphikbilder in dem Bittabellenbild zu identifizieren und zu codieren.
  9. Bildprozessor gemäß einem der Ansprüche 1 bis 8, der ferner einen gemeinsamen Instruktionsdecodierer umfaßt, der betreibbar ist, um die Verbindung (117139) zu steuern, um zumindest entweder das Graphikobjekt (110) oder das Bittabellenbildobjekt (101) zwischen der Graphikpipeline (109) und der Bittabellenbildpipeline (100) zu leiten.
  10. Verfahren zum Verarbeiten eines Bildes, mit folgenden Schritten: selektives Konfigurieren einer Pipelineverbindungsmatrix (140), um einen Bildpfad durch eine oder mehrere Stufen (111115) einer Graphikpipeline (109) und eine oder mehrere Stufen (102108) einer Bittabellenbildpipeline (100) festzulegen, zum Liefern ausgewählter Ausgangsdaten von einer oder mehreren der Stufen einer der Pipelines zu ausgewählten Eingängen einer oder mehrerer der Stufen der anderen der Pipelines; und Verarbeiten eines Bildes durch eine Übertragung entlang des Bildpfades durch zumindest eine Stufe der Graphikpipeline und der Bittabellenbildpipeline.
  11. Verfahren gemäß Anspruch 10, bei dem das Verarbeiten, das durch jede der Stufen der Graphikpipeline (109) durchgeführt wird, sich von einem Verarbeiten unterscheidet, das durch die anderen durchgeführt wird, und aus der Verarbeitungsgruppe ausgewählt wird, die eine Abtastumwandlung (111), ein Abschneiden (112), eine Fensterung in einen Betrachtungsport (113), eine Projektion (114) und ein Sortieren (115) umfaßt.
  12. Verfahren gemäß Anspruch 10 oder 11, bei dem das Verarbeiten, das durch jede der Stufen der Bittabellenbildpipeline (100) durchgeführt wird, sich von einem Verarbeiten unterscheidet, das durch die anderen Stu fen durchgeführt wird, und aus der Verarbeitungsgruppe ausgewählt wird, die eine Mosaikrückbildung (102), eine Farbkorrektur/einen Weißabgleich (103), eine Farbpalettenabbildung (104), eine Tonkorrektur (105), eine Flimmerkorrektur (106), eine Farbumwandlung (107) und eine Skalierung (108) umfaßt.
  13. Verfahren gemäß einem der Ansprüche 10 bis 12, das ferner einen Schritt des Kombinierens von Ausgangsdaten von jeder der Pipelines in einen zusammengesetzten Ausgang (116) umfaßt.
  14. Verfahren gemäß einem der Ansprüche 10 bis 13, bei dem der Schritt des selektiven Konfigurierens der Pipelines einen der folgenden Schritte umfaßt: alternatives Leiten von Ausgangsdaten von einer oder mehreren Stufen einer der Pipelines zu einer nächsten der Stufen oder zu einer ausgewählten der Stufen der anderen Pipeline.
  15. Verfahren gemäß einem der Ansprüche 10 bis 14, das ferner die Schritte des Weiterleitens von Graphikdaten, die Graphikidentifizierungs- und Lokalisierungsdaten umfassen, zu der Graphikpipeline (109) und des Weiterleitens von Rasterabtastbilddaten, die Pixelcharakteristikinformationen darstellen, zu der Bittabellenbildpipeline (100) umfaßt.
  16. Verfahren gemäß einem der Ansprüche 10 bis 15, das ferner einen Schritt des Umwandelns zwischen einem Graphikdatenformat und einem Bittabellenbilddatenformat aufweist.
  17. Verfahren gemäß einem der Ansprüche 10 bis 16, das ferner einen Schritt der Bilderkennung aufweist, der eine Identifizierung und Codierung der Graphikbilder in dem Bittabellenbild umfaßt.
  18. Verfahren gemäß einem der Ansprüche 10 bis 17, das ferner einen Schritt des Steuerns einer Verbindung (117139) zum Leiten zumindest des Graphikobjekts (110) oder des Bittabellenbildobjekts (101) zwischen der Graphikpipeline (109) und der Bittabellenbildpipeline (100) umfaßt.
  19. Bilddatenverarbeitungssystem mit: einer ersten Pipeline (109), die eine Mehrzahl von Graphikbildprozessoren zum Verarbeiten eines Graphikobjekts umfaßt; einer zweiten Pipeline (100), die eine Mehrzahl von Bittabellenbildprozessoren zum Verarbeiten eines Bittabellenbildes umfaßt; und einer auswählbar konfigurierbaren Schaltmatrix, die einen Bildpfad definiert und selektiv einen Ausgang von einem der Prozessoren mit einem Eingang eines anderen der Prozessoren verbindet, um ausgewählte Ausgangsdaten von einer oder mehreren der Stufen einer der Pipelines zu ausgewählten Eingängen einer oder mehrerer der Stufen der anderen der Pipelines zu liefern.
  20. Bilddatenverarbeitungssystem gemäß Anspruch 19, bei dem: eine Verarbeitungsfunktion, die durch jeden der Graphikprozessoren durchgeführt wird, sich von einer Verarbeitungsfunktion unterscheidet, die durch einen anderen Graphikprozessor durchgeführt wird, wobei zumindest eine der Verarbeitungsfunktionen aus der Gruppe von Prozessen ausgewählt wird, die eine Abtastumwandlung (111), ein Abschneiden (112), eine Fensterung in einen Betrachtungsport (113), eine Projektion (114) und ein Sortieren (115) umfassen; und eine Verarbeitungsfunktion, die durch jeden der Bittabellenbildprozessoren durchgeführt wird, sich von einer Verarbeitungsfunktion unterscheidet, die durch einen anderen Bittabellenprozessor durchgeführt wird, wobei Verarbeitungsfunktionen aus der Gruppe von Prozessen ausgewählt werden, die eine Mosaikrückbildung (102), eine Farbkorrektur/einen Weißabgleich (103), eine Farbpalettenabbildung (104), eine Tonkorrektur (105), eine Flimmerkorrektur (106), eine Farbumwandlung (107) und eine Skalierung (108) umfassen.
DE10223751A 2001-06-28 2002-05-28 System und Verfahren zum Kombinieren von Graphikformaten in einer digitalen Videopipeline Expired - Fee Related DE10223751B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/896,793 US6961064B2 (en) 2001-06-28 2001-06-28 System and method for combining graphics formats in a digital video pipeline
US09/896,793 2001-06-28

Publications (2)

Publication Number Publication Date
DE10223751A1 DE10223751A1 (de) 2003-01-16
DE10223751B4 true DE10223751B4 (de) 2007-06-21

Family

ID=25406851

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10223751A Expired - Fee Related DE10223751B4 (de) 2001-06-28 2002-05-28 System und Verfahren zum Kombinieren von Graphikformaten in einer digitalen Videopipeline

Country Status (4)

Country Link
US (1) US6961064B2 (de)
JP (1) JP4116330B2 (de)
DE (1) DE10223751B4 (de)
GB (1) GB2378373B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015013191A1 (de) 2015-10-10 2017-04-13 Daimler Ag Verfahren zum Betrieb einer Leuchteinheit und Leuchteinheit

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7136082B2 (en) * 2002-01-25 2006-11-14 Xerox Corporation Method and apparatus to convert digital ink images for use in a structured text/graphics editor
US7139004B2 (en) * 2002-01-25 2006-11-21 Xerox Corporation Method and apparatus to convert bitmapped images for use in a structured text/graphics editor
US6765584B1 (en) * 2002-03-14 2004-07-20 Nvidia Corporation System and method for creating a vector map in a hardware graphics pipeline
US7454320B1 (en) * 2002-03-14 2008-11-18 Nvidia Corporation System and method for calculating partial differential equations in a hardware graphics pipeline
US7928997B2 (en) * 2003-02-06 2011-04-19 Nvidia Corporation Digital image compositing using a programmable graphics processor
US7383426B2 (en) * 2003-06-11 2008-06-03 University Of Washington Processor employing loadable configuration parameters to reduce or eliminate setup and pipeline delays in a pipeline system
EP1496475B1 (de) 2003-07-07 2013-06-26 STMicroelectronics Srl Geometrische Verarbeitungsstufe für einen pipelineförmiges, grafisches Anzeigesystem, Verfahren und Rechnerprogramm dafür
JP2006053690A (ja) * 2004-08-10 2006-02-23 Ricoh Co Ltd 画像処理装置、画像処理方法、画像処理プログラムおよび記録媒体
KR100732958B1 (ko) * 2004-08-13 2007-06-27 경희대학교 산학협력단 20면체 파노라마 영상의 부호화 및 복호화를 위한 방법 및장치
US7742206B2 (en) * 2005-02-08 2010-06-22 Sharp Laboratories Of America, Inc. Methods and systems for color gamut adjustment
US9363481B2 (en) * 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
JP4694264B2 (ja) * 2005-06-03 2011-06-08 富士ゼロックス株式会社 画像処理装置、方法及びプログラム
JP4694270B2 (ja) * 2005-06-03 2011-06-08 富士ゼロックス株式会社 画像処理装置、方法及びプログラム
JP4694265B2 (ja) * 2005-06-03 2011-06-08 富士ゼロックス株式会社 画像処理装置、方法及びプログラム
JP4694267B2 (ja) * 2005-06-03 2011-06-08 富士ゼロックス株式会社 画像処理装置、方法及びプログラム
JP4694268B2 (ja) * 2005-06-03 2011-06-08 富士ゼロックス株式会社 画像処理装置、方法及びプログラム
JP4694269B2 (ja) * 2005-06-03 2011-06-08 富士ゼロックス株式会社 画像処理装置、方法及びプログラム
JP4694266B2 (ja) * 2005-06-03 2011-06-08 富士ゼロックス株式会社 画像処理装置、方法及びプログラム
JP4619868B2 (ja) * 2005-06-03 2011-01-26 富士ゼロックス株式会社 画像処理装置、方法及びプログラム
JP2007122209A (ja) * 2005-10-26 2007-05-17 Nec System Technologies Ltd 3次元グラフィックス描画装置、その方法及びプログラム
DE102005058415A1 (de) * 2005-12-07 2007-06-14 Olympus Soft Imaging Solutions Gmbh Verfahren zur Farbkorrekturberechnung
JP2007287085A (ja) * 2006-04-20 2007-11-01 Fuji Xerox Co Ltd 画像処理装置及びプログラム
JP2007287084A (ja) * 2006-04-20 2007-11-01 Fuji Xerox Co Ltd 画像処理装置及びプログラム
JP4795138B2 (ja) * 2006-06-29 2011-10-19 富士ゼロックス株式会社 画像処理装置及びプログラム
JP4979287B2 (ja) * 2006-07-14 2012-07-18 富士ゼロックス株式会社 画像処理装置及びプログラム
DE102006043068B4 (de) * 2006-09-14 2009-01-29 Olympus Soft Imaging Solutions Gmbh Verfahren zur Übertragung von mit Hilfe einer Aufnahmevorrichtung gewonnenen Farbdaten
US8922565B2 (en) 2007-11-30 2014-12-30 Qualcomm Incorporated System and method for using a secondary processor in a graphics system
US9124847B2 (en) * 2008-04-10 2015-09-01 Imagine Communications Corp. Video multiviewer system for generating video data based upon multiple video inputs with added graphic content and related methods
US8027070B2 (en) * 2009-02-03 2011-09-27 Sharp Laboratories Of America, Inc. Methods and systems for hue adjustment
US8358441B2 (en) * 2009-04-01 2013-01-22 Sharp Laboratories Of America, Inc. Methods and systems for sampling and modeling of colorant-limited, multi-colorant color spaces
JP5808171B2 (ja) * 2010-07-16 2015-11-10 株式会社 資生堂 目元画像シミュレーション装置、目元画像生成方法、及び目元画像生成プログラム
JP4756107B1 (ja) * 2011-02-09 2011-08-24 株式会社ディジタルメディアプロフェッショナル グラフィックス処理装置
US9183006B2 (en) * 2011-08-31 2015-11-10 Visan Industries Systems and methods for layout of graphic objects for electronic display, print or other output
JP5479519B2 (ja) * 2012-03-30 2014-04-23 富士フイルム株式会社 画像処理装置、方法及びプログラム
US11467845B2 (en) 2020-10-20 2022-10-11 Micron Technology, Inc. Asynchronous pipeline merging using long vector arbitration

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5943064A (en) * 1997-11-15 1999-08-24 Trident Microsystems, Inc. Apparatus for processing multiple types of graphics data for display

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5598525A (en) * 1995-01-23 1997-01-28 Cirrus Logic, Inc. Apparatus, systems and methods for controlling graphics and video data in multimedia data processing and display systems
US5977960A (en) * 1996-09-10 1999-11-02 S3 Incorporated Apparatus, systems and methods for controlling data overlay in multimedia data processing and display systems using mask techniques
US5861893A (en) * 1997-05-27 1999-01-19 Intel Corporation System and method for graphics data concurrency and coherency

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5943064A (en) * 1997-11-15 1999-08-24 Trident Microsystems, Inc. Apparatus for processing multiple types of graphics data for display

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PARK,H., EO,K., KIM,D. [u.a.]: >>Two Widley- Different Architectural Approaches to Computer Image Generation<<, 1991, IEEE Visualization, S.42-49, ISBN: 0-8186-2245-8 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015013191A1 (de) 2015-10-10 2017-04-13 Daimler Ag Verfahren zum Betrieb einer Leuchteinheit und Leuchteinheit

Also Published As

Publication number Publication date
US6961064B2 (en) 2005-11-01
JP4116330B2 (ja) 2008-07-09
DE10223751A1 (de) 2003-01-16
JP2003067758A (ja) 2003-03-07
US20030001851A1 (en) 2003-01-02
GB0214136D0 (en) 2002-07-31
GB2378373A (en) 2003-02-05
GB2378373B (en) 2005-07-13

Similar Documents

Publication Publication Date Title
DE10223751B4 (de) System und Verfahren zum Kombinieren von Graphikformaten in einer digitalen Videopipeline
DE69919497T2 (de) Verfahren und Gerät zur Volumendarstellung mit mehreren Tiefenpuffern
DE69835408T2 (de) Verfahren und Vorrichtung zur Komposition von Bildfarben unter Speicherbeschränkungen
DE69830767T2 (de) Verfahren und Vorrichtung zum Zusammensetzen geschichteter synthetischer graphischer Filter
EP0927496B1 (de) Vorrichtung und verfahren zur erzeugung eines kompositbildes
DE102009041431B4 (de) Fahrsimulationsvorrichtung, Weitwinkelkamera-Videosimulationsvorrichtung und Bilddeformierungs-/-zusammensetzungsvorrichtung
DE60009644T2 (de) Farbtonumsetzung unter Verwendung lokaler Information
DE19825302B4 (de) System zur Einrichtung einer dreidimensionalen Abfallmatte, welche eine vereinfachte Einstellung räumlicher Beziehungen zwischen realen und virtuellen Szeneelementen ermöglicht
DE10296401B4 (de) Verbund-Rendering von 3-D-Graphikobjekten
DE3306442A1 (de) Verfahren zur farberfassung und farbmodifikation und einrichtung zur durchfuehrung des verfahrens
DE69722139T2 (de) Dreidimensionale abbildung von bildtexturen
DE4343362A1 (de) Verfahren zur Erzeugung harmonischer Farbkorrekturen in einem Farbraum, insbesondere CIELAB Farbraum
DE102018125472B4 (de) Grafikprozessor, der Abtastungs-basiertes Rendering durchführt, und Verfahren zum Betreiben desselben
US5977981A (en) Softstroking of edges for computer graphics
DE69533911T2 (de) Verfahren und Gerät zum Erzeugen von Bildern
EP3170307B1 (de) Verfahren zur darstellung einer dreidimensionalen szene auf einem autostereoskopischen monitor
DE112011105126T5 (de) Texturkartierungsvorrichtung
DE69813992T2 (de) Bilderzeugungsgerät, -Verfahren und -Programaufzeichnungsmedium, Bildkompositionsgerät, -Verfahren und -Programmaufzeichnungsmedium
DE19620858B4 (de) Computergraphiksystem mit Pixel-Tiefenhinweisgebung
DE69830583T2 (de) Verfahren und Vorrichtung zur Verarbeitung von Bilddaten
WO2004023348A1 (de) Verfahren zur simulation von optischen bauteilen zur stereoskopischen erzeugung von räumlichen eindrücken
DE69910980T2 (de) Antialiasing mit unterabtastung für textur-raender
DE10250602B4 (de) System zum Erzeugen einer synthetischen Szene
DE10336492A1 (de) Vorrichtung zur Bearbeitung eines zweidimensionalen Bildes in einem dreidimensionalen Raum
EP2478705A1 (de) Verfahren und vorrichtung zum erzeugen von teilansichten und/oder einer raumbildvorlage aus einer 2d-ansicht für eine stereoskopische wiedergabe

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE

8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20121201