PatentDe  


Dokumentenidentifikation DE60118222T2 17.08.2006
EP-Veröffentlichungsnummer 0001316064
Titel SKALIEREN VON BILDERN
Anmelder Intel Corp., Santa Clara, Calif., US
Erfinder BIAN, Qixiong, Beaverton, OR 97007, US
Vertreter Samson & Partner, Patentanwälte, 80538 München
DE-Aktenzeichen 60118222
Vertragsstaaten AT, BE, CH, CY, DE, DK, ES, FI, FR, GB, GR, IE, IT, LI, LU, MC, NL, PT, SE, TR
Sprache des Dokument EN
EP-Anmeldetag 29.08.2001
EP-Aktenzeichen 019682525
WO-Anmeldetag 29.08.2001
PCT-Aktenzeichen PCT/US01/26950
WO-Veröffentlichungsnummer 2002021442
WO-Veröffentlichungsdatum 14.03.2002
EP-Offenlegungsdatum 04.06.2003
EP date of grant 22.03.2006
Veröffentlichungstag im Patentblatt 17.08.2006
IPC-Hauptklasse G06T 1/20(2006.01)A, F, I, 20051017, B, H, EP
IPC-Nebenklasse G06T 1/60(2006.01)A, L, I, 20051017, B, H, EP   G06T 3/40(2006.01)A, L, I, 20051017, B, H, EP   

Beschreibung[de]
Hintergrund

Diese Erfindung betrifft im Allgemeinen prozessorbasierte Systeme und im Besonderen das Skalieren eines Bilds auf einer Anzeigevorrichtung eines prozessorbasierten Systems.

Die Fähigkeit, ausgewählte Bilder, die Figuren, Text, Graphiken usw. umfassen können, auf einer Anzeigevorrichtung eines prozessorbasierten Systems zu skalieren, ist für die Bediener von prozessorbasierten Systemen im Allgemeinen eine nützliche Funktion. Sehbehinderte können beispielsweise Softwareanwendungen verwenden, die Inhalte einer Anzeigevorrichtung eines prozessorbasierten Systems für besseres Sehen vergrößern. Zusätzlich möchten Bediener von graphisch orientierten Anwendungen Inhalte eines Displays eines prozessorbasierten Systems vielleicht für eine klareres und detaillierteres optisches Bild erweitern oder vergrößern.

Konventionelle Verfahren zum Skalieren von Bildern wenden teilweise einfache Skalieralgorithmen an, wie beispielsweise die Verwendung von Vervielfältigungsalgorithmen zum Vergrößern oder Verkleinern von Bildern. Als Ergebnis kann es in einigen Fällen so wirken, als hätten die skalierten Bilder rauere (z.B. gezackte) Kanten. Außerdem ist es möglich, dass einige konventionelle Skalierverfahren nicht so schnell wie gewünscht skalieren, vor allem wenn Teile von großen, komplizierten Graphikbildern auf verschiedene Größen skaliert werden.

Die Druckschrift "Computer Graphics: Principles and Practice", J. Foley, A. Van Dam, S. Feiner, J. Highes, 1996, Addison-Wesley Publishing Company Inc., Reading, Mass., USA aus dem Stand der Technik beschreibt in Kapitel 4.4. "The video Controller" das Skalieren eines Bildteils um einen Skalierfaktor. Für die Anzeige des skalierten Bilds auf einem Teil der Ansichtsoberfläche werden Register, die die Grenzkoordinaten des Darstellungsfensters enthalten, mit den die aktuelle Position des Raster-Scans definierenden X, Y-Registern verglichen. Wenn sich der Strahl im Darstellungsfenster befindet, werden Pixel aus einem Fensterbereich des Framebuffers geholt und nach Bedarf vervielfältigt. Andernfalls werden Pixel von der Position im Framebuffer mit denselben (x, y)-Koordinaten wie der Strahl geholt.

Die US 4,546,349A offenbart ein System zum selektiven Auswählen, Vergrößern und Nebeneinanderstellen von ausgewählten Bereichen eines Raster-Scan-Bilds in Bezug auf das Primärbild. Die ausgewählten Bereiche des Primärbilds werden angezeigt, skaliert und offset-unabhängig vom Primärbild, aber relativ zu einem lokalen Zoombereich, und werden durch Extrahieren der Daten aus dem lokalen Zoomspeicher angezeigt, wenn die Rasteranzeige die Bildschirmbereiche abtastet, in denen das Zoombild angezeigt werden soll.

Beim Skalieren ist es in einigen Fällen wünschenswert, das skalierte Bild dynamisch zu aktualisieren. Das heißt, es ist manchmal wünschenswert, das skalierte Bild so "dynamisch" zu aktualisieren, dass es dem Bediener ein Auffrischen oder Neuskalieren des zu Grunde liegenden Bildes bei jeder Änderung erspart.

Daher besteht Bedarf für eine bessere Skalierungweise von Bildern.

Kurze Beschreibung der Zeichnungen

Die Erfindung kann in Bezug auf die folgende Beschreibung in Verbindung mit den begleitenden Zeichnungen verstanden werden, in denen dieselben Bezugszeichen dieselben Elemente bezeichnen, und in denen:

1 eine Vorder-Aufrissansicht eines prozessorbasierten Systems gemäß einer Ausführungsform der vorliegenden Erfindung ist;

2 ein stilisiertes Blockdiagramm eines prozessorbasierten Systems gemäß der vorliegenden Erfindung ist;

3 ein stilisiertes Blockdiagramm eines Graphikadapters gemäß der vorliegenden Erfindung ist;

4 ein Flussdiagramm für auf dem prozessorbasierten System aus 1 residente Software gemäß einer Ausführungsform der vorliegenden Erfindung ist; und

5 einen Skalierungsvorgang gemäß einer Ausführungsform der vorliegenden Erfindung unter Verwendung des Verfahrens aus 3 veranschaulicht.

Detaillierte Beschreibung

Erläuternde Ausführungsformen der Erfindung sind unten beschrieben. Im Interesse der Klarheit sind in dieser Beschreibung nicht alle Eigenschaften einer tatsächlichen Implementierung dargestellt. Man wird natürlich einsehen, dass bei der Entwicklung einer solchen tatsächlichen Ausführungsform zahlreiche implementierungsspezifische Entscheidungen getroffen werden müssen, um die spezifischen Ziele des Entwicklers zu erreichen, wie beispielsweise die Einhaltung von system- und geschäftsbezogenen Einschränkungen, die von einer Implementierung zur anderen variieren. Außerdem wird anerkannt werden, dass solch eine Entwicklunganstrengung komplex und zeitraubend sein kann, aber für den Durchschnittsfachmann, der den Vorteil dieser Offenbarung hat, nichtsdestoweniger ein Routineunterfangen ist.

Nun ist in Bezug auf 1 ein prozessorbasiertes System 5 gemäß einer Ausführungsform der vorliegenden Erfindung gezeigt. Das prozessorbasierte System 5 kann ein Laptop, ein Desktop, ein Großrechner, ein Fernsehgerät mit einer Setup-Box oder jedes andere Gerät sein, bei dem Skalieren wünschenswert ist. Das prozessorbasierte System 5 umfasst eine mit einem Steuerkasten 15 verbundene Anzeigevorrichtung 10. Eingabegeräte, eine Tastatur 17 und eine Maus 19, sind mit dem Steuerkasten 15 verbunden. Im Allgemeinen leitet der Steuerkasten 15 durch die Anzeigevorrichtung 10 Information an einen Bediener weiter, auf die der Bediener unter Verwendung eines der Eingabegeräte 17, 19 antwortet. Das prozessorbasierte System 5 weist ein oder mehrere Mediengeräte 20, 22 auf. Obwohl die Mediengeräte 20, 22 nicht derartig beschränkt sind, umfassen sie in der gezeigten Ausführungsform ein Disketten- und ein Compact-Disk (CD)-Laufwerk.

Nun ist in Bezug auf 2 ein stilisiertes Blockdiagramm eines Steuerkastens 15 des prozessorbasierten Systems 5 aus 1 gezeigt. Aus Klarheitsgründen und für eine vereinfachte Darstellung sind in 2 nur ausgewählte Funktionsblöcke des Steuerkastens 15 gezeigt, obwohl der Fachmann anerkennen wird, dass der Steuerkasten 15 zusätzliche Funktionsblöcke umfassen kann.

Das prozessorbasierte System 5 umfasst eine Steuereinheit 70 zum Durchführen einer Vielzahl von Aufgaben für das prozessorbasierte System 5. In einer Ausführungsform umfasst die Steuereinheit 70 einen Prozessor. Die Steuereinheit 70 ist mit einer Eingabeschnittstelle 74 und einer Medienschnittstelle 84 verbunden. Die Eingabeschnittstelle 74 ist beispielsweise zum Anschluss von Eingabegeräten wie die Tastatur 17 (siehe 1), die Maus 19 (siehe 1), ein Mikrophon (nicht gezeigt) usw. geeignet. Die Medienschnittstelle 84 kann das Diskettenlaufwerk 20 (siehe 1), das CD-Laufwerk 22 (siehe 1), ein Magnetbandlaufwerk (nicht gezeigt) usw. anschließen.

Das prozessorbasierte System 5 umfasst einen Speicher 86 und eine Speichereinheit 88. Der Speicher 86 kann ein Arbeitsspeicher (random access memory, RAM) sein, der zum vorübergehenden Speichern von Information verwendet werden kann. Die Speichereinheit 88 des prozessorbasierten Systems 5 kann in einer Ausführungsform ein Festplattenlaufwerk sein. Die Speichereinheit 88 kann ein Basisdatenaustauschsystem (Basic input/output system, BIOS), ein Betriebssystem und andere Anwendungen für das prozessorbasierte System 5 speichern. Eine Skalieranwendung 410 kann in der Speichereinheit 88 gespeichert werden. Jedes einer Vielzahl von Betriebssystemen kann auf dem prozessorbasierten System installiert sein, einschließlich Windows, DOS (disk operating system), AIX, LINUX usw.

Der Steuerkasten 15 umfasst eine Graphikschnittstelle 90. Die Graphikschnittstelle 90 stellt Graphikunterstützung für den Computer 5 zur Verfügung. Die Graphikschnittstelle 90 akzeptiert anzuzeigende Daten und verarbeitet die Daten, so dass sie auf der Anzeigevorrichtung 10 dargestellt werden können. In einer Ausführungsform kann die Graphikschnittstelle 90 ein Graphikadapter sein, der zum Anschließen der Anzeigevorrichtung 10 des prozessorbasierten Systems 5 ausgelegt ist. Die Graphikschnittstelle 90 schließt in der gezeigten Ausführungsform einen Videospeicher 95 und eine Überlagerungsmaschine 100 ein. Die Graphikschnittstelle 90 kann eine (nicht gezeigte) Graphikmaschine zum Bereitstellen von konventioneller, nichtbildlicher (non-video) Graphikunterstützung aufweisen.

Der Videospeicher 95 (häufig auch als "Framebuffer" bezeichnet) kann ein Hochgeschwindigkeits-Arbeitsspeicher zum Speichern von Information sein, die letztendlich auf der Anzeigevorrichtung 10 des prozessorbasierten Systems 5 dargestellt wird. Der Videospeicher 95 umfasst einen Bildschirm-Speicherbereich 110, der eine elektronische Darstellung eines oder mehrerer Bilder speichert, die ein Bediener auf der Anzeigevorrichtung 10 des prozessorbasierten Systems 5 betrachtet. Daher wird jede Aktualisierung des Bildschirm-Speicherbereichs 110 auch auf der Anzeigevorrichtung 10 wiedergegeben.

In einer Ausführungsform kann die Überlagerungsmaschine 100 Graphiken oder statische Bilder beispielsweise über einen Hintergrund überlagern, der typischerweise ein oder mehrere, ebenfalls auf der Anzeigevorrichtung 10 sichtbare Bilder umfasst. Die elektronischen Darstellungen der Überlagerungs- und Hintergrundbilder sind in dem Bildschirm-Speicherbereich 110 gespeichert. In der gezeigten Ausführungsform ist jedoch die Überlagerungsmaschine 100, obwohl nicht derartig beschränkt, eine Bildüberlagerungsmaschine, die zum Mischen von Bilderfassungsdaten (video capture data) mit Graphikdaten auf der Anzeigevorrichtung 10 geeignet ist. In einer Ausführungsform kann die Überlagerungsmaschine 100 eine Vielzahl von Datenformaten unterstützen, einschließlich YUV 4:2:2, RGB15, RGB16 und RGB24. Die Überlagerungsmaschine 100 ist in der gezeigten Ausführungsform dazu geeignet, eine elektronische Darstellung von Bildern von einem Quellort (z.B. einem Ort im Videospeicher 95 oder anderen Quellen) zu der Anzeigevorrichtung 10 des prozessorbasierten Systems 5 zu erzeugen. Im Allgemeinen werden die elektronischen Darstellungen von Bildern von der Überlagerungsmaschine 100 auf dem Hintergrund platziert.

Die Überlagerungsmaschine 100 schließt einen Skalierer (Staler) 120 ein, der in einer Ausführungsform hardware-implementiert sein kann. Der Skalierer 120 kann in einer Ausführungsform der Erfindung fortschrittliche Skalieralgorithmnen anwenden, die beispielsweise Interpolation und andere Filtertechniken verwenden, um qualitativ hochwertige skalierte Bilder zu erhalten. Zusätzlich kann der Skalierer 120 geeignet für multi-lineare Skalierung sein, was bedeutet, dass eine Filterung unter Verwendung eines oder mehrerer vertikaler und horizontaler Taps durchgeführt wird. Die Bezeichnung "Taps", wie sie hier verwendet wird, umfasst die Anzahl von Eingangspixeln, die zur Erstellung jedes Ausgangspixels beitragen. Die Graphikschnittstelle 90 kann Bildüberlagerung als eine der Standardfunktionen unterstützen. Der Intel®i810-Chipsatz, ein moderner, von der Inter Corporation angebotener Graphikchipsatz, kann in der Graphikschnittstelle 90 verwendet werden, um eine Bildüberlagerungsfähigkeit gemäß einer Ausführungsform der vorliegenden Erfindung bereitzustellen.

Nun ist in Bezug auf 3 ein Blockdiagramm der Graphikschnittstelle 90 gemäß der vorliegenden Erfindung gezeigt. Es sollte anerkannt werden, dass die Graphikschnittstelle 90 im Allgemeinen einen zugehörigen Gerätetreiber haben wird, der die Graphikschnittstelle und die Softwareanwendung koppelt, die versucht, auf eine oder mehrere Funktionen der Graphikschnittstelle 90 zuzugreifen.

Die Graphikschnittstelle 90 umfasst einen Multiplexerblock 310 mit drei Eingangsanschlüssen 315, 320, 325, einem Auswahlanschluss 330 und einem Ausgabeanschluss 335. Die ersten, zweiten und dritten Eingangsanschlüsse 315, 320 325 sind zum Bereitstellen von elektronischen Darstellungen zum Erzeugen eines oder mehrerer Bilder in dem Bildschirm-Speicherbereich 110, einem Quellort 337 der Überlagerungsmaschine 100 bzw. einer Hardware-Cursorquelle 340 ausgelegt. Der Quellort 337 bezieht sich, wie er hier verwendet wird, auf einen Speicherbereich, in dem die elektronischen Darstellungen eines oder mehrerer Bilder vor der Verarbeitung durch die Überlagerungsmaschine 100 gespeichert werden. In einer Ausführungsform kann der Quellort 337 in dem Bildschirm-Speicherbereich 110 definiert und durch eine Quelladresse identifiziert sein, die der Überlagerungsmaschine 100 bereitgestellt wird. Die Hardware-Cursorquelle 340 bezeichnet in einer Ausführungsform einen Ort, an dem eine elektronische Darstellung eines Hardware-Cursors gespeichert ist.

Der Auswahlanschluss 330 wählt ein oder mehrere Signale von den Eingangsanschlüssen 315, 320, 325 dazu aus, letzlich von dem Ausgabeanschluss 335 des Mulitplexers 310 zu der Anzeigevorrichtung 10 übergeben zu werden. In einer Ausführungsform kann das Signal des Hardware-Cursoranschlusses die höchste Priorität der drei Anschlusssignale haben, gefolgt von dem Signal von dem Quellort 337 der Überlagerungsmaschine 100 und dann vom Signal vom Bildschirm-Speicherbereich 110, der die niedrigste Priorität haben kann.

Die Priorität kann relevant sein, wenn alle drei Eingangsanschlüsse 315, 320, 325 Anzeigebilddaten bereitstellen. In Bezug auf 3 wird ein Bild, das als eine elektronische Darstellung im Bildschirm-Speicherbereich 110 (in einer Ausführungsform mit der niedrigsten Priorität) gespeichert ist, auf der Anzeigevorrichtung 10 als Hintergrund angezeigt. Der Hintergrund wird von einem zweiten Bild überlagert, das als elektronische Darstellung am Quellort 337 der Überlagerungsmaschine 100 gespeichert ist. Das Bild des Hardware-Cursors (in der einen Ausführungsform mit der höchsten Priorität) von der Hardware-Cursorquelle 340 wird über der Überlagerung dargestellt.

Nun ist in Bezug auf 4 ein Flussdiagramm für eine Skalieranwendung 410 gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht. Die Skalieranwendung 410 ermöglicht in einer Ausführungsform einem Bediener, einen Ausschnitt des auf der Anzeigevorrichtung 10 angezeigten Bilds für eine Skalierung auszuwählen. Der ausgewählte Bildausschnitt kann beispielsweise Text, Graphiken, Figuren oder eine Kombination davon umfassen.

In einer Ausführungsform kann der Bediener den Bildausschnitt durch Bewegen der Maus 19 (1) zum Kennzeichnen des zu skalierenden Bildausschnitts auswählen. In einer alternativen Ausführungsform klickt der Bediener einfach auf oder neben einen dem ausgewählten Bildausschnitt naheliegenden Bereich, um einen Bildausschnitt zur Skalierung auszuwählen. Zusätzlich fordert die Skalieranwendung 410 gemäß einer Ausführungsform der vorliegenden Erfindung den Bediener auch auf, einen Faktor einzugeben, der den Skalierumfang (Vergrößern oder Verkleinern) festlegt. Alternativ kann die Skalieranwendung 410 einen Default-Faktor zum Skalieren des ausgewählten Bildausschnitts verwenden.

Bei Block 420 empfängt die Skalieranwendung 410 vom Bediener ausgewählte, in Zusammenhang mit dem gewählten Bildausschnitt auf der Anzeigevorrichtung 10 stehende Information. Die vom Bediener ausgewählte Information kann in einer Ausführungsform Koordinaten des ausgewählten Bildausschnitts oder alternativ wenigstens eine Koordinate zusammen mit einem Höhen- und Weitenwert des ausgewählten Bildausschnitts umfassen. In einer weiteren Ausführungsform kann die vom Bediener ausgewählte Information auch den vom Bediener bereitgestellten Skalierfaktor einschließen.

Bei Block 425 wird der Überlagerungsmaschine 100 auf der vom Bediener ausgewählten Information basierende Skalierinformation bereitgestellt. Die Skalierinformation identifiziert in einer Ausführungsform einen Bereich im Bildschirm-Speicherbereich 110, der die elektronische Darstellung des ausgewählten Bildausschnitts enthält. In einer Ausführungsform stellt die Skalieranwendung 410 die vom Bediener ausgewählte Information einem Gerätetreiber der Überlagerungsmaschine 100 durch eine vordefinierte Anwenderprogrammschnittstelle (API) zur Verfügung. Der Gerätetreiber ermittelt dann basierend auf der vom Bediener ausgewählten Information die Skalierinformation und stellt sie der Überlagerungsmaschine 100 zur Verfügung. In einer alternativen Ausführungsform kann eine bedienerdefinierte API zum Bereitstellen der vom Bediener ausgewählten Information an den Graphiktreiber verwendet werden, wobei die bedienerdefinierte API es nicht erforderlich macht, dass die Skalieranwendung 410 Platz in dem Bildschirm-Speicherbereich 110 des Videospeichers 95 verbraucht.

In einer Ausführungsform kann die Skalierinformation eine Adresse umfassen, die einen Quellort für die Überlagerungsmaschine 100 bezeichnet, wobei der Quellort die Start-Speicheradresse ist, von der aus die elektronische Darstellung des gewählten Bildausschnitts gespeichert wird. Zusätzlich kann die Skalierinformation einen Höhen- und einen Weitenwert für die Überlagerungsmaschine 100 umfassen, wobei die Höhen- und Weitenwerte den Ort der elektronischen Darstellung des ausgewählten Bildausschnitts im Bildschirm-Speicherbereich 110 identifizieren. Alternativ kann die Skalierinformation anstelle der Höhen- und Weitenwerte einen anderen Speicherort umfassen, der einen Endort der elektronischen Darstellung des ausgewählten Bildausschnitts identifiziert (z.B. einen Speicherort, der einer Ecke gegenüber der vom Startadressort bezeichneten Ecke entspricht). In einer Ausführungsform kann die Skalierinformation auch eine Überlagerungsbuffer-Teilung (buffer pitch) (oder einen Bufferschritt (buffer stride)) umfassen, wobei die Überlagerungsbuffer-Teilung die Anzahl von Bytes ist, die von der Überlagerungsmaschine auf einer zeilenweisen Basis erhöht werden. In einer Ausführungsform legt der Graphiktreiber der Überlagerungsmaschine 100 die Überlagerungsbuffer-Teilung fest und stellt sie bei Bedarf der Überlagerungsmaschine zur Verfügung. In einer anderen Ausführungsform kann die Skalierinformation auch den vom Bediener bereitgestellten Skalierfaktor einschließen.

In der gezeigten Ausführungsform ist der Quellort, obwohl nicht derartig beschränkt, als ein Speicherort in dem Bildschirm-Speicherbereich 110 definiert, an dem sich die elektronische Darstellung des ausgewählten Bildausschnitts befindet. Der ausgewählte Bildausschnitt muss sich nicht notwendigerweise in einem zusammenhängenden Bereich im Bildschirm-Speicherbereich 110 befinden, sondern kann stattdessen unzusammenhängend in dem Bildschirm-Speicherbereich 110 verteilt sein.

In einer Ausführungsform wird das skalierte Bild dynamisch aktualisiert, wenn sich der Hintergrund ändert. In einer Ausführungsform ist definiert, dass der Quellort der Überlagerungsmaschine 100 im Bildschirm-Speicherbereich 110 liegt, in dem sich die elektronische Darstellung des ausgewählten Bildteils befindet. Daher wird der Bildschirm-Speicherbereich 110 aktualisiert, wenn sich der Hintergrund ändert, und diese Aktualisierungen werden dadurch auch in dem skalierten Bild wiedergegeben. Die Aktualisierungen werden in dem skalierten Bild wiedergegeben, weil der Quellort der Überlagerungsmaschine 110 in einer Ausführungsform auch der aktualisierte Bildschirm-Speicherbereich 110 ist. Als Ergebnis wird jede Modifikation des ausgewählten Bereichs des Hintergrunds ebenfalls in der skalierten Überlagerung wiedergegeben, wodurch dem Bediener ein "dynamischer" Effekt bereitgestellt wird.

In einer alternativen Ausführungsform kann der Quellort der Überlagerungsmaschine 100 auf einen anderen Speicherbereich zeigen, der außerhalb des Bildschirm-Speicherbereichs 110 liegt. In diesem Fall kann die elektronische Darstellung des ausgewählten, zu skalierenden Bildausschnitts von dem Bildschirm-Speicherbereich 110 in einen Off-Screen-Bereich kopiert werden, der als ein Teil des Videospeicherbereichs 95 oder eines anderen Speichers definiert sein kann. In einer Ausführungsform kann eine BitBlt-Operation angewendet werden, um die elektronische Darstellung des ausgewählten Bildausschnitts vom Bildschirm-Speicherbereich 110 zum Off-Screen-Bereich zu kopieren.

Bei Block 430 aktiviert die Skalieranwendung 410 die Überlagerungsmaschine 100 unter Verwendung des Auswahlanschlusses 330 des Multiplexerblocks 310. Bei Block 435 verwendet die Überlagerungsmaschine 100 ihren Skalierer 120 (siehe 2), um die elektronische Darstellung des ausgewählten Bildausschnitts zu skalieren. Anstelle eines separaten Skalierers können eine oder mehrere Ausführungsformen der vorliegenden Erfindung aus dem Skalierer 120 der Überlagerungsmaschine 100 Vorteile für die Skalierung ziehen. Die Überlagerungsmaschine 100 kann fortschrittliche Skalieralgorithmen verwenden, die die Eingangsdaten interpolieren und bilinear skalieren, um ein Bild von besserer Qualität zu erhalten. Außerdem kann der Skalierer 120 in einer Ausführungsform hardware-implementiert sein, was bedeutet, dass der Skalierer 120 effizienter und schneller als einige software-basierte Skalieralgorithmen sein kann. Bei Block 450 deaktiviert die Skalieranwendung 410 die Überlagerungsmaschine 100 durch den Auswahlanschluss 330 des Multiplexerblocks 310.

Nun ist in Bezug auf 5 eine Skalieroperation gemäß einer Ausführungsform der vorliegenden Erfindung gezeigt. Im Besonderen zeigt 5 eine beispielhafte Skalieroperation unter Verwendung der Skalieranwendung aus 4. Zum Zweck der Veranschaulichung wird angenommen, dass der Bediener ein Bild 510 für eine Skalierung (Vergrößerung) um einen Faktor Zwei auswählt. Dementsprechend empfängt die Skalieranwendung 410 bei Block 420 die vom Bediener ausgewählten, zum ausgewählten Bildausschnitt 510 gehörende Information. In der dargestellten Ausführungsform kann beispielsweise die Skalieranwendung 410 den Skalierfaktor sowie die zum Bildteil 510 gehörigen Koordinaten empfangen. Die vom Bediener ausgewählte Information wird dann in einer Ausführungsform dem Gerätetreiber der Überlagerungsmaschine 100 zur Verfügung gestellt.

Bei Block 425 wird basierend auf der vom Bediener ausgewählten Information die Skalierinformation ermittelt und der Überlagerungsmaschine 100 zur Verfügung gestellt. Die Skalierinformation kann in der gezeigten Ausführungsform eine Adresse sein, die einen Quellort für die Überlagerungsmaschine 100 bezeichnet. Der Quellort entspricht in diesem Fall dem Speicherort im Bildschirm-Speicherbereich 110, der die elektronische Darstellung des Bildausschnitts 510 speichert. Obwohl sie nicht derartig beschränkt ist, schließt die Skalierinformation in der dargestellten Ausführungsform einen Höhen- und Weitenwert zum Identifizieren der übrigen elektronischen Darstellung des Bildausschnitts 510 in dem Bildschirm-Speicherbereich 110 ein. Zusätzlich kann die Skalierinformation bei Bedarf einen Überlagerungsbuffer-Teilungswert einschließen, welcher der Überlagerungsmaschine 100 in einer Ausführungsform vom Gerätetreiber bereitgestellt werden kann.

Bei Block 430 aktiviert die Skalieranwendung 410 die Überlagerungsmaschine 100 mittels des Auswahlanschlusses 330 des Multiplexerblocks 310. Bei Block 435 skaliert die Überlagerungsmaschine 100 unter Verwendung ihres Skalierers 120 die elektronische Darstellung des Bilds 510 um einen Faktor Zwei und stellt die resultierenden Daten am zweiten Eingangsanschluss 320 bereit. Als Ergebnis zeigt, wie man in 5 sieht, die Anzeigevorrichtung 10 ein skaliertes Bild 520, das über dem Bildausschnitt 510 platziert ist. Der Hardware-Cursor 340 ist über dem skalierten Bild 520 gezeigt, da er eine höhere Priorität als die anderen zwei Eingangssignale des Multiplexerblocks 310 haben kann.

Weil das skalierte Bild 520 von der Überlagerungsmaschine 100 bereitgestellt wird, bleiben die Inhalte des Bildschirm-Speicherbereichs 110 störungsfrei. Es ist daher für andere Anwendungen möglich, den Bildausschnitt 510 im Bildschirm-Speicherbereich 110 zu aktualisieren. Und da der Quellort der Überlagerungsmaschine 100 in der gezeigten Ausführungsform in direktem Bezug zu der elektronischen Darstellung des Bilds 510 im Bildschirm-Speicherbereich 110 des Videospeichers 95 steht, können grundsätzlich alle Aktualisierungen des Bilds 510 dynamisch in dem skalierten Bild 520 wiedergegeben werden. Diese "dynamische" Aktualisierungsfunktion kann bei der Skalierung von sich ständig ändernden graphischen Anwendungen nützlich sein, wie beispielsweise einer wechselhafte Wetterbedingungen veranschaulichenden Wetterkarte.

Nach der Fertigstellung deaktiviert die Skalieranwendung 410 bei Block 410 das Eingangssignal von der Überlagerungsmaschine 100. Das Eingangssignal von der Überlagerungsmaschine 100 kann mittels des Auswahlanschlusses 330 des Multiplexerblocks 310 deaktiviert werden.

Die verschiedenen Systemschichten, Routinen oder Module können funktionsfähige Steuereinheiten sein (so wie Steuereinheit 70 (siehe 2) im prozessorbasierten System 5). Jede Steuereinheit kann einen Mikroprozessor, einen Mikrocontroller, eine Prozessorkarte (einschließlich eines oder mehrerer Mikroprozessoren oder -controller) oder andere Steuer- oder Rechengeräte einschließen. Die in dieser Diskussion genannten Speichergeräte können ein oder mehrere maschinenlesbare Speichermedien zum Speichern von Daten und Befehlen einschließen. Die Speichermedien können verschiedene Formen oder Speicher einschließen, einschließlich Halbleiterspeichergeräten wie beispielsweise dynamische oder statische Arbeitsspeicher (DRAMs oder SRAMs), löschbare und programmierbare Read-Only-Speicher (EPROMs) und Flashspeicher; magnetische Disks wie beispielsweise Festplatten, Disketten, Wechselplatten; andere magnetische Medien einschließlich Tapes; und optische Medien wie CDs (compact disks) oder DVDs (digital video disks). Befehle, die die verschiedenen Softwareschichten, Routinen oder Module in den verschiedenen Systemen ausmachen, können in den betreffenden Speichergeräten gespeichert werden. Wenn die Befehle von einer entsprechenden Steuereinheit ausgeführt werden, veranlassen sie das entsprechende System dazu, programmierte Vorgänge auszuführen.

Die oben offenbarten speziellen Ausführungsformen dienen nur der Veranschaulichung, da die Erfindung auf unterschiedliche, aber äquivalente Weisen modifiziert und ausgeübt werden kann, die für einen Fachmann mit dem Vorteil der hier dargelegten Lehren offensichtlich sind. Außerdem sind keine anderen Beschränkungen für die hierin gezeigten Konstruktions- oder Gestaltungsdetails beabsichtigt, als in den untenstehenden Ansprüchen beschrieben. Der hier angestrebte Schutz ist in den Ansprüchen dargelegt.


Anspruch[de]
  1. Vorrichtung, umfassend:

    eine Steuerung (70) zum Empfangen von vom Bediener ausgewählter, in Zusammenhang mit wenigstens einem Bildausschnitt (510) auf einer Anzeigevorrichtung (10) stehender Information einschließlich eines Skalierfaktors zum Skalieren einer elektronischen Darstellung eines Bildausschnitts (510);

    einen Speicherbereich (110) zum Speichern einer elektronischen Darstellung des Bilds (510);

    einen Quellort (337) in dem Speicherbereich (110) zum Speichern der elektronischen Darstellung des Bildausschnitts (510);

    gekennzeichnet durch:

    eine mit der Steuerung (70) gekoppelte Bildüberlagerungsmaschine (100) zum Skalieren der elektronischen Darstellung des Bildausschnitts (510) im Quellort (337) im Speicherbereich und zum Bereitstellen des skalierten Bildausschnitts (520) an die Anzeigevorrichtung (10) als eine Überlagerung über das Bild auf der Anzeigevorrichtung (10);

    wobei die Bildüberlagerungsmaschine (100) daher zusätzlich dazu ausgelegt ist, in Reaktion auf den Empfang einer Änderung in dem Bild (510), die den Quellort (337) beeinflusst, den skalierten Bildausschnitt (520) dynamisch zu aktualisieren.
  2. Vorrichtung nach Anspruch 1, bei der das Empfangen der vom Bediener ausgewählten Information durch die Steuerung (70) das Empfangen von Koordinaten durch die Steuerung (70) umfasst, die dem auf der Anzeigevorrichtung (10) dargestellten Bildausschnitt entsprechen.
  3. Vorrichtung nach Anspruch 2, bei der das Empfangen von vom Bediener ausgewählter Information durch die Steuerung (70) außerdem umfasst:

    Feststellen des Quellorts (337) der elektronischen Darstellung des Bildausschnitts (510) in dem Speicherbereich (110) basierend auf den empfangenen Koordinaten, wobei der Speicherbereich (110) wenigstens einen Quellort (337) umfasst, der wenigstens einem Pixel der Anzeigevorrichtung (10) entspricht; und

    Bereitstellen des Quellorts (337) an die Überlagerungsmaschine (100).
  4. Vorrichtung nach Anspruch 3, bei der das Skalieren der elektronischen Darstellung des Bildausschnitts (510) durch die Bildüberlagerungsmaschine (100) das Skalieren der elektronischen Darstellung des im Speicherbereich (110) residenten Bilds durch die Bildüberlagerungsmaschine (100) umfasst.
  5. Vorrichtung nach Anspruch 4, bei welcher die Steuerung (70) zusätzlich:

    den Speicherbereich (110) aktualisiert, der von der elektronischen Darstellung des Bildausschnitts (510) belegt ist; und

    die elektronische Darstellung des Bildausschnitts (510) in Reaktion auf die Aktualisierung skaliert.
  6. Vorrichtung nach Anspruch 1, die weiterhin ein Display (10) zum Anzeigen des Bildausschnitts umfasst.
  7. Vorrichtung nach Anspruch 1, bei der das Empfangen der vom Bediener ausgewählten Information durch die Steuerung (70) weiterhin das Empfangen eines Skalierfaktors zum Skalieren der elektronischen Darstellung des Bildausschnitts (510) umfasst.
  8. Vorrichtung nach Anspruch 1, bei der die Steuerung (70) ein Prozessor ist.
  9. Vorrichtung nach Anspruch 1, bei der das Skalieren durch die Bildüberlagerungsmaschine (100) das Skalieren der elektronischen Darstellung des Bildausschnitts (510) um einen Faktor größer als Eins durch die Bildüberlagerungsmaschine (100) umfasst.
  10. Vorrichtung nach Anspruch 1, die zusätzlich einen mit dem Display (10) gekoppelten Steuerkasten (15) umfasst.
  11. Gegenstand, der ein oder mehrere maschinenlesbare Speichermedien umfasst, die Befehle enthalten, die bei ihrer Ausführung einem Prozessor ermöglichen:

    vom Bediener ausgewählte Information einschließlich eines Skalierfaktors zum Skalieren einer elektronischen Darstellung eines Bildausschnitts (510) zu empfangen, die in Zusammenhang mit wenigstens einem Bildausschnitt auf einer Anzeigevorrichtung (10) steht;

    eine elektronische Darstellung des Bilds in einem Speicherbereich (110) zu speichern;

    die elektronische Darstellung des Bildausschnitts (510) an einem Quellort (337) im Speicherbereich (110) zu speichern;

    dadurch gekennzeichnet, dass

    die Befehle bei ihrer Ausführung dem Prozessor außerdem ermöglichen, die elektronische Darstellung des Bildausschnitts (510) in dem Quellort (337) in dem Speicherbereich (110) unter Verwendung einer Überlagerungsmaschine (100) zu skalieren und den skalierten Bildausschnitt (520) als eine Überlagerung über des Bild auf der Anzeigevorrichtung (10) an die Anzeigevorrichtung (10) bereitzustellen; und daher

    den skalierten Bildausschnitt (520) unter Verwendung der Überlagerungsmaschine (100) in Reaktion auf das Empfangen einer Änderung im Bild, die den Quellort (337) beeinflusst, dynamisch zu aktualisieren.
  12. Gegenstand nach Anspruch 11, bei dem das eine oder die mehreren maschinenlesbaren Speichermedien Befehle enthalten, die bei ihrer Ausführung dem Prozessor ermöglichen, dem auf der Anzeigevorrichtung (10) dargestellten Bildausschnitt entsprechende Koordinaten zu empfangen.
  13. Gegenstand nach Anspruch 12, bei dem das eine oder die mehreren maschinenlesbaren Speichermedien Befehle enthalten, die bei ihrer Ausführung dem Prozessor ermöglichen:

    den Quellort (337) der elektronischen Darstellung des Bildausschnitts (510) im Speicherbereich (110) basierend auf den empfangenen Koordinaten zu ermitteln, wobei der Speicherbereich (110) wenigstens einen wenigstens einem Pixel der Anzeigevorrichtung (10) entsprechenden Quellort umfasst; und

    der Überlagerungsmaschine (100) den Quellort (337) zur Verfügung zu stellen.
  14. Gegenstand nach Anspruch 13, bei dem das eine oder die mehreren maschinenlesbaren Speichermedien Befehle enthalten, die bei ihrer Ausführung die Skalierung der elektronischen Darstellung des im Bereich (110) residenten Bildes ermöglichen.
  15. Gegenstand nach Anspruch 14, bei dem das eine oder die mehreren maschinenlesbaren Speichermedien Befehle enthalten, die bei ihrer Ausführung dem Prozessor ermöglichen:

    den Speicherbereich (110) zu aktualisieren, der von der elektronischen Darstellung des Bildausschnitts (510) belegt ist; und

    das Skalieren der elektronischen Darstellung des Bildausschnitts (510) in Reaktion auf die Aktualisierung zu ermöglichen.
  16. Verfahren, umfassend:

    Empfangen von Information einschließlich eines Skalierfaktors zum Skalieren einer elektronischen Darstellung eines Bildausschnitts (510), die in Zusammenhang mit wenigstens einem Bildausschnitt (510) auf einer Anzeigevorrichtung (10) steht, wobei die empfangene Information von einem Bediener ausgewählt wird, der zum Kennzeichnen des zu skalierenden Bildausschnitts auf einer Anzeigevorrichtung (10) befähigt ist;

    Speichern der elektronischen Darstellung des Bilds (510) in einem Speicherbereich (110);

    Speichern der elektronischen Darstellung des Bildausschnitts (510) an einem Quellort (337) in dem Speicherbereich (110);

    gekennzeichnet durch:

    Skalieren der elektronischen Darstellung des Bildausschnitts (510) an dem Quellort (337) im Speicherbereich unter Verwendung einer Überlagerungsmaschine (100) und Bereitstellen des skalierten Bildausschnitts (520) an die Anzeigevorrichtung (10) als eine Überlagerung über das Bild auf der Anzeigevorrichtung (10); und, daher,

    dynamisches Aktualisieren des skalierten Bildausschnitts (520) unter Verwendung der Überlagerungsmaschine (100) in Reaktion auf den Empfang einer Änderung in dem Bild (510), die den Quellort (337) beeinflusst.
  17. Verfahren nach Anspruch 16, bei dem das Befähigen des Bedieners zum Kennzeichnen des Bildausschnitts (510) das Ermöglichen des Empfangens von Koordinaten umfasst, die dem auf der Anzeigevorrichtung (10) dargestellten Bildausschnitt entsprechen.
  18. Verfahren nach Anspruch 17, bei dem die Anzeigevorrichtung (10) einen Speicherbereich (110) für ein oder mehrere Pixel der Anzeigevorrichtung (10) aufweist, weiterhin umfassend:

    Ermöglichen der Ermittlung des Quellorts (337) der elektronischen Darstellung des Bildausschnitts (510) in dem Speicherbereich (110) basierend auf den empfangenen Koordinaten und

    Ermöglichen des Bereitstellens des Quellorts (337) an die Überlagerungsmaschine (100).
  19. Verfahren nach Anspruch 18, weiterhin umfassend:

    Zulassen von Aktualisierungen des Speicherbereichs (110), das von der elektronischen Darstellung des Bildausschnitts (510) belegt ist; und

    Ermöglichen des Skalierens der elektronischen Darstellung des Bildausschnitts (510) in Reaktion auf die Aktualisierung.
  20. Verfahren nach Anspruch 19, bei dem das Ermöglichen des Skalierens der elektronischen Darstellung des Bildausschnitts (510) das Ermöglichen des Skalierens der elektronischen Darstellung des im Speicherbereich (110) residenten Bilds umfasst.
  21. Verfahren nach Anspruch 16, das weiterhin das Ermöglichen des Darstellens des Bildausschnitts umfasst.
  22. Verfahren nach Anspruch 16, bei dem das Befähigen des Bedieners zum Kennzeichnen des Bildausschnitts (510) weiterhin das Empfangen eines Skalierfaktors zum Skalieren der elektronischen Darstellung des Bildausschnitts (510) umfasst.
  23. Verfahren nach Anspruch 16, bei dem das Ermöglichen des Skalierens das Ermöglichen des Skalierens der elektronischen Darstellung des Bildausschnitts (510) unter Verwendung einer Bildüberlagerungsmaschine (100) umfasst.
  24. Verfahren nach Anspruch 16, bei dem das Ermöglichen des Skalierens das Ermöglichen des Skalierens der elektronischen Darstellung des Bildausschnitts (510) um einen Faktor größer als Eins umfasst.
Es folgen 5 Blatt Zeichnungen






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

  Patente PDF

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com