DE69428491T2 - Bildlinse - Google Patents

Bildlinse

Info

Publication number
DE69428491T2
DE69428491T2 DE69428491T DE69428491T DE69428491T2 DE 69428491 T2 DE69428491 T2 DE 69428491T2 DE 69428491 T DE69428491 T DE 69428491T DE 69428491 T DE69428491 T DE 69428491T DE 69428491 T2 DE69428491 T2 DE 69428491T2
Authority
DE
Germany
Prior art keywords
image
lens
field
fields
display
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69428491T
Other languages
English (en)
Other versions
DE69428491D1 (de
Inventor
Jock D. Mackinlay
George G. Robertson
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.)
Xerox Corp
Original Assignee
Xerox Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xerox Corp filed Critical Xerox Corp
Publication of DE69428491D1 publication Critical patent/DE69428491D1/de
Application granted granted Critical
Publication of DE69428491T2 publication Critical patent/DE69428491T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/04Context-preserving transformations, e.g. by using an importance map
    • G06T3/053Detail-in-context presentations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04805Virtual magnifying lens, i.e. window or frame movable on top of displayed information to enlarge it for better reading or selection

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

  • Die Erfindung bezieht sich auf ein Verfahren zum Skalieren eines Bildes und auf eine Zusammenhang- bzw. Kontext-bewahrende Bildanzeigevorrichtung gemäß den Oberbegriffen der Ansprüche 1 bzw. 7.
  • Ein derartiges Verfahren und eine derartige Vorrichtung sind in EP-A-447 095 beschrieben. Dieses Dokument lehrt, Information auf einer Sequenz von Bildern zu präsentieren, die einen Mittelabschnitt und zwei Randabschnitte, links und rechts von dem Mittelabschnitt, umfasst. Jeder Randabschnitt scheint sich von dem Benutzer unter einem Winkel von dem Rand des Mittelabschnittes weg zu erstrecken, so dass die Randabschnitte relativ wenig von dem Bildschirm einnehmen.
  • Für die Zwecke dieser Anmeldung werden mehrere Variationen an einem Bild definiert. Ein Bild ist eine visuelle Darstellung von Information oder eine logische Darstellung von dem, was eine visuelle Darstellung von Information werden soll. Ein Bild könnte ein Textdokument, eine Karte oder eine Kurve sein, ist aber nicht darauf beschränkt. Die zugrunde liegende Information, die in einem Bild enthalten ist, hängt von seiner Form ab. Beispielsweise enthält Information in einem Textdokument den Informationsgehalt seiner Worte, den Informationsgehalt aus den Stellungen der Worte innerhalb des Dokuments und den Informationsgehalt der Textformatierung und Schriftarten usw. Information hat viele Aspekte, aber zwei Aspekte sind hier von besonderer Bedeutung: Detail und Kontext. Detailinformation in einem Textdokumentbild gibt an, welche lokale Information, beispielsweise welche Schriftarten, verwendet werden und welche Zeichen in einer lokalen Fläche des Bildes vorhanden sind, während Detailinformation in einer Karte die auf der Karte verwendeten Symbole und den Weg angibt, der von einer Straße (im Falle von Straßenkarten) genommen wird. Kontext-Information plaziert andererseits diese Details in Perspektive mit der anderen Information des gesamten Bildes.
  • Ein alleinstehendes Bild enthält per Definition den gesamten Informationsgehalt von diesem Bild. Wenn ein Bild zu viel Information enthält, die insgesamt sofort auf einer gegebenen Displayvorrichtung bildlich dargestellt werden soll, muss ein Ersatzbild, das weniger als den gesamten Informationsgehalt des "Voll"-Bildes enthält, akzeptiert werden. Der Begriff "Vollbild" wird hier benutzt, um sich auf ein Originalbild zu beziehen, bevor irgendwelche Information-verlierende Operationen auf das Bild angewendet worden sind, um ein darstellbares Ersatzbild zu bilden. Selbstverständlich könnte ein derartiges Ersatzbild ebenfalls ein Vollbild für eine Anzeige mit noch kleinerer Auflösung sein, jedoch werden Vollbilder der Einfachheit halber dahingehend als ideal angenommen, dass sie die gesamte Information enthalten, die zum Darstellen des Vollbildes auf einem idealen Display (d.h. unbegrenzte Auflösung, Größe, Farbe usw.) notwendig ist.
  • Wenn das Vollbild nicht in seiner Gesamtheit darstellbar ist, ist das darstellbare Bild, welches das Vollbild ersetzt, häufig entweder ein Detailbild oder ein Globalbild oder eine Kombination von den beiden. Ein Globalbild ist das Vollbild mit verminderter Auflösung, damit das gesamte Bild auf die Bildfläche von der Anzeigevorrichtung passt. Selbstverständlich könnte die Auflösung so klein sein, dass Details von diesem Ersatzbild nicht zur Verfügung stehen. Ein Detailbild zeigt die Details bzw. Einzelheiten, aber nur einen Teil des Vollbildes. Bei einem Detailbild stehen die Details des Bildes zur Verfügung, aber der globale Kontext der Details geht verloren. Wenn eine Kombination verwendet wird, wird die Verbindung zwischen dem Detailbild und dem Globalbild nicht visuell deutlich, insbesondere dort, wo das detaillierte Bild mehr von dem Globalbild überdeckt als in dem detaillierten Bild gezeigt wird.
  • Eine Displayvorrichtung oder ein Displaysystem, wie es hier verwendet wird, könnte ein Computer-Monitor, ein Drucker oder ähnliches sein, wobei jedoch Computer-Monitore geeigneter für interaktive Darstellungen von Bildern sind. Wenn eine Bildverarbeitung erforderlich ist, wird ein Display-System häufig einen Bildprozessor oder ein anderes Computer-System enthalten. Eine Display-Vorrichtung könnte auch eine Vorrichtung sein, die sich verhält, als wenn sie Bilder darstellen würde, aber die Bilder nicht tatsächlich darstellt. Beispielsweise könnte ein Fernkopierer Bilder in einer sehr ähnlichen Art und Weise handhaben wie ein Computer-Display, aber er zeigt nicht notwendigerweise ein Bild an, sondern liefert stattdessen das Bild an ein anderes System, das gelieferte Bild darstellt.
  • Aufgrund der Zunahme von Rechnerleistung fordern Benutzer mehr und mehr Information von Computern und wollen, dass die Information in einer visuell informativen Form geliefert wird. Man denke beispielsweise an einen Unternehmensplaner, der entscheidet, wo ein Einzelhandels-Absatzmarkt angeordnet werden soll. Während es zu einer gewissen Zeit akzeptabel war, mit einem langen Ausdruck von Zahlen aus einer Datenbasis zu arbeiten, der Populationszentren und die Entfernungen zwischen diesen anzeigt, werden nun graphische zweidimensionale ("2D") Darstellungen erwartet, die geographischen Daten überlagert sind. Diese Ausgabe könnte Teil von einem geographischen Informationssystem (GIS) sein, das allgemein bekannt ist.
  • Das Problem mit derartigen 2D Displays ist, dass ein Vollbild, das einigermaßen komplex ist, aufgrund der Auflösung der Information in dem Bild und der Auflösung und Größe der Bildfläche nicht insgesamt sofort mit den erforderlichen Details dargestellt werden kann. Oft muss der Benutzer zwischen einem Globalbild und einem Detailbild wählen. Im allgemeinen besteht dieser Kompromiss von Global/Kontext gegenüber Detail/Fokus immer dort, wo der Kontext wichtig ist und das Vollbild mäßig komplex ist.
  • Wenn beispielsweise das Vollbild ein mehrseitiges Dokument ist und die Stellen des Vorkommens von einer Textfolge in dem Dokument wichtig sind, könnte ein Bild des Dokumentes dargestellt und die Vorkommen hervorgehoben werden. Wenn das Bild des gesamten Dokuments dargestellt werden kann und immer noch lesbar ist, sind Detail und Kontext voll verfügbar. Wenn aber das Vollbild nicht dargestellt werden kann, muss der Benutzer häufig zwischen einem unlesbaren Globalbild, das den Kontext zeigt, und lesbaren Detailbildern wählen, denen die globale Kontextinformation fehlt.
  • Eine Teillösung besteht darin, Detailbilder über einem Globalbild anzuzeigen, wobei das Globalbild möglicherweise eine Angabe darüber enthält, wo das Detailbild im Vollbild sitzt. Diese Lösung ist weniger als wünschenswert, da das Detailbild aus dem globalen Kontext herausgelöst ist, und demzufolge ein Benutzer, der die Bilder betrachtet, visuell zwischen den Global- und Detailbildern hin- und herspringen muss, um sowohl die Details als auch den Kontext der Information, die in dem Detailbild präsentiert wird, wahrzunehmen. Dies würde recht schwierig sein, wo viele Details, wie beispielsweise Text oder Linien, sich über den Rand des Detailbildes hinaus erstrecken.
  • Dieses Problem ist in Fig. 1 dargestellt. Fig. 1 zeigt drei Ansichten eines Vollbildes 10, ein Bild von einem Dokument, das den Text eines Satzes enthält. Fig. 1(a) zeigt das Vollbild, und der Text im Bild 10 ist lesbar (d.h. es zeigt den gesamten Informationsgehalt des Dokumentes), aber in jeder realen Anwendung wird das bildlich darzustellende Dokument viel länger sein und sein Text muss auf viel kleinere Auflösungen komprimiert werden. In einem derartigen Fall könnte der Text ohne Vergrößerung nicht vollständig lesbar sein (d.h. in dem Text enthaltene Information geht verloren). Fig. 1(b) zeigt die Wirkung einer Vergrößerung eines Bereichs 13 des Bildes 10 in ein Detailbild 14, das durch eine Vergrößerungseinrichtung 12 bewirkt wird. Als eine Folge der Vergrößerung des Bereiches 13 werden andere Flächen des Bildes 10 überdeckt, und der Kontext des Detailbildes 14 geht aufgrund der Diskontinuität zwischen dem Bereich 13 und dem Bild 10 verloren. Es sei darauf hingewiesen, dass die Diskontinuität am Rand der Vergrößerungseinrichtung 12 auftritt.
  • Die Überdeckung und der Verlust von Kontext tritt sowohl bei physikalischen Vergrößerungseinrichtungen als auch logischen Vergrößerungseinrichtungen auf, und die Ursache ist in Fig. 1(c) dargestellt. Fig. 1(c) stellt die Ansicht von einem Betrachtungspunkt 16 durch die Vergrößerungseinrichtung 12 hindurch auf den Bereich 13 dar. Da die Vergrößerungseinrichtung 12 in ihrer Wirkung den Bereich 13 näher an den Betrachtungspunkt 16 heranbringt, ist der feste Winkel, der von dem herangebrachten Bereich eingeschlossen wird, größer und entspricht den Grenzen eines verdeckten Bereichs 18 im Bild 10.
  • US-A-4, 790, 028 beschreibt einen Versuch, das Problem von vergrößerten Flächen, die globale Bilder überdecken, zu lösen, indem ein "variabel-skaliertes" Display verwendet wird. In einem derartigen Display wird das Vollbild derart verformt, dass die Koordinaten einer interessierenden Fläche expandiert werden, während die Koordinaten der Fläche gerade außerhalb der interessierenden Fläche entsprechend komprimiert werden; die komprimierten Teile und die übrigen Teile von dem Bild werden mit Informationsverlust dargestellt, wobei der Verlust in der komprimierten Fläche größer ist. Jedoch ist diese Lösung rechenmäßig schwerfällig, was langsame Antwortzeiten auf einen Benutzerbefehl für eine Detailverstärkung zur Folge hat, und sie ist auch dort ungeeignet, wo der Informationsgehalt des Bildes Text enthält, der verzerrt sein würde, so dass ein einfaches Lesen verhindert wird, oder wo er Charakteristika von Linien enthält, wie beispielsweise deren Geradlinigkeit, Abstände und relative Schnittwinkel. Weiterhin macht ein derartiges System nicht die Kontext-Information wirksam, welche erhalten werden kann, wenn die Kompression von einer kleineren Kompression nahe einem Detailbild zu einer höheren Kompression in mehr peripheren Bereichen gesteigert wird.
  • Es ist die Aufgabe der Erfindung, ein Verfahren und eine Vorrichtung für eine verbesserte Detailverstärkung und eine Kontextbewahrung des Details innerhalb eines Bildes bereitzustellen. Die Aufgabe wird durch die Gegenstände der Ansprüche 1 und 7 gelöst.
  • Bevorzugte Ausführungsbeispiele sind Gegenstand der abhängigen Ansprüche.
  • In vorteilhafter Weise erscheint das Sichtvolumen wie eine perspektivische 3D Projektion in bezug auf einen Betrachtungspunkt. Der Benutzer sieht zunächst das Bild als ein Globalbild bündig mit einer konstanten Z Ebene, wobei das Linsenfeld unvergrößert unter einer Bildlinse liegt. Wenn die Bildlinse näher an den Benutzer herangebracht wird (d.h. an den Betrachtungspunkt; in einer positiven Z Richtung), erscheinen die Bildlinse und das Linsenfeldbild in der Betrachtungsebene größer, und die Seitenwände der Pyramide schwenken bzw. kippen mehr, um sich an den verkleinerten Raum anzupassen, der den Feldbildern zugeordnet ist. In einer speziellen Ausführungsform, in welcher das Bild der Text eines Dokuments ist, könnte die Bildlinse als eine "Dokumentenlinse" bezeichnet werden, aber eine Bildlinse oder Dokumentenlinse arbeitet ebenso gut mit anderen Bildern, wie beispielsweise Karten, Blaupausen und großen technischen Zeichnungen.
  • Das Detail, das in dem Linsenfeldbild erforderlich ist, und die Kontext-Bewahrung und Kompression der Seitenfeldbilder werden automatisch durch die 3D Transformationen des Vollbildes geliefert. Um die Transformationen durchzuführen, werden die Dimensionen des Vollbildes, die beschnittene Pyramide, die Betrachtungsebene und der Betrachtungspunkt alle innerhalb des Display-Systems durch Koordinaten in einem gemeinsamen 3D Raum beschrieben. Die einzelnen, verwendeten Koordinaten werden durch die relative Auflösung des Linsenfeldbildes und des Globalbildes bestimmt, wo die Linse auf dem Vollbild angeordnet ist und wie der Benutzer Benutzersteuerungen handhabt, die vorgesehen sind, um diese Parameter einzustellen. Der Betrachtungspunkt ist ein Punkt oberhalb der beschnittenen Oberseite der Pyramide, aber in einigen Ausführungsbeispielen bewegt sich der Betrachtungspunkt auf der Basis der Bewegung der Bildlinse umher, um das Linsenfeld im Betrachtungsfeld zu halten.
  • In einer interaktiven Ausführungsform handhabt ein Benutzer eine Eingabevorrichtung, wie beispielsweise eine Maus oder eine Tastatur, um die Bildlinse über das Globalbild zu bewegen und die Vergrößerung des Linsenfelds zu vergrößern, welches die visuellen Äquivalente der Verschiebung der Bildlinse um das Bild herum und der Heranbringung der Bildlinse näher an den Benutzer sind. Die interaktive Ausführungsform könnte auch ein Mittel bereitstellen, um die Größe der Bildlinse in der weitgehend gleichen Art und Weise einzustellen, wie ein Fenster in der Größe angepasst wird.
  • Die Antwortzeit für die Benutzerbefehle in der interaktiven Umgebung ist schnell, da die Transformationen einfache lineare Transformationen sind. Falls verfügbar, werden die Transformationen des Bildes von 2D zu 3D und zurück mit Hardware ausgeführt, die zur Handhabung von 3D Grafikbildern besonders geeignet ist. Das System wird auch schneller gemacht, indem alle notwendigen Transformationen generiert und kombiniert werden und dann die Objekte des Vollbildes durch die kombinierte Transformation aufgebaut (rendered) werden. Wo die Objekte Text sind, sind weitere Verbesserungen durch Verwendung von mäanderartig (greeked) dargestellten Text für die Seitenfelder möglich. In einem mäanderartigen Zeichensatz wird eine Textzeile als eine einzelne Linie wiedergegeben.
  • Bildlinsen können auch verschachtelt sein.
  • Nachstehend werden bevorzugte Ausführungsformen der vorliegenden Erfindung gesondert anhand der beigefügten Zeichnungen beschrieben. In den Zeichnungen ist:
  • Fig. 1 eine Darstellung, wie eine Vergrößerung ohne weiteres Teile eines Bildes überdeckt;
  • Fig. 2 eine Darstellung eines Bilddisplaysystems, das einen Bildprozessor enthält;
  • Fig. 3 ein Blockschaltbild des in Fig. 2 dargestellten Bildprozessors;
  • Fig. 4 eine Darstellung von den Wirkungen einer Bildlinse auf ein Bild;
  • Fig. 5(a) eine Darstellung der Aufteilung eines Bildes in Felder;
  • Fig. 5(b) eine Darstellung der Felder, nachdem sie transformiert sind;
  • Fig. 6 ist ein Flußdiagramm, das einen Prozess der Darstellung eines Bildes unter Verwendung einer Bildlinse beschreibt;
  • Fig. 7(a) ein Flußdiagramm, das einen Prozess der Wiedergabe eines Linsenfeldes beschreibt;
  • Fig. 7(b) ein Flußdiagramm, das einen Prozess der Wiedergabe eines Seitenfeldes beschreibt;
  • Fig. 8 ein dargestelltes Bild eines mehrseitigen Dokuments, wie es durch eine Bildlinse gesehen wird, wobei Text in den Seitenfeldern als Linien dargestellt ist; und
  • Fig. 9 ein Liniendiagramm einer speziellen Ausführungsform der vorliegenden Erfindung, wobei eine verschachtelte Bildlinse auf das Bild angewendet wird, das in dem Bildlinsenfeld einer verschachtelnden Bildlinse vorgesehen ist.
  • Fig. 2 ist eine Darstellung eines erfindungsgemäßen Display-Systems 100, das dazu verwendet wird, Bilder unter Verwendung von Bildlinsen anzuzeigen, und das einem Benutzer gestattet, Parameter zu verändern, welche die Darstellung der Bilder steuern. Das Display-System 100 umfasst ein Display 102, das eine Bildfläche 104 besitzt, einen Bildprozessor 106, eine Maus 108 mit einer Schnittstelle 142 zum Prozessor 106 und eine Tastatur 110 mit einer Schnittstelle 144 zum Prozessor 106. Eine Schnittstelle 140 zwischen dem Display 102 und dem Prozessor 106 ist ebenfalls dargestellt. In einer bestimmten Ausführungsform ist das Display 102 ein 1280 · 1024 Farbmonitor, der von Silicon Graphics hergestellt wird, und der Bildprozessor 106 ist eine Silicon Graphics Iris Workstation, Modell 4D/420 GTX. Die Begriffe "Silicon Graphics" und "Silicon Graphics Iris" sind eingetragene Marken. In alternativen Ausführungsformen werden die Maus 108 und/oder die Tastatur 110 durch andere Eingabevorrichtungen ersetzt.
  • Fig. 3 ist ein Blockschaltbild und zeigt den Prozessor 106 mit weiteren Details. Der Prozessor 106 umfasst eine zentrale Verarbeitungseinheit (CPU) 130, einen Bildspeicher 132, der eine logische Darstellung von einem abzubildenden Bild (Vollbild) speichert, einen Speicher 134 zur Speicherung von Variablen und Zwischenergebnissen der CPU 130 und einen Programmspeicher 136, der CPU Instruktionen enthält, die Funktionen des Display-Systems 100 implementieren. In einigen Ausführungsformen enthält der Prozessor 106 eine 3D Graphik-Maschine 138. Fig. 3 stellt auch die Schnittstelle 140 (Display-Ausgang), die Schnittstelle 142 (Maus-Eingang) und die Schnittstelle 144 (Tastatur-Eingang).
  • Wenn das Display-System 100 in Betrieb ist, liest bzw. lädt die CPU 130 ein Vollbild aus dem Bildspeicher 132. Das geladene Bild ist entweder ein Bild von Objekten, die auf einer 2D Fläche angeordnet sind, wie beispielsweise als Pixel von verschiedenen Farben, oder das geladene Bild ist eine logische Darstellung eines Bildes, um auf der 2D Fläche zu erscheinen, wie beispielsweise Textzeichen in einem Dokument mit einer Angabe der Schriftart und Position, in der die Zeichen erscheinen sollen.
  • In jedem Fall führt die CPU 130 nach dem Laden des Bildes die notwendige Verarbeitung aus, so dass die Position, Größe und Orientierung der Objekte in dem Bild relativ zu einer 2D Originalbildfläche bekannt sind. Diese Darstellung des Bildes ist das "Voll"- Bild, das den gesamten Informationsgehalt des Bildes einschließlich der Kontext- Information enthält. Das Vollbild kann in verschiedenen Formen dargestellt werden, wie z.B. als ein Bitmap mit einer spezifizierten Auflösung oder durch eine Objekt- Darstellung, wie z.B. als ein Textdatei oder eine Liste von Objekten mit Positionen und Beschreibungen, wie es im Fachgebiet allgemein bekannt ist. Wenn das Vollbild auf der Display-Fläche darstellbar ist, dann ist die Bildlinse nicht wirklich erforderlich. Trotzdem kann es Anwendungen geben, wo eine Bildlinse dennoch notwendig ist, wenn ein Vollbild mit seiner vollen Auflösung dargestellt wird, beispielsweise wenn man auf den Zwischenraum von Zeichen in einem Seiten-Layoutsystem achtet.
  • Nach dem Laden des Bildes transformiert dann der Prozessor 106 das Bild gemäß Parametern, die vom Benutzer spezifiziert werden, von einem 2D Vollbild in eine beschnittene 3D Pyramide und dann auf eine Betrachtungsebene, welche die Bildfläche 104 darstellt.
  • Fig. 4 stellt, allgemein, die an einem Vollbild ausgeführten Transformationen dar. Fig. 4(a) ist eine 2D Ansicht von einem Vollbild 200 vor der Transformation. Das Bild 200 ist mit Linien 201 dargestellt, die dazu verwendet werden, die Auswirkungen der Transformationen zu veranschaulichen. Normalerweise wird das Vollbild auf eine konstante Z- Ebene in einem (X, Y, Z) Koordinatensystem abgebildet. Ferner ist ein kleines Kästchen gezeigt, das ein Linsenfeld 202 angibt, für das volles Detail gewünscht wird. Dieses Kästchen wird alternativ als die "Bildlinse" bezeichnet.
  • Fig. 4(b) ist eine perspektivische 3D Ansicht von einer beschnittenen Pyramide 203, auf die das Vollbild 200 abgebildet wird (die Linien 201 sind der Klarheit halber weggelassen). Eine Betrachtungsebene 214 relativ zu einem Betrachtungspunkt V ist ebenfalls gezeigt. Die fünf sichtbaren Flächen der beschnittenen Pyramide 203 sind eine Bodenfläche 204, eine Deckfläche 206, eine linke Fläche 208, eine rechte Fläche 210 und eine beschnittene Linsenfläche 212. Für die 3D Transformation wird das Bild 200 in fünf "Felder" oder Unterbilder unterteilt, die auf die fünf sichtbaren Flächen beschnittenen Pyramide 203 abgebildet werden. Die Betrachtungsebene 214 definiert, was von dem Betrachtungspunkt V aus sichtbar ist, und bestimmt das sich schließlich ergebende Bild, das auf der Bildfläche 104 dargestellt werden soll. Um die Kontext-Information zu bewahren, kann die Bewegung der Bildlinsenfläche 212 begrenzt werden, so dass Feldbilder nicht übermäßig komprimiert werden.
  • Fig. 4(c) ist eine 2D Ansicht der transformierten Projektion auf die Betrachtungsebene 214. Die Projektionen 204', 206', 208', 210', 212' sind Projektionen der mit gleichen Bezugszahlen bezeichneten, in Fig. 4(b) dargestellten, Flächen. Signifikanterweise bleiben Linien in dem Bildinsenfeld (Fläche 212') und in den vier Seitenfeldbildern (204', 206', 208', 210') als Linien erhalten, und Linien, die im Vollbild 200 verbunden sind, bleiben über Feldgrenzen hinweg verbunden.
  • Die Parameter der Transformationen werden aus einer Beschreibung des Betrachtungspunktes V, der Grenzen des Vollbildes 200 (die in den meisten Fällen auch die Ränder der Basis der beschnittenen Pyramide 203 sind), der Grenzen der Bildlinse 212 und der relativen Abstände zwischen dem Vollbild 200 an der Basis der beschnittenen Pyramide 203, der Bildlinse 212, der Betrachtungsebene 214 und des Betrachtungspunktes V abgeleitet. Diese Parameter können durch einen Benutzer eingestellt werden, um die visuellen Effekte einer Bewegung der Bildlinse nach innen und außen (Zoomen) und einer Bewegung der Bildlinse über das Vollbild 200 (Verschieben) zu haben. In einigen Ausführungsformen wird die Position des Betrachtungspunktes V durch den Benutzer modifiziert oder wird automatisch modifiziert, um so die Projektion der Bildlinse 212 innerhalb der Grenzen der Betrachtungsebene 214 zu halten. In Fig. 4(b) nimmt die Projektion der beschnittenen Pyramide 203 die gesamte Betrachtungsfläche 214 ein, um so die Bildfläche 104 effizient zu nutzen, wobei jedoch Parameter vorgesehen werden könnten, so dass die Betrachtungsebene 214 und/oder der Betrachtungspunkt V bewegbar sind, so dass dies nicht der Fall ist.
  • Fig. 5(a)-(b) und die Flußdiagramme gemäß Fig. 6-7 beschreiben die Arbeitsweise einer speziellen Ausführungsform des Display-Systems 100 gemäß der vorliegenden Erfindung. Fig. 5(a)-(b) sind Abbildungen eines ursprünglichen Vollbildes 250 und eines transformierten oder "Linsen"-Bildes 252. Die Flußdiagramme in Fig. 6-7 beschreiben die Instruktionen, die in dem Programmspeicher 136 gespeichert sind und von der CPU 130 verwendet werden, um die Transformation des Bildes 250 in das Bild 252 zu bewirken. In den Bildern 250 und 252 sind gleiche Punkte ähnlich bezeichnet. Beispielsweise ist der Punkt A der gleiche Punkt in beiden Bildern, und der Punkt E im Bild 250 wird in den Punkt E' im Bild 252 transformiert. Das Bild 250 ist im wesentlichen ein 2D Bild, das in einem 3D Raum angeordnet ist, während das Bild 252 ein 3D Bild ist (obwohl nur eine Projektion im Bild 5(b) und auf der Bildfläche 104 darstellbar ist). In der folgenden Beschreibung sind die Orte der Punkte gemäß Fig. 5(a)-(b) im 3D Raum in Tabelle 1 gezeigt.
  • Tabelle 1. Koordinaten der Feld-Scheitelpunkte
  • A = (0, 0, 0)
  • B = (x_max, 0, 0)
  • C = (x_max, y_max, 0)
  • D = (0, y_max, 0)
  • E = (Linse_x, Linse_y, 0)
  • F = (Linse_x + Linse_Breite, Linse_y, 0)
  • G = (Linse_x + Linse_Breite, Linse_y + Linse_Höhe, 0)
  • H = (Linse_x, Linse_y + Linse_Höhe, 0)
  • E' = (Linse_, Linse_y, Linse_z)
  • F' = (Linse_x + Linse_Breite, Linse_y, Linse_z)
  • G' = (Linse_x + Linse_Breite, Linse_y + Linse_Höhe, Linse_z)
  • H' = (Linse_x, Linse_y + Linse_Höhe, Linse_z)
  • Üblicherweise erstreckt sich die X-Achse in dem Display nach rechts, die Y-Achse erstreckt sich in dem Display nach oben und die Z-Achse erstreckt sich aus dem Display heraus in Richtung auf den Betrachter. Die Variablen, die zum Beschreiben von Punkten in dem 3D Raum verwendet werden, können fest sein, würden aber in einem flexiblen System in dem Speicher 134 gespeichert werden. In einem bestimmten System ist x_max = 144, 0 Displayeinheiten und y_max = 108, 0 Displayeinheiten, wodurch ein Seitenverhältnis von 4/3 gebildet wird, welches das Seitenverhältnis der meisten Computer-Monitore ist. In diesem speziellen System ist der Betrachtungspunkt (Auge_x, Auge_y, Auge_z) zunächst (72, 0, 54, 0, 180, 0), der über dem Bild zentriert ist, und die Linse ist zentriert auf und bündig mit dem Bild, mit Linse_Mitte_x = Linse_x + Linse_Breite/2 = 72, 0, Linse_Mitte_y = Linse_y + Linse_Höhe/2 = 54, 0 und Linse_z = 0. Die Anfangswerte für Linse_Breite und Linse_Höhe sind 20, 0 bzw. 25, 0 Display- Einheiten.
  • Üblicherweise wird der Betrachter des Displays 102 die Maus 108 betätigen, wobei die Maustaste 109 gedrückt ist, um die Werte von Linse_x und Linse_y zu verändern, er wird die Maus 108 betätigen, wobei die Maustaste 109 gedrückt ist, während die Maus auf einen Rand von dem Linsenfeld zeigt, um die Werte von Linse_Breite und Linse_Höhe zu verändern, und er wird die Alt-Taste 120 der Tastatur 110 zum Vergrößern von Linse_z und die Leertaste 122 der Tastatur 110 zum Verkleinern von Linse_z verwenden. Selbstverständlich können für eine natürlicherere Bewegung mehr als der eine Wert von Linse_x, Linse_y, Linse_z, Linse_Breite und Linse_Höhe für einen gegebenen Mausbefehl geändert werden.
  • Um eine glatte Bewegung zu erzeugen, wenn die Linse herein und herausgezogen wird, wird eine logarithmische Annäherungsfunktion verwendet, anstatt dass die Linse eine feste Strecke in der z-Richtung für jedes Drücken einer Taste auf der Tastatur 110 bewegt wird. Bei der logarithmischen Annäherung schließt ein Drücken der Leertaste einen Prozentsatz des Abstandes zwischen der Bildlinse und der Ebene z = 0, während ein Drücken der Alt-Taste einen Prozentsatz des Abstandes zwischen der Bildlinse und einem z schließt, das etwas kleiner als Auge_z ist. Die Bildlinse ist auf ein maximales z von etwas weniger als dem Betrachtungspunkt begrenzt, um einen Gesamtverlust der Kontext-Information zu vermeiden, wenn die Bildlinse sich zu nahe an die z = Auge_z Ebene bewegen würde. Der Prozentsatz des geschlossenen Abstandes ist durch den Benutzer einstellbar, oder er kann auf 10% festgelegt sein.
  • Fig. 6 ist ein Flußdiagramm, das die höheren Funktionen beschreibt, die in den in dem Programmspeicher 136 gespeicherten CPU Instruktionen verkörpert sind. Diese Funktionen werden von der CPU 130 ausgeführt, um ein Vollbild in eine Fokus + Kontext- Darstellung umzuwandeln. Fig. 7(a)-(b) sind detailliertere Flußdiagramme der in Fig. 6 gezeigten Wiedergabeschritte. Wenn es nicht anders angegeben ist, erfolgt der Ablauf des Programms in der Reihenfolge der Blocknummern.
  • Am Block 300 identifiziert die CPU 130, wo die Objekte des Vollbildes erscheinen. Wenn das Bild das eines mehrseitigen Dokuments ist, dann könnte dieser Schritt enthalten, dass das Dokument in Zeilen und Seiten gegliedert wird, ermittelt wird, wie viele Seiten erforderlich sind, und die Seiten in einer zweidimensionalen Seitenanordnung angeordnet werden. In dem 3D Raum beginnt das Bild eben auf der z = 0 Ebene, begrenzt durch die Punkte (x, y, z) = (0, 0, 0), (x, y, z) = (x_max, 0, 0), (x, y, z) = (x_max, y_max, 0) und (x, y, z) = (0, y_max, 0). Das tatsächliche Bild wird an diesem Punkt nicht notwendigerweise aufgebaut, aber dieser Schritt ist nützlich in einem Dokument zum Identifizieren, wie viele Seiten erforderlich sein werden, was bei einem späteren Aussortierungsprozess nützlich zu wissen ist.
  • Am Block 301 wird die Bildlinse relativ zu dem Bild in ihrer Vorgabestellung angeordnet. Am Block 302 werden die Grenzen der fünf Felder ermittelt. Wie Fig. 5(a) zeigt, sind die Grenzen aus x_max, y_max, Linse_x, Linse_y, Linse_Breite und Linse_Höhe oder aus den Ausdrücken für die Punkte A, B, C, D, E, F, G und H (siehe Tabelle 1) bestimmbar.
  • Am Block 303 berechnet die CPU 130 die Transformationen für jedes Feld und baut das transformierte Bild auf dem Display auf. Da das Display eine 2D Perspektive einer beschnittenen 3D Pyramide ist, auf die das Bild abgebildet wird, wird das Linsenfeld einen Teil des Vollbildes im Detail zeigen und die Seitenfelder zeigen den Rest des Bildes in variierenden Detailgraden, mit mehr Detail näher an dem Linsenfeld, und die Seitenfelder zeigen auch den globalen Kontext.
  • Um die Transformation und Wiedergabe effizient auszuführen, wird nicht jeder Punkt des Bildes transformiert, sondern stattdessen werden nur die Scheitelpunkte und eine Identitätsmatrix transformiert. Die CPU 130 verwendet die Orte der transformierten Scheitelpunkte, um die Ausdehnung von einem Feld auf der Bildfläche zu ermitteln, und sie verwendet die transformierte Matrix, um Punkte des Vollbildes auf die Bildfläche zu plazieren. In einigen Ausführungsbeispielen werden die Transformationen und Wiedergabe ganz oder teilweise durch die spezialisierte 3D Grafik-Maschine 138 ausgeführt, die gewöhnlich durch eine spezielle integrierte Schaltung implementiert wird. Ein Beispiel einer 3D Grafik-Maschine ist die Silicon Graphics Iris 4D/420 VGX.
  • Da das Bild auf eine beschnittene 3D Pyramide transformiert wird, die dann durch eine perspektivische Transformation transformiert wird, wobei das Linsenfeld die Oberseite der beschnittenen Pyramide ist, erscheint das Linsenfeld für den Betrachter größer, und wenn Linse_z bezogen auf Auge_z, der Auflösung des Displays und dem Bild genügend groß, sind die Details von dem Bildabschnitt in dem Linsenfeld unterscheidbar.
  • Am Block 304 addiert die CPU 130 Seitenfeldgrenzen von den Scheitelpunkten der Linse zu den Kanten des Bildes. Wenn die Linse nahe an der z = 0 Ebene ist (d.h. Linse_z < vis_dist für einen gewissen Schwellenwert vis_dist ist, was einen kleinen "Vergrößerungs"-Effekt anzeigt), sind die Grenzen zwischen Seitenfelder nicht gezeigt. In einigen Ausführungsbeispielen hält der eine Bildpuffer, was der Betrachter gerade sieht, und ein anderer Bildpuffer wird dazu verwendet, das Display zu halten, das durch den obigen Prozess generiert wird. Wenn der zweite Bildpuffer voll ist, werden die zwei Bildpuffer am Block 305 ausgetauscht, bevor die CPU 130 zum Block 302 zurückkehrt.
  • Am Block 306 verlässt die CPU 130 das Programm, wenn ein gewisser vorbestimmter Ausgangszustand erfüllt ist, anderenfalls geht sie weiter zum Block 307 über. Am Block 307 sucht die CPU 130 einem Linsenbewegungsbefehl, und in Ausführungsbeispielen, in welchen dieser zulässig ist, sucht sie nach einem Betrachtungspunktbewegungsbefehl. Wenn kein Bewegungsbefehl eingegeben worden ist, geht die CPU 130 zum Block 306 zurück, anderenfalls geht sie weiter zum Block 308 über.
  • Am Block 308 berechnet die CPU 130 die Linsenposition und -größe neu. Wie oben erläutert wurde, verändern die Positionseinstellungen die Werte von Linse_x, Linse_y und Linse_z, während Größeneinstellungen die Werte von Linse_Breite und Linse_Höhe verändern.
  • Am Block 309 wird der Betrachtungspunkt eingestellt, falls dies erforderlich ist. Wie aus Fig. 4(b) zu sehen ist, bewegt sich das Linsenfeld 212, wenn es hoch genug und weit genug zu der einen Seite angeordnet ist, aus der Sicht der Betrachtungsebene 214 heraus, und in diesem Fall ist das Linsenfeld nicht sichtbar. Um diese Situation zu vermeiden, bewegt sich in einigen Ausführungsbeispielen der Betrachtungspunkt mit der Linse. Die CPU 130 generiert diesen Effekt, indem die Werte von Auge_x und Auge_y mit Linse_Mitte_x und Linse_Mitte_y gekoppelt werden, so dass das Linsenfeld die Tendenz hat, sichtbar zu bleiben. Die Position des Betrachtungspunktes beeinflusst, was der Benutzer sieht, da, wie vorstehend erläutert ist, der Betrachtungspunkt in der Berechnung der Perspektiven-Transformation benutzt wird.
  • In einer speziellen Ausführungsform wird der Betrachtungspunkt in Abhängigkeit davon, wo das Linsenfeld ist und wie es bewegt wird, unterschiedlich bewegt. Für eine X-Y Bewegung hängt die Nachführung von dem Wert von Linse_z bezogen auf Auge_z ab. Wenn Linse_z nahe an 0 ist, ist das Linsenfeld nahe an der z = 0 Ebene. Nachführen ist in diesem Fall nicht wirklich notwendig, da, wie Fig. 4(b) zeigt, das Linsenfeld mit einer viel kleineren Wahrscheinlichkeit aus der Sicht der Betrachtungsebene 214 herausbewegt wird, so dass eine Betrachtungspunkt-Nachführung für Linse_z unterhalb eines gewissen Schwellenwertes nicht durchgeführt wird. Wenn andererseits das Linsenfeld nahe an dem Betrachtungspunkt liegt (Linse_z nahe Auge_z), folgt der Betrachtungspunkt dem Linsenfeld, um das Linsenfeld in Sicht zu behalten. Dies kann dadurch erfolgen, dass Auge_x und Auge_y wie folgt bewegt werden: Auge_x = Auge_x + (x_diff* (Linse_z/Auge_z)) und Auge_y = Auge_y + (y_diff* (Linse_z/Auge_z)), wobei x_diff und y_diff die Änderung in den x-y Koordinaten der Linse sind.
  • Wenn das Linsenfeld in der z Richtung bewegt wird, wird der Betrachtungspunkt bewegt, um den Anschein zu geben, dass die Linse an dem einen Ort bleibt und nur in der Größe wächst oder schrumpft. Dies erfolgt dadurch, dass Auge_x und Auge_y wie folgt eingestellt werden: Auge_x = Auge_x - (x_Abstand * Linse_Stell_Faktor) und Auge_y = Auge_y - (y_Abstand * Linse_Stell_Faktor), wobei Linse_Stell_Faktor die prozentuale Änderung in dem Wert von Auge_z ist. Wenn sich die Linse von dem Betrachtungspunkt weg in der z Richtung bewegt, sind x_Abstand = (Auge_x - Auge_x&sub0;) und y_Abstand = (Auge_y - Auge_y&sub0;), wobei (Auge_x&sub0;, Auge_y&sub0;) die x-y Anfangskoordinaten des über dem Bild zentrierten Betrachtungspunktes sind. Das Ergebnis ist, dass die Linse in etwa der gleichen Position auf dem Bildschirm zu bleiben scheint, und nur geringer wächst. Wenn sich die Linse in Richtung auf den Betrachtungspunkt bewegt, sind x_Abstand = (Auge_x - Linse_Mitte_x) und y_Abstand = (Auge_y - Linse_Mitte_y). Das Ergebnis in diesem Fall ist, dass die Linse in etwa der gleichen Position auf dem Bildschirm zu bleiben scheint und nur stärker wächst.
  • Sobald die Linsen- und Betrachtungspunkt-Positionen eingestellt worden sind, kehrt die CPU 130 zum Block 302 zurück und wiederholt den Prozess.
  • Die 3D Transformation für das Linsenfeld ist eine Translation des Feldes von z = 0 nach z = Linse_z, gefolgt von der perspektivischen 3D Transformation. Fig. 7(a) ist ein Flußdiagramm eines Programms, das von der CPU 130 ausgeführt wird, um das Linsenfeld auf der Bildfläche 104 aufzubauen, wie es im Block 303 von Fig. 6 gefordert werden könnte.
  • Zunächst wird am Block 350 das Linsenfeld nach z = Linse_z verschoben. Als nächstes werden am Block 352 Beschneidungs-Ebenen für das Linsenfeld gesetzt. Für eine rechteckige Linse werden vier Beschneidungs-Ebenen verwendet, um anzugeben, welcher Teil des Vollbildes innerhalb der Linse ist und welche Teile nicht. Diese Beschneidungs-Ebenen werden zu zwei Zwecken benutzt. In dem nächsten Block, Block 354, werden Objekte, die nicht Teil des Bildabschnittes innerhalb des Linsenfelds sind, während der Wiedergabe aus der Betrachtung beseitigt, so dass sie nicht bearbeitet werden müssen. Objekte, die teilweise in einem Feld sind, wie beispielsweise eine in Fig. 8 dargestellte Seite 400, die nur teilweise in einem Linsenfeld 402 ist, werden nicht beseitigt, aber ein Teil des Aufgebauten Bildes von dieser Seite wird durch die Beschneidungs- Ebenen beschnitten. Beschneidungs-Ebenen sind zum Beschneiden nicht erforderlich, sie werden aber üblicherweise verwendet, wo das Display-System Hardware hat, die Beschneidungs-Ebenen unterstützt, was sie schnell macht und ihre Codierung einfach macht.
  • Am Block 356 wird das Detailbild innerhalb des Linsenfelds aufgebaut. Das Bild wird, wie es in der Technik bekannt ist, aus dem Vollbild, den Grenzen des Linsenfelds auf dem Vollbild, den Grenzen der Linse auf der Bildfläche, der Pixelauflösung der Bildfläche und der Transformationsmatrix zwischen Punkten auf dem Vollbild und Punkten auf der Bildfläche aufgebaut.
  • Nach dem Aufbau, wird das Linsenfeld dargestellt (oder in einem Bildpuffer gespeichert, bis der Rest der Anzeige aufgebaut). Als nächstes wird am Block 358 die Linsengrenze zu dem dargestellten Bild hinzuaddiert. Die Linsengrenze könnte entweder eine ausgezogene Linie oder eine gestrichelte Linie sein.
  • Die 3D Transformation für ein Seitenfeld des Bildes ist eine Drehung um die Seitenfeldkante, die eine Kante von dem Vollbild bildet, gefolgt von einer Skalierung des Seitenfelder in Richtung auf das Linsenfeld, so dass das Seitenfeld auf das Linsenfeld trifft. Nach der 3D Transformation ist die perspektivische 3D Transformation fertig, jedoch könnten alle diese Transformationen durch eine einfache Matrix-Multiplikation ausgeführt werden.
  • Fig. 7(b) ist ein Flußdiagramm von einem von der CPU 130 ausgeführten Programm, um das Seitenfeld auf einer Bildfläche aufzubauen. Am Block 370 wird das Seitenfeld um tan&supmin;¹(Linse_z/Feld_Höhe) um die Bildkante gedreht, welch die eine Kante von dem Seitenfeld bildet, wobei Feld_Höhe der Abstand zwischen der Drehachse und der gegenüberliegenden Kante des Seitenfelder ist, der Kante, die mit der Kante von dem Linsenfeld in dem Vollbild zusammentrifft.
  • Als nächstes expandiert die CPU 130 am Block 372 das Seitenfeld, so dass es wieder mit der Kante von dem Linsenfeld "zusammentrifft", das in dem 3D Raum nach oben bewegt worden ist. Das Seitenfeld wird um einen Faktor (Feld_Höhe² + Linsen_z²)1/2/ Feld_Höhe expandiert. Die Werte von Feld_Höhe für die unteren, oberen, linken und rechten Seitenfelder, wie sie in Fig. 5(a) dargestellt sind, sind Linse_y, y_max-Linse_y- Linse_Höhe, Linse_x bzw. x_max-Linse_x-Linse_Breite.
  • Nach der Rotation und Expansion "treffen" die Seitenfelder das Linsenfeld im 3D Raum, so dass die perspektivische 3D Transformation der Seitenfelder, wenn sie zu der Transformation des Linsenfelds hinzuaddiert ist, das gesamte Bild, wenn mit variierenden Detailebenen darstellt. Da das gesamte Bild dargestellt ist, ist der Kontext bewahrt.
  • Am Block 374 werden die Beschneidungs-Ebenen für das Seitenfeld gesetzt. Auch hier werden vier Beschneidungs-Ebenen verwendet, aber sie bilden ein Trapez anstelle eines Rechteckes, wie es bei den Beschneidungs-Ebenen für das Linsenfeld der Fall war. Am Block 376 werden Objekte, die vollständig außerhalb der Beschneidungs-Ebenen sind, beseitigt.
  • Am Block 378 wird das Bild innerhalb des Seitenfelder, das gerade bearbeitet wird, aufgebaut, wobei die Transformationsmatrix für die Kombination von den zwei 3D Transformationen und der perspektivischen 3D Transformation verwendet werden, wobei das Seitenfeld dann bildlich dargestellt oder in einem Bildpuffer gespeichert wird, bis der Rest der Anzeige aufgebaut ist.
  • Fig. 8 stellte eine Anzeigefläche dar, die aus der Anwendung einer Dokumentenlinse auf ein Bild resultiert, das viele Textseiten umfasst. Wie in Fig. 8 dargestellt ist, wird der Text dort, wo das Bild Text ist, innerhalb des Linsenfelds in der Schriftart für diesen Text aufgebaut, aber der Text innerhalb der Seitenfelder kann in einer mäanderartigen Schriftart aufgebaut sein. In einer mäanderartigen Schriftart wird eine Textzeile nur als eine Linie aufgebaut. Eine Darstellung in mäanderartiger Schriftart wird verwendet, wo Geschwindigkeit wichtig ist, wenn sich beispielsweise die Linse bewegt und viele Einzelbilder schnell generiert werden müssen, um den Anschein einer Bewegung zu erzeugen. In der einen Ausführungsform wird der Text der Seitenfelder immer mäanderartig dargestellt, während in einer anderen Ausführungsform der Text nur in den Seitenfelder mäanderartig dargestellt wird, wenn die Linse in Bewegung ist. Fig. 8 stellt dar, wie ein globaler Kontext unter Verwendung eines Displaysystems gemäß der vorliegenden Erfindung bewahrt wird. Bei einem vielfarbigen Display oder anderen Mitteln zum Kontrastieren von Text könnte das dargestellte Bild Text mit einer unterschiedlichen Farbe enthalten, um die Vorkommen eines Suchbegriffs darzustellen. Die globalen Ergebnisse der Suche könnten sogar dort dargestellt werden, wo die Seitenfelder mäanderartig dargestellt sind, wobei die mäanderartig dargestellten Zeilen die Farbe des zugrundeliegenden Textes beibehalten. Auf diese Weise würden die Vorkommen von Suchbegriffen trotzdem für das gesamte Bild gezeigt, selbst wenn die Seitenfelder mäanderartig dargestellt wären.
  • Fig. 9 ist ein Liniendiagramm einer verschachtelten Bildlinse. Um das Bild gemäß Fig. 9 zu erzeugen, wird zuerst das Bild, das durch eine Grenze 500 begrenzt ist, transformiert, wobei eine Bildlinse gemäß vorstehender Beschreibung verwendet wird, was die Seitenfelder 502, 504, 506, 508 und ein Linsenfeld 510 zur Folge hat. Das Linsenfeld 510 wird dann transformiert, als wäre es selbst ein Bild, was die Seitenfelder 512, 514, 516, 518 und die verschachtelte Bildlinse 520 zur Folge hat. Unter Verwendung eines im voraus erstellten Satzes von Eingangsbefehlen verändert der Betrachter die Bewegung des Linsenfelds 510 und des Linsenfelds 520. Eine Möglichkeit gesteht darin, dass eine Taste auf der Tastatur als die Linsenzeigertaste bezeichnet wird, welche, wenn sie gedrückt wird, das "laufende" Linsenfeld ändert, auf das die Linsenbewegungs- und Abmessungsbefehle angewendet werden. Es könnte eine Taste vorgesehen werden, um die verschachtelte Bildlinse 520 auszuschalten, oder der Betrachter könnte sie einfach manipulieren, um sich für den gleichen Effekt auf der Oberfläche der verschachtelten Bildlinse 510 zu befinden.
  • Das Bild in Fig. 9 würde auf neun Felder dargestellt werden. Es sollte jedoch klar sein, dass die Verschachtelung nicht auf zwei Ebenen begrenzt ist, sondern so viele aufweisen könnte, wie es für das spezielle Bild nützlich ist. Zusätzlich sollte auch deutlich sein, dass die verschachtelte Bildlinse nicht nur die verschachtelnde Bildlinse modifizieren muss, sondern die verschachtelte Bildlinse ein Seitenfeld von dem verschachtelnden Bild modifizieren könnte. Es sollte auch deutlich sein, dass die Betrachtungspunkt- Nachführung so modifiziert werden könnte, dass der Betrachtungspunkt dem Linsenfeld 510 folgt, um diese im Blickpunkt zu behalten, und dem Linsenfeld 520 im Blickpunkt bezogen auf das Bild 500 oder bezogen auf das Bild auf dem Linsenfeld 510 folgt. Das erstere wäre eine Erweiterung der vorstehend beschriebenen Betrachtungspunkt- Nachführung, wobei das Linsenfeld 510 als eine Basis verwendet wird, wogegen das letztere das Linsenfeld 500 als eine Basis verwenden würde.

Claims (9)

1. Verfahren zum Darstellen eines Bildes auf einer Bildfläche (104), welches die Schritte umfasst:
Beschreiben des Bildes durch einen Satz von Objekten (400), die in einem bildbegrenzenden Rechteck (500) auf einer Basisebene angeordnet sind,
gekennzeichnet durch die Schritte:
Anordnen (309) eines Linsenfelds (510; 402) innerhalb des bildbegrenzenden Rechteckes (500), wobei die Seiten des Linsenfelds parallel zu entsprechenden Seiten des bildbegrenzenden Rechtecks sind,
Teilen (302) des bildbegrenzenden Rechteckes in das Linsenfeld (510; 402) und vier Seitenfelder (502, 504, 506, 508), wobei jedes Seitenfeld der Abschnitt des bildbegrenzenden Rechtecks (500) zwischen einer Kante des bildbegrenzenden Rechteckes und der parallelen Kante des Linsenfelds, die auf die Kante des bildbegrenzenden Rechteckes gerichtet und Linien ist, die zu den Ecken der Kanten des bildbegrenzenden Rechteckes und der Bildlinse gezogen sind, wodurch jedes Seitenfeld ein Trapez bildet,
Definieren einer linearen Vergrößerung des Linsenfelds (510; 402) von einer ursprünglichen Größe zu einer neuen Größe,
Definieren von Seitentransformationen der Seitenfelder von ursprünglichen Trapezen zu neuen Trapezen, die dadurch definiert werden, dass die zu den Ecken gezogenen Linien neu gezogen werden durch Ziehen zu den Ecken des vergrößerten Linsenfelds (E'F'G'H') sowie durch Dehnen und Komprimieren des Inneren der ursprünglichen Trapeze, so dass die neuen Trapeze als Projektionen der ursprünglichen Trapeze auf den Seiten von einer beschnittenen Pyramide erscheinen, deren Deckfläche durch das vergrößerte Linsenfeld gebildet wird, und
Aufbauen (303) des Satzes von Objekten (400) durch die Seitentransformationen und die Vergrößerung auf der Bildfläche (104).
2. Verfahren nach Anspruch 1, wobei die Objekte Textzeichen, Zeilen von Zeichen und Seiten von Zeilen sind und das Bild ein Dokument ist oder die Objekte Knoten und Linien sind und das Bild eine Karte ist.
3. Verfahren nach Anspruch 1 oder 2, wobei der Aufbauschritt für das Linsenfeld und die Seitenfelder unterschiedlich ist, wobei der Aufbauschritt für ein Seitenfeld eine kleinere Auflösung hat als ein Aufbau für das Linsenfeld (Fig. 8).
4. Verfahren nach Anspruch 3, wobei das Bild ein Textdokument ist und die kleinere Auflösung unter Verwendung einer mäanderartigen Darstellung (greeked Font) für Text in den mehreren Seitenfelder bereitgestellt wird.
5. Verfahren nach einem der Ansprüche 1 bis 4, wobei das Bild auf der Bildfläche (104) unter Erhaltung der Kontext-Information durch die Seitenfelder (502, 504, 506, 508) und der Detail-Information durch das Linsenfeld (510; 402) dargestellt wird, selbst wenn das Bild zu viele Details, für eine gleichzeitige Darstellung auf der Bildfläche (104) enthält, und welches ferner die Schritte umfasst:
Speichern eines Datenblockes, der die Objekte darstellt, wobei ein Vollbild ein Bild ist, das aus dem Datenblock vor einer Vergrößerung oder Transformation von jedem Feld generiert wird,
Bestimmen eines Layouts des Vollbildes in zwei Dimensionen, das auf der Bildfläche (104) dargestellt werden soll und Kontext-Information enthält,
Abbilden des Linsenfelds (510, 402) und der Seitenfelder (502, 504, 506, 508) auf eine beschnittene Pyramide in einem 3D Raum, wobei die Seitenfelder Wandflächen der beschnittenen Pyramide bilden, und
Transformieren der beschnittenen Pyramide durch eine perspektivische Transformation, um ein transformiertes 3D Layout zu bilden, wobei sich ein Betrachtungspunkt für die perspektivische Transformation über dem Linsenfeld befindet.
6. Verfahren nach Anspruch 5, wobei der Schritt der Abbildung auf die beschnittene Pyramide die Schritte enthält:
Ermitteln eines Vergrößerungsfaktors von Bildabschnitten unterhalb des Linsenfelds bezogen auf Grenzen des Vollbildes,
Setzen einer Höhe der beschnittenen Pyramide derart, dass ein Verhältnis eines Abstands von dem Betrachtungspunkt zu einer Basis der beschnittenen Pyramide und eines Abstands von dem Betrachtungspunkt zu der Deckfläche der beschnittenen Pyramide gleich dem Vergrößerungsfaktor ist, und
Drehen und Expandieren der mehreren Seitenfelder, um die Wände der beschnittenen Pyramide anzupassen.
7. Kontext-bewahrende Bildanzeigevorrichtung, mit einer Bildfläche (104), die ein Bild darstellt, welche umfasst:
eine Bildeingabeeinichtung (132) zum Annehmen eines das Bild darstellenden Pixelarrays,
eine Feld-bildende Einrichtung, die mit der Bildeingabevorrichtung gekoppelt ist, zum Abbilden von Pixels in dem Pixelarray auf Felder in einem Satz von Feldern, wobei der Satz der Felder ein Linsenfeld (510, 402) und Seitenfelder (502, 504, 506, 508) umfasst,
eine Transformationseinrichtung (130, 138), die so verbunden ist, dass sie von der Feld-bildenden Einrichtung Pixel empfängt, die jedem Feld des Satzes der Felder zugeordnet sind, zum Transformieren der Pixel gemäß einer Transformationsfunktion für jedes Feld, dem die Pixel zugeordnet sind, wobei die Transformationsfunktion für das Linsenfeld eine lineare Vergrößerung ist, wobei die Transformationsfunktionen ein Displaypixelarray bilden, und
einen Display-Treiber, der zum Empfang des Displaypixelarrays von der Transformationsvorrichtung gekoppelt ist, wobei der Display-Treiber das Displaypixelarray an die Bildfläche (104) liefert, damit die Bildfläche (104) Pixel gemäß Werten in dem Displaypixelarray beleuchten kann,
dadurch gekennzeichnet, dass
der Satz der Felder vier Seitenfelder (502, 504, 506, 508) umfasst, wobei jedes Seitenfeld ein Abschnitt eines Bildes zwischen einer Kante des Bildes und einer Kante des Linsenfelds (510, 402), die der Kante des Bildes gegenüberliegt, und Linien ist, die zu den Ecken der Bildkanten und des Linsenfelds gezogen sind, und
die Transformationsfunktionen der Seitenfelder (502, 504, 506, 508) dadurch definiert sind, dass die zu den Ecken gezogenen Linien, die zu den Ecken des zu vergrößernden Linsenfelds (E'F'G'H')zu ziehen sind, neu gezogen werden, sowie auch das Innere der ursprünglichen Trapeze gedehnt und komprimiert wird, so dass die neuen Trapeze als Projektionen der ursprünglichen Trapeze auf den Seiten einer beschnittenen Pyramide erscheinen, deren Deckfläche durch das vergrößerte Linsenfeld gebildet wird.
8. Vorrichtung nach Anspruch 7, wobei die Feld-bildende Einrichtung ferner Mittel zum Bewegen von Grenzen zwischen den Feldern umfasst.
9. Vorrichtung nach Anspruch 7 oder 8, wobei die Transformation des Linsenfelds eine Anzeige von im wesentlichen dem gesamten Informationsgehalt des Bildes innerhalb des Linsenfelds zur Folge hat und wobei der Satz von wenigstens vier Seitenfeldern (502, 504, 506, 508) ein oberes, unteres, linkes und rechtes Seitenfeld umfasst, welche Projektionen auf die Bildfläche (104) einer beschnittenen Pyramide sind, auf welche das Bild abgebildet worden ist.
DE69428491T 1993-10-26 1994-10-25 Bildlinse Expired - Lifetime DE69428491T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/143,323 US5670984A (en) 1993-10-26 1993-10-26 Image lens

Publications (2)

Publication Number Publication Date
DE69428491D1 DE69428491D1 (de) 2001-11-08
DE69428491T2 true DE69428491T2 (de) 2002-05-23

Family

ID=22503569

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69428491T Expired - Lifetime DE69428491T2 (de) 1993-10-26 1994-10-25 Bildlinse

Country Status (4)

Country Link
US (1) US5670984A (de)
EP (1) EP0650144B1 (de)
JP (1) JPH07181952A (de)
DE (1) DE69428491T2 (de)

Families Citing this family (124)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5920327A (en) * 1995-06-06 1999-07-06 Microsoft Corporation Multiple resolution data display
US6081277A (en) * 1995-09-28 2000-06-27 Sony Corporation Apparatus and method for controlling image display
US5966139A (en) * 1995-10-31 1999-10-12 Lucent Technologies Inc. Scalable data segmentation and visualization system
WO1997041506A1 (en) * 1996-04-30 1997-11-06 Sony Electronics Inc. User interface for navigating among, organizing and executing program, files and data in a computer system
US5880733A (en) * 1996-04-30 1999-03-09 Microsoft Corporation Display system and method for displaying windows of an operating system to provide a three-dimensional workspace for a computer system
US6043818A (en) * 1996-04-30 2000-03-28 Sony Corporation Background image with a continuously rotating and functional 3D icon
US5838326A (en) * 1996-09-26 1998-11-17 Xerox Corporation System for moving document objects in a 3-D workspace
US5847709A (en) * 1996-09-26 1998-12-08 Xerox Corporation 3-D document workspace with focus, immediate and tertiary spaces
JP3720951B2 (ja) * 1996-09-30 2005-11-30 富士通株式会社 情報処理装置及びプログラム記録媒体
US5943679A (en) * 1996-10-30 1999-08-24 Xerox Corporation Multi-page document viewer having a focus image and recursively nested images of varying resolutions less than the resolution of the focus image
US6198483B1 (en) * 1997-01-30 2001-03-06 Ken Launais Motion user interface
US6111573A (en) * 1997-02-14 2000-08-29 Velocity.Com, Inc. Device independent window and view system
US6044385A (en) * 1997-09-10 2000-03-28 International Business Machines Corporation Method and system for efficiently managing the manipulation of large documents displayed within a computer screen
US6172685B1 (en) 1997-11-24 2001-01-09 Intel Corporation Method and apparatus for increasing the amount and utility of displayed information
US6628312B1 (en) 1997-12-02 2003-09-30 Inxight Software, Inc. Interactive interface for visualizing and manipulating multi-dimensional data
US6091395A (en) 1997-12-15 2000-07-18 International Business Machines Corporation Computer system and method of manipulating a graphical user interface component on a computer display through collision with a pointer
US6308187B1 (en) 1998-02-09 2001-10-23 International Business Machines Corporation Computer system and method for abstracting and accessing a chronologically-arranged collection of information
US6275227B1 (en) 1998-02-09 2001-08-14 International Business Machines Corporation Computer system and method for controlling the same utilizing a user interface control integrated with multiple sets of instructional material therefor
US6874123B1 (en) 1998-02-09 2005-03-29 International Business Machines Corporation Three-dimensional model to facilitate user comprehension and management of information
US6414677B1 (en) 1998-09-14 2002-07-02 Microsoft Corporation Methods, apparatus and data structures for providing a user interface, which exploits spatial memory in three-dimensions, to objects and which visually groups proximally located objects
US6188405B1 (en) 1998-09-14 2001-02-13 Microsoft Corporation Methods, apparatus and data structures for providing a user interface, which exploits spatial memory, to objects
US6243093B1 (en) 1998-09-14 2001-06-05 Microsoft Corporation Methods, apparatus and data structures for providing a user interface, which exploits spatial memory in three-dimensions, to objects and which visually groups matching objects
US6160553A (en) * 1998-09-14 2000-12-12 Microsoft Corporation Methods, apparatus and data structures for providing a user interface, which exploits spatial memory in three-dimensions, to objects and in which object occlusion is avoided
US6166738A (en) * 1998-09-14 2000-12-26 Microsoft Corporation Methods, apparatus and data structures for providing a user interface, which exploits spatial memory in three-dimensions, to objects
JP3508915B2 (ja) * 1998-09-18 2004-03-22 シャープ株式会社 データ表示制御方法、データ表示制御装置、及びデータ表示制御プログラムを記録したコンピュータ読み取り可能な記録媒体
US6295056B1 (en) * 1998-12-03 2001-09-25 International Business Machines Modulating the dimensions of environmentally related and proportionally sized displayed objects to conform selected object dimensions to limitations of a defined display space
US6377284B1 (en) * 1998-12-10 2002-04-23 International Business Machines Corporation Method of geometrically expanding vertically compressed lists of data
US6788311B1 (en) * 1999-04-28 2004-09-07 Intel Corporation Displaying data on lower resolution displays
US7434177B1 (en) * 1999-12-20 2008-10-07 Apple Inc. User interface for providing consolidation and access
JP2001188639A (ja) * 1999-12-28 2001-07-10 Internatl Business Mach Corp <Ibm> 拡大および縮小領域を表示する方法および装置
US6686938B1 (en) * 2000-01-05 2004-02-03 Apple Computer, Inc. Method and system for providing an embedded application toolbar
US7009626B2 (en) * 2000-04-14 2006-03-07 Picsel Technologies Limited Systems and methods for generating visual representations of graphical data and digital document processing
US7576730B2 (en) 2000-04-14 2009-08-18 Picsel (Research) Limited User interface systems and methods for viewing and manipulating digital documents
US6938218B1 (en) 2000-04-28 2005-08-30 James Nolen Method and apparatus for three dimensional internet and computer file interface
DE10028658A1 (de) * 2000-06-09 2001-12-13 Nokia Mobile Phones Ltd Verfahren zur Darstellung von Abbildungen auf einem Display
SE522121C2 (sv) 2000-10-04 2004-01-13 Axis Ab Metod och anordning för digital behandling av frekvent uppdaterade bilder från en kamera
CA2323569A1 (en) * 2000-10-18 2002-04-18 Advanced Numerical Methods Ltd. Elastic presentation space
US7134092B2 (en) * 2000-11-13 2006-11-07 James Nolen Graphical user interface method and apparatus
US6922815B2 (en) * 2000-11-21 2005-07-26 James A. Nolen, III Display method and apparatus for facilitating interaction with Web sites
US7443396B2 (en) * 2000-11-29 2008-10-28 National Instruments Corporation Instrument having a virtual magnifying glass for displaying magnified portions of a signal waveform
CA2328795A1 (en) * 2000-12-19 2002-06-19 Advanced Numerical Methods Ltd. Applications and performance enhancements for detail-in-context viewing technology
US6924822B2 (en) * 2000-12-21 2005-08-02 Xerox Corporation Magnification methods, systems, and computer program products for virtual three-dimensional books
EP1816553B1 (de) * 2000-12-21 2011-08-31 Xerox Corporation Systeme und Rechnerprogramme zur Darstellung und Bedienung von virtuellen dreidimensionalen Büchern
US7069518B2 (en) 2000-12-21 2006-06-27 Xerox Corporation Indexing methods, systems, and computer program products for virtual three-dimensional books
US7240291B2 (en) * 2000-12-21 2007-07-03 Xerox Corporation Methods, systems, and computer program products for display of information relating to a virtual three-dimensional book
US7139982B2 (en) * 2000-12-21 2006-11-21 Xerox Corporation Navigation methods, systems, and computer program products for virtual three-dimensional books
US7015910B2 (en) * 2000-12-21 2006-03-21 Xerox Corporation Methods, systems, and computer program products for the display and operation of virtual three-dimensional books
US20020080152A1 (en) * 2000-12-22 2002-06-27 Takuma Sudo Event-for-change oriented information display method and information processing system using the same method
JP3916124B2 (ja) 2001-02-15 2007-05-16 インターナショナル・ビジネス・マシーンズ・コーポレーション デジタル文書閲覧システム、ブラウザ、デジタル文書表示方法、プログラム及び記憶媒体
US8416266B2 (en) 2001-05-03 2013-04-09 Noregin Assetts N.V., L.L.C. Interacting with detail-in-context presentations
CA2345803A1 (en) * 2001-05-03 2002-11-03 Idelix Software Inc. User interface elements for pliable display technology implementations
US20020167534A1 (en) * 2001-05-10 2002-11-14 Garrett Burke Reading aid for electronic text and displays
US7213214B2 (en) * 2001-06-12 2007-05-01 Idelix Software Inc. Graphical user interface with zoom for detail-in-context presentations
US9760235B2 (en) 2001-06-12 2017-09-12 Callahan Cellular L.L.C. Lens-defined adjustment of displays
US7084886B2 (en) 2002-07-16 2006-08-01 Idelix Software Inc. Using detail-in-context lenses for accurate digital image cropping and measurement
FR2828571B1 (fr) * 2001-08-10 2003-12-19 Sagem Procede de reconnaissance d'empreintes digitales par zoom d'image
WO2003023592A2 (de) * 2001-09-13 2003-03-20 3Dconnexion Gmbh Desktopmanager
CA2361341A1 (en) 2001-11-07 2003-05-07 Idelix Software Inc. Use of detail-in-context presentation on stereoscopically paired images
US6894696B2 (en) * 2001-12-21 2005-05-17 Sony Corporation Method and apparatus for providing refractive transparency in selected areas of video displays
CA2370752A1 (en) * 2002-02-05 2003-08-05 Idelix Software Inc. Fast rendering of pyramid lens distorted raster images
CA2370751A1 (en) * 2002-02-05 2003-08-05 Garth B.D. Shoemaker Fast and accurate rendering of pliable display technology distortions using pre-calculated texel coverages
DE10209087A1 (de) * 2002-03-01 2003-09-11 Siemens Ag Verfahren zur optischen Hervorhebung von Informationen eines Bereichs der Benutzeroberfläche einer Computer-Anwenderstation
US7308421B2 (en) * 2002-04-12 2007-12-11 Vendavo, Inc. System and method for grouping products in a catalog
US7233928B2 (en) * 2002-04-12 2007-06-19 Vendavo, Inc. Rule-based system for determining price adjustments in a product catalog
US7912792B2 (en) * 2002-07-12 2011-03-22 Vendavo, Inc. Systems and methods for making margin-sensitive price adjustments in an integrated price management system
US8120624B2 (en) 2002-07-16 2012-02-21 Noregin Assets N.V. L.L.C. Detail-in-context lenses for digital image cropping, measurement and online maps
US20070064018A1 (en) * 2005-06-24 2007-03-22 Idelix Software Inc. Detail-in-context lenses for online maps
CA2393887A1 (en) 2002-07-17 2004-01-17 Idelix Software Inc. Enhancements to user interface for detail-in-context data presentation
US20040125143A1 (en) * 2002-07-22 2004-07-01 Kenneth Deaton Display system and method for displaying a multi-dimensional file visualizer and chooser
CA2406131A1 (en) 2002-09-30 2004-03-30 Idelix Software Inc. A graphical user interface using detail-in-context folding
US7454707B2 (en) * 2002-09-30 2008-11-18 Canon Kabushiki Kaisha Image editing method, image editing apparatus, program for implementing image editing method, and recording medium recording program
CA2449888A1 (en) 2003-11-17 2005-05-17 Idelix Software Inc. Navigating large images using detail-in-context fisheye rendering techniques
CA2411898A1 (en) * 2002-11-15 2004-05-15 Idelix Software Inc. A method and system for controlling access to detail-in-context presentations
US7015912B2 (en) * 2003-01-13 2006-03-21 Vendavo, Inc. System and method for the visual display of data in an interactive zebra chart
CA2426512A1 (en) * 2003-04-22 2004-10-22 Garth Shoemaker Positioning and manipulating detail-in-context lenses in 2d and 3d data through the application of eye tracking or position tracking
US20050012751A1 (en) * 2003-07-18 2005-01-20 Karlov Donald David Systems and methods for efficiently updating complex graphics in a computer system by by-passing the graphical processing unit and rendering graphics in main memory
US7145566B2 (en) * 2003-07-18 2006-12-05 Microsoft Corporation Systems and methods for updating a frame buffer based on arbitrary graphics calls
US7312806B2 (en) * 2004-01-28 2007-12-25 Idelix Software Inc. Dynamic width adjustment for detail-in-context lenses
US7486302B2 (en) 2004-04-14 2009-02-03 Noregin Assets N.V., L.L.C. Fisheye lens graphical user interfaces
US8458060B2 (en) * 2004-05-28 2013-06-04 Vendavo, Inc. System and method for organizing price modeling data using hierarchically organized portfolios
US8106927B2 (en) 2004-05-28 2012-01-31 Noregin Assets N.V., L.L.C. Graphical user interfaces and occlusion prevention for fisheye lenses with line segment foci
US20060004861A1 (en) * 2004-05-28 2006-01-05 Albanese Michael J System and method for displaying price modeling data
US20050278227A1 (en) * 2004-05-28 2005-12-15 Niel Esary Systems and methods of managing price modeling data through closed-loop analytics
US7640198B1 (en) 2004-05-28 2009-12-29 Vendavo, Inc. System and method for generating and displaying indexed price modeling data
US9317945B2 (en) 2004-06-23 2016-04-19 Callahan Cellular L.L.C. Detail-in-context lenses for navigation
US20060031179A1 (en) * 2004-08-09 2006-02-09 Vendavo, Inc. Systems and methods for making margin-sensitive price adjustments in an integrated price management system
US7613626B1 (en) 2004-08-09 2009-11-03 Vendavo, Inc. Integrated price management systems with future-pricing and methods therefor
US8396814B1 (en) 2004-08-09 2013-03-12 Vendavo, Inc. Systems and methods for index-based pricing in a price management system
US20060047574A1 (en) * 2004-08-27 2006-03-02 Shankar Sundaram Methods and systems for managing hierarchically organized objects in a pricing adjustment system
US7714859B2 (en) * 2004-09-03 2010-05-11 Shoemaker Garth B D Occlusion reduction and magnification for multidimensional data presentations
US7995078B2 (en) * 2004-09-29 2011-08-09 Noregin Assets, N.V., L.L.C. Compound lenses for multi-source data presentation
US7360697B1 (en) 2004-11-18 2008-04-22 Vendavo, Inc. Methods and systems for making pricing decisions in a price management system
US7580036B2 (en) 2005-04-13 2009-08-25 Catherine Montagnese Detail-in-context terrain displacement algorithm with optimizations
US7562085B2 (en) * 2005-05-24 2009-07-14 Palo Alto Research Center Incorporated Systems and methods for displaying linked information in a sorted context
US7552398B2 (en) * 2005-05-24 2009-06-23 Palo Alto Research Center Incorporated Systems and methods for semantically zooming information
US8031206B2 (en) 2005-10-12 2011-10-04 Noregin Assets N.V., L.L.C. Method and system for generating pyramid fisheye lens detail-in-context presentations
CN101331473B (zh) * 2005-12-07 2017-03-08 三维实验室公司 操纵网页的方法
US20070157160A1 (en) * 2005-12-30 2007-07-05 Udo Arend Auto-zoomable snippets in multiple snippet windows
US7657848B2 (en) * 2006-01-09 2010-02-02 Sas Institute Inc. Computer-implemented node-link processing systems and methods
JP4825561B2 (ja) * 2006-03-29 2011-11-30 株式会社東芝 画像表示装置
US7983473B2 (en) 2006-04-11 2011-07-19 Noregin Assets, N.V., L.L.C. Transparency adjustment of a presentation
US20080126264A1 (en) * 2006-05-02 2008-05-29 Tellefsen Jens E Systems and methods for price optimization using business segmentation
US8301487B2 (en) * 2006-05-02 2012-10-30 Vendavo, Inc. System and methods for calibrating pricing power and risk scores
US20090259522A1 (en) * 2006-05-02 2009-10-15 Jamie Rapperport System and methods for generating quantitative pricing power and risk scores
WO2007133748A2 (en) * 2006-05-15 2007-11-22 Vendavo, Inc. Systems and methods for price setting and triangulation
US7680686B2 (en) * 2006-08-29 2010-03-16 Vendavo, Inc. System and methods for business to business price modeling using price change optimization
US20080065992A1 (en) * 2006-09-11 2008-03-13 Apple Computer, Inc. Cascaded display of video media
US20080118237A1 (en) * 2006-11-22 2008-05-22 Rainer Wegenkittl Auto-Zoom Mark-Up Display System and Method
US7904355B1 (en) 2007-02-20 2011-03-08 Vendavo, Inc. Systems and methods for a revenue causality analyzer
US20080238947A1 (en) * 2007-03-27 2008-10-02 Keahey T Alan System and method for non-linear magnification of images
US8549436B1 (en) * 2007-06-04 2013-10-01 RedZ, Inc. Visual web search interface
US9026938B2 (en) 2007-07-26 2015-05-05 Noregin Assets N.V., L.L.C. Dynamic detail-in-context user interface for application access and content access on electronic displays
US8412598B2 (en) 2008-02-06 2013-04-02 John Early Systems and methods for a causality analyzer
KR101515859B1 (ko) * 2008-12-05 2015-05-06 삼성전자 주식회사 디스플레이장치 및 그 컨텐츠 리스트 표시 방법
US8799013B2 (en) * 2009-11-24 2014-08-05 Penrad Technologies, Inc. Mammography information system
US8687860B2 (en) * 2009-11-24 2014-04-01 Penrad Technologies, Inc. Mammography statistical diagnostic profiler and prediction system
JP2011112678A (ja) * 2009-11-24 2011-06-09 Nec Casio Mobile Communications Ltd 表示制御装置、表示制御方法およびプログラム
KR101290145B1 (ko) * 2011-05-31 2013-07-26 삼성전자주식회사 터치 스크린 제어 방법 및 장치, 컴퓨터에 의해 독출될 수 있는 기록 매체, 그리고 단말장치
JP2014071854A (ja) * 2012-10-02 2014-04-21 Fuji Xerox Co Ltd 情報処理装置及びプログラム
US20140208263A1 (en) * 2013-01-24 2014-07-24 Victor Maklouf System and method for dynamically displaying characters over a screen of a computerized mobile device
US20150235344A1 (en) * 2014-02-18 2015-08-20 International Business Machines Corporation Image magnifier with focus plus context
US10319071B2 (en) 2016-03-23 2019-06-11 Qualcomm Incorporated Truncated square pyramid geometry and frame packing structure for representing virtual reality video content
US10817126B2 (en) * 2016-09-20 2020-10-27 Apple Inc. 3D document editing system
US10313664B2 (en) * 2017-01-11 2019-06-04 Qualcomm Incorporated Adjusting field of view of truncated square pyramid projection for 360-degree video

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4384338A (en) * 1980-12-24 1983-05-17 The Singer Company Methods and apparatus for blending computer image generated features
JPH0757003B2 (ja) * 1983-05-09 1995-06-14 大日本スクリ−ン製造株式会社 画像走査記録装置
DE3665639D1 (en) * 1985-05-08 1989-10-19 Sony Corp Video signal processing
US4791581A (en) * 1985-07-27 1988-12-13 Sony Corporation Method and apparatus of forming curved surfaces
GB8611554D0 (en) * 1986-05-12 1986-06-18 Crosfield Electronics Ltd Image display
US4790028A (en) * 1986-09-12 1988-12-06 Westinghouse Electric Corp. Method and apparatus for generating variably scaled displays
GB8909367D0 (en) * 1989-04-25 1989-06-14 Quantel Ltd Manipulating electronically stored images
JP3245655B2 (ja) * 1990-03-05 2002-01-15 インキサイト ソフトウェア インコーポレイテッド 作業スペースの表示処理方法
US5341466A (en) * 1991-05-09 1994-08-23 New York University Fractal computer user centerface with zooming capability

Also Published As

Publication number Publication date
US5670984A (en) 1997-09-23
JPH07181952A (ja) 1995-07-21
EP0650144B1 (de) 2001-10-04
DE69428491D1 (de) 2001-11-08
EP0650144A1 (de) 1995-04-26

Similar Documents

Publication Publication Date Title
DE69428491T2 (de) Bildlinse
DE69428323T2 (de) Ein Bildanzeigevorrichtung
DE69129712T2 (de) Arbeitsraumanzeigen
DE69830767T2 (de) Verfahren und Vorrichtung zum Zusammensetzen geschichteter synthetischer graphischer Filter
DE69822545T2 (de) Bildverbesserung unter Benutzung einer Flächeninterpolation
DE69534331T2 (de) Verfahren und Vorrichtung zur Hervorhebung der Einzelheit einer Baumstruktur
DE3750784T2 (de) Generation eines intrapolierten charakteristischen Wertes zur Anzeige.
DE69312505T2 (de) Polygonaufrasterung
DE69221414T2 (de) Intelligenter Schriftartdarstellungskoprozessor
DE69626394T2 (de) Verfahren und vorrichtung zur verminderung des speicherbedarfs für anzeigedaten
DE60031337T2 (de) Geräteabhängige Darstellung von Zeichen
DE69826044T2 (de) Vektorkartenplanarisierung und -einfang
DE3689271T2 (de) Verfahren zur Bildanzeige.
DE69715106T2 (de) Anti-Alias-Unterpixel-Zeichenpositionierung mit Grauwertmaskierungstechniken
DE112007001789B4 (de) Verfahren zum Bewerten eines Bildes im Hinblick auf eine dominante Linie
DE69427210T2 (de) Verfahren und Gerät zur Erzeugung von dreidimensionaler Animation
DE68923227T2 (de) Vektor-zu-Raster-Umwandlungsverfahren.
DE69622961T2 (de) Verfahren und Vorrichtung zur Darstellung von Zeichen
DE69413035T2 (de) Antialiasing-verfahren und -vorrichtung mit automatischer justierung von horizontalen und vertikalen rändern an einem zielgitter
DE69622957T2 (de) Verfahren und vorrichtung zur erzeugung von textbildern auf einer anzeigevorrichtung mit anti-aliasing effekt
DE19807053B4 (de) Strahltransformationsverfahren für eine schnelle Volumenaufbereitung für eine perspektivische Betrachtung
DE19807013B4 (de) Volumetrisches Vorabschneidungsverfahren, das eine minimale Anzahl von Abtastpunkten durch ein Volumen gewährleistet
DE69631718T2 (de) Verfahren und Gerät zur leistungsfähigen Graphikdarstellung dreidimensionaler Szenen
DE102012210521A1 (de) Unbeschnittene Zeit- und Linsen-Begrenzungen für verbesserte Probentest- Effizienz bei Bild-Rendering
DE69226574T2 (de) Verfahren und Gerät zur Reduktion des benötgten Speicherumfangs in einem digitalen Halbltonrasterungssystem

Legal Events

Date Code Title Description
8364 No opposition during term of opposition