DE69434370T2 - Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds - Google Patents

Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds Download PDF

Info

Publication number
DE69434370T2
DE69434370T2 DE69434370T DE69434370T DE69434370T2 DE 69434370 T2 DE69434370 T2 DE 69434370T2 DE 69434370 T DE69434370 T DE 69434370T DE 69434370 T DE69434370 T DE 69434370T DE 69434370 T2 DE69434370 T2 DE 69434370T2
Authority
DE
Germany
Prior art keywords
image
structured
output
pasteboard
electronic
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
DE69434370T
Other languages
English (en)
Other versions
DE69434370D1 (de
Inventor
Dennis L. Marion Venable
Michael R. Campanelli
James E. Bollman
Takashi Ashigarakami-gun Nagao
William A. Fuss
Toshiya Ebina Yamada
Kazuya Ebina Yamada
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
Application granted granted Critical
Publication of DE69434370D1 publication Critical patent/DE69434370D1/de
Publication of DE69434370T2 publication Critical patent/DE69434370T2/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
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text

Description

  • Die vorliegende Erfindung betrifft einen Bildprozessor/-generator zum Darstellen eines komplexen Farbrasterbildes als eine Sammlung von Objekten in einem hierarchie- und geräteunabhängigen Format und konkret ein strukturiertes Bildformat, das nicht nur Quellendaten, sondern auch die zu deren Wiedergabe erforderlichen Bildverarbeitungsoperationen umfasst und eine erneute Bearbeitungsmöglichkeit, die Berücksichtigung von Kundenwünschen und Verbesserungsmöglichkeiten, eine automatische Bildzusammensetzung und eine leistungsstarke Bilderzeugung mit Hilfe einer geeigneten Benutzeroberfläche unterstützt.
  • Heute gebräuchliche handelsübliche Programmpakete erfordern erheblichen Speicherplatz. So speichert beispielsweise Adobe Photoshop® während des interaktiven Bearbeitens drei Kopien des Rasterbildes voller Größe. Folglich kann für ein typisches 24-Bit-Farbbild (216 × 279 mm bei 12 Punkten/mm (8 1/2 × 11 Zoll bei 300 dpi)) möglicherweise 24 Megabit Speicher für jede Bildkopie erforderlich werden.
  • Weiterhin ist kommerzielle Software oft durch eine langsame oder mangelhafte Verarbeitungsleistung bei der Bearbeitung von großen Bildern gekennzeichnet. Wiederum muss Photoshop®, wie oben erörtert, drei Kopien des Bildes speichern (ungeachtet dessen, wie groß es ist). Da jede interaktive Operation das gesamte Bild verarbeitet, ist dieser Vorgang extrem langsam.
  • Darüber hinaus speichert typische kommerzielle Software die Ausgabebilder als komplette Rasterbilder. Daher muss für jede neue Version eines Bildes ein komplettes Raster ausgeschrieben werden, und man kann die Operationen, die in jenen Versionen enthalten sind, nicht rückgängig machen. Bei 24 Megabit pro Bild, wie oben besprochen, kann der Speicherbedarf im Laufwerk sehr groß sein. Ebenso ist für die Archivierung derartiger Bilder umfassender Speicherplatz notwendig.
  • Zudem wird beim kommerziellen Drucken dringend ein Bildprozessor benötigt, der in der Lage ist, eine Druckvorlage für die Herstellung mehrerer kundenspezifischer Bilder zu erzeugen. Falls überhaupt, gibt es nur wenige kommerzielle Bildverarbeitungspakete, die die Erzeugung einer derartigen Druckauftrags-Anwendungsvorlage ermöglichen. Darüber hinaus haben kommerzielle Bildverarbeitungs-Softwarepakete, wie beispielsweise Photoshop®, nur eine begrenzte Möglichkeit zur Wiedergabe (zum Rendern) des Ausgabebildes in einer für die Ausgabevorrichtung optimierten Art und Weise. Meist kann lediglich eine Farbkorrektur und eine einfache Änderung der Auflösung ausgeführt weiden.
  • Weiterhin ist bei einer typischen kommerziellen Bildverarbeitungssoftware die Möglichkeit sehr begrenzt, die Liste von Bildverarbeitungsoperationen, die von dem Bediener ausgeführt werden, zu bearbeiten. So ermöglicht beispielsweise Photoshop® lediglich das Rückgängigmachen eines einzigen Vorgangs. Ebenso wird bei der typischen kommerziellen Software auch keine Optimierung der Bildverarbeitung unterstützt. Das heißt, wenn einmal ein Bild erzeugt ist, können bei Bildern mit hoher Auflösung keine Operationen mehr kombiniert und die Leistungsparameter erhöht werden.
  • Schließlich gibt es ein starkes Interesse seitens der Industrie an der Theorie des strukturierten Dokuments und daran, wie sich diese Technologie auf Erzeugnisse und Dienstleistungen auswirken kann. Die aktuelle Theorie der strukturierten Dokumente betrachtet ein Rasterbild als einen Block mit einfachem Inhalt ohne jegliche hierarchische Struktur bzw. damit verbundene Bildverarbeitungsoperationen. Im Hinblick auf eine seitenorientierte Beschreibung, siehe IEEE Computer Graphics & Applications Journal, März 1991, Seiten 71-78, „Constructive Page Description" von J. Schonhut, H. Wiedling und V. Samara. In Bezug auf eine allgemeine Beschreibung strukturierter Dokumente siehe „Structured Documents" von J. Andre, R. Furuta and V. Quint, Cambridge Series on Electronic Publishing, 1989.
  • EP-A-0528631 beschreibt einen Grafikeditor, der einen Appearance Construction Graph (ACG) erzeugt, der einen Bilderzeugungsprozess als einen gerichteten azyklischen Graphen (DAG – directed acyclic graph) darstellt. Der ACG enthält Knoten, die Bildfragmente (Quellen), Bildtransformationsoperationen (Transformierte) und Ausgaben (sichtbare Bilder – Senken) darstellen, die beispielsweise in einem Fenster eines Anzeigebildschirms angezeigt und zur Erstellung und Bearbeitung komplexer Bilder manipuliert weiden können. Die Knoten im ACG sind selektiv durch Verknüpfungen (Kanten) zwischen ihnen verbunden. Das von dem ACG repräsentierte komplexe Bild kann in einem Betrachtungsfenster auf dem Anzeigeschirm durch „Fahren" des ACG angezeigt werden. Der Grafikeditor „fährt" den ACG, indem Operationen an den Bildfragmenten gemäß den miteinander verbundenen Knoten des ACG ausgeführt werden.
  • Ein benachbartes Feld, in dem eine Form der strukturierten Abbildung geschaffen wurde, sind die grafischen Benutzeroberflächen (GUI). Drei Beispiele für etablierte GUI-Toolkits sind Motif (siehe Heller u.a., „Motif Programming Manual", Band 6, O'Reilly & Associates, 1992), Tcl/Tk (siehe Ousterhout, „Tcl and the Tk Toolkit", Addison-Wesley, 1994) und Interviews (siehe Linton u.a. „Composing User Interfaces with Interviews", IEEE Computer, Band 22, Nr. 2, Seiten 8-22, IEEE Press, 1989).
  • Daher besteht eine Aufgabe der Erfindung darin, die vorgenannten Nachteile zu überwinden, indem ein strukturiertes Bildformat (structured image format – SI-Format) geschaffen wird, das bei Bildern mit Anzeigeauflösung angewandt werden kann und dabei einen minimalen Speicherbedarf hat, gleichzeitig aber in der Lage ist, gedruckte Bilder mit hoher Auflösung und hoher Qualität zu erzeugen. SI ist eine grundlegende Technologie, die sich der gesamten Palette von Operationen – von der Erfassung von Objekten, der Speicherung, Bearbeitung/Vorbereitung und Ausgabe/Übertragung bis zur Wiedergabe des Ausgabebildes – widmet.
  • Nach einem ersten Aspekt der Erfindung wird ein elektronischer Bildgenerator geschaffen mit:
    einer Einrichtung zum Erstellen von wenigstens einem strukturierten Bild, wobei das wenigstens eine strukturierte Bild umfasst:
    wenigstens ein Bildobjekt und
    wenigstens ein Pasteboard, welches einen Frame bildet, auf dem jeweils wenigstens ein Bildobjekt wiedergegeben wird, wobei das wenigstens eine Pasteboard wenigstens ein räumliches Bildattribut aufweist, das festlegt, wie jedes wenigstens eine Bildobjekt in Bezug auf das wenigstens eine Pasteboard wiederzugeben ist; und
    eine Einrichtung zum Steuern der Erstellungseinrichtung zum Ausbilden und Verändern des wenigstens einen strukturierten Bildes; und
    eine Einrichtung zum Erzeugen von wenigstens einem Ausgabebild als Reaktion auf das wenigstens eine strukturierte Bild, das von der Erstellungseinrichtung für das strukturierte Bild erzeugt wird, wobei das Ausgabebild in einem Ausgabeformat erzeugt wird und angezeigt und gedruckt werden kann, wobei die Einrichtung zum Erzeugen des wenigstens einen Ausgabebildes von der Einrichtung zum Steuern so gesteuert wird, dass das wenigstens eine Ausgabebild automatisch als Reaktion auf das wenigstens eine strukturierte Bild erzeugt wird, das von der Erstellungseinrichtung für das strukturierte Bild erzeugt wird, und wobei das wenigstens eine Bildobjekt in einer Speichereinrichtung in mehreren Darstellungen gespeichert wird, die sich wenigstens entweder im Hinblick auf das Format, die Auflösung oder die Abmessungen voneinander unterscheiden, so dass die Wiedergabeeinrichtung eine Ausgabedarstellung ausgehend von der ausgewählten Ausgabevorrichtung und den Abmessungsparametern als Reaktion auf Befehle des Computerprogramms und auf vom Bediener eingebende Befehle auswählt.
  • Nach einem zweiten Aspekt der Erfindung wird ein Prozess zum elektronischen Erzeugen eines Ausgabebildes in einem Ausgabeformat geschaffen, das mit Hilfe strukturierter Bäder angezeigt werden kann, wobei ein strukturiertes Bild wenigstens ein Bildobjekt und wenigstens ein Pasteboard umfasst, welches einen Frame definiert, auf dem jedes von dem wenigstens einen Bildobjekt wiedergegeben wird, wobei das wenigstens eine Pasteboard wenigstens ein räumliches Bildattribut aufweist, welches festlegt, wie jedes der Bildobjekte in Bezug das wenigstens eine Pasteboard wiederzugeben ist, wobei der Prozess die folgenden Schritte umfasst:
    Erstellen von wenigstens einem strukturierten Bild durch Auswahl wenigstens eines Bild-Objektes, das in einem Speicher gespeichert ist, um es auf einem Pasteboard wiederzugeben, wobei das Pasteboard einen Frame definiert, auf dem das wenigstens eine Bildobjekt wiedergegeben wird, und das wenigstens ein räumliches Attribut aufweist, das festlegt, wie jedes der Bildobjekte in Bezug auf das wenigstens eine Pasteboard wiederzugeben ist, wobei das wenigstens eine Bildobjekt und das Pasteboard wenigstens ein Ausgabebild definieren, das von einer Erzeugungsvorrichtung auszugeben ist;
    Auswählen von wenigstens einer Bildverarbeitungsoperation, die an dem wenigstens einen Bildobjekt auszuführen ist, um wenigstens einen Teil des strukturierten Bildes zu erstellen, das zum Erzeugen des wenigstens einen Ausgabebildes verwendet wird; Erzeugen eines grafischen Ablaufdiagramms mit Anzeigesymbolen, die ausgewählte Bildobjekte und wenigstens eine Bildverarbeitungsoperation darstellen, die das strukturierte Bild und das wenigstens eine Ausgabebild bilden;
    Erzeugen des wenigstens einen Ausgabebildes entsprechend dem wenigstens einen Bildattribut des Pasteboards und
    Anzeigen und/oder Drucken des wenigstens einen Ausgabebildes, wobei das wenigstens eine Bildobjekt in dem Speicher in mehreren Darstellungen gespeichert ist, die sich wenigstens entweder im Hinblick auf das Format, die Auflösung oder die Abmessungen derart voneinander unterscheiden, dass die Wiedergabevorrichtung auf der Grundlage der ausgewählten Ausgabevorrichtung und der Abmessungsparameter als Reaktion auf Anweisungen des Computerprogramms und der von dem Bediener eingegebenen Befehle eine Ausgabedarstellung auswählt.
  • Vorzugsweise umfasst der Prozess weiterhin das Definieren des wenigstens einen Bildattributs des Pasteboards, wobei das strukturierte Bild wenigstens eine verbundene Bildverarbeitungsoperation aufweist, die an dem wenigstens einen strukturierten Bild ausgeführt wird, das auf dem Pasteboard fixiert wird, um das wenigstens eine strukturierte Ausgabebild zu schaffen.
  • Die Erfindung schafft ein SI-Format, das imstande ist, interaktiv bei Bildern mit Anzeigeauflösung funktioniert und folglich eine gute interaktive Leistung aufweist. Weiterhin kann ein Ausgabebild mit hoher Auflösung erzeugt werden, indem lediglich die Anforderung erteilt wird, das strukturierte Bild (SI) mit hoher Auflösung wiederzugeben (zu rendern) bzw. zu rastern. Der Wiedergabeprozess bzw. das Rendering verwendet automatisch die geeigneten Quellenbilder und die geräteabhängigen Informationen für die Wiedergabe an den speziellen Vorrichtungen. Zwar können auch andere Bildeditoren Bilder mit Anzeigeauflösung verwenden, doch SI wählt die Auflösung des Bildes entsprechend der gestellten Aufgabe.
  • Ein Merkmal des SI besteht darin, Bilder als Textdatei zu speichern, die Zeiger zu Komponenten-Objekten enthalten. Ausgaberaster werden erst dann erzeugt, wenn sie zur Anzeige oder zum Drucken benötigt werden. Deshalb können Hunderte von SI-Versionen in demselben Speicherplatz im Laufwerk vorhanden sein, der typischerweise von einem einzigen Rasterbild benötigt wird. Da ein SI nicht die Raster der Komponenten-Objekte innerhalb der SI-Datei speichert, wird die Verwendung von Archivbildern, zum Beispiel ClipArt, viel effizienter, denn es wird nur eine einzige Kopie der Quelle benötigt.
  • Die Erfindung schafft Sls, die erzeugt werden können, um über undefinierte Referenzen sowohl zu Komponenten-Objekten als auch zu Bildverarbeitungsparametern zu verfügen. Ein solches SI kann wiedergegeben werden, indem die undefinierten Informationen, zum Beispiel Befehlszeigeargumente, geschaffen werden. Das SI kann viele Male mit unterschiedlichen Eingabedaten wiedergegeben werden, so dass kundenspezifische Ausgaberaster erstellt werden. Durch die Fähigkeit, gültige Sls zu besitzen, die undefinierte Referenzen enthalten, werden eine Kundenausrichtung und eine automatische Bildzusammensetzung möglich.
  • Ein weiteres Merkmal der Erfindung besteht darin, dass Sls alle Komponenten-Daten in der Ursprungsform (native form) speichern (das heißt, Text wird als ASCII gespeichert, Grafiken werden in CGM-Format oder einem anderen geeigneten Format gespeichert, usw.). Mit geeigneten Rendering-Prozeduren wird die Ursprungsform mit Hilfe von geräteabhängigen Eigenschaften in Raster umgewandelt, wodurch die Wiedergabe optimiert wird. Die richtige Skalierung der Komponenten-Daten ist der SI-Wiedergabe wesenseigen.
  • Schließlich schafft die Erfindung Sls, die Zeiger zu den ursprünglichen Komponenten-Daten und eine Beschreibung sämtlicher Bildverarbeitungsoperationen enthalten, die an dem Bild ausgeführt wurden. Das Bearbeiten vorheriger Operationen kann so einfach sein wie das Bearbeiten einer Textdatei. Interaktive Editoren auf der Basis von Sls können das Bearbeiten der Operationen interaktiv entweder durch die Texteditierung oder über einen strukturierten Bildeditor ermöglichen. Mit geeigneten Nutzerbefehlen können Bildverarbeitungsoperationen hinzugefügt, gelöscht oder modifiziert werden.
  • Um die erfindungsgemäße Aufgabe zu lösen und die oben angeführten Nachteile zu überwinden, wird ein SI definiert, das in seiner einfachsten Form durch eine Gruppe von Darstellungen (representations) und einem Pasteboard beschrieben wird. Die Darstellungen geben den Inhalt des SI an; das Pasteboard gibt den „Frame" des SI an. Das Konzept von mehreren Rasterdarstellungen ist auf dem Fachgebiet bekannt und gegenwärtig in verschiedenen verfügbaren Anwendungen im Einsatz. Mit SI wird jedoch die Idee von mehreren Darstellungen dahingehend erweitert, dass auch Daten enthalten sind, die keine Raster sind, zum Beispiel Text, Grafiken, und Bildzusammensetzungen, die die Bildverarbeitung und das Zusammenfügen von mehreren Komponenten-Objekten angeben. Komponenten-Objekte wie zum Beispiel Text und Grafiken werden zwecks Editierbarkeit in ihrem ursprünglichen Format gespeichert. Die Anforderung an eine gültige Darstellung besteht darin, dass sie in Rasterform wiedergegeben werden kann und dass alle Darstellungen eines einzigen SIs bei der Wiedergabe gleich „aussehen", das heißt, alle Darstellungen müssen im Wesentlichen das gleiche Erscheinungsbild haben. Sie können unterschiedliche Abmessungen und Codierungen aufweisen, müssen aber ganz deutlich Wiedergaben desselben Bildes sein.
  • Weitere Aufgaben, Vorteile und wesentliche Merkmale der Erfindung werden aus der detaillierten Beschreibung deutlich, die zusammen mit den beigefügten Zeichnungen die bevorzugten Ausführungsformen der Erfindung offen legt.
  • Zu den Zeichnungen, die einen Teil dieser Original-Offenlegung bilden:
  • 1 ist ein Blockdiagramm, das die allgemeinen Bauteile darstellt, die bei der Erfindung genutzt werden können;
  • 2 ist eine grafische Darstellung, die die Vielzahl verschiedener Datentypen zeigt, die ein SI-Objekt bilden;
  • 3 ist eine grafische Darstellung, die ein Beispiel für die Mehrfachdarstellungen (multiple representations – MR) zeigt, die ein SI-Objekt bilden;
  • 4 ist eine grafische Darstellung, die das Rendering zur Aufrechterhaltung des Streckenverhältnisses zeigt;
  • 5 veranschaulicht grafisch die vorhandenen Passmodus-Modelle, die festlegen, wie Raster in den Abmessungen wiedergegeben werden, die erfindungsgemäß von dem Pasteboard definiert werden;
  • 6 und 7 zeigen grafisch das Ausrichtattribut der Erfindung, wobei 6 zeigt, wie das Ausrichtattribut dazu verwendet wird, das gerenderte Raster anzugeben, das innerhalb des Pasteboards an eine von neun möglichen Stellen positioniert wird, und 7 drei Beispiele des Ausrichtattributs zeigt;
  • 8 verdeutlich grafisch das erfindungsgemäße Winkelattribut, wobei die Seite (a) aus
  • 8 das nicht gedrehte Pasteboard und die Seite (b) das gedrehte Pasteboard zeigt (Anmerkung: das Objekt wird um den Steuerungspunkt (Control Point) gedreht);
  • 9 ist eine grafische Darstellung, die die erfindungsgemäße Wiedergabeeinstellung des ControlPoints zeigt;
  • 10 ist eine grafische Darstellung einer Bildverarbeitungsdefinition (IPD – image processing definition) im Zusammenhang mit dem Ausgabe-SI, das eine strukturierte Beschreibung von Referenzen zu Komponenten-Objekten und Bildverarbeitungsoperationen (IPOs- image processing operations) darstellt, die auf jene Komponenten-Objekte angewandt werden;
  • 11 zeigt den Rasterdatenfluss während der Wiedergabe eines SI;
  • 12 ist eine grafische Darstellung, die sämtliche Kind-Objekte in dem Eltern-Pasteboard an der Stelle zusammengefügt zeigt, die von dem MergePoint (in Bezug auf das Objekt-Pasteboard) und von dem ControlPoint (in Bezug auf das Kind-Pasteboard) zusammengefügt sind;
  • 13 ist eine grafische Darstellung, die die Pasteboard-Initialisierungsfunktion zeigt, die im vorliegenden Fall ein Pasteboard mit eingescanntem Textbild initialisiert;
  • 14 ist eine grafische Darstellung, die ein erfindungsgemäßes Ungebundenes SI (in Bezug auf Eingabeobjekte) darstellt;
  • 15 ist eine grafische Darstellung, die ein erfindungsgemäßes Unvollständiges SI (in Bezug auf Bildverarbeitungsoperationen und/oder Attribute) zeigt;
  • 16 ist eine grafische Darstellung, die eine erfindungsgemäße objektorientierte Wiedergabe zeigt;
  • 17 ist eine grafische Darstellung, die die erfindungsgemäße Wiedergabe mittels Verarbeitungsbaum zeigt;
  • 18 stellt ein Muster-SI mit dazugehöriger SID-Datei bereit, das erfindungsgemäß grafisch dargestellt ist;
  • 19a-c zeigen die SID-Dateien, die zu dem SI auf oberster Ebene aus 18 gehören;
  • die 20a-b zeigen eine exemplarische Datei mit mehreren Darstellungen (MR) und eine grafische Veranschaulichung von ihr;
  • 21 zeigt grafisch die erfindungsgemäße Interaktion zwischen dem FixedPoint und dem ControlPoint.
  • A Systemüberblick
  • Die strukturierte Bilderzeugung (structured imaging – SI) ist eine hierarchische Beschreibung eines zusammengesetzten Rasterbildes, das aus Komponentenbildern (das heißt Kind-Objekten) und den zur Wiedergabe des Ausgaberasterbildes notwendigen Bildverarbeitungsoperationen (IPOs) zusammengesetzt ist. Jeder Datentyp, der als Raster wiedergegeben werden kann, ist eine potentielle Komponente eines SI. SI ermöglicht die mühelose und schnelle Erzeugung und Handhabung komplexer Bilder für die Einbeziehung in gedruckte Dokumente.
  • SI kann an einem konventionellen Hardwaresystem 100 implementiert werden (siehe 1), das einen Mikroprozessor 110 zum Empfangen von Signalen von verschiedenen anderen Komponenten des Systems 100 entsprechend einem oder mehreren Softwareprogrammläufen auf dem Mikroprozessor 110 und zum Ausgeben von Signalen an selbige umfasst. Es ist eine Benutzereingabevorrichtung 120 vorhanden, beispielsweise eine Maus, eine Tastatur, ein Berührungsbildschirm und/oder eine Kombinationen aus diesen, die dem Bediener eine Schnittstelle zu dem SI bieten, durch die beispielsweise Steuersignale bereitgestellt werden. Zur Ausgabe von SI-Daten kann eine Bildausgabevorrichtung 130, zum Beispiel ein Videoanzeigemonitor oder ein Drucker, vorgesehen sein. Als SI-Eingabevorrichtung 140 kann beispielsweise ein Scanner zum Einscannen von Bildern vorhanden sein, die anschließend als Bildquellen im Speicher gespeichert werden. Zudem können Bildquellen beispielsweise von Plattenspeichern zugeführt werden.
  • Der Mikroprozessor 110 enthält einen Read Only Memory (ROM) 150 zum Speichern von Betriebsprogrammen und Bilddaten, die von dem SI zum Erstellen und Bearbeiten von Bildern verwendet werden. Mit einem Random Access Memory (RAM) 160 werden verschiedene Betriebsprogramme gefahren, und es können zusätzliche Dateien 170 für den Fall des Überlaufens des RAM vorgesehen sein.
  • Wichtig ist es jedoch zu erwähnen, dass SI in eingebetteten Systemen (nicht abgebildet) sowie in vernetzten Systemen implementiert werden kann, bei denen verschiedene Hardwarekomponenten miteinander vernetzt sind und sich an demselben Ort befinden oder auch nicht (ebenfalls nicht abgebildet). Dabei ist es nicht erforderlich, dass das Hardwaresystem fest verdrahtet ist. Das oben beschriebene konventionelle Hardware system ist lediglich ein Beispiel und wird nicht stärker bevorzugt als eingebettete oder vernetzte Systeme.
  • A1. Definiertes strukturiertes Abbilden
  • Ein SI wird von einem „Objekt", das eine Darstellung von Daten ist, die in einem Rasterbild wiedergegeben werden können, und von einem „Pasteboard" definiert, das einen „Frame" für das darauf wiederzugebende Objekt darstellt. Ein SI hat keine absolute Größe, die innerhalb der SI-Beschreibung festgelegt ist. Die Größe jedes Teilobjektes wird innerhalb des Pasteboards als Größe relativ zu dem Eltern-Objekt des Teilobjektes gespeichert.
  • Zum Umwandeln eines SI-Objektes in ein Rasterbild wird die ReadObject()-Rendering-Prozedur, siehe nachstehend, mit dem Objekt, dem Pasteboard und den absoluten Abmessungen des Eltern-Objektes als Parameter durch entsprechende Befehlsanweisungen, beispielsweise über die Nutzereingabevorrichtung 120, aufgerufen. Das SI-Objekt und alle Kind-Objekte werden automatisch in der richtigen Ausgabegröße wiedergegeben. Ein SI wird durch eine strukturierte Bilddefinitionsdatei (SID – structured Image definition) beschrieben.
  • Natürlich kann ein SI-Objekt auch automatisch mit Hilfe einer geeigneten SI-Scan-Software in die SID eingescannt werden. Somit ist das interaktive Bearbeiten keinesfalls das einzige Verfahren zur Erzeugung oder Vorbereitung einer SID zum Drucken.
  • A2. Strukturiertes Bildobjekt
  • Ein SI-Objekt ist eine Darstellung von Daten (siehe 2), die in einem Rasterbild wiedergegeben werden kann. Diese Daten können einfache Rasterbilder darstellen, wie beispielsweise TiFF-Dateien, oder kompliziertere Daten, wie beispielsweise eine hierarchische Sammlung von Teilobjekten und dazugehörigen Rasterverarbeitungsoperationen. Zu möglichen Objektdatentypen gehören:
    • 1. Rasterbild – TiFF, RES oder eine andere digitale Anzeige,
    • 2. Toy Text – einfache Textannotation,
    • 3. CGM-Grafiken – einfache grafische Annotation,
    • 4. IPD – SI-Bildverarbeitungsbeschreibung,
    • 5. MR-Datei – Datei, die eine Beschreibung mehrerer Bilddarstellungen enthält.
  • Ein wesentliches Merkmal der SI-Technologie ist die Fähigkeit, Bildverarbeitungsoperationen (IPOs) innerhalb der SID zu speichern. Der Objektdatentyp IPD schafft einen Mechanismus zum Speichern von IPOs, wie nachstehend genauer erörtert wird.
  • Ein einzelnes SI-Objekt kann mehr als einen Datentyp und/oder eine Datendatei darstellen. So kann sich beispielsweise ein einzelnes SI-Objekt (siehe 3) auf ein Verzeichnis beziehen, das mehrere TiFF-Dateien enthält, die mit verschiedener Auflösung gespeichert sind. Jede TiFF-Datei stellt das gleiche Bild dar, hat aber unterschiedliche absolute Pixelgrößen und eine unterschiedliche Fotometrie. Dieses Konzept ist unter dem Namen Mehrfachdarstellungen (MR – multiple representations) bekannt. SI gibt mehrere Darstellungen an, die dynamisch ermittelt werden, das MR-Dateiformat ist jedoch für jene Anwendungen definiert, die explizite Spezifikationen von mehreren Darstellungen erforderlich machen (wie nachstehend beschrieben wird).
  • Das oberste Objekt in einem SI, d.h. das Objekt ohne Eltern-Objekt, wird als Wurzelobjekt bezeichnet. Dies wird bei der Erörterung der Objektwiedergabe (object rendering process) nachstehend näher beschrieben.
  • A3. Pasteboard
  • Das Pasteboard ist der „Frame", in dem die SI-Objekte wiedergegeben werden. Mehrere Attribute können innerhalb des Pasteboards angegeben werden (siehe 3):
    • 1. Relative Größe (Relative size);
    • 2. Winket (Angle);
    • 3. Passmodus (FitMode);
    • 4. Ausrichtung (Justification); und
    • 5. Steuerungspunkt (ControlPoint).
  • Das Pasteboard gibt die Größe des wiedergegebenen Objektes in Bezug auf dessen Eltern-Objekt an. So kann beispielsweise das auf ein Teilobjekt angewandte Pasteboard eine Größe, wie beispielsweise (1,0, 0,5), relativ zu dem Eltern-Objekt angegeben, wobei (1,0, 0,5) das Verhältnis zwischen Breite und Höhe angibt. Wenn das Eltern-Objekt zur Wiedergabezeit mit (1000 × 2000) Pixel wiedergegeben werden soll, würde das Teilobjekt mit (1000 × 1000) Pixel wiedergegeben werden, da die Pasteboard-Abmessungen festlegten, dass das Teilobjekt mit voller Breite, jedoch nur mit halber Höhe wiederzugeben ist. Die relative Standard-Größe beträgt (1,0, 1,0).
  • Beim Wiedergeben eines SI wird die relative Größe des Pasteboards dazu verwendet, die absolute Größe des Pasteboards ausgehend von der absoluten Größe des Eltern-Objektes zu bestimmen (siehe 4). Allerdings kann es zum Zwecke einer optimalen Qualitätswiedergabe günstiger sein, wenn das Kind-Objekt mit anderer absoluter Größe wiedergegeben wird als mit der Größe, die von dem Pasteboard und der Größe des Eltern-Objektes festgelegt ist. Beispielsweise wird angenommen, dass das Kind-Objekt eine TiFF-Datei eines gescannten Textes mit einem Streckenverhältnis von 10:1 (Breite zur Höhe) ist und das dazugehörige Pasteboard eine relative Größe von (0,67, 0,33) hat. Nun soll das Eltern-Objekt mit einer absoluten Größe von (450 × 300) Pixel wiedergegeben werden. Somit hat das Pasteboard des Kind-Objektes eine absolute Größe von (300 × 100). Wenn die TiFF-Datei passend für dieses Fenster skaliert worden wäre, würde sie in Y-Richtung um den Faktor 3 gestreckt werden, wodurch der Text sehr stark verzerrt werden würde. In diesem Fall wäre es günstiger, den Text im ursprünglichen Streckenverhältnis wiederzugeben, damit er in das gewünschte Pasteboard passt, und die TiFF-Datei könnte auf die Abmessungen (300 × 30) skaliert werden, um das Streckenverhältnis (Breite zur Höhe) von 10:1 einzuhalten.
  • Um diese Art der Wiedergabe zu unterstützen, definiert SI sechs Passmodus-Attribute (siehe 5), die angeben, wie Raster in den von dem Pasteboard definierten Abmessungen wiedergegeben werden. Diese Passmodi sind in 5 definiert. Alle Modi, mit Ausnahme von FitAll, behalten das Streckenverhältnis des Objektes bei. Allerdings ist das tatsächlich wiedergegebene Rasterbild stets durch die Größe des Pasteboards begrenzt. Somit ist die tatsächliche Größe des wiedergegebenen Rasters durch die Überlappung zwischen der Pasteboard-Größe und der Größe des wiedergegebenen Objektes gemäß des angegebenen Passmodus definiert. In 5 ist das wiedergegebene Objekt für den Modus FitOutside wesentlich größer als das Pasteboard, doch das tatsächlich wiedergegebene Raster wird durch das Pasteboard begrenzt. Bei dem Modus Fitlnside wird das Objekt so wiedergegeben, dass es in das Pasteboard hineinpasst, während das Streckenverhältnis eingehalten wird. Folglich kann das tatsächlich wiedergegebene Rasterbild kleiner sein als die Pasteboard-Abmessungen, wenn das Streckenverhältnis des Objektes nicht mit dem des Pasteboards übereinstimmt. Der Standard-Passmodus ist Fitlnside.
  • SI-Objekte können mit Hilfe der oben definierten Passmodi wiedergegeben werden, bei einigen Anwendungen ist es jedoch wünschenswert, die Position des wiedergegebenen Rasters in Bezug auf die Größe des Pasteboards zu steuern. Mit dem Ausrichtungsattribut wird angegeben, wo das wiedergegebene Raster innerhalb des Pasteboards an einer von neun möglichen Stellen angeordnet wird, wie in 6 mit den Beispielen aus 7 dargestellt. Die vorgegebene Einstellung ist hier die Mitte. Das Ausrichtattribut wird ignoriert, wenn der Passmodus FitAll ist.
  • Jedes Objekt kann ein Winkelattribut aufweisen, das zum Drehen des wiedergegebenen Objektes verwendet wird. Dadurch wird das Objekt in dem vorgegebenen Pasteboard wiedergegeben, anschließend wird das Pasteboard um den ControlPoint (siehe nach stehend) um den vorgegebenen Winkel in Grad gedreht (siehe 8). Das Objekt-Rendering-Programm ist dafür verantwortlich, die Wiedergabe des Objektes im vorgegebenen Winkel ordnungsgemäß auszuführen. Einige Rendering-Programme sind imstande, Objekte im geeigneten Winkel optimal wiederzugeben; andere Wiedergabeprogramme rufen nach der anfänglichen Objektwiedergabe ein Rasterdrehprogramm auf. Diese Wahlmöglichkeit ist abhängig von der Implementierung. Die tatsächliche Größe des wiedergegebenen Rasters ist eine Begrenzung für das gedrehte, wiedergegebene Objekt, wie in 8b abgebildet. Der Standarddrehwinkel beträgt 0,0 Grad.
  • Bei einem Eltern-Objekt, das aus einer Gruppe von Kind-Objekten besteht, wird jedes Kind-Objekt auf dem Pasteboard des Eltern-Objektes wiedergegeben und mit den anderen zusammengefügt, und zwar an einer Stelle, die als MergePoint bezeichnet wird. Der MergePoint wird in Bezug auf das Pasteboard des Eltern-Objektes angegeben. Der ControlPoint ist der entsprechende Punkt in Bezug auf das Pasteboard des Kind-Objektes. Der ControlPoint des Kind-Objektes dient dazu, einen Abgleich mit dem MergePoint des Eltern-Objektes herzustellen. So führt beispielsweise ein ControlPoint von (0,5, 0,5) dazu, dass das Kind-Objekt auf dem MergePoint zentriert ist. Der vorgegebene Wert des ControlPoints liegt bei (0,5, 0,5).
  • Der ControlPoint (zusammen mit dem MergePoint) steuert den Punkt, an dem ein wiedergegebenes Kind-Objekt in das Pasteboard des Eltern-Objektes eingefügt wird. Innerhalb der SID ist der ControlPoint festgelegt und das zu dem Kind-Objekt gehörende Pasteboard in Koordinaten in Bezug auf das Pasteboard des Kind-Objektes angegeben. Allerdings füllt ein wiedergegebenes Kind-Objekt nicht unbedingt das vorgegebene Pasteboard aus, was von dem Passmodus und den Winkelattributen abhängig ist. Somit müssen die Rendering-Programme für jedes Objekt automatisch den ControlPoint einstellen, so dass dieselbe relative Position zu dem wiedergegebenen Kind-Objekt beibehalten wird.
  • Nun wird das Beispiel aus 9 betrachtet. Der ControlPoint befindet sich anfangs in der Mitte des Kind-Objektes (0,5, 0,5). Nach der Wiedergabe mit dem FitAsls-Modus, bei dem das Kind-Objekt oben rechts platziert wird, wird der ControlPoint automatisch auf den absoluten Wert (–15, 30) eingestellt. Dadurch erfolgt das Zusammenlegen so, dass das wiedergegebene Raster an der erwarteten Position angeordnet ist. Um dieses Beispiel zu verstehen: das Kind-Objekt ist in der SID mit einer Größe von (0,3, 0,6) angegeben. Das Rendering gibt an, dass das Eltern-Objekt (200 × 100) ist und somit die gewünschte Größe des Kind-Objektes bei 60 × 60 liegt. Allerdings gibt der Passmodus FitAsls an. Das tatsächliche Kind-Objekt wird mit 15 × 45 gespeichert, so dass das wie dergegebene Raster 15 × 45 beträgt. Die Funktion Ausrichtung gibt oben rechts an, weshalb das Raster 15 × 45 oben rechts in der gewünschten Größe von 60 × 60 positioniert wird und folglich das Original des wiedergegebenen Rasters bei (45, 0) in Bezug auf das angeforderte Raster liegt. Da die Rastergröße, die den Pfad nach oben nimmt, die Größe des wiedergegebenen Kind-Objektes und nicht die Größe 60 × 60 des angeforderten Kind-Objektes ist, muss der ControlPoint so eingestellt werden, dass er die Verschiebung gegenüber dem tatsächlich wiedergegebenen Kind-Objekt widerspiegelt. Der ControlPoint wird im Hinblick auf die gewünschte Größe des Kind-Objektes mit (30, 30) abgebildet. Da das Original des wiedergegebenen Kind-Objektes bei (45, 0) in Bezug auf den Ursprung der angeforderten Größe ist, wird sehr schnell deutlich, dass der ControlPoint bei (30 – 45, 30 – 0) = (–15, 30) relativ zu dem wiedergegebenen Kind-Objekt liegt (siehe 9).
  • Die ControlPoint-Informationen sind in dem Header des wiedergegebenen Rasterbildes gespeichert. Auf diese Art und Weise sind die ControlPoint-Informationen für alle IPOs verfügbar, die diese kennen. Konkret muss die räumliche Transformations-IPO (spacial transform) den ControlPoint entsprechend der angegebenen Transformation richtig einstellen, wie aus den nachstehenden Beispielen deutlich wird.
  • A4. ReadObject
  • ReadObject() stellt eine Prozedur dar, die ein SI-Objekt in ein Rasterbild umwandelt, das sich für eine weitere Verarbeitung eignet. ReadObject() nimmt ein Pasteboard, ein SI-Objekt (erzeugt oder eingescannt) und die absolute Größe des Eltern-Objektes als Parameter. Bei dem RootObject ist die angegebene Größe die Abmessung des gewünschten Ausgabebildes und das relative Größenfeld des Pasteboard ist im typischen Fall leer, was den Standardwert von (1,0, 1,0) impliziert. Es können noch weitere Informationen zu dem ReadObject() geleitet werden, wenn diese Informationen zur Verbesserung der Wiedergabequalität des Objektes verwendet werden können.
  • ReadObject() führt verschiedene Operationen aus, um das angemessene Rasterbild wiederzugeben:
    • (1) Ermitteln der absoluten Größe des Pasteboards;
    • (2) Ermitteln aller Darstellungen, auf die von dem Objekt verwiesen wird;
    • (3) Auswahl einer geeigneten Darstellung für die Wiedergabe ausgehend von der verfügbaren Information;
    • (4) Wiedergabe von Daten im Raster entsprechend dem Passmodus, der Ausrichtung und (möglicherweise) dem Winkel durch Aufrufen einer geeigneten Rendering-Prozedur;
    • (5) Drehen des wiedergegebenen Rasters auf den Winkel, der von dem Winkelattribut angegeben wird (falls nicht in Schritt 4 ausgeführt); und
    • (6) Einstellen der Position des ControlPoints.
    • Das Ergebnis der ReadObject()-Prozedur ist ein Rasterbild des wiedergegebenen Objektes.
  • Der ControlPoint wird im Header des Rasterbildes in dem Koordinatensystem des Rasterbildes angegeben.
  • ReadObject() bestimmt die absolute Größe des Pasteboards durch Multiplizieren der Abmessungen des Eltern-Objektes mit der relativen Größe, die im Pasteboard angegeben ist. Wenn kein Pasteboard angegeben ist, wird eine relative Größe von (1, 1) angenommen. Wenn beispielsweise die angegebene Größe (1000 × 2000) und die relative Größe (1,0, 0,5) betragen, so wird die absolute Größe des Pasteboards (1000 × 1000) sein. Wie oben erörtert, hat das tatsächlich wiedergegebene Objekt je nach den Attributen des Passmodus und des Winkels möglicherweise nicht diese Größe.
  • Ein SI-Objekt fungiert als Referenz für eine Datendatei oder eine Darstellung, die in einem Rasterbild wiedergegeben werden kann. Bei dieser Darstellung kann es sich um eine von mehreren Typen handeln, zum Beispiel Raster, Text und/oder Vektorgrafiken. Ebenso kann sich ein Objekt auf mehrere Darstellungen beziehen, von denen jede dasselbe Bild darstellt, aber ein anderes Speicherformat, eine andere Größe und/oder Auflösung hat. Wenn ReadObject() aufgerufen wird, muss ermittelt werden, welche Darstellung die „beste" Darstellung zur Wiedergabe ist, indem die Finder()-Prozedur aufgerufen wird. Finder() lokalisiert sämtliche Repräsentationen, auf die von dem Objekt Bezug genommen wird, und wählt jene Darstellung aus, die für die Wiedergabe am geeignetsten ist.
  • Nachdem eine Darstellung ausgewählt worden ist, muss sie zu einem Rasterbild gerendert werden. Jeder unterstützte Datentyp muss eine ihm zugeordnete Rendering-Prozedur aufweisen, um die Darstellung in ein Rasterbild umwandeln zu können. Diese Rendering-Prozeduren müssen die Attribute Passmodus und Winke! unterstützen. Vorzugsweise werden die folgenden Datentypen unterstützt:
    Figure 00150001
  • Die Render()-Prozedur kann den Drehwinkel direkt in die Objektwiedergabe einbeziehen oder aber eine Rasterdrehungsoperation an dem gerasterten Objekt anwenden. Zum Beispiel haben verfügbare Text-Rendering-Programme die Fähigkeit, Text in einen bestimmten Winkel direkt wiederzugeben, was zu einer besseren Qualität als bei einer horizontalen Wiedergabe mit anschließender Rasterdrehung führt.
  • Wie bereits erörtert, muss der ControlPoint so eingestellt werden, dass dieselbe relative Position des wiedergegebenen Objektes und des MergePoints in Abhängigkeit von dem Passmodus, der Ausrichtung und dem Winkel beibehalten wird. Es ist die Aufgabe von ReadObject(), diese Einstellung vorzunehmen und den eingestellten ControlPoint in den Header des Rasterbildes einzufügen, um ihn für alle IPOs verfügbar zu machen, die ihn möglicherwreise ebenfalls einstellen (zum Beispiel die räumliche Transformation).
  • A5. Finder
  • Die ReadObject()-Prozedur ruft die Finder()-Funktion auf, um Objektdaten zur Wiedergabe in einem Ausgaberasterbild zu lokalisieren und zurückzugeben. Die Finder()-Prozedur führt sechs Aktionen gemäß dem Rendering eines SI aus:
    • 1. Lokalisieren sämtlicher Darstellungen des Objektes;
    • 2. Identifizieren des Typs jeder Darstellung (TiFF, Text, Grafik);
    • 3. Ermitteln von Attributen jeder Darstellung, die für die Auswahl der besten Darstellung notwendig sind;
    • 4. Anwenden einer Merit-Funktion auf jede verfügbare Darstellung und Auswahl der Darstellung mit dem höchsten Merit-Wert;
    • 5. Eingabe eines Zeigers zu den Darstellungsdaten und
    • 6. Eingabe des Darstellungsdatentyps.
  • Der Finder()-Mechanismus ist notwendigerweise abhängig von der speziellen Implementierung. Allerdings lassen sich einige Aussagen zur Funktionalität treffen.
  • Bei der gegenwärtigen Syntax der Structured Image Definition Language (SIDL) kann ein SI-Objekt mit einer der drei folgenden Möglichkeiten beschrieben werden (der folgende Quellencode unterliegt dem Urheberrechtsschutz und kann an dem zuvor beschriebenen Hardwaresystem ausgeführt werden):
    Figure 00160001
  • Ein Objekt, das als extern definiert ist, ist eines, bei dem Daten, auf die von dem Objekt verwiesen wird, nicht innerhalb der aktuellen SID gespeichert sind. Meist sind die tatsächlichen Daten in einer separaten Datei gespeichert. Das Systemfeld ist eine Beschreibung, die der Finder() verwendet, um zu verstehen, wie die Daten anzuordnen sind. Der Namenseintrag ist eine Gruppe von Schlüsselwörtern, die der Finder() zum tatsächlichen Lokalisieren der gewünschten Daten verwendet. Bei dem obigen Beispiel ist der Finder() so implementiert, dass er versteht, dass ein Systemeintrag von „UNIX®" angibt, dass die aktuellen Daten gefunden werden, indem ein geeigneter UNIX-Dateisystempfad für eine Datei mit dem Namenseintrag von „bird.TiF" gesucht wird. Wenn der Systemeintrag „SYBASE®" gewesen wäre, hätte Finder() die Schlüsselworte im Namensfeld als Schlüsselwort zum Suchen einer SYBASE®-Datenbank für die Daten behandelt.
  • Ein als intern definiertes Objekt enthält die Daten, die direkt innerhalb der SID gespeichert sind. Nützlich ist dies für die Speicherung von kleinen Objekten, wie beispielsweise Rastersymbolen oder einfachen Textdateien, direkt innerhalb der SID, so dass kein externer Speicherplatz benötigt wird.
  • IPD ist ein SI-Objekt-Datentyp, der es ermöglicht, dass ein strukturiertes Bild aus anderen SI-Objekten und IPOs zusammengesetzt ist. Ausgehend von den Informationen, die in dem SI-Objekt gespeichert sind, muss der Finder() alle verfügbaren Darstellungen lokalisieren und den Datentyp und alle Attribute feststellen, die zur Auswahl der „besten" Wiedergabedarstellung erforderlich sind. Die Mechanismen/Protokolle, die zum Implementieren dieser Funktionen verwendet werden, sind nicht in SI definiert, doch natürlich sind solche Mechanismen vorhanden und stehen auch für die vorliegende Anwendung zur Verfügung.
  • Nachdem alle Darstellungen ermittelt sind, muss der Finder() die geeignetste Darstellung auswählen, damit diese in dem Rasterausgabebild wiedergegeben werden kann. Der Mechanismus wird implementiert, indem eine Merit-Funktionsberechnung an jeder Darstellung durchgeführt wird. Die exakte Merit-Funktion ist implementierungsabhängig und nicht in dem SI definiert; allerdings sollte sie auf Attributen der Darstellungen, auf den gewünschten Ausgabebildattributen, der Zielausgabevorrichtung (zum Beispiel Schwarzweißdrucker, Farbanzeige) und auf der Verarbeitungskomplexität basieren. Nachdem eine Darstellung ausgewählt worden ist, stellt der Finder() einen Zeiger auf die tatsächlichen Daten und den Datentyp auf den ReadObject() ein, damit die Verarbeitung beginnt.
  • A6. Bildverarbeitungsdefinition (IPD – Image Processing Definition)
  • Wie oben erörtert, ist die IPD ein SI-Objekttyp, der es ermöglicht, dass ein SI aus anderen SI-Objekten und IPOs zusammengesetzt ist. IPD stellt eine strukturierte Beschreibung von Referenzen auf Komponenten-Objekte und IPOs dar, die auf jene Komponenten-Objekte angewandt werden. 10 ist eine grafische Darstellung einer IPD. Eine IPD besteht aus Referenzen auf die folgenden Deskriptoren:
    • (4) Standardgröße;
    • (5) ReadObject;
    • (6) Pfad,
    • (7) IPOs;
    • (8) Zusammenfügen (Merge)
    • (9) Pasteboard;
    • (10) Initialisator; und
    • (11) Komponenten-Pasteboard.
  • In 10 ist jede vertikale Linie, Pfad genannt, eine Sammlung von IPOs. ReadObject stellt eine Prozedur dar, die ein SI-Objekt in ein Rasterbild umwandelt, das sich zur Verarbeitung auf dem Pfad mittels IPO eignet. Das gerenderte Objekt legt den Pfad zurück und wird nacheinander von jeder IPO verarbeitet. Auf jedem Pfad ist ein Pasteboard gespeichert, das von dem ReadObject zum Definieren eines „Frame" verwendet wird, in dem das SI-Objekt wiedergegeben wird. Dieses Pasteboard wird als Komponenten-Pasteboard bezeichnet. Die horizontale Linie ist das Pasteboard des IPD-Objektes und stellt ein „leeres" Rasterbild dar, in dem die Komponenten-Pasteboards zusammengefügt werden. Die schwarzen Dreiecke stellen Zusammenfügungs- bzw. Merge-Operationen dar, in denen Komponenten-Pasteboards auf dem Objekt-Pasteboard kombiniert werden. Die Reihenfolge des Zusammenfügens der Komponenten-Pasteboards ist explizit, so dass eine Anordnung von „oberen" und „unteren" Bildern unterstützt wird. 11 stellt den Rasterdatenfluss während der Wiedergabe eines SI dar (das heißt, der Steuerungsfluss von ReadObject zu Merge).
  • Jede IPD muss Informationen enthalten, die eine Standardgröße für die IPD angibt. Diese Informationen werden als Hinweis für die Rendering-Programme in Bezug auf die Größe des Bildes benutzt, die in der aktuellen SIDL-Syntax wiedergegeben werden sollte, wobei diese Informationen vorzugsweise als Streckenverhältnis und als Kette (String) mit Standardbreite gespeichert werden. Zum Beispiel
    Figure 00180001
  • Das Feld Streckenverhältnis ist durch das Verhältnis der Höhe zur Breite definiert. Das Feld Standardbreite ist eine Kette, die eine Breite und eine Maßeinheit definiert. Mögliche Maßeinheiten sind: ", cm, mm, m, pt und pix.
  • IPOs sind geräteunabhängige Beschreibungen von Bildverarbeitungsbefehlen. Lediglich eine IPO ist gegenwärtig in SI spezifiziert: Die räumliche Transformations-IPO (Spacial Transform), die bei den nachfolgenden Beispielen genauer erörtert wird. Natürlich sind zusätzliche IPOs implementierungsabhängig. Dazu gehören bestimmte Grundfunktionen, die als wesentlich erachtetet werden und bei denen es sich um die folgenden bevorzugten IPOs handelt:
    • 1. Transformer: wandelt die Größe bzw. Form eines Bildes (zum Beispiel affin, warp (Formänderung)) räumlich um;
    • 2. Formatierer: wandelt Pixel von einem Format in ein anderes um (zum Beispiel Konvertieren, Verschachteln, Konfigurieren im Raum);
    • 3. Filter: wendet verschiedene Filteroperationen an (zum Beispiel convolve, median, morphologisch);
    • 4. Farbgeber: stellt den Farbwert von Bildern ein (zum Beispiel relativ, absolut, Kontrast, WhitePoint);
    • 5. Maske: wendet Maskenoperationen an (zum Beispiel Hinzufügen, Extrahieren, Konvertieren, Auftragen); und
    • 6. Verschiedenes: wendet verschiedene andere Operationen an.
  • Eine IPO kann die Auswahlregion für ihre Operation angeben. Eine Auswahl ist eine Beschreibung der Pixel in einem Bild, die in einer speziellen Operation zu verarbeiten sind. So kann eine Auswahl beispielsweise Bitmaps oder mathematische Beschreibungen von Regionen enthalten. Normalerweise erfolgt eine Auswahl binär, das heißt, ein Pixel wird entweder verarbeitet oder nicht verarbeitet. Allerdings führt ein „grauer" Auswahlwert dazu, dass der ausgegebene Pixelwert zwischen dem originalen Pixelwert und dem verarbeiteten Pixelwert zu skalieren ist.
  • Wie aus 12 hervorgeht, werden alle Kind-Objekte in einer IPD in dem Eltern-Pasteboard an der Stelle zusammengefasst, die vom MergePoint (in Bezug auf das Objekt-Pasteboard) und vom ControlPoint (in Bezug auf das Kind-Pasteboard) angegeben ist. Die Anweisung zum Zusammenfügen (Merge) ist in der IPD explizit enthalten.
  • Normalerweise stellt das Pasteboard eines IPD-Objektes ein „leeres" Raster dar, auf dem die Komponenten-Pasteboards zusammengefügt werden. Es ist möglich, ein Pasteboard mit einer Farbe, einem Muster oder sogar ein Rasterbild mit Hilfe einer Initialisierungsroutine zu initialisieren (siehe 13). Im Grunde ist eine Initialisierungsroutine ein Pfad, der ein ReadObject() und IPOs enthält. Die Einschränkung besteht darin, dass die relative Größe (1,0, 1,0) ist und dass keine IPOs für die räumliche Transformation in dem Pfad vorhanden sind. Das Pasteboard hat die Größe der wiedergegebenen Initialisierungsroutine. Im typischen Fall wird die Initialisierungsroutine zur Farbgebung des Pasteboards oder zum Initialisieren des Pasteboards mit einem Hintergrundrasterbild verwendet.
  • B. Ungebundene/unvollständige strukturierte Bilder
  • Weiterhin ermöglicht es die Erfindung, dass strukturierte Bilder definiert werden, die Felder innerhalb der SID haben, die als undefiniert identifiziert sind. Derartige Felder sind Platzhalter für Daten, die dynamisch an das SI gebunden sind und die laufzeitspezifisch sind (wiedergabezeitspezifisch). Es gibt zwei Kategorien für undefinierte Felder:
    • 1) ungebundenes SI; und
    • 2) unvollständiges SI.
  • B1. Ungebundenes strukturiertes Bild
  • Allgemein sind Komponenten-Objekte eines SI nicht in der SID selbst enthalten, sondern Felder von SI-Objekten (zum Beispiel System- und Namensfelder eines externen Objektes) verweisen auf sie. Bei der gegenwärtigen SIDL-Syntax können diese Felder als undefiniert gekennzeichnet werden. Dadurch wird es möglich, dass Daten dynamisch an das strukturierte Bild gebunden werden.
  • Man betrachte beispielsweise eine interaktive Verarbeitungssitzung, bei der ein Nutzer ein SI zum Drucken erzeugt. Das SI soll lediglich einmal verwendet und dann vernichtet werden. Der Nutzer erzeugt das SI mit Hilfe eines interaktiven SI-Editors (hierbei handelt es sich wiederum lediglich um ein Beispiel für die Erzeugung des SI, die nicht unbedingt stärker bevorzugt ist als die Erzeugung mittels Vorlage oder als die automatische Erzeugung mit Hilfe einer geeigneten Scan-Software). Alle Komponenten des SI sind bekannt und definiert. Nach Fertigstellung druckt der Nutzer das SI und der Druckauftrag ist abgeschlossen. Die zum Beschreiben dieses SI erzeugte SID ist bekanntlich vollständig gebunden, das heißt, alle Komponenten waren vor der Wiedergabe definiert. Vollständig gebunden bedeutet also, dass sämtliche Objekte in der IPD vor der Wiedergabe des Ausgabe-SI-Rasters auf definierte Einheiten zeigen.
  • In vielen Applikationen werden vollständig gebundene Bilder jedoch dem Druckauftrag nicht gerecht. Dies ist beispielsweise bei einem Werbefachmann der Fall, der eine Broschüre erzeugt, in der eine Komponente des Bildes mit dem geografischen Vertriebsstandort verändert werden muss. Alle möglichen Bilder dieser Komponente werden in einer Datenbank gespeichert. Der Werbefachmann kann den Systemeintrag eines externen Objektes definieren, um das Datenbanksystem zu identifizieren, zum Beispiel Sybase®, doch das Namensfeld wird als undefiniert gekennzeichnet. Bei der Laufzeit kann das korrekte Schlüsselwort zum Erzeugen jedes angeforderten Ausgabebildes dynamisch an das Objekt gebunden werden. Mit diesem Verfahren kann ein einziges SI zum Erzeugen vieler verschiedener Ausgabebilder verwendet werden. Ungebundene Bilder sind gültige Sls, allerdings benötigen sie für die Wiedergabe zusätzliche Informationen während der Laufzeit.
  • Es sei angeführt, dass das SI keine Präferenz gegenüber gebundenen oder ungebundenen Bildern hat, die Auswahl erfolgt je nach Anwendung (siehe 14 hinsichtlich einer repräsentativen Nutzeranzeige mit Hilfe der ungebundenen strukturierten Bilderzeugung)
  • B2. Das unvollständige strukturierte Bild
  • Ähnlich wie beim Konzept der ungebundenen Bilder ermöglicht es die Erfindung, dass Parameter von IPOs undefiniert sind. Auch eine IPO an sich kann undefiniert sein. Man betrachte beispielsweise einen Werbefachmann, der eine Broschüre erzeugt, die Bilder von Autos enthält, bei denen die Farbe eines Autos zwischen den einzelnen Ausdrucken verändert wird. Der Werbefachmann kann unterschiedliche Bilder des Autos mit allen möglichen Farben haben und dann das dynamische Binden der SID zur Anwendung bringen. Er kann aber genauso gut ein einziges Bild eines Autos auswählen und die gewünschte Farbe als Argument an die Rendering-Prozeduren weiterleiten, damit sie dynamisch an die IPO gebunden werden. Ohne Bereitstellung des Farbwertes zur Laufzeit könnte die Wiedergabe des Ausgaberasters nicht erfolgen. Dies ist als „unvollständiges" SI bekannt (siehe 15). Ein unvollständiges SI ist eines, bei dem ein Teil der SID nicht definiert ist und während der Laufzeit eingebunden werden muss. Unvollständige Sls sind gültige Sls, sie können jedoch ohne zusätzliche Information nicht wiedergegeben werden.
  • B3. Wiedergabe von ungebundenen/unvollständigen strukturierten Bildern
  • Bei der Wiedergabe eines ungebundenen SI sind zwei wesentliche Dinge zu berücksichtigen:
    • 1) der Bindemechanismus und
    • 2) das Rendering- bzw. Wiedergabemodell.
  • Der Mechanismus, mit dem ungebundene Sls dynamisch gebunden werden, ist implementierungsabhängig. Hier werden vier mögliche Mechanismen identifiziert, wobei auch andere möglich sind:
    • 1) Es ist erforderlich, dass ein SI stets ein „vollständiges Bild" darstellt; wenn das SI ungebunden/unvollständig ist, ist eine Vorfilteroperation zum Modifizieren der SID auszuführen;
    • 2) Anwendung des Bindemechanismus für die aktuelle Referenz. Die SID-Datei kann undefinierte Referenzen und Bindeinformationen enthalten, die in einer anderen Datei als „tag"-Definitionen beschrieben sind, die undefinierte Refe renzen in SIDL entsprechen. Das Binden erfolgt beispielsweise durch Verketten der SID-Datei und der Bindeinformationen zwecks Erzeugung einer vollständigen SID;
    • 3) Angabe der Bindeinformationen als Parameter an den SI-Renderer; bzw.
    • 4) Einbeziehung eines dynamischen Bindeverfahrens in die Finder()-Prozedur, die automatisch aufgerufen wird, um jedes ungebundene/unvollständige Feld in der SID auszufüllen.
  • Erfindungsgemäß werden die oben beschriebenen Bindemechanismen gleichermaßen bevorzugt, doch natürlich ist die Wahl zwischen den einzelnen Mechanismen implementierungsabhängig.
  • Bei bestimmten Anwendungen kann ein SI Felder aufweisen, die zur Wiedergabezeit nicht vollständig gebunden werden können. Man denke beispielsweise an ein Dokument, bei dem jede Seite ein SI mit sechs identischen Kind-Objekten ist, die zur Wiedergabezeit nicht gebunden sind, z. B. eine Liste von Immobilien, auf der jedes Kind-Objekt einem zum Verkauf stehenden Haus entspricht. Man stelle sich vor, das Dokument soll insgesamt neun Häuser anzeigen. Dazu wären zwei Dokumentseiten erforderlich, auf der zweiten Seite bräuchten jedoch nur drei Kind-Objekte zu stehen. Das SI-Renderprogramm kann mit drei Modellen operieren, wenngleich auch andere möglich sind:
    • 1) Scheitern an einem ungebundenen Fehler (fail with an unbound error);
    • 2) Ignorieren von ungebundenen Objekten, Behandeln unvollständiger IPOs als Nicht-Operationen;
    • 3) Rendern von lediglich dem Pasteboard ungebundener Objekte, Behandeln unvollständiger IPOs als Nicht-Operationen.
  • Alle drei Modelle können erfindungsgemäß genutzt werden, allerdings erfolgt die Auswahl applikationsabhängig.
  • C. Rendering (Wiedergabe)
  • Wenngleich das Rendering nicht speziell in der SIDL definiert ist, soll hier doch zur Klarheit eine kurze Erläuterung gegeben werden. Bei realen Rendering-Prozessen können einige Rendering-Verfahren entsprechend bestimmten Bedingungen, wie beispielsweise Zweck, Priorität, Ressourcen usw., ausgewählt werden. Das Rendering ist implementierungsspezifisch, allerdings müssen natürlich alle Implementierungen von SI-Rendering-Programmen äquivalente Ausgaben für ein bestimmtes SI und eine Ausgabevorrichtung erzeugen. Es wird nicht erwartet, dass die Ergebnisse haargenau identisch sind, da kleinere Unterschiede in den Bildverarbeitungsprogrammen zu unterschiedlichen Ergebnis sen führen; allerdings müssen die Ausgabebilder angemessen sein. Diese Aussage ist ähnlich jener, wonach unterschiedliche C-Compiler nicht den gleichen Maschinencode erzeugen müssen, jedoch alle Compiler einen funktionierenden Maschinencode erzeugen müssen.
  • Es sind zwei Herangehensweisen für das Rendern von Sls untersucht worden:
    • 7. objektorientiertes Rendering und
    • 8. verarbeitungsbaumabhängiges Rendering.
  • C1. Objektorientiertes Rendering
  • Das objektorientierte Rendering (siehe 16) ist ein Verfahren zum syntaktischen Parsen eines Objektbaumes direkt von oben nach unten und zum Rendern jedes Objektes (SI) nacheinander. Wenn ein SI eine Meldung „Render" erhält, wird es mit einem bestimmten Größen- und Auflösungsattribut oder Abmessungsattributen gerendert. Wenn andere Komponenten für die Erstellung des SI benötigt werden, sendet das Objekt die „Render"-Meldung an die Komponenten-Objekte und bekommt die Ausgabebilder. Das objektorientierte Rendering ist die direkte Ausführung eines Objektbaumes, die man sich am besten als „Interpretation" eines Objektbaumes vorstellen kann. Das objektorientierte Rendering eignet sich besonders für das Rendern in interaktiven Bearbeitungssituationen.
  • C2. Rendering von Verarbeitungsbäumen
  • Ein Verarbeitungsbaum ist ein gerichteter azyklischer Graph von Bildverarbeitungsbefehlen, der geräteabhängig und auflösungsabhängig ist (siehe 17). Ein Verarbeitungsbaum entsteht durch Erweiterung der SID, die zu allen verschachtelten Sls gehört, zu einem einzigen SI, woraufhin geräteabhängige Informationen angewandt werden, um sämtliche Koordinaten und Abmessungen in absolute, geräteabhängige Werte umzurechnen. Die Dateninhalte, auf die von den Darstellungseinträgen verwiesen wird, werden zu Rastern gerendert. Da der Verarbeitungsbaum geräteabhängig und auflösungsabhängig ist, können die IPOs durch eine Vielzahl von Optimierungsverfahren, die Fachleuten bekannt sind, im Hinblick auf die Bearbeitungsgeschwindigkeit optimiert werden. Zum Beispiel kann der Nutzer zwei Skalierungs- und eine Rotationsoperation zu einer einzigen affinen Operation kombinieren, wodurch konforme kaskadierte Operationen zu affinen Operationen kombiniert werden. Denn warum sollten drei separate Operationen ausgeführt werden, wenn sie zu einer kombiniert werden können und so die Bearbeitungsgeschwindigkeit verbessert werden kann? Anschließend wird das Ausgabebild durch einfaches Durchlaufen des entstandenen Verarbeitungsbaums wiedergegeben. Man kann sich dies als „Compilation" eines Objektbaumes vorstellen. Das Verarbeitungsbaum-Rendering eignet sich besonders für die Wiedergabe sehr großer Ausgabebilder, die typisch für das Drucken von Dokumenten sind. Durch die Bildverarbeitungsoptimierung kann die zur Wiedergabe erforderliche Zeit wesentlich gesenkt werden.
  • D. Beispiel für strukturierte Bilderzeugung
  • Nachstehend wird das in 18 gezeigte SI kurz beschrieben. Das vorliegende Beispiel wird mit Hilfe der oben beschriebenen SIDL beschrieben.
  • Das SI auf oberster Ebene in diesem zusammengesetzten Bild umfasst vier Komponenten:
    • 1) Bergbild – Rasterbildobjekt (Mount1);
    • 2) „Sample ..." – Textobjekt (Text1);
    • 3) Baum und Haus – IPD (Home1); und
    • 4) Vogelbild – Bitmap-Rasterobjekt (Bird1).
  • Das SI auf der zweiten Ebene umfasst zwei Komponenten:
    • 1) Baumgrafik – Grafikobjekt (Tree2) und
    • 2) Hausbild – Rasterobjekt (Home2).
  • Die zu dem SI auf oberster Ebene gehörende SID-Datei ist in den 19a-c dargestellt. Die Sls werden (wiederum ist der nachfolgende Quellcode urheberrechtlich geschützt und kann auf dem zuvor beschriebenen Hardwaresystem ausgeführt werden) in SIDL als ein Satz von „tags" beschrieben, die von dem Namen des Tag-Typs und des Tag-Bodys angegeben werden, eingeschlossen durch "{" und "}". Die Tags können mit Hilfe der „:name"-Syntax bezeichnet werden. Der Tag-Name kann als Referenz zu anderen Tags verwendet werden, indem „DOLLAR" davor gesetzt wird. Das Objekt-Tag ist das Tag des SI auf oberster Ebene. Bei dem vorliegenden Beispiel stellt das Objekt-Tag ein IPD-Objekt dar, dessen Beschreibung mit dem Tag „ipd1" referenziert wird. Das IPD-Tag „ipd1" definiert die Tags Streckenverhältnis und Standardbreite, die Pasteboard-Attribute Passmodus, Ausrichtung und Winkel und vier Merge-Tags, deren Reihenfolge die Reihenfolge des Zusammenfügens (Merging) von „merge1" bis „merge4" angibt. Jedes Merge-Tag gibt einen Merging-Punkt in Bezug auf das Pasteboard mit dem Merge-Point-Tag und eine Bildverarbeitungsfolge mit einem Pfad-Tag an. Das Pfad-Tag kennzeichnet das Kind-Objekt mit einem anderen Objekt-Tag, die relative Größe mit einem Größen-Tag, die Position des ControlPoints (in Bezug auf das Kind-Objekt) mit dem ControlPoint-Tag und die Bildverarbeitungsoperationen mit einer Liste von IPO-Tags. Es sei angemerkt, dass sich Pfad 1, Pfad 2 und Pfad 4 sämtlich auf Raster-, Text- oder Grafik-Dateien beziehen. Pfad 3 bezieht sich auf eine andere SID-Datei, die ein Rasterbild erzeugt, indem ein grafischer Baum mit einem Rasterbild eines Hauses kombiniert wird.
  • D1. Mehrfahchdarstellungs-Dateiformat (MR)
  • Bei einigen Anwendungen werden explizite Beschreibungen vorhandener Darstellungen bevorzugt. Aus diesem Grund ist das MR-Dateiformat definiert. Dieses Dateiformat verwendet gegenwärtig eine Syntax ähnlich der SIDL. Die 20a-b sind Beispiele für das MR-Dateiformat. Jede Darstellung ist mit einem Formatfeld aufgelistet, das den Dateityp identifiziert, und mit einem Datenfeld, welches explizit die Daten definiert. Für dateibasierte Daten, zum Beispiel eine TIFF-Datei, enthält das Datenfeld einen Unix-Pfad zur Datei. Für einfachen Text enthält das Datenfeld die Textkette. Das MR-Format macht es möglich, dass bei jeder Darstellung ein Satz von Attributen explizit definiert ist, der die Daten beschreibt. Bei Rasterdaten können die Attribute Abmessungen, die Fotometrie oder andere Attribute enthalten. Bei Textobjekten können die Attribute die Schriftart, den Schriftstil, usw. aufweisen. Die Anwendung des MR-Dateiformats wird jedoch bei der vorliegenden Erfindung nicht bevorzugt.
  • D2. Bildverarbeitungsoperation mit räumlicher Transformation (IPO)
  • Die einzige IPO, die in dem SI-Format angegeben ist, ist die Spacial Transform-IPO, die zur Durchführung einer linearen, räumlichen Transformation an den Rasterbildinhalten dient. Zu Beispielen gehören die Rotation, das Skalieren und Scheren. Im Allgemeinen führt die Special Transform-IPO sämtliche affinen Transformationen bis auf die Translation aus (die durch die Attribute des MergePoints und des ControlPoints gesteuert wird).
  • Die Parameter der räumlichen Transformation sind Folgende:
    Parameter Wert
    Skalieren 1 Wert für die XY-Skalierung (a.r. bewahren) oder 2 Werte für willkürliche Skalierung (Interpolation ist applikationsabhängig, Anmerkung: sollte wahrscheinlich ein Argument sein)
    Rotieren Winkel (in Grad)
    Scheren Scherwinkel(in Grad)
    Spiegeln „X" oder „Y"
    Transformationspunkte 3 Paar Eckpunkte
    Affin Affine Koeffizienten
    FixedPoint (x, y) relativ zu dem transformierten Kind – Standardwert ist der Ort des ControlPoints
  • Der Parameter FixedPoint (feststehender Punkt) ermöglicht die Anwendung von räumlichen Transformationen um einen Referenzpunkt herum. Zum Beispiel ermöglicht es das Festlegen eines FixedPoints dem Benutzer, das Objekt um den FixedPoint und nicht um den Mittelpunkt des Objektes zu drehen. Allgemein kann jede unterstützte räumliche Transformation so definiert werden, dass sie um einen FixedPoint herum ausgeführt wird. Da der FixedPoint ein Parameter für die räumliche Transformation und nicht Teil des Pasteboards ist, stellt die IPO den ControlPoint automatisch ein, um sicherzustellen, dass das Kind-Objekt an der richtigen Position in das Eltern-Pasteboard eingefügt wird. Nachstehend wird ein Beispiel der Einstellung des ControlPoints beschrieben.
  • Das Objekt hat beispielsweise einen ControlPoint C (0,5, 0,5) und einen FixedPoint (2,0, 0,0) in Bezug auf die linke obere Ecke P des Kind-Objektes (siehe 21a-b). Es sei angenommen, dass das Rendern angibt, das Kind-Objekt hätte eine Größe von 50 × 50. Der FixedPoint F liegt bei (–100, 0) in Bezug auf das Kind-Objekt. Am Anfang befindet sich der ControlPoint (25, 25) in Bezug P und (125, 25) in Bezug auf den FixedPoint. Wenn man das Kind-Objekt 45 Grad um den FixedPoint dreht, entsteht ein Kind-Objekt mit einer neuen Größe von 71 × 71 (Begrenzung – bounding box) mit einem Ausgangspunkt bei (71, 107) in Bezug auf den FixedPoint. Daher wird der ControlPoint auf (125, 25) – (71, –107) = (54, 132) Pixelgröße eingestellt, das heißt (0,75, 1,86) in Bezug auf den Ursprungspunkt Q des gedrehten Kind-Objektes. Folglich wird der ControlPoint so eingestellt, dass sichergestellt wird, dass eine Drehung um einen FixedPoint dazu führt, dass das Kind-Objekt an der richtigen Stelle in das Pasteboard eingefügt wird.
  • Als Alternative dazu kann ein interaktiver Editor den Rotationsmittelpunkt usw. während der Erstellung des SI handhaben und einfach den MergePoint richtig einstellen, wenn die SID geschrieben wird. Das heißt, der Nutzer kann diese Rotationsmittel beispielsweise an einer gewünschten Position festlegen, und die SID ist nicht länger damit befasst.
  • E. Ein zweites Beispiel der Erzeugung eines strukturierten Bildes
  • Es ist wichtig anzumerken, dass SI viel mehr ist als ein interaktiver Editor. Zum Beispiel müssen in einem Drucker für ein Jahrbuch einer High School viele einzelne Bilder elektronisch zum Drucken eines fertigen Jahrbuches aufbereitet werden. Konkret müssen Fotos in die Datenbank eingescannt werden, entweder einzeln (was extrem zeitaufwändig ist) oder es ist eine Technologie vorhanden, mit der zwölf Fotos gleichzeitig einges cannt werden können. Ganz egal, wie sehr der Benutzer versucht, die einzelnen Bilder zum Scannen auszurichten, wird es leider doch immer kleine Abweichungen durch das Scannen geben. Gewöhnlich hat jedes Bild einen Strichcode oder ein anderes Identifizierungsmerkmal, mit dem das Bild dem Namen zugeordnet wird, der unter dem Bild gedruckt wird.
  • Es gibt eine Software, die imstande ist, in der oben beschriebenen Scan-Situation automatisch ein SI zu erzeugen. Das heißt, es wird ein SI erzeugt, das jedes individuelle Kind-Objekt (die einzelnen Bilder) identifiziert und Bildverarbeitungsoperationen enthält, die jegliche Fehlausrichtung korrigieren, und jedes Bild auf der Seite mit dem richtigen Text darunter (Strichcodereferenz) konfiguriert. Eine solche Software ist in der Lage, viele Objekte gleichzeitig einzuscannen, wobei jedes Kind-Objekt zur richtigen Wiedergabe beim Drucken gedreht/zurückgedreht wird. Daher kann der Jahrbuchdrucker bei dieser Option lediglich die Kind-Objekte auswählen, die für die Anordnung auf jener speziellen Seite gewünscht werden, kann sie nach Wunsch anordnen, den entsprechenden Text hinzufügen und drucken. Wie oben erörtert, werden die Kind-Objekts durch den Strichcode referenziert und dann aufgerufen.
  • Darüber hinaus kann es erwünscht sein, dass der Jahrbuchdrucker ein anderes SI erzeugt, indem eine Vorlage mit „ungebundenen" Löchern für die Bilder und den Text je nach Wunsch hergestellt wird. Der Jahrbuchdrucker kann dann zum Ausdrucken die entsprechende Anzahl von Kind-Objekten in jene Vorlage einbinden. Wichtig ist dabei jedoch auch, dass in diese Vorlage eine intelligente Verarbeitung eingebaut ist (das heißt Hintergrund, usw.), mit der automatisch die Farbe, das Schneiden, Spezialeffekte usw. geändert werden können.
  • F. Schlussfolgerung
  • Das vorgenannte erfindungsgemäße Konzept ermöglicht die Darstellung von komplexen Farbrasterbildern als Sammlung von Objekten in hierarchie- und geräteunabhängigem Format. Objekte, die in das Ausgaberaster eingehen, können aus Text, Grafiken, anderen Rasterbildern oder anderen Sls stammen und ihre Eigenheiten zwecks Auswählbarkeit und Modifizierung beibehalten. Ein SI enthält nicht nur die Quelldaten, sondern auch die Bildverarbeitungsoperationen, die zu deren Wiedergabe erforderlich sind. Die SI-Technologie unterstützt die Überarbeitungsmöglichkeit, die Anpassung an Kundenwünsche, die Verbesserung, automatische Bildmontage und leistungsstarke Bilderzeugung (parallel, verteilt, Caching, usw.). Dadurch wird ein sehr leistungsstarker Rahmen zur Beschreibung von Bildern für eine spätere Bearbeitung und Überarbeitung geschaffen.
  • SI ist folglich eine Basistechnologie, die sich der gesamten Palette von Prozessen – von der Objekterfassung, Speicherung, Bearbeitung/Aufbereitung bis hin zur Bereitstellung/Übertragung für die Wiedergabe von Ausgabeobjekten – zuwendet.

Claims (29)

  1. Elektronischer Bildgenerator mit: einer Einrichtung zum Erstellen von wenigstens einem strukturierten Bild, wobei das wenigstens eine strukturierte Bild umfasst: wenigstens ein Bildobjekt und wenigstens ein Pasteboard, welches einen Frame bildet, auf dem jeweils wenigstens ein Bildobjekt wiedergegeben wird, wobei das wenigstens eine Pasteboard wenigstens ein räumliches Bildattribut aufweist, das festlegt, wie jedes wenigstens eine Bildobjekt in Bezug auf das wenigstens eine Pasteboard wiederzugeben ist; und eine Einrichtung zum Steuern der Erstellungseinrichtung zum Ausbilden und Verändern des wenigstens einen strukturierten Bildes; und eine Einrichtung zum Erzeugen von wenigstens einem Ausgabebild als Reaktion auf das wenigstens eine strukturierte Bild, das von der Erstellungseinrichtung für das strukturierte Bild erzeugt wird, wobei das Ausgabebild in einem Ausgabeformat erzeugt wird und angezeigt und gedruckt werden kann, wobei die Einrichtung zum Erzeugen des wenigstens einen Ausgabebildes von der Einrichtung zum Steuern so gesteuert wird, dass das wenigstens eine Ausgabebild automatisch als Reaktion auf das wenigstens eine strukturierte Bild erzeugt wird, das von der Erstellungseinrichtung für das strukturierte Bild erzeugt wird, und wobei das wenigstens eine Bildobjekt in einer Speichereinrichtung in mehreren Darstellungen gespeichert wird, die sich wenigstens entweder im Hinblick auf das Format, die Auflösung oder die Abmessungen voneinander unterscheiden, so dass die Wiedergabeeinrichtung eine Ausgabedarstellung ausgehend von der ausgewählten Ausgabevorrichtung und den Abmessungsparametern als Reaktion auf Befehle des Computerprogramms und auf vom Bediener eingebende Befehle auswählt.
  2. Elektronischer Bildgenerator nach Anspruch 1, wobei das wenigstens eine strukturierte Bild weiterhin wenigstens eine Bildverarbeitungsoperation umfasst.
  3. Elektronischer Bildgenerator nach wenigstens einem der vorangehenden Ansprüche, wobei wenigstens eines der Bildobjekte ein strukturiertes Bild umfasst.
  4. Elektronischer Bildgenerator nach einem der vorangehenden Ansprüche, wobei die Einrichtung zum Steuern auf Anweisungen des Computerprogramms und auf Befehle reagiert, die von dem Bediener mit wenigstens entweder einer Tastatur, einer Maus, einem Berührungsbildschirm oder einem elektronischen Stift eingegeben werden.
  5. Elektronischer Bildgenerator nach einem der vorangehenden Ansprüche, wobei das wenigstens eine strukturierte Bild ein Rasterbild beschreibt, welches eine Vielzahl von Bildobjekten und Bildverarbeitungsoperationen umfasst, die hierarchisch innerhalb des strukturierten Bildes angeordnet sind, so dass die Bildobjekte in dem Ursprungsformat in einer Speichereinrichtung gespeichert werden, wobei das Ursprungsformat wenigstens entweder eine Textdatei, eine Grafikdatei, eine Rasterdatei oder eine strukturierte Bilddatei umfasst.
  6. Elektronischer Bildgenerator nach einem der vorangehenden Ansprüche, wobei das wenigstens eine strukturierte Bild wenigstens ein individuell manipulierbares strukturiertes Bildobjekt und wenigstens eine dazugehörige Bildverarbeitungsoperation umfasst, die über wenigstens einen Verarbeitungspfad verbunden ist.
  7. Elektronischer Generator für ein strukturiertes Bild nach einem der vorangehenden Ansprüche, wobei wenigstens ein Bildobjekt ein strukturiertes Bild umfasst, das wenigstens aus entweder dem strukturierten Bildobjekt oder einer Bildverarbeitungsoperation besteht.
  8. Elektronischer Bildgenerator nach einem der vorangehenden Ansprüche, wobei die wenigstens eine Bildverarbeitungsoperation während der Erstellung von wenigstens einem Ausgabebild ausgeführt wird.
  9. Elektronischer Bildgenerator nach einem der vorangehenden Ansprüche, wobei die Einrichtung zum Steuern die Einrichtung zum Erzeugen von wenigstens einem Ausgabebild veranlasst, gleichzeitig das Ausgabebild und dessen entsprechendes strukturiertes Bild anzuzeigen.
  10. Elektronischer Bildgenerator nach einem der vorangehenden Ansprüche, wobei die Einrichtung zum Steuern weiterhin eine Wiedergabeeinrichtung umfasst, so dass das wenigstens eine Ausgabebild eine gewünschte Größe in Abhängigkeit von der Wiedergabeeinrichtung hat, so dass die gewünschte Größe für die Wiedergabe des Ausgabebildes unabhängig von der Auflösung und der Größe des wiedergegebenen Ausgabebildes das gleiche Aussehen beibehält.
  11. Elektronischer Bildgenerator nach einem der vorangehenden Ansprüche, wobei das wenigstens eine strukturierte Bild imstande ist, komplexe Farb- und Transparenzwerte darzustellen.
  12. Elektronischer Bildgenerator nach einem der vorangehenden Ansprüche, wobei das strukturierte Bild weiterhin wenigstens ein Bildobjekt aufweist, bei dem es sich um ein ungebundenes strukturiertes Bild handelt.
  13. Elektronischer Bildgenerator nach Anspruch 12, wobei das ungebundene strukturierte Bild ein strukturiertes Bild mit undefinierten Feldern ist und die undefinierten Felder bei der Erzeugung des Ausgabebildes mit Hilfe von Schlüsselwörtern definiert werden, um die fehlenden Informationen zum Definieren der undefinierten Felder abzurufen.
  14. Elektronischer Bildgenerator nach einem der Ansprüche 2 bis 13, wobei die wenigstens eine Bildverarbeitungsoperation solange undefiniert ist, bis das wenigstens eine Ausgabebild erzeugt ist.
  15. Prozess zum elektronischen Erzeugen eines Ausgabebildes in einem Ausgabeformat, das mit Hilfe strukturierter Bilder angezeigt werden kann, wobei ein strukturiertes Bild wenigstens ein Bildobjekt und wenigstens ein Pasteboard umfasst, welches einen Frame definiert, auf dem jedes von dem wenigstens einen Bildobjekt wiedergegeben wird, wobei das wenigstens eine Pasteboard wenigstens ein räumliches Bildattribut aufweist, welches festlegt, wie jedes der Bildobjekte in Bezug das wenigstens eine Pasteboard wiederzugeben ist, wobei der Prozess die folgenden Schritte umfasst: Erstellen von wenigstens einem strukturierten Bild durch Auswahl wenigstens eines Bildobjektes, das in einem Speicher gespeichert ist, um es auf einem Pasteboard wiederzugeben, wobei das Pasteboard einen Frame definiert, auf dem das wenigstens eine Bildobjekt wiedergegeben wird, und das wenigstens ein räumliches Attribut aufweist, das festlegt, wie jedes der Bildobjekte in Bezug auf das wenigstens eine Pasteboard wiederzugeben ist, wobei das wenigstens eine Bildobjekt und das Pasteboard wenigstens ein Ausgabebild definieren, das von einer Erzeugungsvorrichtung auszugeben ist; Auswählen von wenigstens einer Bildverarbeitungsoperation, die an dem wenigstens einen Bildobjekt auszuführen ist, um wenigstens einen Teil des strukturierten Bildes zu erstellen, das zum Erzeugen des wenigstens einen Ausgabebildes verwendet wird; Erzeugen eines grafischen Ablaufdiagramms mit Anzeigesymbolen, die ausgewählte Bildobjekte und wenigstens eine Bildverarbeitungsoperation darstellen, die das strukturierte Bild und das wenigstens eine Ausgabebild bilden; Erzeugen des wenigstens einen Ausgabebildes entsprechend dem wenigstens einen Bildattribut des Pasteboards und Anzeigen und/oder Drucken des wenigstens einen Ausgabebildes, wobei das wenigstens eine Bildobjekt in dem Speicher in mehreren Darstellungen gespeichert ist, die sich wenigstens entweder im Hinblick auf das Format, die Auflösung oder die Abmessungen derart voneinander unterscheiden, dass die Wiedergabevorrichtung auf der Grundlage der ausgewählten Ausgabevorrichtung und der Abmessungsparameter als Reaktion auf Anweisungen des Computerprogramms und der von dem Bediener eingegebenen Befehle eine Ausgabedarstellung auswählt.
  16. Prozess nach Anspruch 15, der weiterhin umfasst: Definieren der wenigstens einen Bildverarbeitungsoperation und des strukturierten Ausgabebildes.
  17. Prozess nach Anspruch 16, wobei die Schritte des Auswählens, Erzeugens, Anzeigens und Druckens auf der Grundlage von Computerprogrammanweisungen und vom Bediener eingegebenen Befehlen ausgeführt werden.
  18. Prozess nach Anspruch 17, wobei das grafische Ablaufdiagramm auf einem Anzeigebildschirm erzeugt wird und die von dem Bediener eingegebenen Befehle durch Betätigung eines Cursors auf dem Anzeigebildschirm mit Hilfe entweder einer Tastatur, einer Maus, eines Berührungsbildschirms oder eines elektronischen Stifts eingegeben werden.
  19. Prozess nach einem der Ansprüche 15 bis 18, wobei das wenigstens eine Bildattribut ein räumliches Bildattribut ist, das festlegt, wie jedes von dem wenigstens einen Bildobjekt in Bezug auf das wenigstens eine Pasteboard wiederzugeben ist, und wobei der Prozess weiterhin die folgenden Schritte umfasst: Definieren des wenigstens einen Bildattributs des Pasteboards und Auswählen einer Komponente des wenigstens einen strukturierten Ausgabebildes, das von der Erzeugungsvorrichtung zu erzeugen ist, wobei der Schritt des Erzeugens des wenigstens einen Ausgabebildes das Ausführen von wenigstens einer Bildverarbeitungsoperation an dem wenigstens einen Bildobjekt entsprechend dem strukturierten Bild umfasst, einschließlich des wenigstens einen Bildattributs des Pasteboards, und wobei der Schritt des Anzeigens und/oder Druckens des wenigstens einen Ausgabebildes als Reaktion auf entweder eine Computerprogrammanweisung oder vom Bediener eingegebene Befehle erfolgt.
  20. Prozess nach Anspruch 19, wobei der Schritt des Definierens, Auswählens und des Erzeugens auf der Grundlage einer Computerprogrammanweisung und vom Bediener eingegebenen Befehlen erfolgt.
  21. Prozess nach Anspruch 20, wobei die vom Bediener eingegebenen Befehle durch Betätigung eines Cursors auf einem Anzeigebildschirm mit Hilfe von entweder einer Tastatur, einer Maus, einem Berührungsbildschirm oder einem elektronischen Stift seitens des Bedieners eingegeben werden.
  22. Prozess nach einem der Ansprüche 19 bis 21, wobei das strukturierte Bild eine Vielzahl von Bildobjekten und Bildverarbeitungsoperationen umfasst, die hierarchisch so angeordnet sind, dass die Bildobjekte in einer Speichereinrichtung im Ursprungsformat gespeichert werden, wobei das Ursprungsformat wenigstens entweder eine Textdatei, eine Grafikdatei, eine Rasterdatei oder eine strukturierte Bilddatei umfasst.
  23. Prozess nach einem der Ansprüche 19 bis 22, wobei das wenigstens eine strukturierte Bild eine Vielzahl individuell manipulierbarer Bildobjekte und dazugehörige Bildverarbeitungsoperationen umfasst, die über eine Vielzahl von Verarbeitungspfaden verbunden sind.
  24. Prozess nach einem der Ansprüche 19 bis 23, wobei die wenigstens eine Bildverarbeitungsoperation, die während der Erstellung des wenigstens einen Ausgabebildes ausgeführt wird, innerhalb des strukturierten Bildes enthalten ist, wodurch das Bearbeiten, das erneute Bearbeiten und unbegrenzte Rückgängigmachen ermöglicht werden.
  25. Prozess nach einem der Ansprüche 19 bis 24, der weiterhin die Wiedergabe des wenigstens einen Ausgabebildes mit Hilfe einer Wiedergabevorrichtung umfasst, so dass das wenigstens eine Ausgabebild eine gewünschte Größe in Abhängigkeit von der Wiedergabevorrichtung hat und weiterhin die gewünschte Größe für die Wiedergabe des Ausgabebildes unabhängig von der Auflösung und der Größe des wiedergegebenen Ausgabebildes das gleiche Aussehen beibehält.
  26. Prozess nach einem der Ansprüche 19 bis 25, wobei das wenigstens eine strukturierte Bild imstande ist, komplexe Farb- und Transparenzwerte dazustellen.
  27. Prozess nach einem der Ansprüche 19 bis 26, wobei das strukturierte Bild weiterhin wenigstens ein Bildobjekt aufweist, bei dem es sich um ein ungebundenes strukturiertes Bild handelt.
  28. Prozess nach Anspruch 27, wobei das ungebundene strukturierte Bild ein strukturiertes Bild mit undefinierten Feldern ist und die undefinierten Felder bei der Erzeugung mit Hilfe von Schlüsselwörtern definiert werden, um die fehlenden Informationen zum Definieren der undefinierten Felder abzurufen.
  29. Prozess nach einem der Ansprüche 19 bis 28, wobei wenigstens eine der Bildverarbeitungsoperationen solange undefiniert ist, bis das wenigstens eine Ausgabebild erzeugt ist.
DE69434370T 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds Expired - Lifetime DE69434370T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US133422 1993-10-08
US08/133,422 US5485568A (en) 1993-10-08 1993-10-08 Structured image (Sl) format for describing complex color raster images

Publications (2)

Publication Number Publication Date
DE69434370D1 DE69434370D1 (de) 2005-06-16
DE69434370T2 true DE69434370T2 (de) 2006-02-02

Family

ID=22458559

Family Applications (4)

Application Number Title Priority Date Filing Date
DE69434370T Expired - Lifetime DE69434370T2 (de) 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds
DE69429488T Expired - Lifetime DE69429488T2 (de) 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds
DE69432235T Expired - Lifetime DE69432235T2 (de) 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds
DE69434371T Expired - Lifetime DE69434371T2 (de) 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds

Family Applications After (3)

Application Number Title Priority Date Filing Date
DE69429488T Expired - Lifetime DE69429488T2 (de) 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds
DE69432235T Expired - Lifetime DE69432235T2 (de) 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds
DE69434371T Expired - Lifetime DE69434371T2 (de) 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds

Country Status (6)

Country Link
US (2) US5485568A (de)
EP (4) EP0989519B1 (de)
JP (1) JP3630726B2 (de)
CA (1) CA2131439C (de)
DE (4) DE69434370T2 (de)
ES (4) ES2242348T3 (de)

Families Citing this family (114)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6336180B1 (en) 1997-04-30 2002-01-01 Canon Kabushiki Kaisha Method, apparatus and system for managing virtual memory with virtual-physical mapping
US5485568A (en) * 1993-10-08 1996-01-16 Xerox Corporation Structured image (Sl) format for describing complex color raster images
EP0686945B1 (de) * 1994-05-26 2001-12-19 Canon Kabushiki Kaisha Bildverarbeitungsverfahren und -vorrichtung
AUPM704294A0 (en) * 1994-07-25 1994-08-18 Canon Information Systems Research Australia Pty Ltd Method and apparatus for the creation of images
AUPM704394A0 (en) * 1994-07-25 1994-08-18 Canon Information Systems Research Australia Pty Ltd Optimization method for the efficient production of images
AUPM704194A0 (en) 1994-07-25 1994-08-18 Canon Information Systems Research Australia Pty Ltd Efficient methods for the evaluation of a graphical programming language
AU694512B2 (en) * 1994-07-25 1998-07-23 Canon Kabushiki Kaisha Efficient methods for the interpretation of a graphical programming language
AU695002B2 (en) * 1994-07-25 1998-08-06 Canon Kabushiki Kaisha Method and apparatus for the creation of images
AU681963B2 (en) * 1994-07-25 1997-09-11 Canon Kabushiki Kaisha Optimization method for the efficient production of images
AUPM704494A0 (en) * 1994-07-25 1994-08-18 Canon Information Systems Research Australia Pty Ltd Efficient methods for the interpretation of a graphical programming language
AU733038B2 (en) * 1994-07-25 2001-05-03 Canon Kabushiki Kaisha Efficient methods for the evaluation of a graphical programming language
US5666503A (en) * 1994-11-14 1997-09-09 Xerox Corporation Structured image (SI) image editor and method for editing structured images
TW367447B (en) * 1994-12-21 1999-08-21 Canon Kk Block selection review and editing system
US6651108B2 (en) * 1995-08-14 2003-11-18 Next Software, Inc. Method and apparatus for generating object-oriented world wide web pages
US6137589A (en) * 1995-09-20 2000-10-24 Hewlett-Packard Company Efficient storage of dithered raster image data in a printer or the like
US5710877A (en) * 1995-12-29 1998-01-20 Xerox Corporation User-directed interaction with an image structure map representation of an image
IT1281696B1 (it) * 1996-01-19 1998-02-26 Francesco Morelli Sistema elettronico per la memorizzazione manipolazione moltiplicazione e la stampa di immagini
US6538764B2 (en) * 1996-04-12 2003-03-25 Canon Kabushiki Kaisha Printing apparatus, information processing apparatus, data processing method for use in such an apparatus, and storage medium storing computer-readable program
US5751852A (en) * 1996-04-29 1998-05-12 Xerox Corporation Image structure map data structure for spatially indexing an imgage
JP3061765B2 (ja) * 1996-05-23 2000-07-10 ゼロックス コーポレイション コンピュータベースの文書処理方法
US5884014A (en) * 1996-05-23 1999-03-16 Xerox Corporation Fontless structured document image representations for efficient rendering
US5809179A (en) * 1996-05-31 1998-09-15 Xerox Corporation Producing a rendered image version of an original image using an image structure map representation of the image
US5978519A (en) * 1996-08-06 1999-11-02 Xerox Corporation Automatic image cropping
US6122634A (en) * 1996-11-12 2000-09-19 International Business Machines Corporation Fractal nested layout for hierarchical system
US5892854A (en) * 1997-01-21 1999-04-06 Xerox Corporation Automatic image registration using binary moments
US6738154B1 (en) * 1997-01-21 2004-05-18 Xerox Corporation Locating the position and orientation of multiple objects with a smart platen
US5767978A (en) * 1997-01-21 1998-06-16 Xerox Corporation Image segmentation system
AUPO478897A0 (en) * 1997-01-24 1997-02-20 Canon Information Systems Research Australia Pty Ltd Scan line rendering of convolutions
AUPO648397A0 (en) 1997-04-30 1997-05-22 Canon Information Systems Research Australia Pty Ltd Improvements in multiprocessor architecture operation
US6141012A (en) * 1997-03-31 2000-10-31 Xerox Corporation Image processing code generation based on structured image (SI) techniques
US6311258B1 (en) 1997-04-03 2001-10-30 Canon Kabushiki Kaisha Data buffer apparatus and method for storing graphical data using data encoders and decoders
US6289138B1 (en) 1997-04-30 2001-09-11 Canon Kabushiki Kaisha General image processor
AUPO647997A0 (en) 1997-04-30 1997-05-22 Canon Information Systems Research Australia Pty Ltd Memory controller architecture
US6259456B1 (en) 1997-04-30 2001-07-10 Canon Kabushiki Kaisha Data normalization techniques
US6707463B1 (en) 1997-04-30 2004-03-16 Canon Kabushiki Kaisha Data normalization technique
US6349379B2 (en) 1997-04-30 2002-02-19 Canon Kabushiki Kaisha System for executing instructions having flag for indicating direct or indirect specification of a length of operand data
EP0995171A1 (de) * 1997-07-14 2000-04-26 Quark, Inc., System zur verwaltung und kontrolle eines multimedialen projekts
US6741255B1 (en) * 1997-08-14 2004-05-25 Sun Microsystems, Inc. Method, apparatus and computer program product for using deferred execution for a tiling pull model in a tiled image processing architecture
WO1999019830A1 (en) * 1997-10-15 1999-04-22 Pixo Arts Corporation Method, apparatus and computer program product for object-based raster imaging
US6456779B1 (en) * 1997-10-31 2002-09-24 Sony Corporation Method and apparatus for providing a video editor
JPH11250272A (ja) * 1998-01-08 1999-09-17 Xerox Corp 自動イメ―ジレイアウト方法及びシステム
US6557017B1 (en) * 1998-02-06 2003-04-29 Xerox Corporation Image production system theme integration
WO1999061977A1 (en) * 1998-05-27 1999-12-02 Visual Applications, Inc. System for visualizing items in user-provided environment
EP0975146B1 (de) * 1998-07-24 2006-08-30 Xerox Corporation Bestimmung der Lage und Orientierung einer Vielzahl von Objekten mittels einer intelligenten Bildeingangsplatte
GB2340361B (en) * 1998-07-31 2002-11-06 Sony Uk Ltd Digital video processing
GB2340360B (en) * 1998-07-31 2002-11-06 Sony Uk Ltd Animation of video special effects
GB2340362B (en) * 1998-07-31 2002-11-06 Sony Uk Ltd Digital video processing
EP0984396A3 (de) * 1998-09-03 2003-08-20 Canon Kabushiki Kaisha Anordnung und verfahren zum Optimieren der Bildzusammensetzung
EP1147655B1 (de) * 1998-11-06 2011-10-12 The Trustees of Columbia University in the City of New York Videobeschreibungssystem und -verfahren
US6442507B1 (en) 1998-12-29 2002-08-27 Wireless Communications, Inc. System for creating a computer model and measurement database of a wireless communication network
US6496198B1 (en) * 1999-05-04 2002-12-17 Canon Kabushiki Kaisha Color editing system
US7068382B1 (en) * 1999-05-25 2006-06-27 Silverbrook Research Pty Ltd Interactive printer provider
US6850946B1 (en) * 1999-05-26 2005-02-01 Wireless Valley Communications, Inc. Method and system for a building database manipulator
US6493679B1 (en) * 1999-05-26 2002-12-10 Wireless Valley Communications, Inc. Method and system for managing a real time bill of materials
US6317599B1 (en) * 1999-05-26 2001-11-13 Wireless Valley Communications, Inc. Method and system for automated optimization of antenna positioning in 3-D
US6539420B1 (en) 1999-06-04 2003-03-25 International Business Machines Corporation Distribution mechanism for reuse of web based image data
US7243054B2 (en) 1999-07-14 2007-07-10 Wireless Valley Communications, Inc. Method and system for displaying network performance, cost, maintenance, and infrastructure wiring diagram
US6499006B1 (en) * 1999-07-14 2002-12-24 Wireless Valley Communications, Inc. System for the three-dimensional display of wireless communication system performance
US6647151B1 (en) 1999-08-18 2003-11-11 Hewlett-Packard Development Company, L.P. Coalescence of device independent bitmaps for artifact avoidance
AUPQ251999A0 (en) * 1999-08-27 1999-09-23 Canon Kabushiki Kaisha Run-based compositing
US6704456B1 (en) 1999-09-02 2004-03-09 Xerox Corporation Automatic image segmentation in the presence of severe background bleeding
US6839466B2 (en) * 1999-10-04 2005-01-04 Xerox Corporation Detecting overlapping images in an automatic image segmentation device with the presence of severe bleeding
US6704120B1 (en) 1999-12-01 2004-03-09 Xerox Corporation Product template for a personalized printed product incorporating image processing operations
US7146566B1 (en) 1999-12-14 2006-12-05 International Business Machines Corporation Method and system for multiformat presentation
US7062107B1 (en) * 1999-12-16 2006-06-13 Eastman Kodak Company Techniques for generating a distributed low-resolution digital image capable of viewing in any resolution
JP2001346031A (ja) * 2000-06-05 2001-12-14 Fuji Photo Film Co Ltd 画像合成方法及び装置
WO2002007000A2 (en) 2000-07-13 2002-01-24 The Belo Company System and method for associating historical information with sensory data and distribution thereof
US6971063B1 (en) * 2000-07-28 2005-11-29 Wireless Valley Communications Inc. System, method, and apparatus for portable design, deployment, test, and optimization of a communication network
US7680644B2 (en) * 2000-08-04 2010-03-16 Wireless Valley Communications, Inc. Method and system, with component kits, for designing or deploying a communications network which considers frequency dependent effects
US7096173B1 (en) 2000-08-04 2006-08-22 Motorola, Inc. Method and system for designing or deploying a communications network which allows simultaneous selection of multiple components
US6625454B1 (en) 2000-08-04 2003-09-23 Wireless Valley Communications, Inc. Method and system for designing or deploying a communications network which considers frequency dependent effects
US7246045B1 (en) * 2000-08-04 2007-07-17 Wireless Valley Communication, Inc. System and method for efficiently visualizing and comparing communication network system performance
US7085697B1 (en) 2000-08-04 2006-08-01 Motorola, Inc. Method and system for designing or deploying a communications network which considers component attributes
US7055107B1 (en) 2000-09-22 2006-05-30 Wireless Valley Communications, Inc. Method and system for automated selection of optimal communication network equipment model, position, and configuration
US6973622B1 (en) 2000-09-25 2005-12-06 Wireless Valley Communications, Inc. System and method for design, tracking, measurement, prediction and optimization of data communication networks
US6665587B2 (en) 2000-11-29 2003-12-16 Xerox Corporation Product template for a personalized printed product incorporating workflow sequence information
BR0116693A (pt) * 2000-12-18 2004-08-17 Wireless Valley Comm Inc Sistema computadorizado e método para coletar dados a partir de um grupo de objetos ou redes espacialmente distribuìdos e método para a visualização de um grupo de objetos ou de redes espacialmente distribuìdos
US7164883B2 (en) * 2001-02-14 2007-01-16 Motorola. Inc. Method and system for modeling and managing terrain, buildings, and infrastructure
US6992789B2 (en) * 2001-06-15 2006-01-31 International Business Machines Corporation Method, system, and program for managing a multi-page document
ATE497224T1 (de) 2001-07-12 2011-02-15 Dxo Labs Verfahren und system zur qualitätsverbesserung von bildern
US7574323B2 (en) * 2001-12-17 2009-08-11 Wireless Valley Communications, Inc. Textual and graphical demarcation of location, and interpretation of measurements
US20030142113A1 (en) * 2002-01-30 2003-07-31 Xerox Corporation Hint data editor and method of editing hint data
US20030226116A1 (en) * 2002-03-08 2003-12-04 Katie Kuwata Method and system for implementing a historical buffer
US7509577B2 (en) * 2002-03-08 2009-03-24 Toshiba Corp Oration Method and system for implementing a clipboard
JP4227468B2 (ja) * 2002-06-24 2009-02-18 キヤノン株式会社 画像形成装置及び方法、並びに制御プログラム
US6672212B1 (en) * 2002-09-03 2004-01-06 Sharp Laboratories Of America, Inc. Single print job emulation of multiple TIFF files
US7295960B2 (en) * 2003-01-22 2007-11-13 Wireless Valley Communications, Inc. System and method for automated placement or configuration of equipment for obtaining desired network performance objectives
US7295119B2 (en) 2003-01-22 2007-11-13 Wireless Valley Communications, Inc. System and method for indicating the presence or physical location of persons or devices in a site specific representation of a physical environment
US20040259554A1 (en) * 2003-04-23 2004-12-23 Rappaport Theodore S. System and method for ray tracing using reception surfaces
US20040259555A1 (en) * 2003-04-23 2004-12-23 Rappaport Theodore S. System and method for predicting network performance and position location using multiple table lookups
US20050068582A1 (en) * 2003-09-30 2005-03-31 Ferlitsch Andrew R. Systems and methods for providing printing with document indicia
FR2868854B1 (fr) * 2004-04-08 2006-08-04 Herve Rostan Procede et systeme pour gerer des objets multimedia a diffuser, au moyen d'une unite de traitement associee a un accelerateur multimedia
US20060103677A1 (en) * 2004-11-18 2006-05-18 Lai Jimmy K L System and method for effectively performing arbitrary angle sprite rotation procedures
CA2489613A1 (en) * 2004-12-07 2006-06-07 Ibm Canada Limited - Ibm Canada Limitee Maximize data visibility using slated viewer
US7834876B2 (en) * 2004-12-28 2010-11-16 The Mathworks, Inc. Providing graphic generating capabilities for a model based development process
US20060209214A1 (en) * 2005-03-17 2006-09-21 Xerox Corporation Digital photo album systems and methods
US7773995B2 (en) * 2005-04-18 2010-08-10 Motorola, Inc. Method and apparatus for utilizing RF signals to create a site specific representation of an environment
CN1866264A (zh) * 2005-05-21 2006-11-22 华为技术有限公司 一种移动游戏的场景生成方法及系统
US7880738B2 (en) 2005-07-14 2011-02-01 Molsoft Llc Structured documents and systems, methods and computer programs for creating, producing and displaying three dimensional objects and other related information in those structured documents
RU2309456C2 (ru) * 2005-12-08 2007-10-27 "Аби Софтвер Лтд." Способ распознавания текстовой информации из векторно-растрового изображения
US20100254606A1 (en) * 2005-12-08 2010-10-07 Abbyy Software Ltd Method of recognizing text information from a vector/raster image
US8194074B2 (en) * 2006-05-04 2012-06-05 Brown Battle M Systems and methods for photogrammetric rendering
US7711371B2 (en) * 2006-06-27 2010-05-04 Motorola, Inc. Method and system for analysis and visualization of a wireless communications network
US20080144066A1 (en) * 2006-10-26 2008-06-19 Andrew Rodney Ferlitsch Composition Print Method Using Translators
JP4971768B2 (ja) * 2006-12-07 2012-07-11 キヤノン株式会社 編集装置、編集方法、およびプログラム
US20080150962A1 (en) * 2006-12-20 2008-06-26 Bezryadin Sergey N Image display using a computer system, including, but not limited to, display of a reference image for comparison with a current image in image editing
US8296662B2 (en) * 2007-02-05 2012-10-23 Brother Kogyo Kabushiki Kaisha Image display device
US8884916B2 (en) 2010-12-09 2014-11-11 Synaptics Incorporated System and method for determining user input using polygons
US9411445B2 (en) 2013-06-27 2016-08-09 Synaptics Incorporated Input object classification
US10932103B1 (en) * 2014-03-21 2021-02-23 Amazon Technologies, Inc. Determining position of a user relative to a tote
US9804717B2 (en) 2015-03-11 2017-10-31 Synaptics Incorporated Input sensing and exclusion
JP2019067347A (ja) * 2017-10-05 2019-04-25 キヤノン株式会社 情報処理装置およびその制御方法、並びにプログラム
CN108921911B (zh) * 2018-08-01 2021-03-09 中国科学技术大学 结构化图片自动转换为源代码的方法
CN111047671B (zh) * 2019-12-24 2023-05-16 成都来画科技有限公司 一种手绘图片的绘画路径的优化方法及存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4742558A (en) * 1984-02-14 1988-05-03 Nippon Telegraph & Telephone Public Corporation Image information retrieval/display apparatus
US4813013A (en) * 1984-03-01 1989-03-14 The Cadware Group, Ltd. Schematic diagram generating system using library of general purpose interactively selectable graphic primitives to create special applications icons
JPH063608B2 (ja) * 1984-06-30 1994-01-12 株式会社東芝 文書画像編集装置
US5021976A (en) * 1988-11-14 1991-06-04 Microelectronics And Computer Technology Corporation Method and system for generating dynamic, interactive visual representations of information structures within a computer
US5278950A (en) * 1989-09-20 1994-01-11 Fuji Photo Film Co., Ltd. Image composing method
US5181162A (en) * 1989-12-06 1993-01-19 Eastman Kodak Company Document management and production system
JP3092711B2 (ja) * 1990-09-11 2000-09-25 キヤノン株式会社 出力制御装置及び方法
US5416900A (en) * 1991-04-25 1995-05-16 Lotus Development Corporation Presentation manager
EP0528631B1 (de) * 1991-08-13 1998-05-20 Xerox Corporation Elektronische Bilderzeugung
US5353388A (en) * 1991-10-17 1994-10-04 Ricoh Company, Ltd. System and method for document processing
US5437008A (en) * 1992-06-23 1995-07-25 Adobe Systems Incorporated Method of establishing constraints and links in a distribution frame between graphical elements and resolving the constaints
ATE223601T1 (de) 1993-03-25 2002-09-15 Mgi Software Corp Bildverarbeitungsverfahren und -system
US5485568A (en) * 1993-10-08 1996-01-16 Xerox Corporation Structured image (Sl) format for describing complex color raster images

Also Published As

Publication number Publication date
EP0647921A3 (de) 1996-01-31
US6326983B1 (en) 2001-12-04
ES2194415T3 (es) 2003-11-16
DE69434371D1 (de) 2005-06-16
DE69432235D1 (de) 2003-04-10
EP0989523A3 (de) 2000-07-19
DE69432235T2 (de) 2003-11-20
DE69434371T2 (de) 2005-11-17
EP0989522A3 (de) 2000-07-19
CA2131439A1 (en) 1995-04-09
ES2242349T3 (es) 2005-11-01
DE69434370D1 (de) 2005-06-16
DE69429488T2 (de) 2002-08-01
EP0989523B1 (de) 2005-05-11
JP3630726B2 (ja) 2005-03-23
ES2242348T3 (es) 2005-11-01
EP0989522B1 (de) 2005-05-11
EP0989519B1 (de) 2003-03-05
EP0647921B1 (de) 2001-12-19
EP0989519A1 (de) 2000-03-29
CA2131439C (en) 2001-05-29
JPH07282284A (ja) 1995-10-27
EP0647921A2 (de) 1995-04-12
EP0989522A2 (de) 2000-03-29
DE69429488D1 (de) 2002-01-31
ES2169063T3 (es) 2002-07-01
EP0989523A2 (de) 2000-03-29
US5485568A (en) 1996-01-16

Similar Documents

Publication Publication Date Title
DE69434370T2 (de) Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds
DE69534558T2 (de) Effizientes Verfahren, Gerät und Rechnerprogramm zur Auswertung graphischer Programmiersprache
DE69830767T2 (de) Verfahren und Vorrichtung zum Zusammensetzen geschichteter synthetischer graphischer Filter
EP0712096B1 (de) Bildaufbereitungsverfahren und Editor für Bilder auf strukturiertem Bildformat
DE60022610T2 (de) Verfahren zur Animationskodierung in einer Bilddatei
DE60016032T2 (de) Videoschnittarbeitsflussverfahren und -system
DE69233037T2 (de) Automatisiertes neues Layout mit dimensionaler Verknüpfung
DE10296401B4 (de) Verbund-Rendering von 3-D-Graphikobjekten
DE69828974T2 (de) Verfahren und system zur veränderung und aufbereitung dreidimensionaler animationen in einer nicht-linearen editionsumgebung
DE69825851T2 (de) Bildverarbeitungsvorrichtung und Bildverarbeitungsverfahren
DE19852296B4 (de) Verfahren, Vorrichtung und System zum Vereinigen von Bild- und Formulardaten (Formularüberziehen) im Zusammenhang mit Computern
DE10234137B4 (de) System und Verfahren, um Benutzern zu ermöglichen, graphische Bilder zu editieren
DE69133362T2 (de) Dokumentenverarbeitungs-verfahren und -gerät, entsprechende Program und Speichereinheit
DE69825863T2 (de) Navigation in einer virtuellen umgebung
DE602005001787T2 (de) Vorrichtung und Verfahren zum Editieren von Druckdaten
DE3512505A1 (de) System zur bearbeitung von graphik-daten fuer einen cad-arbeitsplatz
DE69631718T2 (de) Verfahren und Gerät zur leistungsfähigen Graphikdarstellung dreidimensionaler Szenen
DE3838740A1 (de) Dokumentationsverarbeitungsanlage
US6141012A (en) Image processing code generation based on structured image (SI) techniques
DE69830766T2 (de) Verfahren und Vorrichtung zum Bestimmen des Anwendungsumfangs geschichteter synthetischer graphischer Filter
DE69930352T2 (de) Verfahren und Vorrichtung zur Animierung von Videospezialeffekten
DE69934174T2 (de) Verfahren und Vorrichtung zur digitalen Bildbearbeitung
DE19581872B4 (de) Dreidimensionales Graphikaufbereitungssystem
DE3634025C2 (de)
DE60036409T2 (de) Techniken zur synchronisierung einer vielzahl einander zugeordneter multimediaressourcen in einem verteilersystem

Legal Events

Date Code Title Description
8364 No opposition during term of opposition