DE60031624T2 - Bildunterteilung die die Übertragung überlappter Bildteile verhindert - Google Patents

Bildunterteilung die die Übertragung überlappter Bildteile verhindert Download PDF

Info

Publication number
DE60031624T2
DE60031624T2 DE60031624T DE60031624T DE60031624T2 DE 60031624 T2 DE60031624 T2 DE 60031624T2 DE 60031624 T DE60031624 T DE 60031624T DE 60031624 T DE60031624 T DE 60031624T DE 60031624 T2 DE60031624 T2 DE 60031624T2
Authority
DE
Germany
Prior art keywords
rectangles
image
splitting
picture
location
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
DE60031624T
Other languages
English (en)
Other versions
DE60031624D1 (de
Inventor
Chia-Hsin Suwa-shi Li
Viresh Suwa-shi Ratnakar
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Application granted granted Critical
Publication of DE60031624D1 publication Critical patent/DE60031624D1/de
Publication of DE60031624T2 publication Critical patent/DE60031624T2/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
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • H04N1/3872Repositioning or masking
    • H04N1/3873Repositioning or masking defined only by a limited number of coordinate points or parameters, e.g. corners, centre; for trimming

Description

  • HINTERGRUND DER ERFINDUNG
  • GEBIET DER ERFINDUNG
  • Diese Erfindung bezieht sich auf Bildaufteilungsverfahren und Geräte wie Computer, auf denen solche Verfahren implementiert werden können. Spezifischer bezieht sich die Erfindung auf das Aufteilen einer Menge von überlappenden Bildern, um die Herunterlade- und Verarbeitungseffizienz zu verbessern. Überlappende Bilder werden aufgeteilt, so dass, wenn die Bilddaten übertragen werden (zum Beispiel heruntergeladen werden) nur die sichtbaren Teile der Bilder heruntergeladen werden. Unsichtbare Bildteile werden nicht übertragen, um Übertragungskapazität zu sparen.
  • BESCHREIBUNG DES STANDS DER TECHNIK
  • Verschiedene Online-Hilfsmittel existieren, die es zulassen, dass ein Benutzer Grafiken wie Geschäftskarten und Grußkarten über das Internet mit einem Standard-Webbrowser erzeugt und editiert. Viele dieser Hilfsmittel erlauben es dem Benutzer, ein oder mehrere Bilder zu der Gruß- oder Geschäftskarte hinzuzufügen. Der Benutzer kann die Bilder umherschieben, ihre Größe ändern, sie rotieren etc.
  • Während des Bedienungsprozesses geht der Benutzer typischerweise nur mit Minibildern um. Dies minimiert die Anforderungen an die Client-Maschine. Es mi nimiert auch die Herunterladezeit. Das Herunterladen des Bildes in voller Größe kann aufgeschoben werden, bis der Benutzer zum Ausdrucken bereit ist. Auf diese Weise wird für das Herunterladen eines Bildes voller Größe keine Zeit verschwendet, wenn der Benutzer seine Meinung darüber ändert, welches Bild er verwenden will.
  • In einigen Fällen mag der Benutzer es wünschen, mehrere Bilder in das Grafikdokument einzubauen, von denen sich einige teilweise überlappen. In jedem Überlappungsbereich ist nur der entsprechende Anteil des obersten Bilds sichtbar; die entsprechenden Teile der weiter unten gelegenen Bilder im Stapel werden verdeckt. Entsprechend dem gegenwärtigen Stand der Technik werden die gesamten Bilddaten heruntergeladen, wenn der Benutzer die Bilder herunterladen will, sogar die Daten von Bildanteilen, die nicht sichtbar werden werden. Dies ist zeitraubend und unnötig.
  • Das Dokument US-A-5917962 offenbart ein Verfahren zum Aufteilen eines Bildes in Unterbilder vor der Übertragung und das Verwenden der Positionsinformation, die eine relative Platzierung eines Unterbildes innerhalb des Bildes in einem ersten Raum bestimmt, um Grenzen zwischen den Unterbildern in einem zweiten Raum zu bestimmen.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Es ist eine Aufgabe der vorliegenden Erfindung, die erwähnten Probleme und Nachteile des konventionellen Verarbeitens von überlappenden Bildern zu überwinden.
  • Eine andere Aufgabe dieser Erfindung ist es, ein System zum Aufteilen einer Menge von überlappenden Bildern bereitzustellen, um die Übertragungs- und Verarbeitungseffizienz zu erhöhen.
  • Ein weiteres Ziel der vorliegenden Erfindung ist es, ein System zum Aufteilen einer Menge von überlappenden Bildern bereitzustellen, sodass nur die sichtbaren Anteile der Bilder übertragen werden.
  • Noch eine andere Aufgabe dieser Erfindung ist es, ein System zum Aufteilen einer Menge von überlappenden Bildern bereitzustellen, die in einem komprimierten Bereich sind und nur die komprimierten Daten aus dem aufgeteilten Bereich zu übertragen.
  • Gemäß einem Aspekt dieser Erfindung wird ein Verfahren bereitgestellt zum Aufteilen einer Gruppe von Bildern, die mindestens ein erstes am weitesten unten liegendes Bild und ein zweites Bild vor dem ersten Bild und dieses teilweise überlappend umfasst. Das Verfahren umfasst das Aufteilen eines nicht überlappten Anteils des ersten Bildes in mindestens zwei Teile, basierend auf der Position des zweiten Bildes, um eine erste Menge von Bildelementen zu bilden und das Übertragen nur der ersten Menge von Bildelementen.
  • Wenn nötig wird ein nicht überlappter Anteil von jedem teilweise überlappten Bildelement in der ersten Menge von Bildelementen vorzugsweise weiter in einer zweiten Aufteilungsstufe in mindestens zwei Teile aufgeteilt, basierend auf der Position eines dritten Bildes in der Gruppe von Bildern, die teilweise die erste Menge von Bildelementen überlappt. Diese zweite Stufe des Aufteilens resultiert in der Bildung einer zweiten Menge von Bildelementen. In diesem Fall werden nur die erste und zweite Menge von Bildelementen übertragen.
  • In einem anderen Aspekt der Erfindung wird ein Verfahren zum Aufteilen einer Gruppe von Bildern bereitgestellt, bei der sich mindestens einige von ihnen teilweise überlappen, wobei die Gruppe von Bildern ein erstes am weitesten unten liegendes Bild und ein letztes am weitesten oben liegendes Bild enthält. Das Verfahren umfasst das Aufteilen. eines nicht überlappten Anteils des ersten Bildes in eine Mehrzahl von Rechtecken, basierend auf der Position eines zweiten Bildes vor ihm und das erste Bild teilweise überlappend, um eine erste Menge von Rechtecken zu bilden; iteratives Bilden von neuen Mengen von Rechtecken durch Aufteilen einer gegenwärtigen Menge von Rechtecken, basierend auf einem nächsten Bild in der Gruppe von Bildern, bis eine endgültige Menge von Rechtecken gebildet wird, basierend auf der Position des am weitesten oben liegenden Bildes; und Übertragen der endgültigen Menge von Rechtecken. Vorzugsweise enthält die erste Menge von Rechtecken das zweite Bild und jede zusätzliche Menge von Rechtecken enthält das Bild, auf welchem das Aufteilen jener zusätzlichen Menge basiert.
  • Vorzugsweise enthält die erste Menge von Bildelementen das zweite Bild und die zweite Menge von Bildelementen enthält das dritte Bild.
  • Ebenfalls vorzugsweise hat jeder Teil und jedes Bildelement die Form eines Rechtecks.
  • Ebenfalls vorzugsweise wird das Aufteilen in einem komprimierten oder teilweise komprimierten Bereich durchgeführt.
  • Gemäß einem anderen Aspekt der Erfindung wird eine Vorrichtung bereitgestellt zum Aufteilen einer Gruppe von Bildern im Einklang mit dem/den oben beschriebenen Verfahren. Die Vorrichtung kann ein digitaler Computer, ein anderes durch ein Prozessor gesteuertes Gerät oder Äquivalentes sein.
  • In noch einem anderen Aspekt der Erfindung kann/können das/die oben beschriebene(n) Verfahren in einem Programm von Befehlen verwirklicht werden, das in einem Medium gespeichert ist, welches für einen digitalen Computer oder ein anderes durch ein Prozessor gesteuertes Gerät lesbar ist. Alternativ kann/können das/die Verfahren implementiert werden unter Benutzung von Hardware oder einer Kombination von Software und Hardware.
  • Andere Ziele und Leistungen zusammen mit einem besseren Verständnis der Erfindung werden deutlich werden und zur Kenntnis genommen werden durch Bezug auf die folgenden Beschreibung und Ansprüche in Verbindung mit den begleitenden Zeichnungen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • In den Zeichnungen beziehen sich gleiche Bezugszeichen auf gleiche Teile:
  • 1 ist eine schematische Darstellung eines Netzwerks, das einen Netzwerk-Client und einen Netzwerk-Server verbindet;
  • 2 ist ein funktionales Blockdiagramm eines typischen Computers, der als ein Netzwerk-Client oder ein Netzwerk-Server verwendet werden kann, um verschiedene Aspekte der vorliegenden Erfindung zu implementieren;
  • 3A, 3B und 3C zeigen verschiedene Implementierungen von allen oder Teilen der Bildaufteilungstechniken der vorliegenden Erfindung;
  • 4 ist ein Flussdiagramm, das den Ablauf des Bildaufteilungsalgorithmus der vorliegenden Erfindung zeigt und
  • 5A bis 5Q zeigen die siebzehn verschiedenen Arten, auf die zwei Rechtecke/Bilder zueinander positioniert sein können.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Die Bildaufteilungstechniken der vorliegenden Erfindung können mit Grafiken oder Bildverarbeitungsanwendungen verwendet werden, bei denen ein Benutzer mit mehreren Bildern arbeitet, wobei einige oder alle von ihnen sich teilweise überlappen und die Bilddaten übertragen werden sollen. Solche Anwendungen können zum Beispiel Programme einschließen, die es einem Benutzer erlauben, Geschäfts- oder Grußkarten zu erzeugen. Die Techniken der vorliegenden Erfindung verbessern die Übertragungs- und Verarbeitungseffizienz durch Aufteilen der mehreren überlappenden Bilder, so dass nur die sichtbaren Anteile der Bilder übertragen werden. Demnach hat die vorliegende Erfindung eine besondere Nützlichkeit in Verbindung mit Online-Grafiken oder Bildverarbeitungsanwendungen, bei denen der Benutzer auf einem Client-Computer arbeitet, der über ein Netzwerk mit einem Server interagiert.
  • 1 ist eine schematische Darstellung eines Netzwerks. Der Einfachheit der Darstellung halber werden nur ein Client und ein Server gezeigt; jedoch wird es Fachleuten offensichtlich sein, dass das Netzwerk eine Mehrzahl von Clients und Servern enthalten kann (typischerweise tut es dies auch). Der Netzwerk-Client 11 verwendet das Netzwerk 13, um auf Ressourcen zuzugreifen, die von dem Netzwerk-Server 12 bereitgestellt werden. Obwohl daran gedacht werden kann, dass der Netzwerk-Server 12 ein Hypermedia-Server ist, vielleicht im Einklang mit dem Hypertext Transfer Protocol (HTTP) arbeitend, ist dies nicht notwendig, um die vorliegende Erfindung durchzuführen. Die Natur der Kommunikationswege, die den Netzwerk-Client 11 und den Netzwerk-Server 12 verbinden, ist nicht entscheidend für die Durchführung der vorliegenden Erfindung. Solche Wege können als geschaltete Wege und/oder Standleitungen unter Benutzung von privaten und/oder öffentlichen Vorrichtungen implementiert werden. Ähnlich ist die Topologie des Netzwerks 13 nicht entscheidend und kann in einer Vielfalt von Arten implementiert werden, einschließlich hierarchischen und Peer-to-Peer-Netzwerken. Der Netzwerk-Client 11 und der Netzwerk-Server 12 können sich zum Beispiel lokal zueinander befinden und können auf derselben Hardware implementiert werden.
  • 2 ist ein funktionales Blockdiagramm eines typischen Computersystems 20, das verwendet werden kann, um den Netzwerkclient 11 und/oder den Netzwerkserver 12 zu implementieren. Wie gezeigt enthält dieses Computersystem den Bus 21, der die Central Processing Unit (CPU) 22, den Systemspeicher 23 und verschiedene Geräteschnittstellen verbindet. Der Bus 21 kann durch mehr als einen physikalischen Bus implementiert werden, wie einen Systembus und einen Prozessor-Local-Bus. Die CPU 22 stellt einen Verarbeitungsschaltkreis wie einen Mikroprozessor dar. Der Systemspeicher 23 repräsentiert verschiedene Speicherkomponenten wie Random Access Memory (RAM) und Read-Only Memory (ROM). Die Input-Kontrolle 25 repräsentiert einen Schnittstellenschaltkreis, der mit einem. oder mehreren Inputgeräten 3S wie einer Tastatur, Maus, einer Rollkugel oder einem Stylus verbindet. Die Anzeigekontrolle 26 repräsentiert einen Schnittstellenschaltkreis, der mit einem oder mehr Anzeigegeräten 36 wie einem Video-Anzeigeterminal verbindet. Die I/O-Kontrolle 27 repräsentiert einen Schnittstellenschaltkreis, der mit einem oder mehr I/O-Geräten 37 wie einem Modem oder einer Netzwerkverbindung verbindet. Die Speicherkontrolle 28 repräsentiert einen Schnittstellenschaltkreis, der mit einem oder mehr Speichergeräten 38 wie einem Laufwerk für eine magnetischen Platte, einem Laufwerk für ein magnetisches Band, einem Laufwerk für eine Bildplatte oder einen Festkörperspeichergerät verbindet. Die Druckerkontrolle 29 repräsentiert einen Schnittstellenschaltkreis, der mit einem oder mehr Druckergeräten 39 wie einem Laserdrucker, einem Tintenstrahldrucker oder einem Plotter verbindet. Keine besondere Art von Computersystem ist entscheidend zur Durchführung der vorliegenden Erfindung. Zum Beispiel kann ein Computer mit einer Busarchitektur, die verschieden von der in 2 gezeigten ist, verwendet werden.
  • In einer bevorzugten Ausführungsform führt das Computersystem 20 die Bildaufteilungstechniken der vorliegenden Erfindung durch das Benutzen der CPU 22 aus, um ein Programm mit Befehlen, das sich im RAM befindet, auszuführen, das von dem ROM, dem Speichergerät 38, abgerufen werden kann oder vom Netzwerk-Server oder einer anderen Quelle durch das I/O-Gerät 37 erhalten werden kann. Das Programm von Befehlen (d.h. Software) kann durch ein Medium geliefert werden, das mit einem Computer oder einem anderen prozessorgesteuerten Gerät lesbar ist einschließlich verschiedenen magnetischen Medien. wie einer Plat te oder einem Band, verschiedenen optischen Medien wie Compact Disks und optischen, infraroten und Basisband- oder modulierten Kommunikationswegen durch das elektro-magnetische Spektrum von Überschall bis zu ultravioletten Frequenzen. Demnach ist der Begriff „durch ein Gerät lesbares Medium", wie er in den Ansprüchen verwendet wird, so gemeint, dass er alle solchen Medien abdeckt, einschließlich der Trägerwelle, die kodiert ist, um das Programm von Befehlen zu übertragen.
  • Alternativ können die Bildaufteilungstechniken der vorliegenden Erfindung mit Hardware implementiert werden unter Verwendung von diskreten Komponenten, anwendungsspezifischen integrierten Schaltkreisen (ASICs), digitalen Signalverarbeitern oder ähnlichem. Solche Hardware kann z.B. in einem Bildverarbeiter 40 verwirklicht werden, der physikalisch in die CPU 22 (3A) integriert werden kann oder ein separates Element sein kann. Wenn der Bildverarbeiter 40 ein separates Element ist, kann er im Computer 20 selbst (3B) oder einer Option-Card 41 verwirklicht werden, die in einen vorhandenen Computer-Einbauschlitz 42 eingesetzt werden kann (3c).
  • Die Bildaufteilungstechniken können auch unter Verwendung einer Kombination von Software und Hardware implementiert werden. Verschiedene Aspekte des darunterliegenden Aufteilungsalgorithmus können mit Hardware implementiert werden, während andere unter Verwendung von Software implementiert werden.
  • Demnach ist jede „Mittel für"-Formulierung in den Ansprüchen so gemeint, um die angemessenen Programmabschnitt(e) der funktional äquivalenten Hardwaregerät(e) zum Implementieren der beschriebenen Funktion abzudecken.
  • Sich nun dem darunterliegenden Bildaufteilungsalgorithmus der vorliegenden Erfindung zuwendend, wird eine Menge von überlappenden Bildern in kleinere Teile aufgeteilt, so dass nur die sichtbaren Anteile der Bilder übertragen (d.h. heruntergeladen) werden. Das Aufteilen wird vorzugsweise unter Verwendung von Rechtecken durchgeführt, da digitale Geräte wie Computer typischerweise mit Bildern in der Form von Rechtecken arbeiten. Um den Verbrauch von Übertragungskapazität weiter zu reduzieren und um weiter die Verarbeitungseffizienz zu verbessern, wird das Aufteilen vorzugsweise durchgeführt, während die Bilder im teilweise komprimierten (d.h. Frequenz)-Bereich sind und danach werden die komprimierten (d.h. Datenstrom)-Daten nur in den aufgeteilten Bereichen übertragen.
  • Es sollte jedoch bemerkt werden, dass die Erfindung nicht auf eine besondere Aufteilungsprozedur begrenzt ist. Eher kann jede bekannte Ausschneideprozedur im räumlichen Bereich oder im Frequenzbereich verwendet werden, um das tatsächliche Aufteilen der Bilddaten durchzuführen. Jedoch wird in den bevorzugten Ausführungsformen das Aufteilen unter Verwendung einer Ausschneideprozedur im Frequenzbereich durchgeführt, wobei danach die komprimierten Daten nur in den ausgeschnittenen Bereichen übertragen werden. Bei JPEG-Bildern werden die Bilddaten vorzugsweise im Frequenz- oder teilweise komprimierten Bereich verarbeitet unter Verwendung einer JPEG-Ausschneideprozedur.
  • 4 zeigt ein Flussdiagramm, welches den Prozess des iterativen Bildausschneidealgorithmus der vorliegenden Erfindung illustriert. Der Algorithmus beginnt in Schritt 41, bei dem im Stapel von überlappenden Bildern jedes Bild mit einer unterschiedlichen z-Ordnungszahl bezeichnet wird, die seine Ordnung im Stapel darstellt. Zum Beispiel können die z-Ordnungszahlen so aufeinander folgend zugewiesen werden, dass die niedrigste Zahl (d.h. 0) das am weitesten unten liegende Bild im Stapel repräsentiert und die höchste Zahl (d.h. n – 1) das am weitesten oben liegende Bild im Stapel repräsentiert, wobei die Zahl der Bilder im Stapel gleich n ist. Mit diesem Nummerierungsschema zeigt eine höhere z-Ordnungszahl gewöhnlicher Weise ein weiter vorne liegendes Bild an. Jedoch kann eine Situation auftreten, bei der zwei Bilder jeweils ein Bild unmittelbar darunter überlappen, aber nicht miteinander überlappen. In diesem Fall wird kei nes der beiden Bilder weiter nach vorne liegend mit Bezug auf das andere sein, obwohl eines eine höhere z-Ordnungszahl als das andere hat.
  • Bei jeder Stufe behält der Algorithmus eine gegenwärtige Menge von sichtbaren Rechtecken, die initialisiert ist, das am weitesten unten liegende Bild (z-Ordnung = 0) zu enthalten im Schritt 42. Als Herz des Algorithmus wird diese gegenwärtige Menge von sichtbaren Rechtecken iterativ durch das Bild mit der nächsten z-Ordnung aufgeteilt. Diese nächste z-Ordnung wird durch eine inkrementierte Variable i bezeichnet, die im Schritt 43 auf 1 initialisiert wird.
  • Als nächstes wird die gegenwärtige Menge von sichtbaren Rechtecken mit dem Bild, das eine z-Ordnungszahl von i hat, verglichen, um den Überlappungsbereich zu bestimmen. Nach dem Bestimmen der Überlappungsbereiche werden alle nicht überlappenden Anteile von allen Rechtecken im gegenwärtig sichtbaren Bereich aufgeteilt, um die nächste Menge von Rechtecken zu bilden. Das Bild mit der z-Ordnungsnummer von i wird auch zu dieser Menge hinzugefügt, und diese Menge wird die gegenwärtige Menge von sichtbaren Rechtecken für die nächste Iteration, bei der i auf i + 1 erhöht wird. Dieser Prozess setzt sich fort, wobei das nächste Bild in der z-Ordnung mit der vorher erzeugten (d.h. „gegenwärtigen") Menge von sichtbaren Rechtecken verglichen wird, um eine „neue" Menge von sichtbaren Rechtecken zu erzeugen, bis alle Bilder betrachtet worden sind. Nachdem das letzte (d.h. am weitesten oben liegende) Bild betrachtet wird und das finale Aufteilen beendet ist, wird eine endgültige Menge von Rechtecken erzeugt, die nur die sichtbaren Anteile des Stapels von Bildern repräsentiert.
  • Demnach kann Schritt 44 allgemein als das Vergleichen der gegenwärtigen Menge von sichtbaren Rechtecken mit einem Rechteck beschrieben werden, das eine z-Ordnung von i hat (d.h. das am nächsten nach vorne liegende Bild im Stapel), um den Überlappungsbereich zu bestimmen. Im ersten Vergleich besteht die gegenwärtige Menge von sichtbaren Rechtecken nur aus dem am weitesten unten gelegenen Bild. Schritt 45, der allgemeiner beschrieben wird, beinhaltet das Auf teilen des nicht überlappten Anteils von jedem teilweise überlappten Rechteck in der gegenwärtigen Menge von sichtbaren Rechtecken, um die nächste Menge von sichtbaren. Rechtecken zu bilden, die auch das Bild mit der z-Ordnung i einschließt.
  • Nach jeder Stufe des Aufteilens bestimmt der Algorithmus, ob alle Bilder im Stapel im Aufteilungsprozess betrachtet worden sind, oder nicht (Schritt 46). Wenn nicht, wird i im Schritt 47 um 1 erhöht und der Algorithmus geht zum Schritt 44 zurück, um das am nächsten nach vorne liegende Bild im Stapel mit der „gegenwärtigen Menge" von sichtbaren Rechtecken zu vergleichen. Der Prozess setzt sich fort, bis alle Bilder/Rechtecke betrachtet worden sind und das Aufteilen beendet ist, wobei dann eine weitere Verarbeitung der finalen Menge von sichtbaren Rechtecken im Schritt 48 durchgeführt werden kann. Eine solche weitere Verarbeitung kann z.B. das Zusammenfügen in größere Rechtecke von benachbarten Rechtecken umfassen, die zum selben Bild gehören, wenn es effizient ist, dies zu machen.
  • Danach werden in Schritt 49 nur die Daten in der endgültigen Menge von Rechtecken, die nur die sichtbaren Anteile des Stapels von Bildern repräsentieren, übertragen, um Übertragungskapazität zu sparen und die Verarbeitungseffizienz zu verbessern. Wie oben bemerkt wird das Aufteilen bevorzugt durchgeführt, während die Bilder im teilweise komprimierten (d.h. Frequenz)-Bereich sind. Demnach extrahiert der Algorithmus bei den bevorzugten Ausführungsformen, nachdem die finale Menge von Rechtecken erzeugt ist, die komprimierten Daten aus dem ausgeschnittenen (d.h. aufgeteilten Bereich), der durch die finale Menge von Rechtecken dargestellt wird. Der Algorithmus sendet dann diese Daten in komprimierter Form. Das Durchführen der Aufteilung im teilweise komprimierten Bereich und das Übertragen im komprimierten Bereich resultiert in einer zusätzlichen Verringerung der Übertragungskapazität und einer weiteren. Verbesserung der Verarbeitungseffizienz.
  • Bei einer gegebenen Menge von überlappenden Bildern betrachtet jede Stufe des Aufteilens nur die „gegenwärtige" Menge von sichtbaren Rechtecken mit Bezug auf das Rechteck/Bild, das die nächsthöhere z-Ordnung im Stapel hat. Jedes teilweise überlappte Rechteck in der „gegenwärtigen" Menge von sichtbaren Rechtecken wird in kleinere Rechtecke aufgeteilt, basierend auf dem Rechteck/Bild, das eine z-Ordnung i hat, um eine „neue" Menge von sichtbaren Rechtecken zu erzeugen, die das Rechteck einschließt, das durch die z-Ordnung i definiert ist. Diese „neue" Menge von Rechtecken, die nun die „gegenwärtige" Menge von Rechtecken wird, wird dann mit dem nächsten Rechteck/Bild. im Stapel verglichen. Weiteres Aufteilen der nicht überlappten Anteile von jedem teilweise überlappten Rechteck in der „gegenwärtigen" Menge führt zu einer „neuen" Menge von Rechtecken.
  • Ein „früheres" Rechteck in der „gegenwärtigen" Menge wird nur aufgeteilt, wenn ein „neues" Rechteck sich vor ihm befindet und wenn das „neue" Rechteck teilweise das „frühere" Rechteck überlappt. Das „frühere" Rechteck kann das Resultat eines vorangegangenen Aufteilens gewesen sein. Der Algorithmus nimmt vorzugsweise seine Entscheidung über das Aufspalten eines „früheren" Rechtecks nicht zurück. Wenn ein „früheres" Rechteck aufgespalten werden soll, ist es von einer Rechenperspektive aus vorteilhaft, das „frühere" Rechteck so aufzuspalten, dass die resultierenden kleineren Rechtecke ungefähr die gleiche Fläche haben.
  • Wie oben bemerkt ist das Rechteck die bevorzugte Form des Aufteilens, da Computer typischerweise mit Bildern in Rechteckform umgehen. Demnach werden in einer bevorzugten Ausführungsform Rechtecke nicht in unregelmäßige Polygonstücke aufgeteilt, bei denen die Kanten der Stücke zufällige Liniensegmente sind. Vielmehr sind die Kanten der aufgespaltenen Stücke entweder horizontal oder vertikal. Gegeben Rechtecke A und B, wobei A vor B liegt, werden die Stücke, in welche das Rechteck B aufgeteilt wird, Kanten haben, die mit einer der Kanten von A und/oder B ausgerichtet sind. Der Algorithmus nimmt auch an, dass die Rechtecke nicht gedreht sind.
  • Wie in den 5A5Q dargestellt, gibt es siebzehn. Arten, auf welche zwei Rechtecke A und B zueinander positioniert werden können. In jedem Fall, in dem zwei Rechtecke überlappen, ist das obere Rechteck schraffiert. Der Algorithmus behandelt jeden dieser Fälle separat, wenn er eine Entscheidung bzgl. Aufteilens macht. Einige der Fälle sind ähnlich (der einzige Unterschied ist, dass sie um ein Vielfaches von 90° gedreht sind). In den Fällen 1 und 2 (5A bzw. 5B) wird das am weitesten unten gelegene Rechteck B nicht aufgeteilt, da es keine nicht überlappten Anteile zum Aufteilen gibt. Im Fall 1 gibt es keine Schnittmenge und im Fall 2 wird das untere Rechteck vollständig durch das obere Rechteck abgedeckt. In jedem der übrigen Fälle 3–17 wird das untere Rechteck aufgeteilt, wie in den 5C5Q jeweils gezeigt. Wenn das obere Rechteck so positioniert ist, dass das untere Rechteck in mehr als ein neues Rechteck aufgeteilt wird (5C5G und 5L5O), werden gestrichelte Linien hinzugefügt, um die Aufteilung zu zeigen.
  • Gegeben eine Menge von N Bildern, kann dieses Schema bis zu O(N2) Operationen benötigen, um zum Ende zu kommen. Darüber hinaus kann die Zahl der Rechtecke mit einer theoretischen oberen Schranke von O(N2) wachsen, wobei N die Zahl der Bilder ist und O die Standardnotation, die in der Komplexitätstheorie verwendet wird. Obwohl es unwahrscheinlich ist, dass solch eine Situation in der Praxis auftritt, ist, um das Erzeugen einer exzessiv hohen Anzahl von Rechtecken zu vermeiden, der Algorithmus vorzugsweise so entworfen, das Aufteilen zu beenden, sobald eine maximale Anzahl von Rechtecken, beispielsweise 100, überschritten worden ist. Sobald das voreingestellte Maximum erreicht wird, beendet der Algorithmus das Aufteilen und führt eine finale Verarbeitung durch und sendet die Daten, wie sie sind. Das heißt, dass Bilder mit höherer z-Ordnung in voller Größe gesendet werden zusammen mit der gegenwärtigen (und in diesem Fall letzten) Menge von sichtbaren Rechtecken.
  • Wie die vorangegangene Beschreibung zeigt, sind die Bildaufteilungstechniken der vorliegenden Erfindung besonders gut geeignet zum Gebrauch in Verbindung mit Online-Graphikanwendungen, bei denen ein Benutzer mit mehreren überlappenden Bildern arbeitet. Der Aufteilungsalgorithmus kann unter Verwendung von Software, Hardware oder einer Kombination davon implementiert werden. Dies bedenkend sollte es sich verstehen, dass die Block- und Flussdiagramme, die verwendet werden, um die Techniken der vorliegenden Erfindung zu illustrieren, die Durchführung von bestimmten spezifizierten Funktionen und Beziehungen zwischen ihnen zeigen. Die Grenzen dieser funktionalen Blöcke sind hier beliebig definiert worden, der Einfachheit der Beschreibung halber. Alternative Grenzen können definiert werden, solange die spezifizierten Funktionen durchgeführt werden und die Beziehungen zwischen den Funktionen angemessen aufrechterhalten werden. Die Diagramme und begleitende Beschreibung stellen die funktionale Information bereit, die ein Fachmann benötigen würde, um ein System zu implementieren, um die benötigte Verarbeitung durchzuführen. Jede der Funktionen, die in den Block- und Flussdiagrammen dargestellt wird, kann z.B. durch Software, funktional äquivalente Hardware oder eine Kombination davon implementiert werden.
  • Während Ausführungsformen der Erfindung beschrieben worden sind, werden im Lichte der vorangegangenen Beschreibung viele weitere Alternativen, Modifikationen und Variationen für Fachleute einleuchtend sein. Die hier beschriebene Erfindung ist so intendiert, dass sie alle solche Alternativen, Modifikationen, Anwendungen und Variationen umfasst, die in den Umfang der angehängten Patentansprüche fallen.

Claims (25)

  1. Ein Verfahren zum Aufteilen einer Gruppe von Bildern, die mindestens ein erstes, am weitesten unten liegendes Bild und ein weiteres Bild davor und teilweise das erste Bild verdeckend enthält, wobei das Verfahren umfasst: Aufteilen eines nicht überlappten Teils des ersten Bildes in mindestens zwei Rechtecke des nicht überlappten Teils des ersten Bildes, basierend auf der Lage des zweiten Bildes, um durch das Benutzen einer Grenzlinie des zweiten Bildes oder einer erweiterten Linie der Grenzlinie eine erste Menge von Rechtecken zu bilden und Übertragen nur der ersten Menge von Rechtecken.
  2. Das Verfahren nach Anspruch 1, weiter umfassend: Aufteilen eines nicht überdeckten Teils von jedem der teilweise überdeckten Rechtecke in der ersten Menge von Rechtecken in mindestens zwei Rechtecke, basierend auf der Lage eines dritten Bildes in der Gruppe von Bildern, die teilweise die ersten Menge der Rechtecke überlappt, um eine zweite Menge von Rechtecken zu bilden und Übertragen nur der ersten und zweiten Menge von Rechtecken.
  3. Das Verfahren nach Anspruch 1 oder 2, wobei die erste Menge von Rechtecken das zweite Bild enthält.
  4. Das Verfahren nach Anspruch 2, wobei die erste Menge von Rechtecken das zweite Bild enthält und die zweite Menge von Rechtecken das dritte Bild enthält.
  5. Das Verfahren nach einem der Ansprüche 1–4, wobei der Aufteilungsschritt in einem teilweise komprimierten Bereich getan wird.
  6. Das Verfahren nach Anspruch 1, wobei die Gruppe von Bildern weiter ein letztes, am weitesten oben gelegenes Bild enthält, wobei das Verfahren weiter umfasst: iteratives Bilden von neuen Mengen von Rechtecken durch Aufteilen einer gegenwärtigen Menge von Rechtecken, basierend auf der Lage eines nächsten Bildes in der Gruppe von Bildern, die die gegenwärtige Menge von Rechtecken überlappt, bis eine endgültige Menge von Rechtecken gebildet wird, basierend auf der Lage des am weitesten oben gelegenen Bildes und Übertragen nur der endgültigen Mengen von Rechtecken.
  7. Das Verfahren nach Anspruch 6, wobei die erste Menge von Rechtecken das zweite Bild und jede zusätzliche Menge von Rechtecken das Bild enthält, auf welchem das Aufteilen für jene zusätzliche Menge basiert ist.
  8. Das Verfahren nach Anspruch 6 oder 7, wobei der Aufteilungsschritt in einem teilweise komprimierten Bereich getan wird.
  9. Ein Gerät zum Aufteilen einer Gruppe von Bildern, welche mindestens ein erstes, am weitesten unten liegenden Bild und ein zweites Bild davor und das erste Bild teilweise überlappend, enthält, wobei das Gerät umfasst: Mittel zum Aufteilen eines nicht überdeckten Teils des ersten Bilds in mindestens zwei Rechtecke des nicht überdeckten Teils des ersten Bildes, basierend auf der Lage des zweiten Bilds, um durch Gebrauch einer Grenzlinie des zweiten Bildes oder einer verlängerten Linie der Grenzlinie eine erste Menge von Rechtecken zu bilden und Mittel zum Übertragen nur der ersten Menge von Rechtecken.
  10. Das Verfahren nach Anspruch 9, weiter umfassend: Mittel zum Aufteilen eines nicht überlappten Teils von jedem teilweise überlappten Rechteck in der ersten Menge von Rechtecken in mindestens zwei Teilgebiete, basierend auf der Lage eines dritten Bildes in der Gruppe von Bildern, teilweise die erste Menge von Rechtecken überlappend, um eine zweite Menge von Rechtecken zu bilden und Mittel zum Übertragen von nur der ersten und der zweiten Menge von Rechtecken.
  11. Das Gerät nach Anspruch 9 oder 10, wobei die erste Menge von Rechtecken das zweite Bild enthält.
  12. Das Gerät nach Anspruch 10, wobei die erste Menge von Rechtecken das zweite Bild enthält und die zweite Menge von Rechtecken das dritte Bild enthält.
  13. Das Gerät nach einem der Ansprüche 9–12, wobei die Aufteilungsfunktion in einem teilweise komprimierten Bereich getan wird.
  14. Das Gerät nach Anspruch 9, wobei die Gruppe von Bildern weiter ein letztes, am weitesten oben liegendes Bild enthält, wobei das Gerät weiter umfasst: Mittel zum iterativen Bilden von neuen Mengen von Rechtecken durch Aufteilen einer gegenwärtigen Menge von Rechtecken, basierend auf der Lage eines nächsten Bildes in der Gruppe von Bildern, welches die gegenwärtige Menge von Rechtecken überlappt, bis eine endgültige Menge von Rechtecken gebildet wird, basierend auf der Lage des am weitesten oben gelegenen Bildes und Mittel zum Übertragen nur der endgültigen Menge von Rechtecken.
  15. Das Gerät nach Anspruch 14, wobei die erste Menge von Rechtecken das zweite Bild enthält und jede zusätzliche Menge von Rechtecken das Bild enthält, auf welchem das Aufteilen für jene zusätzliche Menge basiert.
  16. Das Gerät nach Anspruch 14 oder 15, wobei die Aufteilungsfunktion in einem teilweise komprimierten Bereich getan wird.
  17. Ein Computerprogamm von Befehlen zur Ausführung durch einen Computer, um ein Verfahren zum Aufteilen einer Gruppe von Bildern durchführen, welche mindestens ein erstes, am weitesten unten liegendes Bild und ein zweites Bild davor und das erste Bild teilweise überlappend enthält, wobei das Programm von Befehlen umfasst: Befehle zum Aufteilen eines nicht überdeckten Teils des ersten Bildes in mindestens zwei Rechtecke des nicht überdeckten Teils des ersten Bildes, basierend auf der Lage des zweiten Bildes, um durch Gebrauch einer Grenzlinie des zweiten Bildes oder einer verlängerten Linie der Grenzlinie eine erste Menge von Rechtecken zu bilden und Befehle zum Übertragen nur der ersten Menge von Rechtecken.
  18. Das Computerprogramm nach Anspruch 17, weiter umfassend: Befehle zum Aufteilen eines nicht überdeckten Teils von jedem teilweise überdeckten Rechteck in der ersten Menge von Rechtecken in mindestens zwei Rechtecke, basierend auf der Lage eines dritten Bildes in der Gruppe von Bildern, teilweise die erste Menge von Rechtecken überlappend, um eine zweite Menge von Rechtecken zu bilden und Befehle zum Übertragen von nur der ersten und zweiten Menge von Rechtecken.
  19. Das Computerprogramm nach Anspruch 17 oder 18, wobei die erste Menge von Rechtecken das zweite Bild enthält.
  20. Das Computerprogramm nach Anspruch 18, wobei die erste Menge von Rechtecken das zweite Bild enthält und die zweite Menge von Rechtecken das dritte Bild enthält.
  21. Das Computerprogramm nach einem der Ansprüche 17–20, wobei die Befehle zum Aufteilen Befehle zum Aufteilen in einem teilweise komprimierten Bereich enthalten.
  22. Das Computerprogramm nach einem der Ansprüche 17–21, weiter umfassend: Befehle zum iterativen Bilden von neuen Mengen und Rechtecken durch Aufteilen einer gegenwärtigen Menge von Rechtecken, basierend auf der Lage eines nächsten Bildes in der Gruppe von Bildern, welches vor der ge genwärtigen Menge von Rechtecken ist, bis eine endgültige Menge von Rechtecken gebildet wird, basierend auf der Position eines am weitesten oben liegenden Bildes und Befehle zum Übertragen nur der endgültigen Menge von Rechtecken.
  23. Das Computerprogramm nach Anspruch 22, wobei die erste Menge von Rechtecken das zweite Bild enthält und jede zusätzliche Menge von Rechtecken das Bild enthält, auf welchem das Aufteilen für jene zusätzliche Menge basiert.
  24. Das Computerprogramm nach Anspruch 22, wobei die Befehle zum Aufteilen Befehle zum Aufteilen in einem teilweise komprimierten Bereich enthalten.
  25. Ein computerlesbares Medium, welches das Computerprogramm enthält, wie in einem der Ansprüche 17–24 definiert.
DE60031624T 1999-09-29 2000-09-28 Bildunterteilung die die Übertragung überlappter Bildteile verhindert Expired - Lifetime DE60031624T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US408108 1999-09-29
US09/408,108 US6625309B1 (en) 1999-09-29 1999-09-29 Image partitioning to avoid overlap transmission

Publications (2)

Publication Number Publication Date
DE60031624D1 DE60031624D1 (de) 2006-12-14
DE60031624T2 true DE60031624T2 (de) 2007-08-23

Family

ID=23614895

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60031624T Expired - Lifetime DE60031624T2 (de) 1999-09-29 2000-09-28 Bildunterteilung die die Übertragung überlappter Bildteile verhindert

Country Status (5)

Country Link
US (1) US6625309B1 (de)
EP (1) EP1089224B1 (de)
JP (2) JP2001136369A (de)
AT (1) ATE344508T1 (de)
DE (1) DE60031624T2 (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002092303A (ja) * 2000-07-13 2002-03-29 Fumio Ri 個人情報の管理システムおよび利用プログラム
US8924506B2 (en) * 2000-12-27 2014-12-30 Bradium Technologies Llc Optimized image delivery over limited bandwidth communication channels
GB2378340A (en) * 2001-07-31 2003-02-05 Hewlett Packard Co Generation of an image bounded by a frame or of overlapping images
US6882755B2 (en) * 2001-10-19 2005-04-19 Hewlett-Packard Development Company, L.P. Image transmission for low bandwidth with region of interest
CN100423021C (zh) * 2002-10-17 2008-10-01 精工爱普生株式会社 用于低景深图像分割的方法和装置
US20060023077A1 (en) * 2004-07-30 2006-02-02 Microsoft Corporation System and method for photo editing
JP4976975B2 (ja) * 2007-10-03 2012-07-18 株式会社東芝 サーバ装置、サーバ装置の制御方法、およびサーバ装置の制御プログラム
JP4518181B2 (ja) * 2008-04-17 2010-08-04 セイコーエプソン株式会社 画像送信装置、表示システム、画像送信プログラム及び記録媒体
US8339671B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data by partitioning a graphics list
US8339653B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data based on overlap characteristics
US8411319B2 (en) * 2009-03-30 2013-04-02 Sharp Laboratories Of America, Inc. Methods and systems for concurrent rendering of graphic-list elements
US8339670B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data based on graphic-list partitioning
US8339672B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data using graphic-list partitions and associated rendering processors
US20100245889A1 (en) * 2009-03-30 2010-09-30 Nguyen Uoc H Methods and Systems for Rendering Data
US20100245918A1 (en) * 2009-03-30 2010-09-30 Nguyen Uoc H Methods and Systems for Rendering Data
JP2012118832A (ja) * 2010-12-02 2012-06-21 Sony Corp 情報処理装置、情報処理方法及びプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0646408B2 (ja) 1987-11-20 1994-06-15 日立ソフトウェアエンジニアリング株式会社 分割画像処理方法
US5212742A (en) 1991-05-24 1993-05-18 Apple Computer, Inc. Method and apparatus for encoding/decoding image data
US5640607A (en) 1992-04-21 1997-06-17 Microsoft Corporation Method for sending bit mapped image by appending special code to text string and transmitting the text string separately from compressed residual image
US5436981A (en) 1992-06-24 1995-07-25 Canon Kabushiki Kaisha Image processing method, and apparatus therefor
US5812704A (en) 1994-11-29 1998-09-22 Focus Automation Systems Inc. Method and apparatus for image overlap processing
US5917962A (en) 1995-06-06 1999-06-29 Apple Computer, Inc. Method and apparatus for partitioning an image
US6307559B1 (en) * 1995-07-13 2001-10-23 International Business Machines Corporation Method and apparatus for color space conversion, clipping, and scaling of an image during blitting
US5841420A (en) * 1995-08-18 1998-11-24 International Business Machines Corporation Method and system in a data processing system windowing environment for displaying previously obscured information
US6141007A (en) * 1997-04-04 2000-10-31 Avid Technology, Inc. Newsroom user interface including multiple panel workspaces
JPH10283298A (ja) 1997-04-04 1998-10-23 Casio Comput Co Ltd 情報提供システム、端末装置及びサーバ装置
US6215490B1 (en) * 1998-02-02 2001-04-10 International Business Machines Corporation Task window navigation method and system

Also Published As

Publication number Publication date
DE60031624D1 (de) 2006-12-14
EP1089224A2 (de) 2001-04-04
EP1089224B1 (de) 2006-11-02
EP1089224A3 (de) 2001-04-11
JP2004159365A (ja) 2004-06-03
US6625309B1 (en) 2003-09-23
ATE344508T1 (de) 2006-11-15
JP2001136369A (ja) 2001-05-18

Similar Documents

Publication Publication Date Title
DE60031624T2 (de) Bildunterteilung die die Übertragung überlappter Bildteile verhindert
DE60305573T2 (de) Verfahren zur Darstellung von gemischten Bildrasterinhaltsebenen
DE69827312T2 (de) Kamerakontrollsystem
DE69433567T2 (de) Rechnerkonferenzverfahren
DE69817158T2 (de) Benutzerschnittstellen-Mechanismus zur Manipulierung von Kontexten in Computerverwaltungsapplikationen
DE60006845T2 (de) Verfahren und vorrichtung zur zusammenarbeit bei multimediaerzeugung über einem netzwerk
DE69732605T2 (de) Dynamisches Cachespeicher-Vorladen über lose gekoppelte administrative Bereiche
DE10062063B4 (de) Verfahren, System, Computerprogramm-Produkt und Speichervorrichtung zur Steuerung einer Warteschlange von Anforderungen unterschiedlicher Priorität
DE69629173T2 (de) Automatisches Plazieren eines graphischen Musters
DE3639026A1 (de) Hochaufloesendes bilduebertragungsverfahren
DE10309620A1 (de) Dynamisches Expertenschnittstellensystem und Verfahren
DE10295968T5 (de) Verbunddokumentbildkompression unter Verwendung eines Mehrfachregion-Zweischichtformats
DE10248462A1 (de) System und Verfahren zum Verbessern der Leistungsfähigkeit einer Mehrzahl von Peripheriegeräten
DE102017005964A1 (de) Techniken zum Auswählen von Objekten in Bildern
DE4212159C2 (de) Mehrfenster-Bildanzeigevorrichtung und Verfahren
DE3490148C2 (de) Vorrichtung zur Erzeugung unterschiedlicher Figuren in einem computergesteuerten Darstellungssystem
DE202016107451U1 (de) Systeme zur interaktiven Darstellung eines sichtbaren Teils einer Rendering-Oberfläche auf einem Benutzergerät
DE112004002391T5 (de) Räumlich-zeitliche Erzeugung einer Bewegungsunschärfe
DE60002839T2 (de) Verfahren und vorrichtung zur datenverarbeitung durch einen proxy
DE69632644T2 (de) Bilderzeugung für seitendrucker
EP1154369A2 (de) Verfahren zur zyklischen, interaktiven Bildanalyse sowie Computersystem und Computerprogramm zur Ausführung des Verfahrens
DE112016001451T5 (de) Techniken für das Anzeigen von Layouts und Übergangslayouts von Sätzen von Inhaltselementen in Reaktion auf Touch-Eingaben von Benutzern
EP1386287A2 (de) Bildverarbeitungsverfahren
DE69729487T2 (de) Verfahren und gerät versehen mit durchflussregelung in einem netzwerksystem die auf der erwarteten verarbeitungszeit des anwenders basiert
DE60100932T2 (de) Ein Speicherverwaltungsgerät, -methode,-programm und rechnerlesbares Speichermedium zum Speichern des Speicherverwaltungsprogrammes

Legal Events

Date Code Title Description
8364 No opposition during term of opposition